Como crear una addenda personalizada

Cualquier asunto relacionado con Certificados Digitales, Rango de Folios Autorizados, Addendas Comerciales y Complementos se cubren aqui
Avatar de Usuario
Dado
Mensajes: 15824
Registrado: Mar Jul 06, 2010 8:56 pm

Como crear una addenda personalizada

Mensajepor Dado » Jue Dic 16, 2010 1:32 pm

Por mail me comentaron que querian una addenda personalizada para indicar la moneda y el numero de lote y me proponia esta addenda:

<Addenda>
<Factura Dolares Moneda="Dolares" TipoCambio="12.65"/>

<Infomacion general Lote="023854" Cliente="123345"/>
</Addenda>


Bueno eso no cumple con el formato XML, en XML debes tener nodos con nombre, atributos y valores de nodos, y ademas la recomendacion (personal) de englobar la addenda personalizada en un bloque, entonces la addenda seria mejor si fuera asi :

Código: Seleccionar todo


<Addenda>
   <EmpresaX>
      <Factura Moneda="USD" TipoCambio="12.65"/>
      <Infomacion Lote="023854" Cliente="123345"/>
    </EmpresaX>
</Addenda>


propongo <EmpresaX> como "nodo padre" puede ser cualquier nombre, como "Soriana" o "PedroFuentes" o algo que identifique la addenda.
tambien propongo usar moneda = USD o MXP que son terminos ISO-compliant
quite algunas palabras ya que el nombre de los nodos no puede llevar espacio (Informacion General --> Informacion)
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!

condor0086
Mensajes: 425
Registrado: Jue Ago 05, 2010 4:11 pm

Re: Como crear una addenda personalizada

Mensajepor condor0086 » Jue Dic 16, 2010 5:55 pm

Yo lo que utilizo es esto:

Código: Seleccionar todo


<Addenda>
  <hg:Observaciones>
     Aquí puedo poner todo el texto que quiera y en la forma y estructura que quiera, con tal que quede en UTF8 y se conviertan adecuadamente los pocos caracteres especiales del XML, por ejemplo la addenda podría decir simplemente - Moneda:"USD" TipoCambio:"12:65"
  </hg:Observaciones>
</Addenda>


El interior del texto no es XML sino texto libre, pero de esta forma hay total libertad para usarse de la manera que se quiera. Por ejemplo si una empresa quiere manejar un campo en particular dentro de la Addenda (como el campo Moneda) puedo poner la palabra "Moneda:" seguida por el valor entre comillas. Posteriormente si se lee dicha Addenda por la propia empresa es muy fácil dentro de un programa ubicar la palabra "Moneda:" y leer su valor a continuación, por otro lado si alguien se pone a leerla en modo texto o si la imprime pues los mismos campos son descriptivos y se entiende de qué se trata.

Cualquiera puede poner un simple comentario (un campo que a mi juicio le faltó al XSD del SAT traerlo de base), o uno o más campos a gusto de cada quién.

Ah!, para que pase el validador directamente el inicio del XML queda así:

Código: Seleccionar todo


<?xml version="1.0" encoding="UTF-8"?>
<Comprobante xmlns="http://www.sat.gob.mx/cfd/2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:hg="http://www.UnaDireccionFija.com/CFD" xsi:schemaLocation="http://www.sat.gob.mx/cfd/2 http://www.sat.gob.mx/sitio_internet/cfd/2/cfdv2.xsd http://www.UnaDireccionFija.com/CFD http://www.UnaDireccionFija.com/CFD/AddendaObservaciones.xsd" version="2.0" ... etc.


(observen que agregué 3 elementos relacionados con http://www.UnaDireccionFija.com)

y tengo publicado el archivo http://www.UnaDireccionFija.com/CFD/AddendaObservaciones.xsd (ojo, esta no es la dirección real, sólo la puse de muestra) De esta forma el XML puede pasarse directamente a cualquier validador con todo y su addenda y automáticamente la da por buena (en el XSD la tengo definida como un campo de texto sin límite de longitud).

Otra ventaja de este esquema es que =es posible= que pueda coexistir esta Addenda con otras que manejan y a veces nos requieren otras empresas (ojo, me ha funcionado en algunas pero no significa que funcione con todas)

La verdad es que si todas las empresas manejaran algo así sería muchísimo más fácil el manejo de las Addendas y cualquier XML podría tener una o más Addendas (o ninguna) según se requiriera y sin que se afectaran para nada una con otra.

Saludos

Avatar de Usuario
Dado
Mensajes: 15824
Registrado: Mar Jul 06, 2010 8:56 pm

Re: Como crear una addenda personalizada

Mensajepor Dado » Jue Dic 16, 2010 7:07 pm

@condor0086

Esa forma de addenda que usas me recuerda mucho a la addenda EDI de Walmart, no la desarrolle pero si la estudie un poco.

Ahi usan un campo de texto libre con un codigo medio raro y enseguida los datos

UNB+UNOB:1+Escribir_ID_Proveedor:ZZ+925485MX00:8+[FECHADOCTO(YYMMDD)]:[HORADOCTO(HHMM)]+[PARTENUMERICA]' UNH+[PARTENUMERICA]+INVOIC:D:01B:UN:AMC002' BGM+380+[PARTENUMERICA]+9'.....etc


Ahi por ejemplo quiero entender que el codigo UNB+1UNOB:1+ es para indicar "ID_proveedor"
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!

condor0086
Mensajes: 425
Registrado: Jue Ago 05, 2010 4:11 pm

Re: Como crear una addenda personalizada

Mensajepor condor0086 » Vie Dic 17, 2010 12:02 am

Si, también la vi con lo de La Corona cuando empecé a estudiar todo esto de los CFDI.

Claro que a esa no se le entiende nada, es exclusiva para la computadora, pero al ser texto libre ya depende de cada quien el hacerla legible o no. Lo bonito es la libertad que se tiene :)

Saludos

fortiz
Mensajes: 221
Registrado: Vie Dic 10, 2010 9:11 am

Re: Como crear una addenda personalizada

Mensajepor fortiz » Mié Dic 22, 2010 8:14 am

Hola

En 2005 que empce con la Factura electronica de Walmart me entere de varios por ques

El texto no es formato tan libre, esta estandarizado por una agencia de la ONU.

La definicion del mensaje INVOIC conforme a la forma D01B esta aqui http://www.unece.org/trade/untdid/d01b/trmd/invoic_c.htm

Incluso tambien la AMECE o GS1 Mexico la menciona como Addenda Edifact http://www.tufactura.me/index.php/factura/addenda

Por supuestio que me gusta mas XML pero hace años cuando solo habia EDI via una VAN (X.25 por cierto) los grandes proveedores mandaban sus pedidos via EDI usando el estandard EDIFACT. Si ya estoy mayorcito.

-----

Ojala que todos lo que san una addenda especial tambien usaran su Name Space propio, por ejemplo acabo de recibir una factura de un proveedor que usa AdminPaq

<Addenda>
<Compac>
<Encabezado>
<MGW10008 cSerieDo01="A" cFolio="1" cReferen01="" cFechaVencimiento="Enero 20 2011" cObserva01="4300MM DE ...
....


Que bueno que todo lo ponen dentro del Nodo Compac :) que malo que no lo pusieron con su prefijo de namespace :(

Avatar de Usuario
Dado
Mensajes: 15824
Registrado: Mar Jul 06, 2010 8:56 pm

Re: Como crear una addenda personalizada

Mensajepor Dado » Mié Dic 22, 2010 9:28 am

Lo de las addendas es un lio,

El AMECE desarrollo su addenda "homologada" que nadie usa.

KeyPlastics le fusilo su addenda a Chrysler, la descompuso le agrego otros campos y ahorita que trato de desarrollarla esta pesimamente estructurada

Prolec hizo su addenda lo mas simple que pudo y olvidate de namespace, ni siquiera lo "encerro" entre un nodo padre

Soriana tiene dos addendas y la que mas se usa (la "Remision Reverse") tiene muchas condicionales que es muy dificil de entender. Condicionales del tipo "si usas este nodo el otro no debe ir"

No, y luego, las condiciones absurdas, cuando desarrolle la addenda Volkswagen me pedian que practicamente toda la factura ESTUVIERA EN MAYUSCULAS, porque? quien sabe, tambien me pidieron quitar unos espacios entre nodos (</nodo> <nodo>) y otras que ya ni me acuerdo.

Pero este mes el el mes del perdon y arrepentimiento.......je je je
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!

cbr_net
Mensajes: 125
Registrado: Mar Nov 23, 2010 2:08 pm
Ubicación: Puebla
Contactar:

Re: Como crear una addenda personalizada

Mensajepor cbr_net » Dom Ene 02, 2011 2:21 am

DADO escribió:Por mail me comentaron que querian una addenda personalizada para indicar la moneda y el numero de lote y me proponia esta addenda:

<Addenda>
<Factura Dolares Moneda="Dolares" TipoCambio="12.65"/>

<Infomacion general Lote="023854" Cliente="123345"/>
</Addenda>


Bueno eso no cumple con el formato XML, en XML debes tener nodos con nombre, atributos y valores de nodos, y ademas la recomendacion (personal) de englobar la addenda personalizada en un bloque, entonces la addenda seria mejor si fuera asi :

Código: Seleccionar todo


<Addenda>
   <EmpresaX>
      <Factura Moneda="USD" TipoCambio="12.65"/>
      <Infomacion Lote="023854" Cliente="123345"/>
    </EmpresaX>
</Addenda>


propongo <EmpresaX> como "nodo padre" puede ser cualquier nombre, como "Soriana" o "PedroFuentes" o algo que identifique la addenda.
tambien propongo usar moneda = USD o MXP que son terminos ISO-compliant
quite algunas palabras ya que el nombre de los nodos no puede llevar espacio (Informacion General --> Informacion)



Hola,

Una ultima duda sobre esto de dolares con version 2.0, el monto de la factura en el XML debe ir en pesos?? o le puedo dejar el monto en dolares? con la addenda especificando que son dolares? ya que en la impresion si me es necesario que diga USD y se imprima tambien el tipo de cambio al momento de la factura.

Saludos.

arivera
Mensajes: 6
Registrado: Mié Oct 20, 2010 5:40 pm

Re: Como crear una addenda personalizada

Mensajepor arivera » Lun Ene 10, 2011 8:35 pm

¿Entonces esto sería una addenda válida dentro del archivo XML?
<Comprobante>
.
.
.
<Addenda>
<Observaciones="Esto es un ejemplo de como funciona la addenda" />
</Addenda>
</Comprobante>

¿o inclusive esto?

<Comprobante>
.
.
.
<Addenda Observaciones="Esto es un ejemplo de como funciona la addenda" >
</Addenda>
</Comprobante>


Saludos.

Avatar de Usuario
Dado
Mensajes: 15824
Registrado: Mar Jul 06, 2010 8:56 pm

Re: Como crear una addenda personalizada

Mensajepor Dado » Lun Ene 10, 2011 8:41 pm

arivera escribió:¿Entonces esto sería una addenda válida dentro del archivo XML?
<Comprobante>
.
.
.
<Addenda>
<Observaciones="Esto es un ejemplo de como funciona la addenda" />
</Addenda>
</Comprobante>
Saludos.


Mmmmh, casi, pero no hay nombre de nodo, solo un atributo, es mas bien asi:

arivera escribió:<Comprobante>
.
.
.
<Addenda>
<Observaciones Texto="Esto es un ejemplo de como funciona la addenda" />
</Addenda>
</Comprobante>
Saludos.


Si ves la diferencia, tienes un NODO llamado "Observaciones" con un ATRIBUTO llamado "Texto" que tiene un valor "Esto es...."
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!

Avatar de Usuario
Dado
Mensajes: 15824
Registrado: Mar Jul 06, 2010 8:56 pm

Re: Como crear una addenda personalizada

Mensajepor Dado » Lun Ene 10, 2011 8:42 pm

arivera escribió:¿o inclusive esto?

<Comprobante>
.
.
.
<Addenda Observaciones="Esto es un ejemplo de como funciona la addenda" >
</Addenda>
</Comprobante>


Saludos.


No, no, no, eso si esta mal, no puedes agregarle ATRIBUTOS al NODO Addenda
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!


Volver a “Certificados, Folios, Addendas y Complementos”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados