MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Ayuda con Dynpro en Batch Input (foro/showthread.php?t=36651)

zehiter 07/05/10 15:03:13

Ayuda con Dynpro en Batch Input
 
Hola a Todos.

Tengo un problema con un Batch Input espero alguien pueda ayudarme me parece que es un error muy frecuente.

Les comento, estoy corriendo un batch input para cargar listas de materiales en la transaccion CS01, cada material puede tener una o varias posiciones, todo lo hace perfecto con los archivos de carga y se finaliza el batch sin problema alguno.

Pero... me han entregado un archivo el cual uno de los materiales tiene 24 posiciones, una de las pantallas (dynpro) solo visualiza 14 posiciones, por lo tanto al meter los datos de la posicion numero 15 me truena mi batch :( porque me dice que la posicion 15 no existe:

- El campo RC29P-POSTP(15) no existe en el dynpro SAPLCSDI 0140.

- Los datos batch input para el dynpro SAPLCSDI 0140 no existen.

He hecho la carga manualmente de este material y al llegar a este dynpro puedo ver que efectivamente el dynpro puede cargar mas de 14 posiciones podria decir que es infinita la lista de posiciones que pudiera cargar... pero en un batch input solo muestra 14 y no me lo sube, finaliza el batch con error.

Alguien sabe que debo hacer o que instruccion dentro del batch input me hace falta para brincarme a la posicion 15 y asi sucesivamente para cargar cuantas posiciones sean necesarias???

Muchas gracias de antemano y saludos a todos

jmenendez 07/05/10 15:26:16

Buenas querido.
Opción 1) Buscá una bapi que haga todo el trabajo engorroso de BI.
Opción 2) El Bi tiene disposiciones limitadas, vos tenés que agregar lógica de pag down para que puedas utilizar nuevas lineas en blanco y resetear tu contador interno de lineas.
normalmente el botón de Page down es P++

Estoy viendo la trx que tiene un botón "Posición nueva linea 1". La verdad que no puedo probarlo xq no tengo datos, pero quizás es tu solución también.

seimeinomi 07/05/10 15:32:03

Hola,

Espero poder ayudar, al parecer el BDC solo grabo pantalla con 14 posiciones, tendria que generar otro juego de datos pero tomar el click que haces para visualizar mas alla de las 14 posiciones. Esto seria cada vez que completes las posiciones se genere el salto.

Saludos

zehiter 07/05/10 18:45:47

Gracias por aportar ideas,

Les comento, eh encontrado un valor para el Ok-CODE = FCNP.

Cuando llego a la posicion 14 despues de ingresar los valores le doy el valor FCNP al Ok_CODE y lo que hace es mostrarme las siguientes posiciones como disponibles de la 15 a la 27, es correcto mas sin embargo sigue diciendome que las posicion 15 no existe en la pantalla :confused: apesar de verla sobre la pantalla

Seguire buscando, todos sus tips son bienvenidos

jmenendez 10/05/10 14:59:35

Te sigue dando el error xq tenés que resetear el contador de 14 a 1 o 2 según corresponda si te queda la última linea escrita en la posición 1.

caralbgro 10/05/10 16:08:35

tengo el mismo problema
 
me podrias explicar como lo programo, yo tengo que actualizar la pos 65 pero la en la primera pantalla no me aparece la pos 65 y me marca error, como seria para que actaulice esta posicion sin marcar error, es decir, como se cuantas lineas visualizo paran poder realizar la logica del programa?

jmenendez 10/05/10 20:10:53

Por mas que vos tengas 100 o 200 o N cantidad de registros, en pantalla siempre vas a ver una cantidad limitada de 1 A M siento M < N.
Entonces decimos que dentro de las primeras 100 lineas encontramos posiciones de índice en la tabla de la dynpro
1 A 50 (siendo 50 un ejemplo para ilustrar el caso) Posición 1 a 50 en la tabla
Botón de PAGE DOWN. Sentencia Clear de contador interno.
1 A 50 Posición 50 a 100 en la tabla

Si uno no hace el clear:
1 A 50. Posiciones de 1 a 50
1 A 50. ERROR xq la primera iteración quizo asignar la posición
XXXX-XXXXX(51) y esta no existe en la dynpro que estamos imaginando.

Es mas claro ahora ?

caralbgro 10/05/10 20:29:06

eso lo entiendo pero necesito saber a nivel codigo
 
te entiendo lo que decis pero como se cuantas lineas tiene la primer pantalla? eso es lo que necesito, despues ya entendi de como buscar la posicion

slds.

ibai23 11/05/10 09:47:55

Hola,

en la transacción tienes el botón "Posicionar", si lo pulsas muestra un popup, le informas la posición y te "navega" hasta la posición indicada,

si necesitas modificar la posición 65, lo multiplicas por 10 (puesto que las posiciones en esta transacción van de 10 en 10) y lo informas en el popup este que te comento, al presionar "enter" o aceptar en el popup el sistema te coloca en la primera posición del Table control, con lo que ya no tienes el problema del paginado

Un saludo

caralbgro 11/05/10 10:11:19

la tx que uso yo es FB02
 
no sabes como seria el tema con la FB02 que es la que estoy usando yo

ibai23 11/05/10 10:22:38

Hola caralbgro,

hacer un batch input a la FB01 o FB02 o transacciónes de este estilo es una locura y normalmente no se hace,

puesto que los campos que aparecen en las dynpros de estas transacciones dependen de muchas parametrizaciones, por sociedad, por cuenta, por clave contable etc.

Resumiendo, tu haces el batch input para N casos, mañana meten un caso nuevo y te han jodido, por que la pantalla cambia y por lo tanto puede darte error y mandar todo al garete.

Yo te recomendaría contarle esto a tu analista o consultor y buscar otra opción como un direct input o alguna bapi.

Un saludo

caralbgro 11/05/10 11:20:06

entonces como lo haria
 
entonces me podrias tirar un codigo de ejemplo de como hacerlo, necesito actualizar el campo asignacion banco clave de banco descripcion del banco

slds.

seimeinomi 11/05/10 14:54:25

Bapi FB01
 
Mira es cierto lo que dicen que el BI no sirve si cambian las cosas.
Yo use la siguiente bapi para la FB01

BAPI_ACC_DOCUMENT_CHECK y luego.
BAPI_ACC_DOCUMENT_POST.


Aqui podes ver como se arma




Saludos.

zehiter 20/05/10 17:09:33

Ya lo solucioné
 
Gracias a todos por sus recomendacioens, finalmente pude solucionar mi caso pero sin tener nada que hacer dentro del codigo, a veces no nos damos cuenta de que la solución puede ser la manera en la que ejecutamos los programas.

Les platico por si a alguien le sucede lo mismo, la solucion a mi caso fue ejecutar el batch input con los sig. parametros:

Modo de Procesamiento: Visual.sólo con errores
y en Funciones adicionales desactivé: Tam.estándar dynpro

y listo!! me cargó todos mis registros :D .


...La verdad esto de los batchinput no son muy confiables puesto que sí te cambian la estructura de datos la logica del programa no coincide y te truena!!

Alguien pudiera enviarme algun buen manual de BAPIS??

saludos y gracias



kelaya 17/01/14 17:15:47

Hola!! a mi me sucede lo mismo que a ti y quisiera pedirte si puede dejar el código de como le has pasado los parámetros al batch input, ya que soy muy nueva en esto de abap y no he podido hacerlo bien. Gracias!! saludos!!

Anyel Ledesma 23/03/20 20:40:17

Hola, me sirvio la parte del OK-code = FCNP, solo tuve que condicionar que cuando mi contador fuera igual a 15 creara una dympro con ese ok-code y hacer el salto y el contador iniciarlo en 2.


jfmagi 19/03/21 19:29:28

Re: Ayuda con Dynpro en Batch Input
 
Buenas, con el detalle de que existe un boton debajo de el table control que nos ubica en la posición que queremos tratar. Me ayudo un montón y pude ejecutar un Batch Input a la VA02 para crear el Plan de Facturación. Sin ese detalle no podia continuar. Con eso ya no hace falta movernos en la pagina del table control. ya que te posiciona en el lugar correcto.

iqseo 23/06/21 20:38:20

Re: Ayuda con Dynpro en Batch Input
 


Gracias por la info!!


Husos Horarios son GMT. La hora en este momento es 04:46:00.

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