Impressão em 40 colunas 10 vezes sendo o ultimo cortezia, tem como ?
Olá a todos e obrigado a qualquer ajuda,
Meu cenário é assim, tenho um sistema onde imprimo um ticket com a descrição, valor, taxa e etc, porem, terei uma taxa que terá que imprimir 10 tickets e o último como cortezia, exemplo, pacote de fisioterapia é R$ 250,00, terei que imprimir 10 de R$ 25,00 e mais 1 com valor R$ 0,00 ou CORTEZIA, já quebrei a cabeça tentando fazer isso, meu código de impressão é esse:
procedure TForm_Recebimentos.EmiteCupom;
var
SaltaLinha : string;
i : integer;
Nro_Tickets : integer;
begin
//Impressão de cupom em Impressora de 40 Colunas
//Le o arquivo INI
ArqIni := TIniFile.Create(ExtractFilePath(Paramstr(0))+FileName);
PortaRecibo := ArqIni.ReadString('WCaixa', 'PortaRecibo', '');
//Le Nmero de Linhas a Saltar
SaltaLinha := ArqIni.ReadString('WCaixa', 'NumeroLinhasASaltar', '');
//Pega Porta Com1, LPT1 conforme Conexao.ini
AssignFile(Impressora, PortaRecibo);
//AssignFile(Impressora, 'LPT1:');
//Abre a Porta da Impressora
Rewrite(Impressora);
Write(Impressora);
Writeln(Impressora, Format('%40s',['x']));
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
// Writeln(Impressora, #27#15 + 'CMSP..:');
//Imprime a string Diretoria Financeira alinhado a esquerda dentro de 40 caracteres
Write(Impressora, Format('%38s',[' **** Circulo Militar de Sao Paulo ****']));
Writeln(Impressora);//salta linha
// Writeln(Impressora, Chr(27)+ Chr('W') + Chr('1') + '* TESOURARIA *'); // Ativa expandido
// Writeln(Impressora,'CNPJ: 61.916.763/0001-71');
// Writeln(Impressora, Chr(27) + Chr('W') + Chr('0')); // Desativa expandido
Write(Impressora, Format('%26s',[' * TESOURARIA *']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%30s',[' CNPJ: 61.916.763/0001-71']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['----------------------------------------']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%28s',['--* RECIBO N. ' + IntToStr(DM.SP_NOVO_ID_RECE.ParamByName('ID').AsInteger) + ' *--']));
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['GRUPO : ' + ComboGrupos.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['DATA/HORA : ' + DateToStr(Date) + ' - ' + TimeToStr(Time)]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['OPERADOR : ' + Form_Usuario.Edit1.Text + ' - N. ' + IntToStr(DM.CDS_AcessoID.Value) ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['FORMA : ' + ComboFormaPagto.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['TAXA : ' + JvDBLookupList1.DisplayValue + ' - Cod. ' + JvDBLookupList1.KeyValue]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['VALOR R$ : ' + FormatFloat('###,##0.00', JvCalcEditValor.Value)]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['----------------------------------------']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['REF.: : ' + Edit_Referencia.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['OBS.: : ' + Edt_Obs.Text ]));
//Rotina para Saltar Linha
For i := 1 to StrToInt(SaltaLinha) do
begin
Writeln(Impressora);//salta linha
end;
//Fecha Saida para Impressão
System.Close(Impressora);
end;
Muito obrigado
Meu cenário é assim, tenho um sistema onde imprimo um ticket com a descrição, valor, taxa e etc, porem, terei uma taxa que terá que imprimir 10 tickets e o último como cortezia, exemplo, pacote de fisioterapia é R$ 250,00, terei que imprimir 10 de R$ 25,00 e mais 1 com valor R$ 0,00 ou CORTEZIA, já quebrei a cabeça tentando fazer isso, meu código de impressão é esse:
procedure TForm_Recebimentos.EmiteCupom;
var
SaltaLinha : string;
i : integer;
Nro_Tickets : integer;
begin
//Impressão de cupom em Impressora de 40 Colunas
//Le o arquivo INI
ArqIni := TIniFile.Create(ExtractFilePath(Paramstr(0))+FileName);
PortaRecibo := ArqIni.ReadString('WCaixa', 'PortaRecibo', '');
//Le Nmero de Linhas a Saltar
SaltaLinha := ArqIni.ReadString('WCaixa', 'NumeroLinhasASaltar', '');
//Pega Porta Com1, LPT1 conforme Conexao.ini
AssignFile(Impressora, PortaRecibo);
//AssignFile(Impressora, 'LPT1:');
//Abre a Porta da Impressora
Rewrite(Impressora);
Write(Impressora);
Writeln(Impressora, Format('%40s',['x']));
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
// Writeln(Impressora, #27#15 + 'CMSP..:');
//Imprime a string Diretoria Financeira alinhado a esquerda dentro de 40 caracteres
Write(Impressora, Format('%38s',[' **** Circulo Militar de Sao Paulo ****']));
Writeln(Impressora);//salta linha
// Writeln(Impressora, Chr(27)+ Chr('W') + Chr('1') + '* TESOURARIA *'); // Ativa expandido
// Writeln(Impressora,'CNPJ: 61.916.763/0001-71');
// Writeln(Impressora, Chr(27) + Chr('W') + Chr('0')); // Desativa expandido
Write(Impressora, Format('%26s',[' * TESOURARIA *']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%30s',[' CNPJ: 61.916.763/0001-71']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['----------------------------------------']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%28s',['--* RECIBO N. ' + IntToStr(DM.SP_NOVO_ID_RECE.ParamByName('ID').AsInteger) + ' *--']));
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['GRUPO : ' + ComboGrupos.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['DATA/HORA : ' + DateToStr(Date) + ' - ' + TimeToStr(Time)]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['OPERADOR : ' + Form_Usuario.Edit1.Text + ' - N. ' + IntToStr(DM.CDS_AcessoID.Value) ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['FORMA : ' + ComboFormaPagto.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['TAXA : ' + JvDBLookupList1.DisplayValue + ' - Cod. ' + JvDBLookupList1.KeyValue]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['VALOR R$ : ' + FormatFloat('###,##0.00', JvCalcEditValor.Value)]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['----------------------------------------']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['REF.: : ' + Edit_Referencia.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['OBS.: : ' + Edt_Obs.Text ]));
//Rotina para Saltar Linha
For i := 1 to StrToInt(SaltaLinha) do
begin
Writeln(Impressora);//salta linha
end;
//Fecha Saida para Impressão
System.Close(Impressora);
end;
Muito obrigado
Paulo Freire
Curtidas 0
Respostas
Leonardo Xavier
18/01/2011
Cetto pelo que pude perceber você ja fez a rotina para imprimir os tickets, certo? bom para o de cortezia é bem facil seguindo sua linha de raciocínio. Tente assim:
//Rotina para Saltar Linha For i := 1 to StrToInt(SaltaLinha) do begin if i=strtoint(saltalinha) then begin //colocar aqui seu cupom de cortesia end else begin Writeln(Impressora);//salta linha end; end;
GOSTEI 0
Emerson Nascimento
18/01/2011
faça uma pequena modificação na sua rotina de impressão de cupom, de modo a informar o valor, o número de parcelas e se há parcelas 'cortesia'.
você pode fazer algo assim:
procedure TForm_Recebimentos.EmiteCupom(ValorTotal: float; Parcelas: integer; cortesia: boolean);
var
SaltaLinha : string;
i, nparc : integer;
Nro_Tickets : integer;
ValorParcela, ValorUltima: double;
begin
ValorParcela := ValorTotal / Parcelas;
ValorUltima := ValorTotal - (ValorParcela * (Parcelas - 1));
//Impressão de cupom em Impressora de 40 Colunas
//Le o arquivo INI
ArqIni := TIniFile.Create(ExtractFilePath(Paramstr(0))+FileName);
PortaRecibo := ArqIni.ReadString('WCaixa', 'PortaRecibo', '');
//Le Nmero de Linhas a Saltar
SaltaLinha := ArqIni.ReadString('WCaixa', 'NumeroLinhasASaltar', '');
//Pega Porta Com1, LPT1 conforme Conexao.ini
AssignFile(Impressora, PortaRecibo);
//Abre a Porta da Impressora
Rewrite(Impressora);
for nparc := 1 to Parcelas do
begin
// se for a última parcela
if nparc = parcelas
begin
if Cortesia // e se a ultima for cortesia
ValorParcela := 0
else
ValorParcela := ValorUltima;
end;
Write(Impressora);
Writeln(Impressora, Format('%40s',['x']));
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
//Imprime a string Diretoria Financeira alinhado a esquerda dentro de 40 caracteres
Write(Impressora, Format('%38s',[' **** Circulo Militar de Sao Paulo ****']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%26s',[' * TESOURARIA *']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%30s',[' CNPJ: 61.916.763/0001-71']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['----------------------------------------']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%28s',['--* RECIBO N. ' + IntToStr(DM.SP_NOVO_ID_RECE.ParamByName('ID').AsInteger) + ' *--']));
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['GRUPO : ' + ComboGrupos.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['DATA/HORA : ' + DateToStr(Date) + ' - ' + TimeToStr(Time)]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['OPERADOR : ' + Form_Usuario.Edit1.Text + ' - N. ' + IntToStr(DM.CDS_AcessoID.Value) ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['FORMA : ' + ComboFormaPagto.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['TAXA : ' + JvDBLookupList1.DisplayValue + ' - Cod. ' + JvDBLookupList1.KeyValue]));
Writeln(Impressora);//salta linha
if ValorParcela = 0
Write(Impressora, Format('%-40s',['VALOR R$ : CORTESIA']));
else
Write(Impressora, Format('%-40s',['VALOR R$ : ' + FormatFloat('###,##0.00', ValorParcela)]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['----------------------------------------']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['REF.: : ' + Edit_Referencia.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['OBS.: : ' + Edt_Obs.Text ]));
//Rotina para Saltar Linha
for i := 1 to StrToInt(SaltaLinha) do
Writeln(Impressora);//salta linha
end;
//Fecha Saida para Impressão
System.Close(Impressora);
end;
para imprimir apenas 1 "parcela":
EmiteCupom(250, 1, False);
para imprimir 5 "parcelas":
EmiteCupom(250, 5, False);
para imprimir 10 "parcelas", com o último cortesia:
EmiteCupom(250, 10, True);
veja se é disso que você precisa.
você pode fazer algo assim:
procedure TForm_Recebimentos.EmiteCupom(ValorTotal: float; Parcelas: integer; cortesia: boolean);
var
SaltaLinha : string;
i, nparc : integer;
Nro_Tickets : integer;
ValorParcela, ValorUltima: double;
begin
ValorParcela := ValorTotal / Parcelas;
ValorUltima := ValorTotal - (ValorParcela * (Parcelas - 1));
//Impressão de cupom em Impressora de 40 Colunas
//Le o arquivo INI
ArqIni := TIniFile.Create(ExtractFilePath(Paramstr(0))+FileName);
PortaRecibo := ArqIni.ReadString('WCaixa', 'PortaRecibo', '');
//Le Nmero de Linhas a Saltar
SaltaLinha := ArqIni.ReadString('WCaixa', 'NumeroLinhasASaltar', '');
//Pega Porta Com1, LPT1 conforme Conexao.ini
AssignFile(Impressora, PortaRecibo);
//Abre a Porta da Impressora
Rewrite(Impressora);
for nparc := 1 to Parcelas do
begin
// se for a última parcela
if nparc = parcelas
begin
if Cortesia // e se a ultima for cortesia
ValorParcela := 0
else
ValorParcela := ValorUltima;
end;
Write(Impressora);
Writeln(Impressora, Format('%40s',['x']));
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
//Imprime a string Diretoria Financeira alinhado a esquerda dentro de 40 caracteres
Write(Impressora, Format('%38s',[' **** Circulo Militar de Sao Paulo ****']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%26s',[' * TESOURARIA *']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%30s',[' CNPJ: 61.916.763/0001-71']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['----------------------------------------']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%28s',['--* RECIBO N. ' + IntToStr(DM.SP_NOVO_ID_RECE.ParamByName('ID').AsInteger) + ' *--']));
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['GRUPO : ' + ComboGrupos.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['DATA/HORA : ' + DateToStr(Date) + ' - ' + TimeToStr(Time)]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['OPERADOR : ' + Form_Usuario.Edit1.Text + ' - N. ' + IntToStr(DM.CDS_AcessoID.Value) ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['FORMA : ' + ComboFormaPagto.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['TAXA : ' + JvDBLookupList1.DisplayValue + ' - Cod. ' + JvDBLookupList1.KeyValue]));
Writeln(Impressora);//salta linha
if ValorParcela = 0
Write(Impressora, Format('%-40s',['VALOR R$ : CORTESIA']));
else
Write(Impressora, Format('%-40s',['VALOR R$ : ' + FormatFloat('###,##0.00', ValorParcela)]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['----------------------------------------']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['REF.: : ' + Edit_Referencia.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['OBS.: : ' + Edt_Obs.Text ]));
//Rotina para Saltar Linha
for i := 1 to StrToInt(SaltaLinha) do
Writeln(Impressora);//salta linha
end;
//Fecha Saida para Impressão
System.Close(Impressora);
end;
para imprimir apenas 1 "parcela":
EmiteCupom(250, 1, False);
para imprimir 5 "parcelas":
EmiteCupom(250, 5, False);
para imprimir 10 "parcelas", com o último cortesia:
EmiteCupom(250, 10, True);
veja se é disso que você precisa.
GOSTEI 0
Paulo Freire
18/01/2011
Perfeito Emerson, porem acima de 4 parcelas a impressora trava, começa a bagundar os csarecteres a partir da 3 parcela e trava na 4 parcela, vc sabe porque, Obrigado.
GOSTEI 0
Emerson Nascimento
18/01/2011
talvez você precise "abrir" e "fechar" a impressora a cada cupom impresso.
tente isso:
procedure TForm_Recebimentos.EmiteCupom(ValorTotal: float; Parcelas: integer; cortesia: boolean);
var
SaltaLinha : string;
i, nparc : integer;
Nro_Tickets : integer;
ValorParcela, ValorUltima: double;
begin
ValorParcela := ValorTotal / Parcelas;
ValorUltima := ValorTotal - (ValorParcela * (Parcelas - 1));
//Impressão de cupom em Impressora de 40 Colunas
//Le o arquivo INI
ArqIni := TIniFile.Create(ExtractFilePath(Paramstr(0))+FileName);
PortaRecibo := ArqIni.ReadString('WCaixa', 'PortaRecibo', '');
//Le Nmero de Linhas a Saltar
SaltaLinha := ArqIni.ReadString('WCaixa', 'NumeroLinhasASaltar', '');
for nparc := 1 to Parcelas do
begin
// se for a última parcela
if nparc = parcelas
begin
if Cortesia // e se a ultima for cortesia
ValorParcela := 0
else
ValorParcela := ValorUltima;
end;
//Pega Porta Com1, LPT1 conforme Conexao.ini
AssignFile(Impressora, PortaRecibo);
//Abre a Porta da Impressora
Rewrite(Impressora);
Write(Impressora);
Writeln(Impressora, Format('%40s',['x']));
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
//Imprime a string Diretoria Financeira alinhado a esquerda dentro de 40 caracteres
Write(Impressora, Format('%38s',[' **** Circulo Militar de Sao Paulo ****']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%26s',[' * TESOURARIA *']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%30s',[' CNPJ: 61.916.763/0001-71']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['----------------------------------------']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%28s',['--* RECIBO N. ' + IntToStr(DM.SP_NOVO_ID_RECE.ParamByName('ID').AsInteger) + ' *--']));
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['GRUPO : ' + ComboGrupos.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['DATA/HORA : ' + DateToStr(Date) + ' - ' + TimeToStr(Time)]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['OPERADOR : ' + Form_Usuario.Edit1.Text + ' - N. ' + IntToStr(DM.CDS_AcessoID.Value) ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['FORMA : ' + ComboFormaPagto.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['TAXA : ' + JvDBLookupList1.DisplayValue + ' - Cod. ' + JvDBLookupList1.KeyValue]));
Writeln(Impressora);//salta linha
if ValorParcela = 0
Write(Impressora, Format('%-40s',['VALOR R$ : CORTESIA']));
else
Write(Impressora, Format('%-40s',['VALOR R$ : ' + FormatFloat('###,##0.00', ValorParcela)]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['----------------------------------------']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['REF.: : ' + Edit_Referencia.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['OBS.: : ' + Edt_Obs.Text ]));
//Rotina para Saltar Linha
for i := 1 to StrToInt(SaltaLinha) do
Writeln(Impressora);//salta linha
//Fecha Saida para Impressão
System.Close(Impressora);
end;
end;
tente isso:
procedure TForm_Recebimentos.EmiteCupom(ValorTotal: float; Parcelas: integer; cortesia: boolean);
var
SaltaLinha : string;
i, nparc : integer;
Nro_Tickets : integer;
ValorParcela, ValorUltima: double;
begin
ValorParcela := ValorTotal / Parcelas;
ValorUltima := ValorTotal - (ValorParcela * (Parcelas - 1));
//Impressão de cupom em Impressora de 40 Colunas
//Le o arquivo INI
ArqIni := TIniFile.Create(ExtractFilePath(Paramstr(0))+FileName);
PortaRecibo := ArqIni.ReadString('WCaixa', 'PortaRecibo', '');
//Le Nmero de Linhas a Saltar
SaltaLinha := ArqIni.ReadString('WCaixa', 'NumeroLinhasASaltar', '');
for nparc := 1 to Parcelas do
begin
// se for a última parcela
if nparc = parcelas
begin
if Cortesia // e se a ultima for cortesia
ValorParcela := 0
else
ValorParcela := ValorUltima;
end;
//Pega Porta Com1, LPT1 conforme Conexao.ini
AssignFile(Impressora, PortaRecibo);
//Abre a Porta da Impressora
Rewrite(Impressora);
Write(Impressora);
Writeln(Impressora, Format('%40s',['x']));
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
//Imprime a string Diretoria Financeira alinhado a esquerda dentro de 40 caracteres
Write(Impressora, Format('%38s',[' **** Circulo Militar de Sao Paulo ****']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%26s',[' * TESOURARIA *']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%30s',[' CNPJ: 61.916.763/0001-71']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['----------------------------------------']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%28s',['--* RECIBO N. ' + IntToStr(DM.SP_NOVO_ID_RECE.ParamByName('ID').AsInteger) + ' *--']));
Writeln(Impressora);//salta linha
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['GRUPO : ' + ComboGrupos.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['DATA/HORA : ' + DateToStr(Date) + ' - ' + TimeToStr(Time)]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['OPERADOR : ' + Form_Usuario.Edit1.Text + ' - N. ' + IntToStr(DM.CDS_AcessoID.Value) ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['FORMA : ' + ComboFormaPagto.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['TAXA : ' + JvDBLookupList1.DisplayValue + ' - Cod. ' + JvDBLookupList1.KeyValue]));
Writeln(Impressora);//salta linha
if ValorParcela = 0
Write(Impressora, Format('%-40s',['VALOR R$ : CORTESIA']));
else
Write(Impressora, Format('%-40s',['VALOR R$ : ' + FormatFloat('###,##0.00', ValorParcela)]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['----------------------------------------']));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['REF.: : ' + Edit_Referencia.Text ]));
Writeln(Impressora);//salta linha
Write(Impressora, Format('%-40s',['OBS.: : ' + Edt_Obs.Text ]));
//Rotina para Saltar Linha
for i := 1 to StrToInt(SaltaLinha) do
Writeln(Impressora);//salta linha
//Fecha Saida para Impressão
System.Close(Impressora);
end;
end;
GOSTEI 0
Paulo Freire
18/01/2011
Valeu a todos e a Emerson, deu certinho, muito obrigado
GOSTEI 0