Hola.
El Problema es básicamente que al generar el XML para CFDI Version 3.2.
Los nodos interiores se generan sin el prefijo "cfdi:"
<cfdi:Conceptos>
<Concepto xmlns="http://www.sat.gob.mx/cfd/3" unidad="No aplica" importe="0" valorUnitario="0" descripcion="ESTE CFDI ES UN COMPLEMENTO DEL CFD EXPEDIDO" cantidad="1.00"/>
</cfdi:Conceptos>
<cfdi:Impuestos totalImpuestosTrasladados="166.87">
<cfdi:Traslados>
<Traslado xmlns="http://www.sat.gob.mx/cfd/3" importe="166.87" tasa="5" impuesto="IVA"/>
</cfdi:Traslados>
En lugar de que sea:
<cfdi:Conceptos>
<cfdi:Concepto unidad="No aplica" importe="0" valorUnitario="0" descripcion="ESTE CFDI ES UN COMPLEMENTO DEL CFD EXPEDIDO " cantidad="1.00"/>
</cfdi:Conceptos>
<cfdi:Impuestos totalImpuestosTrasladados="166.87">
<cfdi:Traslados>
<cfdi:Traslado importe="166.87" tasa="5" impuesto="IVA"/>
</cfdi:Traslados>
Como Puedo resolver este Problema.
Saludos.
P.D.
Creo el XML de la siguiente manera.
CFD := TCFD.Create(cfdV32);
With CFD.Datos do Begin
Serie := DaFact.NoFactura.Serie; // 'C';
Folio := IntToStr(DaFact.NoFactura.FolioFactura);
For i := 0 to DaFact.NoRegDetalles-1 do begin
With Conceptos.Add do begin
Cantidad := '1.00';
Descripcion := DaFact.DetalleFactura_.Descripcion; // Revisar esta madre bien.
ValorUnitario := floattostr(DaFact.DetalleFactura_.Importe.Subtotal);
Importe := floattostr(DaFAct.DetalleFactura_.Importe.Subtotal);
Unidad:='No aplica';
if length( DaFact.cliente_factura_especial ) > 0 then begin
Cantidad := altera_cfd_cantidad(Cantidad, DaFact, i);
ValorUnitario := altera_cfd_ValorUnitario( ValorUnitario, DaFact, i);
if alterar_cfd_NoIdentificacion( DaFact ) then
NoIdentificacion := altera_cfd_NoIdentificacion('', DaFact );
end;
End;
End; // fin de Detalles.
With Impuestos do Begin {[TRASLADOS]}
TotalImpuestosTrasladados:=floattostr(DaFact.TotalFactura_.Iva); {opc}
with Traslados.Add do begin
Impuesto := 'IVA';
Tasa:=floattostr(DaFact.Iva);
importe:=floattostr(DaFact.TotalFactura_.Iva);
end;
End; {CFD.Impuestos}
End; {with CFD}

DESCARGA SOFTWARE PARA FACTURA ELECTRONICA DE AQUI.
Facturacion, Validacion, Addendas, Librerias de programacion, etc.
CARTA PORTE V3.1
ECODEX TIENE ESTOS NUEVOS DATOS DE CONTACTO :
Comercializacion y Ventas - Evelia Vicke evicke@ecodex.com.mx 33-16-03-03-48
Soporte - Humberto Guerrero soporte@ecodex.com.mx 33-34-90-46-03
.
Problema con XML de CFDI.
- Dado
- Mensajes: 15980
- Registrado: Mar Jul 06, 2010 7:56 pm
Re: Problema con XML de CFDI.
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!
-
- Mensajes: 6
- Registrado: Sab Jun 02, 2012 9:37 pm
Re: Problema con XML de CFDI.
Muchas Gracias por la Información.
Abrí el Archivo cfdv2030.pas y modifique en cada uno de los metodos ".Add" y ".Insert" la llamada en la forma que se menciona,en el post que me mandaste, de la siguiente manera:
function TXMLConceptos.Add: IXMLConcepto;
begin
//Result := AddItem(-1) as IXMLConcepto;
Result := AddChild(ItemTag, ItemNS, True, -1) as IXMLConcepto; //Nueva forma para versiones de delphi XE?
end;
function TXMLConceptos.Insert(const Index: Integer): IXMLConcepto;
begin
//Result := AddItem(Index) as IXMLConcepto;
Result := AddChild(ItemTag, ItemNS, True, Index) as IXMLConcepto;
end;
y efectivamente se soluciono el problema.
Gracias por tu apoyo.
Saludos.
Abrí el Archivo cfdv2030.pas y modifique en cada uno de los metodos ".Add" y ".Insert" la llamada en la forma que se menciona,en el post que me mandaste, de la siguiente manera:
function TXMLConceptos.Add: IXMLConcepto;
begin
//Result := AddItem(-1) as IXMLConcepto;
Result := AddChild(ItemTag, ItemNS, True, -1) as IXMLConcepto; //Nueva forma para versiones de delphi XE?
end;
function TXMLConceptos.Insert(const Index: Integer): IXMLConcepto;
begin
//Result := AddItem(Index) as IXMLConcepto;
Result := AddChild(ItemTag, ItemNS, True, Index) as IXMLConcepto;
end;
y efectivamente se soluciono el problema.
Gracias por tu apoyo.
Saludos.