Supongo que usando el software de impresoras-fiscales debería ser así
err = IF_WRITE("@PONEENCABEZADO|00001|5|⌂")
Y en la linea que abre la factura, agregale el numero de transacción
ejecuta="err = IF_WRITE('@FACTABRE|00001|"+ chartipo +"|C|"+ charletra +"|1|
P|10|I|I|"+ charcliente +"||CUIT|"+ charcuit + "|N|"+ chardomicilio
+"|||REMITO 1||C')"
Espero que te pueda servir.
Saludos
Javier Solier
-----Mensaje original-----
From: jcarazzo
Sent: Saturday, November 13, 2010 2:16 PM
To: Comunidad de Visual Foxpro en Español
Subject: [vfp] impresion fiscal
IF cForm.DiscIva=1
lcComprobante = "T" && Si Es FACT o NC
lnAccion=IF_WRITE("@FACTABRE|"+lcComprobante+;
"|C|A|1|F|12|I|"+cForm.LetrFisc+"|"+lcClienteImpreso+;
"||"+lcTipoDocumento+"|"+lcCuit+;
"|N|"+lcDomicilio1+"|"+lcDomicilio2+"|"+lcDomicilio3+"|.||C")
ELSE
lcComprobante = "T" && Si Es FACT o NC
lnAccion=IF_WRITE("@FACTABRE|"+lcComprobante+;
"|C|B|1|F|12|I|"+cForm.LetrFisc+"|"+lcClienteImpreso+;
"||"+lcTipoDocumento+"|"+lcCuit+;
"|N|"+lcDomicilio1+"|"+lcDomicilio2+"|"+lcDomicilio3+"|.||C")
ENDIF
** Detalle del Comprobante
SET DECIMALS TO 4
oApp.Procesando("Imprimiendo Detalle del Comprobante Fiscal...")
SELECT cFormd
SCAN
lnAccion =
IF_WRITE("@FACTITEM|"+ALLTRIM(codiprod)+"|"+TRANSFORM(cant,"9999.999")+"|"+T
RANSFORM(precunit,"9999999.99")+"|"+;
TRANSFORM(porciva1/100,"9.9999")+"|M|1|"+TRANSFORM(porcImpInt,"999.99999")+"
|"+;
ALLTRIM(SUBSTR(descprod,1,30))+"|"+ALLTRIM(SUBSTR(descprod,31,30))+"|"+ALLTR
IM(SUBSTR(descprod,61,30))+;
"|0.0000|"+TRANSFORM(ImpImpInt,"999999999.99")+'"')
IF lnAccion < 0
EXIT
ENDIF
ENDSCAN
IF lnAccion < 0
lcMensajeError = lcMensajeError + " FACTITEM "
llOkDriver = .F.
ENDIF
SET DECIMALS TO 2
-----Mensaje original-----
De: publice...@googlegroups.com
[mailto:publice...@googlegroups.com] En nombre de jcarazzo
Enviado el: sábado, 13 de noviembre de 2010 14:17
Para: Comunidad de Visual Foxpro en Español
Asunto: [vfp] impresion fiscal
-----Mensaje original-----
De: publice...@googlegroups.com
[mailto:publice...@googlegroups.com] En nombre de jcarazzo
Enviado el: lunes, 15 de noviembre de 2010 12:28
Para: Comunidad de Visual Foxpro en Español
Asunto: [vfp] Re: impresion fiscal
Gracias por responder, el problema es puntual con un ocx de Epson que no logró leer campos de respuesta extra, como resultado de comandos enviados...
Saludos
LOCAL command1, extension, enviar, envio, gcNif, gcTipo, gnTotal_bruto, gnTotal_neto, gnTotal_itbis
STORE "" TO command1, extension, gcNif, gcTipo
STORE 0 TO gnTotal_bruto, gnTotal_neto, gnTotal_itbis
STORE .F. TO enviar, envio
command1 = Chr(10) + Chr(10)
extension = Chr(0) + Chr(0)
enviar = THISFORMSET.frmImpresion_fiscal.Olecontrol1.AddDataField(command1)
enviar = THISFORMSET.frmImpresion_fiscal.Olecontrol1.AddDataField(extension)
envio = THISFORMSET.frmImpresion_fiscal.Olecontrol1.SendCommand
DO WHILE THISFORMSET.frmImpresion_fiscal.Olecontrol1.state = 2
WAIT WINDOW "Imprimiendo" nowait
enddo
IF THISFORMSET.frmImpresion_fiscal.Olecontrol1.ReturnCode # 0
WAIT WINDOW "Error en informacion general "+STR(THISFORMSET.frmImpresion_fiscal.Olecontrol1.ReturnCode)
ENDIF
*THISFORMSET.frmImpresion_fiscal.Olecontrol1.ExtraFieldsCount
gcNif = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(1)
gcTipo = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(2)
gnTotal_bruto = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(3)
gnTotal_neto = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(4)
gnTotal_itbis = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(5)
cCampo5 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(5)
cCampo6 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(6)
cCampo7 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(7)
cCampo8 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(8)
cCampo9 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(9)
cCampo10 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(10)
cCampo11 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(11)
cCampo12 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(12)
cCampo13 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(13)
cCampo14 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(14)
cCampo15 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(15)
cCampo16 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(16)
cCampo17 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(17)
cCampo18 = THISFORMSET.frmImpresion_fiscal.Olecontrol1.GetExtraField(18)
SELECT CGCCFAC1
REPLACE NIF_FISC WITH gcNif
Exacto! Pero el getextrafield(n) me devuelve siempre vacío...
Ese es mi problema...
Hola ángel, es un tm-u220afii
Saludos