MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Problema con Batch-input para Tx. GP12N (foro/showthread.php?t=44699)

falkata82 10/08/11 08:03:47

Problema con Batch-input para Tx. GP12N
 
Hola!!

necesito realizar un batch input para ejecutar en fondo la transacción GP12N y tengo un problema, al intentar rellenar el campo "Mon.transac." de la pantalla 0145 del report SAPLKPP2 me da el siguiente error y no sé cómo solucionarlo ya que ejecutando la transacción de forma manual sí que me deja introducir el valor :(



nievesmp 10/08/11 09:50:50

campo en Batch input
 
¿Has hecho la grabación previamente en la SM35?

Mediante la grabación de la transacción a la que vas a hacer el batch input, puedes verificar de que forma rellena el campo.

Como el campo a rellenar es una tabla en la dynpro, lo mejor es hacer dos grabaciones, una para rellenar un sólo registro de la tabla y otra grabación para grabar varios registros en la tabla, de esta forma tendrás ambos casos, cuando vayas a informar uno sólo o varios registros, ya que el código puede ser diferente.

Espero esto te sirva.

falkata82 10/08/11 10:05:12



Muchas gracias por tu ayuda pero el problema es que ya hice la grabación y es por eso que no sé cómo hacer porque siguiendo los pasos y demás no consigo que me funcione :(

El código es éste:
PERFORM dynpro USING: 'X' 'SAPLKPP2' '0145',
' ' 'BDC_OKCODE' '=CBUC',
' ' 'Z-BDC03(01)' tfich-tsl01.....

fdelacruz 10/08/11 13:06:58

Para solucionar eso no asignes de forma directa la variable de monto al batch, tienes q pasar este valor a una variable tipo STRING y luego esta ultima asignala al batch. Con eso funcionará.

Saludos!

falkata82 10/08/11 15:37:09


Hola!

en primer lugar gracias por tu ayuda per... cómo se hace eso que dices?

Gracias por anticipado

fdelacruz 10/08/11 16:04:03

Asumo q tu variable "tfich-tsl01" contiene un monto numerico. Entonces lo que tienes q hacer es:

* Declaras tu variable tipo string
data: monto_c type STRING.

* Pasas el monto a esta variable
monto_c = tfich-tsl01.

* Utilizas la variable en el batch
PERFORM dynpro USING: 'X' 'SAPLKPP2' '0145',
' ' 'BDC_OKCODE' '=CBUC',
' ' 'Z-BDC03(01)' monto_c

Con eso debe salir.

Saludos!

falkata82 11/08/11 07:16:56



Hola!

gracias por tu ayuda pues por fin conseguí que cogiera el valor, el problema es que yo le paso un fichero de varias líneas y necesito insertarlas en el table control y no sé cómo indicarle que haga el salto de línea ya que mediante la simulación de la SM35 recoge las líneas como comento abajo pero yo no sé cuántas líneas va a tener el fichero y es por ello que no puedo indicarlo en el Batch Input.

Línea 1 --> Z-BDC03(01)
Línea 2 --> Z-BDC03(02)
Línea 3 --> Z-BDC03(03)

sook 11/08/11 12:59:30

Me parece que en esta parte:

' ' 'Z-BDC03(01)' monto_c

el (01) te esta indicando la línea a la que lo vas a insertar. Podrías hacer un loop y vas concatenando el valor 'Z-BDC03(' variable_numerica ')' para ir avanzando por la tabla.

Claro, si es que ese es tu problema.

Saludos


Husos Horarios son GMT. La hora en este momento es 12:28:45.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web