Método
Transcrição
Método
DarumaFramework - Help 2.5 Conteúdo DarumaFramework ........................................................................................ 7 TA2000 ..................................................................................................... 7 Metodos para TA2000 ............................................................................... 7 Metodos para Registro .............................................................................13 Exemplos de uso com TAGS .....................................................................41 Descricoes das TAGS ...............................................................................67 Modem ................................................................................................... 141 Metodos para Transmissao ..................................................................... 141 Metodos para Registro ........................................................................... 149 Metodos para Funcionalidades Modem ..................................................... 173 Metodos para Recepcao ......................................................................... 193 Mini Impressora ....................................................................................... 224 Exemplos e Testes para Nao Fiscal .......................................................... 224 Metodos para Autenticacao Impressao ..................................................... 258 Metodos para Registro ........................................................................... 281 Metodos para Status.............................................................................. 317 Registro Impressoras DUAL .................................................................... 330 Funcoes Especiais .................................................................................... 342 Impressora Fiscal ..................................................................................... 363 Bilhete de Passagem ............................................................................. 363 Codigo de Barras .................................................................................. 367 Comprovante Credito Debito CCD ........................................................... 367 Comprovante Nao Fiscal ........................................................................ 387 Configuracoes da Impressora Fiscal ......................................................... 409 Declaracoes DFW .................................................................................. 420 Documentos Emitidos ECF ...................................................................... 428 Gaveta Autentica Outros ........................................................................ 437 PAF ECF ............................................................................................... 439 Registry ............................................................................................... 450 Relatorio Gerencial ................................................................................ 460 Relatorios Fiscais .................................................................................. 465 Tabelas Auxiliares ................................................................................. 475 Retorno e Status ................................................................................... 489 Cupom Fiscal ........................................................................................ 508 Micro Terminais PC ..................................................................................... 555 MT1000 .................................................................................................. 555 TA2000 .................................................................................................. 557 iii DarumaFramework 2.5 Produto: Mini-Impressora, Impressora Fiscal, Build:02.06.12 Bem-Vindo ao novo DarumaFramework Help, nele iremos encontrar incríveis modificações nos conceitos atuais de manuais eletrônicos para seu estudo no desenvolvimento de aplicações utilizando nossos produtos. Este manual é único para toda nossa linha de impressoras e terminais, não importando a linguagem de seu software, tampouco o Sistema Operacional. Porque somos hoje o único fabricante que oferece total suporte para plataformas DOS, Windows e Linux, com acesso local ou remoto, plataformas 32 ou 64 bits. Nossos drivers possuem total homogeneidade de informações, tornando o seu desenvolvimento simples, rápido e uniforme. Devemos ressaltar que os comandos listados nesse manual funcionarão corretamente quando seguidos os padrões a serem enviados pelo Desenvolvedor. O nosso driver (DLL) é único, ou seja, um Framework, que pode ser utilizado em qualquer um de nossos produtos Fiscais ou não-fiscais, sendo eles térmicos ou matriciais ou ainda Terminais Autônomos (TA2000). Independente do modelo de nossos produtos, meio de acesso ou interface de comunicação. Lembramos que depois de baixada a DLL diretamente do Portal Exclusivo de Desenvolvedores Daruma devemos alocá-la no mesmo caminho do Aplicativo que irá chamá-la, ou seja, mesma pasta. Não aconselhamos deixar a DLL nas pastas do Sistema Operacional, ou manter mais de uma DLL na mesma máquina. Gostaríamos de mencionar também que fomos a primeira empresa brasileira a receber o certificado de homologação de hardware para o Windows The 7, Windows Vista e Windows XP, focado na categoria Mini Impressoras Daruma, em nossa linha de produtos DR700 M e H. Clique no link para maiores informações. 1 DarumaFramework - Help 2.5 Motivos para adquirir nossos produtos para Desenvolvedor: 1. Porque com uma impressora Daruma ao seu lado você poderá corrigir bug's, testar e aprimorar métodos e performance de sua aplicação. 2. Quando necessário apresentar seu projeto em ambiente real ao cliente, demonstrando a eficiência conjunta de sua aplicação + impressora. O cliente busca soluções conjuntas. 3. No caso de homologacão de PAF-ECF e TEF, não é aceito Emulador. Como você simularia uma queda de energia ? Como o hardware (Impressora) se comporta nesse retorno ? Pois teremos ausência de condutividade elétrica com o computador, logo falta de comunicação total. 4. Porque com o ECF ao seu lado você terá TOTAL realidade do que acontece no PDV, podendo assim validar e prestar suporte ao seu cliente em menor tempo e com eficiência. 5. Em ambientes remotos temos infra-estruturas de conectividade (acesso remoto) particulares ao negócio de cada cliente. Com uma Impressora podemos ter a mesma realidade do cliente, mesmo em ambiente remoto e customizado. Isso não é possível com Emuladores. Outras Generalidades deste manual: 2 100% auto-explicativo, de fácil pesquisa; Auto-Suficiente; DarumaFramework Help Objetivo, dinâmico; Atendo a todos os produtos; Funções únicas para Windows e Linux; Em versões para Web, CHM e PDF exclusivo conceitos e novas funções! Manuais: Manual em CHM (Padrão Windows) Manual em PDF Exemplos: DarumaFramework em Delphi 7 DarumaFramework em VB6 DarumaFramework em Java DarumaFramework em C# DarumaFramework em VisualBasic.Net DarumaFramework em PHP Suporte ao Desenvolvedor: Ligação Gratuita: 0800 770 3320 Das 8:15 as 12:00 / 13:30 as 18:00 (SEG-SEX) E-mails: [email protected] [email protected] Toda Linha de Impressoras Fiscais e não Fiscais, Modem e MicroTerminal (TA2000) [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] 3 DarumaFramework - Help 2.5 [email protected] Toda Linha de TEF IP Dedicado Toda a Linha de Thin Clients (MT1000) Toda a Linha de Scanners, Kiosk e Modem [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] Skypes: suporte_daruma desenvolvedores_suporte Toda Linha de Impressoras Fiscais e não Fiscais, Modem e MicroTerminal (TA200) desenvolvedores_daruma daruma.desenvolvedores suporte_ddc_daruma ddc_suporte_daruma suporte_desenvolvedores_daruma daruma_suporte_alexandre claudenir_andrade Toda Linha de TEF IP Dedicado Toda a Linha de Thin Clients (MT1000) Toda a Linha de Scanners, Kiosk e Modem 4 desenvolvedores_tef suporte.daruma desenvolvedores_cpu_daruma desenvolvedores_kiosk daruma_suporte_alexandre claudenir_andrade Via Site: http://www.desenvolvedoresdaruma.com.br Canal de Vídeos: http://www.youtube.com/darumadeveloper DarumaFramework Help Comunidade de Automação Twitter: Agora estamos no Twitter com novidades o tempo todo. Venha conosco e acompanhe em primeira mão tudo o que temos de novidades para lhe oferecer. Para participar, acesse o endereço abaixo: http://twitter.com/darumadeveloper 5 DarumaFramework TA2000 Metodos para TA2000 iEnviarDadosFormatados_TA20 00_Daruma Método: iEnviarDadosFormatados_TA2000_Daruma Terminal: TA2000. Índice: 16 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite enviar dados formatados no display do TA2000. Dia-a-Dia: Este método além de possibilitar o envio de dados formatados ao display do TA2000, permite combinar as <TAGS> da forma desejável em uma única string. Ou seja, você pode limpar o Display, posicionar o cursor, alinhar o texto, e apresentar ele na tela de uma única vez, entre outras possibilidades de combinações de TAGs. Dica: Com o iEnviarDadosFormatados_TA2000_Daruma, você tem a possibilidade de enviar todas as combinações de funções em um único método. Veja tudo sobre este método na Aba Descrição das TAGs, ou pesquise neste help sobre TAG. Observações: 7 DarumaFramework - Help 2.5 1. Devemos lembrar que usuários Windows Vista, necessita rodar o aplicativo de desenvolvimento em modo administrador(usuário). 2. Trabalhando com a Linguagem de programação C#, o uso da DLL DarumaFramework.dll deve ser declarada em sua classe, como uma variável por referência como mostra os exemplos abaixo. Exemplos das <TAGS> utilizadas no método: *Clique sobre o nome da TAG abaixo e veja mais sobre ela: <TAG> AD - Alinhe o texto à Direita; <TAG> AE - Alinhe o texto à Esquerda; <TAG> Apagar - Apague caracteres; <TAG> C - Centralize o texto; <TAG> Campo - Libere um campo de digitação ao usuário; <TAG> Coluna - Posicione em uma coluna específica de uma linha; <TAG> Combo - Crie um Combo de Opções pré-definidas para o usuário; <TAG> Direção - Diga se um Menu irá "rolar" verticalmente ou horizontalmente; <TAG> ECO - Mude os dados digitados pelo usuário por um caracter que você configurar; <TAG> Edicao - Permita a entrada de dados pelo usuário; <TAG> Encerrar - Desligue, reinicie ou faça logoff no microterminal; <TAG> ESC - Use a tecla ESC para sair de uma digitação; <TAG> Estilo - Personalize um Menu com os estilos disponíveis; <TAG> Enter - Cancele uma ação em sua edicao de dados; <TAG> Hint - Crie um cabaçalho fixo para o Menu; <TAG> Imprimir - mostre um texto na tela para o usuário; <TAG> Limpar - Limpe uma linha ou as duas do Dislpay; <TAG> Linha - Posicione em uma linha; <TAG> GetDadoCampo - Permitir capturar os dados presente no campo; <TAG> GetDadoCombo - Permitir capturar os dados presente no combo; 8 DarumaFramework <TAG> Mascara - Trave a digitação para apenas números ou apenas letras; <TAG> Menu - Crie um menu de opções; <TAG> ModoCursor - Mude a forma de visualização do Cursor no Display; <TAG> OpcaoX - Crie uma seqüência de opções válidas dentro de um menu; <TAG> POS - Posicione o cursor onde desejar no Display; <TAG> SetFocus - Cria um foco no campo selecionado; <TAG> Tamanho - Defina um tamanho para um campo ou edição de dados; <TAG> Texto - Use para mostrar um texto no Display; <TAG> Tipo - Defina o tipo de dados a serem editados; <TAG> Valor - Mostre um texto de fundo no campo de entrada de dados. Definição do Método: Parâmetros: 1. sDadosFormatos. Variável String com a(s) tag(s) que serão usadas. É aqui que vão as TAGs que serão usadas no Display, portanto passe quantas desejar dentro deste método. 2. sResultado. Variável String por referência com 81 espaços para receber o conteúdo que será escrito na variável sResultado. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma Retornos dos possíveis erros: O TA2000 está projetado junto a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. 9 DarumaFramework - Help 2.5 Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima: Linguagens Disponíveis: Delphi Método {--Declaração da função que envia os dados formatados para o display--} function iEnviarDadosFormatados_TA2000_Daruma(sDadosFormatados: String; sResultado: String): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} procedure TfrmiEnviarDadosFormatados_TA2000_Daruma.btEnviarClick( Sender: TObject); var {--Declaração da variável do tipo inteiro. Observe que iRetorno é para receber o retorno da função--} iRetorno : integer; {--Declaração das variáveis String. sDadosFormatados recebe o parâmetro, enquanto a sResultado é por Declaração referência e recebe os dados ecoados no display. Importante! o tamanho desta variável, deverá ser rigorosamente o tamanho dos dados que se pretende receber, ou seja, se você ecoar uma senha de 10 caracteres, então devera alocar no mínimo 10 espaços--} sDadosFormatados, sResultado : string; begin {--Limpando o label que devolve o retorno--} lbRetorno.Caption:=''; {--Carregando a variável com o parâmetro passado no edit.box do frm--} sDadosFormatados:= edDadosFormatados.Text; {--Alocando 81 espaços para receber a string ecoada no display--} SetLength(sResultado, 81); 10 DarumaFramework {--A variável iRetorno receberá o retorno que for devolvido pela função--} iRetorno:= iEnviarDadosFormatados_TA2000_Daruma(sDadosFormatados, sResultado); {--Recebendo o edit.box a String que foi escrita pela função na variável por referência definida anteriormente-} edResultado.Text:= sResultado; {--Tratando os retornos--} Função if (iRetorno = 1) then lbRetorno.Caption:= IntToStr(iRetorno)+ ' Função Executada com Sucesso'; if (iRetorno = -99) then lbRetorno.Caption:= IntToStr(iRetorno)+ ' -99 Parâmetro Inválido'; if (iRetorno = 0) then lbRetorno.Caption:= IntToStr(iRetorno)+ ' Erro de Tag'; end; VB6 Método Declaração '=========== TA2000 ===========' Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal szTexto As String, ByVal szRetorno As String) As Integer Dim iRetorno As Integer Dim szRetorno As String Dim STR_Imprimir As String TB_Comando.Text = "" TB_Resultado.Text = "" STR_Imprimir = "<imprimir><texto>Texto</texto><linha>2</linha><coluna>11</coluna></imprimir>" szRetorno = Space(81) Função iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Imprimir, szRetorno) If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If C# Método 11 DarumaFramework - Help 2.5 Declaração com referência: Declaração //*************Método TA2000************* [DllImport("DarumaFrameWork.dll")] public static extern int iEnviarDadosFormatados_TA2000_Daruma(System.String szTexto, [MarshalAs(UnmanagedType.VBByRefStr)] ref string szRetorno); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. string szRetorno; string STR_Imprimir; TB_Comando.Text = ""; TB_Resultado.Text = ""; STR_Imprimir = "<limpar>0</limpar><imprimir><texto>Texto</texto><linha>2</linha><coluna>11</coluna></imprimir>"; Função szRetorno = new string (' ', 81); DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iEnviarDadosFormatados_TA2000_Daruma(STR_Imprimir, ref szRetorno); TB_Resultado.Text = szRetorno; if (DarumaFramework_Declaracoes_CSharp.iRetorno == 1) MessageBox.Show("Dados enviados com sucesso: " + szRetorno, "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show("Erro no envio dos dados", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); VBNet Método '**********************************************************************' TA2000 Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "Darumaframework.dll" (ByVal szTexto As String, ByVal szRetorno As String) As Integer 12 DarumaFramework Dim iRetorno As Integer Dim szRetorno As String Dim STR_Imprimir As String TB_Comando.Text = "" TB_Resultado.Text = "" STR_Imprimir = "<limpar>0</limpar><imprimir><texto>Texto</texto><linha>2</linha><coluna>11</coluna></imprimir>" Função szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Imprimir, szRetorno) If (iRetorno = 1) Then MsgBox("Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework") End Else MsgBox("Erro no envio dos dados", vbInformation, "Daruma DLL Framework") MsgBox(Int(iRetorno)) End End If Metodos para Registro regPorta_TA2000_Daruma Método: regPorta_TA2000_Daruma Impressora: TA2000. Índice: Bibliotecas: DarumaFramework.dll Neste método deixamos de modo acessível ao desenvolvedor configurar em qual porta o seu display irá funcionar com o TA2000. Veja como mais abaixo como desfrutar desta facilidade fornecida pelo método regPorta_TA2000_Daruma! Método: Definição: Este método permite configurar a porta no qual o display do TA2000 irá comunicar com a DarumaFramework.dll. 13 DarumaFramework - Help 2.5 Dica: O método é geralmente usado na configuração inicial da aplicação, facilitando a demais execução do processo. Observações: 1. Está porta é por padrão "LPT0", não é necessário configurar uma porta para que seja trabalhado com o Display, pois a unica porta de comunicação com o Display é a "LPT0". Definição do Método: Parâmetros: 1. stPorta. Variável string no qual ira definir em qual porta de comunicação o display irá trabalhar. 2. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regPorta_TA2000_Daruma Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: 14 DarumaFramework Delphi Método {--Declaracao da função de configuracao para Termica a impressora--} Declaração function regPorta_TA2000_Daruma(stPorta: String): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regPorta_TA2000_Daruma('LPT0'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regPorta_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal stPorta As String) As Integer Dim iRetorno As Integer Função iRetorno = regPorta_TA2000_Daruma("LPT0") End C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regPorta_TA2000_Daruma(string stPorta); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar Função usando outra denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regPorta_TA2000_Daruma("LPT0" VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regPorta_TA2000_Daruma Lib "Darumaframework.dll" (ByVal stPorta As String) As Integer 15 DarumaFramework - Help 2.5 Dim iRetorno As Integer Função iRetorno = regPorta_TA2000_Daruma("LPT0") End regAuditoria_TA2000_Daruma Método: regAuditoria_TA2000_Daruma Impressora: TA2000. Índice: 59 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite configurar as informações que são repassadas para o display do TA2000 de modo que ative um LOG de ações realizadas pela DarumaFramework.dll, gerando um arquivo TXT (Auditoria_TA2000), no qual será inserido como padrão na raiz da sua maquina. Dica: O método é geralmente usado quando há uma necessidade de verificar possíveis erros ocorridos no Display do TA2000. Observações: 1. Este método deve estar habilitado antes do seu aplicativo executar. Definição do Método: 16 DarumaFramework Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regAuditoria_TA2000_Daruma Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para Termica a impressora--} Declaração function regAuditoria_TA2000_Daruma(stParametro: String): Integer; StdCall; External 'DarumaFrameWork.dll {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regAuditoria_TA2000_Daruma('1'); end; VB6 Declaração Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' 17 DarumaFramework - Help 2.5 Public Declare Function regAuditoria_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal stParametro As String As Integer Dim iRetorno As Integer Função iRetorno = regAuditoria_TA2000_Daruma("1") End C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regAuditoria_TA2000_Daruma(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar Função usando outra denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regAuditoria_TA2000_Daruma("1" VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regAuditoria_TA2000_Daruma Lib "Darumaframework.dll" (ByVal stParametro As String) As Integer Dim iRetorno As Integer Função iRetorno = regAuditoria_TA2000_Daruma("1") End regMarcadorOpcao_TA2000_D aruma Método: regMarcadorOpcao_TA2000_Daruma Impressora: TA2000. Índice: 60 Bibliotecas: DarumaFramework.dll 18 DarumaFramework Método: Definição: Este método permite configurar o display do TA2000 para definir o tipo de marcador que será usado na opção de criar menu. Dia-a-Dia: Este método permite que o desenvolvedor tenha disponibilidade de ilustrar melhor as opção do MENU, no TA2000, como por exemplo, o marcador seria o símbolo usado do lado de cada Menu quando selecionado através das teclas do seu TA2000, veja a imagem abaixo: Verifique que o tipo de marcador utilizado neste exemplo acima, seria o asteriscos(*). Dica: O método é geralmente usado na configuração inicial da aplicação, facilitando a demais execução do processo. Observações: 1. Este método deve estar habilitado antes do seu aplicativo executar. Definição do Método: Parâmetros: 1. stMarcadorOpcao. Variável string no qual ira definir o tipo de marcado que será usado na opção da TAG <menu>. 19 DarumaFramework - Help 2.5 2. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regMarcadorOpcao_TA2000_Daruma Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para Termica a impressora--} function regMarcadorOpcao_TA2000_Daruma(stMarcadorOpcao: String): Integer; StdCall; External Declaração 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regMarcadorOpcao_TA2000_Daruma('*'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' Declaração '=========== IMPRESSORAS DUAL ===========' Public Declare Function regMarcadorOpcao_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal stMarcadorOpc 20 DarumaFramework String) As Integer Dim iRetorno As Integer Função iRetorno = regMarcadorOpcao_TA2000_Daruma("*") End C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regMarcadorOpcao_TA2000_Daruma(string stMarcadorOpcao); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando out Função denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regMarcadorOpcao_TA2000_Darum VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regMarcadorOpcao_TA2000_Daruma Lib "Darumaframework.dll" (ByVal stMarcadorOpca String) As Integer Dim iRetorno As Integer Função iRetorno = regMarcadorOpcao_TA2000_Daruma("*") End regMascara_TA2000_Daruma Método: regMascara_TA2000_Daruma Impressora: TA2000. Índice: 61 Bibliotecas: DarumaFramework.dll Método: 21 DarumaFramework - Help 2.5 Definição: Este método permite configurar o display do TA2000 para definir uma mascara padrão que será usada em seu display do TA2000 através da TAG <mascara>. Dia-a-Dia: Este método permite uma maior facilidade no momento da construção da sua TAG <mascara>, evitando que a todo momento você necessite definir o tipo de mascara que será usado como por exemplo: - Valor Padrão do método (sem-definições): Ex.: <edicao><mascara>#.###,00</mascara></edicao> - Valor Definido do método (Valor: #.###,00): Ex.: <edicao><mascara></mascara></edicao> Sendo assim, conforme os exemplos demonstrados acima, pre-definindo uma mascara, evita que a todo momento no desenvolvimento das TAG, necessite colocar a tipo da mascara a ser utilizado. Observações: 1. Este método deve estar habilitado antes do seu aplicativo executar. Definição do Método: Parâmetros: 1. stMascara. Variável string no qual ira pre-definir o tipo de mascara a ser utilizada na opção da TAG <mascara>. 2. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regMascara_TA2000_Daruma Retornos dos possíveis erros: 22 DarumaFramework Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para Termica a impressora--} Declaração function regMascara_TA2000_Daruma(stMascara: String): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regMascara_TA2000_Daruma(''); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regMascara_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal stMascara As String) As Integer Dim iRetorno As Integer Função iRetorno = regMascara_TA2000_Daruma("") End C# Método 23 DarumaFramework - Help 2.5 //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regMascara_TA2000_Daruma(string stMascara); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar Função usando outra denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regMascara_TA2000_Daruma(""); VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regMascara_TA2000_Daruma Lib "Darumaframework.dll" (ByVal stMascara As String) As Integer Dim iRetorno As Integer Função iRetorno = regMascara_TA2000_Daruma("") End regMascaraEco_TA2000_Daru ma Método: regMascaraEco_TA2000_Daruma Impressora: TA2000. Índice: 62 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite configurar o display do TA2000 para exibir as informações ecoadas através da TAG<mascara> quando inserido um tipo de mascara. 24 DarumaFramework Dica: O método é geralmente usado caso o desenvolvedor deseje exibir as informações da mascara construida no display como mostra o imagem abaixo. Conforme a opção do registro "MascaraEco" estar com sua opção configurada para "1", foi exibida as informações da mascara conforme sua construção com a TAG <mascara>, Ex.: <edicao><mascara>R$#.###,## Nome:!!!!!!!!!!!!!!!!!</mascara></edicao> Caso a opção esteja com seu valor padrão (Valor padrão = "0"), ira exibir assim: Observações: 1. Este método deve estar habilitado antes do seu aplicativo executar. Definição do Método: Parâmetros: 1. stMascaraEco. Variável string no qual ira definir a exibição do eco da mascara que será usado no display através da TAG <mascara>. 25 DarumaFramework - Help 2.5 0 = Padrão 1 = Ativado 2. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regMascaraEco_TA2000_Daruma Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para Termica a impressora--} Declaração function regMascaraEco_TA2000_Daruma(stMascaraEco: String): Integer; StdCall; External 'DarumaFrameWor {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regMascaraEco_TA2000_Daruma('0'); end; VB6 Método Declaração '=============DECLARACOES DARUMA FRAMEWORK========================' 26 DarumaFramework '=========== IMPRESSORAS DUAL ===========' Public Declare Function regMarcadorOpcao_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal stMascaraEco A String) As Integer Dim iRetorno As Integer Função iRetorno = regMascaraEco_TA2000_Daruma("0") End C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regMascaraEco_TA2000_Daruma(string stMascaraEco); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar us Função outra denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regMascaraEco_TA2000_Daruma( VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regMascaraEco_TA2000_Daruma Lib "Darumaframework.dll" (ByVal stMascaraEco As Str As Integer Dim iRetorno As Integer Função iRetorno = regMascaraEco_TA2000_Daruma("0") End regMascaraLetra_TA2000_Dar uma Método: regMascaraLetra_TA2000_Daruma Impressora: TA2000. Índice: 63 Bibliotecas: DarumaFramework.dll 27 DarumaFramework - Help 2.5 Método: Definição: Este método permite configurar o display do TA2000 para definir uma mascara padrão que será usada em seu display do TA2000 através da TAG <mascara>, quando houver a necessidade de mascara um tipo de "Letra" no display. Dica: Segue abaixo uma demonstração de como funciona o método: Ex.: <limpar>0</limpar><edicao><mascara>Nome:!!!!!!!!!!!!!!!!!</mascara></edicao > Tipo de mascara definido com "!": Define que o texto a ser digitado poderá ser apenas Texto. Observações: 1. Este método deve estar habilitado antes do seu aplicativo executar. Definição do Método: Parâmetros: 1. stMascaraLetra. Variável string no qual ira pre-definir o tipo de mascara a ser utilizada na opção da TAG <mascara>, quando mascara o tipo "letra". 2. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regMascaraLetra_TA2000_Daruma Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 28 DarumaFramework 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para Termica a impressora--} function regMascaraLetra_TA2000_Daruma(stMascaraLetra: String): Integer; StdCall; External Declaração 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regMascaraLetra_TA2000_Daruma('!'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regMascaraLetra_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal stMascaraLetra A String) As Integer Dim iRetorno As Integer Função iRetorno = regMascaraLetra_TA2000_Daruma("!") End C# Declaração Método //*************Métodos para Impressoras Dual************* 29 DarumaFramework - Help 2.5 [DllImport("DarumaFrameWork.dll")] public static extern int regMascaraLetra_TA2000_Daruma(string stMascaraLetra); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar us Função outra denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regMascaraLetra_TA2000_Daruma VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regMascaraLetra_TA2000_Daruma Lib "Darumaframework.dll" (ByVal stMascaraLetra As String) As Integer Dim iRetorno As Integer Função iRetorno = regMascaraLetra_TA2000_Daruma("!") End regMascaraNumero_TA2000_D aruma Método: regMascaraNumero_TA2000_Daruma Impressora: TA2000. Índice: 64 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite configurar o display do TA2000 para definir uma mascara padrão que será usada em seu display do TA2000 através da TAG <mascara>, quando houver a necessidade de mascara um tipo de "numérico" no display. 30 DarumaFramework Dica: Segue abaixo uma demonstração de como funciona o método: Ex.: <limpar>0</limpar><edicao><mascara>R$:#.###,00</mascara></edicao> Tipo de mascara definido com "#": Define que o texto a ser digitado poderá ser apenas Numero. Observações: 1. Este método deve estar habilitado antes do seu aplicativo executar. Definição do Método: Parâmetros: 1. stMascaraNumero. Variável string no qual ira pre-definir o tipo de mascara a ser utilizada na opção da TAG <mascara>, quando mascara o tipo "numero". 2. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regMascaraNumero_TA2000_Daruma Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. 31 DarumaFramework - Help 2.5 Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para Termica a impressora--} function regMascaraNumero_TA2000_Daruma(stMascaraNumero: String): Integer; StdCall; External Declaração 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regMascaraNumero_TA2000_Daruma('#'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regMascaraNumero_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal stMascaraNum String) As Integer Dim iRetorno As Integer Função iRetorno = regMascaraNumero_TA2000_Daruma("#") End C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regMascaraNumero_TA2000_Daruma(string stMascaraNumero); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando out Função denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regMascaraNumero_TA2000_Daru VBNet 32 Método DarumaFramework '**********************************************************************' DUAL Declaração Public Declare Function regMascaraNumero_TA2000_Daruma Lib "Darumaframework.dll" (ByVal stMascaraNume String) As Integer Dim iRetorno As Integer Função iRetorno = regMascaraNumero_TA2000_Daruma("#") End regMensagemBoasVindasLinha 1_TA2000_Daruma Método: regMensagemBoasVindasLinha1_TA2000_Daruma Impressora: TA2000. Índice: 65 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite configurar o display do TA2000 para definir uma mensagem padrão de até 40 caracteres na primeira linha para ser exibida quando seu aplicativo executar junto com a nossa DarumaFramework.dll. Dia-a-Dia: Este método permite exibir alguma informação ao usuário na primeira linha do display quando executado o aplicativo, transmitindo alguma informação, atualizações, nome do estabelicimento entre outras informações. 33 DarumaFramework - Help 2.5 Observações: 1. Este método deve estar habilitado antes do seu aplicativo executar. Definição do Método: Parâmetros: 1. stMensBoasVindas1. Variável string no qual ira definir a mensagem inicial quando executado seu aplicativo, na primeira linha do display com até 40 caracteres. 2. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regMensagemBoasVindasLinha1_TA2000_Daruma Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi 34 Método DarumaFramework {--Declaracao da função de configuracao para Termica a impressora--} Declaração function regMensagemBoasVindasLinha1_TA2000_Daruma(stMensBoasVindas1: String): Integer; StdCall; Exte {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regMensagemBoasVindasLinha1_TA2000_Daruma('*******BemVindo ao TA2000 Darum end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' Declaração '=========== IMPRESSORAS DUAL ===========' Public Declare Function regMensagemBoasVindasLinha1_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal st Dim iRetorno As Integer Função iRetorno = regMensagemBoasVindasLinha1_TA2000_Daruma("*******BemVindo ao TA2000 Daru End C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regMensagemBoasVindasLinha1_TA2000_Daruma(string stMensBoasVindas1); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regMensagemBoasVindasLinha1_T ao TA2000 Daruma******"); VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regMensagemBoasVindasLinha1_TA2000_Daruma Lib "Darumaframework.dll" (ByVal stM Dim iRetorno As Integer Função iRetorno = regMensagemBoasVindasLinha1_TA2000_Daruma("*******BemVindo ao TA2000 Daru End 35 DarumaFramework - Help 2.5 regMensagemBoasVindasLinha 2_TA2000_Daruma Método: regMensagemBoasVindasLinha2_TA2000_Daruma Impressora: TA2000. Índice: 66 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite configurar o display do TA2000 para definir uma mensagem padrão de até 40 caracteres na segunda linha para ser exibida quando seu aplicativo executar junto com a nossa DarumaFramework.dll. Dia-a-Dia: Este método permite exibir alguma informação ao usuário na segunda linha do display quando executado o aplicativo, transmitindo alguma informação, atualizações, nome do estabelicimento entre outras informações. Observações: 1. Este método deve estar habilitado antes do seu aplicativo executar. Definição do Método: Parâmetros: 36 DarumaFramework 1. stMensBoasVindas2. Variável string no qual ira definir a mensagem inicial quando executado seu aplicativo, na segunda linha do display com até 40 caracteres. 2. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regMensagemBoasVindasLinha2_TA2000_Daruma Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para Termica a impressora--} Declaração function regMensagemBoasVindasLinha2_TA2000_Daruma(stMensBoasVindas2: String): Integer; StdCall; Exte {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regMensagemBoasVindasLinha2_TA2000_Daruma('****www.desenvolvedoresdaruma. end; VB6 Método Declaração '=============DECLARACOES DARUMA FRAMEWORK========================' 37 DarumaFramework - Help 2.5 '=========== IMPRESSORAS DUAL ===========' Public Declare Function regMensagemBoasVindasLinha2_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal st Dim iRetorno As Integer Função iRetorno = regMensagemBoasVindasLinha2_TA2000_Daruma("****www.desenvolvedoresdaruma End C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regMensagemBoasVindasLinha2_TA2000_Daruma(string stMensBoasVindas2); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D qual em sua aplicação poderá estar usando outra denominação. Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regMensagemBoasVindasLinha2_T VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regMensagemBoasVindasLinha2_TA2000_Daruma Lib "Darumaframework.dll" (ByVal stM Dim iRetorno As Integer Função iRetorno = regMensagemBoasVindasLinha2_TA2000_Daruma("****www.desenvolvedoresdaruma End Valores e Definições de Registro(Registry) TA2000 Modelo: TA2000. Índice: 54 Bibliotecas: DarumaFramework.dll 38 DarumaFramework Objetivo: Definição: Demonstrar ao desenvolvedor como trabalha as chaves de registro para o TA2000. Observações: 1. Na chave "Porta" é por padrão LPT0, e não deve ser alterada pois poderá comprometer a comunicação entre o display e o seu aplicativo. Valores aplicados por Padrão(Default): [HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework\TA2000] "MensagemBoasVindasLinha1"="*******BemVindo ao TA2000 Daruma******" "MensagemBoasVindasLinha2"="****www.desenvolvedoresdaruma.com.br****" "Porta"="LPT0" "Auditoria"="0" [HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework\TA2000\Display] "MarcadorOpcao"="*" "Mascara"="" "MascaraLetra"="!" "MascaraNumero"="#" "MascaraEco"="0" Definições: 39 DarumaFramework - Help 2.5 "MensagemBoasVindasLinha1"= Chave responsável pela mensagem inicial quando inicializado o seu aplicativo, onde ira disponibilizar em seu display com sua mensagem personalizada, esta chave representa a primeira linha do display com 40 caracteres. "MensagemBoasVindasLinha2"= Chave responsável pela mensagem inicial quando inicializado o seu aplicativo, onde ira disponibilizar em seu display com sua mensagem personalizada, esta chave representa a segunda linha do display com 40 caracteres. "Porta"= Chave responsável pelo registro da porta de comunicação presente para o TA2000, por padrão utilizamos a porta paralela LPT0, no qual o Display ira comunicar-se com seu aplicativo, juntamente com nosso simulador para o TA2000, que pode ser descarregado(download) através de nosso site: www.desenvolvedoresdaruma.com.br. "Auditoria"= Esta opção é responsável pela criação do log de eventos ocorridos no TA2000, quando habilitada ela gera automaticamente na raiz da sua maquina um LOG com os eventos ocorridos a partir do momento de sua ativação. "MarcadorOpcao"= Chave responsável pelo opção padrão no qual o desenvolvedor irá trabalhar com o simbolo de menu utilizando a TAG <menu>, no qual o método permite que o desenvolvedor tenha disponibilidade de ilustrar melhor as opção do MENU, no TA2000, como por exemplo, o marcador seria o símbolo usado do lado de cada Menu quando selecionado através das teclas do seu TA2000. "Mascara"= Chave responsável pela opção no qual o desenvolvedor irá padronizar uma mascara no qual será utilizada quando chamar a função pela TAG <mascara>, evitando assim que a todo momento seja necessário informar a mascara no campo de edição solicitado. "MascaraLetra"= Chave responsável pela opção no qual o desenvolvedor irá trabalhar com o símbolo usados nas mascaras de letras no Display do TA2000, dando a possibilidade do mesmo, estabelecer um padrão de símbolos que será usado quando transmitir uma mascará num campo no qual deverá constar somente letras. 40 DarumaFramework "MascaraNumero"= Chave responsável pela opção no qual o desenvolvedor irá trabalhar com o símbolo usados nas mascaras de numeros no Display do TA2000, dando a possibilidade do mesmo, estabelecer um padrão de símbolos que será usado quando transmitir uma mascará num campo no qual deverá constar somente numero. "MascaraEco"= Chave responsável pela opção no qual o desenvolvedor irá trabalhar com o símbolo usados no eco de caracteres quando utilizado a TAG <eco>, dando a possibilidade do mesmo, estabelecer um padrão de símbolos que será usado quando transmitir o eco de caracteres num determinado campo. Exemplos de uso com TAGS Exemplo Máscara Método: iEnviarDadosFormatados_TA2000_Daruma Mini-Terminal: TA2000. Índice: 46 Bibliotecas: DarumaFramework.dll Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderão ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra o uso das TAGS no método. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através iEnviarDadosFormatados_TA2000_Daruma: Linguagens Disponíveis: Delphi Método 41 DarumaFramework - Help 2.5 {--Declaracao do método para Enviar Dados Formatados--} Declaração function iEnviarDadosFormatados_TA2000_Daruma(szTexto: String; szRetorno: String): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; szRetorno: String; STR_Mascara: String; begin STR_Mascara:= '<limpar>0</limpar><edicao><mascara>R$#.###,## Nome:!!!!!!!!!!!!!!!!!</mascara></edicao>'; SetLength(szRetorno, 81); iRetorno := iEnviarDadosFormatados_TA2000_Daruma(STR_Mascara, szRetorno); Função if (iRetorno = 1) then begin Application.MessageBox(pchar('Dados enviados com sucesso:' + szRetorno), 'Daruma DLL Framework', mb_ok); end else begin Application.MessageBox('Erro no envio dos dados', 'Daruma DLL Framework', MB_OK + MB_ICONERROR); ShowMessage(IntToStr(iRetorno)); end; end; VB6 Método '=========== TA2000 ===========' Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal szTexto As String, ByVal szRetorno As String) As Integer 42 DarumaFramework Dim iRetorno As Integer Dim szRetorno As String Dim STR_Mascara As String STR_Mascara = "<limpar>0</limpar><edicao><mascara>R$#.###,## Nome:!!!!!!!!!!!!!!!!!</mascara></edicao>" szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Mascara, szRetorno) Função If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If C# Método Declaração com referência: Declaração //*************Método TA2000************* [DllImport("DarumaFrameWork.dll")] public static extern int iEnviarDadosFormatados_TA2000_Daruma(System.String szTexto, [MarshalAs(UnmanagedType.VBByRefStr)] ref string szRetorno); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. string szRetorno; string STR_Mascara; TB_Comando.Text = ""; TB_Resultado.Text = ""; STR_Mascara = "<limpar>0</limpar><edicao><mascara>R$#.###,## Nome:!!!!!!!!!!!!!!!!!</mascara></edicao>"; Função szRetorno = new string (' ', 81); DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iEnviarDadosFormatados_TA2000_Daruma(STR_Mascara, ref szRetorno); TB_Resultado.Text = szRetorno; if (DarumaFramework_Declaracoes_CSharp.iRetorno == 1) MessageBox.Show("Dados enviados com sucesso: " + szRetorno, "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show("Erro no envio dos dados", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); 43 DarumaFramework - Help 2.5 VBNet Método '**********************************************************************' TA2000 Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "Darumaframework.dll" (ByVal szTexto As String, ByVal szRetorno As String) As Integer Dim iRetorno As Integer Dim szRetorno As String Dim STR_Mascara As String STR_Mascara = "<limpar>0</limpar><edicao><mascara>R$#.###,## Nome:!!!!!!!!!!!!!!!!!</mascara></edicao>" szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Mascara, szRetorno) Função If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If Exemplo Combo Método: iEnviarDadosFormatados_TA2000_Daruma Mini-Terminal: TA2000. Índice: 39 Bibliotecas: DarumaFramework.dll Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderão ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra o uso das TAGS no método. Exemplos: 44 DarumaFramework Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através iEnviarDadosFormatados_TA2000_Daruma: Linguagens Disponíveis: Delphi Método {--Declaracao do método para Enviar Dados Formatados--} Declaração function iEnviarDadosFormatados_TA2000_Daruma(szTexto: String; szRetorno: String): Integer; StdCall; Exter {$R *.dfm} var iRetorno: Integer; szRetorno: String; STR_Combo: String; begin // Abrir Painel; STR_Combo:= '<limpar>0</limpar><combo><linha>1</linha><coluna>15</coluna><tamanho>10</tamanho><opcao1>no SetLength(szRetorno, 81); Função iRetorno := iEnviarDadosFormatados_TA2000_Daruma(STR_Combo, szRetorno); if (iRetorno = 1) then begin Application.MessageBox(pchar('Dados enviados com sucesso:' + szRetorno), 'Daruma DLL Framework', mb_ end else begin Application.MessageBox('Erro no envio dos dados', 'Daruma DLL Framework', MB_OK + MB_ICONERROR); ShowMessage(IntToStr(iRetorno)); end; end; VB6 Método '=========== TA2000 ===========' Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal szTexto A 45 DarumaFramework - Help 2.5 Dim iRetorno As Integer Dim szRetorno As String Dim STR_Combo As String STR_Combo = "<limpar>0</limpar><combo><linha>1</linha><coluna>15</coluna><tamanho>10</tamanho><opcao1>n szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Combo, szRetorno) Função If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If C# Método Declaração com referência: Declaração //*************Método TA2000************* [DllImport("DarumaFrameWork.dll")] public static extern int iEnviarDadosFormatados_TA2000_Daruma(System.String szTexto, [MarshalAs(Unmanag ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D string szRetorno; string STR_Combo; TB_Comando.Text = ""; TB_Resultado.Text = ""; STR_Combo = Função "<limpar>0</limpar><combo><linha>1</linha><coluna>15</coluna><tamanho>10</tamanho><opcao1>n szRetorno = new string (' ', 81); DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iEnviarDa TB_Resultado.Text = szRetorno; if (DarumaFramework_Declaracoes_CSharp.iRetorno == 1) MessageBox.Show("Dados enviados com sucesso: " + szRetorno, "Daruma DLL Framework", Messag else MessageBox.Show("Erro no envio dos dados", "Daruma DLL Framework", MessageBoxButtons.OK, M VBNet Método '**********************************************************************' TA2000 Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "Darumaframework.dll" (ByVal szTexto A 46 DarumaFramework Dim iRetorno As Integer Dim szRetorno As String Dim STR_Combo As String STR_Combo = "<limpar>0</limpar><combo><linha>1</linha><coluna>15</coluna><tamanho>10</tamanho><opcao1>n szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Combo, szRetorno) Função If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If Exemplo Criar Menu Método: iEnviarDadosFormatados_TA2000_Daruma Mini-Terminal: TA2000. Índice: 40 Bibliotecas: DarumaFramework.dll Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderão ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra o uso das TAGS no método. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através iEnviarDadosFormatados_TA2000_Daruma: Linguagens Disponíveis: Delphi Método 47 DarumaFramework - Help 2.5 {--Declaracao do método para Enviar Dados Formatados--} Declaração function iEnviarDadosFormatados_TA2000_Daruma(szTexto: String; szRetorno: String): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; szRetorno: String; STR_CriarMenu: String; begin STR_CriarMenu:= '<limpar>0</limpar><menu><estilo>2</estilo><direcao>V</direcao><opcao1>Cadastrar Item</opcao1><opcao2>Consultar Cadastro</opcao2><opcao3>Alterar Cadastro</opcao3><opcao4>Eliminar Cadastro</opcao4></menu>'; SetLength(szRetorno, 81); Função iRetorno := iEnviarDadosFormatados_TA2000_Daruma(STR_CriarMenu, szRetorno); if (iRetorno = 1) then begin Application.MessageBox(pchar('Dados enviados com sucesso:' + szRetorno), 'Daruma DLL Framework', mb_ok); end else begin Application.MessageBox('Erro no envio dos dados', 'Daruma DLL Framework', MB_OK + MB_ICONERROR); ShowMessage(IntToStr(iRetorno)); end; end; VB6 Método '=========== TA2000 ===========' Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal szTexto As String, ByVal szRetorno As String) As Integer 48 DarumaFramework Dim iRetorno As Integer Dim szRetorno As String Dim STR_CriarMenu As String STR_CriarMenu = "<limpar>0</limpar><menu><estilo>2</estilo><direcao>V</direcao><opcao1>Cadastrar Item</opcao1><opcao2>Consultar Cadastro</opcao2><opcao3>Alterar Cadastro</opcao3><opcao4>Eliminar Cadastro</opcao4></menu>" szRetorno = Space(81) Função iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_CriarMenu, szRetorno) If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If C# Método Declaração com referência: Declaração //*************Método TA2000************* [DllImport("DarumaFrameWork.dll")] public static extern int iEnviarDadosFormatados_TA2000_Daruma(System.String szTexto, [MarshalAs(UnmanagedType.VBByRefStr)] ref string szRetorno); 49 DarumaFramework - Help 2.5 ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. string szRetorno; string STR_Menu; TB_Comando.Text = ""; TB_Resultado.Text = ""; STR_Menu = "<limpar>0</limpar><menu><estilo>2</estilo><direcao>V</direcao><opcao1>Cadastrar Item</opcao1><opcao2>Consultar Cadastro</opcao2><opcao3>Alterar Função Cadastro</opcao3><opcao4>Eliminar Cadastro</opcao4></menu>"; szRetorno = new string (' ', 81); DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iEnviarDadosFormatados_TA2000_Daruma(STR_Menu, ref szRetorno); TB_Resultado.Text = szRetorno; if (DarumaFramework_Declaracoes_CSharp.iRetorno == 1) MessageBox.Show("Dados enviados com sucesso: " + szRetorno, "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show("Erro no envio dos dados", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); VBNet Método '**********************************************************************' TA2000 Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "Darumaframework.dll" (ByVal szTexto As String, ByVal szRetorno As String) As Integer 50 DarumaFramework Dim iRetorno As Integer Dim szRetorno As String Dim STR_CriarMenu As String STR_CriarMenu = "<limpar>0</limpar><menu><estilo>2</estilo><direcao>V</direcao><opcao1>Cadastrar Item</opcao1><opcao2>Consultar Cadastro</opcao2><opcao3>Alterar Cadastro</opcao3><opcao4>Eliminar Cadastro</opcao4></menu>" szRetorno = Space(81) Função iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_CriarMenu, szRetorno) If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If Exemplo Edição Método: iEnviarDadosFormatados_TA2000_Daruma Mini-Terminal: TA2000. Índice: 41 Bibliotecas: DarumaFramework.dll Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderão ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra o uso das TAGS no método. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através iEnviarDadosFormatados_TA2000_Daruma: Linguagens Disponíveis: 51 DarumaFramework - Help 2.5 Delphi Método {--Declaracao do método para Enviar Dados Formatados--} Declaração function iEnviarDadosFormatados_TA2000_Daruma(szTexto: String; szRetorno: String): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; szRetorno: String; STR_Edicao: String; begin STR_Edicao:= '<limpar>0</limpar><edicao><eco>0</eco><tipo>3</tipo><tamanho>10</tamanho><esc>27</esc><linha>1</linha><coluna>1</coluna></edicao>'; SetLength(szRetorno, 81); Função iRetorno := iEnviarDadosFormatados_TA2000_Daruma(STR_Edicao, szRetorno); if (iRetorno = 1) then begin Application.MessageBox(pchar('Dados enviados com sucesso:' + szRetorno), 'Daruma DLL Framework', mb_ok); end else begin Application.MessageBox('Erro no envio dos dados', 'Daruma DLL Framework', MB_OK + MB_ICONERROR); ShowMessage(IntToStr(iRetorno)); end; end; VB6 Método Declaração '=========== TA2000 (ByVal szTexto As String, ByVal szRetorno As String) As Integer 52 ===========' Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "DarumaFrameWork.dll" DarumaFramework Dim iRetorno As Integer Dim szRetorno As String Dim STR_Edicao As String STR_Edicao = "<limpar>0</limpar><edicao><eco>0</eco><tipo>3</tipo><tamanho>10</tamanho><esc>27</esc><linha>1</linha><coluna>1</coluna></edicao>" szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Edicao, szRetorno) Função If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If C# Método Declaração com referência: Declaração //*************Método TA2000************* [DllImport("DarumaFrameWork.dll")] public static extern int iEnviarDadosFormatados_TA2000_Daruma(System.String szTexto, [MarshalAs(UnmanagedType.VBByRefStr)] ref string szRetorno); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. string szRetorno; string STR_Edicao; TB_Comando.Text = ""; TB_Resultado.Text = ""; STR_Edicao = Função "<limpar>0</limpar><edicao><eco>0</eco><tipo>3</tipo><tamanho>10</tamanho><esc>27</esc><linha>1</linha><coluna>1</coluna></edicao>"; szRetorno = new string (' ', 81); DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iEnviarDadosFormatados_TA2000_Daruma(STR_Edicao, ref szRetorno); TB_Resultado.Text = szRetorno; if (DarumaFramework_Declaracoes_CSharp.iRetorno == 1) MessageBox.Show("Dados enviados com sucesso: " + szRetorno, "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Information); 53 DarumaFramework - Help 2.5 else MessageBox.Show("Erro no envio dos dados", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); VBNet Método '**********************************************************************' TA2000 Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "Darumaframework.dll" (ByVal szTexto As String, ByVal szRetorno As String) As Integer Dim iRetorno As Integer Dim szRetorno As String Dim STR_Edicao As String STR_Edicao = "<limpar>0</limpar><edicao><eco>0</eco><tipo>3</tipo><tamanho>10</tamanho><esc>27</esc><linha>1</linha><coluna>1</coluna></edicao>" szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Edicao, szRetorno) Função If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If 54 DarumaFramework Exemplo Encerrar Método: iEnviarDadosFormatados_TA2000_Daruma Mini-Terminal: TA2000. Índice: 42 Bibliotecas: DarumaFramework.dll Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderão ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra o uso das TAGS no método. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através iEnviarDadosFormatados_TA2000_Daruma: Linguagens Disponíveis: Delphi Método {--Declaracao do método para Enviar Dados Formatados--} Declaração function iEnviarDadosFormatados_TA2000_Daruma(szTexto: String; szRetorno: String): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} 55 DarumaFramework - Help 2.5 var iRetorno: Integer; szRetorno: String; STR_Encerrar: String; begin STR_Encerrar:= '<encerrar>3</encerrar>'; SetLength(szRetorno, 81); iRetorno := iEnviarDadosFormatados_TA2000_Daruma(STR_Encerrar, szRetorno); Função if (iRetorno = 1) then begin Application.MessageBox(pchar('Dados enviados com sucesso:' + szRetorno), 'Daruma DLL Framework', mb_ok); end else begin Application.MessageBox('Erro no envio dos dados', 'Daruma DLL Framework', MB_OK + MB_ICONERROR); ShowMessage(IntToStr(iRetorno)); end; end; VB6 Método '=========== TA2000 ===========' Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal szTexto As String, ByVal szRetorno As String) As Integer Dim iRetorno As Integer Dim szRetorno As String Dim STR_Encerrar As String STR_Encerrar = "<encerrar>3</encerrar>" szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Encerrar, szRetorno) Função If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If C# 56 Método DarumaFramework Declaração com referência: Declaração //*************Método TA2000************* [DllImport("DarumaFrameWork.dll")] public static extern int iEnviarDadosFormatados_TA2000_Daruma(System.String szTexto, [MarshalAs(UnmanagedType.VBByRefStr)] ref string szRetorno); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. string szRetorno; string STR_Encerrar; TB_Comando.Text = ""; TB_Resultado.Text = ""; STR_Encerrar = "<encerrar>3</encerrar>"; szRetorno = new string (' ', 81); Função DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iEnviarDadosFormatados_TA2000_Daruma(STR_Encerrar, ref szRetorno); TB_Resultado.Text = szRetorno; if (DarumaFramework_Declaracoes_CSharp.iRetorno == 1) MessageBox.Show("Dados enviados com sucesso: " + szRetorno, "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show("Erro no envio dos dados", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); VBNet Método '**********************************************************************' TA2000 Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "Darumaframework.dll" (ByVal szTexto As String, ByVal szRetorno As String) As Integer 57 DarumaFramework - Help 2.5 Dim iRetorno As Integer Dim szRetorno As String Dim STR_Encerrar As String STR_Encerrar = "<encerrar>3</encerrar>" szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Encerrar, szRetorno) Função If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If Exemplo Get Dado Campo Método: iEnviarDadosFormatados_TA2000_Daruma Mini-Terminal: TA2000. Índice: 43 Bibliotecas: DarumaFramework.dll Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderão ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra o uso das TAGS no método. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através iEnviarDadosFormatados_TA2000_Daruma: Linguagens Disponíveis: Delph 58 Método DarumaFramework i {--Declaracao do método para Enviar Dados Formatados--} Declaraçã function iEnviarDadosFormatados_TA2000_Daruma(szTexto: String; szRetorno: String): Integer; StdCall; Exter o {$R *.dfm} var iRetorno: Integer; szRetorno: String; STR_GetDadoCampo: String; stComando1 : String; stComando2 : String; stComando3 : String; begin stComando1 := '<limpar>0</limpar><imprimir><texto>Artigo:1234</texto><linha>1</linha><coluna>1</co stComando2 := 'Valor:1234</texto><linha>2</linha><coluna>1</coluna></imprimir><imprimir><texto>Qtd stComando3 := '<coluna>17</coluna></campo><modocursor>2</modocursor><setfocus>1</setfocus><get Função STR_GetDadoCampo:= stComando1 + stComando2 + stComando3 SetLength(szRetorno, 81); iRetorno := iEnviarDadosFormatados_TA2000_Daruma(STR_GetDadoCampo, szRetorno); if (iRetorno = 1) then begin Application.MessageBox(pchar('Dados enviados com sucesso:' + szRetorno), 'Daruma DLL Framework', mb_o end else begin Application.MessageBox('Erro no envio dos dados', 'Daruma DLL Framework', MB_OK + MB_ICONERROR); ShowMessage(IntToStr(iRetorno)); end; end; VB6 Método Declaraçã '=========== o TA2000 ===========' Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal szTexto A Dim iRetorno As Integer Dim szRetorno As String Dim STR_GetDadoCampo As String Função STR_GetDadoCampo = "<limpar>0</limpar><imprimir><texto>Artigo:1234</texto><linha>1</linha><coluna Gas</texto><linha>1</linha><coluna>15</coluna></imprimir><imprimir><texto>Valor:1234</texto><linha cursor>2</modocursor><setfocus>1</setfocus><getdadocampo>1</getdadocampo>" 59 DarumaFramework - Help 2.5 szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_GetDadoCampo, szRetorno) If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If C# Método Declaração com referência: Declaraçã o //*************Método TA2000************* [DllImport("DarumaFrameWork.dll")] public static extern int iEnviarDadosFormatados_TA2000_Daruma(System.String szTexto, [MarshalAs(Unmanage ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D string szRetorno; string STR_GetDado; TB_Comando.Text = ""; TB_Resultado.Text = ""; STR_GetDador = "<limpar>0</limpar><imprimir><texto>Artigo:1234</texto><linha>1</linha><colu Gas</texto><linha>1</linha><coluna>15</coluna></imprimir><imprimir><texto>Valor:1234</texto><linha Função cursor>2</modocursor><setfocus>1</setfocus><getdadocampo>1</getdadocampo>"; szRetorno = new string (' ', 81); DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iEnviarDad TB_Resultado.Text = szRetorno; if (DarumaFramework_Declaracoes_CSharp.iRetorno == 1) MessageBox.Show("Dados enviados com sucesso: " + szRetorno, "Daruma DLL Framework", Message else MessageBox.Show("Erro no envio dos dados", "Daruma DLL Framework", MessageBoxButtons.OK, Me VBNet Método '**********************************************************************' TA2000 Declaraçã o Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "Darumaframework.dll" (ByVal szTexto As Dim iRetorno As Integer Dim szRetorno As String Função Dim STR_GetDadoCampo As String STR_GetDadoCampo = "<limpar>0</limpar><imprimir><texto>Artigo:1234</texto><linha>1</linha><coluna 60 DarumaFramework Gas</texto><linha>1</linha><coluna>15</coluna></imprimir><imprimir><texto>Valor:1234</texto><linha cursor>2</modocursor><setfocus>1</setfocus><getdadocampo>1</getdadocampo>" szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_GetDadoCampo, szRetorno) If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If Exemplo Imprimir Texto Método: iEnviarDadosFormatados_TA2000_Daruma Mini-Terminal: TA2000. Índice: 44 Bibliotecas: DarumaFramework.dll Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderão ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra o uso das TAGS no método. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através iEnviarDadosFormatados_TA2000_Daruma: Linguagens Disponíveis: Delphi Método 61 DarumaFramework - Help 2.5 {--Declaracao do método para Enviar Dados Formatados--} Declaração function iEnviarDadosFormatados_TA2000_Daruma(szTexto: String; szRetorno: String): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; szRetorno: String; STR_Imprimir: String; begin STR_Imprimir:= '<limpar>0</limpar><imprimir><texto>Texto</texto><linha>2</linha><coluna>11</coluna></imprimir>'; SetLength(szRetorno, 81); Função iRetorno := iEnviarDadosFormatados_TA2000_Daruma(STR_Imprimir, szRetorno); if (iRetorno = 1) then begin Application.MessageBox(pchar('Dados enviados com sucesso:' + szRetorno), 'Daruma DLL Framework', mb_ok); end else begin Application.MessageBox('Erro no envio dos dados', 'Daruma DLL Framework', MB_OK + MB_ICONERROR); ShowMessage(IntToStr(iRetorno)); end; end; VB6 Método '=========== TA2000 ===========' Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal szTexto As String, ByVal szRetorno As String) As Integer Dim iRetorno As Integer Dim szRetorno As String Dim STR_Imprimir As String STR_Imprimir = "<limpar>0</limpar><imprimir><texto>Texto</texto><linha>2</linha><coluna>11</coluna></imprimir>" Função szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Imprimir, szRetorno) If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) 62 DarumaFramework End End If C# Método Declaração com referência: Declaração //*************Método TA2000************* [DllImport("DarumaFrameWork.dll")] public static extern int iEnviarDadosFormatados_TA2000_Daruma(System.String szTexto, [MarshalAs(UnmanagedType.VBByRefStr)] ref string szRetorno); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. string szRetorno; string STR_Imprimir; TB_Comando.Text = ""; TB_Resultado.Text = ""; STR_Imprimir = "<limpar>0</limpar><imprimir><texto>Texto</texto><linha>2</linha><coluna>11</coluna></imprimir>"; Função szRetorno = new string (' ', 81); DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iEnviarDadosFormatados_TA2000_Daruma(STR_Imprimir, ref szRetorno); TB_Resultado.Text = szRetorno; if (DarumaFramework_Declaracoes_CSharp.iRetorno == 1) MessageBox.Show("Dados enviados com sucesso: " + szRetorno, "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show("Erro no envio dos dados", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); VBNet Método 63 DarumaFramework - Help 2.5 '**********************************************************************' TA2000 Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "Darumaframework.dll" (ByVal szTexto As String, ByVal szRetorno As String) As Integer Dim iRetorno As Integer Dim szRetorno As String Dim STR_Imprimir As String STR_Imprimir = "<limpar>0</limpar><imprimir><texto>Texto</texto><linha>2</linha><coluna>11</coluna></imprimir>" szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Imprimir, szRetorno) Função If (iRetorno = 1) Then MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If Exemplo Limpar Display Método: iEnviarDadosFormatados_TA2000_Daruma Mini-Terminal: TA2000. Índice: 45 Bibliotecas: DarumaFramework.dll Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderão ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra o uso das TAGS no método. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através iEnviarDadosFormatados_TA2000_Daruma: 64 DarumaFramework Linguagens Disponíveis: Delphi Método {--Declaracao do método para Enviar Dados Formatados--} Declaração function iEnviarDadosFormatados_TA2000_Daruma(szTexto: String; szRetorno: String): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; szRetorno: String; STR_Limpar: String; begin STR_Limpar:= '<limpar>0</limpar>'; SetLength(szRetorno, 81); iRetorno := iEnviarDadosFormatados_TA2000_Daruma(STR_Limpar, szRetorno); Função if (iRetorno = 1) then begin Application.MessageBox(pchar('Dados enviados com sucesso:' + szRetorno), 'Daruma DLL Framework', mb_ok); end else begin Application.MessageBox('Erro no envio dos dados', 'Daruma DLL Framework', MB_OK + MB_ICONERROR); ShowMessage(IntToStr(iRetorno)); end; end; VB6 Método '=========== TA2000 ===========' Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "DarumaFrameWork.dll" (ByVal szTexto As String, ByVal szRetorno As String) As Integer 65 DarumaFramework - Help 2.5 Dim iRetorno As Integer Dim szRetorno As String Dim STR_Limpar As String STR_Limpar = "<limpar>0</limpar>" szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Limpar, szRetorno) If (iRetorno = 1) Then Função MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If C# Método Declaração com referência: Declaração //*************Método TA2000************* [DllImport("DarumaFrameWork.dll")] public static extern int iEnviarDadosFormatados_TA2000_Daruma(System.String szTexto, [MarshalAs(UnmanagedType.VBByRefStr)] ref string szRetorno); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. string szRetorno; string STR_Limpar; TB_Comando.Text = ""; TB_Resultado.Text = ""; STR_Limpar = "<limpar>0</limpar>"; szRetorno = new string (' ', 81); Função DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iEnviarDadosFormatados_TA2000_Daruma(STR_Limpar, ref szRetorno); TB_Resultado.Text = szRetorno; if (DarumaFramework_Declaracoes_CSharp.iRetorno == 1) MessageBox.Show("Dados enviados com sucesso: " + szRetorno, "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show("Erro no envio dos dados", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); 66 DarumaFramework VBNet Método '**********************************************************************' TA2000 Declaração Public Declare Function iEnviarDadosFormatados_TA2000_Daruma Lib "Darumaframework.dll" (ByVal szTexto As String, ByVal szRetorno As String) As Integer Dim iRetorno As Integer Dim szRetorno As String Dim STR_Limpar As String STR_Limpar = "<limpar>0</limpar>" szRetorno = Space(81) iRetorno = iEnviarDadosFormatados_TA2000_Daruma(STR_Limpar, szRetorno) If (iRetorno = 1) Then Função MsgBox "Dados enviados com sucesso:" + szRetorno, vbInformation, "Daruma DLL Framework" End Else MsgBox "Erro no envio dos dados", vbInformation, "Daruma DLL Framework" MsgBox (Int(iRetorno)) End End If Descricoes das TAGS TAG Texto Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <imprimir><texto></texto></imprimir> Bibliotecas: DarumaFramework.dll Olá! caro desenvolvedor, estaremos abaixo apresentando a TAG <texto> (Texto), no qual será essencial em nosso desenvolvimento, pois a mesma permite que seja impresso um texto no display do TA2000 de uma forma simples e fácil! Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização 67 DarumaFramework - Help 2.5 desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite escrever textos no Display do TA2000. Dica: Utilizamos a tag para texto Você Sabia? Você pode combinar a TAG <texto> com as TAGs de Alinhamento à Esquerda ao Centro ou à Direita? Observações: 1. Nenhuma. Definição do Método: Parâmetros: 1. O método pode utilizar até dois parâmetros: Imprimir e Linha. 2. Parâmetro Imprimir <imprimir>: Possibilita a impressão do texto no Display. 3. Parâmetro Linha <linha>: Permite selecionar a linha onde será inserido o texto. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <texto></texto> Dica: Por que usar os parâmetros de Imprimir e Linha? Porque sem o parâmetro Imprimir o texto não será apresentado no Display e não basta apenas dizermos que algo será escrito no Display, temos que dizer que este algo está em uma linha específica 68 DarumaFramework (pois pode estar tanto na linha 1, quanto na linha 2). Por default o texto aparecerá na primeira linha do Display. Exemplos: Abaixo apresentamos como podemos utilizar a TAG <texto></texto> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <imprimir> <texto>Daruma Automação</texto> //Envia um texto para o Display </imprimir> 2. Exemplo: <imprimir> <texto>Daruma Desenvolvedor</texto> //Envia um texto para o Display <linha>2</linha> <coluna>7</coluna> //Aponta o texto na linha 2 do Display //Diz em que coluna da linha iniciará o texto no Display </imprimir> Dica: Sempre quando enviar um texto para o Display envie a TAG <limpar> antes. Isso garante que seu texto será apresentado na tela de forma limpa e sem confusões! Se você não apontar em qual linha será apresentado o texto, por default o mesmo apresentará seu texto sempre na primeira linha. TAG Imprimir Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <imprimir><texto></texto></imprimir> 69 DarumaFramework - Help 2.5 Bibliotecas: DarumaFramework.dll Olá! Caro desenvolvedor, estaremos abaixo apresentando a TAG Imprimir <imprimir>, que possibilita a você desenvolvedor, com muita facilidade e organização, imprimir texto no display do TA2000. Nesta TAG deixaremos seu desenvolvimento mais simples e prático. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite escrever no Display. Dica: Ao executar este método é fundamental (para não dizer obrigatório) chamar a tag: <limpar></limpar>, antes de executar este comando, pois dessa maneira você deixará o display limpo para seu desenvolvimento. A tag <imprimir> foi desenvolvida em questão a auxiliar o desenvolvedor a inserir dados formatados dentro do display, dando a possibilidade da seleção da coluna, linha entre outros recursos demonstrado abaixo, podemos simplesmente inserir um texto e posicionar na posição desejada. Observações: 1. Nenhuma. Definição do Método: 70 Você Sabia? Estamos presentes em todos os Estados Brasileiros e somos usuários presentes dos principais Fóruns de Automação do Brasil e Fora do Brasil! DarumaFramework Parâmetros: 1. O método pode utilizar até dois parâmetros: Texto, Linha e Coluna. 2. Parâmetro Texto <texto>: Permite inserir dados no display do TA2000. 3. Parâmetro Linha <linha>: Permite selecionar a linha onde será inserido o texto. 4. Parâmetro Coluna <coluna>: Permite selecionar a coluna onde será inserido o texto. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <imprimir></imprimir> Exemplos: Abaixo apresentamos como podemos utilizar a TAG no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo imprimindo na primeira linha: <imprimir> <texto>Daruma Desenvolvedor</texto> //imprime o texto selecionado <linha>1</linha> //seleciona a linha onde estará o texto <coluna>14</coluna> //seleciona a coluna onde ele irá iniciar </imprimir> 2. Exemplo imprimindo na segunda linha: <imprimir> <texto>Daruma Desenvolvedor</texto> <linha>2</linha> //note que a diferença para o exemplo acima está apenas na linha em que será apresentado o texto na tela <coluna>10</coluna> </imprimir> Dica: 71 DarumaFramework - Help 2.5 Preste atenção sempre no tamanho dos caracteres que serão apresentados no display. Digamos que no exemplo 2 você mande ele iniciar a impressão a partir da coluna 25. Pronto o texto vai começar na linha 2 e continuar na linha 1. Veja como ficaria o erro de cálculo na segunda linha: Para que você não precise bater cabeça em onde o texto será apresentado no display, aproveite e conheça as TAGs que alinham o texto à Esquerda, à Direita e ao Centro do display! TAG Limpar Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <limpar></limpar> Bibliotecas: DarumaFramework.dll Olá! Caro desenvolvedor, estaremos abaixo apresentando a TAG Limpar <limpar>, no qual tem grande utilização em todas as TAG's presentes no manual, pois possibilita a você desenvolvedor apagar textos no display do TA2000 com muita facilidade. É através desta TAG que será possível limpar as linhas presentes no display deixando ele preparado para receber novos textos. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: 72 DarumaFramework Definição: Esta tag permite limpar o cursor do Display na determinada linha selecionada. Dica: Utilizamos sempre esta tag para iniciar o trabalho dentro do display do TA2000. Sempre antes de enviar um novo texto para o display do TA2000 envie antes a TAG Limpar, para permitir que o texto a ser enviado será apresentado de forma limpa e clara para o usuário final. Observações: 1. Nenhuma. Definição do Você Sabia? Que atendemos ao desenvolvedor via email, skype, telefone ou dicas presentes em Fóruns de Automação! Método: Parâmetros: 1. O método pode utilizar até três parâmetros: 0, 1 e 2, onde: 2. Parâmetro "0": Permite limpar as linhas 1(primeira) e 2(segunda) simultaneamente. 3. Parâmetro "1": Permite limpar apenas a 1(primeira) linha; 4. Parâmetro "2": Permite limpar apenas a 2(segunda) linha. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <limpar></limpar> Exemplos: 73 DarumaFramework - Help 2.5 Abaixo apresentamos como podemos utilizar a TAG no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <limpar>0</limpar> //limpa ambas as linhas no display 2. Exemplo: <limpar>1</limpar> //limpa apenas a primeira linha no display Dica: Veja como ficaria um texto enviado para o display sem utilizar a TAG Limpar antes: TAG POS - Posição Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <pos></pos> Bibliotecas: DarumaFramework.dll Olá! Caro desenvolvedor, estaremos abaixo apresentando a TAG Posição <pos>, onde através dela será possível deixar o cursor do display posicionado no local onde se deseja! Já pensou como ficará fácil o manuseio de informações a seus consumidores finais? Exato! Esta TAG irá possibilitar isto a você desenvolvedor com muita facilidade e organização. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! 74 DarumaFramework Método: Definição: Esta tag permite posicionar o cursor do Display na linha e/ou coluna desejada. Dica: Este método permite que o desenvolvedor, posicione o cursor na linha ou coluna desejada, manipulando de forma livre o display. Aproveite e após posicionar o cursor do display diga como será o Modo do Cursor e também chame outros métodos como o de Edição e Impressão de texto na tela do display! Tem um exemplo mesclando TAGs mais abaixo! Observações: 1. Nenhuma. Definição do Método: Parâmetros: 1. O método utiliza dois parâmetros: linha e coluna, onde: 2. Linha: Permite posicionar a posição do cursor na linha 1(primeira linha) ou 2(segunda linha). 3. Coluna: Permite posicionar o cursor na coluna do display que vai de 1 até 40. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <pos></pos> Você Sabia? Exemplos: Através da TAG <edicao>, podemos editar de forma rápida e prática qualquer campo presente no Display! 75 DarumaFramework - Help 2.5 Abaixo apresentamos como podemos utilizar a TAG no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <pos> <linha>2</linha> //posiciona o cursor na linha 2 <coluna>10</coluna> //posiciona o cursor na coluna 10 </pos> 2. Exemplo: <pos> <linha>1</linha> //posiciona o cursor na linha 1 <coluna>31</coluna> //posiciona o cursor na coluna 31 <modocursor>2</modocursor> //indica qual é o modo que será apresentado o cursor </pos> 3. Exemplo mesclando TAGs: <pos> <edicao> //abro a tag que posiciona o cursor //abro a tag que permite edição de textos pelo usuário <eco>*</eco> //coloco uma máscara <tipo>1</tipo> //tipo dos dados <tamanho>2</tamanho> //tamanho do campo a ser editado <linha>1</linha> //posiciona o cursor na linha 1 <coluna>10</coluna> //posiciona o cursor na coluna 10 </edicao> </pos> Dica: Veja o exemplo 2 na TAG ModoCursor e o exemplo 3 na TAG Edição. TAG AD - Alinhamento á Direita Método: iEnviarDadosFormatados_TA2000_Daruma 76 DarumaFramework Produto: TA2000. Tipo: <ad><texto></texto></ad> Bibliotecas: DarumaFramework.dll Alinhamento! não basta apenas apresentar um texto de qualquer maneira para o usuário do Display do TA2000 e isto você desenvolvedor o sabe muito bem! Então temos que tomar muito cuidado com a disposição do texto no Display, e se você precisa simplesmente apresentar o texto a Direita, use a TAG <ad></ad> que todo o texto que estiver dentro desta tag será apresentado a partir da primeira célula (coluna) da linha em que o cursor estiver posicionado ou até mesmo da linha que você programar para o Display! Simples, prático e funcional. Veja mais abaixo exemplos de utilização desta TAG e mãos a obra! Método: Definição: Esta tag permite alinhar ao lado direito o texto na linha selecionada no Display. Você Sabia? Observações: 1. Nenhuma. Além da TAG <ad> que alinha á Direita, podemos utilizar a TAG <ae> que seria o lado esquerdo, ou a TAG <c> que Centraliza o texto na Tela do Display !!! Definição do Método: Parâmetros: 1. O método pode utilizar até dois parâmetros: Texto e Linha. 2. Parâmetro Texto <texto>: Permite inserir dados no display do TA2000. 3. Parâmetro Linha <linha>: Permite selecionar a linha onde será inserido o texto. 77 DarumaFramework - Help 2.5 Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <ad></ad> Dica: Por que usar estes dois parâmetros de texto e linha? Porque não basta apenas dizermos que algo estará a direita, temos que dizer que este algo é um texto (para que o mesmo seja apresentado) e que está em uma linha específica (pois pode estar tanto na linha 1, quanto na linha 2). 1. Exemplo: <ad> <texto>Daruma Desenvolvedor</texto> <linha>1</linha> //Indica que o texto será apresentado na Primeira linha </ad> 2. Exemplo: <ad> <texto>Daruma Desenvolvedor</texto> </ad> Dica: Se você não apontar em qual linha será apresentado o texto, por default o mesmo apresentará seu texto sempre na primeira linha. Aproveite e simplifique. Sempre que o texto for na primeira linha mande apenas como no segundo exemplo acima. TAG AE - Alinhamento á Esquerda Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <ae><texto></texto></ae> 78 DarumaFramework Bibliotecas: DarumaFramework.dll Posicionar o texto á esquerda! É isto que esta TAG <ae> lhe permite fazer. Alinhar um texto á esquerda para quem não conhece nada sobre programação, pode até parecer a coisa mais simples de se fazer, e para o nosso amigo escovador de bits que sempre programou para microterminais no mais baixo nível, realmente, alinhar um simples texto á esquerda poderia ter sido uma tortura, mas agora com a utilização desta TAG tudo ficou mais simples e mais prático! Veja como mais abaixo como desfrutar desta facilidade fornecida pelo método iEnviarDadosFormatados_TA2000_Daruma! Método: Definição: Esta tag permite alinhar ao lado esquerdo o texto na linha selecionada no Display. Você Sabia? Observações: 1. Nenhuma. Além da TAG <ae> que alinha á Esquerda, podemos utilizar a TAG <ad> que seria o lado direito, ou a TAG <c> que Centraliza o texto na Tela do Display !!! Definição do Método: Parâmetros: 1. O método pode utilizar até dois parâmetros: Texto e Linha; 2. Parâmetro Texto <texto>: Permite inserir dados no display do TA2000. 3. Parâmetro Linha <linha>: Permite selecionar a linha onde será inserido o texto; Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma 79 DarumaFramework - Help 2.5 TAG: <ae></ae> Dica: Por que usar estes dois parâmetros de texto e linha? Porque não basta apenas dizermos que algo estará a esquerda, temos que dizer que este algo é um texto (para que o mesmo seja apresentado) e que está em uma linha específica (pois pode estar tanto na linha 1, quanto na linha 2). 1. Exemplo: <ae> <texto>Daruma Desenvolvedor</texto> <linha>1</linha> //Indica que o texto será apresentado na Primeira linha </ae> 2. Exemplo: <ae> <texto>Daruma Desenvolvedor</texto> </ae> Dica: Se você não apontar em qual linha será apresentado o texto, por default o mesmo apresentará seu texto sempre na primeira linha e onde o cursor do TA2000 estiver apontando, por isso é importante sempre apontar onde será apresentado o seu texto, para que o usuário não tenha surpresas desagradáveis. Aproveite e simplifique. Sempre que o texto for na primeira linha faça como no exemplo 2 acima! TAG Apagar Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <apagar></apagar> Bibliotecas: DarumaFramework.dll 80 DarumaFramework Apagar! todos na vida já desejaram apagar algo, sendo assim realizamos o desenvolvimento desta TAG <apagar>, pensando em um modo facilitado a você desenvolvedor! Imagine um texto onde existe a necessidade de você apagar o último caractere digitado, de um modo fácil e prático. Caso sua intenção seja a de apagar a linha inteira use a TAG Limpar. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar no desenvolvimento da função. Bom trabalho! Método: Definição: Esta tag permite apagar o texto que antecede ao Cursor. Dica: Podemos utilizar a tag para programar um botão de exclusão de caracteres no display do TA2000, utilizando como por exemplo uma tecla exclusiva para caso o cliente necessite apagar a última informação na inclusão do conteúdo no display de um modo facilitado. Observações: 1. O método pode ser utilizado de diversas formas, do mesmo jeito que você pode apagar o caractere desejado como o último caractere selecionado, basta indicar corretamente o método que irá utilizar como mostra os exemplos abaixo. Definição do Método: Parâmetros: 1. Nenhum. 81 DarumaFramework - Help 2.5 Nomenclatura: Windows: Você Sabia? iEnviarDadosFormatados _TA2000_Daruma TAG: <apagar></apagar> Que a Daruma trabalha com diversos ramos na área de Informática, Automação e Telecomunicação! Conheça-nos! Exemplos: Abaixo apresentamos como podemos utilizar a TAG no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <apagar></apagar> 2. Exemplo: <ad><texto>Daruma T</texto></ad> <apagar></apagar> // irá apagar o último caractere do texto, no exemplo a letra 'T' Dica: Caso queria apagar todo o texto da linha utilize a TAG Limpar. TAG C - Centralizar Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <c><texto></texto></c> Bibliotecas: DarumaFramework.dll Centro! Pensando em colocar o texto centralizado no Display? Com a utilização desta TAG você, desenvolvedor, verá como ficou fácil colocar um texto exatamente no centro do Display do TA2000, sem 82 DarumaFramework que você precise calcular qual é a célula (coluna) específica que inicia o centro do texto. Então vamos lá: Método: Definição: Esta tag permite centralizar o texto na linha selecionada no Display. Dica: Utilizamos a tag <c> para centralizar o texto dentro do display, facilitando na criação de menus, textos ou conteúdos de uma forma mais visível e organizada ao consumidor final. Você Sabia? Observações: 1. Nenhuma. Que é possível você criar um menu de opções somente usando TAG's? Veja como na TAG <menu> Definição do Método: Parâmetros: 1. O método pode utilizar até dois parâmetros: Texto e Linha; 2. Parâmetro Texto <texto>: Permite inserir dados no display do TA2000. 3. Parâmetro Linha <linha>: Permite selecionar a linha onde será inserido o texto; Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <c></c> 1. Exemplo: <c> <texto>Daruma Desenvolvedor</texto> <linha>1</linha> //Indica que o texto será apresentado na Primeira linha 83 DarumaFramework - Help 2.5 </c> 2. Exemplo: <c> <texto>Daruma Desenvolvedor</texto> </c> Dica: Além da TAG Centralizar <c>, existem também as TAG que alinham o Texto à Direita e à Esquerda. Conheça-as! Ao utilizar a TAG Centralizar <c> a mesma irá apagar todo o conteúdo da linha e apresentará apenas o conteúdo enviado. Aproveite e simplifique. Sempre que o texto for na primeira linha faça como o nosso exemplo 2. TAG Campo Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <campo></campo> Bibliotecas: DarumaFramework.dll Olá! caro desenvolvedor, estaremos abaixo apresentando a TAG Campo <campo>, onde através dela é possível separar um espaço dentro do Display exclusivo para a digitação, sendo que neste espaço o usuário poderá digitar um texto muito superior ao tamanho real do campo visualizado a partir da última posição do campo. Ou seja, usando esta simples TAG você define um campo de digitação para o usuário do TA2000, e o mesmo poderá digitar um texto dentro deste espaço, mas não limitado ao tamanho que você programa para a visualização pois o texto vai "rolando" para traz e permitindo que o usuário continue sua digitação e visualização. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na 84 DarumaFramework utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite criar um campo de entrada de dados onde é possível editar, a partir da última posição do cursor. O campo pode aceitar todos os tipos formatados, e você ainda pode definir somente letras, somente números, ou alfa-numérico. Dica: Utilize esta tag todas as vezes em que o usuário tiver que fornecer algum dado no qual você não tem como precisar o tamanho da entrada destes dados. Podemos utilizar esta TAG, com o intuito de editar dados de um campo, como por exemplo um banco de dados, onde contém dados a serem inseridos junto com esta TAG, a utilização da TAG <getdadocampo> entraria como chave para capturar os dados inseridos no campo. Observações: Você Sabia? 1. É necessário o usa da tag Setfocus para ativar está método. Que o Local da construção e criação de todos nossos segmentos fica localizado em Taubaté! Venha nos conhecer! 2. As informações retornadas depois de se usar a tag Campo devem ser recuperadas através do método: rLerValorCampoString_TA2000_Daruma, que recebe o retorno (segundo parâmetro) do método iEnviarDadosFormatados_TA2000_Daruma e o número do campo a ser lido. 3. Caso você necessite utilizar os caracteres especiais abaixo junto com o padrão do teclado QWERT no Display do TA2000 basta você não utilizar o parametro Tipo em sua composição. Ex. de Caracteres: ~!@#$%^&*()-_+=[]{};:'"\|,<.>/?`. 85 DarumaFramework - Help 2.5 Definição do Método: Parâmetros: 1. O método pode utilizar até cinco parâmetros: Valor, Tipo, Linha, Coluna e Tamanho. 2. Parâmetro Valor: Permite colocar um texto de fundo no campo de digitação, como uma sombra indicando o que deverá ser digitado pelo usuário. 3. Parâmetro Tipo: Filtra os dados inseridos no display do TA2000. <tipo>1</tipo> = Somente Números. <tipo>2</tipo> = Somente Letras. <tipo>3</tipo> = Alfa-numerico. 4. Parâmetro Linha: Indica a linha onde será editado o texto. 5. Parâmetro Coluna: Indica a coluna onde será editado o texto. 6. Parâmetro Tamanho: Indica o tamanho do campo separado exclusivamente para a entrada de dados no Display, mas não limita a quantidade de caracteres a serem digitados pelo usuário. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <campo></campo> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <campo> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo <campo> <valor>Cidade:</valor> <tipo>1</tipo> 86 //imprime o texto "Cidade:" //aceita apenas números <linha>2</linha> //posiciona na linha 2 <coluna>20</coluna> //posiciona na coluna 20 DarumaFramework <tamanho>15</tamanho> //o tamanho do campo será de 15 caracteres </campo> <setfocus>1</setfocus> //ativa o campo 2. Exemplo <imprimir> //inicia impressão de texto no Display <texto>Cidade:</texto> //imprime o texto Cidade: <linha>1</linha> //posiciona na linha 1 <coluna>1</coluna> //posiciona na coluna 1 </imprimir> <campo> <tipo>2</tipo> //inicia um campo de digitação //aceita somente letras <linha>1</linha> //posiciona na linha 1 <coluna>8</coluna> //posiciona na coluna 8 <tamanho>10</tamanho> // o tamanho do campo será de 10 caracteres </campo> <setfocus>1</setfocus> //ativa o campo Dica: Aproveite a TAG Campo e mescle outras TAGs com ela, como no segundo exemplo onde usamos a TAG imprimir e suas propriedades para imprimir um texto no Display. Veja que a diferença fundamental entre o primeiro e o segundo exemplos é que no primeiro exemplo o texto Cidade:, usando a TAG Valor, ficará como um texto de fundo e quando o usuário começar a digitar um texto ele irá ser escrito no display em cima do texto Cidade:, enquanto que no segundo exemplo usando a TAG Imprimir o usuário irá digitar um texto dentro da TAG campo, não apagando e nem interferindo sobre o texto Cidade: impresso pela TAG Imprimir. TAG Coluna Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <texto></texto><coluna></coluna> Bibliotecas: DarumaFramework.dll 87 DarumaFramework - Help 2.5 Olá! caro desenvolvedor, estaremos abaixo apresentando a TAG Coluna <coluna> onde através dela será possível precisar onde exatamente o display do TA2000 irá apresentar ou editar o texto. Ou seja, através desta simples TAG é possível dizer a coluna que se estará editando ou apresentando o texto. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite posicionar a coluna que será apresentado o texto no Display. Dica: Utilizamos a tag coluna sempre que queremos precisar em qual coluna em uma determinada linha será apresentado o texto. Caso não seja indicada a coluna que será apresentado o texto por default o texto irá aparecer na primeira coluna do Display. Observações: Você Sabia? 1. A TAG trabalha com dependência as seguintes TAGS: TAG <imprimir> TAG <edicao> Que o Display do TA2000 possui um emulador para que você possa testar todas as suas funcionalidades antes de implementá-las no TA2000? TAG <combo> Definição do Método: 88 DarumaFramework Parâmetros: 1. O método utiliza um Parâmetro: 2. Valor <coluna>X</coluna>: Indica que o texto será apresentado na coluna "X" do Display, onde "X" é o valor da coluna onde estará o texto. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <coluna></coluna> Dica: Por que usar o parâmetro de valor da coluna? Porque desta forma você consegue controlar com precisão em qual lugar de uma determinada linha do Display estará o seu texto. Exemplos: Abaixo apresentamos como podemos utilizar a TAG <coluna></coluna> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <imprimir> //Indica que o texto será impresso na tela do Display <texto>Daruma Desenvolvedor</texto> //Texto a ser impresso no Display <linha>1</linha> //Mostra que o texto estará na Primeira linha do Display <coluna>7</coluna> //Mostra que o texto estará na Coluna 7 do Display </imprimir> 2. Exemplo: <edicao> //Indica que o texto será editado na tela do Display <tamanho>10</tamanho> //Tamanho do texto a ser digitado <esc>0</esc> <coluna>12</coluna> //Liga/Desliga a tecla ESC //Mostra que o texto estará na Coluna 12 do 89 DarumaFramework - Help 2.5 Display </edicao> TAG Combo Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <combo></combo> Bibliotecas: DarumaFramework.dll Olá! caro desenvolvedor, estaremos abaixo apresentando a TAG Combo <combo>, onde através dela é possível criar um combo de opções para o usuário do TA2000. Ou seja, sem complicações e de uma forma simples, usando esta TAG e seus parâmetros, você poderá criar combos de opções para o usuário navegar a vontade e selecionar a opção que melhor se adapta a ele. Fantástico! Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite criar um combo de opções no Display do TA2000. Dica: Utilize esta tag todas as vezes em que o usuário tiver que escolher uma opção pré-definida por você dentro do Display do TA2000. Observações: 90 DarumaFramework 1. É necessário o usa da tag Setfocus para ativar está método. 2. As informações retornadas depois de se usar a tag Campo devem ser recuperadas através do método: rLerValorCampoString_TA2000_Daruma, que recebe o retorno (segundo parâmetro) do método iEnviarDadosFormatados_TA2000_Daruma e o número do campo a ser lido. Definição do Método: Parâmetros: 1. O método pode utilizar até cinco parâmetros: Tipo, Linha, Coluna, Tamanho e OpçãoX 2. Parâmetro Tipo: Filtra os dados inseridos no display do TA2000. <tipo>1</tipo> = Somente Números. <tipo>2</tipo> = Somente Letras. <tipo>3</tipo> = Alfa-numérico. 3. Parâmetro Linha: Indica a linha onde será editado o texto. 4. Parâmetro Coluna: Indica a coluna onde será editado o texto. 5. Parâmetro Tamanho: Indica o tamanho do campo separado exclusivamente para a entrada de dados no Display, mas não limita a quantidade de caracteres a serem digitados pelo usuário. 6. Parâmetro Opção X <opcaox>: Indica o opção do menu, baseada no 'X' dentro da tag, onde pode variar de 1 à 20. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <combo></combo> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <combo> no método iEnviarDadosFormatados_TA2000_Daruma: 91 DarumaFramework - Help 2.5 1. Exemplo <combo> //Inicia Combo de opções <linha>1</linha> //posiciona a impressão na linha 1 <coluna>15</coluna> //posiciona a impressão na coluna 15 <tamanho>10</tamanho> //o tamanho do combo será de 10 caracteres <opcao1>nome</opcao1> //a primeira opção será nome <opcao2>fone</opcao2> //a segunda opção será fone </combo> <setfocus>1</setfocus> 2. Exemplo <imprimir> //Inicia impressão de texto <texto>Estado:</texto> //imprime "Estado:" no Display <linha>1</linha> //posiciona a impressão na linha 1 <coluna>20</coluna> //posiciona a impressão na coluna 20 </imprimir> <combo> //Inicia Combo de opções <linha>1</linha> <coluna>28</coluna> <tamanho>3</tamanho> //Define o tamanho do combo com 3 caracteres <opcao1>DF</opcao1> //A primeira opção será DF <opcao2>PR</opcao2> //A segunda opção será PR <opcao3>RJ</opcao3> //A terceira opção será RJ <opcao4>RS</opcao4> //A quarta opção será RS <opcao5>SC</opcao5> //A quinta opção será SC <opcao6>SP</opcao6> //A sexta opção será SP </combo> Dica: Veja como usamos o nosso segundo exemplo, misturando as TAGs de Impressão de texto e posicionando as opções logo em seguida, e siga este modelo em suas telas! TAG Direcao Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. 92 DarumaFramework Tipo: <menu><direcao></direcao></menu> Bibliotecas: DarumaFramework.dll Caro desenvolvedor, estaremos abaixo apresentando a TAG Direção <direcao>. É através dela que podemos orientar em qual direção os menus irão "rolar" de uma forma simples e prática! Ou seja, você usa esta TAG e ela define para você de qual forma serão apresentados os dados na tela do Display do TA2000, se horizontalmente ou se verticalmente. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite direcionar a apresentação do menu no Display do TA2000. Dica: O menu pode ser apresentado na posição horizontal ou vertical, veja como funciona estas formas de visualização do Menu e adote uma delas por padrão no seu software, para que desta forma o usuário se acostume com a forma de apresentação dos dados, e não se perca navegando pelos menus no Display do TA2000. Observações: 1. Esta TAG funciona apenas como um dos parâmetros dentro da TAG Menu. Definição do Método: Parâmetros: 93 DarumaFramework - Help 2.5 1. Parâmetro Direção <direcao>: Indica a direção das páginas no Display, onde: <direcao>h</direcao> = Paginação horizontal (teclas para cima e para baixo). <direcao>v</direcao> = Paginação vertical (teclas para esquerda e para direita). Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <direcao></direcao> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <direcao> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <menu> <opcao1>Tela1</opcao1> <opcao2>Tela2</opcao2> //Opção 1 do Menu //Opção 2 do Menu <estilo>1</estilo> //1 opção por página <direcao>v</direcao> //Paginação vertical </menu> 2. Exemplo: <menu> <opcao1>Tela1</opcao1> <opcao2>Tela2</opcao2> <opcao3>Tela3</opcao3> <estilo>2</estilo> 94 //2 opções por página DarumaFramework <direcao>h</direcao> //Paginação horizontal </menu> Dica: Veja mais sobre o Menu e as TAGs disponíveis para o mesmo na TAG Menu. TAG ECO Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <edicao><eco></eco></edicao> Bibliotecas: DarumaFramework.dll Caro desenvolvedor, estaremos abaixo apresentando a TAG ECO <eco>, que permite que você trabalhe com o que será apresentado no display de forma que quando o usuário digitar qualquer tecla a mesma ecoe na tela apenas o tipo de caracter que você definir aqui, de forma que quando uma tecla qualquer for pressionada no teclado a mesma será ecoada (apresentada) na tela do Display como o valor setado nesta TAG. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar no desenvolvimento da função. Bom trabalho! Método: Definição: Esta tag permite proteger os dados enviados ao display do TA2000, através da substituição dos dados digitados pelo usuário pelo caracter inserido nesta TAG. Dica: Utilizamos esta tag quando precisamos proteger os dados enviados ao display, como é o caso de senhas e números de cartão fidelidade. 95 DarumaFramework - Help 2.5 Observações: 1. Esta TAG funciona apenas como um dos parâmetros dentro da TAG Edicao. Definição do Método: Parâmetros: 1. Esta TAG possui um parâmetro onde indica qual será a mascara no display do TA2000 quando forem digitados valores no teclado: 2. <eco>X</eco>: Onde X corresponde ao valor a ser apresentado no Display Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <eco></eco> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <eco></eco> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <edicao> <eco>*</eco> // ecoa na tela do Display apenas caracteres do tipo * </edicao> 2. Exemplo: <edicao> //realiza o inicio da edição <linha>2</linha> <coluna>10</coluna> <eco>!</eco> 96 //posiciona o cursor na linha 2 //posiciona o cursor na coluna 10 //ecoa na tela do Display apenas caracteres do tipo DarumaFramework ! <tipo>1</tipo> //tipo numérico <tamanho>2</tamanho> //tamanho do campo a ser digitado, no caso 2 </edicao> TAG Edicao Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <edicao></edicao> Bibliotecas: DarumaFramework.dll Caro desenvolvedor, estaremos abaixo apresentando a TAG Edição <edicao>, que permite que você trabalhe com o que será apresentado no display de forma a ajustar, filtrar e 'editar' o campo programado no display. Bom, você lembra quando se trabalhava com aqueles Terminais Burros, onde a linguagem de programação era em Assembly e para realizar esta função era preciso dias e noites sem sono para transformar um único campo em um campo formatado? E você necessitava descer até o baixo nível da programação? Legal, pois nesta TAG nós livramos você deste imenso trabalho envolvendo ela numa única TAG, com simples parâmetros. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar no desenvolvimento da função. Bom trabalho! Método: Definição: Esta tag permite enviar dados formatados ao display do TA2000, onde poderão ser filtrados e/ou editados. Dica: 97 DarumaFramework - Help 2.5 Utilizamos esta tag quando necessitamos capturar ou formatar os dados no Display conforme a necessidade. Podemos usar esta tag para senhas, mascaras, datas entre outros. O interessante desta função e indicar ao usuário o que necessariamente ele necessita colocar no display, formatando os campos conforme necessário, como por exemplo: Nome, Data, Código, onde o nome só irá permitir letras, a data numérico e o código alfa-númerico. Observações: Você Sabia? 1. Quando utlizado a TAG, iremos observar que o campo será editado com o dado inserido necessitando a limpeza dos dados do Display para dar Quanto mais impressoras e produtos Daruma aquiridos podemos colocar e totalizar pontos no DDC! E depois trocar por produtos da Daruma! Você já conhece? Conheça-nos! continuidade no desenvolvimento, ao utilizar este método iremos armazenar a informação numa variável que é possível trabalhar com a mesma, ou dar inicio a alguma função do seu desenvolvimento. 2. Caso você necessite utilizar os caracteres especiais abaixo junto com o padrão do teclado QWERT no Display do TA2000 basta você não utilizar o parametro Tipo em sua composição. Ex. de Caracteres: ~!@#$%^&*()-_+=[]{};:'"\|,<.>/?`. Definição do Método: Parâmetros: 1. O método pode utilizar até sete parâmetros: ECO, Tipo, Tamanho, ESC, Linha, Coluna, Enter e Mascara; 2. Parâmetro ECO: Indica qual será a mascara no display do TA2000 quando forem digitados valores no teclado; 3. Parâmetro Tipo: Filtra os dados à serem digitados onde: <tipo>1</tipo> = Somente números; <tipo>2</tipo> = Somente letras; 98 DarumaFramework <tipo>3</tipo> = Alfa-Numérico. 4. Parâmetro Tamanho: Indica o tamanho do campo para a digitação; 5. Parâmetro ESC: Indica se há possibilidades da edição de dados a ser cancelada com o uso da tecla "ESC", onde: <esc>1</esc> = Valor inteiro; <esc>0</esc> = Valor Zero. 6. Parâmetro Linha: Indica a linha na qual a edição será realizada; 7. Parâmetro Coluna: Indica a coluna na qual a edição será realizada; 8. Parâmetro Enter: Indica se a edição de dados pode ser interrompida com o "Enter" [<enter></enter>], ou com o valor zero [<enter>0</enter>], que indica que a ação não será interrompida com a tecla "enter" ate que algum dado seja inserido no campo; 9. Parâmetro Mascara: Filtra os dados digitados de um determinado campo, onde: # = Indica número; ! = Indica letra. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <edicao></edicao> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <edicao></edicao> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <edicao> <linha>2</linha> <coluna>10</coluna> //posiciona o cursor na linha 2 //posiciona o cursor na coluna 10 99 DarumaFramework - Help 2.5 <mascara>##!!!####</mascara> //nesta ordem recebe 2 caractere somente número, 3 caractere somente letra e 4 caractere somente numero. </edicao> 2. Exemplo: <edicao> //realiza o inicio da edição <eco>*</eco> //formata o texto inserido em caracteres do tipo *, protegendo os dados digitados pelo usuário como uma senha <enter></enter> //sai ao apertar enter <tipo>1</tipo> //tipo numérico <tamanho>10</tamanho> //tamanho do campo a ser digitado, no caso 2 </edicao> 3. Exemplo: "<limpar>0</limpar> <imprimir> <texto>Artigo:1223</texto> <linha>1</linha> <coluna>1</coluna> </imprimir> <imprimir> <texto>Descr:Pao de Mel MiCasa</texto> <linha>1</linha> <coluna>17</coluna> </imprimir> <imprimir> <texto>Valor:1223</texto> <linha>2</linha> <coluna>1</coluna> </imprimir> <imprimir> <texto>Cant:1</texto> <linha>2</linha> <coluna>12</coluna> 100 DarumaFramework </imprimir> <imprimir> <texto>'Enter':Confirma</texto> <linha>2</linha> <coluna>20</coluna> </imprimir> <edicao> <eco>^</eco> <enter></enter> <tipo>2</tipo> <linha>2</linha> <coluna>17</coluna> <tamanho>1</tamanho> </edicao> <modocursor>2</modocursor>"; TAG Encerrar Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <encerrar></encerrar> Bibliotecas: DarumaFramework.dll Olá! caro desenvolvedor, estaremos abaixo apresentando a TAG Encerrar <encerrar> onde através dela é possível desligar, reiniciar ou fazer logoff no MicroTerminal TA2000. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: 101 DarumaFramework - Help 2.5 Definição: Esta tag permite desligar, reiniciar ou fazer logoff no TA2000. Dica: Utilize esta tag para quando o usuário do seu aplicativo desejar desligar, reiniciar ou fazer logoff no TA2000. Observações: 1. Nenhuma Definição do Método: Parâmetros: 1. O método pode utilizar até três parâmetros: <encerrar>1</encerrar>: comando para Desligar <encerrar>2</encerrar>: comando para Reiniciar <encerrar>3</encerrar>: comando para Logoff Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <encerrar></encerrar> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <encerrar> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo <encerrar>1</encerrar> 102 //Desliga o TA2000 DarumaFramework 2. Exemplo <encerrar>2</encerrar> //Reinicia o TA2000 3. Exemplo <encerrar>3</encerrar> //Realiza Logoff no TA2000 Dica: Se você estiver testando o TA2000 através do emulador, tome cuidado, pois esta tag realiza estas funções também no seu computador como se estivesse no TA2000, ou seja, se mandar desligar ele irá desligar mesmo o seu computador! TAG Enter Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <enter></enter> Bibliotecas: DarumaFramework.dll Olá! caro desenvolvedor, estaremos abaixo apresentando a TAG Enter <enter>, onde através dela será possível acionar a tecla Enter indicando que a edição de dados pode ser cancelada com enter ou qualquer valor inteiro. De uma maneira simples você poderá permitir a utilização da tecla Enter para finalizar uma ação ou impedir o seu uso. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite indicar uma ação na edição de dados que pode ser interrompida o uso da tecla "enter". 103 DarumaFramework - Help 2.5 Dica: Utilizamos a TAG <enter> sempre que queremos controlar a saída ou não de um campo de edição de textos, ou seja, sempre que o usuário estiver digitando um texto nós podemos permitir que ele interrompa a digitação através da tecla Enter, ou algum valor inteiro. Observações: Você Sabia? 1. A TAG trabalha com dependência as seguintes TAGS: TAG <pos> Que além de impressoras-fiscais e nãofiscais a Daruma trabalha com "Totens"? TAG <edicao> Definição do Método: Parâmetros: 1. Parâmetro enter <enter>: A TAG enter deve ser utilizada da seguinte maneira no display do TA2000. <enter>0</enter> = Não permite que a ação seja interrompida com o uso do enter, a não ser que seja inserido algum dado no campo. <enter></enter> = Permite que o seja interrompida a ação, sem a necessidade do preenchimento total dos caracteres no campo a ser digitado. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <enter></enter> Exemplos: 104 DarumaFramework Abaixo apresentamos como podemos utilizar a TAG <enter></enter> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <edicao> //abro a tag que permite edição de textos pelo usuário <tamanho>10</tamanho> //tamanho do campo a ser editado <enter></enter> </edicao> 2. Exemplo: <pos> <edicao> //abro a tag que posiciona o cursor //abro a tag que permite edição de textos pelo usuário <eco>0</eco> //coloco uma máscara <enter></enter> <tipo>3</tipo> //tipo dos dados <tamanho>10</tamanho> //tamanho do campo a ser editado </edicao> </pos> TAG ESC Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <esc></esc> Bibliotecas: DarumaFramework.dll Olá! caro desenvolvedor, estaremos abaixo apresentando a TAG ESC <esc>, onde através dela será possível liberar ou travar a tecla ESC. De uma maneira simples você poderá permitir a utilização da tecla ESC para finalizar uma ação ou impedir o seu uso. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! 105 DarumaFramework - Help 2.5 Método: Definição: Esta tag permite travar ou liberar a tecla ESC no Display. Dica: Utilizamos a TAG <esc> sempre que queremos controlar a saída ou não de um campo de edição de textos, ou seja, sempre que o usuário estiver digitando um texto nós podemos permitir que ele conclua a digitação através da tecla ESC, e com isso sejam enviados os dados digitados, ou então travar a utilização da tecla ESC, para que o usuário tenha que digitar todos os campos solicitados pelo teu sistema. Observações: Você Sabia? 1. A TAG trabalha com dependência as seguintes TAGS: TAG <pos> Que você pode mesclar várias TAGs e enviá-las uma única vez para o display? TAG <edicao> TAG <menu> Definição do Método: Parâmetros: 1. A TAG ESC possui três parâmetros onde: <esc>0</esc>: A tecla ESC fica sem funcionalidade. <esc>1</esc>: Permite a saída da edição dos dados através da tecla ESC. <esc>-27</esc> : Impossibilita a saída da edição dos dados através da tecla ESC, voltando como retorno -27. 106 DarumaFramework Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <esc></esc> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <esc></esc> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <edicao> //abro a tag que permite edição de textos pelo usuário <tamanho>10</tamanho> <esc>-27</esc> //tamanho do campo a ser editado //Desabilito a tecla ESC para sair da digitação <coluna>12</coluna> //posiciona o cursor na coluna 12 </edicao> 2. Exemplo: <pos> <edicao> //abro a tag que posiciona o cursor //abro a tag que permite edição de textos pelo usuário <eco>0</eco> <tipo>3</tipo> //coloco uma máscara //tipo dos dados <tamanho>10</tamanho> <esc>1</esc> //tamanho do campo a ser editado //Habilita a tecla ESC para sair da digitação <linha>1</linha> //posiciona o cursor na linha 1 <coluna>3</coluna> //posiciona o cursor na coluna 3 </edicao> </pos> TAG Estilo Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <menu><estilo></estilo></menu> Bibliotecas: DarumaFramework.dll 107 DarumaFramework - Help 2.5 Caro desenvolvedor, estaremos abaixo apresentando a TAG Estilo <estilo>. É através dela que podemos definir qual será o estilo do menu de uma forma simples e prática! Usando esta TAG será possível definir qual será a forma de visualização do seu menu. Você poderá definir o menu como um menu com apenas uma opção por página, com duas opções por página, sendo estas visualizadas como um livro ou como rolagem padrão. Ou seja, usando esta simples TAG você definirá como será visualizado o seu menu para o usuário do seu software. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite definir o estilo do menu a ser criado no Display do TA2000. Dica: Veja como funciona os diversos estilos de visualização do Menu e adote um destes estilos por padrão no seu software, para que desta forma o usuário se acostume com um estilo de navegação em menus, e não se perca na navegabilidade do mesmo. Observações: 1. Esta TAG funciona apenas como um dos parâmetros dentro da TAG Menu. Definição do Método: Parâmetros: 108 DarumaFramework 1. Parâmetro Estilo <estilo>: Estilo da paginação do menu inserido no display do TA2000. <estilo>1</estilo> = Estilo de 1 opção por página. <estilo>2</estilo> = Estilo de 2 opções por página, com rolagem tipo livro. <estilo>3</estilo> = Estilo de 2 opções por página, com rolagem tipo rolagem. Dica: A diferença entre os estilos 2 e 3 está que no estilo 2 ao selecionar no teclado do TA2000 a opção para o próximo menu será apresentado uma nova tela. Por exemplo, digamos que você tenha em seu menu 3 opções (veja mais detalhes abaixo). Ok, aí você resolve teclar para o próximo tela de opções. No estilo 2 você continuará na mesma tela, mas na opção inferior do seu menu enquanto que no estilo 3 que funciona como uma barra de rolagem sempre a próxima opção do seu menu estará no topo do display; ou seja, a diferença entre estes estilos está apenas na forma como você os visualiza. Abaixo exemplos com o estilo 2 e com o estilo 3 de visualização: Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <estilo></estilo> Exemplos: 109 DarumaFramework - Help 2.5 Abaixo apresentamos como podemos utilizar a TAG <estilo> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <menu> <opcao1>Tela1</opcao1> <opcao2>Tela2</opcao2> <opcao3>Tela3</opcao3> <estilo>2</estilo> //2 opções por página <direcao>h</direcao> //Paginação horizontal </menu> 2. Exemplo: <menu> <opcao1>Tela1</opcao1> <opcao2>Tela2</opcao2> <opcao3>Tela3</opcao3> <opcao4>Tela4</opcao4> <opcao5>Tela5</opcao5> <estilo>1</estilo> //1 opção por página <direcao>v</direcao> //Paginação vertical </menu> Dica: Veja mais sobre o Menu e as TAGs disponíveis para o mesmo na TAG Menu. Este primeiro exemplo o menu irá correr horizontalmente, ou seja, através das teclas direcionais do teclado para a esquerda ou para a direita. Veja como será apresentado este exemplo: 110 DarumaFramework TAG GetDadoCampo Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <getdadocampo>#</getdadocampo> Bibliotecas: DarumaFramework.dll Olá! Caro desenvolvedor, estaremos abaixo apresentando a TAG GetDadoCampo <getdadocampo>, que possibilita a você desenvolvedor, com muita facilidade e organização, retirar os dados de um texto, ou campo no display do TA2000. Nesta TAG deixaremos seu desenvolvimento mais simples e prático. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: 111 DarumaFramework - Help 2.5 Definição: Esta tag capturar os dados presentes num campo. Dica: Esta tag <getdadocampo> foi desenvolvida em questão a auxiliar o desenvolvedor capturar o campo dentro do display, dando a possibilidade da seleção do campo pre-definido que será utilizado pelo usuário posição desejada. Observações: 1. O uso desta TAG somente irá funcionar com a utilização da TAG <campo>. 2. Deverá ser usada após a conclusão da utilização da Tag <setfocus> e deve ser usada somente uma por vez. 3. Toda vez que é selecionado o campo com este método ele captura toda a informação armazenada no campo. 4. Para ativar esta função utilizamos 0, para desativar e 1 para ativar. Definição do Método: Parâmetros: 1. Nenhum. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <getdadocampo></getdadocampo> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <getdadocampo> no método iEnviarDadosFormatados_TA2000_Daruma: 112 DarumaFramework 1. Exemplo: <campo><valor>1</valor> <tipo>3</tipo> <linha>1</linha> <coluna>10</coluna> </campo> <setfocus>1</setfocus> <getdadocampo>1</getdadocampo> 2. Exemplo: <limpar>0</limpar> <imprimir> <texto>Artigo:1234</texto> <linha>1</linha> <coluna>1</coluna> </imprimir> <imprimir> <texto>Descr:Agua semGas</texto> <linha>1</linha> <coluna>15</coluna> </imprimir> <imprimir> <texto>Valor:1234</texto> <linha>2</linha> <coluna>1</coluna> </imprimir> <imprimir> <texto>Qtda:</texto> <linha>2</linha> <coluna>12</coluna> </imprimir> <imprimir> <texto>'ESC': Confirma</texto> <linha>2</linha> <coluna>20</coluna> 113 DarumaFramework - Help 2.5 </imprimir> <campo> <valor>1</valor> <tipo>3</tipo> <tamanho>1</tamanho> <linha>2</linha> <coluna>17</coluna> </campo> <modocursor>2</modocursor> <setfocus>1</setfocus> <getdadocampo>1</getdadocampo> Dica: Preste atenção sempre na inclusão da TAG <setfocus> em seu comando para que tenha sucesso ao executar esta tag. TAG GetDadoCombo Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <getdadocombo>#</getdadocombo> Bibliotecas: DarumaFramework.dll Olá! Caro desenvolvedor, estaremos abaixo apresentando a TAG GetDadoCombo <getdadocombo>, que possibilita a você desenvolvedor, com muita facilidade e organização, retirar os dados de um combo do TA2000. Nesta TAG deixaremos seu desenvolvimento mais simples e prático. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: 114 DarumaFramework Definição: Esta tag capturar os dados presentes num combo. Dica: A tag <getdadocombo> foi desenvolvida em questão a auxiliar o desenvolvedor capturar o combo dentro do display, dando a possibilidade da seleção do combo pre-definido que sera utilizado pelo usuário posição desejada. Observações: 1. O uso desta TAG somente irá funcionar com a utilização da TAG <combo>. 2. Deverá ser usada após a conclusão da utilização da Tag <setfocus> e deve ser usada somente uma por vez. 3. Toda vez que é selecionado o campo com este método ele captura toda a informação armazenada no campo. 4. Para ativar esta função utilizamos 0, para desativar e 1 para ativar. Definição do Método: Parâmetros: 1. Nenhum. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <getdadocombo></getdadocombo> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <getdadocombo> no método iEnviarDadosFormatados_TA2000_Daruma: 115 DarumaFramework - Help 2.5 1. Exemplo: <getdadocombo>1</getdadocombo> Dica: Preste atenção sempre na inclusão da TAG <setfocus> em seu comando para que tenha sucesso ao executar esta tag. TAG Hint - Cabeçalho Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <menu><hint></hint></menu> Bibliotecas: DarumaFramework.dll Caro desenvolvedor, estaremos abaixo apresentando a TAG Hint <hint>. Esta TAG permite criar um cabeçalho ao seu menu de opções. Ou seja, usando esta simples TAG é possível definir um cabeçalho fixo no seu menu de opções, ficando o menu correndo apenas na segunda linha (tanto na vertical, quanto na horizontal) enquanto o cabeçalho fica fixo na primeira linha. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite criar um cabeçalho no menu para o Display do TA2000. Dica: 116 DarumaFramework O cabeçalho ajuda o usuário do menu a saber algo sobre as opções que ele está para selecionar, e você ainda pode permitir o menu a ser apresentado na posição horizontal ou vertical na segunda linha do Display. O Cabeçalho sempre é apresentado no centro do Display do TA2000, dispensando a utilização de tags de alinhamento ou de posicionamento do cabeçalho. Observações 1. Esta TAG funciona apenas como um dos parâmetros dentro da TAG Menu. Definição do Método: Parâmetros: 1. O método utiliza apenas um parâmetro que é o valor do cabeçalho do menu: <hint>X</hint>: Onde X deve ser o nome que se deseja inserir como cabeçalho do menu. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <hint></hint> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <hint> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <menu> <estilo>1</estilo> //1 opção por página <direcao>h</direcao> //Paginação horizontal 117 DarumaFramework - Help 2.5 <hint>Cabeçalho Daruma</hint> //Este cabeçalho fica na 1ª linha do display e as opções na 2ª. Funciona apenas com o estilo 1. <opcao1>Tela1</opcao1> <opcao2>Tela2</opcao2> <opcao3>Tela3</opcao3> </menu> 2. Exemplo: <menu> <estilo>1</estilo> //1 opção por página <direcao>v</direcao> //Paginação vertical <hint>Cabeçalho Daruma</hint> //Este cabeçalho fica na 1ª linha do display e as opções na 2ª. Funciona apenas com o estilo 1. <opcao1>Tela1</opcao1> <opcao2>Tela2</opcao2> <opcao3>Tela3</opcao3> </menu> Veja um exemplo de Menu na Vertical com Cabeçalho: TAG Linha Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <linha></linha> Bibliotecas: DarumaFramework.dll Olá! caro desenvolvedor, estaremos abaixo apresentando a TAG Linha <linha> onde através dela será possível apontar para o display do TA2000 onde o texto será apresentado ou editado. Ou seja, através 118 DarumaFramework desta simples TAG é possível dizer a linha que se estará editando ou apresentando o texto no Display do TA2000 para o usuário. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite selecionar a linha que será apresentado o texto no Display. Dica: Utilizamos a tag linha sempre que queremos precisar em qual linha será apresentado o texto. Caso não seja indicada a linha que será apresentado o texto por default o texto irá aparecer na primeira linha do Display. Observaçõe s: Você Sabia? 1. A TAG trabalha com dependência as seguintes TAGS: Que a TAG linha pode ser mesclada com outras TAGs? Veja as TAGs que alinham o texto à Esquerda, à Direita e ao Centro. Veja também a TAG que posiciona o texto em uma Coluna específica! TAG <imprimir> TAG <edicao> Definição do Método: Parâmetros: 119 DarumaFramework - Help 2.5 1. O método utiliza um Parâmetro: 2. Valor <linha>1</linha>: Indica que o texto será apresentado na Primeira linha do Display. 3. Valor <linha>2</linha>: Indica que o texto será apresentado na Segunda linha do Display. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <linha></linha> Dica: Por que usar o parâmetro de valor da linha? Porque desta forma você consegue controlar com precisão em qual linha do Display estará o seu texto. Exemplos: Abaixo apresentamos como podemos utilizar a TAG <linha></linha> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <imprimir> <texto>Daruma Desenvolvedor</texto> <linha>1</linha> </imprimir> 2. Exemplo: <edicao> <texto>Daruma Desenvolvedor</texto> <linha>2</linha> </edicao> TAG Mascara 120 DarumaFramework Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <edicao><mascara></mascara></edicao> Bibliotecas: DarumaFramework.dll Olá! caro desenvolvedor, estaremos abaixo apresentando a TAG Mascara <mascara>, onde através dela será possível no nosso desenvolvimento deixar marcado qual será o tipo de dado a ser inserido pelo usuário e sua quantidade através de uma única TAG, ou seja, usando esta simples TAG poderemos marcar um caracter como somente texto, ou somente números. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite definir quantos e quais serão os tipos dos caracteres a serem digitados no Display. Dica: Utilize esta TAG todas as vezes em que for validar informações originadas pela digitação do usuário do TA2000. Uma ótima idéia seria a de usar a TAG Mascara quando o usuário tiver que digitar um valor de uma mercadoria, ou o nome de um cliente. A TAG Mascara dispensa a utilização da TAG Tamanho e Tipo, pois a mesma define exatamente qual será o tamanho dos campos e o tipo dos dados a serem usados de uma só vez. Observações: 121 DarumaFramework - Help 2.5 1. Esta TAG funciona apenas como um dos parâmetros dentro da TAG Edicao. Definição do Método: Parâmetros: 1. O método pode utilizar até dois parâmetros, que definem o tipo de dado a ser apresentado: 2. Numérico #: Define que o texto a ser digitado poderá ser apenas Numérico. 3. Texto !: Define que o texto a ser digitado poderá ser apenas Texto. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <mascara></mascara> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <mascara></mascara> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <edicao> <mascara>R$#.###,## - Nome: !!!!!!!!!!!!!!!!</mascara> //Permite digitação somente de caracteres numéricos onde # e de texto onde !. </edicao> 2. Exemplo: <edicao> //Indica início de edição de texto pelo usuário <linha>2</linha> //Posiciona o texto na linha 2 <coluna>10</coluna> //Posiciona o texto na coluna 10 <mascara>##!!!####</mascara> //Permite digitação de 2 caracteres do tipo numérico, 3 do tipo texto e 4 do tipo numérico </edicao> 122 DarumaFramework Dica: Aproveite e misture tipos diferentes de caracteres dentro da TAG Mascara, conforme exemplo 2. Além da TAG Mascara você poderá usar outras tags dentro da TAG Edicao. TAG Menu Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <menu></menu> Bibliotecas: DarumaFramework.dll Caro desenvolvedor, estaremos abaixo apresentando a TAG Menu <menu>. É através dela que podemos criar menus de uma forma simples e prática! Lembrando que a alguns anos atrás isto era possível somente com muitas noites sem dormir para criar um menu para os Terminais Burros da época onde era necessário usar a linguagem C (Assembly) baixando cada vez mais o nível e gerando os Menus para seu cliente; pois bem, pensando nisso, nós da Daruma desenvolvemos uma TAG onde você irá criar menus interativos em menos de 10 minutos! Acredite! E é bem simples, pois através da nossa DLL de alto nível demos está possibilidade a você desenvolvedor! Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite criar menu dinâmicos para uso no Display do TA2000. Dica: 123 DarumaFramework - Help 2.5 O menu pode ser apresentado na posição horizontal ou vertical, além de criar interatividade com o cliente inserindo informações dentro do respectivo Menu. Observações 1. Através da TAG <esc>, podemos realizar a saída de dados, através do comando <esc>-27<;esc>, retornando para você desenvolvedor o retorno 27, indicando assim, que houve a saída de dados do Menu, ou seja, você poderá indicar ao seu cliente quando solicitar cancelar ou sair da opção de Menu, trabalhando melhor o retorno de suas informações com nossa DarumaFramework.dll. Definição do Método: Parâmetros: 1. O método utiliza quatro parâmetros: Estilo, Direção, ESC e Opção X; 2. Parâmetro Estilo <estilo>: Estilo da paginação do menu inserido no display do TA2000. <estilo>1</estilo> = Estilo de 1 opção por página; <estilo>2</estilo> = Estilo de 2 opções por página, com rolagem tipo livro; <estilo>3</estilo> = Estilo de 2 opções por página, com rolagem tipo rolagem. 3. Parâmetro Direção <direcao>: Indica a direção das paginas no Display; <direcao>h</direcao> = Paginação horizontal (teclas para cima e para baixo); <direcao>v</direcao> = Paginação vertical (teclas para esquerda e para direita). 4. Parâmetro ESC <esc>: Retorno o Menu em caso do uso da tecla ESC. Se o valor for 0 (zero), a tecla ESC será ignorada. Qualquer outro valor inteiro 124 DarumaFramework será o valor retornado pela método no caso do uso da tecla ESC, caso deseje utilizar a opção -27, o ESC possibilitará a saida de dados do Menu, ou seja, impossibilita a saída da edição dos dados através da tecla ESC, voltando como retorno -27; 5. Parâmetro Opção X <opcaox>: Indica o opção do menu, baseada no 'X' dentro da tag, onde pode variar de 1 à 20. 6. Parâmetro Hint <hint>: Indica um cabeçalho para o menu. (Funciona apenas no estilo 1 do menu): <hint>X</hint>: Onde X deve ser o nome que se deseja inserir como cabeçalho do menu. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <menu></menu> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <menu> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <menu> <opcao1>Tela1</opcao1> <opcao2>Tela2</opcao2> //Opção 1 do Menu //Opção 2 do Menu </menu> 2. Exemplo: <menu> <estilo>2</estilo> //2 opções por página <direcao>h</direcao> //Paginação horizontal <opcao1>Tela1</opcao1> <opcao2>Tela2</opcao2> 125 DarumaFramework - Help 2.5 <opcao3>Tela3</opcao3> </menu> 3. Exemplo: <menu> <estilo>1</estilo> //1 opção por página <direcao>v</direcao> //Paginação Vertical <hint>Cabeçalho</hint> //Este cabeçalho fica na 1ª linha do display e as opções na 2ª. Funciona apenas com o estilo 1. <opcao1>Tela1</opcao1> <opcao2>Tela2</opcao2> <opcao3>Tela3</opcao3> </menu> 4. Exemplo com a TAG <esc>-27<esc>: <menu> <estilo>1</estilo> <direcao>V</direcao> <hint>*** Escolha a Opcao: ***</hint> <opcao1>*Venda de Itens</opcao1> <opcao2>*Emitir Relatorio Gerencial</opcao2> <opcao3>*Realizar pgto com TEF</opcao3> <opcao4>*Reducao Z</opcao4> <esc>-27</esc> </menu> No segundo exemplo o menu irá correr horizontalmente, ou seja, através das teclas direcionais do teclado para a esquerda ou para a direita. Veja como será apresentado este exemplo: 126 DarumaFramework TAG Cursor Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <modocursor></modocursor> Bibliotecas: DarumaFramework.dll Olá! Caro desenvolvedor, estaremos abaixo apresentando a TAG do Cursor <modocursor>, no qual possibilita a você desenvolvedor um diferencial no momento onde estará colocando as informações no display, pois você pode deixar o display mais amigável, uma vez que a mesma tem a funcionalidade de alterar o modo de visualização do cursor presente no display, algo que antigamente no tempo da comunicação direta necessitava muito estudo e dedicação para os terminais agora com esta TAG deixaremos o seu desenvolvimento mais simples e prático. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! 127 DarumaFramework - Help 2.5 Método: Definição: Esta tag permite configurar o modo de visualização do cursor do Display. Dica: Este método permite interagir mais com o Display, possibilitando mais acessos facilitados ao usuário final. Com este método podemos demonstrar ao usuário mais organização no display, como por exemplo, podemos colocar um cursor diferenciado para inserir nomes, outro para editar alguma informação, enfim uma função interessante para caso o desenvolvedor queria mostrar seriedade no seu desenvolvimento. Você Sabia? Observações: 1. Nenhuma. Que somos um dos mais conceituados suportes nacionais presente no Brasil! Um atendimento de Alto Nivel! Ligue e descubra você mesmo: 0800 770 33 20. Definição do Método: Parâmetros: 1. O método pode utilizar até três parâmetros: 0, 1 ou 2; 2. Parâmetro "0": Permite zerar o cursor, ou seja, sem cursor; 3. Parâmetro "1": Permite o uso do cursor simples com visualização estática; 4. Parâmetro "2": Permite o uso do cursor simples com visualização em Modo 'piscante'. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <modocursor></modocursor> Exemplos: 128 DarumaFramework Abaixo apresentamos como podemos utilizar a TAG no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo sem visualizar o cursor: <modocursor>0</modocursor> // sem cursor 2. Exemplo mostrando o cursor piscante: <modocursor>2</modocursor> //modo piscante Dica: Aproveite e brinque com o modo de visualização do cursor. Uma vez enviado este método todos os demais que se seguirem após ele irão manter o cursor do display no padrão que você definiu aqui. Ou seja, você pode usar ele estático quando apresentar para ao usuário menus ou frases e um menu piscante quando o usuário tiver que digitar alguma informação no display. TAG OpcaoX Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <menu><opcaoX></opcaoX></menu> Bibliotecas: DarumaFramework.dll Caro desenvolvedor, estaremos abaixo apresentando a TAG de Opções <opcaoX>. É através dela que podemos declarar qual será o valor de cada opção no menu, e isso de uma forma simples e prática! Esta TAG é essencial para a utilização dos menus, e é através dela 129 DarumaFramework - Help 2.5 que você irá receber o valor da opção selecionada pelo usuário no seu menu do Display do TA2000. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite definir o valor de cada opção do menu no Display do TA2000. Dica: As opções do menu podem variar apenas de 1 a 20, mas você só conseguirá usar as opções seguindo sempre a seqüência de 1 a 20. Observações: 1. Esta TAG funciona apenas como um dos parâmetros dentro da TAG Menu. Definição do Método: Parâmetros: 1. Parâmetro Opção X <opcaoX>: Indica o opção do menu, baseada no 'X', onde pode variar de 1 à 20 sequencialmente. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <opcaoX></opcaoX> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <opcaoX> 130 Você Sabia? Que a Daruma está presente em mais de 40 Países! DarumaFramework no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <menu> <opcao1>Tela1</opcao1> //Opção 1 do Menu <opcao2>Tela2</opcao2> //Opção 2 do Menu </menu> 2. Exemplo: <menu> <opcao1>Tela1</opcao1> <opcao2>Tela2</opcao2> <opcao3>Tela3</opcao3> <opcao4>Tela4</opcao4> <opcao5>Tela5</opcao5> <opcao6>Tela6</opcao6> <opcao7>Tela7</opcao7> <opcao8>Tela8</opcao8> <opcao9>Tela9</opcao9> <estilo>2</estilo> //2 opções por página <direcao>h</direcao> //Paginação horizontal </menu> TAG SetFocus Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <setfocus></setfocus> Bibliotecas: DarumaFramework.dll Olá! Caro desenvolvedor, estaremos abaixo apresentando a TAG <setfocus>, uma tag criada especialmente a você, para visualizar de forma facilitada alguma informação do display, colocando um foco 131 DarumaFramework - Help 2.5 nele, algo que você já conhece de muitos aplicativos já desenvolvidos e sabem a grande utilização deste método. Já pensou como ficará fácil agora colocar um foco especial em seu desenvolvimento? Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite 'focar' o campo selecionado. Dica: Utilizamos este método para demonstrar ao usuário algum local ou algum pedido de atenção no display do TA2000, onde está tag irá permitir focar o campo selecionado, desta forma facilita mais a interação com o usuário final dentro do seu desenvolvimento. Observações: 1. Está tag é necessária a utilização da tag <campo></campo>, e ou tag <combo></combo> somente deste modo irá ativar a método. Definição do Método: Parâmetros: 1. O método utiliza um parâmetro: SetFocus 1 = Ativa o campo. 2 = Ativa os campos com foco inicialmente no segundo. Nomenclatura: 132 DarumaFramework Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <setfocus>#</setfocus> Exemplos: Abaixo está listado como podemos utilizar a TAG no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <imprimir> <texto>Nome:</texto> //imprimi o texto </imprimir> <campo></campo> //Ativa o campo para o foco <setfocus>1</setfocus> //Seleciona o foco no campo 2. Exemplo: <imprimir> <texto>Nome:</texto> //imprime o texto "Nome:" </imprimir> <campo> <tipo>2</tipo> <tamanho>15</tamanho> //aceita apenas letras //o tamanho do campo sera 15 </campo> <imprimir> <texto>Fone:</texto> //imprime o texto "Fone:" <linha>2</linha> //na 2º linha </imprimir> <campo> <tipo>1</tipo> <tamanho>8</tamanho> //aceita apenas números //o tamanho do campo será 8 </campo> <setfocus>2</setfocus> //ativa os campos com foco inicialmente no 2º 133 DarumaFramework - Help 2.5 TAG Tamanho Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <edicao><tamanho></tamanho></edicao> Bibliotecas: DarumaFramework.dll Caro desenvolvedor, estaremos abaixo apresentando a TAG Tamanho <tamanho>, que permite que você desenvolvedor defina qual será o tamanho do campo a ser digitado (editado) pelo usuário do seu software. Simplificamos para você, que agora não precisa mais descer até o nível mais baixo para falar com o microterminal, através da utilização desta simples tag a definição do tamanho dos campos a serem editados no Display do TA2000. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar no desenvolvimento da função. Bom trabalho! Método: Definição: Esta tag permite definir qual será o tamanho dos campos a serem editados no Display do TA2000. Dica: Use esta TAG todas as vezes em que for permitir a entrada de dados pelo Teclado através da TAG Edicao. A TAG Mascara dispensa a utilização da TAG Tamanho pois a mesma define exatamente qual será o tamanho dos campos e o tipo dos dados a serem usados de uma só vez. Observações: 134 DarumaFramework 1. Esta TAG funciona apenas como um dos parâmetros dentro da TAG Edicao. Definição do Método: Parâmetros: 1. Parâmetro Tamanho: Indica o tamanho do campo para a digitação, onde: <tamanho>X</tamanho> = Define o tamanho do campo a ser editado, onde X corresponde a quantidade de caracteres a serem editados. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <tamanho></tamanho> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <tamanho></tamanho> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <edicao> //realiza o inicio da edição <tamanho>12</tamanho> //Permite a digitação de 12 caracteres </edicao> 2. Exemplo: <edicao> //realiza o inicio da edição <tipo>1</tipo> //define a entrada de dados como somente do tipo numérico <tamanho>2</tamanho> //tamanho do campo a ser digitado, no caso 2 </edicao> 3. Exemplo: 135 DarumaFramework - Help 2.5 <edicao> //realiza o inicio da edição <esc>1</esc> //Habilita a tecla ESC para sair da digitação a qualquer momento <tipo>1</tipo> //define a entrada de dados como somente do tipo numérico <tamanho>10</tamanho> //tamanho do campo a ser digitado, no caso 10 </edicao> Dica: Seguindo o nosso Exemplo 3, para que o usuário não tenha a obrigação de digitar todos os campos até o final deles, conforme você os tenha definido (no exemplo 3 o tamanho é de 10 dígitos) você pode permitir o término da digitação liberando a tecla ESC. Veja mais sobre a TAG ESC. TAG Tipo Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <edicao><tipo></tipo></edicao> Bibliotecas: DarumaFramework.dll Caro desenvolvedor, estaremos abaixo apresentando a TAG Tipo <tipo>, onde através dela é possível se definir qual será o tipo dos dados a serem editados pelo usuário. A utilização desta TAG ajudará você a definir de uma forma clara e fácil qual será o tipo de entrada de dados que você receberá, o que evitará que você tenha de fazer este tipo de validação no seu próprio software. Usando esta TAG você definirá se a entrada de dados do usuário será de caracteres numéricos, de texto ou alfanuméricos. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar no desenvolvimento da função. Bom trabalho! Método: 136 DarumaFramework Definição: Esta tag permite definir quais serão os tipos de dados digitados no Display do TA2000. Dica: Utilize esta TAG todas as vezes em que for receber alguma informação do usuário e que você precise definir qual será o tipo dos dados a serem digitados, como numéricos para valores, e como texto para nomes por exemplo. Isso evitará inconsistência nos dados do teu software. A TAG Mascara dispensa a utilização da TAG Tipo pois a mesma define exatamente qual será o tamanho dos campos e o tipo dos dados a serem usados de uma só vez. Observações: 1. Esta TAG funciona apenas como um dos parâmetros dentro da TAG Edicao. 2. Caso você necessite utilizar os caracteres especiais abaixo junto com o padrão do teclado QWERT no Display do TA2000 basta você não utilizar o parametro Tipo em sua composição. Ex. de Caracteres: ~!@#$%^&*()-_+=[]{};:'"\|,<.>/?`. Definição do Método: Parâmetros: 1. Parâmetro Tipo: Filtra os dados à serem digitados pelo usuário, onde temos: <tipo>1</tipo> = Permite a digitação apenas de caracteres numéricos. <tipo>2</tipo> = Permite a digitação apenas de caracteres texto. <tipo>3</tipo> = Permite a digitação de caracteres Alfa-Numéricos. Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <tipo></tipo> 137 DarumaFramework - Help 2.5 Exemplos: Abaixo apresentamos como podemos utilizar a TAG <tipo> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo: <edicao> //realiza o inicio da edição <tipo>1</tipo> //tipo numérico <tamanho>5</tamanho> //tamanho do campo a ser digitado, no caso 5 caracteres </edicao> 2. Exemplo: <edicao> //realiza o inicio da edição <linha>2</linha> <coluna>10</coluna> <eco>!</eco> //posiciona o cursor na linha 2 //posiciona o cursor na coluna 10 //ecoa na tela do Display apenas caracteres do tipo ! <tipo>1</tipo> //tipo numérico <tamanho>2</tamanho> //tamanho do campo a ser digitado, no caso 2 </edicao> Dica: Além da TAG Tipo, combine mais TAGs dentro da TAG Edição . TAG Valor Método: iEnviarDadosFormatados_TA2000_Daruma Produto: TA2000. Tipo: <campo><valor></valor></campo> Bibliotecas: DarumaFramework.dll 138 DarumaFramework Olá! caro desenvolvedor, estaremos abaixo apresentando a TAG Valor <valor>, onde através dela é possível definir um texto de fundo no campo de digitação. Ou seja, de uma forma simples e prática, quando você estiver usando a TAG Campo, você poderá usar esta TAG para deixar um texto de fundo dentro do campo de digitação. Abaixo estaremos usando alguns termos mais técnicos e dicas para o auxiliar na utilização desta tag do método iEnviarDadosFormatados_TA2000_Daruma. Bom trabalho! Método: Definição: Esta tag permite setar um texto de fundo em um campo de entrada de dados. Dica: Não se esqueça de que esta TAG permite que o texto fique no fundo do campo, o que implica que quando o usuário começar a digitar o texto, o mesmo irá ser escrito por cima do valor que você passou para o campo. Isso pode causar uma confusão no seu usuário, caso ele não esteja acostumado a digitar um texto em cima de um valor no Display, mas pode ser uma TAG que facilita a sua vida, caso você esteja com pouco espaço no Display e precise usar um campo de digitação pequeno. Teste ela e veja o que de melhor você pode aproveitar! Observações: 1. Esta TAG funciona apenas como um dos parâmetros dentro da TAG Campo. Definição do Método: Parâmetros: 139 DarumaFramework - Help 2.5 1. Parâmetro Valor: Indica o texto que aparecerá dentro do campo de entrada de dados: <valor>X</valor>: Onde X indica o texto que aparecerá dentro do campo na tela do Display Nomenclatura: Windows: iEnviarDadosFormatados_TA2000_Daruma TAG: <valor></valor> Exemplos: Abaixo apresentamos como podemos utilizar a TAG <valor> no método iEnviarDadosFormatados_TA2000_Daruma: 1. Exemplo <campo> <valor>Daruma Automação</valor> //imprime o texto "Daruma Automação" <tamanho>16</tamanho> //o tamanho do campo será de 16 caracteres </campo> <setfocus>1</setfocus> //ativa o campo 2. Exemplo <campo> <valor>Cidade:</valor> <tipo>1</tipo> //imprime o texto "Cidade:" //aceita apenas números <linha>2</linha> //posiciona na linha 2 <coluna>20</coluna> //posiciona na coluna 20 <tamanho>15</tamanho> //o tamanho do campo será de 15 caracteres </campo> <setfocus>1</setfocus> //ativa o campo Dica: Aproveite e conheça as demais TAGs disponíveis na utilização da TAG Campo. 140 DarumaFramework Caso não queira que o texto fique de fundo no campo, mas queira que o seu texto fique firme na tela use a TAG Imprimir e a TAG Texto. Preparamos para você um exemplo assim dentro do segundo exemplo da TAG Campo, veja! Modem Metodos para Transmissao tEnviarDadosCsd_MODEM_Dar umaFramework Método: tEnviarDadosCsd_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: Bibliotecas: DarumaFramework.dll Método: Definição: Permite enviar dados através da conexão csd. Observações: 1. Nenhuma. Definição do Método: 141 DarumaFramework - Help 2.5 Parâmetros: 1. stDados. Variável string no qual você devera inserir os dados a ser enviado pelo modem. Nomenclatura: Windows: tEnviarDadosCsd_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro na comunicação da serial. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem--} function tEnviarDadosCsd_MODEM_DarumaFramework(sDados: String): Integer; StdCall; External Declaração 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; sDados: String; Função begin sDados := MN_dadosEnviados.Lines.Text; iRetorno := tEnviarDadosCsd_MODEM_DarumaFramework(sDados); edRetornoDeFuncoes.Text := IntToStr(iRetorno); 142 DarumaFramework VB6 Declaração Método Public Declare Function tEnviarDadosCsd_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sParam String) As Integer Dim iRetorno As Integer Dim sDados As String Função sDados = ED_dadosEnviados.Text iRetorno = tEnviarDadosCsd_MODEM_DarumaFramework(sDados) ED_RetornoDeFuncoes.Text = iRetorno C# Declaração Método [DllImport("DarumaFrameWork.dll")] public static extern int tEnviarDadosCsd_MODEM_DarumaFramework(System.String sParametro); string sDados = ED_dadosEnviados.Text; DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.tEnviarDadosCsd_MODEM_DarumaFramework if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { ED_RetornoDeFuncoes.Text = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno.ToString(); } Função else { MessageBox.Show("Erro ao tentar enviar Dados", "Daruma DLL Framework", MessageBoxButtons.OK MessageBoxIcon.Error); switch (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno) { case -1: ED_RetornoDeFuncoes.Text = "[-1] - Erro de comunicação serial"; break; } } VBNet Declaração Método Public Declare Function tEnviarDadosCsd_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sParam String) As Integer 143 DarumaFramework - Help 2.5 Dim iRetorno As Integer Dim sDados As String Função sDados = ED_dadosEnviados.Text iRetorno = tEnviarDadosCsd_MODEM_DarumaFramework(sDados) ED_RetornoDeFuncoes.Text = iRetorno tEnviarSMS_MODEM_DarumaFr amework Método: tEnviarSMS_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 48 Bibliotecas: DarumaFramework.dll Método: Definição: Permite enviar a mensagem para um celular de destino através do modem. Dia-a-Dia: Existem diversos modos no qual você poderá aplicar esta função, como por exemplo o envio para uma lista com telefones, ou ate mesmo utilizar a função para enviar informações necessárias aos seus destinatários. Dica: O método é geralmente usado quando o desenvolvedor deseja que a DarumaFramework, envie uma determinada informação ao seu destinario final. Exemplos para Envio de Mensagens: 144 DarumaFramework Os exemplos abaixo, ajudaram você desenvolvedor a entender como enviar mensagens: a. stNumeroTelefone. Variável string no qual você devera informar o numero do destinario. Ex.: 01292289860, informando o DDD para o envio da mensagem; Ex.2: 89457852, caso o numero no qual a mensagem será enviada, esteja na mesma localidade do seu CHIP, como por exemplo, estou usando um CHIP do estado de São Paulo(interior), no qual seria 012, sendo assim não necessito informar o DDD para enviar mensagens para os celulares presentes no Código de Área. b. stMensagem. Variável string no qual você devera inserir a informação a ser enviada pelo modem, respeitando o limite de 140 caracteres. Ex.: Ola! Desenvolvedor Daruma! Observações: 1. Nenhuma. Definição do Método: Parâmetros: 1. stNumeroTelefone. Variável string no qual você devera informar o numero do destinario. 2. stMensagem. Variável string no qual você devera inserir a informação a ser enviada pelo modem, respeitando o limite de 140 caracteres. Nomenclatura: Windows: tEnviarSMS_MODEM_DarumaFramework 145 DarumaFramework - Help 2.5 Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro na comunicação da serial. -2: Modem retornou erro. -3: Modem retornou caractere(s) invalido(s) Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem--} function tEnviarSMS_MODEM_DarumaFramework(sNumeroTelefone: String; sMensagem: String ): Integer; StdC Declaração 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno : Integer; sNumeroTelefone : String; sMensagem : String; begin Função sNumeroTelefone := EB_NumeroTelefone.Text; sMensagem := MN_Mensagem.Lines.Text; if ( MN_Mensagem.Lines.Text = '' ) then ShowMessage('É preciso digitar o numero do telefone para envio do SMS diferente de 0') else begin iRetorno := tEnviarSMS_MODEM_DarumaFramework( sNumeroTelefone, sMensagem ); if (iRetorno = 1) then begin 146 DarumaFramework Application.MessageBox('Mensagem Enviada com Sucesso', 'Daruma DLL Framework', MB_OK + 32); MN_ModemResposta.Lines.Text := IntToStr(iRetorno); end else begin Application.MessageBox('Erro ao enviar a mensagem','Daruma DLL Framework', MB_OK + MB_ICONERROR); MN_ModemResposta.Lines.Text := IntToStr(iRetorno); end; end; end; VB6 Declaração Método Public Declare Function tEnviarSms_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sNumeroTe String, ByVal sMensagem As String) As Integer Dim iRetorno As Integer Dim sNumeroTelefone As String Dim sMensagem As String sNumeroTelefone = TB_NumeroTelefone.Text() sMensagem = TB_Mensagem.Text() If (TB_Mensagem.Text = "") Then MsgBox("É preciso digitar o numero do telefone para envio do SMS diferente de 0") Else iRetorno = tEnviarSms_MODEM_DarumaFramework(sNumeroTelefone, sMensagem) If (iRetorno = 1) Then Função MsgBox("Mensagem Enviada com Sucesso!", vbInformation, "Daruma DLL Framework") TB_RespostaModem.Text = iRetorno Else MsgBox("Erro ao enviar a mensagem.", vbInformation, "Daruma DLL Framework") Select Case (iRetorno) Case "-3" : TB_RespostaModem.Text = "[-3] - Modem retornou caractere(s) inválido(s)" Case "-2" : TB_RespostaModem.Text = "[-2] - Modem retornou erro" Case "-1" : TB_RespostaModem.Text = "[-1] - Erro de comunicação serial" End Select End If End If C# Método [DllImport("DarumaFrameWork.dll")] Declaração public static extern int tEnviarSms_MODEM_DarumaFramework(System.String sNumeroTelefone, System.String sMensagem); string sNumeroTelefone; string sMensagem; Função sNumeroTelefone = TB_NumeroTelefone.Text; sMensagem = TB_Mensagem.Text; 147 DarumaFramework - Help 2.5 if (TB_NumeroTelefone.Text == "") { MessageBox.Show("É preciso digitar o numero do telefone para envio do SMS diferente de 0", "Darum Framework", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.tEnviarSms_MODEM_DarumaFramework(sNum sMensagem); } if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Mensagem Enviada com Sucesso!", "Daruma DLL Framework", MessageBoxButto MessageBoxIcon.Information); TB_RespostaModem.Text = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorn } else { MessageBox.Show("Erro ao enviar a mensagem.", "Daruma DLL Framework", MessageBoxButtons.OK MessageBoxIcon.Error); TB_RespostaModem.Text = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorn } VBNet Declaração Método Public Declare Function tEnviarSms_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sNumeroTe String, ByVal sMensagem As String) As Integer Dim iRetorno As Integer Dim sNumeroTelefone As String Dim sMensagem As String sNumeroTelefone = TB_NumeroTelefone.Text() sMensagem = TB_Mensagem.Text() If (TB_Mensagem.Text = "") Then MsgBox("É preciso digitar o numero do telefone para envio do SMS diferente de 0") Else iRetorno = tEnviarSms_MODEM_DarumaFramework(sNumeroTelefone, sMensagem) Função If (iRetorno = 1) Then MsgBox("Mensagem Enviada com Sucesso!", vbInformation, "Daruma DLL Framework") TB_RespostaModem.Text = iRetorno Else MsgBox("Erro ao enviar a mensagem.", vbInformation, "Daruma DLL Framework") Select Case (iRetorno) Case "-3" : TB_RespostaModem.Text = "[-3] - Modem retornou caractere(s) inválido(s)" Case "-2" : TB_RespostaModem.Text = "[-2] - Modem retornou erro" Case "-1" : TB_RespostaModem.Text = "[-1] - Erro de comunicação serial" End Select End If 148 DarumaFramework End If Metodos para Registro regVelocidade_MODEM_Darum aFramework Método: regVelocidade_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 73 Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor configurar a velocidade no qual a sua porta de comunicação ira trabalhar, sendo ela 9600, 38400 ou 115200, por padrão o modem esta inicialmente configurado para 9600, onde através deste registro você poderá alterar a velocidade conforme a sua necessidade. Observações: 1. O modem trabalha com as velocidades em BPS, disponível na porta serial, lembrando que está configuração não diz respeito a velocidade no qual a mensagem será enviada até seu destinatário e sim a velocidade de comunicação com a porta serial e o Modem. 2. Devemos sempre observar a velocidade que o Modem estará configurado, pois caso a velocidade da sua porta não estiver igual a velocidade do Modem, não haverá comunicação. 149 DarumaFramework - Help 2.5 Definição do Método: Parâmetros: 1. sParametro. Variável string no qual você devera informar o valor que será usado no parametro, no caso, a velocidade no qual estará o modem. 2. iRetorno. Variável integer no qual irá informar o retorno do método. Nomenclatura: Windows: regVelocidade_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro de atualização de Chave. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi 150 Método DarumaFramework {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem--} Declaração function regVelocidade_MODEM_DarumaFramework(stParametro: String): Integer; StdCall; External 'DarumaFr {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regVelocidade_MODEM_DarumaFramework('9600'); end; VB6 Método Declaração Public Declare Function regVelocidade_MODEM_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stParame Integer Dim iRetorno As Integer Função iRetorno = regVelocidade_MODEM_DarumaFramework("9600") End C# Método [DllImport("DarumaFrameWork.dll")] Declaração public static extern int regVelocidade_MODEM_DarumaFramework(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denomi Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regVelocidade_MODEM_DarumaFr VBNet Método Declaração Public Declare Function regVelocidade_MODEM_DarumaFramework Lib "Darumaframework.dll" (ByVal stParame Integer Dim iRetorno As Integer Função iRetorno = regVelocidade_MODEM_DarumaFramework("9600") End 151 DarumaFramework - Help 2.5 regBandejaInicio_MODEM_Dar umaFramework Método: regBandejaInicio_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 69 Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor configurar a bandeja que o modem irá iniciar com o CardSim(chip), SIM1 ou SIM2. Observações: 1. Esta chave só tem efeito para o modelo de modem (MIN200D e MIN200E) Definição do Método: Parâmetros: 1. sParametro. Variável string no qual você devera informar os parametros no qual o comando irá executar, sendo ele "SIM1" ou "SIM2". 2. iRetorno. Variável integer no qual irá informar o retorno do método. Nomenclatura: Windows: regBandejaInicio_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 152 DarumaFramework 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro de atualização de Chave. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem--} Declaração function regBandejaInicio_MODEM_DarumaFramework(sParametro: String): Integer; StdCall; External 'Daruma {$R *.dfm} var stCaption: string; boRetorno: Boolean; iRetorno: Integer; begin stCaption := ''; boRetorno := InputQuery('Daruma DLL Framework', 'Digite SIM1 ou SIM2, para definir qual Bandeja o modem if ((boRetorno = True) and (stCaption <> '')) then begin Função iRetorno := regBandejaInicio_MODEM_DarumaFramework(stCaption); if (iRetorno = 1) then begin Application.MessageBox('Configuração realizada com sucesso.', 'Daruma DLL Framework', MB_OK + MB_ end else begin Application.MessageBox('Erro ao Configurar a chave do Registro','Daruma DLL Framework', MB_OK + MB end; end; 153 DarumaFramework - Help 2.5 VB6 Método Declaração Public Declare Function regBandejaInicio_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sParam Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Digite SIM1 ou SIM2, para definir qual Bandeja o modem deve iniciar", "Daruma DLL boRetorno = True If (boRetorno = False) Or (boTexto = "") Then MsgBox("Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework") Função Else iRetorno = regBandejaInicio_MODEM_DarumaFramework(boTexto) If (iRetorno = 1) Then MsgBox("Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao Configurar a chave do Registro", vbInformation, "Daruma DLL Framework") End If End If C# Declaração Método [DllImport("DarumaFrameWork.dll")] public static extern int regBandejaInicio_MODEM_DarumaFramework(System.String sParametro); string STR_Retorno_CaixaInput; STR_Retorno_CaixaInput = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.InputBox para definir qual Bandeja o modem deve iniciar", "SIM1"); if (STR_Retorno_CaixaInput != "Erro ao incluir dados no Registro(Registry)!" | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Realizando Configuração...", "Daruma DLL Framework", MessageBoxButtons.OK, DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regBandejaInicio_MODEM_DarumaFramework } Função if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regBandejaInicio_MODEM_DarumaFramework MessageBox.Show("Configuração realizada com sucesso", "Daruma DLL Framework", MessageBoxBu MessageBoxIcon.Information); } else { MessageBox.Show("Erro ao incluir dados no Registro(Registry)!", "Daruma DLL Framework", Message MessageBoxIcon.Error); } VBNet Método Declaração Public Declare Function regBandejaInicio_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sParam 154 DarumaFramework Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Digite SIM1 ou SIM2, para definir qual Bandeja o modem deve iniciar", "Daruma DLL boRetorno = True If (boRetorno = False) Or (boTexto = "") Then MsgBox("Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework") Função Else iRetorno = regBandejaInicio_MODEM_DarumaFramework(boTexto) If (iRetorno = 1) Then MsgBox("Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao Configurar a chave do Registro", vbInformation, "Daruma DLL Framework") End If End If regCaptionWinAPP_MODEM_D arumaFramework Método: regCaptionWinAPP_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 69 Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor configurar o nome da janela no qual ira receber o alerta da existência de novas SMS não lidas. Observações: 1. Esta chave deve conter o nome da janela no qual ira receber o alerta. Exemplo "MODEM DARUMA". 155 DarumaFramework - Help 2.5 Chaves-Interligadas: 1. Está chave esta interligada com a utilização das chaves abaixo: Thread; TempoAlertar. Definição do Método: Parâmetros: 1. sParametro. Variável string no qual você devera informar os parametros no qual o comando irá executar, sendo ele "TRUE" ou "FALSE". 2. iRetorno. Variável integer no qual irá informar o retorno do método. Nomenclatura: Windows: regCaptionWinAPP_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro de atualização de Chave. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: 156 DarumaFramework Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem--} Declaração function regCaptionWinAPP_MODEM_DarumaFramework(sParametro: String): Integer; StdCall; External 'Darum {$R *.dfm} var stCaption: string; boRetorno: Boolean; iRetorno: Integer; begin stCaption := ''; boRetorno := InputQuery('Daruma DLL Framework', 'Digite o nome da Janela(Caption) que receberá o alerta d stCaption); if ((boRetorno = True) and (stCaption <> '')) then begin Função iRetorno := regCaptionWinAPP_MODEM_DarumaFramework(stCaption); if (iRetorno = 1) then begin Application.MessageBox('Configuração realizada com sucesso.', 'Daruma DLL Framework', MB_OK + MB_ end else begin Application.MessageBox('Erro ao Configurar a chave do Registro','Daruma DLL Framework', MB_OK + MB end; end; end; VB6 Método Declaração Public Declare Function regCaptionWinAPP_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sPara Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Digite o nome da Janela(Caption) que receberá o alerta de SMS UNREAD!", "Daruma boRetorno = True Função If (boRetorno = False) Or (boTexto = "") Then MsgBox("Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework") Else iRetorno = regCaptionWinAPP_MODEM_DarumaFramework(boTexto) If (iRetorno = 1) Then MsgBox("Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework") 157 DarumaFramework - Help 2.5 Else MsgBox("Erro ao Configurar a chave do Registro", vbInformation, "Daruma DLL Framework") End If End If C# Declaração Método [DllImport("DarumaFrameWork.dll")] public static extern int regCaptionWinAPP_MODEM_DarumaFramework(System.String sParametro); string STR_Retorno_CaixaInput; STR_Retorno_CaixaInput = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.InputBox Janela(Caption) que receberá o alerta de SMS UNREAD", "Modem - Daruma Telecom"); if (STR_Retorno_CaixaInput != "Erro ao incluir dados no Registro(Registry)!" | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Realizando Configuração...", "Daruma DLL Framework", MessageBoxButtons.OK, DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regCaptionWinAPP_MODEM_DarumaFramewo } if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) Função { DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regCaptionWinAPP_MODEM_DarumaFramewo MessageBox.Show("Configuração realizada com sucesso", "Daruma DLL Framework", MessageBoxBu MessageBoxIcon.Information); } else { MessageBox.Show("Erro ao incluir dados no Registro(Registry)!", "Daruma DLL Framework", Message MessageBoxIcon.Error); } VBNet Método Declaração Public Declare Function regCaptionWinAPP_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sPar Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Digite o nome da Janela(Caption) que receberá o alerta de SMS UNREAD!", "Daruma boRetorno = True If (boRetorno = False) Or (boTexto = "") Then Função MsgBox("Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework") Else iRetorno = regCaptionWinAPP_MODEM_DarumaFramework(boTexto) If (iRetorno = 1) Then MsgBox("Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao Configurar a chave do Registro", vbInformation, "Daruma DLL Framework") 158 DarumaFramework End If End If regLerApagar_MODEM_Darum aFramework Método: regLerApagar_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 70 Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor executar após que seja lida a mensagem no CardSim, seja apagada automaticamente evitando assim, que a memória do CardSim lote. Observações: 1. Esta chave deve estar habilitada como "TRUE" para executar a função antes do aplicativo inicializar. Definição do Método: Parâmetros: 1. sParametro. Variável string no qual você devera informar os parametros no qual o comando irá executar, sendo ele "TRUE" ou "FALSE". 2. iRetorno. Variável integer no qual irá informar o retorno do método. Nomenclatura: 159 DarumaFramework - Help 2.5 Windows: regLerApagar_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro de atualização de Chave. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem--} Declaração function regLerApagar_MODEM_DarumaFramework(stParametro: String): Integer; StdCall; External 'DarumaFra {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regLerApagar_MODEM_DarumaFramework('TRUE'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== MODEM ===========' Declaração Public Declare Function regLerApagar_MODEM_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stParame Integer 160 DarumaFramework Dim iRetorno As Integer Função iRetorno = regLerApagar_MODEM_DarumaFramework("TRUE") End C# Método //*************Métodos para MODEM************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regLerApagar_MODEM_DarumaFramework(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denomi Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regLerApagar_MODEM_DarumaFra VBNet Método '**********************************************************************' MODEM Declaração Public Declare Function regLerApagar_MODEM_DarumaFramework Lib "Darumaframework.dll" (ByVal stParamet Integer Dim iRetorno As Integer Função iRetorno = regLerApagar_MODEM_DarumaFramework("TRUE") End regPorta_MODEM_DarumaFra mework Método: regPorta_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 71 Bibliotecas: DarumaFramework.dll Método: 161 DarumaFramework - Help 2.5 Definição: Permite ao desenvolvedor configurar a Porta Serial, no qual ira executar a comunicação com o modem, esta chave por padrão esta configurada como DEFAULT, necessitando no atual momento que seja realizado a configuração da porta serial, para haver comunicação com o periférico. Observações: 1. Nenhuma. Definição do Método: Parâmetros: 1. sParametro. Variável string no qual você devera informar o valor que será usado no parametro, no caso, a porta de comunicação no qual estará o modem. 2. iRetorno. Variável integer no qual irá informar o retorno do método. Nomenclatura: Windows: regPorta_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro de atualização de Chave. Exemplos: 162 DarumaFramework Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem} Declaração function regPorta_MODEM_DarumaFramework(stParametro: String): Integer; StdCall; External 'DarumaFrameW {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regPorta_MODEM_DarumaFramework('COM1'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== MODEM ===========' Declaração Public Declare Function regPorta_MODEM_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stParametro A Integer Dim iRetorno As Integer Função iRetorno = regPorta_MODEM_DarumaFramework("COM1") End C# Método //*************Métodos para MODEM************ Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regPorta_MODEM_DarumaFramework(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando out denominação. Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regPorta_MODEM_DarumaFramew 163 DarumaFramework - Help 2.5 VBNet Método '**********************************************************************' MODEM Declaração Public Declare Function regPorta_MODEM_DarumaFramework Lib "Darumaframework.dll" (ByVal stParametro As Integer Dim iRetorno As Integer Função iRetorno = regPorta_MODEM_DarumaFramework("COM1") End regTempoAlertar_MODEM_Dar umaFramework Método: regTempoAlertar_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 84 Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor determinar em quantos segundos a chave ativada regThread_MODEM_DarumaFramework, devera retornar ao usuário que tem um novo SMS não lido através da chave regCaptionWinAPP_MODEM_DarumaFramework. Observações: 1. Esta chave deve estar habilitada como "TRUE" para executar a função antes do aplicativo inicializar. 164 DarumaFramework Chaves-Interligadas: 1. Está chave esta interligada com a utilização das chaves abaixo: Thread; CaptionWinAPP. Definição do Método: Parâmetros: 1. sParametro. Variável string no qual você devera informar o valor do tempo que a thread irá enviar o alerta de novo SMS. 2. iRetorno. Variável integer no qual irá informar o retorno do método. Nomenclatura: Windows: regTempoAlertar_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro de atualização de Chave. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: 165 DarumaFramework - Help 2.5 Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem--} Declaração function regTempoAlertar_MODEM_DarumaFramework(sParametro: String): Integer; StdCall; External 'Daruma {$R *.dfm} var stTempo: string; boRetorno: Boolean; iRetorno: Integer; begin stTempo := ''; boRetorno := InputQuery('Daruma DLL Framework', 'Digita o intervalo de tempo para a thread verificar por SM if ((boRetorno = True) and (stTempo <> '')) then begin iRetorno := regTempoAlertar_MODEM_DarumaFramework(stTempo); Função if (iRetorno = 1) then begin Application.MessageBox('Configuração realizada com sucesso.' , 'Daruma DLL Framework', MB_OK + MB_ end else begin Application.MessageBox('Erro ao Configurar o intervalo de tempo de verificação da thread','Daruma DLL F MB_ICONERROR); end; end; end; VB6 Declaração Método Public Declare Function regTempoAlertar_MODEM_DarumaFramework Lib "DarumaFramew sParametro As String) As Integer Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Digita o intervalo de tempo para a thread verificar por SMS unread", "Daruma DLL Fr Função boRetorno = True If (boRetorno = False) Or (boTexto = "") Then MsgBox("Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework") Else iRetorno = regTempoAlertar_MODEM_DarumaFramework(boTexto) 166 DarumaFramework If (iRetorno = 1) Then MsgBox("Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao Configurar o intervalo de tempo de verificação da thread.", vbInformation, "Daruma End If End If C# Declaração Método [DllImport("DarumaFrameWork.dll")] public static extern int regTempoAlertar_MODEM_DarumaFramework(System.String sPara string STR_Retorno_CaixaInput; STR_Retorno_CaixaInput = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.InputBox tempo para a thread verificar por SMS unread", "4000"); if (STR_Retorno_CaixaInput != "Erro ao incluir dados no Registro(Registry)!" | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Realizando Configuração...", "Daruma DLL Framework", MessageBoxButtons.OK, DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regTempoAlertar_MODEM_DarumaFramework } Função if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regTempoAlertar_MODEM_DarumaFramework MessageBox.Show("Configuração realizada com sucesso", "Daruma DLL Framework", MessageBoxBu MessageBoxIcon.Information); } else { MessageBox.Show("Erro ao incluir dados no Registro(Registry)!", "Daruma DLL Framework", Message MessageBoxIcon.Error); } VBNet Método Declaração Public Declare Function regTempoAlertar_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sParam Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Digita o intervalo de tempo para a thread verificar por SMS unread", "Daruma DLL Fr boRetorno = True Função If (boRetorno = False) Or (boTexto = "") Then MsgBox("Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework") Else iRetorno = regTempoAlertar_MODEM_DarumaFramework(boTexto) If (iRetorno = 1) Then MsgBox("Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework") Else 167 DarumaFramework - Help 2.5 MsgBox("Erro ao Configurar o intervalo de tempo de verificação da thread.", vbInformation, "Daruma End If End If regThread_MODEM_DarumaFra mework Método: regThread_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 72 Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor configurar uma opção DarumaFramework.dll no qual iniciara um LOOP que ira verificar a cada instante se o modem recebeu novas mensagens ou não, porem de um modo inteligente evitando assim que utilize o processo da maquina (Clock). Dia-a-Dia: Para entender melhor a utilização desta chave acesse o Recebendo Mensagens do Modem - Thread Observações: 1. Está chave deve estar acionada como "TRUE" antes do aplicativo iniciar. Chaves-Interligadas: 1. Está chave esta interligada com a utilização das chaves abaixo: 168 DarumaFramework TempoAlertar; CaptionWinAPP. Definição do Método: Parâmetros: 1. sParametro. Variável string no qual você devera informar os parametros no qual o comando irá executar, sendo ele "TRUE" ou "FALSE". 2. iRetorno. Variável integer no qual irá informar o retorno do método. Nomenclatura: Windows: regThread_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro de atualização de Chave. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método 169 DarumaFramework - Help 2.5 {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem} Declaração function regThread_MODEM_DarumaFramework(stParametro: String): Integer; StdCall; External 'DarumaFrame {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regThread_MODEM_DarumaFramework('TRUE'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== MODEM ===========' Declaração Public Declare Function regThread_MODEM_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stParametro Integer Dim iRetorno As Integer Função iRetorno = regThread_MODEM_DarumaFramework("TRUE") End C# Método //*************Métodos para MODEM************ Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regThread_MODEM_DarumaFramework(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando out Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regThread_MODEM_DarumaFrame VBNet Método '**********************************************************************' MODEM Declaração Public Declare Function regThread_MODEM_DarumaFramework Lib "Darumaframework.dll" (ByVal stParametro A Integer 170 DarumaFramework Dim iRetorno As Integer Função iRetorno = regThread_MODEM_DarumaFramework("TRUE") End Valores e Definições de Registro(Registry) MODEM Modelo: MIN100 e MIN200. Índice: 56 Bibliotecas: DarumaFramework.dll Objetivo: Definição: Demonstrar ao desenvolvedor como trabalha as chaves de registro para os modems Daruma. Observações: 1. Todas as chaves abaixo são executadas através do método Inicializar_MODEM_DarumaFramework, ou seja, é necessário deixar todas as chaves com seus valores para que assim que executado o método execute cada função. Valores aplicados por Padrão(Default): [HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework\MIN100] 171 DarumaFramework - Help 2.5 "Auditoria"="0" "Porta"="DEFAULT" "Velocidade"="9600" "Thread"="TRUE" "Apagar"="FALSE" "LerApagar"="TRUE" "TempoAlertar"="4000" "CaptionWinPP"="MODEM - MIN100/200" Definições: "Auditoria"= Chave responsável por registrar os eventos ocorridos pelo sistema e pelo usa da DarumaFramework.dll. "Porta"= Chave responsável pela configuração da Porta Serial, no qual ira executar a comunicação com o modem, esta chave por padrão esta configurada como DEFAULT, no qual em seu aplicativo você devera estar informando qual a porta será utilizada para efetuar a comunicação com o modem. "Velocidade"= Chave responsável pela configuração da velocidade no qual a sua porta de comunicação ira trabalhar, sendo ela 9600, 38400 ou 115200, por padrão o modem esta inicialmente configurado para 9600, onde através deste registro você poderá alterar a velocidade conforme a sua necessidade. A velocidade em si, não condiz com o tempo de saída do SMS até seu destinatário e sim a velocidade de comunicação da porta serial com o modem. "Thread"= Nesta chave você estará ativando (com o valor sendo "TRUE") a opção DarumaFramework.dll no qual iniciara um LOOP que ira verificar a cada instante se o modem recebeu novas mensagens ou não, porem de um modo inteligente evitando assim que utilize o processo da maquina (Clock), A thread é criada pela DarumaFramework.dll sendo ela responsável por verificar no MODEM-GSM a 172 DarumaFramework existência de mensagens ou SMS's para serem lidos. Caso existam SMS's não lidos, a thread envia a mensagem "WM_APP" para a Janela indica pelo Usuário. "Apagar"= Chave responsável pela função de apagar as mensagens dentro da memória do modem, ao inicializar o modem, onde ira executar uma limpeza geral no modem evitando a memória cheia, onde quando ocorre o modem fica sem a opção de receber novas mensagens até que o espaço para elas seja liberado de mensagens, por padrão esta opção estará desativada com "FALSE". "LerApagar"= Chave responsável pela execução de após que seja lida a mensagem no CardSim, seja apagada automaticamente evitando assim, que a memória do CardSim lote, está chave vêem como padrão "TRUE", ou seja, após cada leitura da mensagem a DLL irá excluir a mesma. "TempoAlertar"= Chave responsável pelo controle no qual ira indicar em milisegundos, o período de tempo em que a Thread vai verificar e alertar a existência de SMS unread, ou seja, mensagens nao lidas. "CaptionWinAPP"= Chave responsável pela determinação do nome da janela( title, caption ) na qual vai receber o alerta da existência de SMS unread no modem. Metodos para Funcionalidades Modem eTrocarBandeja_MODEM_Daru maFramework Método: eTrocarBandeja_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 50 Bibliotecas: DarumaFramework.dll Método: 173 DarumaFramework - Help 2.5 Definição: Permite ao desenvolvedor a troca de bandeja do modem, indicando se o modem está conectado a rede GSM(timeout de 30 segundos). Observações: 1. Devemos executar este comando quando toda vez que houver necessidade de trocar a chip a ser utilizando (SIM1 ou SIM2). Esse comando está disponível para os modelos (MIN200D e MIN200E). Definição do Método: Parâmetros: 1. Nenhum. Nomenclatura: Windows: Inicializar_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro na comunicação da serial. -2: Modem retornou erro. -3: Modem retornou caractere(s) invalido(s) -4: Modem não conectado na rede GSM Exemplos: 174 DarumaFramework Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem} Declaração function eTrocarBandeja_MODEM_DarumaFramework(): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; begin iRetorno := eTrocarBandeja_MODEM_DarumaFramework(); if (iRetorno = 1) Then begin Application.MessageBox('Bandeja trocada com sucesso.', 'Daruma DLL Framework', MB_OK + Função MB_ICONINFORMATION); end else begin Application.MessageBox('Erro ao tentar trocar a bandeja!', 'Daruma DLL Framework', MB_OK + MB_ICONERROR); end; VB6 Método Declaração Public Declare Function eTrocarBandeja_MODEM_DarumaFramework Lib "DarumaFramework.dll" () As Integer Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Digite SIM1 ou SIM2, para definir qual Bandeja o modem deve iniciar", "Daruma DLL Framework") Função boRetorno = True If (boRetorno = False) Or (boTexto = "") Then MsgBox("Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework") Else iRetorno = regBandejaInicio_MODEM_DarumaFramework(boTexto) If (iRetorno = 1) Then MsgBox("Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework") Else 175 DarumaFramework - Help 2.5 MsgBox("Erro ao Configurar a chave do Registro.", vbInformation, "Daruma DLL Framework") End If End If C# Declaração Método [DllImport("DarumaFrameWork.dll")] public static extern int eTrocarBandeja_MODEM_DarumaFramework(); DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.eTrocarBandeja_MODEM_DarumaFramework( if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Bandeja trocada com sucesso.", "Daruma DLL Framework", Função MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show("Erro ao tentar trocar a bandeja", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); } VBNet Declaração Método Public Declare Function eTrocarBandeja_MODEM_DarumaFramework Lib "DarumaFramework.dll" () As Integer Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Digite SIM1 ou SIM2, para definir qual Bandeja o modem deve iniciar", "Daruma DLL Framework") boRetorno = True If (boRetorno = False) Or (boTexto = "") Then Função MsgBox("Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework") Else iRetorno = regBandejaInicio_MODEM_DarumaFramework(boTexto) If (iRetorno = 1) Then MsgBox("Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao Configurar a chave do Registro.", vbInformation, "Daruma DLL Framework") End If End If eInicializar_MODEM_DarumaFr amework 176 DarumaFramework Método: Inicializar_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 50 Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor iniciar o modem e dar inicio a suas funções. Dia-a-Dia: Neste método estaremos inicializando os comandos e abrindo a porta serial do modem para assim ser executados todos os comandos no qual você desenvolvedor ira enviar para o modem. Dica: O método alem de inicializar o modem executa os primeiros comandos universais para este tipo de plataforma que seriam os comandos AT, onde o mesmo ira iniciar com o comando AT que ira abrir a comunicação com o modem, seguindo dos comandos AT+CMGF e ATE0, alem de abrir a comunicação com a porta serial programada em seu registro. Observações: 1. Devemos executar este comando quando carregado o FORM(Formulário) de sua aplicação, no qual quando inicializado seu aplicado a função já ira inicializar automaticamente seguindo os padrões do seu registro e abrindo a comunicação com o modem. 2. A função por si verifica todas as chaves de registros configuradas pelo desenvolvedor executando elas no inicio de sua aplicação, sendo elas: Auditoria 177 DarumaFramework - Help 2.5 Apagar; LerApagar; Porta; Thread; Velocidade; TempoAlertar; CaptionWinAPP. Definição do Método: Parâmetros: 1. Nenhum. Nomenclatura: Windows: eInicializar_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro na comunicação da serial. -2: Modem retornou erro. -3: Modem retornou caractere(s) invalido(s) -4: Modem não conectado na rede GSM Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: 178 DarumaFramework Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem} Declaração Inicializar_MODEM_DarumaFramework(): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno : Integer; begin iRetorno := Inicializar_MODEM_DarumaFramework(); if (iRetorno = 1) then begin Application.MessageBox('Modem Inicializado com sucesso', 'Daruma DLL Framework', MB_OK + 32); Função end else begin Application.MessageBox('Erro ao Inicializar o Modem','Daruma DLL Framework', MB_OK + MB_ICONERROR); end; end; VB6 Método Declaração Public Declare Function eInicializar_MODEM_DarumaFramework Lib "DarumaFramework.dll" () As Integer Dim iRetorno As Integer iRetorno = eInicializar_MODEM_DarumaFramework() If (iRetorno = 1) Then MsgBox "Modem Inicializado com sucesso!", vbInformation, "Daruma DLL Framework" Função Else MsgBox "Erro ao inicializar o Modem.", vbInformation, "Daruma DLL Framework" End If C# Declaração Método [DllImport("DarumaFrameWork.dll")] public static extern int eInicializar_MODEM_DarumaFramework(); DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.eInicializar_MODEM_DarumaFramework(); if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) Função { MessageBox.Show("Modem Inicializado com sucesso", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Information); } 179 DarumaFramework - Help 2.5 else { MessageBox.Show("Erro ao Inicializar o Modem", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); } VBNet Método Declaração Public Declare Function eInicializar_MODEM_DarumaFramework Lib "DarumaFramework.dll" () As Integer Dim iRetorno As Integer iRetorno = eInicializar_MODEM_DarumaFramework() If (iRetorno = 1) Then Função MsgBox("Modem Inicializado com sucesso!", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao Inicializar o Modem.", vbInformation, "Daruma DLL Framework") End If eApagarSMS_MODEM_Daruma Framework Método: ApagarSMS_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 47 Bibliotecas: DarumaFramework.dll Método: Definição: Permite excluir a mensagem selecionada na memória do Modem. Dia-a-Dia: Caso você deseja que a DarumaFramework.dll após a leitura da mensagem execute uma ação para excluir automaticamente, existe uma chave no registro do modem chamada LerApagar, no qual realiza esta função. 180 DarumaFramework Dica: O método é geralmente usado quando o desenvolvedor deseja que a DarumaFramework, apague a mensagem lida evitando assim o armazenamento excessivo de mensagens no modem no qual poderia resultar no não recebimento de novas mensagens devido ao limite imposto em seu SimCard. Observações: 1. Para executar esta funcionabilidade, necessitamos acionar o método Inicializar_MODEM_DarumaFramework. Definição do Método: Parâmetros: 1. stNumeroSMS. Variável integer no qual devera constar o numero da mensagem a ser excluida. 2. iRetorno. Variável integer no qual irá informar o retorno do método. Nomenclatura: Windows: ApagarSMS_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro na comunicação da serial. -2: Modem Retornou erro. Exemplos: 181 DarumaFramework - Help 2.5 Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem--} Declaração ApagarSMS_MODEM_DarumaFramework(iNumeroSMS: String): Integer; StdCall; External 'DarumaFrameWork.d {$R *.dfm} var iRetorno : Integer; iNumeroSMS : String; sResposta : String; begin setlength(sResposta,5000); if ( (EB_NumeroSMS.Text = '' ) or ( StrToInt(EB_NumeroSMS.Text)= 0) ) then ShowMessage('É preciso digitar o numero do SMS diferente de 0') else begin iNumeroSMS := EB_NumeroSMS.Text; iRetorno := eApagarSms_MODEM_DarumaFramework(iNumeroSMS); Função if (iRetorno = 1) then begin Application.MessageBox('Mensagem apagada com sucesso', 'Daruma DLL Framework', MB_OK + 32); ED_Retorno.Text:='[' + (IntToStr(iRetorno)) + '] - '+ 'Sucesso'; end else begin Application.MessageBox('Erro ao apagar a mensagem','Daruma DLL Framework', MB_OK + MB_ICONERROR) case iRetorno of -2: ED_Retorno.Text:=('[-2] - Modem retornou erro'); -1: ED_Retorno.Text:=('[-1] - Erro de comunicação serial'); end; end; end; VB6 Declaração Função 182 Método Public Declare Function eApagarSms_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal iNumeroSM Integer Dim iRetorno As Integer DarumaFramework Dim iNumeroSMS As Integer If ((EB_NumeroSMS.Text = "") Or (Val(EB_NumeroSMS.Text) = 0)) Then MsgBox "É preciso digitar o numero do SMS diferente de 0" Else iNumeroSMS = Val(EB_NumeroSMS.Text) iRetorno = eApagarSms_MODEM_DarumaFramework(iNumeroSMS) If (iRetorno = 1) Then MsgBox "Mensagem apagada com sucesso", vbInformation, "Daruma DLL Framework" EB_RespostaModem.Text = iRetorno Else MsgBox "Erro ao apagar a mensagem", vbInformation, "Daruma DLL Framework" Select Case (iRetorno) Case "-2": EB_RespostaModem.Text = "[-2] - Modem retornou erro" Case "-1": EB_RespostaModem.Text = "[-1] - Erro de comunicação serial" End Select End If End If C# Declaração Método [DllImport("DarumaFrameWork.dll")] public static extern int eApagarSms_MODEM_DarumaFramework(System.String iNumeroS int iNumeroSMS; iNumeroSMS = 0; if (TB_NumeroSMS.Text == "" || int.Parse(TB_NumeroSMS.Text) == 0) { MessageBox.Show("É preciso digitar o numero do SMS diferente de 0", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { iNumeroSMS = int.Parse(TB_NumeroSMS.Text); } Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.eApagarSms_MODEM_DarumaFramework(TB_ if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Mensagem apagada com sucesso", "Daruma DLL Framework", MessageBoxButto MessageBoxIcon.Information); TB_RespostaModem.Text = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorn } else { MessageBox.Show("Erro ao apagar a mensagem", "Daruma DLL Framework", MessageBoxButtons.OK MessageBoxIcon.Error); TB_RespostaModem.Text = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorn 183 DarumaFramework - Help 2.5 } } VBNet Declaração Método Public Declare Function eApagarSms_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal iNumeroSM Integer Dim iRetorno As Integer Dim iNumeroSMS As Integer If ((TB_NumeroSMS.Text = "") Or (Val(TB_NumeroSMS.Text) = 0)) Then MsgBox("É preciso digitar o numero do SMS diferente de 0") Else iNumeroSMS = Val(TB_NumeroSMS.Text) iRetorno = eApagarSms_MODEM_DarumaFramework(iNumeroSMS) If (iRetorno = 1) Then MsgBox("Mensagem apagada com sucesso", vbInformation, "Daruma DLL Framework") Função TB_RespostaModem.Text = iRetorno Else MsgBox("Erro ao apagar a mensagem", vbInformation, "Daruma DLL Framework") Select Case (iRetorno) Case "-2" : TB_RespostaModem.Text = "[-2] - Modem retornou erro" Case "-1" : TB_RespostaModem.Text = "[-1] - Erro de comunicação serial" End Select End If End If eAtivarConexaoCsd_MODEM_D arumaFramework Método: eAtivarConexaoCsd_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: Bibliotecas: DarumaFramework.dll Método: 184 DarumaFramework Definição: Permite ao desenvolvedor configurar o modem para receber chamadas CSD e realizar auto atendimento. Definição do Método: Parâmetros: 1. Nenhum. Nomenclatura: Windows: eAtivarConexaoCsd_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro na comunicação da serial. -2: Modem retornou erro. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem} Declaração eAtivarConexaoCsd_MODEM_DarumaFramework(): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} 185 DarumaFramework - Help 2.5 var iRetorno: Integer; begin iRetorno := eAtivarConexaoCsd_MODEM_DarumaFramework(); if (iRetorno = 1) Then Função Application.MessageBox('Conexao ativa com sucesso.', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION) else Application.MessageBox('Erro ao tentar ativar a conexao CSD!', 'Daruma DLL Framework', MB_OK + MB_ICONERROR); edRetornoDeFuncoes.Text := IntToStr(iRetorno); VB6 Método Declaração Public Declare Function eAtivarConexaoCsd_MODEM_DarumaFramework Lib "DarumaFramework.dll" () As Integ Dim iRetorno As Integer iRetorno = eAtivarConexaoCsd_MODEM_DarumaFramework() If (iRetorno = 1) Then MsgBox "Conexao ativa com sucesso!", vbInformation, "Daruma DLL Framework" Função Else MsgBox "Erro ao tentar ativar a conexao CSD!", vbInformation, "Daruma DLL Framework" End If C# Declaração Método [DllImport("DarumaFrameWork.dll")] public static extern int eInicializar_MODEM_DarumaFramework(); DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.eAtivarConexaoCsd_MODEM_DarumaFramewo if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Conexao ativa com sucesso", "Daruma DLL Framework", MessageBoxButtons.OK Função MessageBoxIcon.Information); } else { MessageBox.Show(""Erro ao tentar ativar a conexao CSD!", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); } VBNet 186 Método DarumaFramework Declaração Public Declare Function eAtivarConexaoCsd_MODEM_DarumaFramework Lib "DarumaFramework.dll" () As Integ Dim iRetorno As Integer iRetorno = eAtivarConexaoCsd_MODEM_DarumaFramework() If (iRetorno = 1) Then MsgBox "Conexao ativa com sucesso!", vbInformation, "Daruma DLL Framework" Função Else MsgBox "Erro ao tentar ativar a conexao CSD!", vbInformation, "Daruma DLL Framework" End If eFinalizarChamadaCsd_MODEM _DarumaFramework Método: eFinalizarChamadaCsd_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor finalizar a chamada CSD. Definição do Método: Parâmetros: 1. Nenhum. Nomenclatura: Windows: eFinalizarChamadaCsd_MODEM_DarumaFramework 187 DarumaFramework - Help 2.5 Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro na comunicação da serial. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem} Declaração eFinalizarChamadaCsd_MODEM_DarumaFramework(): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; begin iRetorno := eFinalizarChamadaCsd_MODEM_DarumaFramework(); if (iRetorno = 1) Then Função Application.MessageBox('Conexao finalizada com sucesso.', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION) else Application.MessageBox('Erro ao tentar finalizar a conexao CSD!', 'Daruma DLL Framework', MB_OK + MB_ICONERROR); edRetornoDeFuncoes.Text := IntToStr(iRetorno); VB6 Método Declaração Public Declare Function eFinalizarChamadaCsd_MODEM_DarumaFramework Lib "DarumaFramework.dll" () As In 188 DarumaFramework Dim iRetorno As Integer iRetorno = eFinalizarChamadaCsd_MODEM_DarumaFramework() If (iRetorno = 1) Then MsgBox "Conexao finalizada com sucesso!", vbInformation, "Daruma DLL Framework" Função Else MsgBox "Erro ao tentar finalizar chamada CSD!", vbInformation, "Daruma DLL Framework" End If C# Declaração Método [DllImport("DarumaFrameWork.dll")] public static extern int eFinalizarChamadaCsd_MODEM_DarumaFramework(); DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.eFinalizarChamadaCsd_MODEM_DarumaFram if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Conexao finalizada com sucesso", "Daruma DLL Framework", MessageBoxButton Função MessageBoxIcon.Information); } else { MessageBox.Show(""Erro ao tentar finalizar chamada CSD!", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); } VBNet Método Declaração Public Declare Function eFinalizarChamadaCsd_MODEM_DarumaFramework Lib "DarumaFramework.dll" () As In Dim iRetorno As Integer iRetorno = eFinalizarChamadaCsd_MODEM_DarumaFramework() If (iRetorno = 1) Then MsgBox "Conexao finalizada com sucesso!", vbInformation, "Daruma DLL Framework" Função Else MsgBox "Erro ao tentar finalizar chamada CSD!", vbInformation, "Daruma DLL Framework" End If 189 DarumaFramework - Help 2.5 eRealizarChamadaCsd_MODEM _DarumaFramework Método: eRealizarChamadaCsd_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 50 Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor realizar chamada csd a um modem definido pelo número. Definição do Método: Parâmetros: 1. stNumeroTelefone. Variável string no qual você devera informar o numero a ser chamado. Nomenclatura: Windows: eRealizarChamadaCsd_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro na comunicação da serial. -2: Modem retornou erro. -3: Modem retornou caractere(s) invalido(s) 190 DarumaFramework -4: Modem não conectado na rede GSM -5: Modem retornou NO CARRIER -6: Modem retornou NO DIALTONE -7: Modem retornou BUSY Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem} Declaração function eRealizarChamadaCsd_MODEM_DarumaFramework(sParametro: String): Integer; StdCall; External 'Da {$R *.dfm} var iRetorno : integer; sNumTel : String; begin sNumTel := ED_NumTelefone.Text; Função iRetorno := eRealizarChamadaCsd_MODEM_DarumaFramework(sNumTel); if (iRetorno = 1) Then Application.MessageBox('Chamada Realizada com sucesso.', 'Daruma DLL Framework', MB_OK + MB_ICONI else Application.MessageBox('Erro ao tentar Realizar a chamda CSD!', 'Daruma DLL Framework', MB_OK + MB_I edRetornoDeFuncoes.Text := IntToStr(iRetorno); VB6 Declaração Método Public Declare Function eRealizarChamadaCsd_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal s 191 DarumaFramework - Help 2.5 Dim iRetorno As Integer Dim sNumTel As String sNumTel = ED_NumTelefone.Text iRetorno = eRealizarChamadaCsd_MODEM_DarumaFramework(sNumTel) Função If (iRetorno = 1) Then MsgBox("Chamada Realizada com sucesso.!", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao tentar Realizar a chamda CSD!", vbInformation, "Daruma DLL Framework") ED_RetornoDeFuncoes.Text = iRetorno End If C# Declaração Método [DllImport("DarumaFrameWork.dll")] public static extern int eRealizarChamadaCsd_MODEM_DarumaFramework(System.String int iNumeroFone; iNumeroFone = 0; if (ED_NumTelefone.Text == "" || int.Parse(ED_NumTelefone.Text) == 0) { MessageBox.Show("É preciso digitar o numero do telefone diferente de 0", "Daruma DLL Framework" MessageBoxIcon.Information); } else { iNumeroFone = int.Parse(ED_NumTelefone.Text); } Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.eRealizarChamadaCsd_MODEM_DarumaFrame if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Chamada Realizada com sucesso.!", "Daruma DLL Framework", MessageBoxButt MessageBoxIcon.Information); ED_RetornoDeFuncoes.Text = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRet } else { MessageBox.Show("Erro ao Realizar chamada!", "Daruma DLL Framework", MessageBoxButtons.OK, ED_RetornoDeFuncoes.Text = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRet } VBNet Declaração 192 Método Public Declare Function eRealizarChamadaCsd_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal s DarumaFramework Dim iRetorno As Integer Dim sNumTel As String sNumTel = ED_NumTelefone.Text iRetorno = eRealizarChamadaCsd_MODEM_DarumaFramework(sNumTel) Função If (iRetorno = 1) Then MsgBox("Chamada Realizada com sucesso.!", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao tentar Realizar a chamda CSD!", vbInformation, "Daruma DLL Framework") ED_RetornoDeFuncoes.Text = iRetorno End If Metodos para Recepcao rRetornarOperadora_MODEM_ DarumaFramework Método: RetornarOperadora_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 49 Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor verificar a operadora GSM (Claro, Tim, Oi, Vivo) conectado no momento no modem. Dia-a-Dia: Existem diversos motivos para que o desenvolvedor possa verificar a operado , como por exemplo, se estiver utilizando o modem de 2 bandejas assim fica fácil a identificação. 193 DarumaFramework - Help 2.5 Definição do Método: Parâmetros: 1. stOperadora - retornar a string referente a operadora do Chip GSM utilizado no equipamento. Nomenclatura: Windows: RetornarOperadora_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro na comunicação da serial. -2: Modem retornou erro. -3: Modem retornou caractere(s) invalido(s). Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem} Declaração function rRetornarOperadora_MODEM_DarumaFramework(sOperadora: String): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} 194 DarumaFramework var iRetorno : Integer; sOperadora: String; begin SetLength(sOperadora,15); iRetorno := rRetornarOperadora_MODEM_DarumaFramework(sOperadora); if ( iRetorno = 1 ) then //OK Função ED_Operadora.Text := sOperadora else Application.MessageBox('Erro ao tentar obter a operadora','Daruma DLL Framework', MB_OK + MB_ICONERR case iRetorno of -3: ED_Operadora.text:=('[-3] - Modem retornou caractere(s) inválido(s)'); -2: ED_Operadora.Text:=('[-2] - Modem retornou erro'); -1: ED_Operadora.Text:=('[-1] - Erro da comunicação serial '); end; VB6 Declaração Método Public Declare Function rRetornarOperadora_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sOperadora As String) As Integer Dim iRetorno As Integer Dim sOperadora As String sOperadora = Space(15) iRetorno = rRetornarOperadora_MODEM_DarumaFramework(sOperadora) If (iRetorno = 1) Then TB_Operadora.Text = sOperadora Função Else MsgBox("Erro ao tentar obter o Operadora!", vbInformation, "Daruma DLL Framework") Select Case (iRetorno) Case "-3" : TB_Operadora.Text = "[-3] - Modem retornou caractere(s) inválido(s)" Case "-2" : TB_Operadora.Text = "[-2] - Modem retornou erro" Case "-1" : TB_Operadora.Text = "[-1] - Erro de comunicação serial" End Select End If C# Método [DllImport("DarumaFrameWork.dll")] Declaração public static extern int rRetornarOperadora_MODEM_DarumaFramework( [MarshalAs(UnmanagedType.VBByRefStr)] ref string sOperadora); 195 DarumaFramework - Help 2.5 string sOperadora; sOperadora = new string(' ', 25); DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.rRetornarOperadora_MODEM_DarumaFramew sOperadora); if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { TB_Operadora.Text = sOperadora; } else { Função MessageBox.Show("Erro ao tentar obter o Operadora", "Daruma DLL Framework", MessageBoxButton MessageBoxIcon.Error); switch (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno) { case -3: TB_Operadora.Text = "[-3] - Modem retornou caractere(s) inválido(s)"; break; case -2: TB_Operadora.Text = "[-2] - Modem retornou erro"; break; case -1: TB_Operadora.Text = "[-1] - Erro de comunicação serial"; break; } } VBNet Declaração Método Public Declare Function rRetornarOperadora_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sOperadora As String) As Integer Dim iRetorno As Integer Dim sOperadora As String sOperadora = Space(15) iRetorno = rRetornarOperadora_MODEM_DarumaFramework(sOperadora) If (iRetorno = 1) Then TB_Operadora.Text = sOperadora Função Else MsgBox("Erro ao tentar obter o Operadora!", vbInformation, "Daruma DLL Framework") Select Case (iRetorno) Case "-3" : TB_Operadora.Text = "[-3] - Modem retornou caractere(s) inválido(s)" Case "-2" : TB_Operadora.Text = "[-2] - Modem retornou erro" Case "-1" : TB_Operadora.Text = "[-1] - Erro de comunicação serial" End Select End If 196 DarumaFramework rListarSMS_MODEM_DarumaFr amework Método: rListarSMS_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 51 Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor listar todas as mensagens contidas no CHIP do modem em um arquivo no formato Texto. Dica: O método permite que o desenvolvedor realize a leituras das mensagens que estão disponível no modem, no qual alem desta função disponibilizamos uma chave no registro chamada Threat no qual através dela o modem ficara num LOOP questionando se houve ou não recebimento de mensagem. Observações: 1. A lista será criada no local especificado pelo desenvolvedor no qual pode ser obtido pela chave no registro do Windows, chamada <LocalArquivos> HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework LocalArquivos 197 DarumaFramework - Help 2.5 Definição do Método: Parâmetros: 1. Nenhum. Nomenclatura: Windows: ListarSMS_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro na comunicação da serial. -2: Modem retornou erro. -3: Modem retornou caractere(s) invalido(s) Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi 198 Método DarumaFramework {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem--} Declaração function ListarSMS_MODEM_DarumaFramework(): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno : Integer; begin iRetorno := ListarSMS_MODEM_DarumaFramework(); if (iRetorno = 1) then begin Application.MessageBox('SMS Listados com sucesso', 'Daruma DLL Framework', MB_OK + 32); Função Memo.Lines.Add(IntToStr(iRetorno)); end else begin Application.MessageBox('Erro ao listar os SMS','Daruma DLL Framework', MB_OK + MB_ICONERROR); Memo.Lines.Add(IntToStr(iRetorno)); end; end; VB6 Método Declaração Public Declare Function rListarSms_MODEM_DarumaFramework Lib "DarumaFramework.d Dim iRetorno As Integer Dim sResposta As String sResposta = Space(5000) iRetorno = rListarSms_MODEM_DarumaFramework() If (iRetorno = 1) Then MsgBox("SMS Listados com sucesso!", vbInformation, "Daruma DLL Framework") TB_RespostaModem.Text = iRetorno Função Else MsgBox("Erro ao listar os SMS!", vbInformation, "Daruma DLL Framework") Select Case (iRetorno) Case "-3" : TB_RespostaModem.Text = "[-3] - Modem retornou caractere(s) in Case "-2" : TB_RespostaModem.Text = "[-2] - Modem retornou erro" Case "-1" : TB_RespostaModem.Text = "[-1] - Erro de comunicação serial" End Select End If C# Declaração Método [DllImport("DarumaFrameWork.dll")] public static extern int rListarSms_MODEM_DarumaFramework(); 199 DarumaFramework - Help 2.5 DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.rListarSms_MODEM_Da if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == { MessageBox.Show("Mensagens Listadas com sucesso!", "Daruma DLL Framewo MessageBoxButtons.OK, MessageBoxIcon.Information); TB_RespostaModem.Text = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno.ToString(); } else Função { MessageBox.Show("Erro ao listar as mensagens.", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); switch (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iReto { case -3: TB_RespostaModem.Text = "[-3] - Modem retornou caractere(s) in break; case -2: TB_RespostaModem.Text = "[-2] - Modem retornou erro"; break; case -1: TB_RespostaModem.Text = "[-1] - Erro de comunicação serial"; break; } VBNet Método Declaração Public Declare Function rListarSms_MODEM_DarumaFramework Lib "DarumaFramework.d Dim iRetorno As Integer Dim sResposta As String sResposta = Space(5000) iRetorno = rListarSms_MODEM_DarumaFramework() If (iRetorno = 1) Then MsgBox("SMS Listados com sucesso!", vbInformation, "Daruma DLL Framework") Função TB_RespostaModem.Text = iRetorno Else MsgBox("Erro ao listar os SMS!", vbInformation, "Daruma DLL Framework") Select Case (iRetorno) Case "-3" : TB_RespostaModem.Text = "[-3] - Modem retornou caractere(s) in Case "-2" : TB_RespostaModem.Text = "[-2] - Modem retornou erro" Case "-1" : TB_RespostaModem.Text = "[-1] - Erro de comunicação serial" 200 DarumaFramework End Select End If rNivelSinalRecebido_MODEM_ DarumaFramework Método: rNivelSinalRecebido_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 52 Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor verificar a disponibilidade do sinal presente no Modem. Observações: 1. Para executar esta funcionabilidade, necessitamos acionar o método Inicializar_MODEM_DarumaFramework. Definições dos Níveis de Sinais: 1. Os valores abaixo, serão demonstrado a você desenvolvedor, para a verificação do nível de sinal: 0 = -113dBm ou menor; 1 = -111dBm; 2.30 = -109... -53 dBm; 31 = -59dBm ou maior; 99 = desconhecido ou não detectado. 201 DarumaFramework - Help 2.5 Definição do Método: Parâmetros: 1. Nenhum. Nomenclatura: Windows: NivelSinalRecebido_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro na comunicação da serial. -2: Modem retornou erro. -3: Modem retornou caractere(s) invalido(s). -x: Valor referente ao nível de sinal. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem--} Declaração NivelSinalRecebido_MODEM_DarumaFramework(): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} 202 DarumaFramework var iRetorno : Integer; begin iRetorno := NivelSinalRecebido_MODEM_DarumaFramework(); Função if ( iRetorno >= 0 ) then Edit1.Text := IntToStr(iRetorno) else Application.MessageBox('Erro ao Verificar o sinal','Daruma DLL Framework', MB_OK + MB_ICONERROR); end; VB6 Método Declaração Public Declare Function rNivelSinalRecebido_MODEM_DarumaFramework Lib "DarumaFramework.dll" () As Integ Dim iRetorno As Integer iRetorno = rNivelSinalRecebido_MODEM_DarumaFramework() If (iRetorno >= 0) Then TB_RetornoModem.Text = iRetorno Else Função MsgBox("Erro ao Verificar o sinal!", vbInformation, "Daruma DLL Framework") Select Case (iRetorno) Case "-3" : TB_RetornoModem.Text = "[-3] - Modem retornou caractere(s) inválido(s)" Case "-2" : TB_RetornoModem.Text = "[-2] - Modem retornou erro" Case "-1" : TB_RetornoModem.Text = "[-1] - Erro de comunicação serial" End Select End If C# Declaração Método [DllImport("DarumaFrameWork.dll")] public static extern int rNivelSinalRecebido_MODEM_DarumaFramework(); DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.rNivelSinalRecebido_MODEM_DarumaFramew if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno >= 0) { TB_RetornoModem.Text = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno.ToString(); } else Função { MessageBox.Show("Erro ao Verificar o sinal", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); switch (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno) { case -3: TB_RetornoModem.Text = "[-3] - Modem retornou caractere(s) inválido(s)"; break; case -2: TB_RetornoModem.Text = "[-2] - Modem retornou erro"; break; case -1: TB_RetornoModem.Text = "[-1] - Erro de comunicação serial"; 203 DarumaFramework - Help 2.5 break; } VBNet Método Declaração Public Declare Function rNivelSinalRecebido_MODEM_DarumaFramework Lib "DarumaFramework.dll" () As Integ Dim iRetorno As Integer iRetorno = rNivelSinalRecebido_MODEM_DarumaFramework() If (iRetorno >= 0) Then TB_RetornoModem.Text = iRetorno Else MsgBox("Erro ao Verificar o sinal!", vbInformation, "Daruma DLL Framework") Função Select Case (iRetorno) Case "-3" : TB_RetornoModem.Text = "[-3] - Modem retornou caractere(s) inválido(s)" Case "-2" : TB_RetornoModem.Text = "[-2] - Modem retornou erro" Case "-1" : TB_RetornoModem.Text = "[-1] - Erro de comunicação serial" End Select End If rReceberDadosCsd_MODEM_D arumaFramework Método: rReceberDadosCsd_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor receber dados através da conexão csd. Observações: 1. Nenhuma. 204 DarumaFramework Definição do Método: Parâmetros: 1. stDados. Variável string para receber os dados. Nomenclatura: Windows: rReceberDadosCsd_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Não existem novas mensagem. 1: OK, Existe uma nova mensagem. -1: Erro na comunicação da serial. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem--} function rReceberDadosCsd_MODEM_DarumaFramework(sParametro: String): Integer; StdCall; External Declaração 'DarumaFrameWork.dll' {$R *.dfm} 205 DarumaFramework - Help 2.5 var iRetorno: Integer; sDados: String; begin Função SetLength(sDados,100); iRetorno := rReceberDadosCsd_MODEM_DarumaFramework(sDados); if (iRetorno = 1) Then MN_DadosRecebidos.Lines.Text := sDados; edRetornoDeFuncoes.Text := IntToStr(iRetorno); VB6 Declaração Método Public Declare Function rReceberDadosCsd_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sPar String) As Integer Dim iRetorno As Integer Dim sDados As String sDados = Space(100) Função iRetorno = rReceberDadosCsd_MODEM_DarumaFramework(sDados) If (iRetorno = 1) Then ED_DadosRecebidos.Text = sDados ED_RetornoDeFuncoes.Text = iRetorno End If C# Método [DllImport("DarumaFrameWork.dll")] Declaração public static extern int rReceberDadosCsd_MODEM_DarumaFramework(System.String sParametro); string sDados = new string(' ', 100); DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.rReceberDadosCsd_MODEM_DarumaFramewo if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { ED_DadosRecebidos.Text = sDados; Função ED_RetornoDeFuncoes.Text = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno.ToString(); } else { MessageBox.Show("Erro ao tentar receber Dados", "Daruma DLL Framework", MessageBoxButtons.O MessageBoxIcon.Error); } VBNet Declaração 206 Método Public Declare Function rReceberDadosCsd_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sPar String) As Integer DarumaFramework Dim iRetorno As Integer Dim sDados As String sDados = Space(100) Função iRetorno = rReceberDadosCsd_MODEM_DarumaFramework(sDados) If (iRetorno = 1) Then ED_DadosRecebidos.Text = sDados ED_RetornoDeFuncoes.Text = iRetorno End If rReceberSMS_MODEM_Daruma Framework Método: rReceberSMS_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 68 Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor ler a ultima mensagem enviada para o Modem. Dia-a-Dia: Existem situações onde, necessitamos estar informados das ultimas mensagens no qual o modem estará a receber assim, possibilitando a ação imediata de outras funções que o modem pode executar. Observações: 207 DarumaFramework - Help 2.5 1. Esta opção pode ser utilizada pela novidade! na DarumaFramework.dll, no qual estamos utilizando o método do "Thread", no qual aciona um LOOP interno capaz de identificar as novas mensagens chegadas em seu modem, para maiores informações clique aqui. Definição do Método: Parâmetros: 1. stIndice. Variável string referente ao índice do SMS no modem. 2. stNumeroFone. Variável string referente ao número do telefone remetente do SMS. 3. stData. Variável string referente a data do envio do SMS. 4. stHora. Variável string referente a hora do envio do SMS 5. stMensagemRetornada. Variável string referente ao conteúdo da mensagem lida. 6. iRetorno. Variável integer no qual irá informar o retorno do método. Nomenclatura: Windows: rReceberSMS_MODEM_DarumaFramework Retornos dos possíveis erros: Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Não existem novas mensagem. 1: OK, Existe uma nova mensagem. -1: Erro na comunicação da serial. -2: Modem retornou erro. -3: Modem retornou caractere(s) invalido(s) 2: Existem duas mensagem a serem lidas. Exemplos: 208 DarumaFramework Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem--} function rReceberSMS_MODEM_DarumaFramework(sIndiceSMS: String; sNumFone: String; sData: String; Declaração sHora: String; sMsg: String): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno : Integer; sIndiceSMS: String; sNumFone: String; sData: String; sHora: String; sMsg: String; begin SetLength(sIndiceSMS,5); SetLength(sNumFone,15); SetLength(sData,10); SetLength(sHora,10); SetLength(sMsg,500); Função iRetorno := rReceberSMS_MODEM_DarumaFramework(sIndiceSMS,sNumFone,sData,sHora,sMsg); if ( iRetorno > 0 ) then begin Application.MessageBox('Mensagens Listadas com sucesso!', 'Daruma DLL Framework', MB_OK + 32); EB_IndiceSMS.Text := sIndiceSMS; EB_TelefoneOrigem.Text := sNumFone; EB_Data.Text := sData; EB_Hora.Text := sHora; MN_Mensagem.Lines.Add(sMsg); EB_QtidadeMsgModem.Text := IntToStr(iRetorno); end else begin Application.MessageBox('Nao foi possivel Receber a mensagem.','Daruma DLL Framework', MB_OK + MB_ICONEXCLAMATION); 209 DarumaFramework - Help 2.5 EB_QtidadeMsgModem.Text := IntToStr(iRetorno); end; end; VB6 Método Public Declare Function rReceberSms_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal Declaração sIndiceSMS As String, ByVal sNumFone As String, ByVal sData As String, ByVal sHora As String, ByVal sMsg As String) As Integer Dim iRetorno As Integer Dim sIndiceSMS As String Dim sNumFone As String Dim sData As String Dim sHora As String Dim sMsg As String sIndiceSMS = Space(5) sNumFone = Space(15) sData = Space(10) sHora = Space(10) sMsg = Space(500) iRetorno = rReceberSms_MODEM_DarumaFramework(sIndiceSMS, sNumFone, sData, sHora, sMsg) If (iRetorno > 0) Then MsgBox("Mensagens Listadas com sucesso!", vbInformation, "Daruma DLL Framework") TB_IndiceSms.Text = "" TB_Telefone.Text = "" TB_Data.Text = "" Função TB_Hora.Text = "" TB_Mensagem.Text = "" TB_RespostaMODEM.Text = "" TB_IndiceSms.Text = sIndiceSMS TB_Telefone.Text = sNumFone TB_Data.Text = sData TB_Hora.Text = sHora TB_Mensagem.Text = sMsg TB_RespostaMODEM.Text = iRetorno Else MsgBox("Erro ao listar as mensagens.", vbInformation, "Daruma DLL Framework") Select Case (iRetorno) Case "-3" : TB_RespostaMODEM.Text = "[-3] - Modem retornou caractere(s) inválido(s)" Case "-2" : TB_RespostaMODEM.Text = "[-2] - Modem retornou erro" Case "-1" : TB_RespostaMODEM.Text = "[-1] - Erro de comunicação serial" Case "0" : TB_RespostaMODEM.Text = "[0] - Não tem mensagem para ser lida" End Select End If 210 DarumaFramework C# Método [DllImport("DarumaFrameWork.dll")] public static extern int rReceberSms_MODEM_DarumaFramework([MarshalAs(UnmanagedType.VBByRefStr)] Declaração ref string sIndiceSMS,[MarshalAs(UnmanagedType.VBByRefStr)] ref string sNumFone, [MarshalAs(UnmanagedType.VBByRefStr)] ref string sData, [MarshalAs(UnmanagedType.VBByRefStr)] ref string sHora, [MarshalAs(UnmanagedType.VBByRefStr)] ref string sMsg); string sIndiceSMS = new string(' ', 5); string sNumFone = new string(' ', 15); string sData = new string(' ' ,10); string sHora = new string(' ', 10); string sMsg = new string(' ', 500); DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.rReceberSms_MODEM_DarumaFramework(ref sIndiceSMS, ref sNumFone, ref sData, ref sHora, ref sMsg); if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno > 0) { MessageBox.Show("'Mensagens Listadas com sucesso!", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Information); TB_IndiceSms.Text = sIndiceSMS; TB_Telefone.Text = sNumFone; TB_Data.Text = sData; TB_Hora.Text = sHora; TB_Mensagem.Text = sMsg; Função TB_RespostaModem.Text = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno.ToString(); } else { MessageBox.Show("Nao foi possivel Receber a mensagem.", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); switch (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno) { case -3: TB_RespostaModem.Text = "[-3] - Modem retornou caractere(s) inválido(s)"; break; case -2: TB_RespostaModem.Text = "[-2] - Modem retornou erro"; break; case -1: TB_RespostaModem.Text = "[-1] - Erro de comunicação serial"; break; case 0: TB_RespostaModem.Text = "[0] - Não tem mensagem para ser lida"; break; } } VBNet Método Declaração Public Declare Function rReceberSms_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal 211 DarumaFramework - Help 2.5 sIndiceSMS As String, ByVal sNumFone As String, ByVal sData As String, ByVal sHora As String, ByVal sMsg As String) As Integer Dim iRetorno As Integer Dim sIndiceSMS As String Dim sNumFone As String Dim sData As String Dim sHora As String Dim sMsg As String sIndiceSMS = Space(5) sNumFone = Space(15) sData = Space(10) sHora = Space(10) sMsg = Space(500) iRetorno = rReceberSms_MODEM_DarumaFramework(sIndiceSMS, sNumFone, sData, sHora, sMsg) If (iRetorno > 0) Then MsgBox("Mensagens Listadas com sucesso!", vbInformation, "Daruma DLL Framework") TB_IndiceSms.Text = "" TB_Telefone.Text = "" TB_Data.Text = "" Função TB_Hora.Text = "" TB_Mensagem.Text = "" TB_RespostaMODEM.Text = "" TB_IndiceSms.Text = sIndiceSMS TB_Telefone.Text = sNumFone TB_Data.Text = sData TB_Hora.Text = sHora TB_Mensagem.Text = sMsg TB_RespostaMODEM.Text = iRetorno Else MsgBox("Erro ao listar as mensagens.", vbInformation, "Daruma DLL Framework") Select Case (iRetorno) Case "-3" : TB_RespostaMODEM.Text = "[-3] - Modem retornou caractere(s) inválido(s)" Case "-2" : TB_RespostaMODEM.Text = "[-2] - Modem retornou erro" Case "-1" : TB_RespostaMODEM.Text = "[-1] - Erro de comunicação serial" Case "0" : TB_RespostaMODEM.Text = "[0] - Não tem mensagem para ser lida" End Select End If rRetornarIMEI_MODEM_Darum aFramework 212 DarumaFramework Método: rRetornarIMEI_MODEM_DarumaFramework MODEM: MIN100, MIN200. Índice: 49 Bibliotecas: DarumaFramework.dll Método: Definição: Permite ao desenvolvedor verificar o IMEI - International Mobile Equipment Identity (Identificação Internacional de Equipamento Móvel), do Modem, no qual será realizado a consulta. Dia-a-Dia: Existem diversos motivos para que o desenvolvedor possa verificar o código IMEI do Modem, como por exemplo, registro, controle, bloqueio do aparelho entre outras funções. Observações: 1. Para executar esta funcionabilidade, necessitamos acionar o método Inicializar_MODEM_DarumaFramework. Definição do Método: Parâmetros: 1. stIMEI - retornar a string referente ao IMEI do equipamento. Nomenclatura: Windows: RetornarIMEI_MODEM_DarumaFramework Retornos dos possíveis erros: 213 DarumaFramework - Help 2.5 Modem está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -1: Erro na comunicação da serial. -2: Modem retornou erro. -3: Modem retornou caractere(s) invalido(s). Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL ao Modem} function RetornarIMEI_MODEM_DarumaFramework(sImei: String): Integer; StdCall; External Declaração 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno : Integer; sImei: String; begin SetLength(sImei,15); Função iRetorno := RetornarIMEI_MODEM_DarumaFramework(sImei); if ( iRetorno = 1 ) then //OK Edit1.Text := sImei else Application.MessageBox('Erro ao tentar obter o imei','Daruma DLL Framework', MB_OK + MB_ICONERROR); end; VB6 214 Método DarumaFramework Declaração Public Declare Function rRetornarImei_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sIMEI As String) As Integer Dim iRetorno As Integer Dim sIMEI As String sIMEI = Space(25) iRetorno = rRetornarImei_MODEM_DarumaFramework(sIMEI) If (iRetorno = 1) Then TB_IMEI.Text = sIMEI Função Else MsgBox("Erro ao tentar obter o imei!", vbInformation, "Daruma DLL Framework") Select Case (iRetorno) Case "-3" : TB_IMEI.Text = "[-3] - Modem retornou caractere(s) inválido(s)" Case "-2" : TB_IMEI.Text = "[-2] - Modem retornou erro" Case "-1" : TB_IMEI.Text = "[-1] - Erro de comunicação serial" End Select End If C# Método [DllImport("DarumaFrameWork.dll")] Declaração public static extern int rRetornarImei_MODEM_DarumaFramework([MarshalAs(UnmanagedType.VBByRefStr)] ref string sImei); string sImei = new string(' ', 25); DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.rRetornarImei_MODEM_DarumaFramework(re sImei); if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { TB_IMEI.Text = sImei; } else Função { MessageBox.Show("Erro ao tentar obter o imei", "Daruma DLL Framework", MessageBoxButtons.OK MessageBoxIcon.Error); switch (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno) { case -3: TB_IMEI.Text = "[-3] - Modem retornou caractere(s) inválido(s)"; break; case -2: TB_IMEI.Text = "[-2] - Modem retornou erro"; break; case -1: TB_IMEI.Text = "[-1] - Erro de comunicação serial"; break; } } VBNet Método 215 DarumaFramework - Help 2.5 Declaração Public Declare Function rRetornarImei_MODEM_DarumaFramework Lib "DarumaFramework.dll" (ByVal sIMEI As String) As Integer Dim iRetorno As Integer Dim sIMEI As String sIMEI = Space(25) iRetorno = rRetornarImei_MODEM_DarumaFramework(sIMEI) If (iRetorno = 1) Then TB_IMEI.Text = sIMEI Else Função MsgBox("Erro ao tentar obter o imei!", vbInformation, "Daruma DLL Framework") Select Case (iRetorno) Case "-3" : TB_IMEI.Text = "[-3] - Modem retornou caractere(s) inválido(s)" Case "-2" : TB_IMEI.Text = "[-2] - Modem retornou erro" Case "-1" : TB_IMEI.Text = "[-1] - Erro de comunicação serial" End Select End If Recebendo Mensagens do Modem - Thread Modelo: MIN100 e MIN200. Índice: 67 Bibliotecas: DarumaFramework.dll Objetivo: Definição: Demonstrar ao desenvolvedor como trabalhar com o sistema de Thread que foi incluido em nossa DarumaFramework.dll, no qual ira lhe proporcionar configurar uma opção DarumaFramework.dll no qual iniciara um LOOP que ira verificar a cada instante se o modem recebeu novas mensagens ou não, porem de um modo inteligente evitando assim que utilize o processo da maquina (Clock). 216 DarumaFramework Observações: 1. Para executar esta função a chave regThread_MODEM_DarumaFramework, deve estar habilitada com o valor "TRUE". 2. Todas as chaves abaixo são executadas através do método Inicializar_MODEM_DarumaFramework, ou seja, é necessário deixar todas as chaves com seus valores para que assim que executado o método execute cada função. Como empregar o método em seu projeto: A partir do momento em que a DarumaFramework.dll está projetada para receber mensagens, esta opção ira trazer a você desenvolvedor uma facilidade adicional na questão do recebimento da Mensagem, como então irá funcionar: A partir do momento que a opção no registro (Thread) estiver acionado o modem estará aguardando através do evento de Janela do Windows o recebimento de uma nova mensagem, deixando assim seu aplicativo mais completo e de simples desenvolvimento em sua linguagem; A thread é criada na DarumaFramework.dll no qual será responsável por verificar no MODEM GSM se existem SMS para serem lidos. Caso existam SMS não lidos, a DarumaFramework.dll irá envia uma mensagem "WM_APP" para a Janela criada na Aplicação do Usuário. Abaixo estarei disponibilizando um fluxograma de como funciona internamente o processo junto a nossa DarumaFramework.dll: 217 DarumaFramework - Help 2.5 Para melhor compreensão vamos detalhar participantes e respectivos funcionamentos: 1. Thread da DarumaFramwork.dll: a. Inicialização: No arquivo XML, colocamos "TRUE" na tag thread. EX: <MODEM> <Thread>TRUE</Thread> <TempoAlertar>4000</TempoAlertar> <CaptionWinAPP>MODEM - MIN100/200</CaptionWinAPP> </MODEM> b. A Thread inicializará em dois momentos: 218 DarumaFramework Quando o aplicativo do usuário "carregar" a DLL e o produto definido for MODEM no XML; c. Quando usar a função eDefinirProduto() para MODEM; Funcionamento: A thread ficará verificando no modem a existência de SMS UNREAD. Para o acionamento deste metodo necessitamos habilitar no registro a chave Thread. Caso exista SMS não lido, a thread procura pela janela criada na aplicação do usuário, se conseguir encontrar a janela, envia uma mensagem "WM_APP" para esse Handle especifico. A thread ficará "alertando" a aplicação a cada 4 segundos sobre a existência de mensagens não lidas, atraves do registro TempoAlertar. Para finalizar, temos o registro CaptionWinAPP, desenvolvida para atender o nome da janela( title, caption ) na qual vai receber o alerta da existência de SMS não lida no modem. d. Finalização: A destruição da thread ocorre em duas situações: Se a DLL for "descarregada" da aplicação. Se a função eDefinirProduto() for utilizada para outro produto. e. Entendendo o CaptionWinAPP: O Aplicativo do usuário pode por exemplo, usar a função da API do Windows, FindWindow(). 219 DarumaFramework - Help 2.5 Ex: Figura 3: FindWindows -> API WIN32 Essa função retorna um Handle do Caption da janela passada. f. Aplicativo do Usuário: Em caso do aplicativo deseja receber o aviso da existência de SMS não lidos, o mesmo deverá criar uma janela e tratar as mensagens referentes à janela criada. Criar uma Janela através do Delphi 7: O Aplicativo do usuário deve criar uma janela, inicialmente com o nome e a classe pré-definidos. Ex: CreateWindow('MESSAGE', // especifica a window class name. 'MODEM_MSG_WND', // String que especifica a window name 0, // especifica o Stilo da Windows criada 0, 0, // especifica a posição X e Y inicial da windows 0, 0, // especifica a largura e altura da windows 0 , // Handle para o pai ou para a propria janela que esta sendo criada 0, // Handle para um menu ou janelas filhos 0, // Handle para a instacia de um módulo para ser associado com uma janela 220 DarumaFramework nil); // Um ponteiro para um valor a ser passado para a Windows Essa função irá retorna um Handle no qual com esse Handle a DarumaFramework.dll irá enviar a mensagem de aviso. Tratamento das mensagens: O Aplicativo do usuário deve tratar as mensagens enviadas para essa janela. Ex: var MSG: tagMSG; MyHandleWnd: HWND; begin if ( FlagAlertarSmsUNREAD = 0 ) then FlagAlertarSmsUNREAD := 1 else FlagAlertarSmsUNREAD := 0; {FUNCAO: FindWindow -> API WIN32 >> Encontra o Handle pelo Caption passado. } MyHandleWnd := FindWindow(NIL,'MODEM MIN100/MIN200'); {FUNCAO: GetMessage -> API WIN32 >> Recupera uma mensagem da pilha de mensagens da thread } while ( ( GetMessage( MSG, 0, 0, 0 ) = TRUE) And ( FlagAlertarSmsUNREAD = 1 ) ) do begin {FUNCAO: TranslateMessage -> API WIN32 >> Traduz mensagens virtualkey para mensagens character. } TranslateMessage(msg); 221 DarumaFramework - Help 2.5 { Verifica se a mensagem é uma WM_APP e se é destinada para a janela da aplicativo do usuário } if ( ( msg.message = WM_APP ) And ( msg.hwnd = MyHandleWnd ) ) then begin EB_NovaMensagem.Text := 'tem SMS UNREAD'; // Aviso de novos SMS end; {FUNCAO: DispatchMessage -> API WIN32 >> dispacha a mensagem para a window procedure. } DispatchMessage(msg); end; end; OBS: Essa thread de verificação de mensagens deve ser usada cuidadosamente para não existir travamentos do sistema. Exemplos, com a função: Parâmetros: 1. Nenhum. Nomenclatura: Windows: a. Evento da Linguagem - WM_APP; Linguagens Disponíveis: Delphi 222 Método DarumaFramework ** Esta função deve constar dentro do seu evento, estamos utilizando o KeyDown, pois a DLL foi configurada para utilizar com melhor desempenho este evento. procedure TFR_MenuMODEM_Principal.AlertarSMSUNREADClick(Sender: TObject); var MSG: tagMSG; MyHandleWnd: HWND; begin if ( FlagAlertarSmsUNREAD = 0 ) then FlagAlertarSmsUNREAD := 1 else FlagAlertarSmsUNREAD := 0; {FUNCAO: FindWindow -> API WIN32 >> Encontra o Handle pelo Caption passado. } MyHandleWnd := FindWindow(NIL,'MODEM - MIN100/MIN200'); {FUNCAO: GetMessage -> API WIN32 >> Recupera uma mensagem da pilha de mensagens da thread } Função while ( ( GetMessage( MSG, 0, 0, 0 ) = TRUE) And ( FlagAlertarSmsUNREAD = 1 ) ) do begin {FUNCAO: TranslateMessage -> API WIN32 >> Traduz mensagens virtualkey para mensagens character. } TranslateMessage(msg); { Verifica se a mensagem é uma WM_APP e se é destinada para a janela da aplicativo do usuário } if ( ( msg.message = WM_APP ) And ( msg.hwnd = MyHandleWnd ) ) then begin EB_NovaMensagem.Text := 'tem SMS UNREAD'; // Aviso de novos SMS end; {FUNCAO: DispatchMessage -> API WIN32 >> dispacha a mensagem para a window procedure. } DispatchMessage(msg); end; end; VB6 Método Função C# Método 223 DarumaFramework - Help 2.5 Função VBNet Método Função Mini Impressora Exemplos e Testes para Nao Fiscal Looping de Status de Impressora Método: rStatusImpressora_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 37 Bibliotecas: DarumaFramework.dll Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderão ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra um "Looping" de status existem na impressora, verificando de forma rotativa o status no qual a mesma se encontra. Exemplos: 224 DarumaFramework Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através rStatusImpressora_DUAL_DarumaFramework: Linguagens Disponíveis: Delphi Método {--Declaracao da função que permitir verificar o Status da Impressora--} Declaração function rStatusImpressora_DUAL_DarumaFramework(): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; begin iRetorno := rStatusImpressora_DUAL_DarumaFramework(); case iRetorno of 0: EB_Status.Text:=('[0] - Impressora desligada'); 1: EB_Status.Text:=('[1] - Impressora OK'); -27: EB_Status.Text:=('[-27] - Erro generico'); -50: EB_Status.Text:=('[-50] - Impressora OFFLINE'); -51: EB_Status.Text:=('[-51] - Impressora sem papel!'); Função -52: EB_Status.Text:=('[-52] - Impressora inicializando'); else EB_Status.Text:=('Retorno não esperado'); end; end; procedure TFR_DUAL_menuTestes_LoopingStatus.BT_EnviarClick( Sender: TObject); begin TM_Status.Enabled:= True; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' Declaração '=========== IMPRESSORAS DUAL ===========' Public Declare Function rStatusImpressora_DUAL_DarumaFramework Lib "Darumaframework.dll" () As Integer 225 DarumaFramework - Help 2.5 Dim iRetorno As Integer iRetorno = rStatusImpressora_DUAL_DarumaFramework() If (iRetorno = 1) Then Select Case (iRetorno) Função Case "0": TB_Status.Text = "[0] - Impressora desligada" Case "1": TB_Status.Text = "[1] - Impressora OK" Case "-27": TB_Status.Text = "[-27] - Erro generico" Case "-50": TB_Status.Text = "[-50] - Impressora OFFLINE" Case "-51": TB_Status.Text = "[-51] - Impressora sem papel!" Case "-52": TB_Status.Text = "[-52] - Impressora inicializando" End Select Else TB_Status.Text = "Retorno não esperado" End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int rStatusImpressora_DUAL_DarumaFramework (); 226 DarumaFramework ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.rStatusImpressora_DUAL_DarumaFramework if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 0 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == -27 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == -50 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 51 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 52) switch (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno) { case 0: TB_Status.Text = "0(zero) - Impressora Desligada!"; Função break; case 1: TB_Status.Text = "1(um) - Impressora OK!"; break; case -50: TB_Status.Text = "-50 - Impressora OFF-LINE!"; break; case -51: TB_Status.Text = "-51 - Impressora Sem Papel!"; break; case -27: TB_Status.Text = "-27 - Erro Generico!"; break; case -52: TB_Status.Text = "-52 - Impressora inicializando!"; break; } else { TB_Status.Text = "Retorno não esperado!"; } VBNet Método '**********************************************************************' Declaração DUAL Public Declare Function rStatusImpressora_DUAL_DarumaFramework Lib "Darumaframework.dll" () As Integer 227 DarumaFramework - Help 2.5 Dim iRetorno As Integer iRetorno = rStatusImpressora_DUAL_DarumaFramework() If (iRetorno = 1) Then Select Case (iRetorno) Case "0" : TB_Status.Text = "[0] - Impressora desligada" Case "1" : TB_Status.Text = "[1] - Impressora OK" Case "-27" : TB_Status.Text = "[-27] - Erro generico" Função Case "-50" : TB_Status.Text = "[-50] - Impressora OFFLINE" Case "-51" : TB_Status.Text = "[-51] - Impressora sem papel!" Case "-52" : TB_Status.Text = "[-52] - Impressora inicializando" End Select Else TB_Status.Text = "Retorno não esperado" End If Exemplo 1 (Buffer) Método: iImprimirTexto_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 33 Bibliotecas: DarumaFramework.dll Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderam ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra o uso das TAGS no método e a impressão de linha à linha. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através iImprimirTexto_DUAL_DarumaFramework: Linguagens Disponíveis: Delphi 228 Método DarumaFramework {--Declaracao da função que imprimir um texto na impressora--} Declaração function iImprimirTexto_DUAL_DarumaFramework(stTexto: String; iTam: Integer ): Integer; StdCall; External {$R *.dfm} var iRetorno: Integer; begin iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tc>~</tc><l></l>' + //IMPRIMINDO A PRIMEIRA LINHA '<ce><e><b>CENTRO DE DANÇA FLASH</b></e></ce>' + //IMPRIMINDO A SEGUNDA LINHA '<l></l><tc>~</tc>' + //IMPRIMINDO A TERCEIRA LINHA '<tb>Rua: <c>XV de Novembro N 785 Centro SP BR</c>' + //IMPRIMINDO A QUARTA LINHA '<tb><i>Fone: 6234-5678 <tb>Fax:6324-5678</i>' + //IMPRIMINDO A QUINTA LINHA '<tb>Data: <dt></dt><tb><tb>Hora: <hr></hr>' + //IMPRIMINDO A SEXTA LINHA '<tb>Pedido:00069<tb><tb>Cliente:00013' + //IMPRIMINDO A SÉTIMA LINHA '<ce><b>Atividades Escolhidas:</b></ce>' + //IMPRIMINDO A OITAVA LINHA '<tb>SAMBA<tb>+<tb>BOLERO<tb>+<tb>FORRÓ' + Função //IMPRIMINDO A NONA LINHA '<l></l><tb><i><e><b>Valor: 55,00</b></e></i><l></l>' + //IMPRIMINDO A DECIMA LINHA '<tb><c>Vencimento: 10-03-05</c>' + //IMPRIMINDO A DECIMA PRIMEIRA LINHA '<tb><c>o não pagamento implica no cancelamento da vaga </c>' + //IMPRIMINDO A DECIMA SEGUNDA LINHA '<tb>Início dia 01 de Fevereiro as 17:30hr' + //IMPRIMINDO A DECIMA TERCEIRA LINHA '<l></l><tb>Venha Dançar!!!<l></l>' + //IMPRIMINDO A DECIMA QUARTA LINHA '<ce><s><c>Samba,Bolero,Soltinho,Forró,Zouk</c></s></ce>' + //IMPRIMINDO A DECIMA QUINTA LINHA '<ad>Obrigado.</ad>'),0); //IMPRIMINDO A DECIMA SEXTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sl>7</sl><sn></sn>'),0); if (iRetorno) = 1 Then Application.MessageBox('Impressao Concluida!', 'Daruma DLL Framework', mb_ok + 32) else Application.MessageBox('Erro, na impressão do Exemplo 1!', 'Daruma DLL Framework', mb_ok + 16); end; 229 DarumaFramework - Help 2.5 VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' Declaração '=========== IMPRESSORAS DUAL ===========' Public Declare Function iImprimirTexto_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTexto As Dim iRetorno As Integer iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tc>~</tc><l></l>" + _ "<ce><e><b>CENTRO DE DANÇA FLASH</b></e></ce>" + _ "<l></l><tc>~</tc>" + _ "<tb>Rua: <c>XV de Novembro N 785 Centro - SP BR</c>" + _ "<tb><i>Fone: 6234-5678 <tb>Fax:6324-5678</i>" + _ "<tb>Data: <dt></dt><tb><tb>Hora: <hr></hr>" + _ "<tb>Pedido:00069<tb><tb>Cliente:00013" + _ "<ce><b>Atividades Escolhidas:</b></ce>" + _ "<tb>SAMBA<tb>+<tb>BOLERO<tb>+<tb>FORRÓ" + _ "<l></l><tb><i><e><b>Valor: 55,00</b></e></i><l></l>" + _ Função "<tb><c>Vencimento: 10-03-05</c>" + _ "<tb><c>o não pagamento implica no cancelamento da vaga </c>" + _ "<tb>Início dia 01 de Fevereiro as 17:30hr" + _ "<l></l><tb>Venha Dançar!!!<l></l>" + _ "<ce><s><c>Samba,Bolero,Soltinho,Forró,Zouk</c></s></ce>" + _ "<ad>Obrigado.</ad>", 0) 'IMPRIMINDO A DECIMA SEXTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sl>7</sl><sn></sn>", 0) If (iRetorno = 1) Then MsgBox "Impressao Concluida!", vbInformation, "Daruma DLL Framework" Else MsgBox "Erro, na impressão do Exemplo 1!", vbInformation, "Daruma DLL Framework" End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int iImprimirTexto_DUAL_DarumaFramework(string stTexto, int iTam); 230 DarumaFramework ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D estar usando outra denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFr //IMPRIMINDO A PRIMEIRA LINHA "<ce><e><b>CENTRO DE DANÇA FLASH</b></e></ce>" + //IMPRIMINDO A SEGUNDA LINHA "<l></l><tc>~</tc>" + //IMPRIMINDO A TERCEIRA LINHA "<tb>Rua: <c>XV de Novembro N 785 Centro CTBA SP BR</c>" + //IMPRIMINDO A QUARTA LINHA "<tb><i>Fone: 234-5678 <tb>Fax:324-5678</i>" + //IMPRIMINDO A QUINTA LINHA "<tb>Data: <dt></dt><tb><tb>Hora: <hr></hr>" + //IMPRIMINDO A SEXTA LINHA "<tb>Pedido:00069<tb><tb>Cliente:00013" + //IMPRIMINDO A SÉTIMA LINHA "<ce><b>Atividades Escolhidas:</b></ce>" + //IMPRIMINDO A OITAVA LINHA "<tb>SAMBA<tb>+<tb>BOLERO<tb>+<tb>FORRÓ" + //IMPRIMINDO A NONA LINHA "<l></l><tb><i><e><b>Valor: 55,00</b></e></i><l></l>" + Função //IMPRIMINDO A DECIMA LINHA "<tb><c>Vencimento: 10-03-05</c>" + //IMPRIMINDO A DECIMA PRIMEIRA LINHA "<tb><c>o não pagamento implica no cancelamento da vaga </c>" + //IMPRIMINDO A DECIMA SEGUNDA LINHA "<tb>Início dia 01 de Fevereiro as 17:30hr" + //IMPRIMINDO A DECIMA TERCEIRA LINHA "<l></l><tb>Venha Dançar!!!<l></l>" + //IMPRIMINDO A DECIMA QUARTA LINHA " <ce><s><c>Samba,Bolero,Soltinho,Forró,Zouk</c></s></ce>" + //IMPRIMINDO A DECIMA QUINTA LINHA "<ad>Obrigado.</ad>", 0); //IMPRIMINDO A DECIMA SEXTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s 0); //IMPRIMINDO A DECIMA SÉTIMA LINHA if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Impressao Concluida!", "Daruma_Framework_CSharp", MessageBoxButtons.OK, } else MessageBox.Show("Erro, na impressão do Exemplo 1!", "Daruma_Framework_CSharp", MessageBox VBNet Método 231 DarumaFramework - Help 2.5 '**********************************************************************' DUAL Declaração Public Declare Function iImprimirTexto_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTexto As Dim iRetorno As Integer iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tc>~</tc><l></l>" + _ "<ce><e><b>CENTRO DE DANÇA FLASH</b></e></ce>" + _ "<l></l><tc>~</tc>" + _ "<tb>Rua: <c>XV de Novembro N 785 Centro - SP BR</c>" + _ "<tb><i>Fone: 6234-5678 <tb>Fax:6324-5678</i>" + _ "<tb>Data: <dt></dt><tb><tb>Hora: <hr></hr>" + _ "<tb>Pedido:00069<tb><tb>Cliente:00013" + _ "<ce><b>Atividades Escolhidas:</b></ce>" + _ "<tb>SAMBA<tb>+<tb>BOLERO<tb>+<tb>FORRÓ" + _ "<l></l><tb><i><e><b>Valor: 55,00</b></e></i><l></l>" + _ Função "<tb><c>Vencimento: 10-03-05</c>" + _ "<tb><c>o não pagamento implica no cancelamento da vaga </c>" + _ "<tb>Início dia 01 de Fevereiro as 17:30hr" + _ "<l></l><tb>Venha Dançar!!!<l></l>" + _ "<ce><s><c>Samba,Bolero,Soltinho,Forró,Zouk</c></s></ce>" + _ "<ad>Obrigado.</ad>", 0) 'IMPRIMINDO A DECIMA SEXTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sl>7</sl><sn></sn>", 0) If (iRetorno = 1) Then MsgBox("Impressao Concluida!", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro, na impressão do Exemplo 1!", vbInformation, "Daruma DLL Framework") End If Exemplo 2 (Tabulação) Método: iImprimirTexto_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 34 Bibliotecas: DarumaFramework.dll Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderão ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra o uso das TAGS dando foco na Tabulação onde pode ser usado em seu sistema, lembrando que para o uso correto da Tabulação devemos verificar o método regTabulacao_DUAL_DarumaFramework. 232 DarumaFramework Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através iImprimirTexto_DUAL_DarumaFramework: Linguagens Disponíveis: Delphi Método {--Declaracao da função que imprimir um texto na impressora--} Declaração function iImprimirTexto_DUAL_DarumaFramework(stTexto: String; iTam: Integer ): Integer; StdCall; External {$R *.dfm} 233 DarumaFramework - Help 2.5 var iRetorno: Integer; begin iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb><b>FRAB<tb>Ano<tb>Modelo<tb>Valor<tb> //IMPRIMINDO A PRIMEIRA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>GM<tb>2000<tb>Corsa<tb>12.000<tb>Azu //IMPRIMINDO A SEGUNDA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>Ford<tb>2005<tb>Fiesta<tb>14.000<tb>Ve //IMPRIMINDO A TERCEIRA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>Fiat<tb>1998<tb>Uno Mille<tb>9.000<tb>B //IMPRIMINDO A QUARTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>GM<tb>1997<tb>Vectra<tb>18.000<tb>Pra //IMPRIMINDO A QUINTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>GM<tb>1999<tb>Tigra<tb>17.000<tb>Verd //IMPRIMINDO A SEXTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>Ford<tb>2001<tb>Versalhes<tb>5.000<tb> //IMPRIMINDO A SÉTIMA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>GM<tb>1998<tb>Corsa<tb>10.000<tb>Pret Função //IMPRIMINDO A OITAVA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>Fiat<tb>1996<tb>Fiurino<tb>6.000<tb>Bra //IMPRIMINDO A NONA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>WV<tb>1979<tb>Fusca<tb>3.000<tb>Bord //IMPRIMINDO A DECIMA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>GM<tb>1996<tb>Vectra<tb>16.000<tb>Gra //IMPRIMINDO A DECIMA PRIMEIRA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>Fiat<tb>1985<tb>Fiat147<tb>3.000<tb>Az //IMPRIMINDO A DECIMA SEGUNDA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>Hond<tb>2003<tb>Civic<tb>28.000<tb>Pre //IMPRIMINDO A DECIMA TERCEIRA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>Fiat<tb>1999<tb>Palio<tb>12.000<tb>Cinz //IMPRIMINDO A DECIMA QUARTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>GM<tb>2003<tb>Celta<tb>17.000<tb>Bran if (iRetorno) = 1 Then Application.MessageBox('Impressao Concluida!!!', 'Daruma Framework', mb_ok + 32) else Application.MessageBox('Erro, na impressão do Exemplo 2!', 'Daruma DLL Framework', mb_ok + 16); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' Declaração '=========== IMPRESSORAS DUAL ===========' Public Declare Function iImprimirTexto_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTexto As 234 DarumaFramework Dim iRetorno As Integer iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb><b>FRAB<tb>Ano<tb>Modelo<tb>Valor<tb>Cor< 'IMPRIMINDO A PRIMEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>GM<tb>2000<tb>Corsa<tb>12.000<tb>Azul", 0) 'IMPRIMINDO A SEGUNDA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Ford<tb>2005<tb>Fiesta<tb>14.000<tb>Verde", 0 'IMPRIMINDO A TERCEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Fiat<tb>1998<tb>Uno Mille<tb>9.000<tb>Branco" 'IMPRIMINDO A QUARTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>GM<tb>1997<tb>Vectra<tb>18.000<tb>Prata", 0) 'IMPRIMINDO A QUINTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>GM<tb>1999<tb>Tigra<tb>17.000<tb>Verde", 0) 'IMPRIMINDO A SEXTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Ford<tb>2001<tb>Versalhes<tb>5.000<tb>Vinho" 'IMPRIMINDO A SÉTIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>GM<tb>1998<tb>Corsa<tb>10.000<tb>Preto", 0) 'IMPRIMINDO A OITAVA LINHA Função iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Fiat<tb>1996<tb>Fiurino<tb>6.000<tb>Branca", 0 'IMPRIMINDO A NONA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>WV<tb>1979<tb>Fusca<tb>3.000<tb>Bordo", 0) 'IMPRIMINDO A DECIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>GM<tb>1996<tb>Vectra<tb>16.000<tb>Grafite", 'IMPRIMINDO A DECIMA PRIMEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Fiat<tb>1985<tb>Fiat147<tb>3.000<tb>Azul", 0) 'IMPRIMINDO A DECIMA SEGUNDA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Hond<tb>2003<tb>Civic<tb>28.000<tb>Preto", 0 'IPRIMINDO A DECIMA TERCEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Fiat<tb>1999<tb>Palio<tb>12.000<tb>Cinza", 0) 'IMPRIMINDO A DECIMA QUARTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>GM<tb>2003<tb>Celta<tb>17.000<tb>Branco<sl> If (iRetorno = 1) Then MsgBox "Impressao Concluida!", vbInformation, "Daruma DLL Framework" Else MsgBox "Erro, na impressão do Exemplo 2!", vbInformation, "Daruma DLL Framework" End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int iImprimirTexto_DUAL_DarumaFramework(string stTexto, int iTam); 235 DarumaFramework - Help 2.5 ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D exemplos no qual em sua aplicação poderá estar usando outra denominação. //IMPRIMINDO A PRIMEIRA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A SEGUNDA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A TERCEIRA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A QUARTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A QUINTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A SEXTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A SETIMA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A OITAVA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A NONA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A DECIMA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A DECIMA PRIMEIRA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A DECIMA SEGUNDA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A DECIMA TERCEIRA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A DECIMA QUARTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A DECIMA QUINTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = 236 DarumaFramework DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t 0); if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Impressao Concluida!", "Daruma_Framework_CSharp", MessageBoxButtons.OK, } else MessageBox.Show("Erro, na impressão do Exemplo 2!", "Daruma_Framework_CSharp", MessageBox 237 DarumaFramework - Help 2.5 VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function iImprimirTexto_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTexto As Dim iRetorno As Integer iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb><b>FRAB<tb>Ano<tb>Modelo<tb>Valor<tb> 'IMPRIMINDO A PRIMEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>GM<tb>2000<tb>Corsa<tb>12.000<tb>Azul 'IMPRIMINDO A SEGUNDA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Ford<tb>2005<tb>Fiesta<tb>14.000<tb>Ver 'IMPRIMINDO A TERCEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Fiat<tb>1998<tb>Uno Mille<tb>9.000<tb>Br 'IMPRIMINDO A QUARTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>GM<tb>1997<tb>Vectra<tb>18.000<tb>Prat 'IMPRIMINDO A QUINTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>GM<tb>1999<tb>Tigra<tb>17.000<tb>Verde 'IMPRIMINDO A SEXTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Ford<tb>2001<tb>Versalhes<tb>5.000<tb>V 'IMPRIMINDO A SÉTIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>GM<tb>1998<tb>Corsa<tb>10.000<tb>Preto 'IMPRIMINDO A OITAVA LINHA Função iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Fiat<tb>1996<tb>Fiurino<tb>6.000<tb>Bran 'IMPRIMINDO A NONA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>WV<tb>1979<tb>Fusca<tb>3.000<tb>Bordo 'IMPRIMINDO A DECIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>GM<tb>1996<tb>Vectra<tb>16.000<tb>Gra 'IMPRIMINDO A DECIMA PRIMEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Fiat<tb>1985<tb>Fiat147<tb>3.000<tb>Azu 'IMPRIMINDO A DECIMA SEGUNDA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Hond<tb>2003<tb>Civic<tb>28.000<tb>Pre 'IPRIMINDO A DECIMA TERCEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>Fiat<tb>1999<tb>Palio<tb>12.000<tb>Cinza 'IMPRIMINDO A DECIMA QUARTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>GM<tb>2003<tb>Celta<tb>17.000<tb>Bran If (iRetorno = 1) Then MsgBox("Impressao Concluida!", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro, na impressão do Exemplo 2!", vbInformation, "Daruma DLL Framework") End If Exemplo 3 (Linha-a-Linha) Método: iImprimirTexto_DUAL_DarumaFramework Impressora: DR600, DR700. 238 DarumaFramework Índice: 35 Bibliotecas: DarumaFramework.dll Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderão ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra o uso das TAGS onde pode ser usado em seu sistema, nos exemplos abaixo estamos demonstrando como utilizar o método em modo BUFFER, lembranod que o BUFFER permitido no método é de até 2000 caracteres. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através iImprimirTexto_DUAL_DarumaFramework: Linguagens Disponíveis: Delphi Método {--Declaracao da função que imprimir um texto na impressora--} Declaração function iImprimirTexto_DUAL_DarumaFramework(stTexto: String; iTam: Integer ): Integer; StdCall; External {$R *.dfm} 239 DarumaFramework - Help 2.5 var iRetorno: Integer; begin iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tc>#</tc>'),0); //IMPRIMINDO A PRIMEIRA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<e><ce>ACADEMIA NEW SPORTS</ce></e>'),0) //IMPRIMINDO A SEGUNDA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb><i>Rua Nossa Senhora da Luz</i>, 350'),0); //IMPRIMINDO A TERCEIRA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb><i>Jardim Social - Curitiba - PR</i>'),0) //IMPRIMINDO A QUARTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tb>CNPJ 04.888.968/0001-79<tb><e>234-5678 //IMPRIMINDO A QUINTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tc>#</tc><l></l>'),0); //IMPRIMINDO A SEXTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<i><dt></dt><i>'),0); //IMPRIMINDO A SÉTIMA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<ad>Recibo nr.258963</ad><l></l>'),0); //IMPRIMINDO A OITAVA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<c>Nome : </c><b>ELAINE MARIA</b><sp>5</ //IMPRIMINDO A NONA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<c>Plano : </c><b>MUSCULAÇÃO NOTURNO</b> Função //IMPRIMINDO A DECIMA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<ce><e>VALOR PAGO : 45,00</e></ce>'),0); //IMPRIMINDO A DECIMA PRIMEIRA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<c>Ref. ao período de 03/04/2005 até 03/05/2005 //IMPRIMINDO A DECIMA SEGUNDA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<c>Obs: MENSALIDADE</c><l></l>'),0); //IMPRIMINDO A DECIMA TERCEIRA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tc>_</tc><l></l>'),0); //IMPRIMINDO A DECIMA QUARTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<ce><e>WWW.ACADEMIANEW.COM.BR</e></ce //IMPRIMINDO A DECIMA QUINTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<tc>_</tc><l></l>'),0); //IMPRIMINDO A DECIMA SEXTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<ce><e>SAUDE BELEZA E BEM ESTAR</e></ce> //IMPRIMINDO A DECIMA SÉTIMA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sl>7</sl>'),0); if (iRetorno) = 1 Then Application.MessageBox('Impressao Concluida!', 'Daruma DLL Framework', mb_ok + 32) else Application.MessageBox('Erro, na impressão do Exemplo 3!', 'Daruma DLL Framework', mb_ok + 16); end; VB6 240 Método DarumaFramework '=============DECLARACOES DARUMA FRAMEWORK========================' Declaração '=========== IMPRESSORAS DUAL ===========' Public Declare Function iImprimirTexto_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTexto As Dim iRetorno As Integer iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tc>#</tc>", 0) 'IMPRIMINDO A PRIMEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<e><ce>ACADEMIA NEW SPORTS</ce></e>", 0) 'IMPRIMINDO A SEGUNDA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb><i>Rua Nossa Senhora da Luz</i>, 350", 0) 'IMPRIMINDO A TERCEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb><i>Jardim Social - Curitiba - PR</i>", 0) 'IMPRIMINDO A QUARTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>CNPJ 04.888.968/0001-79<tb><e>234-5678<l></ 'IMPRIMINDO A QUINTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tc>#</tc><l></l>", 0) 'IMPRIMINDO A SEXTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<i><dt></dt><i>", 0) 'IMPRIMINDO A SÉTIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ad>Recibo nr.258963</ad><l></l>", 0) 'IMPRIMINDO A OITAVA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<c>Nome : </c><b>ELAINE MARIA</b><sp>5</sp>(5 'IMPRIMINDO A NONA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<c>Plano : </c><b>MUSCULAÇÃO NOTURNO</b><sp> Função 'IMPRIMINDO A DECIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><e>VALOR PAGO : 45,00</e></ce>", 0) 'IMPRIMINDO A DECIMA PRIMEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<c>Ref. ao período de 03/04/2005 até 03/05/2005</c>< 'IMPRIMINDO A DECIMA SEGUNDA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<c>Obs: MENSALIDADE</c><l></l>", 0) 'IMPRIMINDO A DECIMA TERCEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tc>_</tc><l></l>", 0) 'IMPRIMINDO A DECIMA QUARTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><e>WWW.ACADEMIANEW.COM.BR</e></ce>", 0) 'IMPRIMINDO A DECIMA QUINTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tc>_</tc><l></l>", 0) 'IMPRIMINDO A DECIMA SEXTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><e>SAUDE BELEZA E BEM ESTAR</e></ce>", 0) 'IMPRIMINDO A DECIMA SÉTIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sl>7</sl>", 0) If (iRetorno = 1) Then MsgBox "Impressao Concluida!", vbInformation, "Daruma DLL Framework" Else MsgBox "Erro, na impressão do Exemplo 3!", vbInformation, "Daruma DLL Framework" End If C# Método 241 DarumaFramework - Help 2.5 //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int iImprimirTexto_DUAL_DarumaFramework(string stTexto, int iTam); 242 DarumaFramework ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D aplicação poderá estar usando outra denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFr //IMPRIMINDO A PRIMEIRA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<e //IMPRIMINDO A SEGUNDA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A TERCEIRA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A QUARTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.D 04.888.968/0001-79<tb><e>234-5678<l></l></e>", 0); //IMPRIMINDO A QUINTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A SEXTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<i //IMPRIMINDO A SÉTIMA LINHA Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<a //IMPRIMINDO A OITAVA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.D </c><b>ELAINE MARIA</b><sp>5</sp>(545)<l></l> ", 0); //IMPRIMINDO A NONA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.D </c><b>MUSCULAÇÃO NOTURNO</b><sp>5</sp>(5)<l></l> ", 0); //IMPRIMINDO A DECIMA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<c //IMPRIMINDO A DECIMA PRIMEIRA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.D período de 03/04/2005 até 03/05/2005</c><l></l>", 0); //IMPRIMINDO A DECIMA SEGUNDA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.D MENSALIDADE</c><l></l>", 0); //IMPRIMINDO A DECIMA TERCEIRA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A DECIMA QUARTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<c //IMPRIMINDO A DECIMA QUINTA LINHA 243 DarumaFramework - Help 2.5 DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<t //IMPRIMINDO A DECIMA SEXTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<c //IMPRIMINDO A DECIMA SÉTIMA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s 0); //IMPRIMINDO A DECIMA OITAVA LINHA if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Impressao Concluida!", "Daruma_Framework_CSharp", MessageBoxButtons.OK, } else MessageBox.Show("Erro, na impressão do Exemplo 3!", "Daruma_Framework_CSharp", MessageBox 244 DarumaFramework VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function iImprimirTexto_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTexto As Dim iRetorno As Integer iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tc>#</tc>", 0) 'IMPRIMINDO A PRIMEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<e><ce>ACADEMIA NEW SPORTS</ce></e>", 0) 'IMPRIMINDO A SEGUNDA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb><i>Rua Nossa Senhora da Luz</i>, 350", 0) 'IMPRIMINDO A TERCEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb><i>Jardim Social - Curitiba - PR</i>", 0) 'IMPRIMINDO A QUARTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tb>CNPJ 04.888.968/0001-79<tb><e>234-5678< 'IMPRIMINDO A QUINTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tc>#</tc><l></l>", 0) 'IMPRIMINDO A SEXTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<i><dt></dt><i>", 0) 'IMPRIMINDO A SÉTIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ad>Recibo nr.258963</ad><l></l>", 0) 'IMPRIMINDO A OITAVA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<c>Nome : </c><b>ELAINE MARIA</b><sp>5</s 'IMPRIMINDO A NONA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<c>Plano : </c><b>MUSCULAÇÃO NOTURNO</b> Função 'IMPRIMINDO A DECIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><e>VALOR PAGO : 45,00</e></ce>", 0) 'IMPRIMINDO A DECIMA PRIMEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<c>Ref. ao período de 03/04/2005 até 03/05/2005 'IMPRIMINDO A DECIMA SEGUNDA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<c>Obs: MENSALIDADE</c><l></l>", 0) 'IMPRIMINDO A DECIMA TERCEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tc>_</tc><l></l>", 0) 'IMPRIMINDO A DECIMA QUARTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><e>WWW.ACADEMIANEW.COM.BR</e></ce> 'IMPRIMINDO A DECIMA QUINTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<tc>_</tc><l></l>", 0) 'IMPRIMINDO A DECIMA SEXTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><e>SAUDE BELEZA E BEM ESTAR</e></ce>" 'IMPRIMINDO A DECIMA SÉTIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sl>7</sl>", 0) If (iRetorno = 1) Then MsgBox("Impressao Concluida!", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro, na impressão do Exemplo 3!", vbInformation, "Daruma DLL Framework") End If 245 DarumaFramework - Help 2.5 Exemplo 4 (Formulario) Método: iImprimirTexto_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 36 Bibliotecas: DarumaFramework.dll Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderão ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra o uso das TAGS onde pode ser usado em seu sistema, no exemplos abaixo estamos demonstrando como utilizar o método dentro de um formulário como fosse em seu sistema. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através iImprimirTexto_DUAL_DarumaFramework: Linguagens Disponíveis: Delphi Método {--Declaracao da função que imprimir um texto na impressora--} Declaração function iImprimirTexto_DUAL_DarumaFramework(stTexto: String; iTam: Integer ): Integer; StdCall; External 'DarumaFramework.dll' {$R *.dfm} 246 DarumaFramework var Str_Nome_Empresa: String; Str_Endereco_Empresa: String; Str_Fone_Empresa: String; Str_Numero_Pedido: String; Str_Data_Pedido: String; Str_Tema_Mensagem: String; Str_Titulo_Mensagem: String; Str_Valor_Mensagem: String; Str_Forma_Cobranca: String; Str_Cliente: String; Str_Fone_Res: String; Str_Fone_Celular: String; Str_Fone_Com: String; Str_Mensagem_Promo: String; Str_Hora: String; iRetorno: Integer; begin Str_Nome_Empresa:= EB_Nome_Empresa.Text; Str_Endereco_Empresa:= EB_Endereco_Empresa.Text; Str_Fone_Empresa:= EB_Fone_Empresa.Text; Str_Numero_Pedido:= EB_Numero_Pedido.Text; Str_Tema_Mensagem:= EB_Tema_Mensagem.Text; Função Str_Data_Pedido:= EB_Data_Pedido.Text; Str_Titulo_Mensagem:= EB_Titulo_Mensagem.Text; Str_Valor_Mensagem:= EB_Valor_Mensagem.Text; Str_Forma_Cobranca:= EB_Forma_Cobranca.Text; Str_Cliente:= EB_Cliente.Text; Str_Fone_Res:= EB_Fone_Res.Text; Str_Fone_Celular:= EB_Celular.Text; Str_Fone_Com:= EB_Fone_Com.Text; Str_Mensagem_Promo:= EB_Mensagem_Promo.Text; Str_Hora:= EB_Hora.Text; begin begin //Imprimindo iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<e><ce><b>' + Str_Nome_Empresa + '</b>< //IMPRIMINDO A PRIMEIRA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<ce><tc>-</tc></ce>'),0); //IMPRIMINDO A SEGUNDA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sp>4</sp>' + LB_Endereco_Empresa.Caption Str_Endereco_Empresa + '</i>'),0); //IMPRIMINDO A TERCEIRA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sp>4</sp>' + LB_Fone_Empresa.Caption + '< Str_Fone_Empresa + '</i>'),0); //IMPRIMINDO A QUARTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sp>4</sp>' + LB_Pedido_N.Caption + '<i>' + 247 DarumaFramework - Help 2.5 EB_Numero_Pedido.Text + '</i>'),0); //IMPRIMINDO A QUINTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sp>4</sp>' + LB_Data.Caption + '<i><dt>< //IMPRIMINDO A SEXTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<ce><tc>-</tc></ce>'),0); //IMPRIMINDO A SÉTIMA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sp>4</sp>' + LB_Tema_Mensagem.Caption + EB_Tema_Mensagem.Text + '</i>'),0); //IMPRIMINDO A OITAVA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sp>4</sp>' + LB_Titulo_Mensagem.Caption + EB_Titulo_Mensagem.Text + '</i>'),0); //IMPRIMINDO A NONA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sp>4</sp>' + LB_Valor_Mensagem.Caption + EB_Valor_Mensagem.Text + '</i>'),0); //IMPRIMINDO A DECIMA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sp>4</sp>' + LB_Forma_Cobranca.Caption + EB_Forma_Cobranca.Text + '</i>'),0); //IMPRIMINDO A DECIMA PRIMEIRA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sp>4</sp>' + LB_Cliente.Caption + '<i>' + E '</i>'),0); //IMPRIMINDO A DECIMA SEGUNDA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sp>4</sp>' + LB_Fone_Res.Caption + '<i>' + EB_Fone_Res.Text + '</i>'),0); //IMPRIMINDO A DECIMA TERCEIRA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sp>4</sp>' + LB_Celular.Caption + '<i>' + E '</i>'),0); //IMPRIMINDO A DECIMA QUARTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<sp>4</sp>' + LB_Fone_Com.Caption + '<i>' EB_Fone_Com.Text + '</i><sl>1</sl>'),0); //IMPRIMINDO A DECIMA QUINTA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<ce><b>' + EB_Mensagem_Promo.Text + '</b></ce><sl>2</sl>'),0); //IMPRIMINDO A DECIMA SEXTA LINHA iRetorno:=iImprimirTexto_DUAL_DarumaFramework(pchar('<sp>35</sp>' + LB_Hora.Caption + '<hr></hr //IMPRIMINDO A DECIMA SÉTIMA LINHA iRetorno:= iImprimirTexto_DUAL_DarumaFramework(pchar('<ce><tc>-</tc></ce><sl>7</sl>'),0); if (iRetorno = 1) Then Application.MessageBox('Impressao Concluida!', 'Daruma DLL Framework', mb_ok + 32) else Application.MessageBox('Erro ao Imprimir seu Formulario!', 'Daruma DLL Framework', mb_ok + 16); end; end; 248 DarumaFramework VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function iImprimirTexto_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTexto As As Integer) As Integer Dim Str_Nome_Empresa As String Dim Str_Endereco_Empresa As String Dim Str_Fone_Empresa As String Dim Str_Numero_Pedido As String Dim Str_Data_Pedido As String Dim Str_Tema_Mensagem As String Dim Str_Titulo_Mensagem As String Dim Str_Valor_Mensagem As String Dim Str_Forma_Cobranca As String Dim Str_Cliente As String Dim Str_Fone_Res As String Dim Str_Fone_Celular As String Dim Str_Fone_Com As String Dim Str_Mensagem_Promo As String Dim Str_Hora As String Dim iRetorno As Integer Str_Nome_Empresa = TB_Nome_Empresa.Text Str_Endereco_Empresa = TB_Endereco_Empresa.Text Str_Fone_Empresa = TB_Fone_Empresa.Text Função Str_Numero_Pedido = TB_Numero_Pedido.Text Str_Tema_Mensagem = TB_Tema_Mensagem.Text Str_Data_Pedido = TB_Data_Pedido.Text Str_Titulo_Mensagem = TB_Titulo_Mensagem.Text Str_Valor_Mensagem = TB_Valor_Mensagem.Text Str_Forma_Cobranca = TB_Forma_Cobranca.Text Str_Cliente = TB_Cliente.Text Str_Fone_Res = TB_Fone_Res.Text Str_Fone_Celular = TB_Celular.Text Str_Fone_Com = TB_Fone_Com.Text Str_Mensagem_Promo = TB_Mensagem_Promo.Text Str_Hora = TB_Hora.Text 'Imprimindo iRetorno = iImprimirTexto_DUAL_DarumaFramework("<e><ce><b>" + Str_Nome_Empresa + "</b></ce> 'IMPRIMINDO A PRIMEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><tc>-</tc></ce>", 0) 'IMPRIMINDO A SEGUNDA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Endereco_Empresa.Caption + "< Str_Endereco_Empresa + "</i>", 0) 'IMPRIMINDO A TERCEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Fone_Empresa.Caption + "<i>" + 249 DarumaFramework - Help 2.5 Str_Fone_Empresa + "</i>", 0) 'IMPRIMINDO A QUARTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Pedido_N.Caption + "<i>" + TB_Numero_Pedido.Text + "</i>", 0) 'IMPRIMINDO A QUINTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Data.Caption + "<i><dt></dt>< 'IMPRIMINDO A SEXTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><tc>-</tc></ce>", 0) 'IMPRIMINDO A SÉTIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Tema_Mensagem.Caption + "<i> TB_Tema_Mensagem.Text + "</i>", 0) 'IMPRIMINDO A OITAVA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Titulo_Mensagem.Caption + "<i> TB_Titulo_Mensagem.Text + "</i>", 0) 'IMPRIMINDO A NONA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Valor_Mensagem.Caption + "<i> TB_Valor_Mensagem.Text + "</i>", 0) 'IMPRIMINDO A DECIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Forma_Cobranca.Caption + "<i> TB_Forma_Cobranca.Text + "</i>", 0) 'IMPRIMINDO A DECIMA PRIMEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Cliente.Caption + "<i>" + TB_Cl 0) 'IMPRIMINDO A DECIMA SEGUNDA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Fone_Res.Caption + "<i>" + TB_ "</i>", 0) 'IMPRIMINDO A DECIMA TERCEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Celular.Caption + "<i>" + TB_Ce "</i>", 0) 'IMPRIMINDO A DECIMA QUARTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Fone_Com.Caption + "<i>" + TB "</i><sl>1</sl>", 0) 'IMPRIMINDO A DECIMA QUINTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><b>" + TB_Mensagem_Promo.Text + "</b></c 'IMPRIMINDO A DECIMA SEXTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>35</sp>" + LB_Hora.Caption + "<hr></hr>", 0 'IMPRIMINDO A DECIMA SÉTIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><tc>-</tc></ce><sl>7</sl>", 0) If (iRetorno = 1) Then MsgBox "Impressao Concluida!", vbInformation, "Daruma DLL Framework" Else MsgBox "Erro ao Imprimir seu Formulario!", vbInformation, "Daruma DLL Framework" End If C# Método Declaração //*************Métodos para Impressoras Dual************* 250 DarumaFramework [DllImport("DarumaFrameWork.dll")] public static extern int iImprimirTexto_DUAL_DarumaFramework(string stTexto, int iTam); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denomi string Str_Nome_Empresa; string Str_Endereco_Empresa; string Str_Fone_Empresa; string Str_Numero_Pedido; string Str_Tema_Mensagem; string Str_Titulo_Mensagem; string Str_Valor_Mensagem; string Str_Forma_Cobranca; string Str_Cliente; string Str_Fone_Res; string Str_Fone_Celular; string Str_Fone_Com; string Str_Mensagem_Promo; string Str_Hora; Str_Nome_Empresa = TB_Nome_Empresa.Text; Str_Endereco_Empresa = TB_Endereco_Empresa.Text; Str_Fone_Empresa = TB_Fone_Empresa.Text; Str_Numero_Pedido = TB_Numero_Pedido.Text; Função Str_Tema_Mensagem = TB_Tema_Mensagem.Text; Str_Titulo_Mensagem = TB_Titulo_Mensagem.Text; Str_Valor_Mensagem = TB_Valor_Mensagem.Text; Str_Forma_Cobranca = TB_Forma_Cobranca.Text; Str_Cliente = TB_Cliente.Text; Str_Fone_Res = TB_Fone_Res.Text; Str_Fone_Celular = TB_Celular.Text; Str_Fone_Com = TB_Fone_Com.Text; Str_Mensagem_Promo = TB_Mensagem_Promo.Text; Str_Hora = TB_Hora.Text; //IMPRIMINDO A PRIMEIRA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<i + TB_Nome_Empresa.Text + "</e></i>", 0); //IMPRIMINDO A SEGUNDA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<c </tc></ce>", 0); //IMPRIMINDO A TERCEIRA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s 251 DarumaFramework - Help 2.5 LB_Endereco_Empresa.Text + "<i>" + TB_Endereco_Empresa.Text + "</i>", 0); //IMPRIMINDO A QUARTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s LB_Fone_Empresa.Text + "<i>" + TB_Fone_Empresa.Text + "</i>", 0); //IMPRIMINDO A QUINTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s LB_Pedido_N.Text + "<i>" + TB_Numero_Pedido.Text + "</i>", 0); //IMPRIMINDO A SEXTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s LB_Data.Text + "<i><dt></dt></i>", 0); //IMPRIMINDO A SETIMA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<c </tc></ce>", 0); //IMPRIMINDO A OITAVA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s LB_Tema_Mensagem.Text + "<i>" + TB_Tema_Mensagem.Text + "</i>", 0); //IMPRIMINDO A NONA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s LB_Titulo_Mensagem.Text + "<i>" + TB_Titulo_Mensagem.Text + "</i>", 0); //IMPRIMINDO A DECIMA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s LB_Valor_Mensagem.Text + "<i>" + TB_Valor_Mensagem.Text + "</i>", 0); //IMPRIMINDO A DECIMA PRIMEIRA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s LB_Forma_Cobranca.Text + "<i>" + TB_Forma_Cobranca.Text + "</i>", 0); //IMPRIMINDO A DECIMA SEGUNDA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s LB_Cliente.Text + "<i>" + TB_Cliente.Text + "</i>", 0); //IMPRIMINDO A DECIMA TERCEIRA LINHA 252 DarumaFramework DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s LB_Fone_Res.Text + "<i>" + TB_Fone_Res.Text + "</i>", 0); //IMPRIMINDO A DECIMA QUARTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s LB_Celular.Text + "<i>" + TB_Celular.Text + "</i>", 0); //IMPRIMINDO A DECIMA QUINTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s LB_Fone_Com.Text + "<i>" + TB_Fone_Com.Text + "</i><sl>1</sl>", 0); //IMPRIMINDO A DECIMA SEXTA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<c TB_Mensagem_Promo.Text + "</b></ce><sl>2</sl>", 0); //IMPRIMINDO A DECIMA OITAVA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<s LB_Hora.Text + "<hr></hr>", 0); //IMPRIMINDO A DECIMA NONA LINHA DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<c </tc></ce><sl>8</sl>", 0); if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Impressao Concluida!", "Daruma_Framework_CSharp", MessageBoxButtons.OK, MessageBoxIcon.Information); } else MessageBox.Show("Erro ao Imprimir seu Formulario!", "Daruma_Framework_CSharp", MessageBoxB MessageBoxIcon.Error); VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function iImprimirTexto_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTexto As As Integer) As Integer Função Dim Str_Nome_Empresa As String Dim Str_Endereco_Empresa As String 253 DarumaFramework - Help 2.5 Dim Str_Fone_Empresa As String Dim Str_Numero_Pedido As String Dim Str_Data_Pedido As String Dim Str_Tema_Mensagem As String Dim Str_Titulo_Mensagem As String Dim Str_Valor_Mensagem As String Dim Str_Forma_Cobranca As String Dim Str_Cliente As String Dim Str_Fone_Res As String Dim Str_Fone_Celular As String Dim Str_Fone_Com As String Dim Str_Mensagem_Promo As String Dim Str_Hora As String Dim iRetorno As Integer Str_Nome_Empresa = TB_Nome_Empresa.Text Str_Endereco_Empresa = TB_Endereco_Empresa.Text Str_Fone_Empresa = TB_Fone_Empresa.Text Str_Numero_Pedido = TB_Numero_Pedido.Text Str_Tema_Mensagem = TB_Tema_Mensagem.Text Str_Data_Pedido = TB_Data_Pedido.Text Str_Titulo_Mensagem = TB_Titulo_Mensagem.Text Str_Valor_Mensagem = TB_Valor_Mensagem.Text Str_Forma_Cobranca = TB_Forma_Cobranca.Text Str_Cliente = TB_Cliente.Text Str_Fone_Res = TB_Fone_Res.Text Str_Fone_Celular = TB_Celular.Text Str_Fone_Com = TB_Fone_Com.Text Str_Mensagem_Promo = TB_Mensagem_Promo.Text Str_Hora = TB_Hora.Text 'Imprimindo iRetorno = iImprimirTexto_DUAL_DarumaFramework("<e><ce><b>" + Str_Nome_Empresa + "</b></ce 'IMPRIMINDO A PRIMEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><tc>-</tc></ce>", 0) 'IMPRIMINDO A SEGUNDA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Endereco_Empresa.Text + "<i> Str_Endereco_Empresa + "</i>", 0) 'IMPRIMINDO A TERCEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Fone_Empresa.Text + "<i>" + + "</i>", 0) 'IMPRIMINDO A QUARTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Pedido_N.Text + "<i>" + TB_N + "</i>", 0) 'IMPRIMINDO A QUINTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Data.Text + "<i><dt></dt>< 'IMPRIMINDO A SEXTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><tc>-</tc></ce>", 0) 'IMPRIMINDO A SÉTIMA LINHA 254 DarumaFramework iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Tema_Mensagem.Text + "<i>" TB_Tema_Mensagem.Text + "</i>", 0) 'IMPRIMINDO A OITAVA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Titulo_Mensagem.Text + "<i>" TB_Titulo_Mensagem.Text + "</i>", 0) 'IMPRIMINDO A NONA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Valor_Mensagem.Text + "<i>" TB_Valor_Mensagem.Text + "</i>", 0) 'IMPRIMINDO A DECIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Forma_Cobranca.Text + "<i>" TB_Forma_Cobranca.Text + "</i>", 0) 'IMPRIMINDO A DECIMA PRIMEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Cliente.Text + "<i>" + TB_Clie 0) 'IMPRIMINDO A DECIMA SEGUNDA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Fone_Res.Text + "<i>" + TB_F "</i>", 0) 'IMPRIMINDO A DECIMA TERCEIRA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Celular.Text + "<i>" + TB_Cel 0) 'IMPRIMINDO A DECIMA QUARTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>4</sp>" + LB_Fone_Com.Text + "<i>" + TB_ "</i><sl>1</sl>", 0) 'IMPRIMINDO A DECIMA QUINTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><b>" + TB_Mensagem_Promo.Text + "</b>< 0) 'IMPRIMINDO A DECIMA SEXTA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<sp>35</sp>" + LB_Hora.Text + "<hr></hr>", 0) 'IMPRIMINDO A DECIMA SÉTIMA LINHA iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ce><tc>-</tc></ce><sl>7</sl>", 0) If (iRetorno = 1) Then MsgBox("Impressao Concluida!", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao Imprimir seu Formulario!", vbInformation, "Daruma DLL Framework") End If Looping de Status do Documento Método: rStatusDocumento_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 38 Bibliotecas: DarumaFramework.dll 255 DarumaFramework - Help 2.5 Descrição: Para Facilitar o manuseio dos métodos inserimos alguns exemplos que poderão ser de ajuda em seu desenvolvimento como o exemplo abaixo, que demonstra um "Looping" de status do documento posicionado na Impressora, verificando de forma rotativa o status no qual a mesma se encontra. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima, ou você poder acessar ele através rStatusDocumento_DUAL_DarumaFramework: Linguagens Disponíveis: Delphi Método {--Declaracao da função que permiti verificar o Status atual do documento--} Declaração function rStatusDocumento_DUAL_DarumaFramework(): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; begin iRetorno := rStatusImpressora_DUAL_DarumaFramework(); case iRetorno of 0: EB_Status.Text:=('[0] - Documento não posicionado, verifique novamente!'); 1: EB_Status.Text:=('[1] - Documento posicionado!'); -27: EB_Status.Text:=('[-27] - Erro Generico'); else EB_Status.Text:=('Retorno não esperado'); Função end; end; procedure TFR_DUAL_menuTestes_LoopingStatusDocumento.BT_EnviarClick( Sender: TObject); begin TM_Status.Enabled:= True; end; procedure TFR_DUAL_menuTestes_LoopingStatusDocumento.BT_StopClick( Sender: TObject); 256 DarumaFramework begin TM_status.Enabled:= false; EB_status.Text:= ''; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' Declaração '=========== IMPRESSORAS DUAL ===========' Public Declare Function rStatusDocumento_DUAL_DarumaFramework Lib "Darumaframework.dll" () As Integer Dim iRetorno As Integer iRetorno = rStatusDocumento_DUAL_DarumaFramework() If (iRetorno = 1) Then Select Case (iRetorno) Função Case "0": TB_StatusDoc.Text = "[0] - Documento não posicionado, favor verificar" Case "1": TB_StatusDoc.Text = "[1] - Documento posicionado" Case "-27": TB_StatusDoc.Text = "[-27] - Erro generico" End Select Else TB_StatusDoc.Text = "Retorno não esperado" End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int rStatusDocumento_DUAL_DarumaFramework (); 257 DarumaFramework - Help 2.5 ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.rStatusDocumento_DUAL_DarumaFramework if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 0 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == -27) switch (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno) { Função case 0: TB_StatusDoc.Text = "0(zero) - Documento não posicionado, favor verificar!"; break; case 1: TB_StatusDoc.Text = "1(um) - Documento posicionado"; break; case -27: TB_StatusDoc.Text = "-27 - Erro Generico!"; break; } else { TB_StatusDoc.Text = "Retorno não esperado!"; } VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function rStatusDocumento_DUAL_DarumaFramework Lib "Darumaframework.dll" () As Integer Dim iRetorno As Integer iRetorno = rStatusDocumento_DUAL_DarumaFramework() If (iRetorno = 1) Then Select Case (iRetorno) Case "0" : TB_StatusDoc.Text = "[0] - Documento não posicionado, favor verificar" Função Case "1" : TB_StatusDoc.Text = "[1] - Documento posicionado" Case "-27" : TB_StatusDoc.Text = "[-27] - Erro generico" End Select Else TB_StatusDoc.Text = "Retorno não esperado" End If Metodos para Autenticacao Impressao iImprimirTexto_DUAL_Daruma Framework 258 DarumaFramework Método: iImprimirTexto_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 32 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite enviar textos para a impressora através de TAGS e conteúdo desenvolvido, em até 2000 caracteres. Dia-a-Dia: Este método permite o desenvolvedor envie documentos linha à linha ou através do BUFFER, texto para a impressora, contento até 2000 caracteres. Dica: O método é necessita da configuração de registro(registry) para trabalhar de acordo com o projeto, como Porta de Comunicação entre outras, que você pode conferir em nosso help nos métodos para Registro(Registry). Observações: 1. O arquivo deve conter até 2000 bytes. 2. Caso haja alguma necessitade de formatação no texto que será enviado para a impressora é capaz de trabalhar com as seguintes TAGS, no protocolo DHTML, como segue abaixo: <b></b> - Para sinalizar Negrito; <i></i> - Para sinalizar Itálico; <ad></ad> - Para alinhar a Direita; <s></s> - Para sinalizar Sublinhado; <e></e> - Para sinalizar Expandido; <c></c> - Para sinalizar Condensado; 259 DarumaFramework - Help 2.5 <n></n> - Para sinalizar Normal; <l></l> - Para saltar uma Linha; <sl>NN</sl> - Para saltar várias Linhas; <tc>C</tc> - Riscar linha com um caráctere especifico; <ce></ce> - Para Centralizar; <dt></dt> - Para imprimir Data Atual; <hr></hr> - Para imprimir Hora Atual; <sp>NN</sp> - Inserir NN espaços em branco ; <sn></sn> - Sinal sonoro, apitar; <g></g> - Abre a Gaveta; <a> - Aguardar até o término da impressão; </a> - Não aguardar até o término da impressão; <tb></tb> - Tabulação; <bmp></bmp> - Para fazer o upload do bitmap na impressora; <gui></gui> - Para acionamento da guilhotina, exclusivo impressora não fiscal térmica; <da></da> - Para duplicar a altura do caractere; <fe>texto</fe> - Habilita o modo fonte Elite na impressora. <slm>texto</slm> - Avanço milimetrico. Tags para Código de Barras: <ean13>123456789012</ean13>; <pdf>12345</pdf> - Para imprimir o código de barras PDF417; <ean8>1234567</ean8>; <upc-a>12345678901</upc-a>; <code11>12345678901</code11>; <msi>123456789</msi>; <codabar>CODABAR</codabar>; <code93>CODE 93</code93>; <code39>CODE 39</code39>; Exemplo de utilização: Se deseja Centralizar um Texto na Bobina, chame este Método com o seguinte parâmetro: iRetorno = 260 DarumaFramework iImprimirTexto_DUAL_DarumaFramework("<ce>Teste de Comunicação</ce>","0") Se desejar Expandir o Texto e Deixá-lo em Negrito Utilize as Chaves: iRetorno = iImprimirTexto_DUAL_DarumaFramework("<b><e>Teste de Comunicação</b></e>","0") Se desejar Sublinhar apenas uma parte do Texto utilize a combinação: iRetorno = iImprimirTexto_DUAL_DarumaFramework("<b><e>Teste de <s>Comunicação</s></b></e>","0") Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. 2. iTamanho. Variável integer com a(s) tag(s) que serão usadas no tamanho do texto que você irá imprimir, caso deseje a DarumaFramework.dll poderá calcular o tamanho automaticamente passando o parâmetro "0". 3. stTexto. Variável string com a(s) tag(s) que serão usadas em até 2000 caracteres. Nomenclatura: Windows: iImprimirTexto_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. 261 DarumaFramework - Help 2.5 -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. -27: Erro Genérico. -50: Impressora OFF-LINE. -51: Impressora sem papel. -52: Impressora inicializando. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função que imprimir um texto na impressora--} Declaração function iImprimirTexto_DUAL_DarumaFramework(stTexto: String; iTam: Integer ): Integer; StdCall; External 'DarumaFramework.dll' {$R *.dfm} 262 DarumaFramework var iRetorno: Integer; begin if (MB_Texto.Text = '') then begin Application.MessageBox('Digite um Texto.', 'Daruma DLL Framework', mb_ok + 16); end else begin iRetorno := iImprimirTexto_DUAL_DarumaFramework(MB_Texto.Text, 0); Função if (iRetorno = 1) then begin Application.MessageBox('Impressão realizada com sucesso.', 'Daruma DLL Framework', mb_ok + 32) end else begin Application.MessageBox('Erro ao Imprimir o texto, verifique a impressora', 'Daruma DLL Framework', mb 16); end; end; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function iImprimirTexto_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTexto As ByVal iTam As Integer) As Integer Dim iRetorno As Integer If (TB_Texto.Text = "") Then MsgBox "Digite um Texto", vbInformation, "Daruma DLL Framework" Else Função iRetorno = iImprimirTexto_DUAL_DarumaFramework(TB_Texto.Text, 0) If (iRetorno = 1) Then MsgBox "Impressão realizada com sucesso.", vbInformation, "Daruma DLL Framework" Else MsgBox "Erro ao Imprimir o texto, verifique a impressora", vbInformation, "Daruma DLL Framework" End If End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] 263 DarumaFramework - Help 2.5 public static extern int iImprimirTexto_DUAL_DarumaFramework(string stTexto, int iTam); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando out denominação. string iTextoVazio; if (TB_Texto.Text == string.Empty) { MessageBox.Show("Digite um Texto!", "Daruma_Framework_CSharp", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else { iTextoVazio = TB_Texto.Text; Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework(iTe 0); if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Impressão realizada com sucesso.", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Information); } else MessageBox.Show("Erro ao Imprimir o texto, verifique a impressora!", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); } VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function iImprimirTexto_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTexto As ByVal iTam As Integer) As Integer Dim iRetorno As Integer If (TB_Texto.Text = "") Then MsgBox "Digite um Texto", vbInformation, "Daruma DLL Framework" Else Função iRetorno = iImprimirTexto_DUAL_DarumaFramework(TB_Texto.Text, 0) If (iRetorno = 1) Then MsgBox "Impressão realizada com sucesso.", vbInformation, "Daruma DLL Framework" Else MsgBox "Erro ao Imprimir o texto, verifique a impressora", vbInformation, "Daruma DLL Framework" End If End If 264 DarumaFramework iAcionarGaveta_DUAL_Daruma Framework Método: iAcionarGaveta_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 28 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite acionar a gaveta no determinado momento solicitado. Dia-a-Dia: Este método permite acionar a gaveta no momento solicitado, lembrando que a mesma deverá estar conectada no Porta RJ-11 atrás da impressora (Conector Modular-Jack). Dica: O método é geralmente usado após cada impressão de documento, auxiliando ao cliente final a acionar a gaveta. Observações: 1. Nenhum. Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. 265 DarumaFramework - Help 2.5 Nomenclatura: Windows: iAcionarGaveta_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. -27: Erro Genérico. -50: Impressora OFF-LINE. -51: Impressora sem papel. -52: Impressora inicializando. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função que aciona a gaveta a Impressora--} Declaração function iAcionarGaveta_DUAL_DarumaFramework(): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} 266 DarumaFramework var iRetorno: Integer; begin iRetorno := iAcionarGaveta_DUAL_DarumaFramework(); if (iRetorno = 1) then begin Função Application.MessageBox('Gaveta aciona com sucesso.', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION); end else begin Application.MessageBox(' Erro ao acionar a Gaveta', 'Daruma DLL Framework', MB_OK + MB_ICONERROR); end; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' Declaração '=========== IMPRESSORAS DUAL ===========' Public Declare Function iAcionarGaveta_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" () As Integer Dim iRetorno As Integer iRetorno = iAcionarGaveta_DUAL_DarumaFramework() Função If (iRetorno = 1) Then MsgBox "Gaveta aciona com sucesso.", vbInformation, "Daruma DLL Framework" Else MsgBox "Erro ao acionar a Gaveta", vbInformation, "Daruma DLL Framework" End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int iAcionarGaveta_DUAL_DarumaFramework (); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iAcionarGaveta_DUAL_DarumaFramework(); if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Gaveta aciona com sucesso.", "Daruma DLL Framework", 267 DarumaFramework - Help 2.5 MessageBoxButtons.OK, MessageBoxIcon.Information); MN_regTermica_Desabilitar.Checked = true; } else { MessageBox.Show("Erro ao acionar a Gaveta", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); } VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function iAcionarGaveta_DUAL_DarumaFramework Lib "Darumaframework.dll" () As Integer Dim iRetorno As Integer iRetorno = iAcionarGaveta_DUAL_DarumaFramework() Função If (iRetorno = 1) Then MsgBox "Gaveta aciona com sucesso.", vbInformation, "Daruma DLL Framework" Else MsgBox "Erro ao acionar a Gaveta", vbInformation, "Daruma DLL Framework" End If iAutenticaDocumento_DUAL_D arumaFramework Método: iAutenticaDocumento_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 29 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite realizar a autenticação em um documento, enviando um texto formatado para o documento em questão ou a bobina. 268 DarumaFramework Dia-a-Dia: Este método permite enviar um texto para Autenticação de documento e ao mesmo tempo permite configurar o 'Tempo' que deseja esperar para autenticar o documento e também o local desejado, sendo ele na Bobina, 'DOC' ou só no Documento. Dica: O método é geralmente usado após cada impressão de documento, auxiliando ao momento ideal para realizar a autenticação. Observações: 1. Caso estiver usando a porta LPT(Paralela) e deseja Autenticar o documento em questão, você poderá realizar a autenticação utilizando de duas Formas, como mostra a seguir: a) Para Fazer uso do Parâmetro de 'Time-Out' (Será colocado um tempo em que a DarumaFramework.dll, fique esperando em forma de aviso sonoro o momento em que o usuário necessita colocar o Papel na Impressora DUAL) você deverá estar com a Chave ModoEscrita a 1(um). b) Caso você não escolha está opção, onde a DarumaFramework.dll irá controlar a opção, você deverá sempre chamar o método de Autenticar quando o Papel já estiver presente na DUAL. Caso a Chave ModoEscrita estiver igual a 0(zero) e você chame a autenticação sem o papel, não irá funcionar. Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. 2. edtTexto. Variável string com até 48 caracteres para a autenticação do documento. 269 DarumaFramework - Help 2.5 3. edtLocal. Variável para informar o local da autenticação, sendo um(1) para Documento e zero(0) para Documento e bobina. 4. edtTimeOut. Variável para informar quantos segundos será necessário para que o usuário autentique o documento. Nomenclatura: Windows: iAutenticaDocumento_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. -27: Erro Genérico. -50: Impressora OFF-LINE. -51: Impressora sem papel. -52: Impressora inicializando. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função que envia a autenticacao do documento a Impressora--} function iAutenticarDocumento_DUAL_DarumaFramework(stTexto: String; Declaração stLocal: String; stTimeOut: String): Integer; StdCall; External 'DarumaFramework.dll' {$R *.dfm} 270 DarumaFramework var iRetorno: Integer; begin iRetorno := iAutenticarDocumento_DUAL_DarumaFramework(EB_Texto.text, EB_Local.text, EB_TimeOut.text); if (iRetorno = 1) then Função begin Application.MessageBox('Autenticação realizada com sucesso.', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION); end else begin Application.MessageBox('Erro ao Autenticar Documento', 'Daruma DLL Framework', MB_OK + MB_ICONERR end; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function iAutenticarDocumento_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTe ByVal stLocal As String, ByVal stTimeOut As String) As Integer Dim iRetorno As Integer iRetorno = iAutenticarDocumento_DUAL_DarumaFramework(TB_Texto.Text, TB_Local.Text, TB_Tim If (iRetorno = 1) Then MsgBox "Autenticação realizada com sucesso.", vbInformation, "Daruma DLL Framework" Função Else MsgBox "Erro ao Autenticar Documento", vbInformation, "Daruma DLL Framework" End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int iAutenticarDocumento_DUAL_DarumaFramework(string stTexto, string stLocal, string stT 271 DarumaFramework - Help 2.5 ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denomi string stLocal; string stTexto; string stTimeOut; stLocal = TB_Local.Text; stTexto = TB_Texto.Text; stTimeOut = TB_TimeOut.Text; DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iAutenticarDocumento_DUAL_Daruma Função stLocal, stTimeOut); if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Autenticação realizada com sucesso.", "Daruma DLL Framework", MessageBoxBu MessageBoxIcon.Information); } else { MessageBox.Show("Erro ao Autenticar Documento!", "Daruma DLL Framework", MessageBoxButtons MessageBoxIcon.Error); } VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function iAutenticarDocumento_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTe ByVal stLocal As String, ByVal stTimeOut As String) As Integer Dim iRetorno As Integer iRetorno = iAutenticarDocumento_DUAL_DarumaFramework(TB_Texto.Text, TB_Local.Text, TB_Tim If (iRetorno = 1) Then MsgBox "Autenticação realizada com sucesso.", vbInformation, "Daruma DLL Framework" Função Else MsgBox "Erro ao Autenticar Documento", vbInformation, "Daruma DLL Framework" End If iEnviarBMP_DUAL_DarumaFra mework Método: iEnviarBMP_DUAL_DarumaFramework 272 DarumaFramework Impressora: DR600, DR700. Índice: 30 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite enviar um arquivo no padrão da impressora, no formato BMP demonstrando o logotipo da empresa na bobina da impressora. Dia-a-Dia: Este método permite o desenvolvedor colocar o logotipo da empresa em questão, deixando de forma mais clara a identificação da empresa no momento da emissão do cupom. Dica: O método é geralmente usado na intervenção técnica da impressora, porém pode ser enviando via comando como mostra a função, lembrando que para sair o logotipo iremos necessitar informar a tag <bmp></bmp> na função iImprimirTexto_DUAL_DarumaFramework. Observações: 1. Formato do logotipo: tem que ser em formato BMP(bitmap). 2. Dimensões: 576 largura X 200 altura ou 200 x 200, pixel's. 3. Cor: em preto e branco, somente. Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. 2. stCaminho. O caminho e o nome do arquivo 'bitmap', exemplo: %:\nomedoarquivo.bmp. 273 DarumaFramework - Help 2.5 Nomenclatura: Windows: iEnviarBMP_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. -27: Erro Genérico. -50: Impressora OFF-LINE. -51: Impressora sem papel. -52: Impressora inicializando. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função que envia o BMP na Impressora--} Declaração function iEnviarBMP_DUAL_DarumaFramework(stArqOrigem: String): Integer; StdCall; External 'DarumaFrame {$R *.dfm} 274 DarumaFramework var stCaminho: String; iRetorno: Integer; begin stCaminho := InputBox('Daruma DLL Framework', 'Entre com o nome do logotipo a ser enviado:', 'C:\logo.bmp'); If (stCaminho <> '') then begin iRetorno := iEnviarBMP_DUAL_DarumaFramework(stCaminho); Função if (iRetorno = 1) then begin Application.MessageBox('O envio do logotipo foi realizado com sucesso.', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION); end else begin Application.MessageBox(' Erro ao enviar o Logotipo, ou a ação foi cancelada', 'Daruma DLL Framework', MB_ICONERROR); end; end; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function iEnviarBMP_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stArqOrigem A Integer Dim stCaminho As String Dim iRetorno As Integer stCaminho = InputBox("Daruma DLL Framework", "Entre com o nome do logotipo a ser enviado:", "C:\logo.b If (stCaminho <> "") Then iRetorno = iEnviarBMP_DUAL_DarumaFramework(stCaminho) Função If (iRetorno = 1) Then MsgBox "O envio do logotipo foi realizado com sucesso.", vbInformation, "Daruma DLL Framework" Else MsgBox "Erro ao enviar o Logotipo, ou a ação foi cancelada", vbInformation, "Daruma DLL Framework" End If End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] 275 DarumaFramework - Help 2.5 public static extern int iEnviarBMP_DUAL_DarumaFramework(string stArqOrigem); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denomi string STR_Retorno_CaixaInput; STR_Retorno_CaixaInput = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.InputBox do logotipo a ser enviado:", "C:\\logo.bmp"); if (STR_Retorno_CaixaInput != "Erro ao incluir dados no Registro(Registry)!" | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Realizando Configuração...", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Warning); DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iEnviarBMP_DUAL_DarumaFramework(STR_Re } if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iEnviarBMP_DUAL_DarumaFramework(STR_Re MessageBox.Show("O envio do logotipo foi realizado com sucesso.", "Daruma DLL Framework", Mess MessageBoxIcon.Information); } else { MessageBox.Show("Erro ao enviar o Logotipo, ou a ação foi cancelada", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); } VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function iEnviarBMP_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stArqOrigem A Integer Dim stCaminho As String Dim iRetorno As Integer stCaminho = InputBox("Daruma DLL Framework", "Entre com o nome do logotipo a ser enviado:", "C:\log If (stCaminho <> "") Then Função iRetorno = iEnviarBMP_DUAL_DarumaFramework(stCaminho) If (iRetorno = 1) Then MsgBox("O envio do logotipo foi realizado com sucesso.", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao enviar o Logotipo, ou a ação foi cancelada", vbInformation, "Daruma DLL Framewor End If 276 DarumaFramework End If iImprimirArquivo_DUAL_Daru maFramework Método: iImprimirArquivo_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 31 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite enviar um arquivo para a impressora, contento até 3000 bytes. Dia-a-Dia: Este método permite o desenvolvedor envie documentos sem a necessidade de formatar ele através dos métodos disponíveis na DarumaFramework.dll Dica: O método é geralmente usado para enviar algum documento que consta, como banco de dados ou arquivos de relatório gerados pelo desenvolvedor ou o sistema integrado em seu ambiente de negocio. Observações: 1. O arquivo deve conter até 3000 bytes. 2. Caso haja alguma necessitade de formatação no arquivo que será enviado para a impressora é capaz de trabalhar com as seguintes TAGS, no protocolo DHTML, como segue abaixo: 277 DarumaFramework - Help 2.5 <b></b> - Para sinalizar Negrito; <i></i> - Para sinalizar Itálico; <s></s> - Para sinalizar Sublinhado; <e></e> - Para sinalizar Expandido; <c></e> - Para sinalizar Condensado; <n></n> - Para sinalizar Normal; <l></l> - Para saltar uma Linha; <sl>NN</sl> - Para saltar várias Linhas; <tc>C</tc> - Riscar linha com um caráctere especifico; <ce></ce> - Para Centralizar; <dt></dt> - Para imprimir Data Atual; <hr></hr> - Para imprimir Hora Atual; <sp>NN</sp> - Inserir NN espaços em branco ; <sn></sn> - Sinal sonoro, apitar; <g></g> - Abre a Gaveta; <a> - Aguardar até o término da impressão; </a> - Não aguardar até o término da impressão; <tb></tb> - Tabulação; <bmp></bmp> - Para fazer o upload do bitmap na impressora; <gui></gui> - Para acionamento da guilhotina, exclusivo impressora não fiscal térmica; <da></da> - Para duplicar a altura do caractere; <pdf></pdf> - Para imprimir o código de barras PDF417. Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. 2. stCaminho. O caminho e o nome do arquivo 'txt', exemplo: %:\daruma.txt. Nomenclatura: Windows: iImprimirArquivo_DUAL_DarumaFramework Retornos dos possíveis erros: 278 DarumaFramework Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. -27: Erro Genérico. -50: Impressora OFF-LINE. -51: Impressora sem papel. -52: Impressora inicializando. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função que envia um arquivo texto a impressora--} Declaração function iImprimirArquivo_DUAL_DarumaFramework(stPath: String): Integer; StdCall; External 'DarumaFrameW {$R *.dfm} 279 DarumaFramework - Help 2.5 var stCaminho: String; iRetorno: Integer; begin stCaminho := InputBox('Daruma DLL Framework', 'Entre com o nome do arquivo a ser impresso:', 'C:\DarumaDLLFramework.txt'); If (stCaminho <> '') then begin iRetorno := iImprimirArquivo_DUAL_DarumaFramework(stCaminho); Função if (iRetorno = 1) then begin Application.MessageBox('Impressão realizada com sucesso.', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION); end else begin Application.MessageBox('Erro ao imprimir o arquivo, ou a ação foi cancelada', 'Daruma DLL Framework' MB_ICONERROR); end; end; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' Declaração '=========== IMPRESSORAS DUAL ===========' Public Declare Function iImprimirArquivo_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stPath A Dim stCaminho As String Dim iRetorno As Integer stCaminho = InputBox("Daruma DLL Framework", "Entre com o nome do arquivo a ser impresso:", "C:\Darum If (stCaminho <> "") Then iRetorno = iImprimirArquivo_DUAL_DarumaFramework(stCaminho) Função If (iRetorno = 1) Then MsgBox "Impressão realizada com sucesso.", vbInformation, "Daruma DLL Framework" Else MsgBox "Erro ao imprimir o arquivo, ou a ação foi cancelada", vbInformation, "Daruma DLL Framework" End If End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int iImprimirArquivo_DUAL_DarumaFramework(string stPath); 280 DarumaFramework ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denomi string STR_Retorno_CaixaInput; STR_Retorno_CaixaInput = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.InputBox arquivo a ser impresso:", "C:\\DarumaDLLFramework.txt"); if (STR_Retorno_CaixaInput != "Erro ao incluir dados no Registro(Registry)!" | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Realizando Configuração...", "Daruma DLL Framework",MessageBoxButtons.OK,MessageBoxIcon.Warning); DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirArquivo_DUAL_DarumaFramework(S } if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirArquivo_DUAL_DarumaFramework(S MessageBox.Show("Impressão realizada com sucesso.", "Daruma DLL Framework", MessageBoxButto MessageBoxIcon.Information); } else { MessageBox.Show("Erro ao imprimir o arquivo, ou a ação foi cancelada", "Daruma DLL Framework", MessageBoxIcon.Error); } VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function iImprimirArquivo_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stPath A Dim stCaminho As String Dim iRetorno As Integer stCaminho = InputBox("Daruma DLL Framework", "Entre com o nome do arquivo a ser impresso:", "C:\Da If (stCaminho <> "") Then iRetorno = iImprimirArquivo_DUAL_DarumaFramework(stCaminho) Função If (iRetorno = 1) Then MsgBox("Impressão realizada com sucesso.", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao imprimir o arquivo, ou a ação foi cancelada", vbInformation, "Daruma DLL Framewo End If End If Metodos para Registro 281 DarumaFramework - Help 2.5 regZeroCortado_DUAL_Darum aFramework Método: regZeroCortado_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 58 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite configurar a impressora não-fiscal para trabalhar com o número 0(zero) de forma que a impressão seja impressa com o corte no meio do zero(Ø), diferenciando ele da letra "O". Dia-a-Dia: Este método permite que o cliente ou desenvolvedor não confunda a letra "O" com o 0(zero). Dica: O método é geralmente usado na configuração inicial da aplicação, facilitando a demais execução do processo. Observações: 1. Nenhuma. Definição do Método: Parâmetros: 282 DarumaFramework 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regZeroCortado_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para Termica a impressora--} Declaração function regZeroCortado_DUAL_DarumaFramework(stParametro: String): Integer; StdCall; External 'DarumaFr {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regZeroCortado_DUAL_DarumaFramework('1'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regZeroCortado_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stParame As Integer 283 DarumaFramework - Help 2.5 Dim iRetorno As Integer Função iRetorno = regZeroCortado_DUAL_DarumaFramework("1") End C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regZeroCortado_DUAL_DarumaFramework(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando out Função denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regZeroCortado_DUAL_DarumaFra VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regZeroCortado_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stParamet Integer Dim iRetorno As Integer Função iRetorno = regZeroCortado_DUAL_DarumaFramework("1") End regAguardarProcesso_DUAL_D arumaFramework Método: regAguardarProcesso_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 17 Bibliotecas: DarumaFramework.dll 284 DarumaFramework Método: Definição: Caso você deseja que a DarumaFramework.dll segure o processo apenas quando terminar a última linha Impressa, coloque esta Chave a 1(um), caso contrario quando o Buffer do PC estiver Vazio e o ECF ainda estiver imprimindo o que estiver em seu Buffer a DarumaFramework.dll irá retornar para o Aplicativo, porém o ECF ainda estará Imprimindo. Dica: O método é geralmente usado quando o desenvolvedor deseja que a DarumaFramework, realize todas as funções enviadas ate que a ultima linha impressa seja finalizada. Observações: 1. Nenhuma. Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regAguardarProcesso_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. 285 DarumaFramework - Help 2.5 -1: Erro de atualização de Chave. -4: A chave ou Valor no Arquivo do Registro(Registry) não foi encontada. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para sincronizacao da DLL a impressora--} Declaração function regAguardarProcesso_DUAL_DarumaFramework(stParametro: String): Integer; StdCall; External 'Darum {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regAguardarProcesso_DUAL_DarumaFramework('1'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regAguardarProcesso_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stPa Integer Dim iRetorno As Integer Função iRetorno = regAguardarProcesso_DUAL_DarumaFramework("1") End C# Declaração 286 Método //*************Métodos para Impressoras Dual************* DarumaFramework [DllImport("DarumaFrameWork.dll")] public static extern int regAguardarProcesso_DUAL_DarumaFramework(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denomi Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regAguardarProcesso_DUAL_Daru VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regAguardarProcesso_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stPar Integer Dim iRetorno As Integer Função iRetorno = regAguardarProcesso_DUAL_DarumaFramework("1") End regCodePageAutomatico_DUAL _DarumaFramework Método: regCodePageAutomatico_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 57 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite configurar a impressora não-fiscal para trabalhar com a tabela de codepage de uma forma automática, na impressora trabalhamos com as seguintes tabelas: ISO 8859-1, CP 850, ABICOMP e CP 437, sendo como padrão ISO 8859-1. 287 DarumaFramework - Help 2.5 Dia-a-Dia: Esta configuração permite que os caracteres especiais como acentos, entre outros na tabela ASCII seja impresso na impressora. Dica: O método é geralmente usado na configuração inicial da aplicação, facilitando a demais execução do processo. Observações: 1. Nenhuma. Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regCodePageAutomatico_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: 288 DarumaFramework Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para Termica a impressora--} Declaração function regCodePageAutomatico_DUAL_DarumaFramework(stParametro: String): Integer; StdCall; External 'D {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regCodePageAutomatico_DUAL_DarumaFramework('1'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regCodePageAutomatico_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal s Integer Dim iRetorno As Integer Função iRetorno = regCodePageAutomatico_DUAL_DarumaFramework("1") End C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regCodePageAutomatico_DUAL_DarumaFramework(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denomi Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regCodePageAutomatico_DUAL_D VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regCodePageAutomatico_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal st Integer 289 DarumaFramework - Help 2.5 Dim iRetorno As Integer Função iRetorno = regCodePageAutomatico_DUAL_DarumaFramework("1") End regEnterFinal_DUAL_DarumaFr amework Método: regEnterFinal_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 18 Bibliotecas: DarumaFramework.dll Método: Definição: Permite configurar se cada vez que a impressora, efetuar a impressão de uma linha ela irá quebrar a Linha automaticamente. Dia-a-Dia: Caso você deseja que a DarumaFramework.dll efetue a impressão de uma linha por vez, esta função irá realizar o processo para você, somente ativando a chave no registro. Observações: 1. Nenhuma. 290 DarumaFramework Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regEnterFinal_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -4: A chave ou Valor no Arquivo do Registro(Registry) não foi encontada. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para o modo linha a linha a impressora--} Declaração function regEnterFinal_DUAL_DarumaFramework(stParametro: String): Integer; StdCall; External 'DarumaFram {$R *.dfm} 291 DarumaFramework - Help 2.5 var iRetorno: Integer; begin Função iRetorno := regEnterFinal_DUAL_DarumaFramework('1'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regEnterFinal_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stParametro As Integer Dim iRetorno As Integer Função iRetorno = regEnterFinal_DUAL_DarumaFramework("1") End C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regEnterFinal_DUAL_DarumaFramework(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando out Função denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regEnterFinal_DUAL_DarumaFram VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regEnterFinal_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stParametro Integer Dim iRetorno As Integer Função iRetorno = regEnterFinal_DUAL_DarumaFramework("1") End 292 DarumaFramework regLinhasGuilhotina_DUAL_Da rumaFramework Método: regLinhasGuilhotina_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 19 Bibliotecas: DarumaFramework.dll Método: Definição: Permite configurar as linhas que serão passadas antes da impressora não-fiscal Daruma acionar a Guilhotina, quando disponível. Observações: 1. Nenhuma. Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. 2. stLinhas. Variável string com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regLinhasGuilhotina_DUAL_DarumaFramework Retornos dos possíveis erros: 293 DarumaFramework - Help 2.5 Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -4: A chave ou Valor no Arquivo do Registro(Registry) não foi encontada. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para linhas de guilhotina a impressora--} Declaração function regLinhasGuilhotina_DUAL_DarumaFramework(stParametro: String): Integer; StdCall; External 'Darum {$R *.dfm} 294 DarumaFramework var stLinhas: string; boRetorno: Boolean; iRetorno: Integer; begin stLinhas := ''; boRetorno := InputQuery('Daruma DLL Framework', 'Número de linhas para habilitar a guilhotina (0 a 20):', stLinhas); if ((boRetorno = True) and (stLinhas <> '')) then begin Função iRetorno := regLinhasGuilhotina_DUAL_DarumaFramework(stLinhas); if (iRetorno = 1) then begin Application.MessageBox('Configuração realizada com sucesso.', 'DarumaFramework', MB_OK + MB_ICON end else begin Application.MessageBox('Erro ao Configurar as Linhas da Guilhotina, ou a ação foi cancelada', 'DarumaFra MB_ICONERROR); end; end; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regLinhasGuilhotina_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stPar Integer Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Número de linhas para habilitar a guilhotina (0 a 20):", "Daruma DLL Framework") boRetorno = True Função If (boRetorno = False) Or (boTexto = "") Then MsgBox "Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework" Else iRetorno = regLinhasGuilhotina_DUAL_DarumaFramework(boTexto) If (iRetorno = 1) Then MsgBox "Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework" 295 DarumaFramework - Help 2.5 Else MsgBox "Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework" End If End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regLinhasGuilhotina_DUAL_DarumaFramework(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. string STR_Retorno_CaixaInput; STR_Retorno_CaixaInput = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.InputBox habilitar a guilhotina (0 a 20):", "05"); if (STR_Retorno_CaixaInput != "Erro ao incluir dados no Registro(Registry)!" | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Realizando Configuração...", "Daruma DLL Framework", MessageBoxButtons.OK, DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regLinhasGuilhotina_DUAL_DarumaFramework Função } if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regLinhasGuilhotina_DUAL_DarumaFramewor MessageBox.Show("Configuração realizada com sucesso", "Daruma DLL Framework", MessageBoxBu MessageBoxIcon.Information); } else { MessageBox.Show("Erro ao incluir dados no Registro(Registry)!", "Daruma DLL Framework", Message MessageBoxIcon.Error); } VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regLinhasGuilhotina_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stPar Integer Função 296 Dim boRetorno As Boolean Dim boTexto As String DarumaFramework Dim iRetorno As Integer boTexto = InputBox("Número de linhas para habilitar a guilhotina (0 a 20):", "Daruma DLL Framework") boRetorno = True If (boRetorno = False) Or (boTexto = "") Then MsgBox("Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework") Else iRetorno = regLinhasGuilhotina_DUAL_DarumaFramework(boTexto) If (iRetorno = 1) Then MsgBox("Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework") End If End If regModoGaveta_DUAL_Daruma Framework Método: regModoGaveta_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 20 Bibliotecas: DarumaFramework.dll Método: Definição: Permite configurar a impressora não-fiscal Daruma para trabalhar com o cabo da gaveta invertido ou padrão. Dica: O método é geralmente usado quando o desenvolvedor deseja que a DarumaFramework, ative a configuração no qual irá informar se o cabo estará com a conexão invertida ou padrão, pois dependendo de cada fabricante de gaveta é utilizado uma forma de ligamento no cabo que é conectado na impressora nãofiscal. 297 DarumaFramework - Help 2.5 Ex.: Imagine que sua gaveta é da marca "Y" e você necessita verificar se ela está aberta e volta no retorno do método "1", ou seja, gaveta aberta e o mesmo software com a mesma impressora junto com uma outra gaveta da marca "X" retorna "0" no retorno do seu método, configurando está chave, passará a retornar no seu aplicativo "1" pois a DarumaFramework, estará informada que o cabo de conexao da gaveta com a impressora estará invertido. Observações: 1. Nenhuma. Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regModoGaveta_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -4: A chave ou Valor no Arquivo do Registro(Registry) não foi encontada. Exemplos: 298 DarumaFramework Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para Modo de Gaveta a impressora--} Declaração function regModoGaveta_DUAL_DarumaFramework(stParametro: String): Integer; StdCall; External 'DarumaFra {$R *.dfm} var iRetorno: integer; begin Função iRetorno := regModoGaveta_DUAL_DarumaFramework('1'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regModoGaveta_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stParame As Integer Dim iRetorno As Integer Função iRetorno = regModoGaveta_DUAL_DarumaFramework("1") End C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regModoGaveta_DUAL_DarumaFramework(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando out Função denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regModoGaveta_DUAL_DarumaFra 299 DarumaFramework - Help 2.5 VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regModoGaveta_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stParamet Integer Dim iRetorno As Integer Função iRetorno = regModoGaveta_DUAL_DarumaFramework("1") End regPortaComunicação_DUAL_D arumaFramework Método: regPortaComunicacao_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 21 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite configurar a porta de comunicação a ser usado na impressora. Dia-a-Dia: Este método permite configurar em qual porta a impressora não-fiscal estará configurada em seu cliente, possibilitando a utilização da mesma. Dica: O método é geralmente usado na configuração inicial da aplicação, facilitando a demais execução do processo. 300 DarumaFramework Observações: 1. Nenhuma. Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. 2. stPorta. Variável string com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regPortaComunicao_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -4: A chave ou Valor no Arquivo do Registro(Registry) não foi encontada. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método 301 DarumaFramework - Help 2.5 {--Declaracao da função de configuracao para Porta de Comunicao a impressora--} Declaração function regPortaComunicacao_DUAL_DarumaFramework(stParametro: String): Integer; StdCall; External 'Daru {$R *.dfm} var stPorta: string; boRetorno: Boolean; iRetorno: Integer; begin stPorta := ''; boRetorno := InputQuery('Daruma DLL Framework', 'Digita a Porta de Comunicação:', stPorta); if ((boRetorno = True) and (stPorta <> '')) then begin iRetorno := regPortaComunicacao_DUAL_DarumaFramework(stPorta); Função if (iRetorno = 1) then begin Application.MessageBox('Configuração realizada com sucesso.', 'Daruma DLL Framework', MB_OK + MB_ end else begin Application.MessageBox('Erro ao Configurar a Porta de Comunicação, verifique-se a mesma encontra disp outra aplicação','Daruma DLL Framework', MB_OK + MB_ICONERROR); end; end; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regPortaComunicacao_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stP Integer 302 DarumaFramework Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Digita a Porta de Comunicação:", "Daruma DLL Framework") boRetorno = True If (boRetorno = False) Or (boTexto = "") Then MsgBox "Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework" Função Else iRetorno = regPortaComunicacao_DUAL_DarumaFramework(boTexto) If (iRetorno = 1) Then MsgBox "Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework" Else MsgBox "Erro ao Configurar a Porta de Comunicação, verifique-se a mesma encontra disponivel ou em co vbInformation, "Daruma DLL Framework" End If End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regPortaComunicacao_DUAL_DarumaFramework(string stParametro); 303 DarumaFramework - Help 2.5 ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. string STR_Retorno_CaixaInput; STR_Retorno_CaixaInput = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.InputBox Comunicação:", "COM1"); if (STR_Retorno_CaixaInput != "Erro ao incluir dados no Registro(Registry)!" | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Realizando Configuração...", "Daruma DLL Framework", MessageBoxButtons.OK, DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regPortaComunicacao_DUAL_DarumaFramewo } if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regPortaComunicacao_DUAL_DarumaFramewo MessageBox.Show("Configuração realizada com sucesso", "Daruma DLL Framework", MessageBoxBu MessageBoxIcon.Information); } else { MessageBox.Show("Erro ao incluir dados no Registro(Registry)!", "Daruma DLL Framework", Message MessageBoxIcon.Error); } VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regPortaComunicacao_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stPa Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Digita a Porta de Comunicação:", "Daruma DLL Framework") boRetorno = True If (boRetorno = False) Or (boTexto = "") Then MsgBox("Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework") Função Else iRetorno = regPortaComunicacao_DUAL_DarumaFramework(boTexto) If (iRetorno = 1) Then MsgBox("Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao Configurar a Porta de Comunicação, verifique-se a mesma encontra disponivel ou e aplicação.", vbInformation, "Daruma DLL Framework") End If 304 DarumaFramework End If regTabulação_DUAL_DarumaFr amework Método: regTabulacao_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 22 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite configurar a tabulação a ser usado na impressora não-fiscal. Dia-a-Dia: Este método permite formatar as tabulações que serão utilizadas na impressora não-fiscal Daruma. As tabulações em nossa impressora, funcionam exatamente como em uma máquina de escrever, ou seja, primeiro você define as tabulações que serão usadas, depois você utiliza. Dica: O método é geralmente usado na configuração inicial da aplicação, facilitando a demais execução do processo. Observações: 1. Importante: Vamos supor que estamos trabalhando com a bom e velha máquina de escrever, onde o texto a ser escrito for maior que o intervalo da tabulação pré-configurado poderá acontecer a perda 305 DarumaFramework - Help 2.5 da tabulação presente, onde em nossas impressoras não-fiscais acontece o mesmo conceito. Exemplificando melhor seria o seguinte: a) A DLL de alto nível está configurada por 'padrão' para: 05, 10, 15, 20, 25, 35; b) Supondo que o texto selecionado seja 'Quantidade', na primeira tabulação; b.1) Imaginando que a palavra 'Quantidade' seja de 10(dez) caracteres onde a tabulação seguinte está configurada para 5(cinco) colunas, sendo que a próxima tabulação é de 10(dez) colunas, sendo assim, iremos perder as configurações nesta linha devido ao 'estouro'. c) Concluindo: Seria sempre interessante, limitar-se a trabalhar com um texto onde não ultrapasse o intervalo programado, desta forma o 'layout' da tabela, onde é nosso objetivo principal, estaria sendo utilizado na tabulação ficando 'perfeito' para o uso, como no exemplo abaixo: Quantidade Tamanho Cor 01 50 AZUL 02 78 VERDE 03 40 CINZA Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. 2. stTabulacao. Variável string com '05,10,15,20,25,35'. Nomenclatura: Windows: regTabulacao_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 306 DarumaFramework 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para Tabulcao a impressora--} Declaração function regTabulacao_DUAL_DarumaFramework(stParametro: String): Integer; StdCall; External 'DarumaFram {$R *.dfm} 307 DarumaFramework - Help 2.5 var stTabulacao: string; boRetorno: Boolean; iRetorno: Integer; begin stTabulacao := '05,10,15,20,25,35'; boRetorno := InputQuery('Daruma DLL Framework', 'Digite a tabulação desejada:', stTabulacao); if ((boRetorno = True) and (stTabulacao <> '')) then begin iRetorno := regTabulacao_DUAL_DarumaFramework(stTabulacao); Função if (iRetorno = 1) then begin Application.MessageBox('Configuração da Tabulação realizada com sucesso!', 'Daruma DLL Framework', M MB_ICONINFORMATION); end else begin Application.MessageBox(' Erro ao criar tabulação, ou ação foi cancelada.', 'Daruma DLL Framework', MB_ MB_ICONERROR); end; end; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regTabulacao_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stParametro Integer 308 DarumaFramework Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Entre com a tabulação desejada ('05,10,15,20,25,35'):", "Daruma DLL Framework") boRetorno = True If (boRetorno = False) Or (boTexto = "") Then MsgBox "Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework" Função Else iRetorno = regTabulacao_DUAL_DarumaFramework(boTexto) If (iRetorno = 1) Then MsgBox "Configuração de sua tabulação realizada com sucesso.", vbInformation, "Daruma DLL Framewor Else MsgBox "Erro ao Configurar a tabulação desejada, ou a ação foi cancelada.", vbInformation, "Daruma DL End If End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regTabulacao_DUAL_DarumaFramework(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denomi string STR_Retorno_CaixaInput; STR_Retorno_CaixaInput = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.InputBox tabulação desejada ('05,10,15,20,25,35'):", "05"); if (STR_Retorno_CaixaInput != "Erro ao incluir dados no Registro(Registry)!" | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { Função MessageBox.Show("Realizando Configuração...", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Warning); DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regTabulacao_DUAL_DarumaFramework(STR_ } if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regTabulacao_DUAL_DarumaFramework(STR_ MessageBox.Show("Configuração realizada com sucesso", "Daruma DLL Framework", MessageBoxBu MessageBoxIcon.Information); } 309 DarumaFramework - Help 2.5 else { MessageBox.Show("Erro ao incluir dados no Registro(Registry)!", "Daruma DLL Framework", Message MessageBoxIcon.Error); } VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regTabulacao_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stParametro Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Entre com a tabulação desejada ('05,10,15,20,25,35'):", "Daruma DLL Framework") boRetorno = True If (boRetorno = False) Or (boTexto = "") Then MsgBox("Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework") Função Else iRetorno = regTabulacao_DUAL_DarumaFramework(boTexto) If (iRetorno = 1) Then MsgBox("Configuração de sua tabulação realizada com sucesso.", vbInformation, "Daruma DLL Fram Else MsgBox("Erro ao Configurar a tabulação desejada, ou a ação foi cancelada.", vbInformation, "Daruma End If End If regTérmica_DUAL_DarumaFra mework Método: regTermica_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 23 Bibliotecas: DarumaFramework.dll Método: 310 DarumaFramework Definição: Este método permite configurar a impressora não-fiscal para trabalhar com as impressoras Térmica Daruma. Dica: O método é geralmente usado na configuração inicial da aplicação, facilitando a demais execução do processo. Observações: 1. Nenhuma. Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regTermica_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: 311 DarumaFramework - Help 2.5 Delphi Método {--Declaracao da função de configuracao para Termica a impressora--} Declaração function regTermica_DUAL_DarumaFramework(stParametro: String): Integer; StdCall; External 'DarumaFrame {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := regTermica_DUAL_DarumaFramework('1'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regTermica_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stParametro A As Integer Dim iRetorno As Integer Função iRetorno = regTermica_DUAL_DarumaFramework("1") End C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regTermica_DUAL_DarumaFramework(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando out Função denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regTermica_DUAL_DarumaFramew VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function regTermica_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stParametro A As Integer 312 DarumaFramework Dim iRetorno As Integer Função iRetorno = regTermica_DUAL_DarumaFramework("1") End regVelocidade_DUAL_DarumaF ramework Método: regVelocidade_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 24 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite configurar a impressora para trabalhar na velocidade desejada, respeitando o limite da impressora. Dia-a-Dia: Este método permite configurar a velocidade da impressora em '9600', '38400' e 115200' para aumentar o trabalho e a impressão assim emitida pela impressora. Dica: O método é geralmente usado na configuração inicial da aplicação, facilitando a demais execução do processo. Observações: 313 DarumaFramework - Help 2.5 1. Nas impressoras DR600, podemos trabalhar com RS232(Serial), LPT(Paralela) ou USB. 2. Nas impressoras DR700, podemos trabalhar com RS232(Serial) e USB. 3. Devemos lembrar que a configuração da velocidade está presente nas impressoras não-fiscais térmicas conectadas na Porta RS232(Serial) e USB, nas impressoras com LPT(Paralela) a velocidade não é necessário informar. Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. 2. stVelocidade. Variável para utilização da função, onde o valor 'padrão' é '9600'. Nomenclatura: Windows: regTermica_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi 314 Método DarumaFramework {--Declaracao da função de configuracao da velocidade a impressora--} Declaração function regVelocidade_DUAL_DarumaFramework(stParametro: String): Integer; StdCall; External 'DarumaFram {$R *.dfm} var stVelocidade: string; iRetorno: Integer; begin Função stVelocidade:= '9600'; iRetorno := regVelocidade_DUAL_DarumaFramework(stVelocidade); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function regVelocidade_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal stParametr Integer Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Selecione a velocidade de comunicação com a impressora:", "Daruma DLL Framework") boRetorno = True If (boRetorno = False) Or (boTexto = "") Then MsgBox "Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework" Else Função iRetorno = regVelocidade_DUAL_DarumaFramework(boTexto) If ((iRetorno = 1) And _ ((boTexto = "1200") Or _ (boTexto = "2400") Or _ (boTexto = "300") Or _ (boTexto = "4800") Or _ (boTexto = "57600") Or _ (boTexto = "19200") Or _ (boTexto = "38400") Or _ (boTexto = "115200") Or _ (boTexto = "9600"))) Then 315 DarumaFramework - Help 2.5 MsgBox "Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework" Else MsgBox "Erro ao Configurar a Velocidade de Comunicação da Impressora.", vbInformation, "Daruma DLL End If End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regVelocidade_DUAL_DarumaFramework(string stParametro); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denomi string STR_Retorno_CaixaInput; STR_Retorno_CaixaInput = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.InputBox velocidade de comunicação com a impressora:", "9600"); if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1 | STR_Retorno_Caix incluir dados no Registro(Registry)!" & STR_Retorno_CaixaInput == "1200" | STR_Retorno_CaixaInput == "240 STR_Retorno_CaixaInput == "300" | STR_Retorno_CaixaInput == "4800" | STR_Retorno_CaixaInput == "5760 STR_Retorno_CaixaInput == "19200" | STR_Retorno_CaixaInput == "38400" | STR_Retorno_CaixaInput == "1 STR_Retorno_CaixaInput == "9600") { MessageBox.Show("Realizando Configuração...", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Warning); DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regVelocidade_DUAL_DarumaFramework(STR } if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regVelocidade_DUAL_DarumaFramework(STR MessageBox.Show("Configuração realizada com sucesso", "Daruma DLL Framework", MessageBoxBu MessageBoxIcon.Information); } else { MessageBox.Show("Erro ao incluir dados no Registro(Registry)!", "Daruma DLL Framework", Message MessageBoxIcon.Error); } } VBNet Método '**********************************************************************' Declaração 316 DUAL DarumaFramework Public Declare Function regVelocidade_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stParametro Dim boRetorno As Boolean Dim boTexto As String Dim iRetorno As Integer boTexto = InputBox("Selecione a velocidade de comunicação com a impressora:", "Daruma DLL Framewor boRetorno = True If (boRetorno = False) Or (boTexto = "") Then MsgBox("Erro ao incluir dados no Registro(Registry)!", vbInformation, "Daruma DLL Framework") Else iRetorno = regVelocidade_DUAL_DarumaFramework(boTexto) If ((iRetorno = 1) And _ ((boTexto = "1200") Or _ (boTexto = "2400") Or _ Função (boTexto = "300") Or _ (boTexto = "4800") Or _ (boTexto = "57600") Or _ (boTexto = "19200") Or _ (boTexto = "38400") Or _ (boTexto = "115200") Or _ (boTexto = "9600"))) Then MsgBox("Configuração realizada com sucesso.", vbInformation, "Daruma DLL Framework") Else MsgBox("Erro ao Configurar a Velocidade de Comunicação da Impressora.", vbInformation, "Daruma End If End If Metodos para Status rStatusImpressora_DUAL_Dar umaFramework Método: rStatusImpressora_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 27 Bibliotecas: DarumaFramework.dll Método: 317 DarumaFramework - Help 2.5 Definição: Este método permite verificar o status da impressora no determinado momento, sendo ela como ligada ou desligada. Dia-a-Dia: Este método permite verificar o status da impressora presente, retornando um número inteiro, ou seja, 0 como gaveta desligada e 1 gaveta ligada. Dica: O método é geralmente para verificar o status atual da impressora conectada no PDV, dando ao desenvolvedor mais controle da situação evitando futuros erros, pois o mesmo pode verificar se a impressora está pronta para iniciar o 'set' de comandos. Observações: 1. Nenhum. Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: rStatusImpressora_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. 318 DarumaFramework -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. -27: Erro Genérico. -50: Impressora OFF-LINE. -51: Impressora sem papel. -52: Impressora inicializando. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de status da impressora--} Declaração function rStatusImpressora_DUAL_DarumaFramework(): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; begin iRetorno := rStatusImpressora_DUAL_DarumaFramework(); case iRetorno of 0: Application.MessageBox('[0] - Impressora desligada', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION); 1: Application.MessageBox('[1] - Impressora OK', 'Daruma DLL Framework',MB_OK + Função MB_ICONINFORMATION); -27: Application.MessageBox('[-27] - Erro generico', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION); -50: Application.MessageBox('[-50] - Impressora OFFLINE', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION); -51: Application.MessageBox('[-51] - Impressora sem papel!', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION); -52: Application.MessageBox('[-52] - Impressora inicializando', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION); else Application.MessageBox('Retorno não esperado', 'Daruma DLL Framework', mb_ok + 16); 319 DarumaFramework - Help 2.5 end; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' Declaração '=========== IMPRESSORAS DUAL ===========' Public Declare Function rStatusImpressora_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" () As Integer Dim iRetorno As Integer iRetorno = rStatusImpressora_DUAL_DarumaFramework() If (iRetorno = 1) Then Select Case (iRetorno) Função Case "0": MsgBox "[0] - Impressora desligada", vbInformation, "Daruma DLL Framework" Case "1": MsgBox "[1] - Impressora OK", vbInformation, "Daruma DLL Framework" Case "-27": MsgBox "[-27] - Erro generico", vbInformation, "Daruma DLL Framework" Case "-50": MsgBox "[-50] - Impressora OFFLINE", vbInformation, "Daruma DLL Framework" Case "-51": MsgBox "[-51] - Impressora sem papel!", vbInformation, "Daruma DLL Framework" Case "-52": MsgBox "[-52] - Impressora inicializando", vbInformation, "Daruma DLL Framework" End Select Else MsgBox "Retorno não esperado", vbInformation, "Daruma DLL Framework" End If C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int rStatusImpressora_DUAL_DarumaFramework (); 320 DarumaFramework ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.rStatusImpressora_DUAL_DarumaFramework if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 0 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == -27 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == -50 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 51 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 52) switch (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno) { case 0: MessageBox.Show("0(zero) - Impressora Desligada!", "Daruma_Framework_CSharp", MessageBoxButtons.OK, MessageBoxIcon.Error); break; case 1: MessageBox.Show("1(um) - Impressora OK!", "Daruma_Framework_CSharp", MessageBoxButtons.OK, MessageBoxIcon.Information); Função break; case -50: MessageBox.Show("-50 - Impressora OFF-LINE!", "Daruma_Framework_CSharp", MessageBoxButtons.OK, MessageBoxIcon.Error); break; case -51: MessageBox.Show("-51 - Impressora Sem Papel!", "Daruma_Framework_CSharp", MessageBoxButtons.OK, MessageBoxIcon.Error); break; case -27: MessageBox.Show("-27 - Erro Generico!", "Daruma_Framework_CSharp", MessageBoxButtons.OK, MessageBoxIcon.Error); break; case -52: MessageBox.Show("-52 - Impressora inicializando!", "Daruma_Framework_CSharp", MessageBoxButtons.OK, MessageBoxIcon.Information); break; } else { MessageBox.Show("Retorno não esperado!", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); } VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function rStatusImpressora_DUAL_DarumaFramework Lib "Darumaframework.dll" () As Integer Função Dim iRetorno As Integer iRetorno = rStatusImpressora_DUAL_DarumaFramework() 321 DarumaFramework - Help 2.5 If (iRetorno = 1) Then Select Case (iRetorno) Case "0": MsgBox "[0] - Impressora desligada", vbInformation, "Daruma DLL Framework" Case "1": MsgBox "[1] - Impressora OK", vbInformation, "Daruma DLL Framework" Case "-27": MsgBox "[-27] - Erro generico", vbInformation, "Daruma DLL Framework" Case "-50": MsgBox "[-50] - Impressora OFFLINE", vbInformation, "Daruma DLL Framework" Case "-51": MsgBox "[-51] - Impressora sem papel!", vbInformation, "Daruma DLL Framework" Case "-52": MsgBox "[-52] - Impressora inicializando", vbInformation, "Daruma DLL Framework" End Select Else MsgBox "Retorno não esperado", vbInformation, "Daruma DLL Framework" End If rStatusDocumento_DUAL_Daru maFramework Método: rStatusDocumento_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 25 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite verificar se o documento está na posição para autenticação. Dia-a-Dia: Este método permite verificar o Status do Documento presente para a autenticação na impressora, retornando um número inteiro, ou seja, 0 e 1. Dica: O método é geralmente usado para a verificação do documento no momento de autenticação do mesmo, permitindo ao desenvolvedor verificar se o documento está na posição ideal para autenticação. 322 DarumaFramework Observações: 1. Nenhum. Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: rStatusDocumento_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. -27: Erro Genérico. -50: Impressora OFF-LINE. -51: Impressora sem papel. -52: Impressora inicializando. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: 323 DarumaFramework - Help 2.5 Delphi Método {--Declaracao da função de status do documento--} Declaração function rStatusDocumento_DUAL_DarumaFramework(): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; begin iRetorno := rStatusDocumento_DUAL_DarumaFramework(); case iRetorno of 0: Application.MessageBox('[0] - Documento não posicionado, favor verificar', 'Daruma DLL Framework', Função MB_OK + MB_ICONINFORMATION); 1: Application.MessageBox('[1] - Documento posicionado', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION); -27: Application.MessageBox('[-27] - Erro Generico', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION); else Application.MessageBox('Retorno não esperado', 'Daruma DLl Framework', MB_OK + MB_ICONINFORMATION end; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' Declaração '=========== IMPRESSORAS DUAL ===========' Public Declare Function rStatusDocumento_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" () As Integer Dim iRetorno As Integer iRetorno = rStatusDocumento_DUAL_DarumaFramework() If (iRetorno = 1) Then Select Case (iRetorno) Case "0": Função MsgBox "[0] - Documento não posicionado, favor verificar", vbInformation, "Daruma DLL Framework" Case "1": MsgBox "[1] - Documento posicionado", vbInformation, "Daruma DLL Framework" Case "-27": MsgBox "[-27] - Erro generico", vbInformation, "Daruma DLL Framework" End Select Else MsgBox "Retorno não esperado", vbInformation, "Daruma DLL Framework" End If C# 324 Método DarumaFramework //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int rStatusDocumento_DUAL_DarumaFramework (); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.rStatusDocumento_DUAL_DarumaFramework if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 0 | DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == -27) switch (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno) { case 0: MessageBox.Show("0(zero) - Documento não posicionado, favor verificar!", Função "Daruma_Framework_CSharp", MessageBoxButtons.OK, MessageBoxIcon.Error); break; case 1: MessageBox.Show("1(um) - Documento posicionado", "Daruma_Framework_CSharp", MessageBoxButtons.OK, MessageBoxIcon.Information); break; case -27: MessageBox.Show("-27 - Erro Generico!", "Daruma_Framework_CSharp", MessageBoxButtons.OK, MessageBoxIcon.Error); break; } else { MessageBox.Show("Retorno não esperado!", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); } VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function rStatusDocumento_DUAL_DarumaFramework Lib "Darumaframework.dll" () As Integer Dim iRetorno As Integer iRetorno = rStatusDocumento_DUAL_DarumaFramework() If (iRetorno = 1) Then Select Case (iRetorno) Função Case "0": MsgBox "[0] - Documento não posicionado, favor verificar", vbInformation, "Daruma DLL Framework" Case "1": Case "-27": MsgBox "[1] - Documento posicionado", vbInformation, "Daruma DLL Framework" MsgBox "[-27] - Erro generico", vbInformation, "Daruma DLL Framework" End Select 325 DarumaFramework - Help 2.5 Else MsgBox "Retorno não esperado", vbInformation, "Daruma DLL Framework" End If rStatusGaveta_DUAL_DarumaF ramework Método: rStatusGaveta_DUAL_DarumaFramework Impressora: DR600, DR700. Índice: 26 Bibliotecas: DarumaFramework.dll Método: Definição: Este método permite verificar o status da gaveta no determinado momento, sendo ela como aberta ou fechada. Dia-a-Dia: Este método permite verificar o status da Gaveta presente, retornando um número inteiro, ou seja, 0 como gaveta fechada e 1 gaveta aberta. Dica: O método é geralmente para verificar o status atual da gaveta conectada no PDV, dando ao desenvolvedor mais controle da situação evitando futuros erros. Observações: 1. Para melhor status em sua gaveta, é aconselhavél estar utilizando o ModoGaveta em sua configuração solicitada, para maiores detalhes verificar o método regModoGaveta_DUAL_Daruma_Framework. 326 DarumaFramework Definição do Método: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: rStatusGaveta_DUAL_DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. -27: Erro Genérico. -50: Impressora OFF-LINE. -51: Impressora sem papel. -52: Impressora inicializando. Exemplos: Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de status da gaveta--} Declaração function rStatusGaveta_DUAL_DarumaFramework(var iStatusGaveta: Integer): Integer; StdCall; External 'DarumaFrameWork.dll' 327 DarumaFramework - Help 2.5 {$R *.dfm} var iRetorno: Integer; iStatusGaveta: Integer; begin iStatusGaveta := 0; iRetorno := rStatusGaveta_DUAL_DarumaFramework(iStatusGaveta); if (iRetorno = 1) then begin case iStatusGaveta of 0: Application.MessageBox('[0] - Gaveta fechada', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMA Função 1: Application.MessageBox('[1] - Gaveta aberta', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMAT else Application.MessageBox('Retorno não esperado', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMAT end; end else begin Application.MessageBox('Retorno não esperado', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATIO end; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function rStatusGaveta_DUAL_DarumaFramework Lib "DarumaFrameWork.dll" (ByVal iStatusGav Integer) As Integer Dim iRetorno As Integer Dim iStatusGaveta As String iStatusGaveta = "0" iRetorno = rStatusGaveta_DUAL_DarumaFramework(iStatusGaveta) If (iRetorno = 1) Then Select Case (iStatusGaveta) Função Case "0": MsgBox "[0] - Gaveta fechada", vbInformation, "Daruma DLL Framework" Case "1": MsgBox "[1] - Gaveta aberta", vbInformation, "Daruma DLL Framework" End Select Else MsgBox "Retorno não esperado", vbInformation, "Daruma DLL Framework" End If 328 DarumaFramework C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int rStatusGaveta_DUAL_DarumaFramework (int iStatusGaveta); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando out denominação. int iStatusGaveta; iStatusGaveta = 0; DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.rStatusGaveta_DUAL_DarumaFramework(iSta if (iStatusGaveta == 0 | iStatusGaveta == 1) switch (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno) { Função case 0: MessageBox.Show("0(zero) - Documento não posicionado, favor verificar!", "Daruma_Framework_CSharp", MessageBoxButtons.OK, MessageBoxIcon.Error); break; case 1: MessageBox.Show("1(um) - Documento posicionado", "Daruma_Framework_CSharp", MessageBoxButtons.OK, MessageBoxIcon.Information); break; } else { MessageBox.Show("Retorno não esperado!", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); } VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function rStatusGaveta_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal iStatusGave Integer) As Integer Dim iRetorno As Integer Dim iStatusGaveta As String iStatusGaveta = "0" iRetorno = rStatusGaveta_DUAL_DarumaFramework(iStatusGaveta) If (iRetorno = 1) Then Função Select Case (iStatusGaveta) Case "0": MsgBox "[0] - Gaveta fechada", vbInformation, "Daruma DLL Framework" Case "1": MsgBox "[1] - Gaveta aberta", vbInformation, "Daruma DLL Framework" End Select 329 DarumaFramework - Help 2.5 Else MsgBox "Retorno não esperado", vbInformation, "Daruma DLL Framework" End If Registro Impressoras DUAL Valores e Definições de Registro(Registry) DUAL Modelo: DR600 e DR700. Índice: 55 Bibliotecas: DarumaFramework.dll Objetivo: Definição: Demonstrar ao desenvolvedor como trabalha as chaves de registro para as impressora não-fiscal Daruma. Observações: 1. Nenhuma Valores aplicados por Padrão(Default): [HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework\DUAL] "AguardarProcesso"="0" 330 DarumaFramework "Auditoria"="0" "CodePageAutomatico"="1" "EnterFinal"="0" "Inicializou"="0" "LinhasGuilhotina"="05" "ModoGaveta"="0" "PortaComunicacao"="COM1" "Tabulacao"="05,10,15,20,30,40" "Termica"="0" "Velocidade"="9600" "ZeroCortado"="0" Definições: "AguardarProcesso"= Esta chave permite configurar a impressora nãofiscal Daruma, para aguardar o processo de sua impressão até que seja finalizado o processo. Você pode estar alterando está opção pelo método regAguardarProcesso_DUAL_DarumaFramework. "Auditoria"= Esta opção é responsável pela criação do log de eventos ocorridos nas impressora não-fiscal Daruma, quando habilitada ela gera automaticamente na raiz da sua maquina um LOG com os eventos ocorridos a partir do momento de sua ativação. "CodePageAutomatico"= Opção que determina que ira utilizar a tabela de caracteres configurada na impressora Não-Fiscal Daruma, no qual será utilizado para imprimir caracteres especiais, como acentos, entre outros, a impressora trabalha com as seguintes tabelas ISO 8859-1, CP 850, ABICOMP e CP 437, sendo como padrão ISO 8859-1. Você pode estar alterando está opção pelo método regCodePageAutomatico_DUAL_DarumaFramework. "EnterFinal"= Com esta opção habilitada(1) é possível configurar sua impressora não-fiscal Daruma, para assim que seja efetuado cada impressão utilizando o método linha-a-linha seja efetua a quebra de linha após a sua impressão. Você pode estar alterando está opção pelo método regEnterFinal_DUAL_DarumaFramework. 331 DarumaFramework - Help 2.5 "LinhasGuilhotina"= Opção responsável na impressora para ativar o quanto de linhas será necessário pular para efetuar o corte utilizando a Guilhotina, devemos lembrar que não são todos os modelos de impressoras no qual estarão com a Guilhotina presente, ou seja, caso necessário a utilização da mesma devera informar a seu revendedor sobre a opção em sua impressora não-fiscal Daruma. Você pode estar alterando está opção pelo método regLinhasGuilhotina_DUAL_Daruma_Framework. "ModoGaveta"= Esta chave é responsável pela ativação da Gaveta presente na impressora não-fiscal Daruma, no qual é conectada na parte inferior da impressora através do cabo RJ11. Você pode estar alterando está opção pelo método regModoGaveta_DUAL_Daruma_Framework. "PortaComunicacao"= Chave responsável pela configuração da Porta Serial, no qual ira executar a comunicação com a impressora não-fiscal Daruma, esta chave por padrão esta configurada como "COM1", no qual em seu aplicativo você devera estar informando qual a porta será utilizada para efetuar a comunicação com a impressora. Você pode estar alterando está opção pelo método regPortaComunicacao_DUAL_Daruma_Framework. "Tabulacao"= Com esta opção será possível você configurar o estilo utilizado em sua tabulação na impressora não-fiscal daruma, passando os parametros de como devera constar, assim deixando de forma organizada(como se fosse uma tabela) suas opções presentes no cupom, por padrão utilizamos as configurações: 05,10,15,20,25,35, porem nada impede das mesmas serem alteradas. Você pode estar alterando está opção pelo método regTabulacao_DUAL_Daruma_Framework. "Termica"= Opção responsável para informar a impressora não-fiscal Daruma, no qual seu modelo de impressão esta sendo trabalhado através de impressoras térmicas. Você pode estar alterando está opção pelo método regTermica_DUAL_Daruma_Framework. "Velocidade"= Chave responsável pela velocidade que sua porta de comunicação ira trabalhar, sendo ela 9600, 38400 ou 115200, por padrão e caso utilizado as impressoras conectadas através da porta paralela LPT, a velocidade padrão e única esta configurada para 115200, já caso o 332 DarumaFramework desenvolvedor estiver trabalhar com Cabo USB ou Serial(RS232) haverá a possibilidade de alterar na velocidade desejada. Você pode estar alterando está opção pelo método regVelocidade_DUAL_Daruma_Framework. "ZeroCortado"= Opção responsável para alterar na DarumaFramework.dll, a opção que permite que o 0(zero) aparece com o corte no meio evitando assim que aconteça alguma confusão entre a letra O e o Zero. Trabalhando com Código de Barras - Impressora Não-Fiscal Modelo: DR600 e DR700. Índice: 75 Bibliotecas: DarumaFramework.dll Objetivo: Definição: Demonstrar ao desenvolvedor como realizar a impressão de código de barras na DUAL através de Tags - DHTML. Abaixo você irá saber além dos modelos de códigos de barras que fazem parte do 'set de comandos' das impressoras não-fiscal térmicas, como a DarumaFramework.dll, facilita na hora da impressão dos código de barras. Observações: 1. Para realizar este procedimento e imprimir os Código de Barras atraves de nossa DarumaFramework.dll, o desenvolvedor deve utilizar a função iImprimirTexto_DUAL_DarumaFramework. 333 DarumaFramework - Help 2.5 Utilização das TAGs: 1. Tipo do Código de barra a ser impresso: (Obrigatório) Conteúdo: <ean13> <ean8> <upc-a> <code11> <code39> <code93> <code128> <codabar> <msi> <pdf> <i2of5> <s2of5> Exemplo: <ean13>parametro</ean13> 2. Trabalhando com Código de Barras na Vertical: (Opcional) Observação: Para realizar a impressão do código de barras na vertical necessitamos inserir o parametro: <cbv> para que a DarumaFramework.dll entenda que o código de barras a ser impresso deverá estar na vertical. Ex.: <i2of5><cbv>1234</cbv></i2of5> Largura do código de barra: Conteúdo: <wx> Valores para a largura do código de barras (x): 2 a 5 - Padrão: 2 Exemplo: <ean13><cbv><w3>123456789123</w3></cbv></ean13> Altura do código de barra: Conteúdo: <hx> Valores para a altura do código de barras (x): 50 a 90 - Padrão: 50 Exemplo: <ean13><cbv><h70>123456789123</h70></cbv></ean13> 3. Trabalhando com Código de Barras na Horizontal: (Opcional) Largura do código de barra: Conteúdo: <wx> Valores para a largura do código de barras (x): 2 a 5 - Padrão: 2 334 DarumaFramework Exemplo: <ean8><w3>1234567</w3></ean8> Altura do código de barra: Conteúdo: <hx> Valores para a altura do código de barras (x): 50 a 200 Padrão: 50 Exemplo: <ean8><h120>1234567</h120></ean8> 4. Como demonstrar o valor do código de barras: (Opcional) Demonstra o código do código de barras o valor nele incluido nos parametros: Conteúdo: <txt> Exemplo: <ean13><txt>123456789123</txt></ean13> Definições e Parametros: Abaixo iremos descrever como comparta cada TAGs para a impressão do código de barras, tais como valores de parametros entre outros. <ean13>: trabalha com 12 dígitos de 0 à 9; Ex: <ean13><txt>123456789123</txt></ean13> <ean8>: trabalha com 7 dígitos de 0 à 9; Ex: <ean8><txt>1234567</txt></ean8> <upc-a>: trabalha com 11 dígitos de 0 à 9; Ex: <upc-a><txt>12345678912</txt></upc-a> 335 DarumaFramework - Help 2.5 <code39>: trabalha com tipo de tamanho variável, de 0-9, A-Z, '-', '.', '%', '/', '$', ' ', '+'. O caracter '*' de start/stop é inserido automaticamente; Ex: <code39><txt>12345678A-B-Z*F-E-H*</txt></code39> <code93>: trabalha com tipo de tamanho variável, de 0-9, A-Z, '-', '.', ' ', '$', '/', '+', '%'. O caracter '*' de start/stop é inserido automaticamente; Ex: <code93><txt>12345678A-B-Z-F&</txt></code93> <codabar>: trabalha com tipo de tamanho variável, de 0-9, '$', '-', ':', '/', '.', '+'. Existem 4 diferentes caracteres de start/stop: A, B, C e D que são usados em pares e não podem aparecer em nenhum outro lugar do código; Ex: <codabar><txt>12345678A$$</txt></codabar> <code11>: trabalha com tipo de tamanho variável, de 0-9. CheckSum de dois caracteres; Ex: <code11><txt>1234567891234567</txt></code11> <code128>: trabalha com tipo de tamanho variável, todos os caracteres ASCII; Ex: <code128><txt>123456789123-A-B-*_%-&</txt></code128> 336 DarumaFramework <msi>: trabalha com tipo de tamanho variável, de 0-9, sendo um dígito de verificação; Ex: <msi><txt>1234567890</txt></msi> <i2of5>: Interlevead 2 of 5 - trabalha com tamanho sendo sempre par, de 0-9. Sem dígito de verificação; Ex: <i2of5><txt>1234</txt></i2of5> <s2of5>: Standard 2 of 5 (Industrial) - trabalha com tamanho variável, de 0-9. Sem dígito de verificação; Ex: <s2of5><txt>12345678</txt></s2of5> Exemplos Gerais: Abaixo demonstraremos alguns exemplos de TAGs e como devera ser projetada em seu desenvolvimento: EAN-13: a. Realizando o Código de Barras na Vertical, com ajustes de largura e altura: Exemplo: <ean13><cbv><w3><h70>123456789123</h70></w3></c bv></ean13><sl>05</sl> 337 DarumaFramework - Help 2.5 b. Realizando o Código de Barras na Horizontal, demonstrando o valor do código: Exemplo: <ean13><txt>123456789123</txt></ean13><sl>05</sl> UPC-A: a. Realizando o Código de Barras na Horizontal, com ajustes de largura e altura: Exemplo: <upca><w3><h120>12345678912</h120></w3></upca><sl>05</sl> 338 DarumaFramework b. Realizando o Código de Barras na Vertical, demonstrando o valor do código: Exemplo: <upc- a><cbv><txt>12345678912</txt></cbv></upca><sl>05</sl> CODE-39: a. Realizando o Código de Barras na Horizontal, com ajustes de largura e altura e inserindo o valor do código: Exemplo: <code39><w3><h120><txt>12345678A-B-Z*F-EH*</txt></h120></w3></code39><sl>05</sl> b. Realizando o Código de Barras na Vertical, com ajustes de largura e altura e inserindo o valor do código: Exemplo: <code39><cbv><w3><h120><txt>12345678A-BZ*F-EH*</txt></h120></w3></cbv></code39><sl>05</sl> 339 DarumaFramework - Help 2.5 Exemplos, com a função: Parâmetros: 1. iRetorno. Variável integer com a(s) tag(s) que serão usadas. 2. iTamanho. Variável integer com a(s) tag(s) que serão usadas no tamanho do texto que você irá imprimir, caso deseje a DarumaFramework.dll poderá calcular o tamanho automaticamente passando o parâmetro "0". 3. stTexto. Variável string com a(s) tag(s) que serão usadas em até 2000 caracteres. Nomenclatura: Windows: iImprimirTexto_DUAL_DarumaFramework 340 DarumaFramework Retornos dos possíveis erros: Impressora está projetada junta a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -4: A chave ou Valor no Arquivo do Registro(Registry) não foi encontrada. Linguagens Disponíveis: Delphi Método {--Declaracao da função que imprimir um texto na impressora--} Declaração function iImprimirTexto_DUAL_DarumaFramework(stTexto: String; iTam: Integer ): Integer; StdCall; External {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := iImprimirTexto_DUAL_DarumaFramework('<ean13>123456789012</ean13>" + "<ean8>1234567</ean8><upc-a>12345678901</upc-a><code39>CODE 39</code39>" + "<code93>CODE 93</code93><codabar>CODABAR</codabar><msi>123456789</msi>" + "<code11>12345678901</code11>', 0); VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== IMPRESSORAS DUAL ===========' Declaração Public Declare Function iImprimirTexto_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTexto As Integer Dim iRetorno As Integer iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ean13>123456789012</ean13>" + _ Função "<ean8>1234567</ean8><upc-a>12345678901</upc-a><code39>CODE 39</code39>" + _ "<code93>CODE 93</code93><codabar>CODABAR</codabar><msi>123456789</msi>" + _ "<code11>12345678901</code11>", 0); 341 DarumaFramework - Help 2.5 C# Método //*************Métodos para Impressoras Dual************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int iImprimirTexto_DUAL_DarumaFramework(string stTexto, int iTam); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores D uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar usando outra denominação. Função DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iImprimirTexto_DUAL_DarumaFramework("<e 0); VBNet Método '**********************************************************************' DUAL Declaração Public Declare Function iImprimirTexto_DUAL_DarumaFramework Lib "Darumaframework.dll" (ByVal stTexto As Integer Dim iRetorno As Integer Função iRetorno = iImprimirTexto_DUAL_DarumaFramework("<ean13>123456789012</ean13>" + _ "<ean8>1234567</ean8><upc-a>12345678901</upc-a><code39>CODE 39</code39>" + _ "<code93>CODE 93</code93><codabar>CODABAR</codabar><msi>123456789</msi>" + _ "<code11>12345678901</code11>", 0); Funcoes Especiais Trabalhando com o Registro(Registry) e o XML DarumaFramework Índice: 80 Bibliotecas: DarumaFramework.dll Objetivo: 342 DarumaFramework Definição: Demonstrar ao desenvolvedor como trabalha as chaves de registro e o arquivo XML gerado pela DarumaFramework.dll. Entendendo o Registro: Registro - Registry (regedit - Windows OS): Como trabalho na antiga DLL Daruma, a nova DLL - DarumaFramework.dll onde foi trabalhada começando do zero com novas funções, nomenclaturas entre outras informações, foi mantido através de novos conceitos os métodos de informações que são inseridas em seu registro do windows, com ela ajudando a você desenvolvedor de uma maneira automática já inicializar todos os métodos e configurações necessárias para que seu aplicativo desenvolvido para nossas impressoras funcione perfeitamente sem a necessidade de reescrever ou inserir novamente os métodos, isso ajuda e facilita no momento do desenvolvimento do codigo, evitando o abuso excessivo de copia de comandos para que seu produto Daruma funcione. Veja abaixo como acessar as informações do registro e o conteúdo do DarumaFramework.dll. Acessando o Registro - Registry através do Windows: Iniciar -> Executar -> regedit 343 DarumaFramework - Help 2.5 Imagem do Registro do Windows, através do [HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework] Verificando as informações no Registry através do Windows: As informações contidas abaixo, são das principais raizes, os valores abaixo são aplicados por padrão: [HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework] "LocalArquivos"="c:\\" "LogTamMaxMB"="5" "Produto"="TA2000" "ThreadAoIniciar"="1" [HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework\DUAL] "AguardarProcesso"="0" "Auditoria"="0" "CodePageAutomatico"="0" "EnterFinal"="0" "Inicializou"="0" "LinhasGuilhotina"="0" "ModoGaveta"="0" "PortaComunicacao"="DEFAULT" "Tabulacao"="05,10,15,20,30,40" "Termica"="0" "Velocidade"="9600" "ZeroCortado"="0" [HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework\ECF] "AguardarImpressao"="0" "ArquivoLeituraX"="LeituraX.ser" "Auditoria"="0" "CaracterSeparadorRetorno"="" "ControleAutomatico"="1" "EmErroBuscarPorta"="0" "EnviarAvisoAoUsuario"="0" "EnviarErroAoUsuario"="0" "MaxFechamentoAutomatico"="0" 344 DarumaFramework "MensagemApl1"="DarumaFramework - Mensagem No Programada" "MensagemApl2"="DarumaFramework - Mensagem No Programada" "MensagemAviso"="AVISO: [O PAPEL ESTA ACABANDO!!]. INSIRA NOVA BOBINA DE PAPEL." "OnLineAutomatico"="0" "PortaSerial"="DEFAULT" "ReceberAvisoEmArquivo"="0" "ReceberAvisoNoMetodo"="1" "ReceberDescricaoAvisoEmArquivo"="0" "ReceberDescricaoErroEmArquivo"="0" "ReceberErroEmArquivo"="0" "ReceberErroNoMetodo"="1" "ReceberInfoExtendida"="1" "ReceberInfoExtendidaEmArquivo"="0" "ReducaoZAutomatica"="1" "SagriaValor"="100" "SagriaMensagem"="" "SinalSonoroIniciar"="0" "SuprimentoValor"="100" "SuprimentoMensagem"="" "TituloMensagem"="[DarumaFramework]" "Velocidade"="9600" [HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework\MIN100] "Porta"="DEFAULT" "Velocidade"="115200" "Thread"="TRUE" "Apagar"="TRUE" "LerApagar"="TRUE" [HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework\MODEM] "Porta"="DEFAULT" "Velocidade"="115200" "Thread"="TRUE" "Apagar"="TRUE" "LerApagar"="TRUE" [HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework\TA2000] 345 DarumaFramework - Help 2.5 "MensagemBoasVindasLinha1"="******BEM-VINDO AO TA2000 - DARUMA******" "MensagemBoasVindasLinha2"="****www.desenvolvedoresdaruma.com.br****" "Porta"="LPT0" "Auditoria"="0" Observações: 1. Toda a vez que a chave é excluida a DarumaFramework irá criar ela novamente com os valores padrões. Definições para a chave DarumaFramework: Não será comentado todas as definições das chaves acima, pois estão dividas por partes em cada tópico referente ao produto, TA2000, Modem, Impressora Fiscal e Mini-Impressora(Nao-Fiscal), abaixo estaremos comentando sobre os itens presentes na chave DarumaFramework, para acessar cada chave referente aos produtos clique nos links abaixo: Para TA2000: Clique Aqui Para Modem: Clique Aqui Para Impressora Fiscal: Não disponível Para Mini-Impressoras: Clique Aqui "LocalArquivos"= Esta chave permite configurar a localização onde os arquivos de LOG, entre outras informações geradas pela DLL DarumaFramework.dll irá criar, geralmente está na raiz da maquina, ou seja, Drive C. "LogTamMaxMB"= Esta opção é responsável pelo tamanho em que o LOG, criado pela DarumaFramework.dll poderá alcançar por padrão definimos o conteúdo para no máximo 5 megas. "Produto"= Opção que determina qual produto será utilizado pela DarumaFramework.dll, ele funciona como se fosse uma chave que poderá ser alterada em tempo real informando qual produto você estará trabalhando no momento, deixando assim a DLL - DarumaFramework.dll focada exclusivamente para o produto selecionado, devemos prestar 346 DarumaFramework atenção nesta chave pois ela define o produto, caso você esteja trabalhando com mais de um produto, como por exemplo um TA2000 e o modem MIN-200, com a impressora você devera chamar o método eDefinirProduto_Daruma, toda a vez que for trabalhar com o produto em especifico. "ThreadAoIniciar"= Com esta opção habilitada(1) é possível configurar a DarumaFramework.dll para trabalhar em Thread(programa que consiste de várias seções menores independentes) possibilitando assim, você instanciar sua aplicação pela segunda vez pela mesma DLL. Entendendo o XML: XML (Extensible Markup Language): Está novidade no qual foi inserida exclusivamente na DarumaFramework.dll para facilitar no resgate de informações que a DarumaFramework.dll registra, ou seja, este arquivo XML, que será criado de forma automática em seu computador, localizado na propria pasta onde sua DarumaFramework.dll encontra-se, será um "sopro de vida" final caso seja apagado seu registro e você necessite que as informações voltem da maneira que foram configuradas no registro, facilitando assim no resgate de alguma configuração ou informação vital contida no registro. Resumindo o XML seria a base de informações do Registro em seu momento atual sendo em caso de perda do registro o XML, com a DarumaFramework.dll irá recriar as informações do registro baseado nas ultima informações inseridas no XML. Clique aqui para ver a descrição e tamanho de cada chave do XML. Segue abaixo um exemplo de XML. Arquivo XML: 347 DarumaFramework - Help 2.5 Dados contidos no arquivo: Exemplo <DARUMAFRAMEWORK> <START> <TipoRegistro>2</TipoRegistro> <LocalArquivos>c:\</LocalArquivos> <LocalArquivosRelatorios>c:\</LocalArquivosRelatorios> <LogTamMaxMB>5</LogTamMaxMB> <Produto>FISCAL</Produto> <ThreadAoIniciar>0</ThreadAoIniciar> </START> <DUAL> <AguardarProcesso>1</AguardarProcesso> <TempoEsperaLeitura>10</TempoEsperaLeitura> <Auditoria>0</Auditoria> <CodePageAutomatico>0</CodePageAutomatico> <EnterFinal>1</EnterFinal> <Inicializou>0</Inicializou> <LinhasGuilhotina>0</LinhasGuilhotina> <ModoGaveta>0</ModoGaveta> <PortaComunicacao>COM1</PortaComunicacao> <Tabulacao>05,10,15,20,30,40</Tabulacao> <Termica>1</Termica> <Velocidade>9600</Velocidade> </DUAL> 348 DarumaFramework <ECF> <AguardarBitmapRZ>0</AguardarBitmapRZ> <AguardarImpressao>0</AguardarImpressao> <ArquivoLeituraX>LeituraX.ser</ArquivoLeituraX> <Auditoria>1</Auditoria> <ArredondarTruncar>A</ArredondarTruncar> <CaracterSeparador>;</CaracterSeparador> <ControleAutomatico>1</ControleAutomatico> <EmErroBuscarPorta>0</EmErroBuscarPorta> <EnviarAvisoAoUsuario>0</EnviarAvisoAoUsuario> <EnviarErroAoUsuario>0</EnviarErroAoUsuario> <FarmaciaPopular>0</FarmaciaPopular> <LegendaInmetro>1</LegendaInmetro> <MaxFechamentoAutomatico>0</MaxFechamentoAutomatico> <MensagemApl1>DarumaFramework - Mensagem Não Programada</MensagemApl1> <MensagemApl2>DarumaFramework - Mensagem Não Programada</MensagemApl2> <MensagemAviso>AVISO: [O PAPEL ESTA ACABANDO!!]. INSIRA NOVA BOBINA DE PAPEL.</MensagemAviso> <NaoAvisarPoucoPapel>0</NaoAvisarPoucoPapel> <OnLineAutomatico>0</OnLineAutomatico> <PortaSerial>COM1</PortaSerial> <ReceberAvisoEmArquivo>0</ReceberAvisoEmArquivo> <ReceberDescricaoAvisoEmArquivo>0</ReceberDescricaoAvisoEmArqui vo> <ReceberDescricaoErroEmArquivo>0</ReceberDescricaoErroEmArquivo > <ReceberErroEmArquivo>0</ReceberErroEmArquivo> <ReceberInfoEstendida>1</ReceberInfoEstendida> <ReceberInfoEstendidaEmArquivo>0</ReceberInfoEstendidaEmArquivo > <ReducaoZAutomatica>0</ReducaoZAutomatica> <RetornarAvisoErro>1</RetornarAvisoErro> <SangriaMensagem></SangriaMensagem> <SangriaValor>100</SangriaValor> <SinalSonoroIniciar>1</SinalSonoroIniciar> <SuprimentoMensagem></SuprimentoMensagem> 349 DarumaFramework - Help 2.5 <SuprimentoValor>100</SuprimentoValor> <TituloMensagem>[DarumaFramework]</TituloMensagem> <Velocidade>9600</Velocidade> <LMFCompleta>1</LMFCompleta> <CF> <FormaPgto>CARTAO</FormaPgto> <MensagemPromocional></MensagemPromocional> <Quantidade>1</Quantidade> <TamanhoMinimoDescricao>15</TamanhoMinimoDescricao> <TipoDescAcresc>D%</TipoDescAcresc> <UnidadeMedida>un</UnidadeMedida> <ValorDescAcresc>0.00</ValorDescAcresc> <CupomAdicionalDllConfig>111111111100000000000</CupomAdicion alDllConfig> <CupomAdicionalDllTitulo>Cupom Adicional</CupomAdicionalDllTitulo> <ModoPreVenda>0</ModoPreVenda> <CupomMania>0</CupomMania> </CF> <CCD> <DocOrigem>000336</DocOrigem> <FormaPgto>CARTAO</FormaPgto> <LinhasTEF>20</LinhasTEF> <Parcelas>01</Parcelas> <Valor>000000000010</Valor> </CCD> <CHEQUE> <XLinha1>10</XLinha1> <XLinha2>10</XLinha2> <XLinha3>10</XLinha3> <YLinha1>10</YLinha1> <YLinha2>20</YLinha2> <YLinha3>30</YLinha3> </CHEQUE> <COMPATIBILIDADE> <StatusFuncao>1</StatusFuncao> </COMPATIBILIDADE> <SINTEGRA> 350 DarumaFramework <Bairro>JARDIM BOTâNICO</Bairro> <CEP>80215-090</CEP> <Cod_Convenio>3</Cod_Convenio> <Cod_Finalidade>1</Cod_Finalidade> <Cod_Natureza>3</Cod_Natureza> <Complemento>4º ANDAR - SALA. 406 </Complemento> <Contato_Nome>JOãO</Contato_Nome> <Contato_Telefone>(XX41) 3361-6005</Contato_Telefone> <Fax>(XX41) 3361-6945</Fax> <Logradouro>AVENIDA SHISHIMA HIFUMI,</Logradouro> <Municipio>SãO PAULO</Municipio> <Numero>2911</Numero> <UF>SP</UF> </SINTEGRA> <ATOCOTEPE> <Automatico>0</Automatico> </ATOCOTEPE> </ECF> <TA2000> <Auditoria>0</Auditoria> <MensagemBoasVindasLinha1>**********Daruma Automacao**************</MensagemBoasVindasLinha1> <MensagemBoasVindasLinha2>********MicroTerminal TA2000************</MensagemBoasVindasLinha2> <Porta>LPT0</Porta> </TA2000> <MODEM> <Porta>COM1</Porta> <PortaTimeOut>10</PortaTimeOut> <Velocidade>9600</Velocidade> <Thread>FALSE</Thread> <TempoAlertar>4000</TempoAlertar> <CaptionWinAPP>MODEM - MIN100/MIN200</CaptionWinAPP> <BandejaInicio>SIM1</BandejaInicio> <LerApagar>FALSE</LerApagar> <Auditoria>1</Auditoria> <Apn>XXXXX</Apn> <Usuario>XXXXX</Usuario> 351 DarumaFramework - Help 2.5 <Senha>XXXXX</Senha> <IpServidor>XXX.XXX.XXX.XXX</IpServidor> <IpCliente>XXX.XXX.XXX.XXX</IpCliente> </MODEM> </DARUMAFRAMEWORK> Observações: 1. O XML não é um arquivo de configuração como o registro, ele é somente uma base de informações baseadas no conteúdo do registro do seu sistema operacional em caso de perda. 2. Caso o XML seja apagado, a DarumaFramework.dll junto com o Registro irá re-criar automáticamente o arquivo XML baseando nos dados do Registro. 3. Caso seja apagado o Registro, da Daruma Framework, o XML junto com a DarumaFramework.dll irá re-criar a partir dos dados contidos no arquivo XML. 4. O XML, somente será alterado se o usuário realizar as configurações do registro através dos métodos da DarumaFramework.dll, presente no HELP. 5. Caso o usuário resolva alterar o registro acessando o REGEDIT, ou seja manualmente o XML não será alterado. 6. Caso o usuário resolva alterar o arquivo DarumaFramework.xml presente na pasta onde está localizado a DarumaFramework.dll, o XML irá realizar as alterações no registro da maquina somente quando inicializado a DarumaFramework.dll novamente. 7. Caso seja apagado o XML junto ao Registro, a DarumaFramework.dll irá re-criar novamente a partir das configurações padrões. eDefinirProduto_Daruma Método: eDefinirProduto_Daruma Todos os Produtos. Índice: 74 Bibliotecas: DarumaFramework.dll 352 DarumaFramework Método: Definição: Este método permite identificar em qual produto a DarumaFramework será capaz de trabalhar, alternando assim a capacidade da DarumaFramework.dll, localizar com precisão o produto a ser utilizado. Dia-a-Dia: Esta configuração permite que você trabalhe com todos os produtos da Daruma, numa única DLL. Dica: O método pode ser utilizado com diversos produtos num único aplicativo, basta você alterar o nome do produto. Ex.: Você esta trabalhando com o Display do TA2000 e gostaria de utilizar a sua impressora não fiscal para imprimir algum comprovante, neste meio basta você utilizar a função para alternar entre os produtos. Observações: 1. Nenhuma. Definição do Método: Parâmetros: 1. stProduto. Variável string no qual serão usadas, passando assim o produto que será utilizado. Produtos: "TA2000" - Para Terminais TA2000 - Daruma; "DUAL" - Para Impressoras Não-Fiscal Daruma; "MODEM" - Para Modem Daruma, como MIN100/200. 2. iRetorno. Variável integer com a(s) tag(s) que serão usadas. 353 DarumaFramework - Help 2.5 Nomenclatura: Windows: eDefinirProduto_Daruma Retornos dos possíveis erros: Os produtos Daruma estão projetados junto a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para a DarumaFramework--} Declaração function eDefinirProduto_Daruma(stProduto: String): Integer; StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var iRetorno: Integer; begin Função iRetorno := eDefinirProduto_Daruma('TA2000'); end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== DARUMA FRAMEWORK ===========' Declaração Public Declare Function eDefinirProduto_Daruma Lib "DarumaFrameWork.dll" (ByVal stProduto As String) As Integer Função 354 Dim iRetorno As Integer DarumaFramework iRetorno = reDefinirProduto_Daruma("TA2000") End C# Método //*************Métodos para Daruma Framework************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int eDefinirProduto_Daruma(string stProduto); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar Função usando outra denominação. DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.eDefinirProduto_Daruma("TA2000 VBNet Método '**********************************************************************' Daruma Framework Declaração Public Declare Function eDefinirProduto_Daruma Lib "Darumaframework.dll" (ByVal stProduto As String) As Inte Dim iRetorno As Integer Função iRetorno = eDefinirProduto_Daruma("TA2000") End regRetornaValorChave_Darum aFramework Método: regRetornaValorChave_DarumaFramework Todos os Produtos. Índice: 81 Bibliotecas: DarumaFramework.dll Método: 355 DarumaFramework - Help 2.5 Definição: Este método permite ao desenvolvedor resgatar as informações descritas no registro da maquina, ou seja, o mesmo através deste método pode acessar as informações do registro e retornar com a função os valores nele presentes. Observações: 1. Para evitar conflitos internos com seu aplicativo e as informações contidas no registro estaremos especificando abaixo o padrão das chaves internas e como deve ser utilizado, seguindo está documentação não haverá problemas em acessar e resgatar as informações do registro. 2. Somente utilizando os métodos de registro de cada produto será possível visualizar as alterações no momento que for chamada o método regRetornaValorChave_DarumaFramework, caso você altere as informações do registro manualmente não irá surgir efeito e o valor que o método será o mesmo quando inicializado a DarumaFramework.dll. 3. Caso nao seja definido o Produto a DarumaFramework.dll irá verificar o nome do produto já presente no registro, ou seja, se não for especificado algum produto o mesmo irá basear no produto já definido no registro. Exemplos de como trabalhar com o método: 1. Abaixo estaremos demonstrando como funciona o método e como deverá estar para que você seja capaz de resgatar as informações corretas das funções solicitadas: 356 DarumaFramework A imagem acima foi retirada do exemplo em C#. A imagem acima, demonstra o valor no registro no qual esta configurado para "1". Como demonstrado nas imagens acima, utilizamos o Produto abaixo a Chave para assim retornar o Valor das informações contidas no registro, para que isso aconteça você deverá ter os nomes das chaves para que a função retorne as informações assim solicitadadas. Abaixo estarei demonstrando alguns exemplos de produtos e chaves para que seja visualizado as informações: Produto: TA2000 Chave: 1. ADLINHA; 2. AELINHA; 3. CLINHA; 4. EDICAOECO; Produto: DUAL Chave: 1. PortaComunicacao; 357 DarumaFramework - Help 2.5 2. Termica; 3. EnterFinal; 4. ZeroCortado; Produto: MODEM Chave: 1. Apagar; 2. Velocidade; 3. Porta; 4. Thread; Produto: FS600 Chave: 1. CFFORMAPGTO; 2. CCDFORMAPGTO; Acima estamos demonstrando somente alguns exemplos de como ficaria a nomeclatura das chaves no qual você estará trabalhando para a solicitação das informações no registro, como podemos observer algumas chaves estão dentro de outras chaves para isso, basta você especificar a pasta onde encontra sua chave e o nome dela, como mostra nos exemplos abaixo: Ex.: Suponha que você necessite retirar as informações da Chave Linha, presente dentro de HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework\TA2000\Display\ad, para acessar as informações contidas na chave Linha, basta você inserir a ultima pasta na qual ela pertence seguido do nome da sua chave, ou seja, "adlinha", se retiramos para entender melhor o nome da chave iremos ver que: AD - Indica a ultima pasta no qual sua informação esta contida; LINHA - Chave no qual você deseja saber o Valor. 358 DarumaFramework Ex2.: Caso sua chave já esteja na mesma pasta raiz do qual você necessita buscar a informação basta você inserir o nome da chave, como por exemplo, eu gostaria de saber a informação da porta de comunicação que encontra meu Modem Min-200 no registro (HKEY_LOCAL_MACHINE\SOFTWARE\DarumaFramework\MODEM), sendo assim colocariamos o produto como MODEM e a chave como "Porta". MODEM - Indica o Produto, como a chave Raiz do Produto, ou seja, não existe a necessidade de especificarmos na chave; Porta - Chave no qual você necessita saber o valor. Definição do Método: Parâmetros: 1. stProduto. Variável string no qual serão usadas, passando assim o produto que será utilizado. Produtos: "TA2000" - Para Terminais TA2000 - Daruma; "DUAL" - Para Impressoras Não-Fiscal Daruma; "MODEM" - Para Modem Daruma, como MIN100/200; "FS600" - Para Impressoras Fiscais - Não Disponível; 2. stChave. Variável string no qual será indicada a chave no qual a variável stValor irá retorna com a informação. Para o retorno eficaz da chave correspondida a sua solicitação, favor verificar os exemplos acima de como trabalhar com as chaves. 3. stValor. Variável string no qual indicará o valor correspondido a chave e o produto acima inseridos. Esta variável deve estar configurada para receber um pacote de informações do tipo String. 4. iRetorno. Variável integer com a(s) tag(s) que serão usadas. Nomenclatura: Windows: regRetornaValorChave_DarumaFramework 359 DarumaFramework - Help 2.5 Retornos dos possíveis erros: Os produtos Daruma estão projetados junto a nossa DarumaFramework.dll para retornar os possíveis erros inteiros demonstrados abaixo: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. -99: Método não executado, parâmetro inválido. -1: Erro de atualização de Chave. -2: Linhas e Colunas inválidas. Para Facilitar o manuseio dos métodos estaremos demonstrando abaixo como usar o método acima descrita em: Linguagens Disponíveis: Delphi Método {--Declaracao da função de configuracao para a DarumaFramework--} function regRetornaValorChave_DarumaFramework(szProduto: String; szChave: String; szValor: String ): Integ Declaração StdCall; External 'DarumaFrameWork.dll' {$R *.dfm} var stProduto : String; stChave : String; stValor : String; iRetorno : Integer; begin stProduto := TA2000; stChave := ADLINHA; Função SetLength(stValor, 15); iRetorno := regRetornaValorChave_DarumaFramework( stProduto, stChave, stValor ); if (iRetorno = 1) Then begin Application.MessageBox('Solicitacao concluida com sucesso, segue o conteudo da Chave.', 'Daruma DLL Framework', MB_OK + MB_ICONINFORMATION); EB_Valor.Text := stValor; end 360 DarumaFramework else begin Application.MessageBox('Erro ao solicitar as informacoes da Chave, verificar.', 'Daruma DLL Framework', MB MB_ICONERROR); end; end; VB6 Método '=============DECLARACOES DARUMA FRAMEWORK========================' '=========== DARUMA FRAMEWORK ===========' Declaração Public Declare Function regRetornaValorChave_DarumaFramework Lib "DarumaFramework.dll" (ByVal sProduto String, sChave As String, ByVal sValor As String) As Integer Dim stProduto As String Dim stChave As String Dim stValor As String Dim iRetorno As Integer stProduto = TA2000 stChave = ADLINHA stValor = Space(15) Função iRetorno = regRetornaValorChave_DarumaFramework(stProduto, stChave, stValor) If (iRetorno = 1) Then MsgBox "Solicitacao concluida com sucesso, segue o conteudo da Chave.", vbInformation, "Daruma DLL Fram TB_Valor.Text = stValor Else MsgBox "Erro ao solicitar as informacoes da Chave, verificar.", vbInformation, "Daruma DLL Framework" End If C# Método //*************Métodos para Daruma Framework************* Declaração [DllImport("DarumaFrameWork.dll")] public static extern int regRetornaValorChave_DarumaFramework(string sProduto, string sChave, [MarshalAs(UnmanagedType.VBByRefStr)] ref string szRetorno); ** As Declarações usadas, são baseadas em nosso exemplo, que pode ser extraido do site de desenvolvedores Daruma. Devemos lembrar que o uso dos nomes abaixo são exemplos no qual em sua aplicação poderá estar us outra denominação. Função string stProduto, stChave, stValor ; stValor = new string(' ', 15); 361 DarumaFramework - Help 2.5 stProduto = TA2000; stChave = ADLINHA; DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regRetornaValorChave_DarumaFramework(stP stChave, ref stValor); if (DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno == 1) { MessageBox.Show("Solicitacao concluida com sucesso, segue o conteudo da Chave.", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Information); TB_Valor.Text = stValor; } else { MessageBox.Show("Erro ao solicitar as informacoes da Chave, verificar.", "Daruma DLL Framework", MessageBoxButtons.OK, MessageBoxIcon.Error); } VBNet Método '**********************************************************************' Daruma Framework Declaração Public Declare Function regRetornaValorChave_DarumaFramework Lib "DarumaFramework.dll" (ByVal sProduto String, sChave As String, ByVal sValor As String) As Integer Dim stProduto As String Dim stChave As String Dim stValor As String Dim iRetorno As Integer stProduto = TA2000 stChave = ADLINHA stValor = Space(15) Função iRetorno = regRetornaValorChave_DarumaFramework(stProduto, stChave, stValor) If (iRetorno = 1) Then MsgBox "Solicitacao concluida com sucesso, segue o conteudo da Chave.", vbInformation, "Daruma DLL Fram TB_Valor.Text = stValor Else MsgBox "Erro ao solicitar as informacoes da Chave, verificar.", vbInformation, "Daruma DLL Framework" End If 362 DarumaFramework Impressora Fiscal Bilhete de Passagem iCFBPVender_ECF_Daruma Definição: Este método vende um item no Cupom Fiscal Bilhete de passagem. Sintaxe: iCFBPVender_ECF_Daruma(char*pszAliquota,char*pszValor,char*pszTipoDescAcresc,char*ps zValorDescAcresc,char*pszDescricao); Parâmetros: IdVariável TipoTam.Descrição 1 pszCargaTributaria A 3 pszPrecoUnitario N 4 pszTipoDescAcresc A Alíquota do Item.Exemplos: ICMS Não tributado: ("II" - Isento, "FF"- Substituição tributária, "NN" - Não Tributária. ICMS Tributado: 5 I07,00 , I18,00) ISSQN Não tributado: ("ISS" - Isento, "FS"- Substituição tributária, "NS" - Não Tributária. ISSQN Tributado: S07,00 , S18,00) 8 Preço Unitário do Item. Tipo de Acréscimo ou Desconto no Item.Exemplos: 2 D% - Desconto em Percentual. D$ - Desconto em Valor. A% - Acréscimo em Percentual. 363 DarumaFramework - Help 2.5 5 pszValorDescAcresc N A$ - Acréscimo em Valor. Valor do desconto ou acréscimo ou Valor da 11 porcentagem. 6 pszDescricaoItem 21 Descrição do Item. A Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal e cupom Fiscal Bilhete de Passagem aberto. Exemplo em Delphi: function iCFBPVender_ECF_Daruma(pszAliquota:string;pszValor:string;pszTipoDescAcresc:string;pszV Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCFBPVender_ECF_Daruma(Str_Situacao_Tributaria,Str_Valor,Str_Tipo_Acresc Str_Valor_Acrescimo_Desconto,Str_Descricao); confFBProgramaUF_ECF_Daruma Definição: Este método configura o UF Origem do próximo Cupom Fiscal Bilhete de Passagem. Sintaxe: confCFBPProgramarUF_ECF_Daruma(char*pszUF); 364 DarumaFramework Parâmetros: Id Variável 1 pszUF Tipo Tam. Descrição A 2 UF de Origem do próximo CFBP. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function confCFBPProgramarUF_ECF_Daruma(pszUF:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := confCFBPProgramarUF_ECF_Daruma(Str_UfOrigem); . iCFBPAbrir_ECF_Daruma Definição: Este método abre um Cupom Fiscal Bilhete de Passagem. Sintaxe: 365 DarumaFramework - Help 2.5 iCFBPAbrir_ECF_Daruma(char*pszOrigem,char*pszDestino,char*pszUFDestino, char*pszPercurso,char*pszPrestadora,char*pszPlataforma,c har*pszPoltrona, char*pszModalidadetransp,char*pszCategoriaTransp,char*p szDataEmbarque, char*pszRGPassageiro,char*pszNomePassageiro,char*psz EnderecoPassageiro); Parâmetros: Id Variável 1 pszOrigem 2 pszDestino 3 pszUFDestino 4 pszPercurso 5 pszPrestadora 6 pszPlataforma 7 pszPoltrona 8 pszModalidadetransp TipoTam.Descrição A 34 Origem: localidade do embarque. A 34 Destino: localidade de chegada. A 2 UF destino. A 39 Percurso: percurso ou trajeto A 48 Prestadora do transporte A 4 Plataforma A 3 Poltrona Modalidade de transporte 1 = A 1 Rodoviário 2 = Ferroviário 3 = Hidroviário Categoria do transporte 1= interestadual 9 pszCategoriaTransp A 2= 1 intermunicipal 3 = internacional 10pszDataEmbarque A 11pszRGPassageiro A 12pszNomePassageiro A 13pszEnderecoPassageiro A 14 até 29 30 Data de embraque: DDMMAAAA hhmmss RG do passageiro (opcional) Nome do passageiro (opcional) Endereço do passageiro 79 (opcional) Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. 366 DarumaFramework Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nome e endereço somente são aceitos caso o campo RG não seja nulo; Para Categoria 1, a UF do destino deve ser diferente da UF do ECF; Para Categoria 2, a UF do destino deve ser igual a UF do ECF; Exemplo em Delphi: function iCFBPAbrir_ECF_Daruma(pszOrigem:string;pszDestino:string;pszUFDestino:strin pszPlataforma:string;pszPoltrona:string;pszModalidadetransp:string;pszCategoriaTransp:s pszNomePassageiro:string;pszEnderecoPassageiro:string): Integer; StdCall; External 'Da Int_Retorno:= iCFBPAbrir_ECF_Daruma(Str_Origem, Str_Destino, Str_UF,Str_Percurso, Str_Modalidade, Str_Categoria, Str_DataHora, Str_RG_Passageiro, Str_Nome_Passagei Codigo de Barras Comprovante Credito Debito CCD Funcoes TEF iTEF_ImprimirRespostaCartao_ECF_ Daruma 367 DarumaFramework - Help 2.5 Definição: Um dos grandes problemas hoje das empresas de software na homologação do TEF é a impressão da Reposta da operadora do cartão no ECF. Abrir o arquivo, buscar o campo a ser impresso, controlar a impressão, etc.. tudo isso é realizado por este método. Passe apenas o PATH onde este arquivo se encontra e a função iTEF_ImprimirResposta_ECF_Daruma imprime pra você o arquivo, permite travar o teclado e devolve se a impressão foi com sucesso ou não, caso não tenha tido sucesso você deverá proceder os passos do TEF de perguntar se deseja continuar a impressão ou não etc. Clique Aqui para visualizar como tratar os possíveis erros de impressão. Sintaxe: iTEF_ImprimirRespostaCartao_ECF_Daruma(char *szArquivo, bool bTravarTeclado, char *szForma, char *szValor); Parâmetros: Id Variável 1 2 3 4 Tipo Tam. Descrição Caminho completo + nome do arquivo que szArquivo A 300 você deseja imprimir: "C:\TEF_DIAL\RESP\INTPOS.001 1 - True - Trava Teclado bTravarTeclado Int/Bool 0 - False - Não Trava Teclado szForma A 20 Descrição da forma de pagamento szValor A 12 Valor da forma de pagamento Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: O arquivo de resposta da operadora de cartão deve estar no diretório. Exemplo em Delphi: 368 DarumaFramework function iTEF_ImprimirRespostaCartao_ECF_Daruma(szArquivo:string; bTravarTeclado:Boolean; szForma:string; szValor:string):Integer; StdCall; External 'DarumaFramework.dll'; iTEF_ImprimirRespostaCartao_ECF_Daruma(Str_Path_Arquivo_Resp_TEF,true, Str_Forma_de_Pagamento,Str_Valor_Pagamento); Utilizando as funções que facilitam o TEF Para imprimir a resposta da operadora de cartão de crédito ou débito, sem a necessidade de varrer arquivos, etc.. Você poderá economizará muitas rotinas e muito código fonte, chamado apenas a função: iTEF_ImprimirResposta_ECF_Daruma Exemplo: Vamos imaginar que temos um cupom fiscal de 100 reais que esta sendo pago com a forma de Pagamento cadastrada na Impressora "Cartão de Crédito". Após o fechamento do cupom fiscal e a comunicação com a Operadora de Cartão, você irá receber um arquivo chamado IntPos.001, então apenas chame a função: iRetorno = iTEF_ImprimirResposta_ECF_Daruma("c:\TefDial\Resp\Intpos.001",1); E a DARUMAFRAMEWORK.DLL irá se encarregar de imprimir o arquivo de resposta pra você mais rápido que você controlar esta impressão linha a linha, como saber se a Impressão foi OK? simples, veja o que a função irá te retornar, se retornar diferente de 1(um) é porque deu pau! caso contrario tudo OK! Deseja imprimir uma segunda via de um comprovante de TEF? simples, chame novamente a função: iRetorno = iCCDSegundaVia_ECF_Daruma(); 369 DarumaFramework - Help 2.5 A função só pode ser executada após a impressão do Comprovante de Crédito e/ou Débito. Deseja controlar o travamento do Teclado enquanto imprime o TEF? simples chame a função: eTEF_TravarTeclado_ECF_Daruma Você não sabe se o Comprovante Crédito e/ou Débito está aberto ou se esta com um Relatório Gerencial aberto e esta em dúvida qual comando utiliza para Fechar o relatório, neste caso faça o seguinte: Chame a função iTEF_Fechar_ECF_Daruma se encarrega de identificar pra você quem está aberto e fechar, simples! Deixe a DarumaFramework trabalhar por você! Problemas com Foco na Aplicação? Se você estiver perdendo o Foco na Janela, poderá utilizar também a DarumaFramework para te ajudar, Chame a Função eTEF_SetarFoco_ECF_Daruma e passe como parâmetro o Titulo da Janela que deseja setar o foco, simples, fácil! Quando você realiza uma transação eletrônica de Fundos, você efetua os seguintes passos: 1) Cria o Arquivo de texto solicitando uma Transação eletrônica de fundos 2) Cria um Thread, Loop, For, ou Timer, para ficar monitorando durante 60 segundos ou menos se o arquivo de resposta da Operadora de Cartão chegou. 370 DarumaFramework Se você não desenhar a rotina de espera de arquivo de uma forma adequada, com Threads, etc.. você simplesmente irá travar seu programa ou deixa-lo demasiado lento pelo fato de estar consumindo muita CPU. Então quando você necessitar esperar um arquivo de resposta da Operadora de TEF, faça o seguinte: Execute o Passo a (acima descrito) apos isso chame a função: iRetorno iTEF_ImprimirResposta_ECF_Daruma("C:\TEF_DIAL\RESP\INTPOS.001","0") = com isso a DarumaFramework estará esperando este arquivo para você, e note que ela irá passar o controle de sua aplicação para dentro da dll de maneira que seu programa somente continuará a executar as linhas subseqüentes após a execução da função e a espera do arquivo de retorno ou não. Deixe que a DarumaFramework assuma esta função para você. 3) Necessita controlar pouco papel ou impressora desligada na Transação de TEF? bem estes passos são essenciais para a Homologação de seu software de Automação Comercial, por isso você poderá utilizar o retorno que a função iTEF_ImprimirResposta_ECF_Daruma devolve, pois com este retorno sendo ele diferente de 1(um) você poderá solicitar a Reimpressão do Cupom e assim controlar se a impressão do TEF aconteceu ou não, porque na Homologação o que importa saber é se a impressão completa do TEF aconteceu ou não, e por isso o retorno da função já é o suficiente para este controle. Veja um exemplo de um pequeno Algoritmo de como você poderá controlar isso: iRetorno= iTEF_ImprimirResposta_ECF_Daruma("c:\TefDial\Resp\Intpos.001", 1) 371 DarumaFramework - Help 2.5 'Verifica se a impressão foi OK e caso não tenha sido re-imprime no Gerencial. eTEF_EsperarArquivo_ECF_Daruma Definição: Faz com que a dll espere um arquivo (que você passa como Parâmetro) por "X" segundos (que você também passa como parâmetro) e devolve se o Arquivo foi encontrado dentro do tempo especificado, caso contrario devolve -52 que não foi possível encontrar o arquivo. Este método é de extrema utilidade para o TEF - Transferência Eletronica de Fundos onde o aplicativo necessita esperar aquivos de resposta do Gerenciador Padrão, passe apenas o PATH com o nome do Arquivo e o tempo que você deseja que a dll espere o arquivo e pronto, deixe que a dll faça o "contador de tempo" para você, você ainda pode escolher se enquanto a dll aguarda a criação do arquivo o teclado deve ser bloqueado ou não. Sintaxe: eTEF_EsperarArquivo_ECF_Daruma(char *szArquivo, int iTempo, bool bTravar); Parâmetros: Id Variável Tipo Tam. Descrição Caminho completo + nome do arquivo que 1 szArquivo A 300 você deseja imprimir: "C:\TEF_DIAL\RESP\INTPOS.001 Tempo de espera chegada arquivo em 2 iTempo Int 2 segundos. 1 - True - Trava Teclado 3 bTravarTeclado Int/Bool 0 - False - Não Trava Teclado Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: 372 DarumaFramework Nenhum. Exemplo em Delphi: function eTEF_EsperarArquivo_ECF_Daruma(szArquivo: String; iTempo:integer; bTravar:Boolean): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := eTEF_EsperarArquivo_ECF_Daruma(Str_Path_Arquivo_Resp_TEF, StrToInt(Str_TempoEspera), true); eTEF_SetarFoco_ECF_Daruma Definição: Coloca o foco na janela que você especificar. Isso resolve alguns problemas do TEF de perda de foco após ou durante uma transação TEF. Sintaxe: eTEF_SetarFoco_ECF_Daruma(char *szNomeTela); Parâmetros: Id Variável 1 szNomeTela Tipo Tam. Descrição A 300 Título da janela que deseja colocar o foco. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: 373 DarumaFramework - Help 2.5 function eTEF_SetarFoco_ECF_Daruma(szNomeTela:String):Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := eTEF_SetarFoco_ECF_Daruma(pchar('Calc')); eTEF_TravarTeclado_ECF_Daruma Definição: Trava ou destrava o teclado para entrada de dados, não bufferiza e não deixa resíduos no Buffer. Trava totalmente a entrada de dados via teclado deixando o Buffer Zerado. Sintaxe: eTEF_TravarTeclado_ECF_Daruma(bool bTravar); Parâmetros: Id Variável Tipo Tam. Descrição 1 - True - Trava Teclado 1 bTravarTeclado Int/Bool 0 - False - Não Trava Teclado Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function eTEF_TravarTeclado_ECF_Daruma(bTravar:Boolean):Integer; 374 DarumaFramework StdCall; External 'DarumaFramework.dll'; Int_Retorno := eTEF_TravarTeclado_ECF_Daruma(true); iTEF_Fechar_ECF_Daruma Definição: Fecha o relatório no ECF, seja qual for o relatório que estiver aberto. Não se preocupe em identificar se é um Relatório Gerencial ou Comprovante Crédito e Débito, apenas chame a função que possui inteligência para identificar qual é o relatório que está aberto e fechá-lo. Sintaxe: iTEF_Fechar_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function iTEF_Fechar_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iTEF_Fechar_ECF_Daruma(); 375 DarumaFramework - Help 2.5 iTEF_ImprimirResposta_ECF_Darum a Definição: Um dos grandes problemas hoje das empresas de software na homologação do TEF é a impressão da Reposta da operadora do cartão no ECF. Abrir o arquivo, buscar o campo a ser impresso, controlar a impressão, etc.. tudo isso é realizado por este método. Passe apenas o PATH onde este arquivo se encontra e a função iTEF_ImprimirResposta_ECF_Daruma imprime pra você o arquivo, permite travar o teclado e devolve se a impressão foi com sucesso ou não, caso não tenha tido sucesso você deverá proceder os passos do TEF de perguntar se deseja continuar a impressão ou não etc. Clique Aqui para visualizar como tratar os possíveis erros de impressão. Sintaxe: iTEF_ImprimirResposta_ECF_Daruma(char *szArquivo, bool bTravarTeclado); Parâmetros: Id Variável Tipo Tam. Descrição Caminho completo + nome do arquivo que 1 szArquivo A 300 você deseja imprimir: "C:\TEF_DIAL\RESP\INTPOS.001 1 - True - Trava Teclado 2 bTravarTeclado Int/Bool 0 - False - Não Trava Teclado Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: O arquivo de resposta da operadora de cartão deve estar no diretório. 376 DarumaFramework Exemplo em Delphi: function iTEF_ImprimirResposta_ECF_Daruma(szArquivo:String; bTravarTeclado:Boolean):Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iTEF_ImprimirResposta_ECF_Daruma(Str_Path_Arquivo_Resp_TEF,false); iCCDSegundaVia_ECF_Daruma Definição: Este método imprime a 2ª via do Comprovante de Crédito e Débito. Sintaxe: iCCDSegundaVia_ECF_Daruma(void); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: 377 DarumaFramework - Help 2.5 function iCCDSegundaVia_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCCDSegundaViaCompr_ECF_Daruma(); Exemplo em C#: iCCDAbrir_ECF_Daruma Definição: Este método abre um Comprovante de Crédito ou Débito(TEF). Sintaxe: iCCDAbrir_ECF_Daruma(char*pszFormaPgto,char*pszParcelas,char*pszDocOrigem, char*pszValor,char*pszCPF,char*pszNome,char*pszEndereco); Parâmetros: Id Variável 1 pszFormaPgto A 20 2 3 4 5 6 7 pszParcelas pszDocOrigem pszValor pszCPF pszNome pszEndereco A A A A A A 2 6 12 20 30 79 Saídas: Nenhum. Retornos: 378 Tipo Tam. Descrição Descritivo da forma da forma de pagamento Número de parcelas COO do documento vinculado Valor do pagamento CPF ou CNPJ Consumidor Nome Consumidor Endereço Consumidor DarumaFramework 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nome e endereço somente são aceitos caso o campo CPF/CNPJ não seja nulo. Valor e o descritivo da forma de pagamento deve coincidir com o valor e a forma de pagamento no último cupom. Exemplo em Delphi: function iCCDAbrir_ECF_Daruma(pszFormaPgto:String;pszParcelas:String;pszDocOrigem:String; Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCCDAbrir_ECF_Daruma('Cartão','1', '001000', '0,10', '123456789', 'Daruma iCCDAbrirPadrao_ECF_Daruma Definição: Este método abre o Comprovante de crédito ou Débito correspondente ao último cupom fiscal finalizado com forma de pagamento vinculada. Sintaxe: iCCDAbrirPadrao_ECF_Daruma(void); Parâmetros: Nenhum. Saídas: Nenhum. 379 DarumaFramework - Help 2.5 Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: O último cupom fiscal deve ter sido finalizado com forma de pagamento vinculada. Exemplo em Delphi: function iCCDAbrirPadrao_ECF_Daruma: Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCCDAbrirPadrao_ECF_Daruma(); Exemplo em C#: iCCDAbrirSimplificado_ECF_Daruma Definição: Este método abre um Comprovante de Crédito ou Débito(TEF). Sintaxe: iCCDAbrirSimplificado_ECF_Daruma(char*pszFormaPgto,char*pszParcelas,char*pszDocOr igem,char*pszValor); Parâmetros: 380 DarumaFramework Id Variável 1 pszFormaPgto 2 3 4 A pszParcelas pszDocOrigem A A pszValor Descrição Descritivo da forma da forma de 20 pagamento 2 Número de parcelas 6 COO do documento vinculado Tipo Tam. A 12 Valor do pagamento Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Valor e o descritivo da forma de pagamento deve coincidir com o valor e a forma de pagamento no último cupom. Exemplo em Delphi: function iCCDAbrirSimplificado_ECF_Daruma(pszFormaPgto:String;pszParcelas:String;pszDocOr Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCCDAbrir_ECF_Daruma('Cartão','1', '001000', '0,10'); iCCDEstornar_ECF_Daruma Definição: Este método estorna Comprovante de Crédito ou Débito(TEF). Sintaxe: 381 DarumaFramework - Help 2.5 iCCDEstornar_ECF_Daruma(char*pszCOO,char*pszCPF,char*pszNome,char*pszEndereco ); Parâmetros: Id 1 2 3 4 Tipo Tam. Descrição Variável A 6 COO do documento vinculado pszCOO A 20 CPF ou CNPJ Consumidor pszCPF A 30 Nome Consumidor pszNome 79 Endereço Consumidor pszEndereco A Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nome e endereço somente são aceitos caso o campo CPF/CNPJ não seja nulo. Observação: O comprovante de estorno admite segunda via e reimpressão. Exemplo em Delphi: function iCCDAbrir_ECF_Daruma(pszFormaPgto:String;pszParcelas:String;pszDocOrigem:String; Integer; StdCall; External 'DarumaFramework.dll'; IInt_Retorno:= iCCDEstornar_ECF_Daruma('001000', '123456789', 'Daruma', 'Developer iCCDEstornarPadrao_ECF_Daruma 382 DarumaFramework Definição: Este método estorna último Comprovante de crédito ou Débito. Sintaxe: iCCDEstornarPadrao_ECF_Daruma(void); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function iCCDAbrirPadrao_ECF_Daruma: Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCCDEstornarPadrao_ECF_Daruma(); Exemplo em C#: 383 DarumaFramework - Help 2.5 iCCDFechar_ECF_Daruma Definição: Este método finaliza o Comprovante Crédito e Débito. Sintaxe: iCCDFechar_ECF_Daruma(void); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function iCCDFechar_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCCDFechar_ECF_Daruma(); . iCCDImprimirArquivo_ECF_Daruma 384 DarumaFramework Definição: Este método imprime o conteúdo do arquivo de resposta do Comprovante de Crédito ou Débito(TEF). Sintaxe: iCCDImprimirArquivo_ECF_Daruma(char*pszArqOrigem); Parâmetros: Id Variável 1 pszArqOrigem Tipo Tam. Descrição A 100 Local do arquivo e nome do arquivo. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function iCCDImprimirArquivo_ECF_Daruma(pszArqOrigem:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCCDImprimirArquivo_ECF_Daruma('c:\Tef_Dial\Resp\Intpos.001); 385 DarumaFramework - Help 2.5 iCCDImprimirTexto_ECF_Daruma Definição: Este método imprime texto do Comprovante de Crédito ou Débito(TEF). Sintaxe: iCCDImprimirTexto_ECF_Daruma(char*pszTexto); Parâmetros: Id Variável 1 pszTexto Tipo Tam. Descrição A 619 Texto do Comprovante de Crédito ou Débito. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Observação: O comando pode ser repetido quantas vezes forem necessárias, até o limite de 2 minutos de impressão . Exemplo em Delphi: 386 DarumaFramework function iCCDImprimirTexto_ECF_Daruma(pszTexto:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCCDImprimirTexto_ECF_Daruma('Texto_Comprovante'); Comprovante Nao Fiscal iCNFTotalizarComprovantePadrao_E CF_Daruma Definição: Este método totaliza o comprovante não fiscal. Sintaxe: iCNFTotalizarComprovantePadrao_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Comprovante Não Fiscal aberto em fase de totalização; Quando o acréscimo ou desconto for expresso em percentual, deverá ser maior que 0 (zero) e inferior a 100% (cem por cento); 387 DarumaFramework - Help 2.5 Quando o acréscimo ou desconto for expresso em valor, deverá ser maior que 0 (zero) e inferior ao valor sobre o qual incida. Exemplo em Delphi: function iCNFTotalizarCupomPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCNFTotalizarCupomPadrao_Daruma(); iCNFAbrir_ECF_Daruma Definição: Este método abre um Comprovante Não Fiscal identificando consumidor. Sintaxe: iCNFAbrir_ECF_Daruma(char*pszCPF,char*pszNome,char*pszEndereco) Parâmetros: Id 1 2 3 Tipo Tam. Descrição Variável A 20 CPF ou CNPJ Consumidor pszCPF A 30 Nome Consumidor pszNome 79 Endereço Consumidor pszEndereco A Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 388 DarumaFramework 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nome e endereço somente são aceitos caso o campo CPF/CNPJ não seja nulo. Dicas: Você pode utilizar o Comprovante não fiscal para imprimir comprovante de pagamento de valores relativos à água, luz, telefone e outros. Exemplo em Delphi: function iCNFAbrir_ECF_Daruma(pszCPF: String; pszNome: String; pszEndereco: String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFAbrir_ECF_Daruma('45170289000125','Daruma Developers Community', 'São José dos Campos'); iCNFAbrirPadrao_ECF_Daruma Definição: Este método abre um Comprovante Não Fiscal. Sintaxe: iCNFAbrirPadrao_ECF_Daruma(void); Parâmetros: Nenhum. 389 DarumaFramework - Help 2.5 Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Dicas: Você pode utilizar o Comprovante não fiscal para imprimir comprovante de pagamento de valores relativos à água, luz, telefone e outros. Exemplo em Delphi: function iCNFAbrir_ECF_Daruma(pszCPF: String; pszNome: String; pszEndereco: String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFAbrir_ECF_Daruma('45170289000125','Daruma Developers Community', 'São José dos Campos'); iCNFCancelar_ECF_Daruma Definição: Este método permite cancelar o comprovante não fiscal. Sintaxe: 390 DarumaFramework iCNFCancelar_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Pode ser executado com o documento em emissão . Exemplo em Delphi: function iCNFCancelarItem_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFCancelar_ECF_Daruma(); iCNFCancelarAcrescimoItem_ECF_D aruma Definição: 391 DarumaFramework - Help 2.5 Este método cancela o acréscimo aplicado sobre um item vendido no comprovante não fiscal. Sintaxe: iCNFCancelarAcrescimoItem_ECF_Daruma(char*pszNumItem); Parâmetros: Id Variável 1 pszNumItem TipoTam.Descrição N 3 Número do Item Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Comprovante Não Fiscal aberto e ao menos um item vendido; Item deve possuir acréscimo. Exemplo em Delphi: function iCNFCancelarAcrescimoItem_ECF_Daruma(pszNumItem:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFCancelarAcrescimoItem_ECF_Daruma('002'); 392 DarumaFramework iCNFCancelarAcrescimoSubtotal_EC F_Daruma Definição: Este método cancela o acréscimo aplicado sobre o subtotal do comprovante não fiscal atual. Sintaxe: iCNFCancelarAcrescimoSubtotal_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Comprovante não fiscal aberto e ao menos um item vendido; Comprovante não fiscal deve possuir acréscimo em subtotal. Exemplo em Delphi: 393 DarumaFramework - Help 2.5 function iCNFCancelarAcrescimoSubtotal_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFCancelarAcrescimoSubtotal_ECF_Daruma(); iCNFCancelarAcrescimoUltimoItem_ ECF_Daruma Definição: Este método cancela o acréscimo aplicado sobre o último item vendido no comprovante não fiscal Sintaxe: iCNFCancelarAcrescimoUltimoItem_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Comprovante Não Fiscal aberto e ao menos um item vendido; 394 DarumaFramework Item deve possuir acréscimo. Exemplo em Delphi: function iCNFCancelarAcrescimoUltimoItem_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFCancelarAcrescimoUltimoItem_ECF_Daruma(); iCNFCancelarDescontoItem_ECF_Da ruma Definição: Este método cancela o desconto aplicado sobre um item vendido no comprovante não fiscal atual. Sintaxe: iCNFCancelarDescontoItem_ECF_Daruma(char*pszNumItem); Parâmetros: Id Variável 1 pszNumItem TipoTam.Descrição N 3 Número do Item Saídas: Nenhum. Retornos: 395 DarumaFramework - Help 2.5 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Comprovante Não Fiscal aberto e ao menos um item vendido; Item deve possuir desconto. Exemplo em Delphi: function iCNFCancelarDescontoItem_ECF_Daruma(pszNumItem:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFCancelarDescontoItem_ECF_Daruma('002'); iCNFCancelarDescontoSubtotal_ECF _Daruma Definição: Este método cancela o desconto aplicado sobre o subtotal do comprovante não fiscal atual. Sintaxe: iCNFCancelarDescontoSubtotal_ECF_Daruma(); 396 DarumaFramework Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Comprovante Não Fiscal aberto e ao menos um item vendido; Comprovante Não l deve possuir desconto em subtotal. Exemplo em Delphi: function iCNFCancelarDescontoSubtotal_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFCancelarDescontoSubtotal_ECF_Daruma(); iCNFCancelarDescontoUltimoItem_E CF_Daruma Definição: 397 DarumaFramework - Help 2.5 Este método cancela o desconto aplicado sobre o último item vendido no comprovante não fiscal atual. Sintaxe: iCNFCancelarDescontoUltimoItem_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Comprovante Não Fiscal aberto e ao menos um item vendido; Item deve possuir desconto. Exemplo em Delphi: function iCNFCancelarDescontoUltimoItem_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFCancelarDescontoUltimoItem_ECF_Daruma(); iCNFCancelarItem_ECF_Daruma 398 DarumaFramework Definição: Este método permite o cancelamento total de item no Comprovante Não Fiscal. Sintaxe: iCNFCancelarItem_ECF_Daruma(char*pszNumItem); Parâmetros: Id Variável 1 pszNumItem TipoTam.Descrição N 3 Número do Item Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function iCNFCancelarItem_ECF_Daruma(pszNumItemc:String;): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFCancelarItem_ECF_Daruma('002'); 399 DarumaFramework - Help 2.5 iCNFCancelarUltimoItem_ECF_Daru ma Definição: Este método permite o cancelamento do último item no Comprovante não Fiscal. Sintaxe: iCNFCancelarUltimoItem_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal, comprovante não fiscal aberto ao menos um item vendido e item não pode estar cancelado. Exemplo em Delphi: function iCNFCancelarUltimoItem_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFCancelarUltimoItem_ECF_Daruma(); 400 DarumaFramework iCNFEfetuarPagamento_ECF_Darum a Definição: Este método processa o pagamento do comprovante não fiscal. Sintaxe: iCNFEfetuarPagamento_ECF_Daruma(char*pszFormaPgto,char*pszValor,char*pszI nfoAdicional); Parâmetros: Id Variável Tipo Tam. Descrição 1 psszFormaPgto A 20 Descrição da forma de pagamento 2 pszValor A 12 Valor da forma de pagamento 3 pszInfoAdicional A 84 Informação Adicional Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Comprovante não fiscal aberto; A forma de pagamento deve estar previamente cadastrada. 401 DarumaFramework - Help 2.5 Exemplo em Delphi: function iCNFEfetuarPagamento_ECF_Daruma(pszFormaPgto:String;pszValor:String;pszInfoAdic Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCNFEfetuarPagamento_ECF_Daruma('Dinheiro','1,00', 'Obrigado e volte s . iCNFEfetuarPagamentoFormatado_E CF_Daruma Definição: Este método processa o pagamento do comprovante fiscal. Sintaxe: iCNFEfetuarPagamento_ECF_Daruma(char*pszFormaPgto,char*pszValor); Parâmetros: Id Variável Tipo Tam. 1 psszFormaPgto A 20 2 pszValor A 12 Descrição Descrição da forma de pagamento Valor da forma de pagamento Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. 402 DarumaFramework Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Comprovante Não Fiscal aberto; A forma de pagamento deve estar previamente cadastrada. Exemplo em Delphi: function iCNFEfetuarPagamentoFormatado_ECF_Daruma(pszFormaPgto:String;pszValor:String;) Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCNFEfetuarPagamentoFormatado_ECF_Daruma('Dinheiro','1,00'); iCNFEncerrar_ECF_Daruma Definição: Este método finaliza o comprovante não fiscal com mensagem promocional. Sintaxe: iCNFEncerrar_ECF_Daruma(char*pszMensagem); Parâmetros: Id Variável 1 pszMensagem Tipo Tam. Descrição A 619 Mensagem promocional em até 8 linhas. Saídas: Nenhum. Retornos: 403 DarumaFramework - Help 2.5 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Comprovante não fiscal totalizado. Exemplo em Delphi: function iCNFEncerrar_ECF_Daruma(pszMensagem:string):Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFEncerrar_ECF_Daruma('Obrigado e volte sempre!!'); iCNFEncerrarPadrao_ECF_Daruma Definição: Este método finaliza o comprovante não fiscal, de forma resumida sem mensagem promocional. Sintaxe: iCNFEncerrarPadrao_ECF_Daruma(void); Parâmetros: Nenhum. Saídas: Nenhum. 404 DarumaFramework Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Comprovante Não Fiscal totalizado. Exemplo em Delphi: function iCNFEncerrarPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFEncerrarPadrao_ECF_Daruma(); iCNFReceber_ECF_Daruma Definição: Este método registra no Comprovante um item não-fiscal. Sintaxe: iCNFReceber_ECF_Daruma(char*pszIndice,char*pszValor,char*pszTipoDescAcres c,char*pszValorDescAcresc); Parâmetros: Id Variável TipoTam.Descrição 405 DarumaFramework - Help 2.5 1 pszIndice 2 pszValor 3 pszTipoDescAcresc A A A 4 pszValorDescAcresc A 2 11 Indice do Totalizador Não Fiscal Valor da forma de pagamento Tipo de Acréscimo ou Desconto no Item.Exemplos: 0D% - Desconto em Percentual. 1 - D$ 1 - Desconto em Valor. 2A% - Acréscimo em Percentual. 3 - A$ - Acréscimo em Valor. Valor do desconto ou acréscimo, em 12 centavos, ou Valor da porcentagem, seguido de 7 zeros. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: O recebimento deve estar previamente cadastrado na Memória de Trabalho; O totalizador 01 corresponde a Sangria, e 02 a Suprimento, são préprogramados, e não podem ser utilizados. Exemplo em Delphi: function iCNFReceber_ECF_Daruma(pszIndice:string;pszValor:string;pszTipoDescAcresc:string;p Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFReceber_ECF_Daruma(Str_Indice, Str_Valor,Str_TipoDescAcresc, S 406 DarumaFramework iCNFReceberSemDesc_ECF_Daruma Definição: Este método registra no Comprovante um item não-fiscal. Sintaxe: iCNFReceberSemDesc_ECF_Daruma(char*pszIndice,char*pszValor); Parâmetros: Id Variável 1 pszIndice 2 pszValor Tipo Tam. A 2 A 11 Descrição Indice do Totalizador Não Fiscal Valor da forma de pagamento Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: O recebimento deve estar previamente cadastrado na Memória de Trabalho; O totalizador 01 corresponde a Sangria, e 02 a Suprimento, são préprogramados, e não podem ser utilizados. 407 DarumaFramework - Help 2.5 Exemplo em Delphi: function iCNFReceberSemDesc_ECF_Daruma(pszIndice:string;pszValor:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCNFReceberSemDesc_ECF_Daruma(Str_Indice, Str_Valor,Str_TipoDescAcresc, Str_ValorDescAcresc); iCNFTotalizarComprovante_ECF_Dar uma Definição: Este método totaliza o comprovante não fiscal. Sintaxe: iCNFTotalizarComprovante_ECF_Daruma(char*pszTipoDescAcresc,char*pszValorDescAcresc) ; Parâmetros: IdVariável TipoTam.Descrição Tipo Acréscimo ou Desconto Exemplo - A% - Acréscimo em Percentual 1 pszTipoDescAcresc N A$ - 7 Acréscimo em Valor D% Descontp em Percentual D$ Desconto em Valor 2 pszValorDescAcresc N Saídas: 408 11 Valor do acréscimo ou Valor da porcentagem. DarumaFramework Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Comprovante Não Fiscal aberto em fase de totalização; Quando o acréscimo ou desconto for expresso em percentual, deverá ser maior que 0 (zero) e inferior a 100% (cem por cento); Quando o acréscimo ou desconto for expresso em valor, deverá ser maior que 0 (zero) e inferior ao valor sobre o qual incida. Exemplo em Delphi: function iCNFTotalizarComprovante_ECF_Daruma(pszTipoDescAcresc:String; pszValorDescAcresc:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCNFTotalizarComprovante_Daruma('D$','1,00'); Configuracoes da Impressora Fiscal confProgramarOperador_ECF_Daru ma 409 DarumaFramework - Help 2.5 Definição: Este método programa o Operador no ECF, essa programação pode ser feita a qualquer momento do dia. Sintaxe: confProgramarOperador_ECF_Daruma(char*pszValor); Parâmetros: Id Variável 1 pszValor Tipo Tam. Descrição A 20 Identificação do operador. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function confProgramarOperador_ECF_Daruma(pszValor:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= confProgramarOperador_ECF_Daruma('Turno:A-01''); . confCadastrar_ECF_Daruma 410 DarumaFramework Definição: Este método permite a configuração de Alíquotas, Totalizadores Não Fiscais, Relatórios Gerenciais e Meios de Pagamento. Sintaxe: confCadastrar_ECF_Daruma(char*pszCadastrar,char*pszValor,char*pszSeparador); Parâmetros: Id Variável Tipo Tam. 1 pszCadastrar A 2 pszValor A 3 pszSeparador A 8 Descrição Tipo: ALIQUOTA, TNF, RG, FPGTO, 300 Descrição a ser cadastrada Separador utilizado para separar a 1 descrição Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function confCadastrar_ECF_Daruma(pszCadastrar:string;pszValor:string;pszSeparador:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= confCadastrar_ECF_Daruma('FGTO',Cartão|Cheque|Visa', '|'); 411 DarumaFramework - Help 2.5 . confCadastrarPadrao_ECF_Daruma Definição: Este método permite a configuração de Alíquotas, Totalizadores Não Fiscais, Relatórios Gerenciais e Meios de Pagamento. Sintaxe: confCadastrarPadrao_ECF_Daruma(char*pszCadastrar,char*pszValor); Parâmetros: Id Variável Tipo Tam. 1 pszCadastrar A 2 pszValor A 8 Descrição Tipo: ALIQUOTA, TNF, RG, FPGTO, 300 Descrição a ser cadastrada Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. 412 DarumaFramework Exemplo em Delphi: function confCadastrarPadrao_ECF_Daruma(pszCadastrar:string;pszValor:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= confCadastrarPadrao_ECF_Daruma('FGTO',Cartão|Cheque|Visa'); . confDesabilitarHorarioVerao_ECF_D aruma Definição: Este método desabilitar o horário de verão. Sintaxe: confDesabilitarHorarioVerao_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. 413 DarumaFramework - Help 2.5 Requisitos: Nenhum. Exemplo em Delphi: function confDesabilitarHorarioVerao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= confDesabilitarHorarioVerao_ECF_Daruma(); . confDesabilitarModoPreVenda_ECF_ Daruma Definição: Este método desabilita o modo pré venda. Sintaxe: confDesabilitarModoPreVenda_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. 414 DarumaFramework Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Só é possível desabilitar essa configuração modelo de impressora MACH1, MACH2 e MACH3. Exemplo em Delphi: function confDesabilitarModoPreVenda_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= confDesabilitarModoPreVenda_ECF_Daruma(); . confHabilitarHorarioVerao_ECF_Dar uma Definição: Este método habilita o horário de verão. Sintaxe: confHabilitarHorarioVerao_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. 415 DarumaFramework - Help 2.5 Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function confHabilitarHorarioVerao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= confHabilitarHorarioVerao_ECF_Daruma(); . confHabilitarModoPreVenda_ECF_D aruma Definição: Este método habilita o modo pré venda. Sintaxe: confHabilitarModoPreVenda_ECF_Daruma(); Parâmetros: Nenhum. 416 DarumaFramework Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Só é possível habilitar essa configuração modelo de impressora MACH1, MACH2 e MACH3. Exemplo em Delphi: function confHabilitarModoPreVenda_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= confHabilitarModoPreVenda_ECF_Daruma(); . confProgramarAvancoPapel_ECF_D aruma Definição: Este método permite a configuração de Alíquotas, Totalizadores Não Fiscais, Relatórios Gerenciais e Meios de Pagamento. Sintaxe: 417 DarumaFramework - Help 2.5 confProgramarAvancoPapel_ECF_Daruma(char*pszSepEntreLinhas,char*pszSepE ntreDoc, char*pszLinhasGuilhotina,char*pszGuilhotina, char*pszImpClicheAntecipada); Parâmetros: IdVariável TipoTam.Descrição Separação entre linhas ( em passos de 1 pszSepEntreLinhas A 2 1/216” ) Separação entre documentos ( em 2 pszSepEntreDoc A 2 linhas ) Linha de acionamento da guilhotina ( 3 pszLinhasGuilhotina A 2 em linhas ) 0 = Guilhotina desabilitada A 1 4 pszGuilhotina 1 = Guilhotina habilitada 0 = Impressão antecipada do clichê A 1 1 = Sem impressão antecipada do pszImpClicheAntecipada clichê Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function confProgramarAvancoPapel_ECF_Daruma(pszSepEntreLinhas:string;pszSepEntreDoc:string;pszLinh pszImpClicheAntecipada:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= confProgramarAvancoPapel_ECF_Daruma('10','5','5','1','0'); 418 DarumaFramework . confFBProgramarIDLoja_ECF_Daru ma Definição: Este método configura o número da Loja no ECF. Sintaxe: confProgramarIDLoja_ECF_Daruma(char*pszValor); Parâmetros: Id Variável 1 pszValor Tipo Tam. Descrição A 4 Número da Loja. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: 419 DarumaFramework - Help 2.5 function confProgramarIDLoja_ECF_Daruma(pszValor:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= confProgramarIDLoja_ECF_Daruma('A-01'); . Declaracoes DFW Declarações em Delphi 7 //CUPOM FISCAL //Abertura Cupom Fiscal function iCFAbrir_ECF_Daruma(pszCPF: String; pszNome: String; pszEndereco: String): Integer; StdCall; External 'DarumaFramework.dll'; function iCFAbrirPadrao_ECF_Daruma: Integer; StdCall; External 'DarumaFramework.dll'; //Registro de Item function iCFVender_ECF_Daruma(pszCargaTributaria:String; pszQuantidade:String; pszPrecoUnitario:String; pszTipoDescAcresc:String; pszValorDescAcresc:String; pszCodigoItem:String; pszUnidadeMedida:String; pszDescricaoItem:String): Integer; StdCall; External 'DarumaFramework.dll'; function iCFVenderSemDesc_ECF_Daruma(pszCargaTributaria:String; pszQuantidade:String; pszPrecoUnitario:String; pszCodigoItem:String; pszUnidadeMedida:String; pszDescricaoItem:String): Integer; StdCall; External 'DarumaFramework.dll'; function iCFVenderResumido_ECF_Daruma(pszCargaTributaria:String; pszPrecoUnitario:String; pszCodigoItem:String; pszDescricaoItem:String): Integer; StdCall; External 'DarumaFramework.dll'; //Desconto ou Acréscimo em Item de Cupom Fiscal function iCFLancarAcrescimoItem_ECF_Daruma(pszNumItem:String; pszTipoDescAcresc:String; pszValorDescAcresc:String): Integer; StdCall; External 'DarumaFramework.dll'; function iCFLancarDescontoItem_ECF_Daruma(pszNumItem:String; pszTipoDescAcresc:String; pszValorDescAcresc:String): Integer; StdCall; External 'DarumaFramework.dll'; function iCFLancarAcrescimoUltimoItem_ECF_Daruma(pszTipoDescAcresc:String; pszValorDescAcresc:String): Integer; StdCall; External 'DarumaFramework.dll'; function iCFLancarDescontoUltimoItem_ECF_Daruma(pszTipoDescAcresc: String; pszValorDescAcresc:String): Integer; StdCall; External 'DarumaFramework.dll'; //Cancelamento Total de Item em Cupom Fiscal function iCFCancelarItem_ECF_Daruma(pszNumItem: String): Integer; StdCall; External 'DarumaFramework.dll'; function iCFCancelarUltimoItem_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Cancelamento parcial de item em cupom fiscal function iCFCancelarItemParcial_ECF_Daruma(pszNumItem:String;pszQuantidade: String): Integer; StdCall; External 'DarumaFramework.dll'; function iCFCancelarUltimoItemParcial_ECF_Daruma(pszQuantidade: String): Integer; StdCall; External 'DarumaFramework.dll'; //Cancelamento de desconto e acrescimo em item function iCFCancelarDescontoItem_ECF_Daruma(pszNumItem:String): Integer; StdCall; External 'DarumaFramework.dll'; 420 DarumaFramework function iCFCancelarDescontoUltimoItem_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function iCFCancelarAcrescimoItem_ECF_Daruma(pszNumItem:string):Integer; StdCall; External 'DarumaFramework.dll'; function iCFCancelarAcrescimoUltimoItem_ECF_Daruma():Integer; StdCall; External 'DarumaFramework.dll'; //Totalizacao de cupom fiscal function iCFTotalizarCupom_ECF_Daruma(pszTipoDescAcresc:String; pszValorDescAcresc:String): Integer; StdCall; External 'DarumaFramework.dll'; function iCFTotalizarCupomPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Cancelamento de desconto e acrescimo em subtotal de cupom fiscal function iCFCancelarDescontoSubtotal_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function iCFCancelarAcescimoSubtotal_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Descricao do meios de pagamento de cupom fiscal function iCFEfetuarPagamentoPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function iCFEfetuarPagamentoFormatado_ECF_Daruma(pszFormaPgto:String; pszValor:String): Integer; StdCall; External 'DarumaFramework.dll'; function iCFEfetuarPagamento_ECF_Daruma(pszFormaPgto:String;pszValor:String;pszInfoAdicional:Str ing): Integer; StdCall; External 'DarumaFramework.dll'; //Encerramento de cupom fiscal function iCFEncerrar_ECF_Daruma(pszCupomAdicional:string;pszMensagem:string):Integer; StdCall; External 'DarumaFramework.dll'; function iCFEncerrarPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function iCFEncerrarConfigMsg_ECF_Daruma(pszMensagem:string): Integer; StdCall; External 'DarumaFramework.dll'; function iCFEncerrarResumido_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function iCFEmitirCupomAdicional_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Cancelamento de cupom fiscal function iCFCancelar_ECF_Daruma: Integer; StdCall; External 'DarumaFramework.dll'; //Identificação Consumidor Cupom Fiscal function iCFIdentificarConsumidor_ECF_Daruma(pszNome:string;pszEndereco:String; pszDoc:string): Integer; StdCall; External 'DarumaFramework.dll'; //Cupom Mania function rCMEfetuarCalculo_ECF_Daruma(pszISS:string;pszICMS:string): Integer; StdCall; External 'DarumaFramework.dll'; //Estornar Meio Pagamento function iEstornarPagamento_ECF_Daruma(pszFormaPgtoEstornado:string;pszFormaPgtoEfetivado:stri ng;pszValor:string;pszInfoAdicional:string): Integer; StdCall; External 'DarumaFramework.dll'; //CCD - Comprovante de Crédito e Débito function iCCDAbrir_ECF_Daruma(pszFormaPgto:String;pszParcelas:String;pszDocOrigem:String;pszVa lor:String;pszCPF:String;pszNome:String;pszEndereco:String): Integer; StdCall; External 'DarumaFramework.dll'; function iCCDAbrirSimplificado_ECF_Daruma(pszFormaPgto:String; pszParcelas:String;pszDocOrigem:String;pszValor: String): Integer; StdCall; External 'DarumaFramework.dll'; function iCCDAbrirPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function iCCDImprimirTexto_ECF_Daruma(pszTexto:string): Integer; StdCall; External 'DarumaFramework.dll'; function iCCDImprimirArquivo_ECF_Daruma(pszArqOrigem:String): Integer; StdCall; External 'DarumaFramework.dll'; function iCCDFechar_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; 421 DarumaFramework - Help 2.5 //CCD - Segunda via function iCCDSegundaVia_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Estorno CCD function iCCDEstornarPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function iCCDEstornar_ECF_Daruma(pszCOO:String;pszCPF:String; pszNome:String; pszEndereco:String): Integer; StdCall; External 'DarumaFramework.dll'; //TEF function iTEF_ImprimirResposta_ECF_Daruma(szArquivo:String; bTravarTeclado:Boolean):Integer; StdCall; External 'DarumaFramework.dll'; function iTEF_ImprimirRespostaCartao_ECF_Daruma(szArquivo:string; bTravarTeclado:Boolean; szForma:string; szValor:string):Integer; StdCall; External 'DarumaFramework.dll'; function iTEF_Fechar_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function eTEF_EsperarArquivo_ECF_Daruma(szArquivo: String; iTempo:integer; bTravar:Boolean): Integer; StdCall; External 'DarumaFramework.dll'; function eTEF_TravarTeclado_ECF_Daruma(bTravar:Boolean):Integer; StdCall; External 'DarumaFramework.dll'; function eTEF_SetarFoco_ECF_Daruma(szNomeTela:String):Integer; StdCall; External 'DarumaFramework.dll'; // CNF - Comprovante Não Fiscal // Abertura de comprovante nao fiscal function iCNFAbrir_ECF_Daruma(pszCPF:string; pszNome:string;pszEndereco:string): Integer; StdCall; External 'DarumaFramework.dll'; function iCNFAbrirPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; // Recebimento de itens function iCNFReceber_ECF_Daruma(pszIndice:string;pszValor:string;pszTipoDescAcresc:string;pszVal orDescAcresc:string): Integer; StdCall; External 'DarumaFramework.dll'; function iCNFReceberSemDesc_ECF_Daruma(pszIndice:string;pszValor:string): Integer; StdCall; External 'DarumaFramework.dll'; //Cancelamento de item function iCNFCancelarItem_ECF_Daruma(pszNumItem:string): Integer; StdCall; External 'DarumaFramework.dll'; function iCNFCancelarUltimoItem_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Cancelamento de acrescimo em item function iCNFCancelarAcrescimoItem_ECF_Daruma(pszNumItem:string): Integer; StdCall; External 'DarumaFramework.dll'; function iCNFCancelarAcrescimoUltimoItem_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Cancelamento de desconto em item function iCNFCancelarDescontoItem_ECF_Daruma(pszNumItem:string): Integer; StdCall; External 'DarumaFramework.dll'; function iCNFCancelarDescontoUltimoItem_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Totalizacao de CNF function iCNFTotalizarComprovante_ECF_Daruma(pszTipoDescAcresc:string;pszValorDescAcresc:strin g): Integer; StdCall; External 'DarumaFramework.dll'; function iCNFTotalizarComprovantePadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Cancelamento de desconto e acrescimo em subtotal de CNF function iCNFCancelarAcrescimoSubtotal_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function iCNFCancelarDescontoSubtotal_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Descricao do meios de pagamento de CNF 422 DarumaFramework function iCNFEfetuarPagamento_ECF_Daruma(pszFormaPgto:string;pszValor:string;pszInfoAdicional:st ring): Integer; StdCall; External 'DarumaFramework.dll'; function iCNFEfetuarPagamentoFormatado_ECF_Daruma(pszFormaPgto:string;pszValor:string): Integer; StdCall; External 'DarumaFramework.dll'; function iCNFEfetuarPagamentoPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Encerramento de CNF function iCNFEncerrar_ECF_Daruma(pszMensagem:string): Integer; StdCall; External 'DarumaFramework.dll'; function iCNFEncerrarPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Cancelamento de CNF function iCNFCancelar_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Relatório Gerencial function iRGAbrir_ECF_Daruma(pszNomeRG:String): Integer; StdCall; External 'DarumaFramework.dll'; function iRGAbrirIndice_ECF_Daruma(iIndiceRG:Integer): Integer; StdCall; External 'DarumaFramework.dll'; function iRGAbrirPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function iRGImprimirTexto_ECF_Daruma(pszTexto:String): Integer; StdCall; External 'DarumaFramework.dll'; function iRGFechar_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Bilhete Passagem function iCFBPAbrir_ECF_Daruma(pszOrigem:string;pszDestino:string;pszUFDestino:string;pszPercurs o:string;pszPrestadora:string;pszPlataforma:string;pszPoltrona:string;pszModalidadetransp:strin g;pszCategoriaTransp:string;pszDataEmbarque:string;pszRGPassageiro:string;pszNomePassa geiro:string;pszEnderecoPassageiro:string): Integer; StdCall; External 'DarumaFramework.dll'; function iCFBPVender_ECF_Daruma(pszAliquota:string;pszValor:string;pszTipoDescAcresc:string;pszV alorDescAcresc:string;pszDescricao:string): Integer; StdCall; External 'DarumaFramework.dll'; function confCFBPProgramarUF_ECF_Daruma(pszUF:string): Integer; StdCall; External 'DarumaFramework.dll'; //Relatórios Fiscais //Leitura X function iLeituraX_ECF_Daruma: Integer; StdCall; External 'DarumaFramework.dll'; function rLeituraX_ECF_Daruma: Integer; StdCall; External 'DarumaFramework.dll'; function rLeituraXCustomizada_ECF_Daruma(pszCaminho:String): Integer; StdCall; External 'DarumaFramework.dll'; //Redução Z function iReducaoZ_ECF_Daruma(pszData:string; pszHora:String): Integer; StdCall; External 'DarumaFramework.dll'; //Sangria function iSangriaPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function iSangria_ECF_Daruma(pszValor:string; pszMensagem:String): Integer; StdCall; External 'DarumaFramework.dll'; //Suprimento function iSuprimentoPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function iSuprimento_ECF_Daruma(pszValor:string; pszMensagem:String): Integer; StdCall; External 'DarumaFramework.dll'; //Leitura Memória Fiscal function iMFLerSerial_ECF_Daruma(pszInicial:string; pszFinal:string): Integer; StdCall; External 'DarumaFramework.dll'; function iMFLer_ECF_Daruma(pszInicial:string; pszFinal:string): Integer; StdCall; External 'DarumaFramework.dll'; //Programação do ECF function confCadastrarPadrao_ECF_Daruma(pszCadastrar:string;pszValor:string): Integer; StdCall; External 'DarumaFramework.dll'; 423 DarumaFramework - Help 2.5 function confCadastrar_ECF_Daruma(pszCadastrar:string;pszValor:string;pszSeparador:string): Integer; StdCall; External 'DarumaFramework.dll'; function confHabilitarHorarioVerao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function confDesabilitarHorarioVerao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function confProgramarOperador_ECF_Daruma(pszValor:string): Integer; StdCall; External 'DarumaFramework.dll'; function confProgramarIDLoja_ECF_Daruma(pszValor:string): Integer; StdCall; External 'DarumaFramework.dll'; function confProgramarAvancoPapel_ECF_Daruma(pszSepEntreLinhas:string;pszSepEntreDoc:string;p szLinhasGuilhotina:string;pszGuilhotina:string;pszImpClicheAntecipada:string): Integer; StdCall; External 'DarumaFramework.dll'; function confHabilitarModoPreVenda_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function confDesabilitarModoPreVenda_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Retornos e Status do ECF //Retornos function rRetornarInformacao_ECF_Daruma(pszIndice:string;pszRetornar:string): Integer; StdCall; External 'DarumaFramework.dll'; function rLerAliquotas_ECF_Daruma(cAliquotas:string): Integer; StdCall; External 'DarumaFramework.dll'; function rLerMeiosPagto_ECF_Daruma(pszRelatorios:string): Integer; StdCall; External 'DarumaFramework.dll'; function rLerRG_ECF_Daruma(pszRelatorios:string): Integer; StdCall; External 'DarumaFramework.dll'; function rLerCNF_ECF_Daruma(pszRelatorios:string): Integer; StdCall; External 'DarumaFramework.dll'; function rLerDecimais_ECF_Daruma(pszDecimalQtde:string;pszDecimalValor:string;var piDecimalQtde:Integer; var piDecimalValor:Integer): Integer; StdCall; External 'DarumaFramework.dll'; function rLerDecimaisInt_ECF_Daruma(piDecimalQtde:integer;piDecimalValor:integer): Integer; StdCall; External 'DarumaFramework.dll'; function LerDecimaisStr_ECF_Daruma(pszDecimalQtde:string;pszDecimalValor:string): Integer; StdCall; External 'DarumaFramework.dll'; function rDataHoraImpressora_ECF_Daruma(pszData:string;pszHora:string): Integer; StdCall; External 'DarumaFramework.dll'; function rVerificarImpressoraLigada_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function rVerificarReducaoZ_ECF_Daruma(zPendente:string): Integer; StdCall; External 'DarumaFramework.dll'; function rRetornarDadosReducaoZ_ECF_Daruma(pszDados:string): Integer; StdCall; External 'DarumaFramework.dll'; //Status function rStatusImpressora_ECF_Daruma(pszStatus:string): Integer; StdCall; External 'DarumaFramework.dll'; function rInfoEstentida_ECF_Daruma(var int:integer; char:string): Integer; StdCall; External 'DarumaFramework.dll'; function rInfoEstentida1_ECF_Daruma(cInfoEx:string): Integer; StdCall; External 'DarumaFramework.dll'; function rInfoEstentida2_ECF_Daruma(cInfoEx:string): Integer; StdCall; External 'DarumaFramework.dll'; function rInfoEstentida3_ECF_Daruma(cInfoEx:string): Integer; StdCall; External 'DarumaFramework.dll'; function rInfoEstentida4_ECF_Daruma(cInfoEx:string): Integer; StdCall; External 'DarumaFramework.dll'; function rInfoEstentida5_ECF_Daruma(cInfoEx:string): Integer; StdCall; External 'DarumaFramework.dll'; 424 DarumaFramework function rStatusUltimoCmd_ECF_Daruma(pszErro:string;pszAviso:string;var piErro:integer;var piAviso:integer): Integer; StdCall; External 'DarumaFramework.dll'; function rStatusUltimoCmdInt_ECF_Daruma(var piErro:integer;var piAviso:integer): Integer; StdCall; External 'DarumaFramework.dll'; function rStatusUltimoCmdStr_ECF_Daruma(cErro:string;cAviso:string): Integer; StdCall; External 'DarumaFramework.dll'; //Status Cupom Fiscal function rCFVerificarStatus_ECF_Daruma(pszStatus:string; var piStatus:Integer): Integer; StdCall; External 'DarumaFrameWork.dll'; function rCFVerificarStatusInt_ECF_Daruma(var iStatusCF:Integer): Integer; StdCall; External 'DarumaFrameWork.dll'; function rCFVerificarStatusStr_ECF_Daruma(cStatusCF:string): Integer; StdCall; External 'DarumaFrameWork.dll'; //Saldo a Pagar function rCFSaldoAPagar_ECF_Daruma(pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; //Subtotal Cupom Fiscal function rCFSubTotal_ECF_Daruma(pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; //Gaveta, Autentica e Outros //Gaveta function eAbrirGaveta_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Guilhotina function eAcionarGuilhotina_ECF_Daruma(pszTipoCorte:string): Integer; StdCall; External 'DarumaFramework.dll'; //Cheque function iEjetarCheque_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; //Código de Barras function iImprimirCodigoBarras_ECF_Daruma(pszTipo:string;pszCodigo:string;pszLargura:string;pszAltu ra:string;pszPosicao:string): Integer; StdCall; External 'DarumaFramework.dll'; //Registry //Registry Cupom Fiscal function regCFCupomAdicional_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCFCupomAdicionalDllConfig_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCFCupomAdicionalDllTitulo_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCFCupomMania_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCFFormaPgto_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCFMensagemPromocional_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCFQuantidade_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCFTamanhoMinimoDescricao_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCFTipoDescAcresc_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCFUnidadeMedida_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCFValorDescAcresc_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCF_ECF_Daruma(pszChave:string;pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; //Registry CCD 425 DarumaFramework - Help 2.5 function regCCDDocOrigem_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCCDFormaPgto_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCCDLinhasTEF_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCCDParcelas_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCCDValor_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCCD_ECF_Daruma(pszChave:string;pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; //Registry Cheque function regChequeXLinha1_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regChequeXLinha2_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regChequeXLinha3_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regChequeYLinha1_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regChequeYLinha2_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regChequeYLinha3_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCheque_ECF_Daruma(pszChave:string;pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; //Registry Compatibilidade function regCompatibilidadeStatusFuncao_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regCompatibilidade_ECF_Daruma(pszChave:string;pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; //Registry AtoCotepe function regAtocotepe_ECF_Daruma(pszChave:string;pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; //Registry Sintegra function regSintegra_ECF_Daruma(pszChave:string;pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; //Registry Gerais function regAlterarValor_Daruma(pszPathChave:string;pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; function regRetornaValorChave_DarumaFramework(pszProduto:string;pszChave:string;pszValor:string): Integer; StdCall; External 'DarumaFramework.dll'; function regRetornaValorChave(pszProduto:string;pszChave:string;pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; function regLogin_Daruma(pszPDV:string):Integer; StdCall; External 'DarumaFramework.dll'; function regLogin(pszPDV:string):Integer; StdCall; External 'DarumaFramework.dll'; //Registry ECF function regECFAguardarImpressao_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regECFArquivoLeituraX_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regECFAuditoria_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regECFCaracterSeparador_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regECFMaxFechamentoAutomatico_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; 426 DarumaFramework function regECFReceberAvisoEmArquivo_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regECFReceberErroEmArquivo_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regECFReceberInfoEstendida_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; function regECFReceberInfoEstendidaEmArquivo_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; //Geração Arquivos //Espelho MFD PAF-ECF function rGerarEspelhoMFD_ECF_Daruma(pszTipo:string; pszInicial:string;pszFinal:string): Integer; StdCall; External 'DarumaFramework.dll'; //Relatório PAF-ECF ON-line function rGerarRelatorio_ECF_Daruma(szRelatorio:string; szTipo:string; szInicial:string; szFinal:string): Integer; StdCall; External 'DarumaFramework.dll'; //Relatório PAF-ECF Off-line function rGerarRelatorioOffline_ECF_Daruma(szRelatorio:string; szTipo:string; szInicial:string; szFinal:string; szArquivo_MF:string; szArquivo_MFD:string; szArquivo_INF:string): Integer; StdCall; External 'DarumaFramework.dll'; //Download Memórias function rEfetuarDownloadMFD_ECF_Daruma(pszTipo:string;pszInicial:string;pszFinal:string;pszNomeA rquivo:string): Integer; StdCall; External 'DarumaFramework.dll'; function rEfetuarDownloadMF_ECF_Daruma(pszNomeArquivo:string): Integer; StdCall; External 'DarumaFramework.dll'; function rEfetuarDownloadTDM_ECF_Daruma(pszTipo:string; pszInicial:string;pszFinal:string;pszNomeArquivo:string): Integer; StdCall; External 'DarumaFramework.dll'; //PAF-ECF //RSA - EAD PAF-ECF function rAssinarRSA_ECF_Daruma(pszPathArquivo:string;pszChavePrivada:string;pszAssinaturaGera da:string): Integer; StdCall; External 'DarumaFramework.dll'; //MD5 function rCalcularMD5_ECF_Daruma(pszPathArquivo:string;pszMD5GeradoHex:string;pszMD5Gerado Ascii:string): Integer; StdCall; External 'DarumaFramework.dll'; function rRetornarNumeroSerieCodificado_ECF_Daruma(pszSerialCriptografado:string): Integer; StdCall; External 'DarumaFramework.dll'; function rVerificarNumeroSerieCodificado_ECF_Daruma(pszSerialCriptografado:string): Integer; StdCall; External 'DarumaFramework.dll'; function rRetornarGTCodificado_ECF_Daruma(pszGTCodificado:string): Integer; StdCall; External 'DarumaFramework.dll'; function rVerificarGTCodificado_ECF_Daruma(pszGTCodificado:string): Integer; StdCall; External 'DarumaFramework.dll'; function rCodigoModeloFiscal_ECF_Daruma(szCodModelo:string): Integer; StdCall; External 'DarumaFramework.dll'; //MENU-FISCAL //ESPECIAIS function eAguardarCompactacao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function eBuscarPorta_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function eBuscarPortaVelocidade_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function eEnviarComando_ECF_Daruma(cComando:string;var intiTamanhoComando:integer; var intiType:integer): Integer; StdCall; External 'DarumaFramework.dll'; function eRetornarAviso_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function eRetornarErro_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function eAguardarRecepcao_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; 427 DarumaFramework - Help 2.5 function eAuditar_Daruma(cAuditoria:string;var intiFlag:integer): Integer; StdCall; External 'DarumaFramework.dll'; function eCancelaComunicacao_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; function eDefinirProduto_Daruma(pszProduto:string): Integer; StdCall; External 'DarumaFramework.dll'; function eDefinirModoRegistro_Daruma(intiTipo:integer): Integer; StdCall; External 'DarumaFramework.dll'; function eVerificarVersaoDLL_Daruma(pszRet:string): Integer; StdCall; External 'DarumaFramework.dll'; function eVerificarVersaoDLL(pszRet:string): Integer; StdCall; External 'DarumaFramework.dll'; function eInterpretarErro_ECF_Daruma(iIndice:Integer; pszRetorno:string): Integer; StdCall; External 'DarumaFramework.dll'; function eInterpretarAviso_ECF_Daruma(iIndice:Integer; pszRetorno:string): Integer; StdCall; External 'DarumaFramework.dll'; Documentos Emitidos ECF Suprimento Type topic text here. CANCELAMENTO CUPOM FISCAL Para atender a requisito de fabricação estabelecido em Convênio celebrado pelo CONFAZ, o ECF somente permite o cancelamento do último Cupom Fiscal emitido. iCFCancelar_ECF_Daruma 428 DarumaFramework COMPROVANTE CRÉDITO E DÉBITO Documento fiscal obrigatório que deve ser emitido quando o pagamento do Cupom Fiscal foi efetuado por meio de cartão de crédito ou de débito (TEF Transferência Eletrônica de Fundos). 429 DarumaFramework - Help 2.5 iCCDAbrirSimplificado_ECF_Daruma iCCDImprimirTexto_ECF_Daruma iCCDFechar_ECF_Daruma Cupom Bilhete de Passagem Type topic text here. CUPOM FISCAL 430 DarumaFramework Documento fiscal emitido, qualquer que seja o valor da operação, pelo equipamento Emissor de Cupom Fiscal – ECF, nas vendas à vista, à pessoa física, ou jurídica não-contribuinte do imposto, em que a mercadoria for retirada, ou consumida no próprio estabelecimento pelo comprador. iCFAbrir_ECF_Daruma iCFAbrirPadrao_ECF_Daruma iCFVender_ECF_Daruma.htm iCFVenderResumido_ECF_Daruma iCFVenderSemDesc_ECF_Daruma E_tem_mais.... iCFTotalizarCupom_ECF_Daruma 431 DarumaFramework - Help 2.5 iCFEfetuarPagamento_ECF_Daruma iCFEncerrar_ECF_Daruma E tem mais... durante a venda do item! Durante uma venda de item várias coisas podem ocorrer, tais como: iCFLancarAcrescimoItem_ECF_Daruma Desconto ou Acréscimo no Item do Cupom Fiscal iCFLancarAcrescimoUltimoItem_ECF_Daruma iCFLancarDescontoItem_ECF_Daruma iCFLancarDescontoUltimoItem_ECF_Daruma Cancelamento Total de Item em Cupom Fiscal iCFCancelarItem_ECF_Daruma Cancelamento Parcial de Item em Cupom Fiscal iCFCancelarItemParcial_ECF_Daruma iCFCancelarUltimoItem_ECF_Daruma iCFCancelarUltimoItemParcial_ECF_Daruma iCFCancelarAcrescimoItem_ECF_Daruma iCFCancelarAcrescimoUltimoItem_ECF_Daruma Cancelamento de Desconto ou Acréscimo do Item iCFCancelarDescontoItem_ECF_Daruma iCFCancelarDescontoUltimoItem_ECF_Daruma LEITURA DA MEMÓRIA FISCAL Relatório semelhante à Leitura X, porém apresenta dados sumarizados de um período entre datas e não apenas do dia atual. Normalmente se emite a Leitura da memória Fiscal no início de cada mês, referente ao mês anterior (do primeiro ao último dia), para fins de escrituração e lançamentos na contabilidade. Atualmente os equipamentos ECF já vem de fábrica com recurso para emissão da Leitura da Memória Fiscal automática, assim que o ECF é ligado no início de cada mês. 432 DarumaFramework iMFLer_ECF_Daruma iMFLerSerial_ECF_Daruma LEITURA X 433 DarumaFramework - Help 2.5 Relatório que apresenta todos os valores dos contadores do ECF até o momento da emissão. Pode ser tirado a qualquer momento, salvo quando o equipamento fiscal está com cupom ou qualquer outro documento aberto. iLeituraX_ECF_Daruma 434 DarumaFramework rLeituraX_ECF_Daruma Recebimento Não Fiscal Type topic text here. REDUÇÃO Z Relatório de fechamento do dia fiscal. Neste documento são impressos todos os valores acumulados durante as operações do dia. Todos os valores acumulados serão gravados na Memória Fiscal e o equipamento ficará inoperante até o próximo dia. Para os estabelecimentos que funcionam 24 horas, há uma tolerância até 2 horas da manhã para emissão da ReduçãoZ. 435 DarumaFramework - Help 2.5 iReducaoZ_ECF_Daruma Relatório Gerencial Type topic text here. 436 DarumaFramework Sangria Type topic text here. Gaveta Autentica Outros eAcionarGuilhotina_ECF_Daruma Definição: Este método permite o acionamento da guilhotina, escolhendo o tipo do corte. Sintaxe: eAcionarGuilhotina_ECF_Daruma(char*pszTipoCorte); Parâmetros: Id Variável 1 pszTipoCorte Tipo Tam. A 1 Descrição 0 = Corte Total 1 = Corte Parcial Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function iAcionarGuilhotina_ECF_Daruma(pszTipoCorte:string): Integer; StdCall; External 'DarumaFramework.dll'; 437 DarumaFramework - Help 2.5 Int_Retorno:= iAcionarGuilhotina_ECF_Daruma('1); . eAbrirGaveta_ECF_Daruma Definição: Este método abre a gaveta de dinheiro conectada ao ECF. Sintaxe: eAbrirGaveta_ECF_Daruma(void); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: 438 DarumaFramework function eAbrirGaveta_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= eAbrirGaveta_ECF_Daruma(); PAF ECF rVerificarNumeroSerieCodificado_E CF_Daruma Definição: Este método recebe o número de série (Número de Fabricação ECF) codificado e informa se é válido ou não. Sintaxe: rVerificarNumeroSerieCodificado_ECF_Daruma(char*pszValor); Parâmetros: Id Variável 1 pszValor Tipo Tam. Descrição A 60 Número de Série codificado. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. 439 DarumaFramework - Help 2.5 Exemplo em Delphi: function rVerificarNumeroSerieCodificado_ECF_Daruma(pszSerialCriptografado:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := rVerificarNumeroSerieCodificado_ECF_Daruma(Str_NS_Codificado); rAssinarRSA_ECF_Daruma Definição: Este método lê o arquivo informado e retorna a Assinatura Digital, sem a necessidade da Chave Privada estar carregada na impressora. Sintaxe: rAssinarRSA_ECF_Daruma(char *pszPathArquivo, char *pszChavePrivada, char *pszAssinaturaGerada); Parâmetros: IdVariável TipoTam.Descrição Caminho e arquivo para gerar 1 pszPathArquivo A 100 Assinatura(EAD). 2 pszChavePrivada A 20 Caminho da Chave Privada. 3 pszAssinaturaGerada A 300 Retorna Assinatura Digital (EAD). Saídas: EAD Assinatura Digital 440 DarumaFramework Ex:EAD4D714CF40A31A2AE3A26A5295082089EC554B51A4B307F044A C84BEC9A34223A11A3B64BE4DB4DE7DDBFF06D3394499 A6A55C74D0AB24343589FCDE9CB0AC989AE451B2C15AFF7689368A16499C67D C9076A69DACCA38A73B4EDCA3ACA15AD06800EE74CCE B36864C408C0CAB46593774F1979A8345B4327A55C19D1C4D4EEBD Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rAssinarRSA_ECF_Daruma(pszPathArquivo:string;pszChavePrivada:string;pszAssinatura Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := rAssinarRSA_ECF_Daruma(Str_CaminhoArqAssinar,Str_CaminhoChavePublica,Str_EAD rCalcularMD5_ECF_Daruma Definição: Este método lê o arquivo informado e retorna o MD5 em ASCII e HEXA. Sintaxe: rCalcularMD5_ECF_Daruma(char *pszPathArquivo, char *pszMD5GeradoHex, char *pszMD5GeradoAscii); 441 DarumaFramework - Help 2.5 Parâmetros: IdVariável TipoTam.Descrição 1 pszPathArquivo A 100 Caminho e arquivo para gerar o MD5. 2 pszMD5GeradoHex A 20 Retorna MD5 em Hexa. 3 pszMD5GeradoAscii A 20 Retorna MD5 em Ascii. Saídas: MD5 em Hexa e Ascii Ex: MD5 Hexa: 336C536CE8E493BC5 e MD5 Ascii:3lSlè䓼Z‡ñF Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rCalcularMD5_ECF_Daruma(pszPathArquivo:string;pszMD5GeradoHex:string;pszMD5Ge Integer; StdCall; External 'DarumaFramework.dll'; Str_MD5Hexa:= StringOFChar(#0,20); Str_MD5Ascii:= StringOFChar(#0,20); Str_CaminhoArq:= Edt_CaminhoArqMD5.text; Int_Retorno := rCalcularMD5_ECF_Daruma(Str_CaminhoArq,Str_MD5Hexa,Str_MD5Asc rCodigoModeloFiscal_ECF_Daruma 442 DarumaFramework Definição: Este método retorna o código de identificação do ECF, conforme a tabela nacional disponibilizada pela SEFAZ. Sintaxe: rCodigoModeloFiscal_ECF_Daruma(char*pszValor); Parâmetros: Id Variável 1 pszValor Tipo Tam. Descrição A 6 Retorna código modelo fiscal. Saídas: Código modelo fiscal. Ex:081201 corresponde a impressora FS700H Vs. 010100. Para obter todos os códigos correspondentes a impressora Daruma consulte a Tabela Nacional de Identificação de ECF. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rCodigoModeloFiscal_ECF_Daruma(pszValor:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_CodigoModeloFiscall,6); Int_Retorno := rCodigoModeloFiscal_ECF_Daruma(Str_CodigoModeloFiscal); 443 DarumaFramework - Help 2.5 rGerarEspelhoMFD_ECF_Daruma Definição: Este método gera um arquivo com o nome de 'Espelho_MFD.txt' no path que estiver configurado no registry com a 2ª(segunda) via dos documentos emitidos no ecf que estão no 'range' informado COO inicial até o COO final ou Data Inicial até a Data Final. Sintaxe: rGerarEspelhoMFD_ECF_Daruma(char*pszTipo,char*pszInicial,char*pszFinal); Parâmetros: Id Variável 1 pszTipo A 1 2 pszInicial A 6 3 pszFinal A 6 Tipo Tam. Descrição 1 = DATA 2 = COO 3 = DATAM DDMMAA ou 00ZZZZ (início do período) DDMMAA ou 00ZZZZ (final do período) Saídas: Arquivo Espelho_MFD.txt Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. 444 DarumaFramework Exemplo em Delphi: function rGerarEspelhoMFD_ECF_Daruma(pszTipo:string; pszInicial:string;pszFinal:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= rGerarEspelhoMFD_ECF_Daruma('1','010111','310111'); rGerarRelatorio_ECF_Daruma Definição: Com esse método é possível atender a diversas portarias que exigem geração de relatórios a partir da MFD do ECF. Será possível atender as exigências do PAF-ECF(Arq.MFD, Arq.MF, Sintegra e SPED) e Notas Fiscais Estaduais (Nota Fiscal Paulista, Nota Fiscal Legal e outras). Sintaxe: rGerarRelatorio_ECF_Daruma(char*szRelatorio,char*szTipo,char*szInicial,char*szFi nal); Parâmetros: Id Variável 1 szRelatorio Descrição Indica o(s) relatório(s) a ser(em) gerado(s) : MF, MFD, TDM, NFP, 30 NFPTDM, SINTEGRA, SPED, Tipo Tam. A [EAD]+Path da chave privada Para gerar mais de um relatório utilize o separador "+". 445 DarumaFramework - Help 2.5 2 szTipo A 3 pszInicial A 8 4 pszFinal A 8 Indica o tipo do parametro se por DATAM(data movimento), COO ou CRZ DDMMAAAA ou 00ZZZZ (início do período) DDMMAAAA ou 00ZZZZ (final do período) Observações: - Os relatórios SPED e SINTEGRA só são gerados pelo tipo de parametro DATAM(data movimento) ; - O relatório "[EAD]+Path da chave privada" faz a assinatura dos relatórios MF,MFD,TDM,NFP e NFPTDM. Ele deve ser colocado sempre no final dos relatórios selecionados. Saídas: Arquivo contendo o relatório solicitado; Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rGerarRelatorio_ECF_Daruma(szRelatorio:string; szTipo:string; szInicial:string; szFinal:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= rGerarRelatorio_ECF_Daruma(sRelatorio,sTipo,sDataIni,sDataFim); 446 DarumaFramework rRetornarGTCodificado_ECF_Darum a Definição: Este método retorna o Grande Total da Impressora codificado. Sintaxe: rRetornarGTCodificado_ECF_Daruma(char*pszValor); Parâmetros: Id Variável 1 pszValor Tipo Tam. Descrição A 60 Retorna GT codificado. Saídas: Grande Total Codificado. Ex:634D2A1C5A02377A6F6FBC4FDA325BB53F1335, para checar se o Grande Total é válido utilize o método rVerificarGTCodificado_ECF_Daruma. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rRetornarGTCodificado_ECF_Daruma(pszGTCriptografado:string): Integer; StdCall; External 'DarumaFramework.dll'; 447 DarumaFramework - Help 2.5 SetLength (Str_GT_Codificado,60); Int_Retorno := rRetornarGTCodificado_ECF_Daruma(Str_GT_Codificado); rRetornarNumeroSerieCodificado_E CF_Daruma Definição: Este método retorna o número de série (Número de Fabricação ECF) codificado. Sintaxe: rRetornarNumeroSerieCodificado_ECF_Daruma(char*pszValor); Parâmetros: Id Variável 1 pszValor Tipo Tam. Descrição A 60 Retorna Número de Série codificado. Saídas: Número de Série Codificado. Ex:5CA961553D6590DDB15F5D25EA7CE47238EA403D4234A7B22704A 9043BEF, para checar se o número de série é válido utilize o método rVerificarNumeroSerieCodificado_ECF_Daruma. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. 448 DarumaFramework Requisitos: Nenhum. Exemplo em Delphi: function rRetornarNumeroSerieCodificado_ECF_Daruma(pszSerialCriptografado:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_NS_Codificado,60); Int_Retorno := rRetornarNumeroSerieCodificado_ECF_Daruma(Str_NS_Codificado); rVerificarGTCodificado_ECF_Darum a Definição: Este método recebe o Grande Total da Impressora codificado e informa se é válido ou não. Sintaxe: rVerificarGTCodificado_ECF_Daruma(char*pszValor); Parâmetros: Id Variável 1 pszValor Tipo Tam. Descrição A 60 GT codificado. Saídas: Nenhum. 449 DarumaFramework - Help 2.5 Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rVerificarGTCodificado_ECF_Daruma(pszGTCriptografado:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := rVerificarGTCodificado_ECF_Daruma(Str_GT_Codificado); Registry regSintegra_ECF_Daruma Definição: Este método é específico para configurar as chaves do registry correspondente ao Síntegra Sintaxe: regSintegra_ECF_Daruma(char *pszChave, char *pszParametro); 450 DarumaFramework Parâmetros: Id 1 2 Tipo Tam. Descrição Variável 20 Nome da chave a ser modificada. pszPathChave A A 100 Valor da chave a ser modificada. pszValor Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function regSintegra_ECF_Daruma(pszChave:string;pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := regSintegra_ECF_Daruma(Str_Nome_do_Produto_Chave, Str_Chave_Valor); . eDefinirModoRegistro_Daruma Definição: 451 DarumaFramework - Help 2.5 Este método permite configurar o modo no qual dll irá utilizar para criação do Registry e/ou XML. E para isso você tem 3 opções: 0 = Registry LocalMachine e XML, 1 = Registry CurrentUser e XML, 2 = XML somente. Sintaxe: eDefinirModoRegistro(char*pszTipoRegistro); Parâmetros: Id Variável 1 pszTipoRegistro Tipo Tam. A 1 Descrição Tipo de Registro: 0 = Registry LocalMachine e XML, 1 = Registry CurrentUser e XML, 2 = XML somente. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Dicas: Esta configuração permite que você desenvolvedor escolha de qual forma irá configurar a DLL utilizando o Registry ou XML. Sabemos que apartir do Windows Vista existe um Controle de Conta de Usuário (User Account Control, UAC), que tem como missão limitar o usuário. E com isso o registry da DLL passou a ser criado no CurrentUser e não mas no LocalMachine. Mas agora você desenvolvedor pode escolher onde será salvo as configurações da DLL. 452 DarumaFramework Exemplo em Delphi: function eDefinirModoRegistro_Daruma(szTipoRegistro: String): Integer; StdCall; External 'DarumaFrameWork.dll' Int_Retorno := eDefinirModoRegistro_Daruma('2'); eDefinirProduto_Daruma Definição: Este método permite identificar em qual produto a DarumaFramework será capaz de trabalhar, alternando assim a capacidade da DarumaFramework.dll, localizar com precisão o produto a ser utilizado. Sintaxe: eDefinirProduto(char*pszProduto); Parâmetros: Id Variável 1 pszProduto Tipo Tam. A 20 Descrição Nome Produto: DUAL- FISCAL - MODEM - TA2000 Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. 453 DarumaFramework - Help 2.5 Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function eDefinirProduto_Daruma(szProduto: String): Integer; StdCall; External 'DarumaFrameWork.dll' Int_Retorno := eDefinirProduto_Daruma('FISCAL'); regAlterarValor_Daruma Definição: Este método permite alteração das chaves do registry, ou seja, dispensando a utilização de um método específico. Sintaxe: regAlterarValor_Daruma(char*pszPathChave, char *pszValor); Parâmetros: Id 1 2 Saídas: 454 Tipo Tam. Descrição Variável 100 Path e chave a ser modificados. pszPathChave A A 100 Valor da chave a ser modificada. pszValor DarumaFramework Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function regAlterarValor_Daruma(pszPathChave:string,pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:=regAlterarValor_Daruma('ECF\Auditoria','1'); regAtocotepe_ECF_Daruma Definição: Este método é específico para configurar as chaves do registry correspondente ao Atocotepe. Sintaxe: regAtocotepe_ECF_Daruma(char *pszChave, char *pszParametro); Parâmetros: 455 DarumaFramework - Help 2.5 Id 1 2 Tipo Tam. Descrição Variável 20 Nome da chave a ser modificada. pszPathChave A A 100 Valor da chave a ser modificada. pszValor Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function regAtocotepe_ECF_Daruma(pszChave:string;pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := regAtocotep_ECF_Daruma(Str_Nome_do_Produto_Chave, Str_Chave_Valor); . regCFCupomAdicionalDllConfig_EC F_Daruma 456 DarumaFramework Definição: Este método permite configurar a chave no registry e/ou Xml indicando os dados que serão impressos no cupom adicional, após a emissão de cada cupom fiscal. Sintaxe: regCFCupomAdicionalDllConfig_ECF_Daruma(char *pszParametro); Parâmetros: Id Informação a ser impressa no Cupom Adicional 1 Tipo Tam. Data e Hora da Emissão A 1 2 CCF - Contador Cupom Fiscal A 1 3 COO Contador Ordem Operação A 1 4 Quantidade Itens Vendidos A 1 5 Quantidade de Itens Cancelados A 1 6 Tempo de Impressão A 1 7 Valor Total do Cupom A 1 8 Alíquotas usadas, exceto Isento, Não Tributado e Substituição Tributária A 1 9 Forma de Pagamento x Valor A 1 457 DarumaFramework - Help 2.5 10 Reservado para uso futuro A 1 11 Data e Hora Embarque A 1 12 Plataforma A 1 13 Poltrona A 1 14 Cidade de Origem A 1 15 Cidade de Destino A 1 16 Percurso A 1 17 RG do Passageiro A 1 18 Aciona Guilhotina entre o Cupom Fiscal e Cupom Adicional A 1 19 Imprime código de Barras no cupom adicional, para isso utilize a função A 1 20 Imprime um Campo Livre, caso seja previamente executado a função A 1 21 Imprime a Identificação do cliente se o valor for 2(dois) A 1 Saídas: 458 DarumaFramework Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function regCFCupomAdicionalDllConfig_ECF_Daruma(pszParametro:string):Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := regCFCupomAdicionalDllTitulo_ECF_Daruma(Str_Chave_Valor); regRetornaValorChave_Daruma Definição: Este método retorna o valor de uma chave do registry/xml. Sintaxe: regRetornaValorChave_Daruma(char *pszProduto, char *pszChave, char *pszValor); Parâmetros: Id Variável Tipo Tam. Descrição 1 pszProduto A 30 Nome do produto. 459 DarumaFramework - Help 2.5 2 pszChave A 3 pszValor A 50 Nome da chave. String por referência com 100 espaços alocados para 100 que possa retornar na variável o valor da Chave que você deseja. Saídas: Obtendo o valor do produto ECF chave Auditoria. Ex:regRetornaValorChave_Daruma('ECF','Auditoria','1'); Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function regRetornaValorChave_Daruma(pszProduto:string;pszChave:string;pszValor:string):Integ StdCall; External 'DarumaFramework.dll'; Str_Valor := StringOFChar(#0,100); Int_Retorno := regRetornaValorChave_DarumaFramework(Str_Produto, Str_Chave, Str_Valor); Relatorio Gerencial iRGImprimirTexto_ECF_Daruma Definição: Este método imprime texto do Relatório Gerencial. 460 DarumaFramework Sintaxe: iRGImprimirTexto_ECF_Daruma(char*pszTexto); Parâmetros: Id Variável 1 pszTexto Tipo Tam. Descrição A 619 Texto do Relatório Gerencial. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Observação: O comando pode ser repetido quantas vezes forem necessárias, até o limite de 2 minutos de impressão . Exemplo em Delphi: function iRGImprimirTexto_ECF_Daruma(pszTexto:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iRGImprimirTexto_ECF_Daruma(Str_Texto_Relatorio); iRGAbrir_ECF_Daruma 461 DarumaFramework - Help 2.5 Definição: Este método abre um Relatório Gerencial. Sintaxe: iRGAbrir_ECF_Daruma(char*pszNomeRG); Parâmetros: Id Variável 1 pszNomeRG Tipo Tam. Descrição A 15 Nome do Relatório Gerencial.. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Relatório Gerencial deve estar pré cadastrado no ECF. Exemplo em Delphi: function iRGAbrir_ECF_Daruma(pszNomeRG:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iRGAbrir_ECF_Daruma('Gerencial X'); iRGAbrirIndice_ECF_Daruma 462 DarumaFramework Definição: Este método abre um Relatório Gerencial. Sintaxe: iRGAbrirIndice_ECF_Daruma(intiIndiceRG); Parâmetros: Id Variável 1 pszIndiceRG Tipo Tam. Descrição N 2 Indice do Relatório Gerencial. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Relatório Gerencial deve estar pré cadastrado no ECF. Exemplo em Delphi: function iRGAbrirIndice_ECF_Daruma(iIndiceRG:Integer): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iRGAbrir_ECF_Daruma('1'); 463 DarumaFramework - Help 2.5 iRGAbrir_ECF_Daruma Definição: Este método abre um Relatório Gerencial X. Sintaxe: iRGAbrir_ECF_Daruma(void); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Relatório Gerencial deve estar pré cadastrado no ECF. Exemplo em Delphi: function iRGAbrirPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iRGAbrir_ECF_Daruma(); iRGFechar_ECF_Daruma 464 DarumaFramework Definição: Este método finaliza o Relatório Gerencial. Sintaxe: iRGFechar_ECF_Daruma(void); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function iRGFechar_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iRGFechar_ECF_Daruma(); . Relatorios Fiscais 465 DarumaFramework - Help 2.5 iLeituraX_ECF_Daruma Definição: Este método imprimi uma Leitura X. Sintaxe: iLeituraX_ECF_Daruma(void); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function iLeituraX_ECF_Daruma: Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iLeituraX_ECF_Daruma(); 466 DarumaFramework iMFLer_ECF_Daruma Definição: Este método imprimi uma Leitura da Memória Fiscal, por intevalo de Data ou CRZ. Sintaxe: iMFLer_ECF_Daruma(char*pszInicial,char*pszFinal); Parâmetros: Id 1 Variável pszInicial 2 pszFinal Tipo Tam. Descrição A 6 DDMMAA ou 00ZZZZ (início do período) A 6 DDMMAA ou 00ZZZZ (final do período) Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Dicas: A impressora permite a leitura da memória fiscal completa ou simplificada. Antes de enviar o comando você deve realizar a configuração da chave LMFCompleta utilizando o método regAlterarValor_Daruma indicando 1 - Completa ou 0 - Simplificada. 467 DarumaFramework - Help 2.5 Exemplo em Delphi: function iMFLer_ECF_Daruma: Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iMFLer_ECF_Daruma('010111','310111'); iMFLerSerial_ECF_Daruma Definição: Este método gera uma Leitura da Memória Fiscal em arquivo por intevalo de Data ou CRZ. Sintaxe: iMFLerSerial_ECF_Daruma(char*pszInicial,char*pszFinal); Parâmetros: Id 1 Variável pszInicial 2 pszFinal Tipo Tam. Descrição A 6 DDMMAA ou 00ZZZZ (início do período) A 6 DDMMAA ou 00ZZZZ (final do período) Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. 468 DarumaFramework Dicas: A impressora permite a leitura da memória fiscal completa ou simplificada. Antes de enviar o comando você deve realizar a configuração da chave LMFCompleta utilizando o método regAlterarValor_Daruma indicando 1 - Completa ou 0 - Simplificada. Exemplo em Delphi: function iMFLer_ECF_Daruma: Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iMFLer_ECF_Daruma('010111','310111'); iReducaoZ_ECF_Daruma Definição: Este método emite a ReduçãoZ e encerra a jornada fiscal. Sintaxe: iReducaoZ_ECF_Daruma(char*,char*) Parâmetros: Id 1 2 Variável pszData pszHora Tipo Tam. Descrição A 6 Ddmmaa (Data atual) A 6 HHmmss (Hora atual) Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 469 DarumaFramework - Help 2.5 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function iReducaoZ_ECF_Daruma(pszData:string; pszHora:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iReducaoZ_ECF_Daruma('ddmmaa',hhmmss'); iSangria_ECF_Daruma Definição: Este método usado para retirar uma quantia de dinheiro do Caixa, e informando uma mensagem com texto livre. Sintaxe: iSangria_ECF_Daruma(char*pszValor,char*pszMensagem); Parâmetros: Id 1 470 Variável pszValor Tipo Tam. Descrição A 11 Valor da sangria. DarumaFramework 2 pszMensagem A 619 Texto livre. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function iSangria_ECF_Daruma(pszValor:string; pszMensagem:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iSangria_ECF_Daruma(Str_Valor, Str_Texto_Relatorio); iSangriaPadrao_ECF_Daruma Definição: Este método usado para retirar uma quantia de dinheiro do Caixa. Sintaxe: iSangriaPadrao_ECF_Daruma(); Parâmetros: Nenhum. 471 DarumaFramework - Help 2.5 Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function iSangria_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iSangriaPadrao_ECF_Daruma(); iSuprimento_ECF_Daruma Definição: Este método usado para dar entrada de uma quantia de dinheiro do Caixa, e informando uma mensagem com texto livre. Sintaxe: iSuprimento_ECF_Daruma(char*pszValor,char*pszMensagem); Parâmetros: Id 472 Variável Tipo Tam. Descrição DarumaFramework 1 2 A pszValor pszMensagem A 11 Valor do suprimento. 619 Texto livre. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function iSuprimento_ECF_Daruma(pszValor:string; pszMensagem:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iSuprimento_ECF_Daruma(Str_Valor, Str_Texto_Relatorio); iSuprimentoPadrao_ECF_Daruma Definição: Este método usado para dar entrada de uma quantia de dinheiro do Caixa. Sintaxe: iSuprimentoPadrao_ECF_Daruma(); Parâmetros: 473 DarumaFramework - Help 2.5 Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function iSuprimentoPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iSuprimentoPadrao_ECF_Daruma(); rLeituraX_ECF_Daruma Definição: Este método gera Leitura X em arquivo. Sintaxe: rLeituraX_ECF_Daruma(void); Parâmetros: Nenhum. 474 DarumaFramework Saídas: Arquivo Leitura.ser, no diretório especificado no XML e Registry. Para verificar o caminho que foi gerado o arquivo utilize o método. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rLeituraX_ECF_Daruma: Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= rLeituraX_ECF_Daruma(); Tabelas Auxiliares Tabela Nacional de Códigos de Identificação de ECF Na tabela abaixo você poder consultar o Código Nacional de Identificação do ECF citado no item 6-a do Requisito XXV que deve ser utilizado para atribuir o nome ao arquivo de “Movimento por ECF”. Método para obter o código rCodigoModeloFiscal_ECF_Daruma. 475 DarumaFramework - Help 2.5 Identificação Marca Modelo Versão 08 02 01 08 02 02 08 02 03 08 02 04 08 02 05 08 08 01 08 08 02 08 08 03 08 08 04 08 08 05 08 09 01 08 10 01 08 11 01 08 12 01 08 13 01 08 14 01 08 15 01 Tipo ECF ECFIF ECFIF ECFIF ECFIF ECFIF ECFIF ECFIF ECFIF ECFIF ECFIF ECFIF ECFIF ECFIF ECFIF ECFIF ECFIF ECFIF Marca ECF Daruma Daruma Daruma Daruma Daruma Daruma Daruma Daruma Daruma Daruma Daruma Daruma Daruma Daruma Daruma Daruma Daruma Modelo ECF FS2100T FS2100T FS2100T FS2100T FS2100T FS600 FS600 FS600 FS600 FS600 FS600 USB FS700L FS700M FS700H MACH 1 MACH 2 MACH 3 Versão SB do ECF 01.00.00 01.02.00 01.03.00 01.04.00 01.05.00 01.01.00 01.02.00 01.03.00 01.04.00 01.05.00 01.00.00 01.01.00 01.01.00 01.01.00 01.01.00 01.01.00 01.01.00 Tabela Retornos dos Métodos A tabela abaixo lista os valores dos retornos das funções e seus respectivos significados. Retorno 0 1 -1 -2 -3 -4 476 Descrição Erro durante a execução. Operação realizada com sucesso. Erro do Método. Parâmetro incorreto. Alíquota (Situação tributária) não programada. Chave do Registry não encontrada. DarumaFramework -5 -6 -7 -8 -9 -10 -12 -24 -25 -27 -28 -40 -50 -51 -52 -53 -60 -90 -99 -101 -102 Erro ao Abrir a porta de Comunicação. Impressora Desligada. Erro no Número do Banco. Erro ao Gravar as informações no arquivo de Status ou de Retorno de Info. Erro ao Fechar a porta de Comunicação. O ECF não tem a forma de pagamento e não permite cadastrar esta forma. A função executou o comando porém o ECF sinalizou Erro, chame a rStatusUltimoCmdInt_ECF_Daruma para identificar o Erro. Forma de Pagamento não Programada. Totalizador nao ECF Não Vinculado não Programado. Foi Detectado Erro ou Warning na Impressora. Time-Out. Tag XML Inválida. Problemas ao Criar Chave no Registry. Erro ao Gravar LOG. Erro ao abrir arquivo. Fim de arquivo. Erro na tag de formatação DHTML. Erro Configurar a Porta de Comunicação. Parâmetro inválido ou ponteiro nulo de parâmetro. Erro ao LER ou ESCREVER arquivo Erro ao LER ou ESCREVER arquivo Tabela Códigos de Aviso A tabela abaixo lista os possíveis código de aviso e seus respectivos significados. Cód. Aviso 0 1 2 4 40 Descrição Aviso Sem Aviso. Papel acabando Tampa aberta. Bateria fraca. Compactando. Tabela Códigos de Erro A tabela abaixo lista os possíveis código de aviso e seus respectivos significados. 477 DarumaFramework - Help 2.5 Cód. Erro 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 478 Descrição Erro ECF com falha mecânica MF não conectada MFD não conectada MFD esgotada Erro na comunicação com a MF Erro na comunicação com a MFD MF não inicializada MFD não inicializada MFD já inicializada MFD foi substituída MFD já cadastrada Erro na inicialização da MFD Faltam parâmetros de inicialização na MF Comando não suportado Superaquecimento da cabeça de impressão Perda de dados da MT Operação habilitada apenas em MIT Operação habilitada apenas em modo fiscal Data inexistente Data inferior ao do último documento Intervalo inconsistente Não existem dados Clichê de formato inválido Erro no verificador da comunicação Senha incorreta Número de decimais para quantidade inválido Número de decimais para valor unitário inválido Tipo de impressão de FD inválido Caracter não estampável Caracter não estampável ou em branco Caracteres não podem ser repetidos Limite de itens atingido Todos os totalizadores fiscais já estão programados Totalizador fiscal já programado Todos os totalizadores não fiscais já estão programados Totalizador não fiscal já programado Todos os relatórios gerenciais já estão programados Relatório gerencial já programado Meio de pagamento já programado Índice inválido Índice do meio de pagamento inválido Erro gravando número de decimais na MF Erro gravando moeda na MF Erro gravando símbolos de decodificação do GT na MF Erro gravando número de fabricação da MFD na MF DarumaFramework 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 Erro gravando usuário na MF Erro gravando GT do usuário anterior na MF Erro gravando registro de marcação na MF Erro gravando CRO na MF Erro gravando impressão de FD na MF Campo em branco ou zero não permitido Campo reservado a gravação da moeda na MF esgotado Campo reservado a gravação da tabela de GT na MF esgotado Campo reservado a gravação do NS da MFD na MF esgotado Campo reservado a gravação de usuário na MF esgotado CNPJ inválido CRZ e CRO em zero Intervalo invertido Utilize apenas 0 ou 1 Configuração permitida apenas imediatamente a RZ Símbolo gráfico inválido Falta pelo menos 1 campo no nome da moeda para cheque Código supera o valor 255 Utilize valores entre 25 e 80 Utilize valores entre 1 e 15 Utilize valores entre 0 e 7250 Data informada não coincide com a data do ECF Deve ajustar o relógio - permitido apenas em MIT Erro ao ajustar o relógio Capacidade da MF esgotada Versão do SB gravado na MF incorreta Fim do papel Nenhum usuário programado Utilize apenas dígitos numéricos Campo não pode estar em zero Campo não pode estar em branco Valor da operação não pode ser zero CF aberto CNF aberto CCD aberto RG aberto CF não aberto CNF não aberto CCD não aberto RG não aberto CCD ou RG não aberto Documento já totalizado RZ do movimento anterior pendente Já emitiu RZ de hoje Totalizador sem alíquota programada Campo de código ausente 479 DarumaFramework - Help 2.5 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 480 Campo de descrição ausente VU ou quantidade em zero Item ainda não vendido Desconto ou acréscimo não pode ser zero Item já possui desconto ou acréscimo Ítem cancelado Operação inibida por configuração Opção não suportada Desconto ou acréscimo supera valor bruto Desconto ou acréscimo final de valor zero Valor bruto zero Overflow no valor do item Overflou no valor do desconto ou acréscimo Overflow na capacidade do documento Overflow na capacidade do totalizador Item não possui desconto Item já possui desconto Quantidade possui mais de 2 decimais Valor unitário possui mais de 2 decimais Quantidade a cancelar deve ser inferior a total Campo de descrição deste item não mais presente na MT Subtotal não possui desconto ou acréscimo Não em fase de totalização Não em fase de venda ou totalização Mais de 1 desconto ou acréscimo não permitido Valor do desconto ou acréscimo supera subtotal Meio de pagamento não programado Não em fase de pagamento ou totalização Não em fase de finalização de documento Já emitiu mais CCDs que poderia estornar Último documento não é cancelável Estorne CCDs Último documento não foi CF Último documento não foi CNF Não pode cancelar Pagamento não mais na MT Já emitiu CCD deste pagamento RG não programado CNF não programado Cópia não disponível Já emitiu segunda via Já emitiu reimpressão Informações sobre o pagamento não disponíveis Já emitiu todas as parcelas Parcelamento somente na sequência CCD não encontrado Não pode utilizar SANGRIA ou SUPRIMENTO Pagamento não admite CCD DarumaFramework 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 184 185 186 Relógio inoperante Usuário sem CNPJ Usuário sem IM Não se passou 1 hora após o fechamento do último documento ECF OFF LINE Documento em emissão COO não coincide Erro na autenticação Erro na impressão de cheque Data não pertence ao século XXI Usuário já programado Descrição do pagamento já utilizada Descrição do totalizador já utilizada Descrição do RG já utilizada Já tem desconto após acréscimo ( ou vice versa ) Já programou 15 totalizadores para ICMS Já programou 15 totalizadores para ISS MFD com problemas Razão social excede 48 caracteres Nome fantasia excede 48 caracteres Endereço excede 120 caracteres Identificação do programa aplicativo ausente Valor de desconto supera valor acumulado em totalizador Número de parcelas no pagamento não pode exceder 24 MFD não cadastrada Excedeu limite de impressão de FD ( capacidade na MF esgotada ) Efetivado é igual ao estornado Símbolo da moeda já programado UF inválida UF já programada Erro gravando UF Leitor CMC-7 não instalado Erro de leitura do código CMC-7 Autenticação não permitida Operação somente com mecanismo matricial de impacto Coordenadas de cheque inválidas Impressão do verso do cheque somente após a impressão da frente Indice do bitmap inválido Bitmap de tamanho inválido Última RZ a mais de 30 dias. Comando de RZ deve informar data correta Parâmetro só pode ser “A” ou “T” Falta unidade doproduto Velocidade não permitida 481 DarumaFramework - Help 2.5 Código repetido Fora dos limites Já identificou o consumidor Número de Fabricação incorreto Informação disponível não corresponde a MF informada MF já em uso Falha não recuperável durante a operação Opção inválida Parâmetros inválidos Caracter HEXA inválido Valor insuficiente de pagamento IE inválido IM inválido CFBP Inibido Modalidade de Transporte inválida Categoria de Transporte inválida UF incompatível Comando disponível apenas em CF genérico Chave não carregada Chave inválida Erro na decodificação Erro na codificação 187 188 189 190 191 192 193 194 195 196 197 198 199 301 302 303 304 305 400 401 402 403 Tabela Consulta a Informações do ECF A tabela abaixo lista mais de 170 informações que podem ser obtidas do ECF utilizando o método rRetornarInformacao_ECF_Daruma. Cod.Info 1 482 Tamanho Tipo 18 N 2 18 N 3 28 x 13 N 4 3 x 13 N 5 3 x 13 N 6 20 x 13 N 7 13 N 8 13 N 9 19 x 13 N <Informação> GT GT no início do dia T01 a T16 + F1 + F2 + I1 + I2 + N1 + N2 + FS1 + FS2 + IS1 + IS2 + NS1 + NS2 Totalizadores de Descontos + Acréscimos + Cancelamentos ICMS Totalizadores de Descontos + Acréscimos + Cancelamentos ISS Totalizador de Meios de Pagamento 01 a 20 Totalizador de Troco Totalizador Não-Fiscal de Sangria Totalizadores Não-Fiscais 02 a 20 DarumaFramework 10 3 x 13 N 11 13 N 12 13 N 13 13 N 14 13 N 15 13 N 16 13 N 17 13 N 18 13 N 19 13 N 20 3+4+4 N 21 11 x 6 N 22 6x4 N 23 3 N 24 4 N 25 4 N 26 6 N 27 6 N 28 6 N 29 6 N 30 6 N 31 6 N 32 6 N 33 6 N 34 6 N 35 6 N 36 6 N 37 4 N 38 4 N 39 4 N 40 4 N 41 4 N 42 4 N 43 20 x 4 N 44 20 x 4 N 45 4 N 46 1 N 47 12 N 48 12 N 49 12 N Totalizadores de Descontos + Acréscimos + Cancelamentos Não Fiscais Totalizador de Descontos ICMS Totalizador de Acréscimos ICMS Totalizador de Cancelamentos ICMS Totalizador de Descontos ISS Totalizador de Acréscimos ISS Totalizador de Cancelamentos ISS Totalizador de Descontos NF Totalizador de Acréscimos NF Totalizador de Cancelamentos NF CRO + CRZ + CRZ Restantes COO + COO Inicial(*) + GNF + GNF Inicial(*) + CCF + CCF Inicial(*) + CVC + GRG + GRG Inicial(*) + CFD + CBP NFC + CMV + CFC + CNC + CBC + NCN CRO CRZ CRZ Restantes COO COO Inicial (*) GNF GNF Inicial (*) CCF CCF Inicial (*) CVC GRG GRG Inicial (*) CFD CBP NFC CMV CFC CNC CBC NCN CON CER CDC Tipo do documento cancelável (0 =nenhum, 1 =CF, 2 = CNF) Subtotal do documento Soma dos pagamentos aplicados ao documento atual Saldo restante a pagar 483 DarumaFramework - Help 2.5 484 50 6 N 51 6 N 52 6 N 53 4 N 54 4 N 55 6 N 56 1 N 57 1 N 58 3 N 59 11 N 60 11 N 61 11 N 62 11 N 63 12 N 64 1 N 65 12 N 66 14 N 67 6 N 68 6 N 69 8 N 70 8 N 71 8 N 72 14 N 73 14 N 74 14 N 75 14 N COO do Documento cancelável CCF do Documento cancelável GNF do Documento cancelável Número de CCDs emitidos em relação ao documento cancelável Número de CCDs estornados em relação do documento cancelável Número de itens cancelados no movimento atual Tipo do documento atual 0 = nenhum documento 1= CF 2=CNF 3=CCD 4=RG Estado do CF / CNF 0 = fechado 1 = CF em registro de item 2 = CF em totalização 3 = CF em pagamento 4 = CF em finalização 5 = CNF em registro de item 6 = CNF em totalização 7 = CNF em pagamento 8 = CNF em finalização Número do último item registrado (CF ou CNF) Valor bruto do último item registrado Valor do desconto do último item registrado Valor do acréscimo do último item registrado Valor líquido do último item registrado Troco do documento atual Número de autenticações restantes Valor a autenticar Data atual (DDMMAAAA hhmmss) Tempo emitindo documentos fiscais (segs) Tempo operacional (segs) Dia da tolerância de 2h para RZ Data do Movimento Data com ECF bloqueado até 23:59:59h Data da abertura do último documento gerado Nota: Após uma de re-impressão ou recuperação de documento, não será a data do último documento da MFD Data do fechamento do último documento gerado Nota: Após uma de re-impressão ou recuperação de documento, não será a data do último documento da MFD Data impressa no último rodapé, para efeito de controle de Nota: Inclui data impressa em rodapé de Cupom Adicional Data do último registro gravado na MF DarumaFramework 76 14 N 77 20 N 78 20 + 1 N 79 7 N 80 20 N 81 20 N 82 6 N 83 6 N 84 6 N 85 14 N 86 2 N 87 40 N 88 96 N 89 69 N 90 20 N 91 20 N 92 20 N 93 14 + 4 + 3 N 94 2 N 95 2 N 96 14 N 97 2 N 98 10 N 99 14 N 100 2 N 101 4 x 25 A 102 - 103 5 N 104 8 H 105 8 H 106 8 H 107 3 N 108 1 N Data da primeira execução do SB Número de série da MFDE Número de fabricação do ECF Tipo do ECF Marca do ECF Modelo do ECF Código de modelo Daruma 010053 = FS600 010054 = FS2100T 010058 = FS600 USB 010059 = FS700 L 010060 = FS700 H 010061 = FS700 M 010062 = MACH 3 010063 = MACH 1 010064 = MACH 2 Versão do SB instalado Versão do SB gravado na MF Data da atualização da versão do SB Número de ordem seqüencial da versão do SB Razão Social Nome Fantasia do Usuário Endereço do Usuário CNPJ do usuário atual IE do usuário atual IM do usuário atual Data + CRZ + CRO de cadastro do usuário Número de ordem seqüencial do usuário Símbolo da moeda atual Data de cadastro do símbolo da moeda atual Número de ordem seqüencial do símbolo da moeda Símbolos de codificação do GT Data de cadastro dos símbolos atuais de decodificação do GT Número de ordem seqüencial dos símbolos de decodificação Nome da Moeda: singular + plural + fração singular + fração plural (cheques) Reservado para o futuro Capacidade restante de MFDE ( em % ) Capacidade da MFDE ( em Hex ) Posição do ponteiro LOW Posição do ponteiro HIGH ECF Configuração: 1 se em H.Verão, 0 se não 485 DarumaFramework - Help 2.5 1 N 110 1 N 111 1 N 112 1 N 113 1 N 114 1 N 115 1 N 116 1 N 117 1 N 118 1 N 119 1 N 120 3 N 121 2 N 122 2 N 123 2 N 124 - 125 16 x 5 N 126 20 x 15 A 127 20 x 15 A 128 20 x 15 A Impressão antecipada de clichê: 0 = Sim / 1 = Não Atraso entre caracteres na transmissão pela porta do usuário Separação entre linhas em passos de 1/216” Separação entre documentos, em linhas Linha de acionamento da guilhotina Reservado para o futuro Tipo + carga tributária ( S/T + nnnn ) (**) Meios de Pagamento ( nome ) (**) Nomes dos Totalizadores Não-Fiscais (**) Nome dos Relatórios Gerenciais (**) 129 4 N Número da Loja 130 20 A 131 84 A Nome do Operador Identificação do programa aplicativo 132 Até 49 + 49 + 121 A Clichê 133 2 N 134 14 4 até 7250 N N B 136 3 N 137 6 A 138 10 A 135 486 Configuração: 1 se desconto em ISS habilitado, 0 se não Configuração: 1 se descrição em 1 linha habilitado, 0 se não 109 Configuração: 1 se imprime zeros não significativos na quantidade, 0 se não Configuração: 1 se imprime zeros não significativos no valor unitário, 0 se não Configuração: 1 se guilhotina habilitada Configuração: 1 se Cupom Adicional habilitado Configuração: 1 se mensagem promocional em CNF habilitada Baud Rate da porta do fisco Baud Rate da porta do usuário Configuração: 1 se transmissão pela porta do usuário respeita CTS, 0 se não Indice do primeiro meio de pagamento vinculável Data do movimento anterior Tamanho útil do campo do logotipo Dados do campo do logotipo Configuração dos bits de segurança do controlador da MF Versão do SB da MFD Modo de emulação DarumaFramework 139 140 2 1164 N N 141 1 N 142 1 N Número de decimais da quantidade Número de decimais do valor unitário Informações da última RZ Data do Movimento 8 Grande Total 18 Grande Total Inicial 18 Descontos ICMS 14 Descontos ISS 14 Cancelamentos ICMS 14 Cancelamentos ISS 14 Acréscimos ICMS 14 Acréscimos ISS 14 Tributados ICMS/ISS 224 F1 ICMS 14 F2 ICMS 14 I1 ICMS 14 I2 ICMS 14 N1 ICMS 14 N2 ICMS 14 F1 ISS 14 F2 ISS 14 I1 ISS 14 I2 ISS 14 N1 ISS 14 N2 ISS 14 Totalizadores NF 280 Descontos NF 14 Cancelamentos NF 14 Acréscimos NF 14 Alíquotas 80 CRO 4 CRZ 4 CRZ Restante 4 COO 6 GNF 6 CCF 6 CVC 6 GRG 6 CFD 6 CBP 6 NFC 4 CMV 4 CFC 4 CNC 4 CBC 4 NCN 4 CDC 4 CON 80 CER 80 0 = ISO 1 = CP850 2 = ABICOMP 3 = CP437 Configuração: 1 se CFBP habilitado, 0 se não UF cadastrada na MF 143 2 A 144 1 N 0 se conectado na Porta do Usuário 1 se conectado na Porta do Fisco 145 2 A UF programada com o comando confCFBPProgramarUF_ECF_Daruma 487 DarumaFramework - Help 2.5 488 146 1 N 147 1 N 148 5 N 149 22 N 150 2 N 151 2 N 152 14 N 153 4 N 154 14 N 155 14 N Configuração: 1 se logotipo do clichê carregado, 0 se não Configuração: 1 se tabela de bancos carregada, 0 se não Configuração: 1 se bitmap promocional carregado, 0 se não ( para cada bitmap ) Informações do primeiro documento gravado na MFD: Tipo de documento ( 2 ) COO ( 6 ) Data de emissão ( DDMMAAAA hhmmss ) TIPO: 1=CF 2=CFBP 3=CF Cancel 4=CCD 5=CCD Adicional 6=CCD Estorno 7=CCD 2Via 8=CCD Reimp 9=CNF 10=CNF Cancel 11=Sangria 12=Suprimento 13=Estorno Pag 14=RG 15=RZ 16=LMF 17=LX 18=LX Entrada MIT 19=LX Saida MIT Índice sequencial da MFDE cadastrada na MF Número do usuário associado a MFDE nativa Data de cadastro da MFDE Índice da última RZ gravada na MF Data da última RZ gravada na MF Data do último registro de incremento de CRO na MF 156 12 N Informações do último registro de incremento de CRO da MF 1 se ocorreu perda de MT / 0 se não ( 1 ) CRO ( 3 ) CRZ ( 4 ) CRZ Restantes ( 4 ) 157 14 N Data da última atualização de decimais de Quant e Valor Unit 158 7 N 159 20 x 14 N 160 20 x 24 A Informações da última atualização de dQ / dU CRO ( 3 ) CRZ ( 4 ) Códigos das mercadorias ou serviços com quantidade monitorada Quantidade comercializada de cada código monitorado, no formato 18,6 DarumaFramework 161 30 X 6 N 162 3 N 163 20 A 164 6 N 165 1 N 167 Até 256 cada 8 168 - A 169 20 x 15 20 x 13 13 A N N 170 20 x 15 20 x 13 13 13 13 A N N N N 171 8 N 172 14 N 173 14 N 501 38 A 578 60 A 166 COOs dos 30 últimos CCDs emitidos, relativos ao último CF/CNF Temporização Número de série da MFDE instalada Versão do SB do controlador da MFD Flag de Truncamento ( somente FS700 L ) A Chave pública programada H Área disponível no heap Parâmetros de configuração do comando [FS] C <225> Nomes dos Meios de Pagamento Valor acumulado em cada Totalizador de Meio de Pagamento Valor acumulado em Troco Nomes dos Totalizadores Não-Fiscais Valor acumulado em cada Totalizador Não-Fiscal Valor acumulado em Desconto Não-Fiscal Valor acumulado em Acréscimo Não-Fiscal Valor acumulado em Cancelamento Não-Fiscal Data do movimento se dia ainda não aberto Data de abertura do último documento original (não cópia) Data de fechamento do último documento original (não cópia), exceto Cupom Adicional GT codificado Número de fabricação do ECF codificado Tabela de Códigos de Totalizadores Parciais Type topic text here. Retorno e Status rVerificarReducaoZ_ECF_Daruma Definição: Este método retorna se a ReduçãoZ está pendente. 1(um) para ReduçãoZ Pendente e 0(zero) para ReduçãoZ já executada. Sintaxe: 489 DarumaFramework - Help 2.5 rVerificarReducaoZ_ECF_Daruma(zPendente:string); Parâmetros: Id Variável Tipo Tam.Descrição Variável por referência que 1pszPendente A 1 recebe 1(um) para ReduçãoZ Pendente e 0(zero) para ReduçãoZ já executada. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rVerificarReducaoZ_ECF_Daruma(zPendente:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_VerificarRZ,1); Int_Retorno := rVerificarReducaoZ_ECF_Daruma(Str_VerificarRZ); if str_VerificarRZ = '1' then begin Edt_Retorno.Lines.Text := (' 1 - Redução Z Pendente!!'); end else begin Edt_Retorno.Lines.Text:= (' 0 - Não existe Redução Z pendente!!'); end; . 490 DarumaFramework eBuscarPortaVelocidade_ECF_Daru ma Definição: Este método encontra a porta serial e a velocidade configurada no ECF. Sintaxe: eBuscarPortaVelocidade_ECF_Daruma(void); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function eBuscarPortaVelocidade_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= eBuscarPortaVelocidade_ECF_Daruma(); If Int_Retorno = 1 Then begin Edt_Retorno.Lines.Text:='[1] - Impressora ok'; end Else Edt_Retorno.Lines.Text:= '[0] - Impressora não ok'; end; 491 DarumaFramework - Help 2.5 eInterpretarAviso_ECF_Daruma Definição: Este método retorna a descrição do aviso referente ao ultimo comando. Sintaxe: eInterpretarAviso_ECF_Daruma(int iIndice, char *pszRetorno) Parâmetros: Id Variável Tipo Tam.Descrição 1 iIndice N 4 Índice do aviso 2 pszRetorno A 200 Descrição do aviso Saídas: Mensagem de aviso referente ao ultimo comando. Ex: Papel Acabando. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A variável de índice deve ser obtida através do comando rStatusUltimoCmdInt_ECF_Daruma(Int_NumErro, Int_NumAviso). Exemplo em Delphi: function eInterpretarAviso_ECF_Daruma(iIndice:Integer; pszRetorno:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_Msg_NumAviso,200); Int_Retorno:=eInterpretarAviso_ECF_Daruma(Int_NumAviso, Str_Msg_NumAviso); 492 DarumaFramework eInterpretarErro_ECF_Daruma Definição: Este método retorna a descrição do erro referente ao ultimo comando. Sintaxe: eInterpretarErro_ECF_Daruma(int iIndice, char *pszRetorno) Parâmetros: Id Variável Tipo Tam.Descrição 1 iIndice N 4 Índice do erro 2 pszRetorno A 200 Descrição do erro Saídas: Mensagem de erro referente ao ultimo comando. Ex: Papel CF Aberto. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A variável de índice deve ser obtida através do comando rStatusUltimoCmdInt_ECF_Daruma(Int_NumErro, Int_NumAviso). Exemplo em Delphi: function eInterpretarErro_ECF_Daruma(iIndice:Integer; pszRetorno:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_Msg_NumErro,200); Int_Retorno:=eInterpretarErro_ECF_Daruma(Int_NumErro, Str_Msg_NumErro); eVerificarVersaoDLL_Daruma 493 DarumaFramework - Help 2.5 Definição: Este método retorna versão da DLL, válido para o produto fiscal. Sintaxe: eVerificarVersaoDLL_Daruma(char*pszRet); Parâmetros: Id Variável 1 pszRet Tipo Tam. Descrição A 10 Retorna versão DLL válida para o produto FISCAL. Saídas: Versão DLL - Ex: 4.3.5.0 Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function eVerificarVersaoDLL_Daruma(pszRetr:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_VersaoDLL,10); Int_Retorno := eVerificarVersaoDLL_Daruma(Str_VersoDLL); 494 DarumaFramework rCFSaldoAPagar_ECF_Daruma Definição: Este método retorna o valor do Saldo a Pagar do cupom. Sintaxe: rCFSaldoAPagar_ECF_Daruma(char*pszValor); Parâmetros: Id Variável 1 pszValor Tipo Tam. Descrição A 12 Retorna saldo a pagar ou troco. Saídas: Saldo a pagar do cupom fiscal. Ex: 10,00 Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rCFSaldoAPagar_ECF_Daruma(pszValor:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_Saldo,12); Int_Retorno := rCFSaldoAPagar_ECF_Daruma(Str_Saldo); 495 DarumaFramework - Help 2.5 rCFSubtotal_ECF_Daruma Definição: Este método retorna o valor do Subtotal do cupom. Sintaxe: rCFSubtotal_ECF_Daruma(char*pszValor); Parâmetros: Id Variável 1 pszValor Tipo Tam. Descrição A 12 Retorna subtotal cupom Fiscal. Saídas: Subtotal do cupom fiscal. Ex: 10,00 Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rCFSubtotal_ECF_Daruma(pszValor:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_Subtotal,12); Int_Retorno := rCFSubtotal_ECF_Daruma(Str_Subtotal); 496 DarumaFramework rDataHoraImpressora_ECF_Daruma Definição: Este método retorna a data e a hora atual da impressora. Sintaxe: rDataHoraImpressora_ECF_Daruma(char*pszData,char*pszHora); Parâmetros: Id 1 2 Variável pszData pszHora Tipo Tam. Descrição A 8 Retorna Data Atual DDMMAAAA. A 6 Retorna Hora Atual hhmmss. Saídas: Data e hora atual da impressora (DDMMAAAA hhmmss) Ex: Data/hora: 07022011031255 Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: 497 DarumaFramework - Help 2.5 function rDataHoraImpressora_ECF_Daruma(pszData:string;pszHora:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_Data,8); SetLength (Str_Hora,6); Int_Retorno := rDataHoraImpressora_ECF_Daruma(Str_Data, Str_Hora); rInfoEstendida_ECF_Daruma Definição: Este método permite obter baseado na resposta dos comandos de impressão informações estendidas sem a necessidade de executar outro método, assim otimizando seu aplicativo. Sintaxe: rInfoEstentida_ECF_Daruma(int,char*); Parâmetros: Id Variável 1 pszStatus Tipo Tam. Descrição A 14 Retorna Status do ECF Saídas: Informação estendida Abertura do Cupom Fiscal. Ex: A4C60C00000000 Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: 498 DarumaFramework Para receber a informação estendida é necessário habilitar a flag no registry/XML utilizando o método Exemplo em Delphi: function rInfoEstentida_ECF_Daruma(int,char*); SetLength (Str_InfoEstendida,30); Int_Retorno := regAlterarValor_Daruma('ReceberInfoEstendida', '1'); Int_Retorno := rInfoEstentida_ECF_Daruma(Int_InfoEstendida,Str_InfoEstendida); rLerAliquotas_ECF_Daruma Definição: Este método retorna as alíquotas cadastradas na impressora. Sintaxe: rLerAliquotas_ECF_Daruma(char * cAliquotas); Parâmetros: Id Variável 1 cAliquotas Tipo Tam. Descrição Retorna as alíquotas cadastradas na impressora A 150 fiscal. Saídas: Aliquotas cadastradas impressora Fiscal. Ex: T0700;T1200;S0700;T0800;T0900;S0800;T0800;T0900;T1000;T1100;T1200;T1300;T1 400; T1600;T1700;T1800;TF1;TF2;TI1;TI2;TN1;TN2;SFS1;SFS2;SIS1;SIS2;SNS1;SNS2 T - Alíquota de ICMS - Ex: 01700 - Alíquota de 17,00 de ICMS S - Alíquota de ISS - Ex: 11700 - Alíquota de 17,00 de ISS 499 DarumaFramework - Help 2.5 Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rLerAliquotas_ECF_Daruma(cAliquotas:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_Aliquota,150); Int_Retorno := rLerAliquotas_ECF_Daruma(Str_Aliquota); rLerCNF_ECF_Daruma Definição: Este método retorna os nomes dos totalizadores não fiscais em sua impressora. Sintaxe: rLerCNF_ECF_Daruma(char *pszNaoFiscais); Parâmetros: Id Variável TipoTam.Descrição Retorna os comprovantes não fiscais cadastrados 1 pszTotalizadores A 360 na impressora fiscal. Saídas: Totalizadores não fiscais cadastrados impressora Fiscal. Ex: Sangria, Suprimento, Conta de Luz, Conta de Telefone. 500 DarumaFramework Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rLerCNF_ECF_Daruma(pszTotalizadores:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_RG,360); Int_Retorno := rLerCNF_ECF_Daruma(Str_RG); rLerDecimais_ECF_Daruma Definição: Este método permite que você saiba qual é o número de casas decimais que está programado para o valor e também para a quantidade da impressora fiscal. Sintaxe: rLerDecimais_ECF_Daruma(char*pszDecimalQtde,char*pszDecimalValor,int*piDeci malQtde,int*piDecimalValor); Parâmetros: IdVariável TipoTam.Descrição 501 DarumaFramework - Help 2.5 1 pszDecimalQtde A 2 pszDecimalValor A 3 piDecimalQtde N 4 piDecimalValor N Retorna número de decimais quantidade em string 2 Retorna número de decimais do valor em string Retorna número de decimais quantidade em 2 inteiro 2 Retorna número de decimais do valor em inteiro 2 Saídas: Casas decimais programadas para valor e quantidade impressora fiscal. Ex: Qtde:3 e Valor: 2 Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rLerDecimais_ECF_Daruma(pszDecimalQtde:string;pszDecimalValor:string;var piDecimalQtde:Integer; var piDecimalValor:Integer): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_DecimalQtde,2); SetLength (Str_DecimalValor,2); Int_Retorno := rLerDecimais_ECF_Daruma(Str_DecimalQtde, Str_DecimalValor, Int_DecimalQtde, Int_DecimalValor); rLerMeiosPagto_ECF_Daruma Definição: Este método retorna os meios de pagamentos cadastrados na impressora. Sintaxe: 502 DarumaFramework rLerMeiosPagto_ECF_Daruma(char *pszRelatorios); Parâmetros: Tipo Tam. Descrição Retorna os meios de pagamentos cadastrados na 1 pszRelatorios A 330 impressora fiscal. Id Variável Saídas: Meios de pagamentos cadastrados impressora Fiscal. Ex: Dinheiro, Duplicata, Cheque, Cartão Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rLerMeiosPagto_ECF_Daruma(pszRelatorios:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_MeiosPagto,330); Int_Retorno := rLerMeiosPagto_ECF_Daruma(Str_MeiosPagto); rLerRG_ECF_Daruma Definição: Este método retorna os relatórios gerenciais existentes em sua impressora. Sintaxe: 503 DarumaFramework - Help 2.5 rLerRG_ECF_Daruma(char *pszRelatorios); Parâmetros: Tipo Tam. Descrição Retorna os Relatórios Gerenciais cadastrados na 1 pszRelatorios A 360 impressora fiscal. Id Variável Saídas: Relatórios Gerenciais cadastrados impressora Fiscal. Ex: Gerencial X, Conf. de mesa, Conf. de ficha, Mesas em aberto, Fichas abertas, Transf. mesas Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rLerRG_ECF_Daruma(pszRelatorios:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_RG,360); Int_Retorno := rLerRG_ECF_Daruma(Str_RG); rRetornarInformacao_ECF_Daruma Definição: 504 DarumaFramework Este método possibilita retornar do ECF mais de 170 informações diferentes. A idéia deste método é que ao invés de termos 170 métodos, teremos apenas um único método. Passamos o índice da informação desejada e obtemos a informação. Clique aqui e consulte a tabela com todas informações. Sintaxe: rRetornarInformacao_ECF_Daruma(char*pszIndice,char*pszRetornar); Parâmetros: Id Variável Tipo Tam. Descrição 1 pszIndice A 3 Código da informação desejada obter da impressora. Variável por referência com o tamanho de espaços 2 pszRetornar A alocados para o retorno da informação. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rRetornarInformacao_ECF_Daruma(pszIndice:string;pszRetornar:string): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := rRetornarInformacao_ECF_Daruma('78',Str_Informacao); rStatusImpressora_ECF_Daruma 505 DarumaFramework - Help 2.5 Definição: Este método permite que você saiba o status do ecf realizando a leitura de 14 bytes. Clique aqui para visualizar a tabela de decodificação do Status. Sintaxe: rStatusImpressora_ECF_Daruma(char*pszStatus); Parâmetros: Id Variável 1 pszStatus Tipo Tam. Descrição A 14 Retorna Status do ECF Saídas: Status do ECF. Ex: A4C60C00000000 Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rStatusImpressora_ECF_Daruma(pszStatus:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_StatusEcf_Str,14); Int_Retorno := rStatusImpressora_ECF_Daruma(Str_StatusEcf_Str); 506 DarumaFramework rVerificarImpressoraLigada_ECF_Da ruma Definição: Este método verifica se a impressora está ligada ou conectada no computador. Sintaxe: rVerificarImpressoraLigada_ECF_Daruma(void); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nenhum. Exemplo em Delphi: function rVerificarImpressoraLigada_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= rVerificarImpressoraLigada_ECF_Daruma(); If Int_Retorno = 1 Then begin Edt_Retorno.Lines.Text:='[1] - Impressora Ligada'; end Else 507 DarumaFramework - Help 2.5 Edt_Retorno.Lines.Text:= '[0] - Impressora Desligada'; end; Cupom Fiscal rCMEfetuarCalculo_ECF_Daruma Definição: Este método retorna o Total de ISS e ICMS contabilizado no último cupom fiscal. Sintaxe: rCMEfetuarCalculo_ECF_Daruma(char*pszISS,char*pszICMS); Parâmetros: Nenhum. Saídas: Nenhum. Id Variável 1 pszISS A 2 pszICMS A Descrição Valor total de ISS acumulados do 13 último cupom fiscal. Valor total de ICMS acumulados do 13 último cupom fiscal. Tipo Tam. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Este Método retorna o Valor do total de ICMS e ISS referente ao último cupom fiscal se o Cupom Mania estiver habilitado. 508 DarumaFramework Para configurar CupomMania acesse: Configuração Cupom Mania. Exemplo em Delphi: function rCMEfetuarCalculo_ECF_Daruma(pszISS:string;pszICMS:string): Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_TotalISS,13); SetLength (Str_TotalICMS,13); Int_Retorno := rCMEfetuarCalculo_ECF_Daruma(Str_TotalISS,Str_TotalICMS); Configuração Cupom Mania Introdução: Como é de conhecimento, foi lançado no Rio de Janeiro o Projeto "Cupom Mania". Este projeto traz como exigência que seja impresso no Cupom Fiscal a frase "Válido para o Cupom Mania" e também o total de Imposto devido na operação de todo o cupom fiscal, envolvendo todos os itens vendidos, independente da alíquota utilizada. Transcrevo abaixo uma parte deste decreto onde constam duas destas exigências acima explicadas: XI - informações suplementares, se for o caso, impressas no máximo em 8 (oito) linhas, onde deverá constar: 1 - o valor total do ICMS devido na operação ou prestação, isto é, o somatório dos valores do imposto incidente em cada item do Cupom Fiscal; 2 - a expressão: " VÁLIDO PARA O CUPOM MANIA ". Fonte: Secretaria da Fazenda do Estado do Rio de Janeiro 509 DarumaFramework - Help 2.5 Configurando: Para configurar o cupom mania vamos utilizar o método regAlterarValor_Daruma. Opções Cupom Mania 1- "Válido para Cupom Mania" na primeira linha da mensagem do aplicativo e "Total ICMS" na última linha da mensagem promocional. 2 - "Válido para Cupom Mania" na penúltima linha da mensagem promocional e "Total ICMS" na ultima linha da mensagem promocional. Dicas: Temos também o método rCMEfetuarCalculo_ECF_Daruma que retorna o Total de ICMS e ISS do último cupom fiscal emitido. E somente e exclusivamente se o Cupom Mania estiver configurado. VALIDE seu Cupom Emitido no ECF Daruma para o Cupom Mania no link: Clique Aqui e VALIDE seu Cupom Emitido no ECF Daruma para o Cupom Mania iCFAbrir_ECF_Daruma Definição: Este método abre um Cupom Fiscal, identificando consumidor. Sintaxe: iCFAbrir_ECF_Daruma(char*pszCPF,char*pszNome,char*pszEndereco) Parâmetros: 510 DarumaFramework Id 1 2 3 Tipo Tam. Descrição Variável A 20 CPF ou CNPJ Consumidor pszCPF A 30 Nome Consumidor pszNome 79 Endereço Consumidor pszEndereco A Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nome e endereço somente são aceitos caso o campo CPF/CNPJ não seja nulo. Exemplo em Delphi: function iCFAbrir_ECF_Daruma(pszCPF: String; pszNome: String; pszEndereco: String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFAbrir_ECF_Daruma('45170289000125','Daruma Developers Community', 'São José dos Campos'); iCFAbrirPadrao_ECF_Daruma Definição: Este método abre um Cupom Fiscal. Sintaxe: iCFAbrirPadrao_ECF_Daruma(void); 511 DarumaFramework - Help 2.5 Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Impressora deve estar em jornada fiscal e cupom fiscal fechado. Exemplo em Delphi: function iCFAbrirPadrao_ECF_Daruma: Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCFAbrirPadrao_ECF_Daruma(); iCFCancelar_ECF_Daruma Definição: Este método permite cancelar o cupom fiscal. Sintaxe: iCFCancelar_ECF_Daruma(); Parâmetros: Nenhum. 512 DarumaFramework Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Pode ser executado com o documento em emissão . Exemplo em Delphi: function iCFCancelarItem_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFCancelar_ECF_Daruma(); iCFCancelarAcrescimoItem_ECF_Da ruma Definição: Este método cancela o acréscimo aplicado sobre um item vendido no cupom fiscal atual. Sintaxe: iCFCancelarAcrescimoItem_ECF_Daruma(char*pszNumItem); 513 DarumaFramework - Help 2.5 Parâmetros: Id Variável 1 pszNumItem TipoTam.Descrição N 3 Número do Item Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto e ao menos um item vendido; Item deve possuir acréscimo. Exemplo em Delphi: function iCFCancelarAcrescimoItem_ECF_Daruma(pszNumItem:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFCancelarAcrescimoItem_ECF_Daruma('002'); iCFCancelarAcrescimoSubtotal_ECF _Daruma 514 DarumaFramework Definição: Este método cancela o acréscimo aplicado sobre o subtotal do cupom fiscal atual. Sintaxe: iCFCancelarAcrescimoSubtotal_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto e ao menos um item vendido; Cupom Fiscal deve possuir acréscimo em subtotal. Exemplo em Delphi: function iCFCancelarAcrescimoSubtotal_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFCancelarAcrescimoSubtotal_ECF_Daruma(); 515 DarumaFramework - Help 2.5 iCFCancelarAcrescimoUltimoItem_E CF_Daruma Definição: Este método cancela o acréscimo aplicado sobre o último item vendido no cupom fiscal atual. Sintaxe: iCFCancelarAcrescimoUltimoItem_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto e ao menos um item vendido; Item deve possuir acréscimo. Exemplo em Delphi: 516 DarumaFramework function iCFCancelarAcrescimoUltimoItem_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFCancelarAcrescimoUltimoItem_ECF_Daruma(); iCFCancelarDescontoItem_ECF_Dar uma Definição: Este método cancela o desconto aplicado sobre um item vendido no cupom fiscal atual. Sintaxe: iCFCancelarDescontoItem_ECF_Daruma(char*pszNumItem); Parâmetros: Id Variável 1 pszNumItem TipoTam.Descrição N 3 Número do Item Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; 517 DarumaFramework - Help 2.5 Cupom Fiscal aberto e ao menos um item vendido; Item deve possuir desconto. Exemplo em Delphi: function iCFCancelarDescontoItem_ECF_Daruma(pszNumItem:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFCancelarDescontoItem_ECF_Daruma('002'); iCFCancelarDescontoSubtotal_ECF_ Daruma Definição: Este método cancela o desconto aplicado sobre o subtotal do cupom fiscal atual. Sintaxe: iCFCancelarDescontoSubtotal_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. 518 DarumaFramework Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto e ao menos um item vendido; Cupom Fiscal deve possuir desconto em subtotal. Exemplo em Delphi: function iCFCancelarDescontoSubtotal_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFCancelarDescontoSubtotal_ECF_Daruma(); iCFCancelarDescontoUltimoItem_EC F_Daruma Definição: Este método cancela o desconto aplicado sobre o último item vendido no cupom fiscal atual. Sintaxe: iCFCancelarDescontoUltimoItem_ECF_Daruma(); Parâmetros: Nenhum. Saídas: 519 DarumaFramework - Help 2.5 Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto e ao menos um item vendido; Item deve possuir desconto. Exemplo em Delphi: function iCFCancelarDescontoUltimoItem_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFCancelarDescontoUltimoItem_ECF_Daruma(); iCFCancelarItem_ECF_Daruma Definição: Este método permite o cancelamento total de item em cupom fiscal. Sintaxe: iCFCancelarItem_ECF_Daruma(char*pszNumItem); Parâmetros: 520 DarumaFramework Id Variável 1 pszNumItem TipoTam.Descrição N 3 Número do Item Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto e ao menos um item vendido; Item não pode estar cancelado. Exemplo em Delphi: function iCFCancelarItem_ECF_Daruma(pszNumItemc:String;): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFCancelarItem_ECF_Daruma('002'); iCFCancelarItemParcial_ECF_Darum a Definição: Este método cancela parcialmente um item. 521 DarumaFramework - Help 2.5 Sintaxe: iCFCancelarItemParcial_ECF_Daruma(char*pszNumItem,char*pszQuantidade); Parâmetros: Id Variável TipoTam.Descrição 1 pszNumItem N 2 pszQuantidade N 3 Número do Item 7 Quantidade a cancelar Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal e cupom Fiscal aberto e ao menos um item vendido. Item não pode possuir desconto ou acréscimo; Quantidade não pode possuir mais de 2 decimais; Exemplo em Delphi: function iCFCancelarItemParcial_ECF_Daruma(pszNumItem:String;pszQuantidade: String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCFCancelarItemParcial_ECF_Daruma('001,'1'); 522 DarumaFramework iCFCancelarUltimoItem_ECF_Darum a Definição: Este método permite o cancelamento do último item em cupom fiscal. Sintaxe: iCFCancelarUltimoItem_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal, cupom Fiscal aberto ao menos um item vendido e item não pode estar cancelado. Exemplo em Delphi: function iCFCancelarUltimoItem_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFCancelarUltimoItem_ECF_Daruma(); 523 DarumaFramework - Help 2.5 iCFCancelarUltimoItemParcial_ECF_ Daruma Definição: Este método cancela parcialmente o último item. Sintaxe: iCFCancelarUltimoItemParcial_ECF_Daruma(char*pszQuantidade); Parâmetros: Id Variável TipoTam.Descrição 1 pszQuantidade N 7 Quantidade a cancelar Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal e cupom Fiscal aberto e ao menos um item vendido. Item não pode possuir desconto ou acréscimo; Quantidade não pode possuir mais de 2 decimais; 524 DarumaFramework Exemplo em Delphi: function iCFCancelarItemParcial_ECF_Daruma(pszQuantidade: String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCFCancelarUltimoItemParcial_ECF_Daruma('1'); iCFEfetuarPagamento_ECF_Daruma Definição: Este método processa o pagamento do cupom fiscal. Sintaxe: iCFEfetuarPagamento_ECF_Daruma(char*pszFormaPgto,char*pszValor,char*pszInf oAdicional); Parâmetros: Id Variável Tipo Tam. Descrição 1 psszFormaPgto A 20 Descrição da forma de pagamento 2 pszValor A 12 Valor da forma de pagamento 3 pszInfoAdicional A 84 Informação Adicional Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: 525 DarumaFramework - Help 2.5 A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto; A forma de pagamento deve estar previamente cadastrada. Exemplo em Delphi: function iCFEfetuarPagamento_ECF_Daruma(pszFormaPgto:String;pszValor:String;pszInfoAdicio Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCFEfetuarPagamento_ECF_Daruma('Dinheiro','1,00', 'Obrigado e volte sem iCFEfetuarPagamentoFormatado_EC F_Daruma Definição: Este método processa o pagamento do cupom fiscal. Sintaxe: iCFEfetuarPagamento_ECF_Daruma(char*pszFormaPgto,char*pszValor); Parâmetros: Id Variável Tipo Tam. 1 psszFormaPgto A 20 2 pszValor A 12 Descrição Descrição da forma de pagamento Valor da forma de pagamento Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 526 DarumaFramework 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto; A forma de pagamento deve estar previamente cadastrada. Exemplo em Delphi: function iCFEfetuarPagamentoFormatado_ECF_Daruma(pszFormaPgto:String;pszValor:String;): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCFEfetuarPagamentoFormatado_ECF_Daruma('Dinheiro','1,00'); iCFEfetuarPagamentoPadrao_ECF_D aruma Definição: Este método processa o pagamento do cupom fiscal com a forma de pagamento default - Dinheiro. Sintaxe: iCFEfetuarPagamentoPadrao_ECF_Daruma(); Parâmetros: Nenhum. Saídas: 527 DarumaFramework - Help 2.5 Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto; A forma de pagamento deve estar previamente cadastrada. Exemplo em Delphi: function iCFEfetuarPagamentoPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCFEfetuarPagamentoPadrao_ECF_Daruma(); iCFEmitirCupomAdicional_ECF_Dar uma Definição: Emite um resumo do último Cupom Fiscal emitido, com Número do cupom, Valor e Data. Sintaxe: iCFEmitirCupomAdicional_ECF_Daruma(void); 528 DarumaFramework Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal e cupom Fiscal fechado. Dicas: Este resumo pode ser utilizado para Controle interno. Exemplo em Delphi: function iCFEmitirCupomAdicional_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCFEmitirCupomAdicional_ECF_Daruma(); iCFEncerrar_ECF_Daruma Definição: Este método finaliza o cupom fiscal, com a opção de emitir cupom adicional ou não com mensagem promocional. Sintaxe: iCFEncerrar_ECF_Daruma(char*pszCupomAdicional,char*pszMensagem); 529 DarumaFramework - Help 2.5 Parâmetros: Id Variável Tipo Tam.Descrição 0 - Não Imprime Cupom Adicional 1 - Imprime Cupom Adicional Simplificado 1 pszCupomAdicional N 1 2 - Imprime Cupom Adicional Detalhado 3 - Imprime Cupom Adicional DLL 2 pszMensagem A 619 Mensagem promocional em até 8 linhas. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal totalizado. Exemplo em Delphi: function iCFEncerrar_ECF_Daruma(pszCupomAdicional:string;pszMensagem:string):Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFEncerrar_ECF_Daruma('0','Obrigado e volte sempre!!'); 530 DarumaFramework iCFEncerrarConfigMsg_ECF_Darum a Definição: Este método finaliza o cupom fiscal com mensagem promocional. Sintaxe: iCFEncerrarConfigMsg_ECF_Daruma(char*pszMensagem); Parâmetros: Id Variável 1 pszMensagem Tipo Tam. Descrição A 619 Mensagem promocional em até 8 linhas. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal totalizado. Exemplo em Delphi: function iCFEncerrarConfigMsg_ECF_Daruma(pszMensagem:string):Integer; StdCall; External 'DarumaFramework.dll'; 531 DarumaFramework - Help 2.5 Int_Retorno := iCFEncerrarConfigMsg_ECF_Daruma('Obrigado e volte sempre!!'); iCFEncerrarPadrao_ECF_Daruma Definição: Este método finaliza o cupom fiscal, de forma resumida sem mensagem promocional. Sintaxe: iCFEncerrarPadrao_ECF_Daruma(void); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal totalizado. Exemplo em Delphi: function iCFEncerrarPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; 532 DarumaFramework Int_Retorno := iCFEncerrarPadrao_ECF_Daruma(); iCFEncerrarResumido_ECF_Daruma Definição: Este método processa o pagamento do cupom fiscal. Sintaxe: iCFEncerrarResumido_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal totalizado. Exemplo em Delphi: function iCFEncerrarResumido_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; 533 DarumaFramework - Help 2.5 Int_Retorno:= iCFEncerrarResumido_ECF_Daruma() iCFIdentificarConsumidor_ECF_Daru ma Definição: Este método imprime a Identificação do Consumidor no cupom fiscal. Sintaxe: iCFIdentificarConsumidor_ECF_Daruma(char*pszCPF,char*pszNome,char*pszEnde reco) Parâmetros: Id 1 2 3 Tipo Tam. Descrição Variável A 20 CPF ou CNPJ Consumidor pszCPF A 30 Nome Consumidor pszNome 79 Endereço Consumidor pszEndereco A Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: Nome e endereço somente são aceitos caso o campo CPF/CNPJ não seja nulo. 534 DarumaFramework O comando deve ser enviado durante a emissão e antes do encerramento do cupom fiscal. Exemplo em Delphi: function iCFIdentificarConsumidor_ECF_Daruma(pszCPF: String; pszNome: String; pszEndereco: String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFIdentificarConsumidor_ECF_Daruma('45170289000125','Daruma Developers Community', 'São José dos Campos'); iCFLancarAcrescimoItem_ECF_Daru ma Definição: Este método permite aplicar acréscimo no item do cupom fiscal antes da totalização. Sintaxe: iCFLancarAcrescimoItem_ECF_Daruma(char*pszNumItem,char*pszTipoAcresc,char*pszValorA cresc); Parâmetros: IdVariável TipoTam.Descrição 1 pszNumItem N 3 2 pszTipoAcresc N 7 Número do Item Tipo Acréscimo - Exemplo - A% Acréscimo em Percentual A$ - Acréscimo em Valor 3 pszValorAcresc N 11 Valor do acréscimo ou Valor da porcentagem. 535 DarumaFramework - Help 2.5 Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto e ao menos um item vendido; Item não pode possuir acréscimo e o quando o acréscimo for expresso em percentual, deverá ser maior que 0 (zero) e inferior a 100% (cem por cento). Quando o acréscimo for expresso em valor, deverá ser maior que 0 (zero) e inferior ao valor sobre o qual incida. Exemplo em Delphi: function iCFLancarAcrescimoItem_ECF_Daruma(pszNumItem:String; pszTipoAcresc:String; pszValorAcresc:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFLancarAcrescimoItem_ECF_Daruma('001','A$','1,00'); iCFLancarAcrescimoUltimoItem_EC F_Daruma Definição: Este método permite aplicar acréscimo no último item do cupom fiscal. 536 DarumaFramework Sintaxe: iCFLancarAcrescimoUltimoItem_ECF_Daruma(char*pszTipoAcresc,char*pszValorAcresc); Parâmetros: IdVariável TipoTam.Descrição Tipo Acréscimo - Exemplo - A% - Acréscimo em Percentual 1 pszTipoAcresc N 7 A$ - Acréscimo em Valor 2 pszValorAcresc N 11 Valor do acréscimo ou Valor da porcentagem. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto e ao menos um item vendido; Item não pode possuir acréscimo e o quando o acréscimo for expresso em percentual, deverá ser maior que 0 (zero) e inferior a 100% (cem por cento); Quando o acréscimo for expresso em valor, deverá ser maior que 0 (zero) e inferior ao valor sobre o qual incida. Exemplo em Delphi: 537 DarumaFramework - Help 2.5 function iCFLancarAcrescimoUltimoItem_ECF_Daruma(pszTipoAcresc:String; pszValorAcresc:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFLancarAcrescimoUltimoItem_ECF_Daruma('A$','1,00'); iCFLancarDescontoItem_ECF_Daru ma Definição: Este método permite aplicar desconto no item do cupom fiscal antes da totalização. Sintaxe: iCFLancarDescontoItem_ECF_Daruma(char*pszNumItem,char*pszTipoDesc,char*pszValorDes c); Parâmetros: Id Variável 1 2 pszNumItem TipoTam.Descrição N pszTipoDesc N Número do Item Tipo Desconto - Exemplo Desconto em Percentual 7 3 D% - D$ - Desconto em Valor 3 pszValorDesc N 11 Valor do Desconto ou Valor da porcentagem. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. 538 DarumaFramework Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto e ao menos um item vendido. Item não pode possuir desconto e o quando o desconto for expresso em percentual, deverá ser maior que 0 (zero) e inferior a 100% (cem por cento). Quando o desconto for expresso em valor, deverá ser maior que 0 (zero) e inferior ao valor sobre o qual incida. Exemplo em Delphi: function iCFLancarDescontoItem_ECF_Daruma(pszNumItem:String; pszTipoDesc:String; pszValorDesc:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFLancarDescontoItem_ECF_Daruma('001','D$','1,00'); iCFLancarDescontoUltimoItem_ECF _Daruma Definição: Este método permite aplicar desconto no último item do cupom fiscal. Sintaxe: iCFLancarDescontoUltimoItem_ECF_Daruma(char*pszTipoDesc,char*pszValorDesc); Parâmetros: Id Variável TipoTam.Descrição 539 DarumaFramework - Help 2.5 Tipo Desconto - Exemplo - D% - Desconto 1 em Percentual pszTipoDesc N 7 pszValorDesc N Valor do Desconto ou Valor da 11 porcentagem. D$ - Desconto em Valor 2 Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto e ao menos um item vendido; Item não pode possuir desconto e o quando o desconto for expresso em percentual, deverá ser maior que 0 (zero) e inferior a 100% (cem por cento); Quando o desconto for expresso em valor, deverá ser maior que 0 (zero) e inferior ao valor sobre o qual incida. Exemplo em Delphi: function iCFLancarDescontUltimoItem_ECF_Daruma(pszTipoDesc:String; pszValorDesc:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFLancarDescontoUltimoItem_ECF_Daruma('001','D$','1,00'); iCFTotalizarCupom_ECF_Daruma 540 DarumaFramework Definição: Este método totaliza o cupom fiscal. Sintaxe: iCFTotalizarCupom_ECF_Daruma(char*pszTipoDescAcresc,char*pszValorDescAcresc); Parâmetros: IdVariável TipoTam.Descrição Tipo Acréscimo ou Desconto Exemplo - A% - Acréscimo em Percentual 1 pszTipoDescAcresc N A$ - 7 Acréscimo em Valor D% Descontp em Percentual D$ Desconto em Valor 2 pszValorDescAcresc N 11 Valor do acréscimo ou Valor da porcentagem. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto em fase de totalização; Quando o acréscimo ou desconto for expresso em percentual, deverá ser maior que 0 (zero) e inferior a 100% (cem por cento); Quando o acréscimo ou desconto for expresso em valor, deverá ser maior que 0 (zero) e inferior ao valor sobre o qual incida. 541 DarumaFramework - Help 2.5 Exemplo em Delphi: function iCFTotalizarCupom_ECF_Daruma(pszTipoDescAcresc:String; pszValorDescAcresc:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCFTotalizarCupom_Daruma('D$','1,00'); iCFTotalizarCupomPadrao_ECF_Dar uma Definição: Este método totaliza o cupom fiscal. Sintaxe: iCFTotalizarCupomPadrao_ECF_Daruma(); Parâmetros: Nenhum. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. 542 DarumaFramework Requisitos: A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto em fase de totalização; Quando o acréscimo ou desconto for expresso em percentual, deverá ser maior que 0 (zero) e inferior a 100% (cem por cento); Quando o acréscimo ou desconto for expresso em valor, deverá ser maior que 0 (zero) e inferior ao valor sobre o qual incida. Exemplo em Delphi: function iCFTotalizarCupomPadrao_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iCFTotalizarCupomPadrao_Daruma(); iCFVender_ECF_Daruma Definição: Este método vende um item no Cupom Fiscal. Sintaxe: iCFVender_ECF_Daruma(char*pszCargaTributaria, char*pszQuantidade, char*pszPrecoUnitario, char*pszTipoDescAcresc, char*pszValorDescAcresc, char*pszCodigoItem, char*pszUnidadeMedida, char*pszDescricaoItem); Parâmetros: 543 DarumaFramework - Help 2.5 IdVariável TipoTam.Descrição 1 pszCargaTributaria A 2 pszQuantidade N Alíquota do Item. A alíquota pode ser informada com a virgula (I07,00) ou sem a virgula (I0700). Exemplos: ICMS Não tributado: ("II" - Isento, "FF"- Substituição tributária, "NN" - Não Tributária). 5 ICMS Tributado:( I07,00 , I18,00, I0700 , I1800) ISSQN Não tributado: ("ISS" - Isento, "FS"- Substituição tributária, "NS" - Não Tributária). ISSQN Tributado: (S07,00 , S18,00, S0700 , S1800) 7 Quantidade do Item. 3 pszPrecoUnitario N 8 Preço Unitário do Item. Tipo de Acréscimo ou Desconto no Item.Exemplos: 5 pszValorDescAcresc N D% - Desconto em Percentual. D$ 2 - Desconto em Valor. A% - Acréscimo em Percentual. A$ - Acréscimo em Valor. Valor do desconto ou acréscimo ou Valor da 11 porcentagem. 6 pszCodigoItem A 14 Código do Item. 7 pszUnidadeMedida A 3 Unidade de medida. 8 pszDescricaoItem A 233 4 pszTipoDescAcresc A Descrição do Item. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. 544 DarumaFramework Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal e cupom Fiscal aberto. Dicas: Indicador de Arredondamento e Truncamento valor total do item. As impressoras térmicas tem por padrão o Arredondamento e permite também sinalizar a cada venda de item se irá truncar ou arredondar basta configurar a chave ArredondarTruncar utilizando o método regAlterarValor_Daruma indicando A - Arredondar ou T - Truncar. Venda de item em 1(uma) linha a descrição do item deve ter até 15 caracteres. Exemplo em Delphi: function iCFVender_ECF_Daruma(pszCargaTributaria:String; pszQuantidade:String; pszPrecoUnitario:String; pszTipoDescAcresc:String; pszValorDescAcresc:String; pszCodigoItem:String; pszUnidadeMedida:String; pszDescricaoItem:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFVender_ECF_Daruma('II','10','0,10','D%','0,00', '7891027116446','UN','Caderno Universitário'); iCFVenderResumido_ECF_Daruma Definição: Este método vende um item no Cupom Fiscal. Sintaxe: iCFVenderResumido_ECF_Daruma(char*pszCargaTributaria,char*pszPrecoUnitario,char*pszC odigoItem,char*pszDescricaoItem); Parâmetros: 545 DarumaFramework - Help 2.5 IdVariável TipoTam.Descrição Alíquota do Item. A alíquota pode ser informada com a virgula (I07,00) ou sem a virgula (I0700). Exemplos: ICMS Não tributado: ("II" Isento, "FF"- Substituição tributária, "NN" - Não Tributária. 1 pszCargaTributaria A 5 ICMS Tributado:( I07,00 , I18,00, I0700 , I1800) ISSQN Não tributado: ("ISS" Isento, "FS"- Substituição tributária, "NS" - Não Tributária. ISSQN Tributado: (S07,00 , S18,00, S0700 , S1800) 2 pszPrecoUnitario N 8 Preço Unitário do Item. 3 pszCodigoItem A 14 Código do Item. 4 pszDescricaoItem A 233 Descrição do Item. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal e cupom Fiscal aberto. Dicas: Indicador de Arredondamento e Truncamento valor total do item. As impressoras térmicas tem por padrão o Arredondamento e permite também sinalizar a cada venda de item se irá truncar ou arredondar basta configurar a chave ArredondarTruncar utilizando o método regAlterarValor_Daruma indicando A - Arredondar ou T - Truncar. Venda de item em 1(uma) linha a descrição do item deve ter até 15 caracteres. Esse método pode ser utilizado para os aplicativos que trabalham com venda de um ou poucos item. Exemplo: Loja de produtos 1,99. 546 DarumaFramework Exemplo em Delphi: function iCFVenderResumido_ECF_Daruma(pszCargaTributaria:String; pszPrecoUnitario:String; pszCodigoItem:String; pszDescricaoItem:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFVenderResumido_ECF_Daruma('II','1,99', '7891027116446', 'Produto 1,99'); iCFVenderSemDesc_ECF_Daruma Definição: Este método vende um item no Cupom Fiscal. Sintaxe: iCFVenderSemDesc_ECF_Daruma(char*pszCargaTributaria, char*pszQuantidade, char*pszPrecoUnitario, char*pszCodigoItem, char*pszUnidadeMedida, char*pszDescricaoItem); Parâmetros: IdVariável TipoTam.Descrição Alíquota do Item. A alíquota pode ser informada com a virgula (I07,00) ou sem a virgula (I0700). Exemplos: 1 pszCargaTributaria A 5 ICMS Não tributado: ("II" - Isento, "FF"- Substituição tributária, "NN" - Não Tributária. ICMS Tributado:( I07,00 , I18,00, I0700 , I1800) ISSQN Não tributado: 547 DarumaFramework - Help 2.5 2 pszQuantidade N ("ISS" - Isento, "FS"- Substituição tributária, "NS" - Não Tributária. ISSQN Tributado: (S07,00 , S18,00, S0700 , S1800) 7 Quantidade do Item. 3 pszPrecoUnitario N 8 Preço Unitário do Item. 4 pszCodigoItem A 14 Código do Item. 5 pszUnidadeMedida A 3 Unidade de medida. 6 pszDescricaoItem A 233 Descrição do Item. Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal e cupom Fiscal aberto. Dicas: Indicador de Arredondamento e Truncamento valor total do item. As impressoras térmicas tem por padrão o Arredondamento e permite também sinalizar a cada venda de item se irá truncar ou arredondar basta configurar a chave ArredondarTruncar utilizando o método regAlterarValor_Daruma indicando A - Arredondar ou T - Truncar. Venda de item em 1(uma) linha a descrição do item deve ter até 15 caracteres. Exemplo em Delphi: function iCFVenderSemDesc_ECF_Daruma(pszCargaTributaria:String; pszQuantidade:String; pszPrecoUnitario:String; pszCodigoItem:String; pszUnidadeMedida:String; pszDescricaoItem:String): Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno := iCFVenderSemDesc_ECF_Daruma(('II','10','0,10','7891027116446','UN','Caderno 548 DarumaFramework Universitário'); iEstornarPagamento_ECF_Daruma Definição: Este método permite estornar valores de uma forma de pagamento e transferir em outra forma. Sintaxe: iEstornarPagamento_ECF_Daruma(char *pszFormaPgtoEstornado,char *pszFormaPgtoEfetivado,char *pszValor,char *pszInfoAdicional); Parâmetros: IdVariável TipoTam.Descrição 1 pszFormaPgtoEstornado A 2 pszFormaPgtoEfetivado A 3 pszValor 4 pszInfoAdicional A A Descrição da forma de pagamento a estornar. Descrição da forma de 20 pagamento a ser alterada. 12 Valor da forma de pagamento. 84 Informação Adicional. 20 Saídas: Nenhum. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: 549 DarumaFramework - Help 2.5 A Impressora Fiscal deve estar em jornada Fiscal; Cupom Fiscal aberto; A forma de pagamento deve estar previamente cadastrada. Exemplo em Delphi: function iEstornarPagamento_ECF_Daruma(pszFormaPgtoEstornado:string;pszFormaPgtoEfetiva Integer; StdCall; External 'DarumaFramework.dll'; Int_Retorno:= iEstornarPagamento_ECF_Daruma(Str_Formapgtoestornar, Str_Formapgto rCFSaldoApagar_ECF_Daruma Definição: Este método retorna o saldo a pagar do cupom fiscal atual. Sintaxe: rCFSaldoAPagar_ECF_Daruma(char*pszValor); Parâmetros: Nenhum. Saídas: Nenhum. Id Variável 1 pszValor Tipo Tam. Descrição A 12 Valor do Saldo a pagar do cupom fiscal atual. Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. 550 DarumaFramework Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal, Cupom Fiscal fechado. Exemplo em Delphi: function rCFSaldoAPagar_ECF_Daruma(pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_SaldoPagar,12); Int_Retorno := rCFSaldoAPagar_ECF_Daruma(Str_SaldoPagar); rCFSubtotal_ECF_Daruma Definição: Este método retorna o subtotal do cupom fiscal atual. Sintaxe: rCFSubtotalr_ECF_Daruma(char*pszValor); Parâmetros: Nenhum. Saídas: Nenhum. Id Variável 1 pszValor Tipo Tam. Descrição A 12 Valor do Subtotal do cupom fiscal atual. 551 DarumaFramework - Help 2.5 Retornos: 0: Erro de comunicação, não foi possível enviar o método. 1: OK, Sucesso ao enviar o método. Para obter todos os possíveis retornos consulte a Tabela Retornos Métodos. Requisitos: A Impressora Fiscal deve estar em jornada Fiscal, Cupom Fiscal fechado. Exemplo em Delphi: function rCFSubTotal_ECF_Daruma(pszValor:string):Integer; StdCall; External 'DarumaFramework.dll'; SetLength (Str_Subtotal,12); Int_Retorno := rCFSubtotal_ECF_Daruma(Str_Subtotal); Conceitos Básicos - Programando para o ECF O objetivo desse material é oferecer a você desenvolvedor Daruma, conceitos básicos sobre documentos emitidos através do ECF, bem como o desenvolvimento DarumaFramework. LeituraX 552 com os métodos disponíveis na DLL DarumaFramework ReduçãoZ Leitura Memória Fiscal Cupom Fiscal Cancelamento Cupom Fiscal Comprovante Crédito e Débito Recebimento Não Fiscal Relatório Gerencial Suprimento Sangria 553 Micro Terminais PC MT1000 MT1000 Modelo: MicroTerminal System MT1000 Facilidades: Cabe na palma da sua Mão Índice: 11 Sistema Operacionais: Windows e Linux Descrição: Comentário Inicial: MiniTerminal System MT1000 é um produto desenvolvido para atender as necessidades de TI nos ambientes corporativos e de varejo. Uma solução inteligente é de baixo custo, segurança e flexibilidades para operar em sistemas operacionais como Windows e Linux. O equipamento possui dimensões reduzidas para otimização de espaço e versatilidade que permite a portabilidade de qualquer software aplicativo e com a exclusiva vantagem "Cabe na palma de sua mão". O produto apresenta alta confiabilidade devido ao alto MTBF, além de proporcionar uma significativa redução de consumo de energia comparada as demais soluções convencionais de PC Desktops. Utilizando um processador de baixissímo consumo, nosso MicroTerminal não necessita de cooler para seu resfriamento. Sua concepção permite obter o máximo do produto a um custo competitivo, configurando-o conforme as aplicações e necessidades de uso. Pode ser configurado como Thin Client para uso em soluções de arquitetura de rede cliente/servidor na qual os processamentos são realizados no servidor; ou como 555 DarumaFramework - Help 2.5 MiniPC (Fat Client) para aplicações nas quais os processamentos são realizados no próprio terminal, assim como ocorre nos microcomputadores. Flexibilidades: Opera em sistemas operacionais como Linux e Windows; Reduções reduzidas e adequadas para a otimização de restrita de espaço; Apresenta baixo consumo de energia - 7 WATTS, comparado a um PC Desktop ou outras soluções que chega a consumir ao equivalente de 250 500 WATTS. Oferece flexibilidade de configuração com altíssima confiabilidade e segurança para os dados; Possibilita o gerenciamento centralizado e atualização remota de softwares de sistemas; Integra-se perfeitamente aos sistemas de TI existentes; Proporciona significativa redução do custo total de propriedade (TCO). Dia-a-Dia: Para reduzir o espaço restritos nos ambientes de trabalho, o MT1000 foi desenvolvido para ser acoplado atrás dos monitores, de uma forma transparente ao usuário, facilitando ao máximo o aumento de espaço para o trabalho. Especificação Técnica: Processador Opções de Configuração 1Geode GX2 533 (400MHz) 1Storage 1Fanless - sem cooler - Boot Remoto (via PXE). HD - a partir de 40 GB. Disk on Memory - a partir de 64MB. Gabinete Frontal com design moderno e resistente 1Memória RAM Compacto e robusto - a partir de 64MB - expansível até 1 GB 556 Micro Terminais PC Perfil tubular em alumínio extra leve e resistente Silencioso Suporte de apoio para a posição horizontal Opcional de trava kensington para fixação e lacre contra abertura Sistema Operacional: Windows Xp Embedded (tm) Windows CE (tm) WEPOS (tm) Linux(tm) Sem Sistema Gerais Baixo consumo de energia: apenas 7 watts Baixa temperatura de operação Sem ruído Protocolos: PXE (boot remoto) Terminal Services - RDP Citrix ICA VNC Tarantella (AIP) Nomachine FTP/HTTP TCP/IP GoGlobal entre outros TA2000 TA2000 557 DarumaFramework - Help 2.5 Modelo: MicroComputador TA2000 Facilidades: Totalmente Re-Programavél Índice: 10 Bibliotecas: DarumaFramework.dll Descrição: Comentário Inicial: TA2000 foi desenvolvido como a solução completa para a informatização dentro de seu estabelecimento que necessitam de uma INTERFACE imediata ao PDV. Através da fabricação do modelo TA2000 permitimos levar até o usuário um produto com baixo custo e segurança, além das fantásticas implementações e soluções dentro do MicroTerminal. Flexibilidades: Desenvolvido para trabalhar em ambientes DOS, Windows, WePOS e Linux conforme sua necessidade e aplicativos desenvolvidos em Delphi, Clipper, Cobol, Visual Basic, C#.NET, VB.NET entre outros; Modelo nacional o TA2000 permite total liberdade para instalações em ambientes com espaços reduzidos ou superiores, pois trazemos ao mercado um produto compacto para otimização de espaço e versátil para portar qualquer aplicação dentro do produto para frente de caixa; Apresentamos em nossa solução para MicroTerminais a alta confiabilidade devido ao alto consumo do Mean Time Between Failures (MTBF); Redução significativa no consumo de energia comparado a outras soluções convencionais para o PDV; Processador de alta capacidade de processamento e de baixo consumo. TA2000 não utiliza COOLER para o refrigeramento do MicroTerminal devido a sua fabrição inteligente. Sua concepção permite obter o máximo do produto a custo competitivo, configurando conforme sua necessidade; 558 Micro Terminais PC Permite o uso de Banco de Dados compatíveis com Windows, SQL, Linux, Oracle, Paradox; Possui o teclado padrão internacional QWERT - compatível com seu PC, permitindo a sua re-programação conforme a especificação do mercado, onde em nossos modelos utiliza a Tecnologia Óptica - sem contato e sem membrana no acionamento de suas teclas, onde eleva o MTBF a mas de 150.000 horas; Apresenta baixo custo de energia, apenas 7 WATTS em relação ao consumo do PC convencional onde pode variar entre 250 WATTS - 500 WATTS dependendo do equipamento; TA2000 apresenta diversos dispositivos de conexão como a facilidade de trabalhar com qualquer tipo de monitor ou display; Possui a interface USB que permite o uso de diversos dispositivos como o PenDriver, conexões para leitores de CD/DVD externos entre outros. Dia-a-Dia: Você sabia que além do monitor, você pode configurar o Display do TA2000 para trabalhar com uma interface ao usuário? Exatamente! através dos recursos do TA2000 você pode utilizar cada função do MicroTerminal trazendo mais soluções ao seu cliente. Através dos sofisticados recursos presentes na impressora você não precisará se preocupar com curtos-circuitos no equipamento, pois ele trabalha com o sistema Fanless, ou seja, sem cooler entre outras vantagens, sendo assim portar o aplicativo em lugares de riscos como posto de gasolina não haveria mais a exposição ao perigo. Especificação Técnica: Processador Geode GX2 533 (400MHz) Fanless - sem cooler Gabinete Integrado ao Teclado 559 DarumaFramework - Help 2.5 Compacto e posicionado no balcão Silencioso Valoriza a marca do cliente Customizável Inclui Display LCD - 2 linhas x 40 caracteres (back-light opcional) Leitora de Cartão com Tarja Magnética Teclado Tecnologia Óptica - sem contato e sem membrana Teclas configuráveis que permitem gerar até 86 códigos diferentes Aceita Teclado externo PS2 Códigos customizáveis Cores padrão e customizados Gerais Baixo consumo de energia: apenas 7 watts Baixa temperatura de operação Sem ruído Interfaces de conexão: u 4 seriais RS232 u 4 USB rede ethernet 10/100 paralela DB25 vídeo PS2 para teclado e mouse Opções de Configuração Cores: Cinza Cool Gray Preto 560 Micro Terminais PC Conexões: Seriais RS232 + 4 USB2.0 + ethernet 10/100 Seriais RS232 + 2 USB2.0 + ethernet 10/100 Boot: Boot Remoto HD - a partir de 40 GB Disk on Memory - a partir de 32MB Memória RAM: A partir de 128MB - expansível até 1 GB Sistema Operacional: WEPOS(tm) Windows CE(tm) Windows Xp Embedded(tm) Linux(tm) Sem Sistema Caso queria mais informações sobre o TA2000 verifique em: http://www.daruma.com.br/pdfs_catgs/Folder_TA2000_(4).pdf Você Sábia? Que a Daruma desenvolveu um emulador completo para o TA2000? Acesse! 561
Documentos relacionados
via Pendrive
3. No menu Iniciar clique na aba Acessórios 4. Clique com botão direitoem Prompt de Comandoe depois em Executar como Administrator 5. Se aparecer uma tela pedindo confirmação da execução como admin...
Leia maisInstalando Ubuntu 8.04 nos terminais Daruma via pendrive
Suporte ao Desenvolvedor: 0800 770 332 0 www.desenvolvedoresdaruma.com.br 3. Use PgUp para alterar para: “USB HARD DRIVE” a opção C: IDE 0/PRI MÁSTER” e “DRIVE D: (none)” para “DRIVE C: IDE 0/PRI M...
Leia mais