Dúvidas de ECF
11/03/2003
0
vendi: Copo, Jarra e Boneca.
sai as tres vendas mas tudo copo com o preco e qde do copo.
Eis aí o código:
procedure TfrmVendaEmi.FlatButton2Click(Sender: TObject);
var
iRetorno : integer;
Buffer : string;
cod, desc, icm, valor, total, desco, qtde: String;
begin
cod:=inttostr(Query1Cod.AsInteger);
desc:=Query1Descricao.asstring;
icm:=´01´;
qtde:=floattostr(Query1Qde.AsFloat);
valor:=floattostr(Query1Valor_Uni.asfloat);
desco:=floattostr(Query1Valor_Total.asfloat);
iRetorno := IniPortaStr(ComboBox1.Items[ComboBox1.ItemIndex]);
if iRetorno = 0 then
ShowMessage(´Erro ao inicializar porta.´);
Buffer := #27 + ´|00|´ + 27;// abre o cupom
query1.first;
while not(query1.eof) do begin
Buffer := 27 + ´|09|´+cod+´|´+desc+´|´+icm+´|´+qtde+´|´+valor+´|´+desco+´|´+ 27;//venda de itns
query1.next;
end;
iRetorno := FormataTX(Buffer);
if iRetorno = 1 then
ShowMessage(´Erro de comunucação física.´);
iRetorno := FechaPorta();
if iRetorno = 0 then
ShowMessage(´Erro ao tentar liberar porta.´);
{encerramento com forma de pagto(dinheiro)}
Buffer:= 27+´|32|D|00|´+27;
Buffer:= 27+´|71|01|´+27;
Buffer:= 27+´|72|´+´|´+FloatToStr(Query1Valor_Total.asfloat)+´|´+27;
Buffer:= 27+´|34|Obrigado Volte Sempre|´+27;
end;
como é uma reimpressão, abrir, vender e finalizar estão na mesma rotina.
O código da query é este:
procedure TfrmVendaEmi.RxSpinEdit1Exit(Sender: TObject);
begin
with query1 do begin
close;
sql.clear;
sql.add(´Select * from Item Where cod_venda =:cod_venda´);
parambyname(´cod_venda´).asinteger:=strtoint(RxSpinEdit1.Text);
open;
end;
end;
Como fazer para q impressora fiscal imprima em qquer porta, sem a necessidade de eu escolher? Atualmente uso radiobutton para selecionar a porta, gravo e trabalho. Se mudar a porta, abro a tabela de config e mudo. gostaria q fosse automática. Baixei um compo(FPrinter) mas é para D5. Não funcionou no D6.
Paulo
Posts
11/03/2003
Anonymous
11/03/2003
Anonymous
11/03/2003
Aroldo Zanela
Caro Paulo,
Não tive tempo ainda de analisar com cuidado a sua rotina e farei isso mais tarde caso não tenha encontrado a solução, pois tenho alguns clientes com vendas não concomitante autorizados pelo fisco local.
No entanto, gostaria de aproveitar para sugerir a utilização da nova DLL da Bematech, pois ela simplifica em muito o desenvolvimento e manutenção da aplicação, bem como, melhora a legibilidade do código.
Clique aqui para fazer login e interagir na Comunidade :)