MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   IDOC Factura Electrónica. (foro/showthread.php?t=47438)

edgar_par87 22/12/11 17:43:23

IDOC Factura Electrónica.
 
Qué tal foreros, aquí de nuevo molestándolos con una consulta:

Existe una BADI que obtiene la información aduanera para factura electrónica de la siguiente manera:


Lo que a mi me solicitaron fue que en lugar de obtener el lote (CHARG) de la tabla LIPS, lo obtenga directamente de la tabla VBRP (la tabla que se está loopeando), esto porque con el código actual, así vengan 1000 lotes, sólo obtiene información aduanera de uno (en la tabla CT_ITEM_CUSTOMS se guarda este lote). Sin embargo, al realizar las modificaciones (ahora en la tabla CT_ITEM_CUSTOMS se guarda la información de todos los lotes) el idoc no me genera el XML, marca el error "El IDOC no se puede enviar a una puerta XML".

Revisando en la WE02 noté que el idoc con mis modificaciones se genera distinto, es decir en el original viene SEGMENTO X y dentro de este viene SEGMENTO Y, SEGMENTO Z, pero en el mío viene SEGMENTO X, SEGMENTO Y y SEGMENTO Z (Y y Z vienen fuera del SEGMENTO X).

¿Alguna idea de por qué es el error? Es la primera vez que me meto en este tema de los idocs y no entiendo mucho. Agradezco cualquier orientación que me puedan dar.

Saludos!!

DCErick 22/12/11 19:58:44

¿Podrías mostrar cual es el código que tu dejaste?

edgar_par87 22/12/11 21:35:14

IDOC Factura Electrónica.
 
Este es el código que dejé:


Asigné directamente el CHARG y en la tabla CT_ITEM_CUSTOMS en lugar de asignarle el POSNR le asigno AUPOS (esto porque necesito que todos traigan la misma posición para que arme correctamente la cadena ya que la función IDMX_DI_SD_DATA_EXTRACT sólo toma en cuenta la posición 10 para el armado de la cadena e ignora las demás). Tal vez esto último esté causando el error.

Saludos!!

DCErick 22/12/11 21:51:56

Oye pero el campo POSNR contiene la posición del item en la factura y el AUPOS si mal no recuerdo es la posicion del item en el pedido. Yo creo que deberias dejar el POSNR.

edgar_par87 22/12/11 22:23:25

IDOC Factura Electrónica.
 
Te explico por qué me pidieron asignar AUPOS. En la función IDMX_DI_SD_DATA_EXTRACT viene el siguiente código:

Línea 722 a 735:

La tabla lt_item_customs queda con un registro sólo con VBELN y POSNR (10). Posteriormente se hace esto:

Línea 849:

Hace como un respaldo y LT_ITEM_CUSTOMS_REF queda con el registro (POSNR = 10). Luego llama a la BADI:

Línea 881:

Si se asigna POSNR, LT_ITEM_CUSTOMS queda, como bien mencionas, con la posición del item en la factura (10, 11 y 12 por ejemplo), pero al salir de la BADI se arma la cadena y viene el siguiente código:

Línea 936:

Se lee el registro que trae LT_ITEM_CUSTOMS_REF (POSNR = 10) y el LOOP valida que el POSNR sea igual a 10, por lo tanto sólo agrega un registro de información aduanera a la cadena (ignora la 11 y 12). Asignando AUPOS se obliga a que todos traigan la posición 10 y la cadena sale correctamente pero el IDOC me marca el error que menciono =S.

Realmente no le encuentro pies ni cabeza a este tema.

Muchas gracias por tus respuestas DCErick.

Saludos!!

DCErick 23/12/11 17:46:00

Ok ya ví todo eso estoy a punto de bomitar, ya me enfermaste jajja y tengo que manejar 14 hrs :( .

La factura se mueve en base al POSNR no hay otro campo, si lo cambias perderas los indices para las sigiuentes busquedas.



Verifica como te quedan la tabla ct_item_customs despues de obtener la información aduanera.
Según yo si la factura tiene 3 posiciones tu tendrías algo similar:

REG VBELN POSNR ..........
1 0091 10 .............
2 0091 20 ..............
3 0091 30 ..............

Felíz Navidad

edgar_par87 27/12/11 23:01:22

IDOC Factura Electrónica.
 
Buen día:

Al final nos apoyamos con un experto que ya ha implementado Factura Electrónica y nos dijo que el Idoc y la Cadena son dos temas diferentes. Para la cadena efectivamente los cambios que realicé fueron correctos pero además había que agregar un código parecido a nivel Idoc dentro de un User Exit que llenaba los segmentos de la ampliación. Ya con eso quedó solucionado este tema.

Muchas gracias por el apoyo DCErick y sobre todo por tu valioso tiempo.

Saludos!!

Feliz Navidad y Año Nuevo :D

pzambroc 20/06/13 17:14:18

Creacion De Un Idoc Para Factura Electronica
 
Porfavor alguien que me ayude a configurar el IDOC para Factura Electronica.

Ya tengo el mapeo de todos los campos sin embargo no se ni como empezar para la configuración del IDOC.

Muchas gracias

mi skype pzambroc mi correo personal


Husos Horarios son GMT. La hora en este momento es 10:50:55.

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