Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-03-2017
tmsanchez tmsanchez is offline
Miembro
 
Registrado: mar 2004
Ubicación: Mexico
Posts: 67
Poder: 21
tmsanchez Va por buen camino
Te paso el código de la unidad TimbreFiscalDigital:

Código Delphi [-]

{**********************************************************************************************}
{                                                                                              }
{                                       XML Data Binding                                       }
{                                                                                              }
{         Generated on: 24/04/2014 11:29:42 p.m.                                               }
{       Generated from: CFDI3.2\TimbreFiscalDigital.xsd   }
{                                                                                              }
{**********************************************************************************************}

unit TimbreFiscalDigital;

interface

uses xmldom, XMLDoc, XMLIntf;

type

{ Forward Decls }

  IXMLTimbreFiscalDigital = interface;

{ IXMLTimbreFiscalDigital }

  IXMLTimbreFiscalDigital = interface(IXMLNode)
    ['{366D5D21-F94B-4BCB-9724-A79988C03709}']
    { Property Accessors }
    function Get_Version: UnicodeString;
    function Get_UUID: UnicodeString;
    function Get_FechaTimbrado: UnicodeString;
    function Get_SelloCFD: UnicodeString;
    function Get_NoCertificadoSAT: UnicodeString;
    function Get_SelloSAT: UnicodeString;
    procedure Set_Version(Value: UnicodeString);
    procedure Set_UUID(Value: UnicodeString);
    procedure Set_FechaTimbrado(Value: UnicodeString);
    procedure Set_SelloCFD(Value: UnicodeString);
    procedure Set_NoCertificadoSAT(Value: UnicodeString);
    procedure Set_SelloSAT(Value: UnicodeString);
    { Methods & Properties }
    property Version: UnicodeString read Get_Version write Set_Version;
    property UUID: UnicodeString read Get_UUID write Set_UUID;
    property FechaTimbrado: UnicodeString read Get_FechaTimbrado write Set_FechaTimbrado;
    property SelloCFD: UnicodeString read Get_SelloCFD write Set_SelloCFD;
    property NoCertificadoSAT: UnicodeString read Get_NoCertificadoSAT write Set_NoCertificadoSAT;
    property SelloSAT: UnicodeString read Get_SelloSAT write Set_SelloSAT;
  end;

{ Forward Decls }

  TXMLTimbreFiscalDigital = class;

{ TXMLTimbreFiscalDigital }

  TXMLTimbreFiscalDigital = class(TXMLNode, IXMLTimbreFiscalDigital)
  protected
    { IXMLTimbreFiscalDigital }
    function Get_Version: UnicodeString;
    function Get_UUID: UnicodeString;
    function Get_FechaTimbrado: UnicodeString;
    function Get_SelloCFD: UnicodeString;
    function Get_NoCertificadoSAT: UnicodeString;
    function Get_SelloSAT: UnicodeString;
    procedure Set_Version(Value: UnicodeString);
    procedure Set_UUID(Value: UnicodeString);
    procedure Set_FechaTimbrado(Value: UnicodeString);
    procedure Set_SelloCFD(Value: UnicodeString);
    procedure Set_NoCertificadoSAT(Value: UnicodeString);
    procedure Set_SelloSAT(Value: UnicodeString);
  end;

{ Global Functions }

function GetTimbreFiscalDigital(Doc: IXMLDocument): IXMLTimbreFiscalDigital;
function LoadTimbreFiscalDigital(const FileName: string): IXMLTimbreFiscalDigital;
function NewTimbreFiscalDigital: IXMLTimbreFiscalDigital;

const
  TargetNamespace = 'http://www.sat.gob.mx/TimbreFiscalDigital';

implementation

{ Global Functions }

function GetTimbreFiscalDigital(Doc: IXMLDocument): IXMLTimbreFiscalDigital;
begin
  Result := Doc.GetDocBinding('TimbreFiscalDigital', TXMLTimbreFiscalDigital, TargetNamespace) as IXMLTimbreFiscalDigital;
end;

function LoadTimbreFiscalDigital(const FileName: string): IXMLTimbreFiscalDigital;
begin
  Result := LoadXMLDocument(FileName).GetDocBinding('TimbreFiscalDigital', TXMLTimbreFiscalDigital, TargetNamespace) as IXMLTimbreFiscalDigital;
end;

function NewTimbreFiscalDigital: IXMLTimbreFiscalDigital;
begin
  Result := NewXMLDocument.GetDocBinding('TimbreFiscalDigital', TXMLTimbreFiscalDigital, TargetNamespace) as IXMLTimbreFiscalDigital;
end;

{ TXMLTimbreFiscalDigital }

function TXMLTimbreFiscalDigital.Get_Version: UnicodeString;
begin
  Result := AttributeNodes['version'].Text;
end;

procedure TXMLTimbreFiscalDigital.Set_Version(Value: UnicodeString);
begin
  SetAttribute('version', Value);
end;

function TXMLTimbreFiscalDigital.Get_UUID: UnicodeString;
begin
  Result := AttributeNodes['UUID'].Text;
end;

procedure TXMLTimbreFiscalDigital.Set_UUID(Value: UnicodeString);
begin
  SetAttribute('UUID', Value);
end;

function TXMLTimbreFiscalDigital.Get_FechaTimbrado: UnicodeString;
begin
  Result := AttributeNodes['FechaTimbrado'].Text;
end;

procedure TXMLTimbreFiscalDigital.Set_FechaTimbrado(Value: UnicodeString);
begin
  SetAttribute('FechaTimbrado', Value);
end;

function TXMLTimbreFiscalDigital.Get_SelloCFD: UnicodeString;
begin
  Result := AttributeNodes['selloCFD'].Text;
end;

procedure TXMLTimbreFiscalDigital.Set_SelloCFD(Value: UnicodeString);
begin
  SetAttribute('selloCFD', Value);
end;

function TXMLTimbreFiscalDigital.Get_NoCertificadoSAT: UnicodeString;
begin
  Result := AttributeNodes['noCertificadoSAT'].Text;
end;

procedure TXMLTimbreFiscalDigital.Set_NoCertificadoSAT(Value: UnicodeString);
begin
  SetAttribute('noCertificadoSAT', Value);
end;

function TXMLTimbreFiscalDigital.Get_SelloSAT: UnicodeString;
begin
  Result := AttributeNodes['selloSAT'].Text;
end;

procedure TXMLTimbreFiscalDigital.Set_SelloSAT(Value: UnicodeString);
begin
  SetAttribute('selloSAT', Value);
end;

end.
Responder Con Cita
  #2  
Antiguo 08-03-2017
jourdan jourdan is offline
Miembro
 
Registrado: may 2003
Ubicación: Mexico
Posts: 151
Poder: 22
jourdan Va por buen camino
Muchisimas gracias, me pongo a hacer pruebas inmediatamente!
Saludos
__________________
Alejandro Jourdan
Responder Con Cita
  #3  
Antiguo 08-03-2017
tmsanchez tmsanchez is offline
Miembro
 
Registrado: mar 2004
Ubicación: Mexico
Posts: 67
Poder: 21
tmsanchez Va por buen camino
Cita:
Empezado por jourdan Ver Mensaje
Muchisimas gracias, me pongo a hacer pruebas inmediatamente!
Saludos
Excelente, espero que el código te sea de ayuda.
Responder Con Cita
  #4  
Antiguo 09-03-2017
jourdan jourdan is offline
Miembro
 
Registrado: may 2003
Ubicación: Mexico
Posts: 151
Poder: 22
jourdan Va por buen camino
Sigo sin lograr leer el UUID, me sale el siguiente error:

---------------------------
Debugger Exception Notification
---------------------------
Project Sube_xml.exe raised exception class EAccessViolation with message 'Access violation at address 004056F1 in module 'Sube_xml.exe'. Read of address C35B5E01'.
---------------------------

Algún otro norte que me puedas dar

Muchas gracias y saludos
__________________
Alejandro Jourdan
Responder Con Cita
  #5  
Antiguo 10-03-2017
tmsanchez tmsanchez is offline
Miembro
 
Registrado: mar 2004
Ubicación: Mexico
Posts: 67
Poder: 21
tmsanchez Va por buen camino
Hola, solo falta crear la instancia del objeto XMLDocument1 o simplemente agrega a tu formulario un componente TXMLDocument de la paleta Intenet (comentas la línea donde se define la variable XMLDocument1 )
// XMLDocument1: TXMLDocument;
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); 
  // una opción es crear una instancia de TXMLDocument
  XMLDocument1 := TXMLDocument.Create(Self);

 // 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;
Responder Con Cita
  #6  
Antiguo 10-03-2017
jourdan jourdan is offline
Miembro
 
Registrado: may 2003
Ubicación: Mexico
Posts: 151
Poder: 22
jourdan Va por buen camino
Si tengo el XMLDocument1 en el formulario, ya revise de nuevo todo y sigue mandando el eaccess violation.
Voy a seguir intentandole a ver si encuentro la falla
Nuevamente muchas gracias por tu ayuda
__________________
Alejandro Jourdan
Responder Con Cita
  #7  
Antiguo 12-10-2017
luislynx luislynx is offline
Registrado
NULL
 
Registrado: may 2011
Posts: 3
Poder: 0
luislynx Va por buen camino
Ya encontraste la solucion ya que yo tambien tengo el mismo problema
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
C++Builder 6 CFDI Mexico ¿Como agregar nodo dentro de otro nodo como hijo? JXJ C++ Builder 0 10-03-2016 03:51:01
TFacturaElectronica con soporte para CFDI lcarrasco Bibliotecas de código fuente 14 22-03-2015 04:45:27
Web Service timbrado CFDI Alexis De la Cr Delphi para la web 2 08-11-2012 20:07:13
Consulta - TP Arboles- "Para cada nodo de un arbol Indique nombre del nodo padre" velapuerca88 Varios 5 08-06-2012 17:35:33


La franja horaria es GMT +2. Ahora son las 15:02:29.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi