pborges36
18-07-2006, 16:36:48
Hola a todos, tengo una consulta. Estoy programando en D6 un sistema de facturacion. El sistema imprime las facturas en una impresora Hasar 330, utilizo el componente THasar del OCX. Hasta ahora todo bien, puedo emitir facturas A, B, Remitos, etc. Mi problema es el siguiente: necesito el numero del ultimo remito impreso. Con las facturas no tengo problema, hay una propiedad: hasar1.UltimaFactura. Pero no se como se hace con los remitos.
El procedimiento para imprimir remitos es el sig:
procedure ImprimirRemitofiscal;
var
tc:longint;
Descri:string;
cant,monto,iva,impint:real;
imprime:boolean;
tpodoc,resiva:longint;
nombre,numdoc,domi:string;
begin
//Abrir Puerto
hasar1.Modelo:=8;
hasar1.Puerto:=1;
resiva:=RESPONSABLE_INSCRIPTO;
hasar1.Comenzar;
hasar1.TratarDeCancelarTodo;
//Cliente
nombre:=nombrecliente.Text;
numdoc:=cuitcliente.Text;
domi:=domiciliocliente.Text;
tpodoc:=TIPO_CUIT;
tc:=REMITO;
hasar1.PrecioBase:=true;
hasar1.DatosCliente(nombre,numdoc,tpodoc,resiva,domi);
hasar1.AbrirComprobanteNoFiscalHomologado(REMITO,strtoint(numeroremito.Text)); ////el parametro Identificacion crei que era el numero de remito que yo generaba. pero veo que no es asi
if not hasar1.HuboErrorFiscal then
begin
//Grabar Items del comprobante
query2.First;
while not query2.Eof do
begin
descri:=query2.fieldbyname('RemitoDetalle').AsString;
cant:=query2.fieldbyname('Remitodetallecantidad').AsFloat;
hasar1.ImprimirItemEnRemito(descri,cant);
query2.Next;
end;
//Cerrar Comprobante Fiscal
hasar1.CerrarComprobanteNoFiscalHomologado;
hasar1.ReimprimirComprobante;///duplicado
end
else
begin
MessageDlg('Verifique el CUIT del Cliente', mtError, [mbOK], 0);
end;
//Cerrar Puerto
hasar1.Finalizar;
El procedimiento para imprimir remitos es el sig:
procedure ImprimirRemitofiscal;
var
tc:longint;
Descri:string;
cant,monto,iva,impint:real;
imprime:boolean;
tpodoc,resiva:longint;
nombre,numdoc,domi:string;
begin
//Abrir Puerto
hasar1.Modelo:=8;
hasar1.Puerto:=1;
resiva:=RESPONSABLE_INSCRIPTO;
hasar1.Comenzar;
hasar1.TratarDeCancelarTodo;
//Cliente
nombre:=nombrecliente.Text;
numdoc:=cuitcliente.Text;
domi:=domiciliocliente.Text;
tpodoc:=TIPO_CUIT;
tc:=REMITO;
hasar1.PrecioBase:=true;
hasar1.DatosCliente(nombre,numdoc,tpodoc,resiva,domi);
hasar1.AbrirComprobanteNoFiscalHomologado(REMITO,strtoint(numeroremito.Text)); ////el parametro Identificacion crei que era el numero de remito que yo generaba. pero veo que no es asi
if not hasar1.HuboErrorFiscal then
begin
//Grabar Items del comprobante
query2.First;
while not query2.Eof do
begin
descri:=query2.fieldbyname('RemitoDetalle').AsString;
cant:=query2.fieldbyname('Remitodetallecantidad').AsFloat;
hasar1.ImprimirItemEnRemito(descri,cant);
query2.Next;
end;
//Cerrar Comprobante Fiscal
hasar1.CerrarComprobanteNoFiscalHomologado;
hasar1.ReimprimirComprobante;///duplicado
end
else
begin
MessageDlg('Verifique el CUIT del Cliente', mtError, [mbOK], 0);
end;
//Cerrar Puerto
hasar1.Finalizar;