jfaguiar Posted November 4, 2013 Report Share Posted November 4, 2013 Olá amigos. Estou com um seríssimo problema em dois estabelecimentos com a impressora MP2100 TH FI. Implantei o programa, utilizando a Bemafi32 com os recursos USB, funcionou 3 dias e de repente, do nada, sem motivo, parou!!!!! Tudo acontece conforme segue: Você digita o primeiro item, digita o cpf ou passa com cpf em branco e a função BmAbreCup() retorna erro -27. Quero deixar claro que uso os mesmo comandos só que utilizando a porta serial e nunca vi nada parecido. Estou envergonhado e desesperado por causa dessa bendita Bematech, prefiro 1000 vezes a Daruma. Para maior clareza vejam os comando que utilizo na quela rotina do Arraes que acompanha o livro do Five Win. cCNPJ_CPF:= PADR(cCNPJ_CPF,29) IF !GrvCmdFis(08,{cCNPJ_CPF},0,NIL,NIL,.T.) // Aqui abro o cupom e registro o primeiro item Desde já agradeço a colaborações. Abraço Quote Link to comment Share on other sites More sharing options...
kapiaba Posted November 4, 2013 Report Share Posted November 4, 2013 Voce faz assim? MsgRun( "Abrindo o Cupom Fiscal", "Aguarde...", ; {|| Int_Retorno:= BmAbreCup( IIF(LEN(ALLTRIM(xcgccli))>1, ; LEFT(xcgccli+SPACE(18),18),SPACE(18)))}) IF Int_Retorno = 0 ? [mensagem de erro] RETURN NIL ENDIF //Abre cupom fiscal DLL32 FUNCTION BmAbreCup ( Cgc AS LPSTR ) AS LONG PASCAL ; FROM "Bematech_FI_AbreCupom" LIB XDLL_BEMATECH Quote Link to comment Share on other sites More sharing options...
sambomb Posted November 4, 2013 Report Share Posted November 4, 2013 -27 é um tipo de erro padrão... Pode ser um desses motivos Fim de papel Pouco papel Erro no relógio Impressora em erro Comando não iniciado com ESC Comando inexistente Cupom aberto Número de parâmetro(s) inválido(s) Tipo de parâmetro de comando inválido Memória fiscal lotada Erro na memória RAM Alíquota não programada Capacidade de alíquotas lotada Cancelamento não permitido CNPJ/IE do proprietário não programado Comando não executado Quote Link to comment Share on other sites More sharing options...
kapiaba Posted November 4, 2013 Report Share Posted November 4, 2013 http://partners.bematech.com.br/suporte/bemafi32/retorno.htm Quote Link to comment Share on other sites More sharing options...
jfaguiar Posted November 4, 2013 Author Report Share Posted November 4, 2013 Obrigado pessoal. Vou ver. Quote Link to comment Share on other sites More sharing options...
jfaguiar Posted November 4, 2013 Author Report Share Posted November 4, 2013 Olá Kapiaba. Como você tá formatando a variável do cpf esse exemplo, assim 225.660.653-00 ou assim 22566065300 ? Obrigado Quote Link to comment Share on other sites More sharing options...
kapiaba Posted November 4, 2013 Report Share Posted November 4, 2013 Não uso mais a muito tempo, mas pelos exemplos que tenho aqui, deve seguir o mesmo padrão do CNPJ, então seria assim: 22566065300 Use um programinha parqa retirar os .(pontos) e - (traços) do seu arquivo de clientes. Quote Link to comment Share on other sites More sharing options...
Geo_sts Posted November 12, 2013 Report Share Posted November 12, 2013 Bom dia amigos o erro se refere a Status da impressora diferente de 6,0,0 (ACK, ST1 e ST2) tente usar o programa simulador da bematech pa ver se vc tem o mesmo problema, pois o comando que o kapi passou ta certinho. e não poderia voltar esse erro, vc faz esse monitoramento? #define ST1_BIT_0 "Número de parametros de CMD inválido" #define ST1_BIT_1 "Cupom aberto" #define ST1_BIT_2 "Comando inexistente" #define ST1_BIT_3 "Primeiro dado de CMD não foi ESC (1Bh)" #define ST1_BIT_4 "Impressora em erro" #define ST1_BIT_5 "Erro no relógio" #define ST1_BIT_6 "Pouco papel" #define ST1_BIT_7 "Fim de papel" #define ST2_BIT_0 "Comando não executado" #define ST2_BIT_1 "CNPJ/IE do proprietário não programados" #define ST2_BIT_2 "Cancelamento não permitido" #define ST2_BIT_3 "Capacidade de alíquotas programáveis lotada" #define ST2_BIT_4 "Alíquota não programada" #define ST2_BIT_5 "Erro na Memória RAM CMOS não volátil" #define ST2_BIT_6 "Memória fiscal lotada" #define ST2_BIT_7 "Tipo de parametro de CMD inválido" bnRet := BmVerpapel(@ack,@st1,@st2) Bit_ack:=ACK Bit_st1:=ST1 Bit_st2:=ST2 att Quote Link to comment Share on other sites More sharing options...
jfaguiar Posted November 14, 2013 Author Report Share Posted November 14, 2013 Olá Geo_sts. Esou usando o seguinte código: nRETECF := 1 MsgRun( "Abrindo o Cupom Fiscal", "Aguarde...", ; {|| nRETECF := BmAbreCup( IIF(LEN(ALLTRIM(xcgccli))>1, ; LEFT(xcgccli+SPACE(18),18),SPACE(18)))}) IF nRETECF # 1 // [mensagem de erro] MsgAlert("Erro número "+STR(nRETECF,3)+" ao abrir o cupom."+CRLF+; "Favor informar ao desenvolvedor do sistema.") lUNLOCK := .T. exit ENDIF Após definir essa lista de erro no início do prg, como faço para ver qual deles aconteceu após o retorno contido na variável nRETECF? Obrigado. Abraço Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.