PDA

Ver la Versión Completa : BDC for VL01N - Aclaracion


Tabula Rasa
06/05/10, 02:38:19
hola, tengo dudas sobre un tema de BDC, en mi trabajo tenemos un programa que usa un batch input the la transaccion VL01N, pero al enviar los datos en una tabla hay un problema sale una mensaje de advertencia mientras se esta ejecutando el batch input :

Campo RV50A-LIPS_SELKZ(5) (no se permiten entradas)

Si le dan enter, la transaccion continua normalmente.
Estuve revizando los datos que se envian a traves de una tabla al batch input y me tope con esto :

if w_aux_contador_005 = 0.

CLEAR bdcdata_wa.
bdcdata_wa-fnam = 'RV50A-LIPS_SELKZ(05)'.
bdcdata_wa-fval = 'X'.
APPEND bdcdata_wa TO bdcdata_tab.

endif.

en el codigo existen 5 contadores para 5 posiciones segun creo, segun estuve revizando RV50A-LIPS_SELKZ sirve para seleccionar posiciones de items en un pedido (en este caso). Solo se setea este campo cuando el contador esta vacio. Ahora aqui no se esta tomando encuenta el numero de posiciones que existe en el pedido que se esta tratando, al darme cuenta de esto le puse una condicion para que solo setee el campo RV50A-LIPS_SELKZ dependiendo del numero de posiciones que existe en el pedido. Y el problema se ha solucionado, pero quisiera saber si podrian ayudarme enterder mejor, que esta pasando aqui. Otra cosa extraña es que este error solo ocurre en el ambiente de DES y QAS, pero en PRD casi no tienen este problema, por lo que no estoy seguro de transportar mi orden a ese ambiente, con la condicion que le puse funciona correctamente en DES. Estoy investigando mas para estar seguro que lo que hice no afectara nada mas del proceso.

Cualquier consejo, se agradece !!

Mauricio Hidalgo
06/05/10, 19:56:51
Es clásico que la parametrización a veces queda con diferecias entre los distintos mandantes pero eso ya es tema de los funcionales que a veces hacen cosas y no las dejan igual en todos los ambientes.
En este caso que el campo aparezca inhibido no te queda otra que condicionar el código en torno a ese campo mediante el mandante en que se está ejecutando el código.

saludos

Tabula Rasa
07/05/10, 10:28:07
Gracias por la respuesta, yo tambien estaba pensando sobre la parametrizacion, pero en mi trabajo recien hace un mes hicieron una copia del sistema de produccion y lo pasaron a los demas sistemas por un problema que tuvieron y no pudieron solucionar.
Por lo que se supone que deberian ser iguales, en el programa veo que usan sentencias de SQL segun el ambiente en que se encuentran, por ejemplo leen las tablas sapdes.lips para DES y sapsr3.lips para QAS y PRD.

Ahora no estoy seguro que hacer, ya habia armado toda una teoria sobre este problema y mi solucion se apega a ella, pero en PRD este problema se comporta de una forma totalmente diferente, solo aparece a veces y cuando lo hace el numero de posiciones del pedido no es determinante para ello.

Si pudieran aclararme un poco mas este asunto y como trabajar con el campo RV50A-LIPS_SELKZ en BDC, estuve siguiendo el flujo del programa hasta entrar al dynpro del screen que bota el error pero aun no veo donde estan usando los valores que le pasan en la tabla.

Gracias de antemano !

Hector Serrano
20/07/12, 16:15:42
Pudiste solucionar este tema?
saludos