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 16-12-2010
Avatar de richy08
richy08 richy08 is offline
Miembro
 
Registrado: may 2007
Ubicación: Bucerias, Nayarit Mexico
Posts: 529
Poder: 17
richy08 Va por buen camino
como crear archivo .xml para cfd

buenas noches compañeros he leido y leido, y veo codigos y mas codigos pero nada con el que pueda basarme para crear .xml ya cree mi cfdv2.pas pero creo funciones que no veo como utilizarlas vi un codigo con el cual podias insertar, eliminar nodos, pero era ya un .xml con datos, lo cual para la factura electronica no me serviria de ahi nacen estas cuestiones

1.- el archivo .xml debe de ser un archivo en blanco??

2.- como puedo posicionarme en un nodo para editar su cadena??

3.- y como uso el .xlst para saber si el .xml generado es correcto

esto es el codigo con el que he empezado a explorar los .xml desde delphi


Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  Cliente, Nodo: IXMLNode;
begin
  XMLDocument1.LoadFromFile( ExtractFilePath( Application.ExeName ) + 'EjemploFactura.xml' );
  XMLDocument1.Active := True;
  Cliente := XMLDocument1.DocumentElement.AddChild( 'Cliente' );
  Cliente.Attributes['id'] := '3';
  Nodo := Cliente.AddChild( 'nombre' );
  Nodo.Text := 'PABLO PALAZON ALCOLEA';
  Nodo := Cliente.AddChild( 'nif' );
  Nodo.Text := '79469163E';
  Nodo := Cliente.AddChild( 'saldopte' );
  Nodo.Text := '0.00';
  Nodo := Cliente.AddChild( 'diaspago' );
  Nodo.Text := '15';
  XMLDocument1.SaveToFile( ExtractFilePath( Application.ExeName ) + 'clientes3.xml' );
end;
gracias por cualquier comentario
Responder Con Cita
  #2  
Antiguo 16-12-2010
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 21
Delfino Va por buen camino
Yo uso el TJvSimpleXML de la libreria JVCL. Es muy sencillo y potente y hay ejemplo de su uso y se accede a elementos de manera directa..
__________________
¿Microsoft? No, gracias..
Responder Con Cita
  #3  
Antiguo 16-12-2010
Avatar de richy08
richy08 richy08 is offline
Miembro
 
Registrado: may 2007
Ubicación: Bucerias, Nayarit Mexico
Posts: 529
Poder: 17
richy08 Va por buen camino
gracias delfino le voy a echar un vistazo saludos
Responder Con Cita
  #4  
Antiguo 16-12-2010
Avatar de gmontes
gmontes gmontes is offline
Miembro
 
Registrado: jul 2004
Ubicación: Culiacán, Sinaloa, México
Posts: 668
Poder: 20
gmontes Va por buen camino
pues yo baje el dcu NATIVEXML que es gratuito y listo

lo instalas y agregas el path de la libreria

Código:
var
   sruta, FicheroXML:string;
   ADoc: TNativeXml;

        //aqui los voy a guardar
      sruta:='c:\ssistema\reportes\xml\';


     //aqui tomamos los datos de la factura y demas
     //con la instruccion del sql, etc etc
     sDocumento:= DMSIU.cdsFac.FieldByName('documento').AsString;
 
    FicheroXML:=sruta+Trim(sDocumento);


       ADoc := TNativeXml.CreateName('comprobante');
        try
         // Add a subnode with name "Customer"
         with ADoc.Root.NodeNew('cliente') do
         begin
          // Add an attribute to this subnode
          // WriteAttributeInteger('ID', 123456);
          // Add subsubnode

         // puse el '1' para verificar que funcione y solo voy a cambiarlo por las variables de cada datos

          WriteString('cod_cte', '1');
          WriteString('razon_social', 'EMPRESA X');
          WriteString('rfc', '1');
          WriteString('calle','1');
          WriteString('num_exterior','1');
          WriteString('num_interior','1');
          WriteString('colonia','1');
          WriteString('cod_postal','1');
          WriteString('pobmunedo','1');
          WriteString('telefono','1');
          WriteString('municipio','1');
          WriteString('estado','1');
          WriteString('pais','1');
         end;
         with ADoc.Root.NodeNew('factura') do
         begin
          WriteString('folio', '1');
          WriteString('transaccion', '1');
          WriteString('fecha', '1');
          WriteString('plazo', '1');
          WriteString('cod_estab', '1');
          WriteString('importe', '1');
          WriteString('iva', '1');
          WriteString('descuento_porcentual', '1');
          WriteString('importe_descuento', '1');
          WriteString('iva_retenido', '1');
          WriteString('isr_retenido', '1');
          WriteString('total', '1');
          WriteString('ieps', '1');
          WriteString('costo', '1');
          WriteString('cantidad', '1');
          WriteString('vendedor', '1');
          WriteString('nom_vendedor', '1');
          WriteString('condicion_pago', '1');
          WriteString('notas', '1');
          WriteString('moneda', '1');
          WriteString('tipo_cambio', '1');
         end;
         //repetir por cada renglon de detalle
         with ADoc.Root.NodeNew('conceptos') do
         begin
          WriteString('cod_prod', '1');
          WriteString('descripcion_completa', '1');
          WriteString('comentario', '1');
          WriteString('cantidad', '1');
          WriteString('precio_lista', '1');
          WriteString('descuento_porcentual', '1');
          WriteString('importe_descuento', '1');
          WriteString('importe', '1');
          WriteString('iva', '1');
          WriteString('total', '1');
          WriteString('costo', '1');
          WriteString('porcentaje_iva', '1');
         end;

        // Save the XML in readable format (so with indents)
         ADoc.XmlFormat := xfReadable;
        // Save results to a file
         ADoc.SaveToFile(FicheroXML);
        finally
         ADoc.Free;

        end;
__________________
Todos llevamos nuestros demonios a cuestas..

Última edición por gmontes fecha: 16-12-2010 a las 17:49:10.
Responder Con Cita
  #5  
Antiguo 16-12-2010
Avatar de richy08
richy08 richy08 is offline
Miembro
 
Registrado: may 2007
Ubicación: Bucerias, Nayarit Mexico
Posts: 529
Poder: 17
richy08 Va por buen camino
gracias gmontes podrias indicarme de donde descargo el componente, pero aun sigo condudas para que sirve el .xsd que nos da hacienda

Responder Con Cita
  #6  
Antiguo 16-12-2010
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
El xsd es el "schema" o "esquema" para armar la esctructura de tu xml. Un consejo, si no tienes mucho conocimiento de xml, cifrado y demás y no cuentas con algún tipo de biblioteca de componentes o código de las que ya andan por ahí mejor ni te metas ya en este rollo. Al menos en 15 días es bastante difícil lograr algo sin ayudas externas y menos aún desconociendo algunos temas. No mencionas si trabajas para alguna empresa en el depto de sistemas o bien en alguna casa de software.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #7  
Antiguo 16-12-2010
Avatar de richy08
richy08 richy08 is offline
Miembro
 
Registrado: may 2007
Ubicación: Bucerias, Nayarit Mexico
Posts: 529
Poder: 17
richy08 Va por buen camino
Cita:
Empezado por AzidRain Ver Mensaje
El xsd es el "schema" o "esquema" para armar la esctructura de tu xml. Un consejo, si no tienes mucho conocimiento de xml, cifrado y demás y no cuentas con algún tipo de biblioteca de componentes o código de las que ya andan por ahí mejor ni te metas ya en este rollo. Al menos en 15 días es bastante difícil lograr algo sin ayudas externas y menos aún desconociendo algunos temas. No mencionas si trabajas para alguna empresa en el depto de sistemas o bien en alguna casa de software.
hola azid rain pues si trabajo para una empresa en la cual se desarrolla software entre otras cosas, pero esta ves la implementacion es para le cotizador que yo mismo implemente para la empresa. lo del . xsd ya se que es la estructura del .xml pero lo que no se es como utilizarlo para generarlo desde delhpi, y si sitengo eperiencia con archivos .xml pero bajo php, y pues desgraciadamente ya estoy metido en esto por que soy el unico programador en la empresa : , y lo de la encriptacion pues no se ve tan dificil, espero poder sacrlo aunque ahorita ando metido en otros rollos mas urgentes asi es que a los 15 dias le tendre que descontar mas


saludos
Responder Con Cita
  #8  
Antiguo 16-12-2010
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
Changos richy!! No pues si que la tienes bastante pesada, queda muy poco tiempo ojalá y que no tengas problemas ahi cualquier cosa nos echas un cable y no creas que el cifrado es lo de menos,...es lo demás....

Teóricamente no necesitas el schema para generar el xml, únicamente para validarlo.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #9  
Antiguo 17-12-2010
Avatar de richy08
richy08 richy08 is offline
Miembro
 
Registrado: may 2007
Ubicación: Bucerias, Nayarit Mexico
Posts: 529
Poder: 17
richy08 Va por buen camino
Cita:
Empezado por AzidRain Ver Mensaje
Changos richy!! No pues si que la tienes bastante pesada, queda muy poco tiempo ojalá y que no tengas problemas ahi cualquier cosa nos echas un cable y no creas que el cifrado es lo de menos,...es lo demás....

Teóricamente no necesitas el schema para generar el xml, únicamente para validarlo.
a ok entonces el .xml lo formo yo y como lo valido??
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
como crear un archivo en php? gabrielflowers PHP 5 27-03-2008 22:12:18
¿cómo crear un archivo ejecutable para aplicaciones en java? rls JAVA 11 12-07-2006 17:42:39
crear archivo INI para Inicializar base de datos paradox @-Soft Tablas planas 2 23-11-2003 17:47:26
problemas para crear archivo texto Manuel Firebird e Interbase 3 12-05-2003 21:08:08
Una Manito para crear archivo de texto desde interbase Manuel Firebird e Interbase 3 09-05-2003 00:39:23


La franja horaria es GMT +2. Ahora son las 11:42:14.


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