Página 1 de 1

Invalid child element 'Impuestos'

Publicado: Vie Mar 17, 2023 11:46 am
por Emphatico
Que tal amigos:

Estoy teniendo un problema con una factura de exportación que lleva complemento de comercio exterior y no encuentro la causa. Busqué el tema aquí pero lo que encontré, no creo que tenga relación con mi problema, así es que aquí lo posteo. El error es:
Ecodex: 301 The element 'Comprobante' in namespace 'http://www.sat.gob.mx/cfd/4' has invalid child element 'Impuestos' in namespace 'http://www.sat.gob.mx/cfd/4'. List of possible elements expected: 'Addenda' in namespace 'http://www.sat.gob.mx/cfd/4'.

PAC de Respaldo: 301 CFDI40999 Valida XML=XML Invalido ERROR=The element 'Comprobante' in namespace 'http=//www.sat.gob.mx/cfd/4' has invalid child element 'Impuestos' in namespace 'http=//www.sat.gob.mx/cfd/4'. List of possible elements expected='Addenda' in namespace 'http=//www.sat.gob.mx/cfd/4'.
Adjunto el XML y el INI, seguramente algo estoy haciendo mal. Lo extraño es que con otro cliente sí jala bien... Agradeceré cualquier comentario. Saludos.

Re: Invalid child element 'Impuestos'

Publicado: Vie Mar 17, 2023 11:58 am
por Dado
El XML lo generaste con la CFDLib,DLL ??

Mmmmh, porque hay un error grave y posiblemente si es un bug de la libreria

El error esta en el orden de los nodos, el XML esta asi :

Concepto
Concepto
Complemento
Impuestos

Y deberia ser asi :

Concepto
Concepto
Impuestos
Complemento

Hago pruebas, de todos modos me confirmas porfavor, haces el XML de tu lado o con la CFDLib....

Re: Invalid child element 'Impuestos'

Publicado: Vie Mar 17, 2023 12:19 pm
por Dado
Oh! ya decia yo.......la DLL esta muy bien estudiada para ordenar correctamente los nodos

Descubri que DE TU LADO le pusiste al final el nodo de impuestos.

Porque lo se? porque en el archivo INI ni siquiera aparece informacion de impuestos, asi que debieron agregarlo despues de crear el XML y es precisamente ese el error, el nodo de impuestos debe ir antes del complemento

Re: Invalid child element 'Impuestos'

Publicado: Vie Mar 17, 2023 1:03 pm
por Emphatico
Ah caray.... Perdona mi ignorancia, DADO, pero ¿Cómo es que se agrega ese nodo en el XML sin estar en el INI? Este XML e INI que subí los acababa de generar yo... Y sobre todo, no siendo tan experto, ¿Cuál sería la solución, qué estoy haciendo mal?... Un saludo!...

Re: Invalid child element 'Impuestos'

Publicado: Mié Mar 22, 2023 3:28 pm
por Dado
URGENTE :

Vaya, este es uno de esos momentos en los que hay que reconocer ...... que se tiene un error :(

LA LIBRERIA DLL tiene un error, de esos raros en los que solo pasa si se cumplen dos o tres condiciones seguidas, esas condiciones en este caso son :

- Se define CalcularImportes=SI
- Al mismo tiempo se define un complemento
- El archivo ini NO tiene informacion de [Impuestos] (y no deberia tenerlo, ya que se activo el CalcularImportes)

Eso provoca que no "se guarde" el lugar que le corresponde al nodo de impuestos, y la DLL al insertarlo "se confunde" y lo pone al final.

En lo que revisamos bien el tema y sacamos una actualizacion lo que debes hacer es agregar la informacion de impuestos en tu archivo ini, puede ser asi

Código: Seleccionar todo

[Impuestos]
TotalImpuestosTrasladados=cualquier valor, lo que sea
Eso hace que una primera pasada si se conserve el nodo de impuestos, luego la funcion de CalcularImpuestos rectifica todos los valores.

LISTO. Dice el dicho, mas vale tarde que nunca .... gracias por su paciencia :D

Re: Invalid child element 'Impuestos'

Publicado: Mié Mar 22, 2023 4:18 pm
por Emphatico
Muy agradecido por la respueta y por la ética de reconocer el error. Tomaremos las medidas que me indicas en lo que hay más noticias. Saludos!...