PDA

Ver la Versión Completa : Ayuda URGENTE field.. on chain-request.


miguel.esteban.martin
20/02/09, 14:50:08
buenas tengo un problema con este modulo.
lo que quiero hacer es que cuadno cambie el valor del campo kunnr en mi dynpro me ponga en otro campo el valor de name1 de la tabla kna1.

yo tenog puesto en el PAI.

field I_CAB_BULTO-KUNNR module nombre_cliente on chain-request.

----------------
module nombre_cliente.

SELECT single name1 INTO nomcliente FROM kna1 WHERE
kunnr = i_cab_bulto-kunnr.

endmodule.

supuestamente este select meteria en nomcliente el valor de name1 que es el que quiero.

Me surgen 2 problemas:

1. el select no me selecciona ningun nombre y estoy metiendo un cliente correcto porque tengo la tabla kna1 delante y meto uno que existe

2. suponiendo que si meta el nombre en nomcliente como puedo hacer para uqe este nombre salga por pantalla en el campo que tengo en mi dynpro reservado para eso, ese campo le llamo nomcli.
yo he itentnado poner despeus del select :
nomcli = nomcliente.
pero me dice que no se encuentra definido nomcli.

muchas gracias espero que me podais echar una mano.

DavidXD_XD
20/02/09, 16:04:59
Cuando ingresas el campo del codigo del cliente no t bota nada el SELECT???, una vez me paso algo parecido, rellenale en forma manual los ceros a la izquierda al momento de la consulta en el debuggg tal vez funcione y sea el caso ... :D

Henger Abreu
20/02/09, 17:01:49
Buenas tardes.

Me acaba de pasar lo mismo haciendo un programa de finanzas y lo que dice david es seguramente lo que te esta pasando, para resolver esto y no tener que rellenar manualmente de ceros el campo hice esta rutina:

WHILE VBELN+I(1) NE ''.
I = I + 1.
IF I = 10.
EXIT.
ENDIF.
ENDWHILE.
IF I NE 10.
IF I = 2.
CONCATENATE '00000000' VBELN INTO VBELN.

ELSEIF I = 3.
CONCATENATE '0000000' VBELN INTO VBELN.

ELSEIF I = 4.
CONCATENATE '000000' VBELN INTO VBELN.

ELSEIF I = 5.
CONCATENATE '00000' VBELN INTO VBELN.

ELSEIF I = 6.
CONCATENATE '0000' VBELN INTO VBELN.

ELSEIF I = 7.
CONCATENATE '000' VBELN INTO VBELN.

ELSEIF I = 8.
CONCATENATE '00' VBELN INTO VBELN.

ELSEIF I = 9.
CONCATENATE '0' VBELN INTO VBELN.

ENDIF.
ELSE.
* WRITE VBELN.
ENDIF.

DavidXD_XD
20/02/09, 18:53:28
Porsiaca para rellenar con ceros hay q usar la funcion CONVERSION_EXIT_ALPHA_INPUT :D

Jonathan Barrio Rodriguez
22/02/09, 18:38:19
Creo que los campos no se llenan hasta que no pasan por el FIELD.

Debuguea comprobando que i_cab_bulto-kunnr llega con valor, sino es así prueba a hacer
field I_CAB_BULTO-KUNNR- " y luego
field I_CAB_BULTO-KUNNR module nombre_cliente on chain-request.

iparedes
09/04/09, 18:42:28
;) Buenas Tardes, Amigos!!!
tengo que resolver un reporte, pero no enuentro la tabla que guarda el campo reservado de la trx MMBE, alguien me puede tirar el dato???
Les agraedezco de antemano y felices Pascuas!!
un Enorme Abrazo!!