OT FACTURA ELECTRONICA MEXICO
Posted: Fri Jun 20, 2008 11:34 pm
Alguien sabe sobre el tema?
Como generar sellos digitales
Como generar sellos digitales
www.FiveTechSoft.com
https://fivetechsoft.com/forums/
Code: Select all
#include <fivewin.ch>
/*
Formato de aDatos:
*/
FUNCTION mainx()
LOCAL oCfdi := NIL
WITH OBJECT oCfdi := WCFDI()
:cFolderXml := ".\xml"
:cFolderBin := ".\bin"
:cFileXML := ""
:lBidimensionalByXML := .f.
:lLog := .f.
:lErase := .t.
MsgRun( "Cargando información, espere por favor...", "INCOS 2011", {|| :new( factura() )} )
MsgRun( "Generando XML, espere por favor...", "INCOS 2011", {|| :CreateXml()} )
? "[CADENA ORIGINAL EMISOR]", :cCadenaOriginal,, ;
"[SELLO EMISOR]", :cSello,,, ;
"[CADENA ORIGINAL COMPLEMENTO]", :cCadenaOriginalComplemento,, ;
"[VERSION TIMBRADO]", :cVersionTimbre, ;
"[FOLIO FACTURA]", :cUuid, ;
"[FECHA DE TIMBRADO]", :cFechaTimbrado, ;
"[SELLO CFD]", :cSelloCFD, ;
"[SELLO SAT]", :cSelloSAT, ;
"[CERTIFICADO SAT]", :cCertificadoSAT
IF !:lTimbrado
? "No se ha timbrado el documento, verifique sus datos..."
ENDIF
END OBJECT
WITH OBJECT oCfdi := WCFDI()
:cFolderXml := ".\xml"
:cFolderBin := ".\bin"
:cFileXML := ".\xml\A0000001.xml"
MsgRun( "Cargando información de timbrado, espere por favor...", "INCOS 2011", {|| :gettimbre()} )
? "OBTENCION DE TIMBRADO PARA REIMPRESION", ;
"[CADENA ORIGINAL COMPLEMENTO]", :cCadenaOriginalComplemento,, ;
"[VERSION TIMBRADO]", :cVersionTimbre, ;
"[FOLIO FACTURA]", :cUuid, ;
"[FECHA DE TIMBRADO]", :cFechaTimbrado, ;
"[SELLO CFD]", :cSelloCFD, ;
"[SELLO SAT]", :cSelloSAT, ;
"[CERTIFICADO SAT]", :cCertificadoSAT
END OBJECT
RETURN NIL
/*************************************************************************************/
STATIC FUNCTION factura()
LOCAL cSerie := "A"
LOCAL cFolio := "1"
LOCAL cTipoComprobante := "egreso"
LOCAL dFecha := Date()
LOCAL cHora := Time()
LOCAL cFormaPago := "Pago en una sola exhibicion"
LOCAL cMetodoPago := "CREDITO COMERCIAL"
LOCAL cCondiciones := "CREDITO"
LOCAL nSubtotal := 35159.83
LOCAL nTotal := 36645.79
LOCAL nDescuento := 58.50
LOCAL cMotivoDscto := "PRONTO PAGO"
LOCAL nTipoCambio := 1.00
LOCAL cMoneda := "PESOS"
LOCAL aExpedido := { "Cuba 25" ,; //calle
"456" ,; //no exterior
"26" ,; //no interior
"Col. Latinoamericana" ,; //colonia
"Oaxaca" ,; //localidad
"" ,; //referencia
"Oaxaca" ,; //municipio
"Oaxaca" ,; //estado
"Mexico" ,; //pais
"48470" } //codigo postal
LOCAL aReceptor := { "MMC090909QWE" ,; //RFC
"Mi Mejor Cliente SA de CV" ,; //NOMBRE
"Calle 5 de Mayo" ,; //CALLE
"345" ,; //NO EXTERIOR
"" ,; //NO INTERIOR
"Col. Bondojito" ,; //COLONIA
"Guadalajara" ,; //LOCALIDAD
"" ,; //REFERENCIA
"Guadalajara" ,; //MUNICIPIO
"Jalisco" ,; //ESTADO
"Mexico" ,; //PAIS
"48473" } //CODIGO POSTAL
LOCAL aDetalle := {}
//LOCAL aTraslados := { {"IVA", 16.00, 5616.21} }
LOCAL aTraslados := NIL
LOCAL aRetenciones := NIL //{ {"IVA", 4071.75} }
LOCAL aDatos
AAdd(aDetalle, { 45, "Pieza", "Lapiz / Berol del # 2" , 0.00, 0.00 } )
AAdd(aDetalle, { 1, "Pieza", "Lapiz / Berol del # 2" , 2481.85, 2481.85 } )
AAdd(aDetalle, { 12, "Pieza", "Borrador Saga" , 1500.00, 18000.00 } )
AAdd(aDetalle, { 3, "Pieza", "Pluma Bic Negra" , 4892.66, 14677.98 } )
aDatos := { cFolio ,;
cSerie ,;
cTipoComprobante,;
dFecha ,;
cHora ,;
cFormaPago ,;
cMetodoPago ,;
cCondiciones ,;
nTotal ,;
nSubtotal ,;
nDescuento ,;
cMotivoDscto ,;
nTipoCambio ,;
cMoneda ,;
aExpedido ,;
aReceptor ,;
aDetalle ,;
aTraslados ,;
aRetenciones }
RETURN ( aDatos )