Hola, entré buscando respuesta a esto y la encontré de una manera diferente.
Cita:
Empezado por tmsanchez
Que tal.
Probablemente esto te sirva:
Código Delphi [-]procedure TfrmPrincipal.generaPdf(archivo: String); var recibo: IXMLComprobante; timbreFiscal: IXMLTimbreFiscalDigital; XMLDocument1: TXMLDocument; begin // cargar el comprogante a partir del nombre del archivo recibo := LoadComprobante(archivo); // obtener el nodo del timbre fiscal XMLDocument1.Xml.Text := recibo.Complemento.ChildNodes.FindNode('tfd:TimbreFiscalDigital', '').Xml; XMLDocument1.Active := True; timbreFiscal := GetTimbreFiscalDigital(XMLDocument1); showMessage(timbreFiscal.UUID); end;
|
Hola, corrijo... para que funcione en la linea que dice:
Cita:
XMLDocument1.Xml.Text := recibo.Complemento.ChildNodes.FindNode('tfd:TimbreFiscalDigital', '').Xml;
|
Debe decir
Código Delphi
[-]
XMLDocument1.Xml.Text := recibo.Complemento[0].ChildNodes[0].Xml;
Siempre y cuando esté timbrado el CFDI...
Al menos a mi me sirve desde hace tiempo