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

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 mais

Instalando Ubuntu 8.04 nos terminais Daruma via pendrive

Instalando 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