Caso não consiga ver as imagens deste e-mail, clique aqui.

Pessoal, quem já não passou pela experiência de perder as configurações da porta serial no pc? Ou então receber uma ligação de cliente dizendo que o sistema não comunica mais, de uma hora para outra? Outra situação ainda, é quando o cliente diz que o conversor ou a multiserial mudou as configurações?

Todos já tivemos situações assim. Os suportes de comunicação ainda são os campeões em nosso 0800, por isso vamos desvendar este “mistério” e deixar sua impressora comunicando.

Existem 3 meios de testar a comunicação com a impressora fiscal. Se sua necessidade é apenas testar a comunicação, escolha uma das etapas e prossiga no passo a passo. Veja:

  • Teste manual
  • Teste com a DarumaFramework.dll manualmente
  • Teste com a DarumaFramework.dll automático

Teste Manual

Nesta etapa usaremos apenas as ferramentas do Windows, como gerenciador de dispositivos e prompt de comandos.

  • Conecte a impressora fiscal no pc, pode ser serial ou USB. Caso tenha duvidas de como instalar o driver USB acesse o link abaixo:
    Instalando_impressoras_fiscais_USB.pdf
  • Abra o gerenciador de dispositivos do Windows. ( Botão Iniciar -> Painel de Controle -> Sistema -> Gerenciador de Dispositivos);
  • Vá em Portas COM&LPT e veja as portas instaladas; Veja o exemplo na imagem abaixo:

  • Identificamos as portas existentes, COM1 e COM2. Guarde esta informação do lado esquerdo do cérebro, pois já vamos usá-la;
  • Desligue a impressora e ligue com o botão avanço pressionado; Observação: Caso esteja utilizando uma FS600 desligue e ligue com o botão linha e avanço pressionado.
  • Um menu será impresso, veja um exemplo na imagem abaixo:

Vantagem Daruma: Este recurso de visualizar e alterar a velocidade pelo painel da impressora só a Daruma tem!
Foi um feedback dado pela comunidade de desenvolvedores no ano de 2006. Isso começou com o modelo FS600.

  • No trecho destacado mostra a velocidade de 9.600, vamos usar esta velocidade para configurar nossa impressora;
  • Após a verificação desligue a impressora, aguarde 3 segundos e ligue-a;
    Observação:
    Caso você use o cabo USB da impressora, a velocidade será sempre 115.200 e não há como alterar.
  • Agora vamos descobrir em qual porta está nossa impressora, na COM1 ou na COM2. Lembra delas?
  • Abra o prompt de comandos ou DOS, como alguns dizem. Para abrir siga os passos, Botão Iniciar -> Executar -> digite “cmd”(sem aspas) e pressione enter ou Ok;
  • Após abrir o prompt, digite o comando: mode com1:9600,n,8,1(Enter). Este comando irá alterar a velocidade da porta serial, neste caso COM1;
  • Depois de alterar a velocidade da porta, digite o comando: dir >com1(Enter). Se estiver conectada na COM1, a impressora deverá avançar o papel No meu caso avançou. Veja abaixo como ficou o prompt de comandos;

  • Feito! Agora sabemos a porta e a velocidade da impressora. Caso não tenha funcionado na primeira porta, fique tranquilo, basta fazer os passos acima( que usam o prompt de comandos) usando a outra porta existente em seu computador;

Teste com a DarumaFramework.dll manualmente

Agora iremos alterar o xml de acordo com as configurações encontradas na porta e velocidade da impressora., como descrito no passo acima. Caso sua aplicação use DarumaFramework.dll, você pode fazer os passos abaixo usando o SEU DarumaFramework.xml. Vou mostrar como fazer essas alterações no xml por linha de código também, usando diferentes linguagens de programação.

  • Baixe o exemplo em Delphi, disponível neste link: DarumaFramework_Delphi7exe.zip
  • Com o exemplo baixado, execute-o e em seguida feche-o. Isso mesmo, apenas execute-o e depois feche. O motivo disso é a criação do arquivo de configurações da DarumaFramework.dll chamado DarumaFramework.xml ,vulgo DFW.xml;
  • O arquivo DarumaFramework.xml será criado;
  • Abra o DFW.xml com algum editor e procure a chave <ECF>;
  • Após, procure a chave <PortaSerial>;
  • Altere o conteúdo desta chave para a porta encontrada nos passos acima, ficando assim desta maneira: <PortaSerial>COM1</PortaSerial>;
  • Procure a chave <Velocidade>;
  • Altere o conteúdo da chave para a velocidade mostrada no menu da impressora, de acordo com os procedimentos anteriores(procedimentos feitos com o Menu da ECF). No meu caso ficou desta maneira: <Velocidade>9600</Velocidade>;
  • Depois das alterações, salve e feche o arquivo DFW.xml;
  • Agora execute o executável em Delphi que baixamos a alguns passos anteriores;
  • Clique em Impressora Fiscal;
  • Na tela com vários menus, siga os passos: Menu Relatórios Fiscais -> Leitura X -> Método iLeituraX_ECF_Daruma. Veja a imagem de exemplo abaixo:

  • Se você recebeu uma mensagem dizendo “Operação Realizada com sucesso”, sua Leitura X foi impressa. Caso contrário, siga os passos anteriores, pois faltou algum detalhe. Veja abaixo, a mensagem dada quando a Leitura X é impressa:

Configurando o xml via programação:

  • Para alterar a chave porta e velocidade usando métodos da DFW.dll você deve fazer assim:

Delphi

//Declaração

function regAlterarValor_Daruma(pszPathChave:string, pszValor:string):Integer; StdCall; External 'DarumaFramework.dll';

//Chamada de Métodos

iRetorno := regAlterarValor_Daruma('ECF\PortaSerial','COM1');
iRetorno := regAlterarValor_Daruma('ECF\Velocidade','9600');

C#

//Declaração

[DllImport("DarumaFrameWork.dll")]
public static extern int regAlterarValor_Daruma(string pszChave, string pszValor);

//Chamada de Métodos

iRetorno = regAlterarValor_Daruma(@"ECF\PortaSerial", “COM1”);
iRetorno = regAlterarValor_Daruma(@"ECF\Velocidade", “9600”);

Visual Basic 6

//Declaração

Public Declare Function regAlterarValor_Daruma Lib "DarumaFrameWork.dll" (ByVal pszChave As String, ByVal pszValor As String) As Integer

//Chamada de Métodos

iRetorno = regAlterarValor_Daruma("ECF\PortaSerial", “COM1”)
iRetorno = regAlterarValor_Daruma("ECF\Velocidade ", “9600”)

Teste com a DarumaFramework.dll automático

Por fim, vamos usar o executável em Delphi para testar a comunicação através de comandos apenas. Vou aproveitar para mostrar por linha de código como fazer essas configurações usando diferentes linguagens de programação.

  • Baixe o exemplo em Delphi, disponível neste link: DarumaFramework_Delphi7exe.zip
  • Extraia e execute-o;
  • Clique no botão Impressoras Fiscais, provavelmente você receberá a mensagem de Impressora Desligada. Fique tranquilo!
  • Se aparecer a mensagem clique em OK e prossiga, se não aparecer significa que sua impressora já está comunicando;
  • Clique no Menu Retornos e Status do ECF;
  • Na janela que abriu, siga os passos: Clique em Métodos Especiais -> Método eBuscarPortaVelocidade_ECF_Daruma;
  • Aguarde o retorno do método, se mostrar impressora Desligada revise os passos do Teste Manual e certifique-se de que está funcionando por ele. Caso tenha mostrado “Operação Realizada com Sucesso”, basta prosseguir.
  • Na tela com vários menus, siga os passos: Menu Relatórios Fiscais -> Leitura X -> Método iLeituraX_ECF_Daruma. Veja a imagem de exemplo abaixo:

  • Feito! Sua impressora está comunicando e a Leitura X foi impressa. Caso não tenha funcionado, revise os passos do Teste Manual.

Equalizando as velocidades via programação:

  • Abaixo estão os exemplos de como programar usando este método “mágico” da DarumaFramework;

Delphi

//Declaração

function eBuscarPorta_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll';

//Chamada de Métodos

Int_Retorno := eBuscarPortaVelocidade_ECF_Daruma();

C#

//Declaração

[DllImport("DarumaFrameWork.dll")]
public static extern int eBuscarPortaVelocidade_ECF_Daruma();;

//Chamada de Métodos

iRetorno = eBuscarPortaVelocidade_ECF_Daruma();

Visual Basic 6

//Declaração

Public Declare Function eBuscarPortaVelocidade_MODEM_DarumaFramework Lib "DarumaFrameWork.dll" () As Integer

//Chamada de Métodos

iRetorno = eBuscarPortaVelocidade_ECF_Daruma()

Dicas

Caso você tenha feito os procedimentos acima e mesmo assim não teve sucesso na comunicação, siga as dicas abaixo:

  • Não usar porta serial na porta fisco;
  • Não deixar o número da porta superior a COM5. Sendo assim, use COM1, COM2, COM3, COM4 ou COM5;
  • Não conectar o cabo do conversor direto na impressora fiscal Daruma;
  • Verificar se o cabo serial é da Daruma;
  • Dar preferência para as entradas USB’s da parte de trás do pc, pois são conectadas diretamente na placa e não são extensão.
  • Assista o vídeo no Youtube
Daruma Desenvolvedores
Se tiver alguma dúvida e/ou dificuldade, entre em contato com a nossa equipe de suporte ao desenvolvedor.
E-mails:
daruma.desenvolvedores@daruma.com.br
ddc.suporte@daruma.com.br

suporte.ddc@daruma.com.br
desenvolvedores.suporte@daruma.com.br
suporte.desenvolvedores@daruma.com.br
desenvolvedores.daruma@daruma.com.br
suporte@daruma.com.br
suporte.alexandre@daruma.com.br
claudenir@daruma.com.br
Skypes:
daruma.desenvolvedores
ddc_suporte_daruma
suporte_ddc_daruma
desenvolvedores_suporte_daruma
suporte_desenvolvedores_daruma
desenvolvedores_daruma
suporte_daruma
suporte_alexandre_daruma
claudenir_andrade
Twitter facebook Linkedln Youtube Google+