|
ActiveDelphi .: O site do programador Delphi! :.
|
Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
Illuminattus Novato
Registrado: Sexta-Feira, 25 de Agosto de 2006 Mensagens: 4
|
Enviada: Dom Fev 03, 2008 2:31 am Assunto: Dll Bematech |
|
|
Boa noite a todos.
Estou começando a tentar desenvolver algo que utilize impressora fiscal, no caso bematech.
Agora e meu ver a dll da bematech é muito confusa,
todas as funções retornam um valor inteiro, já visualizei os fontes de exemplo da bematech, mas tento fazer igual no meu programa gera erros.
alguém poderia dar um exemplo básico de como efetuar uma venda
abrir cupom
vender item
e fechar cupom
eu estou usando o emulador da bemtech.
Um exemplo que eu acho confuso a funçõe sque retorna o número de série da impressora, ela pede como parâmetro o número de série, mas se eu to executando a função para saber qual é o número de série da impressora, como que eu vou passar ele,como que eu vou atribuir o número de série para sair num edit por exemplo se a função retorna um inteiro.
alguém pode dar um help.
valeu galera t+; |
|
Voltar ao Topo |
|
|
anfm Novato
Registrado: Quinta-Feira, 15 de Fevereiro de 2007 Mensagens: 39 Localização: Tatuí-SP
|
Enviada: Seg Fev 04, 2008 10:59 am Assunto: |
|
|
Exemplo utilizando a DLL da Bematech:
Código: |
cCPF := '11.111.111-11';
iRetorno := Bematech_FI_AbreCupom( pchar( cCPF ) );
cCodigo := '123';
cDescricao := 'Caneta';
cAliquota := '1200';
cTipoQtde := 'I';
cQtde := '10';
iCasasDecimais := 2;
cValor := '0,25';
cTipoDesconto := '%';
cValorDesc := '0000';
iRetorno := Bematech_FI_VendeItem( pchar( cCodigo ),
pchar( cDescricao ),
pchar( cAliquota ),
pchar( cTipoQtde ),
pchar( cQtde ),
iCasasDecimais,
pchar( cValor ),
pchar( cTipoDesconto ),
pchar( cValorDesc ) );
cAcreDesc := 'A';
cTipoAcreDesc := '%';
cValorAcreDesc := '1000';
iRetorno := Bematech_FI_IniciaFechamentoCupom( pchar( cAcreDesc ), pchar( cTipoAcreDesc ), pchar( cValorAcreDesc ) );
cFormaPgto := 'DINHEIRO';
cValorPago := '100,00';
iRetorno := Bematech_FI_EfetuaFormaPagamento( pchar( cFormaPgto ), pchar( cValorPago ) );
cMsgPromocional := 'Obrigado, volte sempre !!!';
iRetorno := Bematech_FI_TerminaFechamentoCupom( pchar( cMsgPromocional ) );
|
Exemplo usando ACBr:
Código: |
ACBrECF1.AbreCupom( '000.000.001-91', 'Nome do Cliente', 'Endereco do Cliente' );
ACBrECF1.VendeItem( '00001', 'Descricao do Produto',
'II', 1,
1,00,
0, 'UN', '%');
ACBrECF1.SubtotalizaCupom( 0 );
ACBrECF1.EfetuaPagamento( '01', 10,00 );
ACBrECF1.FechaCupom( 'Volte Sempre' );
|
|
|
Voltar ao Topo |
|
|
anfm Novato
Registrado: Quinta-Feira, 15 de Fevereiro de 2007 Mensagens: 39 Localização: Tatuí-SP
|
Enviada: Seg Fev 04, 2008 11:04 am Assunto: |
|
|
Sobre o número de série, não é necessário passar o número, e sim uma variável vazia que será utilizada para te retornar o valor que será buscado na impressora:
Código: |
for iConta := 1 to 15 do NumeroSerie := NumeroSerie + ' ';
iRetorno := Bematech_FI_NumeroSerie( NumeroSerie );
|
Neste exemplo acima, vc está passando uma variável chamada "NumeroSerie" com 15 espaços em branco. Ao chamar a função Bematech_FI_NumeroSerie( NumeroSerie ); sua variável "NumeroSerie" será preenchida com o valor do número de série do ECF.
Usando o ACBr, o comando seria o seguinte:
Código: |
SuaVariavel := ACBrECF1.NumSerie ;
|
|
|
Voltar ao Topo |
|
|
joemil Moderador
Registrado: Quinta-Feira, 25 de Março de 2004 Mensagens: 9099 Localização: Sinop-MT
|
Enviada: Sex Fev 08, 2008 6:04 pm Assunto: |
|
|
anfm,
so dando uma "enxugada" no seu codigo, pra nao precisar usar o for:
no lugar desta linha:
for iConta := 1 to 15 do NumeroSerie := NumeroSerie + ' ';
use
SetLength(NumeroSerie, 15); _________________ <b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
Enviar imagens: http://tinypic.com/ |
|
Voltar ao Topo |
|
|
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|