You are on page 1of 237

Standard print

manual template
Daruma Automao

Title page 1
Use this page to introduce the product
by <AUTHOR>

This is "Title Page 1" - you may use this page to introduce
your product, show title, author, copyright, company logos,
etc.
This page intentionally starts on an odd page, so that it is on
the right half of an open book from the readers point of view.
This is the reason why the previous page was blank (the
previous page is the back side of the cover)

Daruma Framework
Daruma Automao
All rights reserved. No parts of this work may be reproduced in any form or by any means - graphic, electronic, or
mechanical, including photocopying, recording, taping, or information storage and retrieval systems - without the
written permission of the publisher.
Products that are referred to in this document may be either trademarks and/or registered trademarks of the
respective owners. The publisher and the author make no claim to these trademarks.
While every precaution has been taken in the preparation of this document, the publisher and the author assume no
responsibility for errors or omissions, or for damages resulting from the use of information contained in this document
or from the use of programs and source code that may accompany it. In no event shall the publisher and the author be
liable for any loss of profit or any other commercial damage caused or alleged to have been caused directly or
indirectly by this document.
Printed: junho 2005 in (whereever you are located)

Publisher

Special thanks to:

Technical Editors

All the people who contributed to this document, to mum and dad
and grandpa, to my sisters and brothers and mothers in law, to our
secretary Kathrin, to the graphic artist who created this great
product logo on the cover page (sorry, don't remember your name
at the moment but you did a great work), to the pizza service down
the street (your daily Capricciosas saved our lives), to the copy
shop where this document will be duplicated, and and and...

...enter name...
...enter name...

Last not least, we want to thank EC Software who wrote this great
help tool called HELP & MANUAL which printed this document.

...enter name...
Managing Editor
...enter name...

Cover Designer
...enter name...
Team Coordinator
...enter name...
Production
...enter name...

Daruma Framework

Table of Contents
Foreword

Part I Daruma Framework

1 Algumas informaes
...................................................................................................................................
sobre este manual
3
2 Lista dos Mtodos
...................................................................................................................................
disponveis na DLL e seus ndices
5
3 Configurando...................................................................................................................................
a DLL
5
4 Declarando a ...................................................................................................................................
DLL
5
5 Driver Daruma...................................................................................................................................
Observer para Aplicativos DOS/Win 16 Bits
5
O Qu o Driver
..........................................................................................................................................................
Daruma Observer?
5
Instalando o Driver
..........................................................................................................................................................
Observer
5
Preparando seu
..........................................................................................................................................................
Aplicativo para o Observer
5
Graficamente como
..........................................................................................................................................................
Funciona o Observer
5
Fues de Configuraes
..........................................................................................................................................................
do Observer
5
Funes de.........................................................................................................................................................
Configurao do Observer
5
Daruma_Observer_Registry_Hibernar
.........................................................................................................................................................
(ndice 54)
6
Daruma_Observer_Registry_Hibernar_Frequencia
.........................................................................................................................................................
(ndice 56)
6
Daruma_Observer_Registry_Hibernar_TimeOut
.........................................................................................................................................................
(ndice 55)
7
Daruma_Observer_Registry_Execucao
.........................................................................................................................................................
(ndice 53)
7
Daruma_Observer_Registry_Log
.........................................................................................................................................................
(ndice 58)
7
Daruma_Observer_Registry_Log_Path
.........................................................................................................................................................
(ndice 59)
8
Daruma_Observer_Registry_Entrada
.........................................................................................................................................................
(ndice 50)
8
Daruma_Observer_Registry_Saida
.........................................................................................................................................................
(ndice 52)
8
Daruma_Observer_Registry_Produto
.........................................................................................................................................................
(ndice 61)
9

6 Mtodos para...................................................................................................................................
Impressora Fiscal
9
Mtodos de Cupom
..........................................................................................................................................................
Fiscal
9
Daruma_FI_AbreCupom(ndice
.........................................................................................................................................................
1000)
9
Daruma_FI_VendeItem(ndice
.........................................................................................................................................................
1001)
10
Daruma_FI_VendeItemDepartamento(ndice
.........................................................................................................................................................
1004)
11
Daruma_FI_VendeItemTresDecimais(ndice
.........................................................................................................................................................
1019)
13
Daruma_FI_CancelaCupom(ndice
.........................................................................................................................................................
1014)
14
Daruma_FI_CancelaItemAnterior(ndice
.........................................................................................................................................................
1005)
14
Daruma_FI_CancelaItemGenerico(ndice
.........................................................................................................................................................
1006)
15
Daruma_FI_IniciaFechamentoCupom(ndice
.........................................................................................................................................................
1007)
16
Daruma_FI_EfetuaFormaPagamento(ndice
.........................................................................................................................................................
1008)
16
Daruma_FI_EfetuaFormaPagamentoDescricaoForma(ndice
.........................................................................................................................................................
1009)
17
Daruma_FI_FechaCupomResumido(ndice
.........................................................................................................................................................
1012)
18
Daruma_FI_FechaCupom(ndice
.........................................................................................................................................................
1011)
19
Daruma_FI_TerminaFechamentoCupom(ndice
.........................................................................................................................................................
1010)
20
Daruma_FI_EstornoFormasPagamento(ndice
.........................................................................................................................................................
1017)
20
Daruma_FI_IdentificaConsumidor(ndice
.........................................................................................................................................................
1013)
21
Daruma_FI_EmitirCupomAdicional(ndice
.........................................................................................................................................................
1018)
22
Daruma_FI_UsaUnidadeMedida(ndice
.........................................................................................................................................................
1016)
22
Daruma_FI_AumentaDescricaoItem(ndice
.........................................................................................................................................................
1015)
23
Mtodos de Recebimentos,
..........................................................................................................................................................
No Fiscais e Vinculados
24
Daruma_FI_AbreComprovanteNaoFiscalVinculado(ndice
.........................................................................................................................................................
1203)
24
Daruma_FI_UsaComprovanteNaoFiscalVinculado(ndice
.........................................................................................................................................................
1204)
24
Daruma_FI_FechaComprovanteNaoFiscalVinculado(ndice
.........................................................................................................................................................
1205)
25
Daruma Automao

Contents

II

Daruma_FI_AbreRelatorioGerencial(ndice
.........................................................................................................................................................
1208)
25
Daruma_FI_EnviarTextoCNF(ndice
.........................................................................................................................................................
1209)
26
Daruma_FI_FechaRelatorioGerencial(ndice
.........................................................................................................................................................
1201)
26
Daruma_FI_AbreRecebimentoNaoFiscal(ndice
.........................................................................................................................................................
1210)
27
Daruma_FI_EfetuaFormaPagamentoNaoFiscal(ndice
.........................................................................................................................................................
1211)
28
Daruma_FI_FundoCaixa(ndice
.........................................................................................................................................................
1212)
29
Daruma_FI_LeituraMemoriaFiscalData(ndice
.........................................................................................................................................................
1102)
29
Daruma_FI_LeituraMemoriaFiscalReducao(ndice
.........................................................................................................................................................
1103)
30
Daruma_FI_LeituraMemoriaFiscalSerialData(ndice
.........................................................................................................................................................
1104)
31
Daruma_FI_LeituraMemoriaFiscalSerialReducao(ndice
.........................................................................................................................................................
1105)
31
Daruma_FI_LeituraX(ndice
.........................................................................................................................................................
1101)
32
Daruma_FI_RecebimentoNaoFiscal(ndice
.........................................................................................................................................................
1202)
33
Daruma_FI_ReducaoZ(ndice
.........................................................................................................................................................
1100)
33
Daruma_FI_ReducaoZAjustaDataHora(ndice
.........................................................................................................................................................
11006)
34
Daruma_FI_RelatorioGerencial(ndice
.........................................................................................................................................................
1200)
35
Daruma_FI_Sangria(ndice
.........................................................................................................................................................
1206)
35
Daruma_FI_Suprimento(ndice
.........................................................................................................................................................
1207)
36
Mtodos Gaveta
..........................................................................................................................................................
Autenticao e Outras
36
Daruma_FI_VerificaDocAutenticacao(ndice
.........................................................................................................................................................
1301)
36
Daruma_FI_Autenticacao(ndice
.........................................................................................................................................................
1300)
37
Daruma_FI_AutenticacaoStr(ndice
.........................................................................................................................................................
1302)
47
Daruma_FI_VerificaEstadoGaveta(ndice
.........................................................................................................................................................
1311)
47
Daruma_FI_VerificaEstadoGavetaStr(ndice
.........................................................................................................................................................
1312)
48
Daruma_FI_AcionaGaveta(ndice
.........................................................................................................................................................
1310)
49
Daruma_FI_AbrePortaSerial(ndice
.........................................................................................................................................................
600)
49
Daruma_FI_FechaPortaSerial(ndice
.........................................................................................................................................................
601)
49
Daruma_FI_AberturaDoDia(ndice
.........................................................................................................................................................
604)
50
Daruma_FI_FechamentoDoDia(ndice
.........................................................................................................................................................
605)
51
Daruma_FI_ImprimeConfiguracoesImpressora(ndice
.........................................................................................................................................................
607)
51
Mtodos Pogramao
..........................................................................................................................................................
e Configurao
52
Daruma_FI_ProgramaAliquota(ndice
.........................................................................................................................................................
302)
52
Daruma_FI_NomeiaTotalizadorNaoSujeitoIcms(ndice
.........................................................................................................................................................
304)
53
Daruma_FI_ProgramaFormasPagamento(ndice
.........................................................................................................................................................
301)
54
Daruma_FI_ProgramaOperador(ndice
.........................................................................................................................................................
310)
54
Daruma_FI_ProgramaArredondamento(ndice
.........................................................................................................................................................
305)
55
Daruma_FI_ProgramaTruncamento(ndice
.........................................................................................................................................................
306)
55
Daruma_FI_LinhasEntreCupons(ndice
.........................................................................................................................................................
307)
56
Daruma_FI_EspacoEntreLinhas(ndice
.........................................................................................................................................................
308)
56
Daruma_FI_ProgramaHorarioVerao(ndice
.........................................................................................................................................................
303)
57
Daruma_FI_EqualizaFormasPgto(ndice
.........................................................................................................................................................
311)
57
Daruma_FI_ProgramaVinculados(ndice
.........................................................................................................................................................
312)
58
Daruma_FI_ProgramaFormasPgtoSemVincular(ndice
.........................................................................................................................................................
313)
58
Daruma_FI_CfgFechaAutomaticoCupom(ndice
.........................................................................................................................................................
400)
59
Daruma_FI_CfgRedZAutomatico(ndice
.........................................................................................................................................................
401)
60
Daruma_FI_CfgImpEstGavVendas(ndice
.........................................................................................................................................................
411)
60
Daruma_FI_CfgLeituraXAuto(ndice
.........................................................................................................................................................
402)
61
Daruma_FI_CfgCalcArredondamento(ndice
.........................................................................................................................................................
403)
61
Daruma_FI_CfgHorarioVerao(ndice
.........................................................................................................................................................
404)
61
Daruma_FI_CfgSensorAut(ndice
.........................................................................................................................................................
405)
62
Daruma_FI_CfgCupomAdicional(ndice
.........................................................................................................................................................
412)
63
Daruma_FI_CfgEspacamentoCupons(ndice
.........................................................................................................................................................
407)
63
Daruma_FI_CfgHoraMinReducaoZ(ndice
.........................................................................................................................................................
408)
64
Daruma_FI_CfgLimiarNearEnd(ndice
.........................................................................................................................................................
409)
64
Daruma_FI_CfgPermMensPromCNF(ndice
.........................................................................................................................................................
410)
65
Daruma Automao

III

Daruma Framework
Regra de .........................................................................................................................................................
Configurao do Registry
65
Valores do
.........................................................................................................................................................
Registry para o ECF
66
Daruma_Registry_AlteraRegistry
.........................................................................................................................................................
(ndice 17)
68
Daruma_Registry_Porta(ndice
.........................................................................................................................................................
1)
68
Daruma_Registry_Path(ndice
.........................................................................................................................................................
2)
69
Daruma_Registry_Status(ndice
.........................................................................................................................................................
3)
70
Daruma_Registry_StatusFuncao(ndice
.........................................................................................................................................................
4)
70
Daruma_Registry_Retorno(ndice
.........................................................................................................................................................
5)
71
Daruma_Registry_ControlePorta(ndice
.........................................................................................................................................................
6)
71
Daruma_Registry_ModoGaveta(ndice
.........................................................................................................................................................
7)
71
Daruma_Registry_ConfigRede(ndice
.........................................................................................................................................................
8)
72
Daruma_Registry_Log(ndice
.........................................................................................................................................................
9)
72
Daruma_Registry_NomeLog(ndice
.........................................................................................................................................................
10)
72
Daruma_Registry_Separador(ndice
.........................................................................................................................................................
11)
73
Daruma_Registry_SeparaMsgPromo(ndice
.........................................................................................................................................................
12)
74
Daruma_Registry_Vende1Linha(ndice
.........................................................................................................................................................
13)
74
Daruma_Registry_XAutomatica(ndice
.........................................................................................................................................................
14)
75
Daruma_Registry_ZAutomatica(ndice
.........................................................................................................................................................
15)
75
Daruma_Registry_TerminalServer(ndice
.........................................................................................................................................................
21)
76
Daruma_Registry_AbrirDiaFiscal(ndice
.........................................................................................................................................................
23)
76
Daruma_Registry_IgnorarPoucoPapel(ndice
.........................................................................................................................................................
24)
77
Daruma_Registry_ImprimeRegistry(ndice
.........................................................................................................................................................
18)
77
Daruma_Registry_RetornaValor(ndice
.........................................................................................................................................................
19)
78
Daruma_Registry_Default(ndice
.........................................................................................................................................................
20)
79
Daruma_Registry_ErroExtendidoOk(ndice
.........................................................................................................................................................
22)
79
Daruma_Registry_Velocidade(ndice
.........................................................................................................................................................
28)
80
Daruma_Registry_AplMensagem1(ndice
.........................................................................................................................................................
36)
80
Daruma_Registry_AplMensagem2(ndice
.........................................................................................................................................................
37)
81
Mtodos de Informao,
..........................................................................................................................................................
Status e Retornos
82
Daruma FrameworkTabela
.........................................................................................................................................................
de Retornos ST1 e ST2
82
Daruma_FI_StatusCupomFiscal(ndice
.........................................................................................................................................................
1404)
83
Daruma_FI_StatusRelatorioGerencial(ndice
.........................................................................................................................................................
1405)
84
Daruma_FI_StatusComprovanteNaoFiscalVinculado(ndice
.........................................................................................................................................................
1403)
84
Daruma_FI_VerificaImpressoraLigada(ndice
.........................................................................................................................................................
1400]
85
Daruma_FI_VerificaModeloECF(ndice
.........................................................................................................................................................
1469)
85
Daruma_FI_VerificaHorarioVerao(ndice
.........................................................................................................................................................
1494)
86
Daruma_FI_VerificaZPendente(ndice
.........................................................................................................................................................
1488)
86
Daruma_FI_VerificaXPendente(ndice
.........................................................................................................................................................
1489)
87
Daruma_FI_VerificaDiaAberto(ndice
.........................................................................................................................................................
1487)
87
Daruma_FI_VerificaTipoImpressora(ndice
.........................................................................................................................................................
1444)
88
Daruma_FI_VerificaDescricaoFormasPagamento(ndice
.........................................................................................................................................................
1449)
88
Daruma_FI_VerificaFormasPagamento(ndice
.........................................................................................................................................................
1442)
89
Daruma_FI_VerificaFormasPagamentoEx(ndice
.........................................................................................................................................................
1448)
89
Daruma_FI_VerificaEstadoImpressora(ndice
.........................................................................................................................................................
1401)
90
Daruma_FI_VerificaAliquotasIss(ndice
.........................................................................................................................................................
1440)
91
Daruma_FI_VerificaIndiceAliquotasIss(ndice
.........................................................................................................................................................
1445)
91
Daruma_FI_VerificaTotalizadoresNaoFiscais(ndice
.........................................................................................................................................................
1436)
92
Daruma_FI_VerificaTotalizadoresNaoFiscaisEx(ndice
.........................................................................................................................................................
1486)
92
Daruma_FI_VerificaEpromConectada(ndice
.........................................................................................................................................................
1432)
93
Daruma_FI_VerificaRecebimentosNaoFiscal(ndice
.........................................................................................................................................................
1443)
93
Daruma_FI_VerificaTruncamento(ndice
.........................................................................................................................................................
1439)
94
Daruma_FI_VerificaModoOperacao(ndice
.........................................................................................................................................................
1431)
95
Daruma_FI_VerificaTotalizadoresParciais(ndice
.........................................................................................................................................................
1407)
95
Daruma_FI_ClicheProprietario(ndice
.........................................................................................................................................................
1424)
96
Daruma Automao

Contents

IV

Daruma_FI_ClicheProprietarioEx(ndice
.........................................................................................................................................................
1467)
96
Daruma_FI_NumeroCaixa(ndice
.........................................................................................................................................................
1425)
97
Daruma_FI_NumeroLoja(ndice
.........................................................................................................................................................
1426)
97
Daruma_FI_NumeroSerie(ndice
.........................................................................................................................................................
1411)
98
Daruma_FI_VersaoFirmware(ndice
.........................................................................................................................................................
1412)
98
Daruma_FI_CGC_IE(ndice
.........................................................................................................................................................
1413)
99
Daruma_FI_NumeroCupom(ndice
.........................................................................................................................................................
1417)
99
Daruma_FI_COO(ndice
.........................................................................................................................................................
1468)
100
Daruma_FI_MinutosImprimindo(ndice
.........................................................................................................................................................
1430)
100
Daruma_FI_MinutosLigada(ndice
.........................................................................................................................................................
1429)
101
Daruma_FI_NumeroSubstituicoesProprietario(ndice
.........................................................................................................................................................
1422)
101
Daruma_FI_NumeroIntervencoes(ndice
.........................................................................................................................................................
1421)
102
Daruma_FI_NumeroReducoes(ndice
.........................................................................................................................................................
1420)
102
Daruma_FI_NumeroCuponsCancelados(ndice
.........................................................................................................................................................
1419)
103
Daruma_FI_NumeroOperacoesNaoFiscais(ndice
.........................................................................................................................................................
1418)
103
Daruma_FI_DataHoraImpressora(ndice
.........................................................................................................................................................
1434)
104
Daruma_FI_DataHoraReducao(ndice
.........................................................................................................................................................
1437)
104
Daruma_FI_DataMovimento(ndice
.........................................................................................................................................................
1438)
105
Daruma_FI_ContadoresTotalizadoresNaoFiscais(ndice
.........................................................................................................................................................
1435)
105
Daruma_FI_LerAliquotasComIndice(ndice
.........................................................................................................................................................
1483)
106
Daruma_FI_VendaBruta(ndice
.........................................................................................................................................................
1484)
106
Daruma_FI_GrandeTotal(ndice
.........................................................................................................................................................
1414)
107
Daruma_FI_Descontos(ndice
.........................................................................................................................................................
1415)
107
Daruma_FI_Acrescimos(ndice
.........................................................................................................................................................
1441)
108
Daruma_FI_Cancelamentos(ndice
.........................................................................................................................................................
1416)
108
Daruma_FI_DadosUltimaReducao(ndice
.........................................................................................................................................................
1410)
108
Daruma_FI_SubTotal(ndice
.........................................................................................................................................................
1408)
110
Daruma_FI_RetornoAliquotas
.........................................................................................................................................................
(ndice 1406)
110
Daruma_FI_ValorPagoUltimoCupom
.........................................................................................................................................................
(ndice 1433)
111
Daruma_FI_UltimaFormaPagamento
.........................................................................................................................................................
(ndice 1446) (copy)
111
Daruma_FI_ValorFormaPagamento
.........................................................................................................................................................
(ndice 1446)
112
Daruma_FI_ValorTotalizadorNaoFiscal
.........................................................................................................................................................
(ndice 1447)
112
Daruma_FI_UltimoItemVendido
.........................................................................................................................................................
(ndice 1423)
113
Daruma_FI_TipoUltimoDocumento
.........................................................................................................................................................
(ndice 1493)
113
Daruma_FI_MapaResumo(ndice
.........................................................................................................................................................
602)
114
Daruma_FI_RelatorioTipo60Analitico(ndice
.........................................................................................................................................................
605)
115
Daruma_FI_RelatorioTipo60Mestre(ndice
.........................................................................................................................................................
606)
116
Daruma_FI_FlagsFiscais(ndice
.........................................................................................................................................................
1428)
117
Daruma_FI_PalavraStatus(ndice
.........................................................................................................................................................
1481)
118
Daruma_FI_PalavraStatusBinario(ndice
.........................................................................................................................................................
1482)
120
Daruma_FI_SimboloMoeda(ndice
.........................................................................................................................................................
1427)
122
Daruma_FI_RetornoImpressora(ndice
.........................................................................................................................................................
1402)
122
Daruma_FI_RetornaErroExtendido(ndice
.........................................................................................................................................................
1470 )
123
Daruma_FI_RetornaAcrescimoNF(ndice
.........................................................................................................................................................
1451)
125
Daruma_FI_RetornaCFCancelados(ndice
.........................................................................................................................................................
1452)
125
Daruma_FI_RetornaCNFCancelados(ndice
.........................................................................................................................................................
1453)
126
Daruma_FI_RetornaCLX(ndice
.........................................................................................................................................................
1454)
126
Daruma_FI_RetornaCNFNV(ndice
.........................................................................................................................................................
1455)
127
Daruma_FI_RetornaCNFV(ndice
.........................................................................................................................................................
1456)
127
Daruma_FI_RetornaCRO(ndice
.........................................................................................................................................................
1457)
128
Daruma_FI_RetornaCRZ(ndice
.........................................................................................................................................................
1458)
128
Daruma_FI_RetornaCRZRestante(ndice
.........................................................................................................................................................
1459)
129
Daruma_FI_RetornaCancelamentoNF(ndice
.........................................................................................................................................................
1460)
129
Daruma_FI_RetornaDescontoNF(ndice
.........................................................................................................................................................
1461)
130
Daruma Automao

Daruma Framework
Daruma_FI_RetornaGNF(ndice
.........................................................................................................................................................
1462)
130
Daruma_FI_RetornaTempoImprimindo(ndice
.........................................................................................................................................................
1463)
131
Daruma_FI_RetornaTempoLigado(ndice
.........................................................................................................................................................
1464)
131
Daruma_FI_RetornaTotalPagamentos(ndice
.........................................................................................................................................................
1465)
132
Daruma_FI_RetornaTroco(ndice
.........................................................................................................................................................
1466)
132
Daruma_FI_RetornaRegistradoresNaoFiscais(ndice
.........................................................................................................................................................
1484)
133
Daruma_FI_RetornaRegistradoresFiscais(ndice
.........................................................................................................................................................
1485)
135
Daruma_FI_RetornaValorComprovanteNaoFiscal(ndice
.........................................................................................................................................................
1495)
135
Daruma_FI_RetornaIndiceComprovanteNaoFiscal(ndice 1496)
??????????
......................................................................................................................................................... 136

7 Mtodos Exclusivos
...................................................................................................................................
para a Impressora FS2000
137
Daruma_Registry_FS2000_CupomAdicional(ndice
..........................................................................................................................................................
35)
137
Daruma_Registry_TempoEsperaCheque(ndice
..........................................................................................................................................................
36)
137
Daruma_FI2000_StatusCheque(ndice
..........................................................................................................................................................
5015)
138
Daruma_FI2000_ImprimirCheque(ndice
..........................................................................................................................................................
5016)
138
Daruma_FI2000_ImprimirVersoCheque(ndice
..........................................................................................................................................................
5017)
139
Daruma_FI2000_LiberarCheque(ndice
..........................................................................................................................................................
5008)
140
Daruma_FI2000_LeituraCodigoMICR(ndice
..........................................................................................................................................................
5007)
140
Daruma_FI2000_CancelarCheque(ndice
..........................................................................................................................................................
5026)
141
Daruma_FI2000_LeituraTabelaCheque(ndice
..........................................................................................................................................................
5011)
141
Daruma_FI2000_CarregarCheque(ndice
..........................................................................................................................................................
5009)
141
Daruma_FI2000_CorrigirGeometriaCheque(ndice
..........................................................................................................................................................
5010)
142
Daruma_FI2000_DescontoSobreItemVendido(ndice
..........................................................................................................................................................
5018)
143
Daruma_FI2000_AcrescimosICMSISS(ndice
..........................................................................................................................................................
5021)
144
Daruma_FI2000_CancelamentosICMSISS(ndice
..........................................................................................................................................................
5022)
144
Daruma_FI2000_DescontosICMSISS(ndice
..........................................................................................................................................................
5023)
145
Daruma_FI2000_LeituraIformacaoUltimoDOC(ndice
..........................................................................................................................................................
5024)
145
Daruma_FI2000_LeituraIformacaoUltimosCNF(ndice
..........................................................................................................................................................
5025)
146
Daruma_FI2000_AbreRelatorioGerencial(ndice
..........................................................................................................................................................
5013)
146
Daruma_FI2000_CriaRelatorioGerencial(ndice
..........................................................................................................................................................
5012)Falta exemplo em Delphi!!!!!!
147
Daruma_FI2000_VerificaRelatorioGerencial(ndice
..........................................................................................................................................................
5014)
148
Daruma_FI2000_SegundaViaCNFV(ndice
..........................................................................................................................................................
5019)
148
Daruma_FI2000_CancelamentoCNFV(ndice
..........................................................................................................................................................
5020)
149

8 Mtodos Exclusivos
...................................................................................................................................
para TEF
149
Implementando
..........................................................................................................................................................
TEF com a Daruma32.dll
149
Daruma_TEF_SetFocus(ndice
..........................................................................................................................................................
1902)
151
Daruma_TEF_FechaRelatorio(ndice
..........................................................................................................................................................
1904)
151
Daruma_TEF_ImprimirResposta(ndice
..........................................................................................................................................................
1901)
152
Daruma_TEF_ImprimirRespostaCartao(ndice
..........................................................................................................................................................
1905)
153
Daruma_TEF_EsperarArquivo(ndice
..........................................................................................................................................................
1900)
155
Daruma_TEF_TravarTeclado(ndice
..........................................................................................................................................................
1903)
156
Daruma_TEF_Tratando
..........................................................................................................................................................
os Erros
157

9 Mtodos para
...................................................................................................................................
Impressora DUAL
163
Daruma_DUAL_ImprimirTexto
..........................................................................................................................................................
(ndice 4001)
163
Daruma_DUAL_ImprimirArquivo
..........................................................................................................................................................
(ndice 4008)
170
Daruma_DUAL_VerificaSatus
..........................................................................................................................................................
(ndice 4002) ?????Falta ex em delphi
171
Daruma_DUAL_VerificaDocumento
..........................................................................................................................................................
(ndice 4003)
171
Daruma_DUAL_Autenticar
..........................................................................................................................................................
(ndice 4004)
172
Daruma_DUAL_AcionaGaveta
..........................................................................................................................................................
(ndice 4005)
173
Mtodos para
..........................................................................................................................................................
Impresso na DUAL
174
Trabalhando
.........................................................................................................................................................
com a DUAL NA PARALELA (LPT1, LPT2)
174
Resolvendo
.........................................................................................................................................................
Problemas de Comunicao com a PARALELA
174
Utilizando
.........................................................................................................................................................
as Tags de Impresso de Texto
175
Daruma Automao

Contents

VI

Teste Completo
.........................................................................................................................................................
com as Tags de Impresso de Texto
179
10 Exemplos
.........................................................................................................................................................
utilizando as tags de formatacao
182
Exemplo DUAL.........................................................................................................................................
01
182
Exemplo DUAL.........................................................................................................................................
02
184
Exemplo DUAL.........................................................................................................................................
03 (Tabulaes)
185
Exemplo DUAL.........................................................................................................................................
04
186
Exemplo DUAL.........................................................................................................................................
05
187
Exemplo DUAL.........................................................................................................................................
06
188
Exemplo DUAL.........................................................................................................................................
07
189
Exemplo DUAL.........................................................................................................................................
08
190
Exemplo DUAL.........................................................................................................................................
09
192
Exemplo DUAL.........................................................................................................................................
10
193
Mtodos para
..........................................................................................................................................................
a DUAL de Configurao do Registry
194
Daruma_Registry_DUAL_Enter
.........................................................................................................................................................
(ndice 30)
194
Daruma_Registry_DUAL_Espera
.........................................................................................................................................................
(ndice 32)
194
Daruma_Registry_DUAL_ModoEscrita
.........................................................................................................................................................
(ndice 33)
195
Daruma_Registry_DUAL_Porta
.........................................................................................................................................................
(ndice 31)
195
Daruma_Registry_DUAL_Tabulacao
.........................................................................................................................................................
(ndice 31)
196

10 Mtodos para
...................................................................................................................................
o TA1000
197
Mtodos para
..........................................................................................................................................................
Produtos
197
Daruma_TA1000_CadastrarProdutos(ndice
.........................................................................................................................................................
5420)
197
Daruma_TA1000_ConsultarProdutos(ndice
.........................................................................................................................................................
5440)
198
Daruma_TA1000_AlterarProdutos(ndice
.........................................................................................................................................................
5410)
200
Daruma_TA1000_EliminarProdutos(ndice
.........................................................................................................................................................
5430)
201
Daruma_TA1000_EnviarBancoProdutos(ndice
.........................................................................................................................................................
5350)
202
Daruma_TA1000_ReceberBancoProdutos(ndice
.........................................................................................................................................................
5360)
203
Daruma_TA1000_ReceberProdutosVendidos(ndice
.........................................................................................................................................................
5363)
204
Daruma_TA1000_ZerarProdutos(ndice
.........................................................................................................................................................
5450)
205
Daruma_TA1000_ZerarProdutosVendidos(ndice
.........................................................................................................................................................
5456)
205
Mtodos para
..........................................................................................................................................................
Usurios
206
Daruma_TA1000_CadastrarUsuarios(ndice
.........................................................................................................................................................
5422)
206
Daruma_TA1000_ConsultarUsuarios(ndice
.........................................................................................................................................................
5443)
207
Daruma_TA1000_AlterarUsuarios(ndice
.........................................................................................................................................................
5412)
208
Daruma_TA1000_EliminarUsuarios(ndice
.........................................................................................................................................................
5432)
209
Daruma_TA1000_EnviarBancoUsuarios(ndice
.........................................................................................................................................................
5351)
209
Daruma_TA1000_ReceberBancoUsuarios(ndice
.........................................................................................................................................................
5361)
210
Daruma_TA1000_ZerarUsuarios(ndice
.........................................................................................................................................................
5452)
211
Teste Completo
..........................................................................................................................................................
Gerando Banco de Produtos e Usuarios
211
Daruma .........................................................................................................................................................
TA1000 Gerar Banco com Produtos
211
Daruma .........................................................................................................................................................
TA1000 Gerar Banco com Usuarios
212

Index

Daruma Automao

214

Foreword

Foreword

This is just another title page


placed between table of contents
and topics

Daruma Automao

Top Level Intro


This page is printed before a new
top-level chapter starts

Part

Daruma Framework

Daruma Framework

1.1

Algumas informaes sobre este manual

Manual Eletrnico Verso 2.00

Este manual e nico para toda a nossa linha de impressoras e terminais, no


importando a linguagem de seu software, nem tampouco o sistema
operacioal.

A nossa dll tambem nica ou seja um FRAMEWORK, que voc pode utilizar
para qualquer um de nossos produtos.

Se voc desenvolvedor em liguangem DOS ou WIN 16b, poder utilizar o


Odserver, que o nosso driver voltado para linguagens 16b.

Emuladores - Infelizmente no temos emuladores, o que temos um programa de


incentivo, onde voc desenvolvedor poder estar adquinrindo uma impressora para
desenvolvimento a subsidiada, preo de fbrica.
Outras Generalidades deste manual:
100% auto-explicativo, de fcil pesquisa.
Objetivo, dinmico.
Auto-suficiente.
Atende a todos os produtos.

Daruma Automao

Daruma Framework

Funes nicas para Windows e Linux.

Nossos canais de Suporte Tcnico Especializado a Desenvolvedores Daruma


so:
Ligao gratuta via internet
Skype: daruma_suporte_alexandre
Skype: claudenir_andrade
Skype: daruma_suporte_cristian
Por email
suporte@daruma.com.br
sac@daruma.com.br
suporte.alexandre@daruma.com.br
suporte.cristian@daruma.com.br
Via site
http://www.daruma.com.br/ddc/desenvolve.asp
Por telefone
(41)3361-6005
(41)3361-6076

Daruma Automao

001 - Indica que o Mtodo no Foi Executado - Veja Tabela de Retornos.


Exemplo 3)

Daruma

Exemplo de Resposta a um mtodo de Solicitao do Nmero do Cupom do ECF:


001;006;000;000;00028;
001 - Indica que a Funo Devolveu 1(indicativo de OK).
Framework 006 - ACK indica que o Protocolo de Comunicao est OK.
000 - Indica que No Existe Erro - Veja Tabela de Retornos.
000 - Indica que No Existe Erro - Veja Tabela de Retornos.
00028 - Nmero do Cupom.

1.2

Lista dos Mtodos disponveis na DLL e seus ndices

1.5.4

Graficamente como Funciona o Observer

O Driver OBSERVER basicamente Varre o Diretorio que nele foi configurado, no Menu TOOLS->
CONFIGURAES voc pode configurar o nome do arquivo que voc deseja que seja o arquivo de comado
e o nome do arquivo que voc deseja que seja o arquivo de resposta, poder configurar tambm o path
de entrada (onde os arquivos de comandos sero criados) e o path de saida (onde os arquivos de
resposta do Observer) sero criados.

1.5.5

Fues de Configuraes do Observer

1.5.5.1

Funes de Configurao do Observer

O Driver Observer o nico driver Desenvolvido no mercado de automao comercial, que permite o uso
de um nico Protocolo entre os aplicativos DOS e Windows.
Este Driver reside no windows, permitindo que Aplicativos DOS/Win 16 bits, possam Acessar ao ECF com
maior Facilidade tendo em vista a necessidade de se ter windows nos Equipamentos para a Realizao do
TEF. Com isso Desenvolvemos o Observer que ficar residente na rea de Relgio do Windows esperando
que seja enviado mtodos para ele.
O Driver Totalmente configurvel atravs do Registry, porm voce poder setar as configuraes do
Observer no Incio de seu aplicativo, basta chamar os mtodos de Configurao do Registry.

Daruma Automao

Daruma Framework

Estas so as Chaves Existentes para a Configurao do Observer e estes so os seus Valores


DEFAULT:
[HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA]
[HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\OBSERVER]
Hibernar
=0
Hibernar_Frequencia = 1000
Hibernar_Timeout
= 10000000
Local_Execucao
=1
Log
=0
Log_Path
= C:\Observer.log
Path_Entrada
= C:\DARUMA.CMD
Path_Log_Aquivo
= C:\OBSERVER.LOG
Path_Saida
= C:\DARUMA.RET
Produto
= FS345
Protocolo
=0
Separador
=;

1.5.5.2

Daruma_Observer_Registry_Hibernar (ndice 54)


Definio do Mtodo:
Configura se o Observer ir Hibernar, se aps X Verificaes se o arquivo de comando existe, ele entra
em Hibernao economizando assim Tempo de Processamento e liberando o aplicativo para outros
processos.
Parmetros:
String: com o Valor desejado ("0" ou "1").
0 - No Hibernar - buscar sempre arquivo de comando.
1 - Hibernar.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Valor Defult da Chave = 0

1.5.5.3

Daruma_Observer_Registry_Hibernar_Frequencia (ndice 56)


Definio do Mtodo:
Configura de "quanta" em "quantas" vezes o Observer ir Hibernar, exemplo: "100" - com este valor o
Observer ir varrer 100 vezes em busca do Arquivo, e no encontrando nenhum arquivo de comando,
entra em Hibernao.
Parmetros:
String: com o Valor desejado ("XXXXXX").
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Valor Defult da Chave = 1000

Daruma Automao

1.5.5.4

Daruma Framework

Daruma_Observer_Registry_Hibernar_TimeOut (ndice 55)


Definio do Mtodo:
Configura por quanto tempo o Observer ficar Hibernando, ou seja, uma vez que o Observer entra em
Hibernao, quanto tempo ficar "dormindo" at sair da Hibernao - Valor em Milisegundos.
Parmetros:
String: com o Valor desejado ("XXXXXX").
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Valor Defult da Chave = 10000000

1.5.5.5

Daruma_Observer_Registry_Execucao (ndice 53)


Definio do Mtodo:
Configura o Local em que o OBSERVER ficar em execuo.
Parmetros:
String: com o Valor do Local desejado ("1" ou "2" ou "3")
1 - Relogio (rea de Notificao do Windows)
2 - Minizado na Barra de Tarefas
3 - Maximizado na Tela (Centralizado na Tela)
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Valor Defult da Chave = 1

1.5.5.6

Daruma_Observer_Registry_Log (ndice 58)


Definio do Mtodo:
Configura se o Observer ir Fazer Log dos comandos enviados e Recebidos ou no.
Parmetros:
String: com o Valor desejado ("0" ou "1").
0 - Nao Faz Log.
1 - Faz Log.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Valor Defult da Chave = 0

Daruma Automao

Daruma Framework

1.5.5.7

Daruma_Observer_Registry_Log_Path (ndice 59)


Definio do Mtodo:
Configura o Path + nome do Log desejado, esta chave s tem Efeito caso a Chave LOG estiver Ligada.
Parmetros:
String: com o Valor desejado ( Exemplo "C:\OBSERVER.LOG").
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Valor Defult da Chave = C:\Observer.log

1.5.5.8

Daruma_Observer_Registry_Entrada (ndice 50)


Definio do Mtodo:
Configura o Path + Nome do Arquivo de Comando que o OBSERVER dever esperar.
Parmetros:
String: com o Valor desejado ("C:\DARUMA.CMD")
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Valor Defult da Chave = C:\DARUMA.CMD

1.5.5.9

Daruma_Observer_Registry_Saida (ndice 52)


Definio do Mtodo:
Configura o Path + Nome do Arquivo de RESPOSTA que o OBSERVER ir Criar.
Parmetros:
String: com o Valor desejado ("C:\DARUMA.RET")
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Valor Defult da Chave =C:\DARUMA.RET

Daruma Automao

Daruma Framework

1.5.5.10 Daruma_Observer_Registry_Produto (ndice 61)


Definio do Mtodo:
Configura o Produto que ser Usado com o Observer.
Parmetros:
String: com o Valor desejado ("FS345")
Lista de Produtos
"FS345" - ECF Varejo.
"FS318" - ECF Restaurante.
"FS2000" - ECF Varejo Duas Estaes.
"TA1000" - MicroTerminal Daruma.
"DS300" - MiniImpressora - No Fiscal.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Valor Defult da Chave = FS345

1.6

Mtodos para Impressora Fiscal

1.6.1

Mtodos de Cupom Fiscal

1.6.1.1

Daruma_FI_AbreCupom(ndice 1000)
Definio do Mtodo:
Abre o cupom fiscal na impressora fiscal Daruma.
Parmetros do Mtodo: (Apenas 1 parmetro, opcional).
CPF ou CNPJ: Varivel String de at 29 carcteres com o CPF ou CNPJ.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_CPF_ou_CNPJ As String
Dim Int_Retorno as Integer
Str_CPF_ou_CNPJ = "45.543.915.730-08"
Int_Retorno = Daruma_FI_AbreCupom(Str_CPF_ou_CNPJ)
Exemplo em Delphi 7.0:
var Str_CPF_ou_CNPJ: String;
Str_CPF_ou_CNPJ := '45.543.915.730-08';
Int_Retorno := Daruma_FI_AbreCupom( pchar( Str_CPF_ou_CNPJ ) );

Daruma Automao

Daruma Framework

1.6.1.2

10

Daruma_FI_VendeItem(ndice 1001)
Definio do Mtodo:
Vende o tem na impressora fiscal.
Parmetros do Mtodo: (9 Parretros).
1.
Cdigo: String com at 13 carcteres contendo o cdigo do produto.
2.
Descrio: String at 29 carcteres com a descrio do produto.
3.
Alquota: String com o valor ou o ndice da alquota tributria. Se for o valor deve ser informado com
o tamanho de 4 carcteres ou 5 com a vrgula. Se for o ndice da alquota deve ser 2 carcteres.
Ex. (18,00 para o valor ou 05 para o ndice).
4.
TipoQuantidade: 1 (um) carctere indicando o tipo de quantidade. 'I' - Inteira e 'F' - Fracionria.
5.
Quantidade: String com at 4 dgitos para quantidade inteira e 7 dgitos para quantidade fracionria.
Na quantidade fracionria so 3 casas decimais.
6.
CasasDecimais: Inteiro indicando o nmero de casas decimais para o valor unitrio (2 ou 3).
7.
ValorUnitrio: String at 8 dgitos para valor unitrio.
8.
TipoDesconto: 1 (um) carctere indicando a forma do desconto. '$' desconto por valor e '%'
desconto percentual.
9.
ValorDesconto: String com at 8 dgitos para desconto por valor (2 casas decimais) e 4 dgitos para
desconto percentual.
Retorno do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Na impressora Duas Estaes FS2000, para se vender em apenas uma linha voce no poder ter
um Cdigo maior que 6 digitos e a descrio maior que 14 carcteres. EX.:Codigo->123456
Descricao->Laranja Baiana. Uma combinacao dessas permitira que a vanda sai em uma unica linha.
- Aliquotas de mesmo valor: Imagine que h duas alquotas com o valor 12% cadastradas na
impressora. A primeira cadastrada na posio 01 como ICMS e a outra na posio 05 como ISS. Se
voc informar o valor 1200 ou 12,00 no parmetro "alquota" o Mtodo ir imprimir o item usando a
alquota 01 de ICMS. o Mtodo l as alquotas da impressora e usa o ndice da primeira ocorrncia. Para
usar a alquota de ISS voc dever passar o ndice 05 e no o valor 1200 ou 12,00. Se voc no tiver
duas alquotas com o mesmo valor cadastradas na impressora use sempre o valor no parmetro
alquota.
- Outra maneira de fazer quando voc tiver duas alquotas de mesmo valor Ex: duas de 10,00% sendo
que uma refere-se a ICMS e a outra a ISS e voc quizer usar a que vem na 2 (segunda) posio, ou
seja a de ISS neste caso ento voc poder fazer isto passando apenas a letra 'I' para ICMS ou 'S' para
ISS, Ex: "I10,00" ou "S10,00".
- Na FS345 verso 1.11 (somente nesta verso), voc deve passar no parmetro descrio at 7
carcteres e no podera dar desconto, para dar desconto e vender um tem que tenha uma descrio
maior do que 7 carcteres, tenha desconto no tem use o Mtodo Daruma_FI_VendeItemTresDecimais.
Esta regra s vlida para a verso 1.11.
- Para vender tem em uma nica linha voc dever passar o tem com o cdigo de at 13 carcteres e
a descrio de at 6 carcteres ou vice-versa. Caso no se cumpra sta condio, ento ser vendido
automticamente em 2 linhas.
- Caso o tem tenha desconto ou trs decimais tambm ser vendido automticamente em 2 linhas.
- Se o cupom estiver fechado o Framework abrir o cupom para voc.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Codigo As String
Dim Str_Descricao As String
Dim Str_Aliquota As String
Dim Str_Tipo_de_Quantidade As String
Dim Str_Quantidade As String

Daruma Automao

11

Daruma Framework

Dim
Dim
Dim
Dim
Dim

Int_Casas_Decimais As Integer
Str_Valor_Unitario As String
Str_Tipo_de_Desconto As String
Str_Valor_do_Desconto As String
Int_Retorno as Integer

Str_Codigo = "987654"
Str_Descricao = "bolacha"
Str_Aliquota = "II"
Str_Tipo_de_Quantidade = "I"
Str_Quantidade = "1"
Int_Casas_Decimais = "2"
Str_Valor_Unitario = "0,10"
Str_Tipo_de_Desconto = "$"
Str_Valor_do_Desconto = "0,00"
Int_Retorno = Daruma_FI_VendeItem(Str_Codigo, Str_Descricao, Str_Aliquota, Str_Tipo_de_Quantidade,
_
Str_Quantidade, Int_Casas_Decimais, Str_Valor_Unitario, _
Str_Tipo_de_Desconto, Str_Valor_do_Desconto)
Exemplo em Delphi 7.0:
var
Str_Codigo: String;
Str_Descricao: String;
Str_Aliquota: String;
Str_Tipo_de_Quantidade: String;
Str_Quantidade: String;
Int_Casas_Decimais: Integer;
Str_Valor_Unitario: String;
Str_Tipo_de_Desconto: String;
Str_Valor_do_Desconto: String;
begin
Str_Codigo := '987654';
Str_Descricao := 'bolacha';
Str_Aliquota := 'II';
Str_Tipo_de_Quantidade := 'I';
Str_Quantidade := '1';
Int_Casas_Decimais := 2;
Str_Valor_Unitario := '0,10';
Str_Tipo_de_Desconto := '$';
Str_Valor_do_Desconto := '0,00';
Int_Retorno := Daruma_FI_VendeItem(pchar( Str_Codigo ), pchar( Str_Descricao ), pchar(
Str_Aliquota ), pchar(
Str_Tipo_de_Quantidade ), pchar( Str_Quantidade ), Int_Casas_Decimais,
pchar( Str_Valor_Unitario ), pchar(
Str_Tipo_de_Desconto ), pchar( Str_Valor_do_Desconto ) );

1.6.1.3

Daruma_FI_VendeItemDepartamento(ndice 1004)
Definio do Mtodo:
Vende o tem na impressora fiscal, podendo indicar a unidade de medida e tambm um ndice para o
departamento .
Parmetros do Mtodo: (9 Parretros).
1. Codigo: STRING at 49 caracteres com o cdigo do produto.
2. Descricao: STRING at 201 caracteres com a descrio do produto.
3. Aliquota: STRING com o valor ou o ndice da alquota tributria. Se for o valor deve ser informado
com o tamanho de 4 caracteres ou 5 com a vrgula. Se for o ndice da alquota deve ser 2 caracteres.
Ex. (18,00 para o valor ou 05 para o ndice)
4. ValorUnitario: STRING com at 9 dgitos para o valor (tres casas decimais).
5. Quantidade: STRING com at 7 dgitos para a quantidade. Na venda com departamento a quantidade
fracionria e so 3 casas decimais.
6. Acrescimo: STRING com o acrscimo por valor com at 10 dgitos (2 casas decimais).
7. Desconto: STRING com o desconto por valor com at 10 dgitos (2 casas decimais).
8. IndiceDepartamento: STRING com o ndice do departamento com 2 dgitos.

Daruma Automao

Daruma Framework

9.

12

UnidadeMedida: STRING com no mximo 2 caracteres para a unidade de medida. Caso no seja
passado nenhum caracter a unidade no impressa.

Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Para o caso de voc ter 2 alquotas de com o mesmo valor, sendo uma de ICMS e a outra ISS voc
dever passar da seguinte maneira:
1 - Indicando o seu ndice Ex: Ta ou Sb.
2 - Indicando direto no valor da alquota, tipo "I" para ICMS ou "S" para ISS Ex: I18,00 ou S18,00.
3 - Na impressora Duas Estaes FS2000 tamanho mximo para o cdigo do produto poder ser de
6 digitos.
- Na FS345 verso 1.11 (somente nesta verso), voc deve passar no parmetro descrio at 7
carcteres e no podera dar desconto, para dar desconto e vender um tem que tenha uma descrio
maior do que 7 carcteres, tenha desconto no tem use o Mtodo Daruma_FI_VendeItemTresDecimais.
Esta regra s vlida para a verso 1.11.
Para vender tem em uma nica linha voc dever passar o tem com o cdigo de at 13 carcteres e a
descrio de at 6 carcteres ou vice-versa. Caso no se cumpra sta condio, ento ser vendido
automticamente em 2 linhas.
- Caso o tem tenha desconto ou trs decimais tambm ser vendido automticamente em 2 linhas.
- Se o cupom estiver fechado a dll abrir o cupom para voc.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Codigo As String
Dim Str_Descricao As String
Dim Str_Aliquota As String
Dim Str_Valor_Unitario As String
Dim Str_Quantidade As String
Dim Str_Valor_do_Acrescimo As String
Dim Str_Valor_do_Desconto As String
Dim Str_Indice_Departameto As String
Dim Str_Unidade_de_Medida As String
Str_Codigo = "987654"
Str_Descricao = "bolacha"
Str_Aliquota = "FF"
Str_Valor_Unitario = "0,09"
Str_Quantidade = "1,000"
Str_Valor_do_Acrescimo = "0,01"
Str_Valor_do_Desconto = "0"
Str_Indice_Departameto = "01"
Str_Unidade_de_Medida = "UN"
Int_Retorno = Daruma_FI_VendeItemDepartamento(Str_Codigo, _
Str_Descricao, Str_Aliquota, Str_Valor_Unitario, Str_Quantidade, _
Str_Valor_do_Acrescimo, Str_Valor_do_Desconto, Str_Indice_Departameto, _
Str_Unidade_de_Medida)
Exemplo em Delphi 7.0:
var
Str_Codigo: String;
Str_Descricao: String;
Str_Aliquota: String;
Str_Valor_Unitario: String;
Str_Quantidade: String;
Str_Valor_do_Desconto: String;
Str_Valor_do_Acrescimo: String;

Daruma Automao

13

Daruma Framework

Str_Indice_Departamento: String;
Str_Unidade_de_Medida: String;
begin
Str_Codigo := '987654';
Str_Descricao := 'bolacha';
Str_Aliquota := 'FF';
Str_Valor_Unitario := '0,09';
Str_Quantidade := '1,000';
Str_Valor_do_Desconto := '0,01';
Str_Valor_do_Acrescimo := '0';
Str_Indice_Departamento := '01';
Str_Unidade_de_Medida := 'UN';
Int_Retorno := Daruma_FI_VendeItemDepartamento( pchar( Str_Codigo ), pchar( Str_Descricao ),
pchar( Str_Aliquota ), pchar( Str_Valor_Unitario ) , pchar( Str_Quantidade ), pchar(
Str_Valor_do_Desconto ), pchar( Str_Valor_do_Acrescimo ), pchar( Str_Indice_Departamento ), pchar(
Str_Unidade_de_Medida ) );

1.6.1.4

Daruma_FI_VendeItemTresDecimais(ndice 1019)
Definio do Mtodo:
Vende o tem na impressora fiscal, 1.11.
Parmetros do Mtodo: (7 Parretros).
1. Cdigo: String com at 13 carcteres contendo o cdigo do produto.
2. Descrio: String at 170 carcteres com a descrio do produto.
3. Alquota: String com o valor ou o ndice da alquota tributria. Se for o valor deve ser informado com o
tamanho de 4 carcteres ou 5 com a vrgula. Se for o ndice da alquota deve ser 2 carcteres. Ex.
(18,00 para o valor ou 05 para o ndice).
4. Quantidade: String com at 4 dgitos para quantidade inteira e 7 dgitos para quantidade fracionria. Na
quantidade fracionria so 3 casas decimais.
5. ValorUnitrio: String at 8 dgitos para valor unitrio.
6. Desconto ou Acrscimo: String "A" para Acrscimo e "D" para Desconto.
7. Percentual Desconto ou Acrscimo: String com at 4 dgitos para o acrscimo ou desconto.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Observaes:
- Este Mtodo foi implementado para vender tem com trs decimais na FS345 veso 1.11.
- Este Mdoto exclusivo da FS345 verso 1.11.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Codigo As String
Dim Str_Descricao As String
Dim Str_Aliquota As String
Dim Str_Quantidade As String
Dim Str_Valor_Unitario As String
Dim Str_Acrescimo_ou_Desconto As String
Dim Str_Percentual_Acrescimo_ou_Desconto As String
Str_Codigo = "1234567890123"
Str_Descricao = "coca-cola"
Str_Aliquota = "NN"
Str_Quantidade = "0,500"
Str_Valor_Unitario = "1,999"
Str_Acrescimo_ou_Desconto = "D"
Str_Percentual_Acrescimo_ou_Desconto = "05,00"

Daruma Automao

Daruma Framework

14

Int_Retorno = Daruma_FI_VendeItemTresDecimais(Str_Codigo, Str_Descricao, _


Str_Aliquota, Str_Quantidade, Str_Valor_Unitario, Str_Acrescimo_ou_Desconto, _
Str_Percentual_Acrescimo_ou_Desconto)
Exemplo em Delphi 7.0:
var
Str_Codigo: String;
Str_Descricao: String;
Str_Aliquota: String;
Str_Quantidade: String;
Str_Valor_Unitario: String;
Str_Desconto_ou_Acrescimo: String;
Str_Percentual_de_Desconto_ou_Acrescimo: String;
begin
Str_Codigo := '1234567890123';
Str_Descricao := 'coca-cola';
Str_Aliquota := 'NN';
Str_Quantidade := '0,500';
Str_Valor_Unitario := '1,999';
Str_Desconto_ou_Acrescimo := 'D';
Str_Percentual_de_Desconto_ou_Acrescimo := '05,00';
Int_Retorno := Daruma_FI_VendeItemTresDecimais( pchar( Str_Codigo ), pchar( Str_Descricao ),
pchar( Str_Aliquota ), pchar( Str_Quantidade ) , pchar( Str_Valor_Unitario ), pchar(
Str_Desconto_ou_Acrescimo ), pchar( Str_Percentual_de_Desconto_ou_Acrescimo ) );

1.6.1.5

Daruma_FI_CancelaCupom(ndice 1014)
Definio do Mtodo:
Cancela o ltimo cupom emitido.
Parmetros do Mtodo:
No h.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- No poder ter ocorrido Reduo Z e nem Leitura X aps a emisso do cupom.
- Voc no podera ter emitido um outro cupom fiscal, sangria, suprimento.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_CancelaCupom()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_CancelaCupom();

1.6.1.6

Daruma_FI_CancelaItemAnterior(ndice 1005)
Definio do Mtodo:
Cancela o ltimo item vendido.
Parmetros do Mtodo:

Daruma Automao

15

Daruma Framework

No h.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Observaes:
O cupom fiscal deve estar aberto.
Ao menos um tem deve ter sido vendido.
No deve ter sido cancelado nenhum item imediatamente anterior.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_CancelaItemAnterior
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_CancelaItemAnterior();

1.6.1.7

Daruma_FI_CancelaItemGenerico(ndice 1006)
Definio do Mtodo:
Cancela qualquer item dentre os cem (100) ltimos itens vendidos.
Parmetros do Mtodo:
Nmero tem: String com o nmero do tem a ser cancelado com no mximo 3 dgitos.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Observaes:
O cupom fiscal deve estar aberto
Ao menos um tem deve ter sido vendido
O tem no pode ter sido cancelado anteriormente e nem fora da faixa dos ltimos itens vendidos.
Exemplos:

Exemplo em Visual Basic 6.0:


Dim Numero_Item As String
Numero_Item = "01"
Int_Retorno = Daruma_FI_CancelaItemGenerico(Numero_Item)
Exemplo em Delphi 7.0:
var
Str_NumeroItem: String;
begin
Str_NumeroItem := '01';
Int_Retorno:=Daruma_FI_CancelaItemGenerico( pchar( NumeroItem ) );
FormPrincipal.Daruma_Analisa_Retorno();

Daruma Automao

Daruma Framework

1.6.1.8

16

Daruma_FI_IniciaFechamentoCupom(ndice 1007)
Definio do Mtodo:
Inicia o fechamento do cupom com o uso das formas de pagamento.
Parmetros do Mtodo:
1. AcrescimoDesconto: Indica se haver acrscimo ou desconto no cupom. 'A' para acrscimo e 'D' para
desconto.
2. TipoAcrescimoDesconto: Indica se o acrscimo ou desconto por valor ou por percentual. '$' para
desconto por valor e '%' para percentual.
3. ValorAcrescimoDesconto: String com no mximo 14 dgitos para acrscimo ou desconto por valor e 4
dgitos para acrscimo ou desconto por percentual.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este mtodo abre o recebimento no fiscal e permanece aberto at que seja chamado o Mtodo
Daruma_FI_EfetuaFormaPagamentoNaoFiscal.
- Este mtodo dever ser usado sempre que for preciso informar mais de uma forma de pagamento, no
Recebimento.
- No existe mtodo para fechamento deste Mtodo, o mesmo se fechar automaticamente, quando o
total do recebimento for pago.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Acrescimo_ou_Desconto As String
Dim Str_Tipo_do_Acrescimo_ou_Desconto As String
Dim Str_Valor_do_Acrescimo_ou_Desconto As String
Str_Acrescimo_ou_Desconto = "D"
Str_Tipo_do_Acrescimo_ou_Desconto = "$"
Str_Valor_do_Acrescimo_ou_Desconto = "0,01"
Int_Retorno = Daruma_FI_IniciaFechamentoCupom(Str_Acrescimo_ou_Desconto, _
Str_Tipo_do_Acrescimo_ou_Desconto, Str_Valor_do_Acrescimo_ou_Desconto)
Exemplo em Delphi 7.0:
var
Str_Acrescimo_ou_Desconto: String;
Str_Tipo_do_Acrescimo_Desconto: String;
Str_Valor_do_Acrescimo_Desconto: String;
begin
Str_Acrescimo_ou_Desconto:='D';
Str_Tipo_do_Acrescimo_Desconto:='$';
Str_Valor_do_Acrescimo_Desconto:='0,01';
Int_Retorno =: Daruma_FI_IniciaFechamentoCupom( pchar( Str_Acrescimo_ou_Desconto ), pchar(
Str_Tipo_do_Acrescimo_Desconto ), pchar( Str_Valor_do_Acrescimo_Desconto ) );

1.6.1.9

Daruma_FI_EfetuaFormaPagamento(ndice 1008)
Definio do Mtodo:
Imprime a(s) forma(s) de pagamento e o(s) valor(es) pago(s) nessa forma.
Parmetros do Mtodo:
1. FormaPagamento: String com a forma de pagamento com no mximo 16 carcteres.
2. ValorFormaPagamento: String com o valor da forma de pagamento com at 14 dgitos.
Retornos do Mtodo:

Daruma Automao

17

Daruma Framework

0: Erro de comunicao, no foi possvel enviar o mtodo.


1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O fechamento do cupom com formas de pagamento deve ter sido iniciado.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Descricao_da_Forma_Pagamento As String
Dim Str_Valor_da_Forma_Pagamento As String
Str_Descrica_da_Forma_Pagamento = "Dinheiro"
Str_Valor_da_Forma_Pagamento = "0,50"
Int_Retorno = Daruma_FI_EfetuaFormaPagamento(Str_Descricao_da_Forma_Pagamento, _
Str_Valor_da_Forma_Pagamento)
Exemplo em Delphi 7.0:
var
Str_Descricao_da_Forma_Pagamento: String;
Str_Valor_da_Forma_Pagamento: String;
begin
Str_Descricao_da_Forma_Pagamento := 'Dinheiro';
Str_Valor_da_Forma_Pagamento := '0,50';
Int_Retorno := Daruma_FI_EfetuaFormaPagamento( pchar( Str_Descricao_da_Forma_Pagamento ),
pchar( Str_Valor_da_Forma_Pagamento ) );

1.6.1.10 Daruma_FI_EfetuaFormaPagamentoDescricaoForma(ndice 1009)


Definio do Mtodo:
Imprime a(s) forma(s) de pagamento e o(s) valor(es) pago(s). Permite a impresso de comentrios na(s)
forma(s) de pagamento.
Parmetros do Mtodo:
1. FormaPagamento: String com a forma de pagamento com no mximo 16 carcteres.
2. ValorFormaPagamento: String com o valor da forma de pagamento com at 14 dgitos.
3. DescrioFormaPagto: String com a descrio da forma de pagamento com no mximo 80
carcteres.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O fechamento do cupom com formas de pagamento deve ter sido iniciado.
- O texto livre ser impresso uma linha aps a forma de pagamento.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Descricao_da_Forma_Pagamento As String
Dim Str_Valor_da_Forma_Pagamento As String
Dim Str_Texto_Livre As String
Str_Descricao_da_Forma_Pagamento = "Dinheiro"
Str_Valor_da_Forma_Pagamento = "0,50"
Str_Texto_Livre = "Texto Livre com ate 48 caracteres!!!"
Int_Retorno = Daruma_FI_EfetuaFormaPagamentoDescricaoForma _

Daruma Automao

Daruma Framework

18

(Str_Descricao_da_Forma_Pagamento, Str_Valor_da_Forma_Pagamento, Str_Texto_Livre)


Exemplo em Delphi 7.0:
var
Str_Descricao_da_Forma_Pagamento: String;
Str_Valor_da_Forma_Pagamento: String;
Str_Texto_Livre: String;
begin
Str_Descricao_da_Forma_Pagamento := 'Dinheiro';
Str_Valor_da_Forma_Pagamento := '0,50';
Str_Texto_Livre := 'Texto Livre com ate 48 caracteres!!!';
Int_Retorno := Daruma_FI_EfetuaFormaPagamentoDescricaoForma( pchar(
Str_Descricao_da_Forma_Pagamento ), pchar( Str_Valor_da_Forma_Pagamento ), pchar( Str_Texto_Livre
) );

1.6.1.11 Daruma_FI_FechaCupomResumido(ndice 1012)


Definio do Mtodo:
Permite fechar o cupom de forma resumida, ou seja, sem acrscimo ou desconto no cupom e com
apenas uma forma de pagamento. Esso Mtodo l o subtotal do cupom para fech-lo.
Parmetros do Mtodo:
1. FormaPagamento: String com a forma de pagamento com no mximo 16 carcteres.
2. Mensagem: String com a mensagem promocional com at 384 carcteres (8 linhas X 48 colunas).
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O cupom deve estar aberto.
- Pelo menos 1 (um) item deve ter sido vendido e no pode ter sido cancelado.
- A utilizao desse Mtodo elimina a obrigatoriedade de uso das Mtodo
Daruma_FI_IniciaFechamentoCupom, Daruma_FI_EfetuaFormaPagamento e
Daruma_FI_TerminaFechamentoCupom, que esto implementadas internamente no Mtodo.
- Se a forma de pagamento no estiver cadastrada na impressora, o Mtodo retorna erro.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Descricao_da_Forma_de_Pagamento As String
Dim Str_Mensagem_Promocional As String
Str_Descricao_da_Forma_Pagamento = "Dinheiro"
Str_Mensagem_Promocional = "Obrigado Volte Sempre!!!"
Int_Retorno = Daruma_FI_FechaCupomResumido(Str_Descricao_da_Forma_Pagamento,
Str_Mensagem_Promocional)
Exemplo em Delphi 7.0:
var
Str_Descricao_da_Forma_de_Pagamento: String;
Str_Mensagem_Promocional: String;
begin
Str_Descricao_da_Forma_de_Pagamento := 'Dinheiro';
Str_Mensagem_Promocional:= 'Obrigado Volte Sempre';
Int_Retorno:=Daruma_FI_FechaCupomResumido( pchar( Str_Descricao_da_Forma_Pagamento ),
pchar( Str_Mensagem_Promocional ) );

Daruma Automao

19

Daruma Framework

1.6.1.12 Daruma_FI_FechaCupom(ndice 1011)


Definio do Mtodo:
Fecha o cupom fiscal com a impresso da mensagem promocional.
IMPORTANTE! Com este Mtodo voc no poder informar com mais de um meio de pagamento.
Parmetros do Mtodo:
1. FormaPagamento: String com o nome da forma de pagamento com no mximo 16 carcteres.
2. AcrscimoDesconto: Indica se haver acrscimo ou desconto no cupom. 'A' para acrscimo e 'D' para
desconto.
3. TipoAcrscimoDesconto: Indica se o acrscimo ou desconto por valor ou por percentual. '$' para
desconto por valor e '%' para percentual.
4. ValorAcrscimoDesconto: String com no mximo 14 dgitos para acrscimo ou desconto por valor e 4
dgitos para acrscimo ou desconto por percentual.
5. ValorPago: String com o valor pago com no mximo 14 dgitos.
6. Mensagem: String com a mensagem promocional com at 384 carcteres (8 linhas X 48 colunas).
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O cupom deve estar aberto.
- Pelo menos 1 (um) item deve ter sido vendido e no pode ter sido cancelado.
- A utilizao desse Mtodo elimina a obrigatoriedade de uso das Mtodo
Daruma_FI_IniciaFechamentoCupom, Daruma_FI_EfetuaFormaPagamento e
Daruma_FI_TerminaFechamentoCupom, que esto implementadas internamente no Mtodo.
- Se a forma de pagamento no estiver cadastrada na impressora, o Mtodo retorna erro. A
programao das formas de pagamento feita, somente, aps a ReduoZ e antes de uma LeituraX.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Descricao_da_Forma_Pagamento As String
Dim Str_Acrescimo_ou_Desconto As String
Dim Str_Tipo_Acrescimo_ou_Desconto As String
Dim Str_Valor_Acrescimo_ou_Desconto As String
Dim Str_Valor_Pago As String
Dim Str_Mensagem_Promocional As String
Str_Descricao_da_Forma_Pagamento = "Dinheiro"
Str_Acrescimo_ou_Desconto = "D"
Str_Tipo_Acrescimo_ou_Desconto = "$"
Str_Valor_Acrescimo_ou_Desconto = "0,01"
Str_Valor_Pago = "0,50"
Str_Mensagem_Promocional = "Obrigado Volte Sempre!!!"
Int_Retorno = Daruma_FI_FechaCupom(Str_Descricao_da_Forma_Pagamento, _
Str_Acrescimo_ou_Desconto, Str_Tipo_Acrescimo_ou_Desconto, _
Str_Valor_Acrescimo_ou_Desconto, Str_Valor_Pago, Str_Mensagem_Promocional)
Exemplo em Delphi 7.0:
var
Str_Descricao_da_Forma_Pagamento: String;
Str_Acrescimo_ou_Desconto: String;
Str_Tipo_Acrescimo_ou_Desconto: String;
Str_Valor_Acrescimo_ou_Desconto: String;
Str_Valor_Pago: String;
Str_Mensagem_Promocional: String;
begin
Str_Descricao_da_Forma_Pagamento: = 'Descricao';

Daruma Automao

Daruma Framework

20

Str_Acrescimo_ou_Desconto := 'D';
Str_Tipo_Acrescimo_ou_Desconto := '$';
Str_Valor_Acrescimo_ou_Desconto := '0,01';
Str_Valor_Pago := '0,50';
Str_Mensagem_Promocional := 'Obrigado Volte Sempre!!!';
Int_Retorno := Daruma_FI_FechaCupom( pchar( Str_Descricao_da_Forma_Pagamento ), pchar(
Str_AcrescimoDesconto ), pchar( Str_Tipo_Acrescimo_ou_Desconto ), pchar(
Str_Valor_Acrescimo_ou_Desconto ), pchar( Str_Valor_Pago ), pchar( Str_Mensagem_Promocional ) );

1.6.1.13 Daruma_FI_TerminaFechamentoCupom(ndice 1010)


Definio do Mtodo:
Termina o fechamento do cupom com mensagem promocional.
Parmetros do Mtodo:
Mensagem: String com a mensagem promocional com at 384 carcteres (8 linhas X 48 colunas).
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- A forma de pagamento deve ter sido efetuada.
- Na impressora fiscal Daruma, sero impressas 8 linhas de texto.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Mensagem_Promocional As String
Str_Mensagem_Promocional = "Obrigado Volte Sempre!!!"
Int_Retorno = Daruma_FI_TerminaFechamentoCupom(Str_Mensagem_Promocional)
Exemplo em Delphi 7.0:
var
Str_Mensagem_Promocional: String;
begin
Str_Mensagem_Promocional := 'Obrigado Volte Sempre!!!';
Int_Retorno := Daruma_FI_TerminaFechamentoCupom( pchar( Str_Mensagem_Promocional ) );

1.6.1.14 Daruma_FI_EstornoFormasPagamento(ndice 1017)


Definio do Mtodo:
Permite Estornar valores de uma forma de pagamento e inserir em outra.
Parmetros do Mtodo:
1. FormaOrigem: String com a forma de pagamento de onde o valor ser Estornado, com at 16
carcteres.
2. FormaDestino: String com a forma de pagamento onde o valor ser inserido, com at 16 carcteres.
3. Valor: String com o valor a ser Estornado com at 14 dgitos. No pode ser maior que o total da
forma de pagamento de origem.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Daruma Automao

21

Daruma Framework

Observaes:
- Este Mtodo no compatvel com a Improssora de Duas Estaes FS2000.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Forma_de_Origem As String
Dim Str_Nova_Forma As String
Dim Str_Valor_Total_Pago As String
Str_Forma_de_Origem = "Dinheiro"
Str_Nova_Forma = "Cheque"
Str_Valor_Total_Pago = "0,50"
Int_Retorno = Daruma_FI_EstornoFormasPagamento _
(Str_Forma_de_Origem, Str_Nova_Forma, Str_Valor_Total_Pago)
Exemplo em Delphi 7.0:
var
Str_Forma_de_Origem: String;
Str_Nova_Forma: String;
Str_Valor_Total_Pago: String;
begin
Str_Forma_de_Origem:= 'Dinheiro';
Str_Nova_Forma:= 'Cheque';
Str_Valor_Total_Pago:= '0,50';
Int_Retorno := Daruma_FI_EstornoFormasPagamento( pchar( Str_Forma_de_Origem ), pchar(
Str_Nova_Forma ), pchar( Str_Valor_Total_Pago ) );

1.6.1.15 Daruma_FI_IdentificaConsumidor(ndice 1013)


Definio do Mtodo:
Imprime a Identificao do Consumidor, este mtodo deve ser enviado Imediatamente Antes do mtodo
de TerminaFechamentoCupom, onde ser impresso a mensagem Promocional.
Parmetros do Mtodo:
1. Nome: Nome do Consumidor com at 80 carcteres.
2. Endereo: Endereo do Consumidor com at 80 carcteres
3. CNPJ ou CPF: At 42 carcteres.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Estes Campos so Formatados automaticamente pelo ECF que imprimir antes da Mensagem
Promocional o seguinte:
Exemplo:
------------------------------------------------------Nome:
Daruma Automo S.A.
Endereo:
Av. Independencia 3.500 Tatuap
N Doc:
NNNNNNNN
-------------------------------------------------------Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Nome_do_Consumidor As String
Dim Str_Endereco As String

Daruma Automao

Daruma Framework

22

Dim Str_CPF_ou_CNPJ As String


Str_Nome_do_Consumidor = "Daruma Automao S.A."
Str_Endereco = "Av. Independencia 3.500 Tatuap"
Str_CPF_ou_CNPJ = "NNN.NNN.NNN-NN"
Int_Retorno = Daruma_FI_IdentificaConsumidor(Str_Nome_do_Consumidor, _
Str_Endereco, Str_CPF_ou_CNPJ)
Exemplo em Delphi 7.0:
var
Str_Nome_do_Consumidor: String;
Str_Endereco: String;
Str_CPF_ou_CNPJ: String;
begin
Str_Consumidor := 'Daruma Automao S.A.';
Str_Endereco := 'Av. Independencia 3.500 Tatuap';
Str_CPF_ou_CNPJ := 'NNN.NNN.NNN-NN';
Int_Retorno:=Daruma_FI_IdentificaConsumidor( pchar( Str_Nome_Consumidor ), pchar( Str_Endereco
), pchar( Str_CPF_ou_CNPJ ) );

1.6.1.16 Daruma_FI_EmitirCupomAdicional(ndice 1018)


Definio do Mtodo:
Emiti um resumo do Cupom Fiscal Realizado Anteriormente, com Nmero do cupom, Valor e Data.
Este resumo pode ser utilizado para Controle interno.
Parmetros do Mtodo:
No H.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Para utilizao deste Mtodo, voc dever necessriamente chamar o
Mtodo Daruma_FI_CfgCupomAdicional antes.
- Este Mtodo enibe a pr_impresso automtica do cliche do prximo cupom, implicando diretamente e
um gasto Maior - tanto de Bobina Quanto de Tempo na emisso do cupom fincal.
- Este Mtodo no compatvel com a Imprssora de Duas Estaes FS2000.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_EmitirCupomAdicional()
Exemplo em Delphi 7.0:
begin
Int_Retorno:=Daruma_FI_EmitirCupomAdicional();

1.6.1.17 Daruma_FI_UsaUnidadeMedida(ndice 1016)


Definio do Mtodo:
Imprime a unidade de medida aps a quantidade do produto na venda de item.
Parmetros do Mtodo:
UnidadeMedida: String com a unidade de medida at 2 carcteres.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.

Daruma Automao

23

Daruma Framework

1: OK, Sucesso ao enviar o mtodo.


-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo deve ser usado antes do envio do Mtodo Daruma_FI_VendeItem.
- Este Mtodo tem validade, somente para a impresso de um tem, voltando ao default que a impresso
de 2 (dois) espaos em branco aps a quantidade do tem vendido.
- Este Mtodo incompatvel com a FS345 versao 1.11.
Exemplos:

Exemplo em Visual Basic 6.0:


Dim Str_Unidade_de_Medida As String
Str_Unidade_de_Medida = "UN"
Int_Retorno = Daruma_FI_UsaUnidadeMedida(Str_Unidade_de_Medida)
Exemplo em Delphi 7.0:
var
Str_UnidadeMedida: String;
begin
Str_Unidade_de_Medida := 'UN';
Int_Retorno := Daruma_FI_UsaUnidadeMedida( pchar( Str_Unidade_de_Medida ) );

1.6.1.18 Daruma_FI_AumentaDescricaoItem(ndice 1015)


Definio do Mtodo:
Este Mtodo permite aumentar a descrio do item at 200 carcteres.
Parmetros do Mtodo:
Descrio: String com a descrio do item com at 200 carcteres.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo deve ser usada antes do Mtodo Daruma_FI_VendeItem, pois assim, o item ser impresso
com a nova descrio.
- Ela tem validade somente para a impresso de um item, voltando ao default que de 29 carcteres na
Descrio do item.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Descricao_Extendida As String
Str_Descricao_Extendida ="Protetor de carter, para Audi A3 - compativel apenas com o modelo Turbo,
fabricado a partir de 2004."
Int_Retorno = Daruma_FI_AumentaDescricaoItem(Str_Descricao_Extendida)
Exemplo em Delphi 7.0:
var
Str_Descricao: String;='Protetor de carter, para Audi A3 - compativel apenas com o modelo Turbo,
fabricado a partir de 2004.';
begin
Str_Descricao := '';

Daruma Automao

Daruma Framework

24

Int_Retorno := Daruma_FI_AumentaDescricaoItem( pchar( Str_Descricao_Extendida ) );

1.6.2

Mtodos de Recebimentos, No Fiscais e Vinculados

1.6.2.1

Daruma_FI_AbreComprovanteNaoFiscalVinculado(ndice 1203)
Definio do Mtodo:
Abre o comprovante no fiscal vinculado.
Parmetros do Mtodo:
1. FormaPagamento: Forma de pagamento com at 16 carcteres.
2. Valor: Valor pago na forma de pagamento com at 14 dgitos (2 casas decimais).
3. NmeroCupom: Nmero do cupom a que se refere o comprovante com at 6 dgitos.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- A forma de pagamento deve ter sido utilizada no cupom, mesmo sendo a forma de Pagamento
"Dinheiro".
- S pode ser emitido um comprovante no fiscal por forma de pagamento.
- Os parmetros "Valor" e "Numero do Cupom" tornam-se obrigatrios se o comprovante emitido no
for referente a ltima Forma de Pagamento do Cupom Fsical. Ou seja, se voce teve "Dinheiro" e "Cheque"
no ltimo Cupom Fiscal, ento para abrir um vinculado em Dinheiro ter de passar o Valor da primeira
forma de pagamento.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Forma_de_Pagamento As String
Dim Str_Valor_Pago As String
Dim Str_Numero_do_Cupom As String
Str_Forma_de_Pagamento ="Dinheiro "
Str_Valor_Pago = ""
Str_Numero_do_Cupom = ""
Int_Retorno = Daruma_FI_AbreComprovanteNaoFiscalVinculado _
(Str_Forma_de_Pagamento, Str_Valor_Pago, Str_Numero_do_Cupom)
Exemplo em Delphi 7.0:
var
Str_Forma_de_Pagamento: String;
Str_Valor_Pago: String;
Str_Numero_do_Cupom: String;
begin
Str_Forma_de_Pagamento := 'Dinheiro';
Str_Valor_Pago := '';
Str_Numero_do_Cupom := '';
Int_Retorno := Daruma_FI_AbreComprovanteNaoFiscalVinculado( pchar( Str_Forma_de_Pagamento ),
pchar( Str_Valor_Pago ), pchar( Str_Numero_do_Cupom ) );

1.6.2.2

Daruma_FI_UsaComprovanteNaoFiscalVinculado(ndice 1204)
Definio do Mtodo:
Imprime o comprovante no fiscal vinculado.
Parmetros do Mtodo:
Texto: String com o Texto a ser impresso no comprovante no fiscal vinculado com at 618 carcteres.

Daruma Automao

25

Daruma Framework

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Na impressora fiscal Daruma, s pode ser usado durante 2 (dois) minutos aps a abertura do
comprovante no fiscal vinculado. Se esse tempo for ultrapassado o comprovante fechado
automaticamente.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Texto_Livre As String
Str_Texto_Livre = "Texto Livre com at 600 carcteres"
Int_Retorno = Daruma_FI_UsaComprovanteNaoFiscalVinculado(Str_Texto_Livre)
Exemplo em Delphi 7.0:
var
Str_Texto_Livre: String;
begin
Str_Texto_Livre := 'Texto Livre com at 600 carcteres';
Int_Retorno := Daruma_FI_UsaComprovanteNaoFiscalVinculado( pchar( Str_Texto_Livre ) );
end;

1.6.2.3

Daruma_FI_FechaComprovanteNaoFiscalVinculado(ndice 1205)
Definio do Mtodo:
Encerrar o comprovante no fiscal vinculado.
Parmetros do Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O comprovante no fiscal vinculado deve ter sido aberto.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_FechaComprovanteNaoFiscalVinculado()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_FechaComprovanteNaoFiscalVinculado();

1.6.2.4

Daruma_FI_AbreRelatorioGerencial(ndice 1208)
Definicao do Mtodo:
Abre o Relatrio Gerencial.
Parmetros do Mtodo:
No h.

Daruma Automao

Daruma Framework

26

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo apenas Abre o Relatrio Gerencial, deixando-o pronto para que seja utilizado o Mtodo
Daruma_FI_RelatorioGerencial ou a Mtodo Daruma_FI_EnviaTextoCNF.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_AbreRelatorioGerencial()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_AbreRelatorioGerencial();

1.6.2.5

Daruma_FI_EnviarTextoCNF(ndice 1209)
Definio do Mtodo:
Imprime um Texto Livre Seja em Modo No Fiscal Vinculado ou em modo Relatrio Gerencial, este
metodo permite que independente de onde voce estiver na operao do ECF voc possa Efetuar a
Impresso de Um texto Livre sem a necessidade de Identificar em que Modo o ECF est, em Modo No
Fiscal Vinculado ou em modo Relatrio Gerencial.
Parmetros do Mtodo:
Texto: String com o Texto a ser impresso at 600 carcteres.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- No Modo No Fiscal Vinculado voc tem Dois Minutos para Realizar a Impresso do Texto e no modo
Relatrio Gerencial Voc tem 10(dez) Minutos para Realizar a Impresso do Texto.
- Este Mtodo pode ser aplicado tambem para espaar as 2 vias do TEF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Texto_Livre As String
Str_Texto_Livre = "Texto Livre com at 600 carcteres"
Int_Retorno = Daruma_FI_EnviarTextoCNF(Str_Texto_Livre)
Exemplo em Delphi 7.0:
var
Str_Texto_Livre: String;
begin
Str_Texto_Livre := 'Texto Livre com at 600 carcteres';
Int_Retorno := Daruma_FI_EnviarTextoCNF( pchar( Str_Texto_Livre ) );

1.6.2.6

Daruma_FI_FechaRelatorioGerencial(ndice 1201)
Definio do Mtodo:
Encerra o Relatrio Gerencial.
Parmetros do Mtodo:

Daruma Automao

27

Daruma Framework

No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O relatrio gerencial deve estar aberto.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_FechaRelatorioGerencial()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_FechaRelatorioGerencial();

1.6.2.7

Daruma_FI_AbreRecebimentoNaoFiscal(ndice 1210)
Definio do Mtodo:
Abre o recebimento no fiscal.
Parmetros do Mtodo:
1. Indice do Totalizador No Fiscal: Neste parmetro voc deve passar o ndice do totalizador com 2
dgitos.
2. AcrescimoDesconto: Indica se haver acrscimo ou desconto no cupom. 'A' para acrscimo e 'D' para
desconto.
3. TipoAcrescimoDesconto: Indica se o acrscimo ou desconto por valor ou por percentual. '$' para
desconto por valor e '%' para percentual.
4. ValorAcrescimoDesconto: String com no mximo 14 dgitos para acrscimo ou desconto por valor e 4
dgitos para acrscimo ou desconto por percentual.
5. Valor do Recebimento: String com o valor da forma de pagamento com at 14 dgitos.
6.

Texto Livre. String com at 48 carcteres.

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo abre o recebimento no fiscal que permanece aberto at que seja chamado o Mtodo
Daruma_FI_EfetuaFormaPagamentoNaoFiscal.
- Este Mtodo dever ser usado sempre que for preciso informar mais de uma forma de pagamento, no
Recebimento.
- No existe mtodo para fechamento deste Mtodo, o mesmo se fechar automaticamente, quando o
total do recebimento for pago.
- Caso seja passado no parmetro ndice do Totalizador Suprimento ou Sangria, o Mtodo ser
executado, porm o cupom ser fechado automaticamente.
- No caso de uma Impressora FS2000 Impressora de Cheques, quando passado o ndice referente a
Suprimento o mesmo permanecer aberto, ate que se chame o Mtodo
Daruma_FI_EfetuaFormaPagamentoNaoFiscal.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Indice_do_Totalizador As String
Dim Str_Acrescimo_ou_Desconto As String
Dim Str_Tipo_Acrescimo_ou_Deconto As String
Dim Str_Valor_do_Acrescimo_ou_Desconto As String
Dim Str_Valor_do_Recebimento As String
Dim Str_Texto_Livre As String

Daruma Automao

Daruma Framework

28

Str_Indice_do_Totalizador = TX_Indice_do_Totalizador.Text
Str_Acrescimo_ou_Desconto = TX_Acrescimo_ou_Desconto.Text
Str_Tipo_Acrescimo_ou_Deconto = TX_Tipo_do_Acrescimo_ou_Desconto.Text
Str_Valor_Acrescimo_ou_Desconto = TX_Valor_Acrescimo_ou_Desconto.Text
Str_Valor_do_Recebimento = TX_Valor_do_Recebimento.Text
Str_Texto_Livre = TX_Texto_Livre.Text
Int_Retorno = Daruma_FI_AbreRecebimentoNaoFiscal(Str_Indice_do_Totalizador,
Str_Acrescimo_ou_Desconto, Str_Tipo_Acrescimo_ou_Deconto, Str_Valor_Acrescimo_ou_Desconto,
Str_Valor_do_Recebimento, Str_Texto_Livre)

Exemplo em Delphi 7.0:


var
Str_Indice_do_Totalizador: String;
Str_Acrescimo_ou_Desconto: String;
Str_Tipo_Acrescimo_ou_Desconto: String;
Str_Valor_Acrescimo_ou_Desconto: String;
Str_Valor_do_Recebimento: String;
Str_Texto_Livre: String;
begin
Str_Indice_do_Totalizador := '02';
Str_Acrescimo_ou_Desconto := 'D';
Str_Tipo_Acrescimo_ou_Desconto := '$';
Str_Valor_Acrescimo_ou_Desconto := '0,01';
Str_Valor_do_Recebimento := '0,09';
Str_Texto_Livre := 'Referente ao pagamento da 1 primeira parcela.';
Int_Retorno := Daruma_FI_AbreRecebimentoNaoFiscal( pchar( Str_Indice_do_Totalizador ), pchar(
Str_Acrescimo_ou_Desconto ), pchar( Str_Tipo_Acrescimo_ou_Desconto ), pchar(
Str_Valor_Acrescimo_ou_Desconto ), pchar( Str_Valor_do_Recebimento ), pchar( Str_Texto_Livre ) );

1.6.2.8

Daruma_FI_EfetuaFormaPagamentoNaoFiscal(ndice 1211)
Definio do Mtodo:
Imprime a(s) forma(s) de pagamento e o(s) valor(es) pago(s) nessa forma.
Parmetros do Mtodo:
1. FormaPagamento: String com a forma de pagamento com no mximo 16 carcteres.
2. ValorFormaPagamento: String com o valor da forma de pagamento com at 14 dgitos.
3. Observao Livre: String com at 40 carcteres.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O fechamento do comprovante no fiscal acontecer automaticamente assim que o total do
comprovante no fiscal seja atingido.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Forma_de_Pagamento As String
Dim Str_Valor_da_Forma_Pagamento As String
Dim Str_Texto_Livre As String
Str_Forma_de_Pagamento = "Dinheiro"
Str_Valor_da_Forma_Pagamento = "0,09"
Str_Texto_Livre = "Parcela paga em 28/12/2004"
Int_Retorno = Daruma_FI_EfetuaFormaPagamentoNaoFiscal(Str_Forma_de_Pagamento, _
Str_Valor_da_Forma_Pagamento, Str_Texto_Livre)

Daruma Automao

Exemplo em Delphi 7.0:

29

Daruma Framework

var
Str_Forma_de_Pagamento: String;
Str_Valor_da_Forma_Pagamento: String;
Str_Texto_Livre: String;
begin
Str_Forma_de_Pagamento := 'Dinheiro';
Str_Valor_da_Forma_Pagamento := '0,09';
Str_Texto_Livre := '28/12/2004';
Int_Retorno := Daruma_FI_EfetuaFormaPagamentoNaoFiscal( pchar( Str_Forma_de_Pagamento ),
pchar( Str_Valor_da_Forma_Pagamento ), pchar( Str_Texto_Livre ) );

1.6.2.9

Daruma_FI_FundoCaixa(ndice 1212)
Definio do Mtodo:
Faz um suprimento na impressora (entrada de dinheiro).
Parmetros do Mtodo:
1. Valor: String com o Valor do suprimento com at 14 dgitos (2 casas decimais).
2. FormaPagamento: String com a Forma de pagamento com at 16 carcteres. Se no for informada,
o suprimento ser feito em Dinheiro.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Valor_do_Fundo_Caixa As String
Dim Str_Forma_de_Pagamento As String
Str_Valor_Fundo_Caixa = "0,10"
Str_Forma_de_Pagamento = "Dinheiro"
Int_Retorno = Daruma_FI_FundoCaixa(Str_Valor_do_Fundo_Caixa, Str_Forma_de_Pagamento)
Exemplo em Delphi 7.0:
var
Str_Valor_do_Fundo_Caixa: String;
Str_Forma_de_Pagamento: String;
begin
Str_Valor_do_Fundo_Caixa := '0,10';
Str_Forma_de_Pagamento := 'Dinheiro';
Int_Retorno := Daruma_FI_FundoCaixa( pchar( Str_Valor_do_Fundo_Caixa ), pchar(
Forma_de_Pagamento ) );

1.6.2.10 Daruma_FI_LeituraMemoriaFiscalData(ndice 1102)


Definio do Mtodo:
Emite a leitura da memria fiscal da impressora por intervalo de datas.
Parmetros do Mtodo:
1. DataInicial: String com a Data inicial no formato ddmmaa, dd/mm/aa, ddmmaaaa ou dd/mm/aaaa.
2. DataFinal: String com a Data final no formato ddmmaa, dd/mm/aa, ddmmaaaa ou dd/mm/aaaa.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo: 0: Erro de comunicao, no foi

Daruma Automao

Daruma Framework

30

possvel enviar o mtodo.


1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O cupom fiscal deve estar fechado.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Data_Inicial As String
Dim Str_Data_Final As String
Str_Data_Inicial = "28/12/2004"
Str_Data_Final = "28/12/2004"
Int_Retorno = Daruma_FI_LeituraMemoriaFiscalData(Str_Data_Inicial, Str_Data_Final)
Exemplo em Delphi 7.0:
var
Str_Data_Inicial: String;
Str_Data_Final: String;
begin
Str_Data_Inicial := '28/12/2004';
Str_Data_Final := '28/12/2004';
Int_Retorno := Daruma_FI_LeituraMemoriaFiscalData( pchar( Str_Data_Inicial ), pchar( Str_Data_Final
) );

1.6.2.11 Daruma_FI_LeituraMemoriaFiscalReducao(ndice 1103)


Definio do Mtodo:
Emite a leitura da memria fiscal da impressora por intervalo de redues.
Parmetros do Mtodo:
1. ReduoInicial: String com o Nmero da reduo inicial com at 4 dgitos.
2. ReduoFinal: String com o Nmero da reduo final com at 4 dgitos.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo: 0: Erro de comunicao, no foi
possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O cupom fiscal deve estar fechado.
Exemplos:

Exemplo em Visual Basic 6.0:


Dim Str_Reducao_Inicial As String
Dim Str_Reducao_Final As String
Str_Reducao_Inicial = "01"
Str_Reducao_Final = "02"
Int_Retorno = Daruma_FI_LeituraMemoriaFiscalReducao _
(Str_Reducao_Inicial, Str_Reducao_Final)
Exemplo em Delphi 7.0:
var
Str_Reducao_Inicial: String;

Daruma Automao

31

Daruma Framework

Str_Reducao_Final: String;
begin
Str_Reducao_Inicial := '01';
Str_Reducao_Final := '02';
Int_Retorno := Daruma_FI_LeituraMemoriaFiscalReducao( pchar( Str_Reducao_Inicial ), pchar(
Str_Reducao_Final ) );

1.6.2.12 Daruma_FI_LeituraMemoriaFiscalSerialData(ndice 1104)


Definio do Mtodo:
Recebe os dados da memria fiscal por intervalo de datas pela serial e grava em arquivo texto.
Parmetros do Mtodo:
1. DataInicial: String com a Data inicial no formato ddmmaa, dd/mm/aa, ddmmaaaa ou dd/mm/aaaa.
2. DataFinal: String com a Data final no formato ddmmaa, dd/mm/aa, ddmmaaaa ou dd/mm/aaaa.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo: 0: Erro de comunicao, no foi
possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O cupom fiscal deve estar fechado.

Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Data_Inicial As String
Dim Str_Data_Final As String
Str_Data_Inicial = "28/12/2004"
Str_Data_Final = "28/12/2004"
Int_Retorno = Daruma_FI_LeituraMemoriaFiscalSerialData _
(Str_Data_Inicial, Str_Data_Final)
Shell "notepad C:\retorno.txt", vbMaximizedFocus
Exemplo em Delphi 7.0:
var
Str_Data_Inicial: String;
Str_Data_Final: String;
begin
Str_Data_Inicial := '28/12/2004';
Str_Data_Final := '28/12/2004';
Int_Retorno := Daruma_FI_LeituraMemoriaFiscalSerialData( pchar( Str_Data_Inicial ), pchar(
Str_Data_Final ) );

1.6.2.13 Daruma_FI_LeituraMemoriaFiscalSerialReducao(ndice 1105)


Definio do Mtodo:
Recebe os dados da leitura da memria fiscal, por intervalo de redues, pela serial e grava em arquivo
texto.
Parmetros do Mtodo:
1.
ReducaoInicial: String com o Nmero da reducao inicial com at 4 dgitos.
2.
ReducaoFinal: String com o Nmero da reducao final com at 4 dgitos.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo: 0: Erro de comunicao, no foi

Daruma Automao

Daruma Framework

32

possvel enviar o mtodo.


1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O cupom fiscal deve estar fechado.
Exemplos:

Exemplo em Visual Basic 6.0:


Dim Str_Reducao_Inicial As String
Dim Str_Redcucao_Final As String
Str_Rd_Inicial = "01"
Str_Rd_Final = "02"
Int_Retorno = Daruma_FI_LeituraMemoriaFiscalSerialReducao _
(Str_Reducao_Inicial, Str_Reducao_Final)
Shell "notepad C:\retorno.txt", vbMaximizedFocus
Exemplo em Delphi 7.0:
var
Str_Reducao_Inicial: String;
Str_Reducao_Final: String;
begin
Str_Reducao_Inicial := '01';
Str_Reducao_Final := '02';
Int_Retorno := Daruma_FI_LeituraMemoriaFiscalSerialReducao( pchar( Str_Reducao_Inicial ), pchar(
Str_Reducao_Final ) );

1.6.2.14 Daruma_FI_LeituraX(ndice 1101)


Definio:
Emite a Leitura X na impressora.
Parmetros do Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O cupom fiscal deve estar fechado.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_LeituraX()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_LeituraX();

Daruma Automao

33

Daruma Framework

1.6.2.15 Daruma_FI_RecebimentoNaoFiscal(ndice 1202)


Definio do Mtodo:
Imprime o comprovante no fiscal no vinculado.
Parmetros do Mtodo:
1. IndiceTotalizador: String com o ndice do totalizador para recebimento parcial com at 2 dgitos.
2. ValorRecebimento: String com o Valor do recebimento com at 14 dgitos (duas casas decimais).
3. FormaPagamento: String com a Forma de pagamento com at 16 carcteres.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo nico, ou seja voc no precisar chamar outro mtodo para encerr-lo.
- Caso voc necessite informar mais de uma forma de pagamento ento deve-se usar o Mtodo
Daruma_FI_AbreRecebimentoNaoFiscal.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Indice_do_Totalizador As String
Dim Str_Valor_do_Recebimento As String
Dim Str_Forma_de_Pagamento As String
Str_Indice_do_Totalizador = "02"
Str_Valor_do_Recebimento = "0,10"
Str_Forma_de_Pagamento = "Dinheiro"
Int_Retorno = Daruma_FI_RecebimentoNaoFiscal(Str_Indice_do_Totalizador, Str_Valor_do_Recebimento,
Str_Forma_de_Pagamento)
Exemplo em Delphi 7.0:
var
Str_Indice_do_Totalizador: String;
Str_Valor_do_Recebimento: String;
Str_Forma_de_Pagamento: String;
begin
Str_Indice_do_Totalizador := '02';
Str_Valor_do_Recebimento := '0,10';
Str_Forma_de_Pagamento := 'Dinheiro';
Int_Retorno := Daruma_FI_RecebimentoNaoFiscal( pchar( Str_Indice_do_Totalizador ), pchar(
Str_Valor_do_Recebimento ), pchar( Str_Forma_de_Pagamento ) );

1.6.2.16 Daruma_FI_ReducaoZ(ndice 1100)


Definio do Mtodo:
Emite a Reduo Z na impressora.
Parmetros do Mtodo:
1. Data: String com a Data atual da impressora no formato ddmmaa ou dd/mm/aa, dd/mm/aaaa ou
dd/mm/aa. Opcional
2. Hora: String com a Hora a ser alterada no formato hhmmss ou hh:mm:ss. Opcional
Este Mtodo retornar um dos Valores Inteiros listados Abaixo: 0: Erro de comunicao, no foi
possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.

Daruma Automao

Daruma Framework

34

Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Importante!!!: Caso ja tenha sido efetuada uma ReducaoZ no dia, caso seja afetuada outra, isso far
com que a Impressora fique Inoperante, ate as 0:00. Horrio este controlado pelo relgio interno da
propria Impressora.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Confirma As String
Str_Confirma = MsgBox("Tem Certeza que Deseja Efetuar a ReducaoZ?", _
vbQuestion + vbYesNo, "Daruma Framework")
If Str_Confirma = vbYes Then
Int_Retorno = Daruma_FI_ReducaoZ(" ", " ")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_ReducaoZ('','');

1.6.2.17 Daruma_FI_ReducaoZAjustaDataHora(ndice 11006)


Definio do Mtodo:
Emite a Reduo Z na impressora. Permite ajustar o relgio interno da impressora em at 5 minutos.
Parmetros do Mtodo:
1. Data: String com a Data atual da impressora no formato ddmmaa ou dd/mm/aa, dd/mm/aaaa ou
dd/mm/aa. Opcional.
2. Hora: String com a Hora a ser alterada no formato hhmmss ou hh:mm:ss. Opcional
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Observaes:
- Somente ser aceito um ajuste de +/- 5 minutos. Se os valores estiverem fora dessa faixa sero
limitados a 5 minutos.
- O cupom fiscal deve estar fechado.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Data As String
Dim Str_Hora As String
Str_Data = " "
Str_Hora = " "
Int_Retorno = Daruma_FI_ReducaoZAjustaDataHora(Str_Data, Str_Hora)
Exemplo em Delphi 7.0:
var
Str_Data: String;
Str_Hora: String;
begin
Str_Data := ' ';
Str_Hora := ' ';
Int_Retorno := Daruma_FI_ReducaoZAjustaDataHora( pchar( Str_Data ), pchar( Str_Hora ) );

Daruma Automao

35

Daruma Framework

1.6.2.18 Daruma_FI_RelatorioGerencial(ndice 1200)


Definio do Mtodo:
Abre e Imprime Imprime o Relatrio Gerencial.
Parmetros do Mtodo:
Texto: String com o Texto a ser impresso no relatrio com at 600 carcteres.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Se o Relatorio Gerencial estiver aberto este Mtodo imprime o texto que voce deseja, e se desejar
continuar imprimindo mais texto, continue Chamando este Mtodo, que uma vez aberto o Gerencial, o
mesmo no ser Aberto novamente at que seja chamada a Mtodo.
- Para fechar o Relatrio, chame o Mtodo:Daruma_FI_FechaRelatorioGerencial.
- Se qualquer Mtodo diferente da Daruma_FI_RelatorioGerencial for chamado com o relatorio aberto,
efetuar seu fechamento automaticamente.
- Uma vez aberto o Relatrio Gerencial, voc ter 10 minutos para a impresso de Texto Livre.
- Caso voc se esquea de fechar o Relatrio Gerencial o mesmo ser fechado automaticamente aps
10 minutos contando a partir de sua abertura.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Texto_Livre As String
Str_Texto_Livre = "Texto Livre com at 600 carcteres"
Int_Retorno = Daruma_FI_RelatorioGerencial(Str_Texto_Livre)
Exemplo em Delphi 7.0:
var
Str_Texto_Livre: String;
begin
Str_Texto_Livre := 'Texto Livre com at 600 carcteres';
Int_Retorno := Daruma_FI_RelatorioGerencial( pchar( Str_Texto_Livre ) );

1.6.2.19 Daruma_FI_Sangria(ndice 1206)


Definio do mtodo:
Faz uma sangria na impressora (retirada de dinheiro).
Parmetros do Mtodo:
Valor: String com o Valor da sangria com at 14 dgitos (2 casas decimais).
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- No ser possvel informar mais de uma forma de pagamento no casa de uma Sangria.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Valor_da_Sangria As String

Daruma Automao

Daruma Framework

36

Str_Valor_da_Sangria = "0,10"
Int_Retorno = Daruma_FI_Sangria(Str_Valor_da_Sangria)
Exemplo em Delphi 7.0:
var Str_Valor_da_Sangria: String;
begin
Str_Valor_da_Sangria := '0,10';
Int_Retorno := Daruma_FI_Sangria( pchar( Str_Valor_da_Sangria ) );

1.6.2.20 Daruma_FI_Suprimento(ndice 1207)


Definio do Mtodo:
Faz um suprimento na impressora (entrada de dinheiro).
Parmetros do Mtodo:
1. Valor: String com o Valor do suprimento com at 14 dgitos (2 casas decimais).
2. FormaPagamento: String com a Forma de pagamento com at 16 carcteres. Se no for informada,
o suprimento ser feito em Dinheiro.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Caso queira fazer um Suprimento com mais de uma forma de pagamento deve-se chamar o Mtodo
Daruma_FI_AbreRecebimentoNaoFiscal, passando no parmetro ndice o ndice do Suprimento.
Exemplos:

Exemplo em Visual Basic 6.0:


Dim Str_Valor_do_Suprimento As String
Dim Str_Forma_de_Pagamento As String
Str_Valor_do_Suprimento = "0,10"
Str_Forma_de_Pagamento = "Dinheiro"
Int_Retorno = Daruma_FI_Suprimento(Str_Valor_do_Suprimento, Str_Forma_de_Pagamento)
Exemplo em Delphi 7.0:
var
Str_Valor_do_Suprimento: String;
Str_Forma_de_Pagamento: String;
begin
Str_Valor_do_Suprimento := '0,10';
Str_Forma_de_Pagamento := 'Dinheiro';
Int_Retorno := Daruma_FI_Suprimento( pchar( Str_Valor_do_Suprimento ), pchar(
Str_Forma_de_Pagamento ) );

1.6.3

Mtodos Gaveta Autenticao e Outras

1.6.3.1

Daruma_FI_VerificaDocAutenticacao(ndice 1301)
Definio do Mtodo:
Verifica se existe documento para ser Autenticado, esta Mtodo pode ser util antes do envio da
autenticao, ou seja, voc apenas envia o mtodo para a Autenticao quando tiver a certeza que o
documento esta presente.

Daruma Automao

37

Daruma Framework

Uma pratica interessante a ser aplicada a seguinte:


1) Chamar a Funcao Daruma_FI_VerificaDocAutenticao.
2) Retornou igual a 1 (um)?.
3) Se sim, chamar a funcao Daruma_FI_Autentica.
4) Caso contrrio Voltar ao passo 1.
Com isso voc garante que o mtodo de Autenticao somente ser chamado quando o documento
estiver presente.
Parmetros do Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_VerificaDocAutenticacao()
If Int_Retorno = 1 Then
MsgBox "1 = Documento Posicionado"
Else
MsgBox "0 = Documento Ausente"
End If
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_VerificaDocAutenticacao();
if Int_Retorno = 1 Then
begin
Application.MessageBox('1 = Documento Posicionado!', 'Daruma Framework', mb_ok);
end
else
begin
Application.MessageBox('0 = Documento No Posicionado!', 'Daruma Framework', mb_ok);
end;

1.6.3.2

Daruma_FI_Autenticacao(ndice 1300)
Global
Global
Global
Global
Global
Global
Global

Int_Retorno As Integer
Int_Ack As Integer
Int_St1 As Integer
Int_St2 As Integer
Int_Tipo_Aliquota As Integer
Str_Informacao As String
Int_Informacao As Integer

************************************************************************************
***************
'
'
'
MFD
'
'
'
'***********************************************************************************
****************
'Funo Codigo de barras da MFD
Public Declare Function Daruma_FIMFD_ImprimeCodigoBarras Lib "Daruma32.dll" (ByVal Tipo As String,
ByVal Codigo As String, ByVal Largura As String, ByVal Altura As String, ByVal Posicao As String) As
Integer

Daruma Automao

Daruma Framework

38

************************************************************************************
***************
'
'
'
FS345
'
'
'
'***********************************************************************************
****************
'Metodos de Verificacao

Public Declare Function Daruma_FI_ResetaImpressora Lib "Daruma32.dll" () As Integer

Public Declare Function Daruma_FI_LeituraXSerial Lib "Daruma32.dll" () As Integer


'Metodos Cupom
Public Declare Function Daruma_FI_AbreCupom Lib "Daruma32.dll" (ByVal Cpf_ou_Cnpj As String) As
Integer
Public Declare Function Daruma_FI_VendeItem Lib "Daruma32.dll" (ByVal Codigo As String, ByVal
Descricao As String, ByVal Aliquota As String, ByVal TipoQuantidade As String, ByVal Quantidade As
String, ByVal CasasDecimais As Integer, ByVal ValorUnitario As String, ByVal TipoDesconto As String,
ByVal Desconto As String) As Integer
Public Declare Function Daruma_FI_VendeItemDepartamento Lib "Daruma32.dll" (ByVal Codigo As String,
ByVal Descricao As String, ByVal Aliquota As String, ByVal ValorUnitario As String, ByVal Quantidade As
String, ByVal Acrescimo As String, ByVal Desconto As String, ByVal IndiceDepartamento As String, ByVal
UnidadeMedida As String) As Integer
Public Declare Function Daruma_FI_VendeItemTresDecimais Lib "Daruma32.dll" (ByVal Codigo As String,
ByVal Descricao As String, ByVal Aliquota As String, ByVal Quantidade As String, ByVal ValorUnitario As
String, ByVal Desconto_ou_Acrescimo As String, ByVal Percentual_Desconto_ou_Acrescimo As String) As
Integer
Public Declare Function Daruma_FI_FechaCupomResumido Lib "Daruma32.dll" (ByVal FormaPagamento
As String, ByVal Mensagem As String) As Integer
Public Declare Function Daruma_FI_IniciaFechamentoCupom Lib "Daruma32.dll" (ByVal
AcrescimoDesconto As String, ByVal TipoAcrescimoDesconto As String, ByVal ValorAcrescimoDesconto As
String) As Integer
Public Declare Function Daruma_FI_EfetuaFormaPagamento Lib "Daruma32.dll" (ByVal FormaPagamento
As String, ByVal ValorFormaPagamento As String) As Integer
Public Declare Function Daruma_FI_EfetuaFormaPagamentoDescricaoForma Lib "Daruma32.dll" (ByVal
FormaPagamento As String, ByVal ValorFormaPagamento As String, ByVal TextoLivre As String) As
Integer
Public Declare Function Daruma_FI_IdentificaConsumidor Lib "Daruma32.dll" (ByVal NomeConsumidor As
String, ByVal Endereco As String, ByVal Cpf_ou_Cnpj As String) As Integer
Public Declare Function Daruma_FI_TerminaFechamentoCupom Lib "Daruma32.dll" (ByVal Mensagem As
String) As Integer
Public Declare Function Daruma_FI_FechaCupom Lib "Daruma32.dll" (ByVal FormaPagamento As String,
ByVal AcrescimoDesconto As String, ByVal TipoAcrescimoDesconto As String, ByVal
ValorAcrecimoDesconto As String, ByVal ValorPago As String, ByVal Mensagem As String) As Integer
Public Declare Function Daruma_FI_CancelaItemAnterior Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_CancelaItemGenerico Lib "Daruma32.dll" (ByVal NumeroItem As
String) As Integer
Public Declare Function Daruma_FI_CancelaCupom Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_AumentaDescricaoItem Lib "Daruma32.dll" (ByVal Descricao As
String) As Integer
Public Declare Function Daruma_FI_UsaUnidadeMedida Lib "Daruma32.dll" (ByVal UnidadeMedida As
String) As Integer
Public Declare Function Daruma_FI_EmitirCupomAdicional Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_EstornoFormasPagamento Lib "Daruma32.dll" (ByVal FormaOrigem As
String, ByVal FormaDestino As String, ByVal Valor As String) As Integer

Daruma Automao

39

Daruma Framework

'Metodos para Recebimentos e Relatorios


Public Declare Function Daruma_FI_AbreComprovanteNaoFiscalVinculado Lib "Daruma32.dll" (ByVal
FormaPagamento As String, ByVal Valor As String, ByVal NumeroCupom As String) As Integer
Public Declare Function Daruma_FI_UsaComprovanteNaoFiscalVinculado Lib "Daruma32.dll" (ByVal Texto
As String) As Integer
Public Declare Function Daruma_FI_FechaComprovanteNaoFiscalVinculado Lib "Daruma32.dll" () As
Integer
Public Declare Function Daruma_FI_RelatorioGerencial Lib "Daruma32.dll" (ByVal Texto As String) As
Integer
Public Declare Function Daruma_FI_AbreRelatorioGerencial Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_EnviarTextoCNF Lib "Daruma32.dll" (ByVal Texto As String) As
Integer
Public Declare Function Daruma_FI_FechaRelatorioGerencial Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_RecebimentoNaoFiscal Lib "Daruma32.dll" (ByVal IndiceTotalizador As
String, ByVal ValorRecebimento As String, ByVal FormaPagamento As String) As Integer
Public Declare Function Daruma_FI_AbreRecebimentoNaoFiscal Lib "Daruma32.dll" (ByVal
IndiceTotalizador As String, ByVal AcrescimoDesconto As String, ByVal TipoAcrescimoDesconto As String,
ByVal ValorAcrescimoDesconto As String, ByVal ValorRecebimento As String, ByVal TextoLivreto As
String) As Integer
Public Declare Function Daruma_FI_EfetuaFormaPagamentoNaoFiscal Lib "Daruma32.dll" (ByVal
FormaPagamento As String, ByVal ValorFormaPagamento As String, ByVal ObsLivre As String) As Integer
Public Declare Function Daruma_FI_Sangria Lib "Daruma32.dll" (ByVal Valor As String) As Integer
Public Declare Function Daruma_FI_Suprimento Lib "Daruma32.dll" (ByVal Valor As String, ByVal
FormaPagamento As String) As Integer
Public Declare Function Daruma_FI_FundoCaixa Lib "Daruma32.dll" (ByVal ValorPagamento As String,
ByVal FormaPagamento As String) As Integer
Public Declare Function Daruma_FI_LeituraX Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_ReducaoZ Lib "Daruma32.dll" (ByVal Data As String, ByVal Hora As
String) As Integer
Public Declare Function Daruma_FI_ReducaoZAjustaDataHora Lib "Daruma32.dll" (ByVal Data As String,
ByVal Hora As String) As Integer
Public Declare Function Daruma_FI_LeituraMemoriaFiscalData Lib "Daruma32.dll" (ByVal DataInicial As
String, ByVal DataFinal As String) As Integer
Public Declare Function Daruma_FI_LeituraMemoriaFiscalReducao Lib "Daruma32.dll" (ByVal
ReducaoInicial As String, ByVal ReducaoFinal As String) As Integer
Public Declare Function Daruma_FI_LeituraMemoriaFiscalSerialData Lib "Daruma32.dll" (ByVal DataInicial
As String, ByVal DataFinal As String) As Integer
Public Declare Function Daruma_FI_LeituraMemoriaFiscalSerialReducao Lib "Daruma32.dll" (ByVal
ReducaoInicial As String, ByVal ReducaoFinal As String) As Integer
'Metodos Modo Gaveta, Autentica e Outras
Public Declare Function Daruma_FI_VerificaDocAutenticacao Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_Autenticacao Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_AutenticacaoStr Lib "Daruma32.dll" (ByVal AtenticacaoStr As String)
As Integer
Public Declare Function Daruma_FI_VerificaEstadoGaveta Lib "Daruma32.dll" (ByRef EstadoGaveta As
Integer) As Integer
Public Declare Function Daruma_FI_VerificaEstadoGavetaStr Lib "Daruma32.dll" (ByVal EstadoGaveta As
String) As Integer
Public Declare Function Daruma_FI_AcionaGaveta Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_AbrePortaSerial Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_FechaPortaSerial Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_AberturaDoDia Lib "Daruma32.dll" (ByVal Valor As String, ByVal
FormaPagamento As String) As Integer
Public Declare Function Daruma_FI_FechamentoDoDia Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_ImprimeConfiguracoesImpressora Lib "Daruma32.dll" () As Integer
'Metodos Prog e Config
Public Declare Function Daruma_FI_ProgramaAliquota Lib "Daruma32.dll" (ByVal Aliquota As String, ByVal
ICMS_ou_ISS As Integer) As Integer
Public Declare Function Daruma_FI_NomeiaTotalizadorNaoSujeitoIcms Lib "Daruma32.dll" (ByVal Indice
As Integer, ByVal Totalizador As String) As Integer
Public Declare Function Daruma_FI_ProgramaFormasPagamento Lib "Daruma32.dll" (ByVal
DescricaoFormasPgto As String) As Integer
Public Declare Function Daruma_FI_ProgramaOperador Lib "Daruma32.dll" (ByVal NomeOperador As
String) As Integer

Daruma Automao

Daruma Framework

Public Declare Function


Public Declare Function
Public Declare Function
Integer
Public Declare Function
Integer
Public Declare Function
Public Declare Function
Public Declare Function
As Integer
Public Declare Function
String) As Integer

40

Daruma_FI_ProgramaArredondamento Lib "Daruma32.dll" () As Integer


Daruma_FI_ProgramaTruncamento Lib "Daruma32.dll" () As Integer
Daruma_FI_LinhasEntreCupons Lib "Daruma32.dll" (ByVal Linhas As Integer) As
Daruma_FI_EspacoEntreLinhas Lib "Daruma32.dll" (ByVal Dots As Integer) As
Daruma_FI_ProgramaHorarioVerao Lib "Daruma32.dll" () As Integer
Daruma_FI_EqualizaFormasPgto Lib "Daruma32.dll" () As Integer
Daruma_FI_ProgramaVinculados Lib "Daruma32.dll" (ByVal Descricao As String)
Daruma_FI_ProgFormasPagtoSemVincular Lib "Daruma32.dll" (ByVal Descricao As

'Metodos de Configuracao do ECF


Public Declare Function Daruma_FI_CfgFechaAutomaticoCupom Lib "Daruma32.dll" (ByVal Flag As String)
As Integer
Public Declare Function Daruma_FI_CfgRedZAutomatico Lib "Daruma32.dll" (ByVal Flag As String) As
Integer
Public Declare Function Daruma_FI_CfgLeituraXAuto Lib "Daruma32.dll" (ByVal Flag As String) As Integer
Public Declare Function Daruma_FI_CfgImpEstGavVendas Lib "Daruma32.dll" (ByVal Flag As String) As
Integer
Public Declare Function Daruma_FI_CfgCalcArredondamento Lib "Daruma32.dll" (ByVal Flag As String) As
Integer
Public Declare Function Daruma_FI_CfgHorarioVerao Lib "Daruma32.dll" (ByVal Flag As String) As Integer
Public Declare Function Daruma_FI_CfgSensorAut Lib "Daruma32.dll" (ByVal Flag As String) As Integer
Public Declare Function Daruma_FI_CfgCupomAdicional Lib "Daruma32.dll" (ByVal Flag As String) As
Integer
Public Declare Function Daruma_FI_CfgPermMensPromCNF Lib "Daruma32.dll" (ByVal Flag As String) As
Integer
Public Declare Function Daruma_FI_CfgEspacamentoCupons Lib "Daruma32.dll" (ByVal DistanciaCupons
As String) As Integer
Public Declare Function Daruma_FI_CfgHoraMinReducaoZ Lib "Daruma32.dll" (ByVal Flag As String) As
Integer
Public Declare Function Daruma_FI_CfgLimiarNearEnd Lib "Daruma32.dll" (ByVal NumeroLinhas As String)
As Integer
Public Declare Function Daruma_FI_CfgLegProdutos Lib "Daruma32.dll" (ByVal Flag As String) As Integer
'Metodos para Configuracao do Registry
Public Declare Function Daruma_Registry_AplMensagem1 Lib "Daruma32.dll" (ByVal Str_AplMensagem_1
As String) As Integer
Public Declare Function Daruma_Registry_AplMensagem2 Lib "Daruma32.dll" (ByVal Str_AplMensagem_2
As String) As Integer
Public Declare Function Daruma_Registry_AlteraRegistry Lib "Daruma32.dll" (ByVal NomeChave As String,
ByVal ValorChave As String) As Integer
Public Declare Function Daruma_Registry_Velocidade Lib "Daruma32.dll" (ByVal VelocidadeDaPortaSerial
As String) As Integer
Public Declare Function Daruma_Registry_Porta Lib "Daruma32.dll" (ByVal NomePorta As String) As
Integer
Public Declare Function Daruma_Registry_Path Lib "Daruma32.dll" (ByVal Path As String) As Integer
Public Declare Function Daruma_Registry_Status Lib "Daruma32.dll" (ByVal Status As String) As Integer
Public Declare Function Daruma_Registry_StatusFuncao Lib "Daruma32.dll" (ByVal StatusFuncao As
String) As Integer
Public Declare Function Daruma_Registry_Retorno Lib "Daruma32.dll" (ByVal Retorno As String) As
Integer
Public Declare Function Daruma_Registry_ControlePorta Lib "Daruma32.dll" (ByVal ControlePorta As
String) As Integer
Public Declare Function Daruma_Registry_ModoGaveta Lib "Daruma32.dll" (ByVal ModoGaveta As String)
As Integer
Public Declare Function Daruma_Registry_Log Lib "Daruma32.dll" (ByVal Log As String) As Integer
Public Declare Function Daruma_Registry_NomeLog Lib "Daruma32.dll" (ByVal NomeLog As String) As
Integer
Public Declare Function Daruma_Registry_Separador Lib "Daruma32.dll" (ByVal Separador As String) As
Integer
Public Declare Function Daruma_Registry_SeparaMsgPromo Lib "Daruma32.dll" (ByVal SeparaMsgPromo
As String) As Integer
Public Declare Function Daruma_Registry_ZAutomatica Lib "Daruma32.dll" (ByVal ZAutomatica As String)

Daruma Automao

41

Daruma Framework

As Integer
Public Declare Function Daruma_Registry_XAutomatica Lib "Daruma32.dll" (ByVal XAutomatica As String)
As Integer
Public Declare Function Daruma_Registry_VendeItemUmaLinha Lib "Daruma32.dll" (ByVal
VendeItem1Lin13Dig As String) As Integer
Public Declare Function Daruma_Registry_Default Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_Registry_RetornaValor Lib "Daruma32.dll" (ByVal Produto As String,
ByVal Chave As String, ByVal Valor As String) As Integer
Public Declare Function Daruma_Registry_TerminalServer Lib "Daruma32.dll" (ByVal TerminalServer As
String) As Integer
Public Declare Function Daruma_Registry_ErroExtendidoOk Lib "Daruma32.dll" (ByVal ValorErro As String)
As Integer
Public Declare Function Daruma_Registry_AbrirDiaFiscal Lib "Daruma32.dll" (ByVal AbrirDiaFiscal As
String) As Integer
Public Declare Function Daruma_Registry_VendaAutomatica Lib "Daruma32.dll" (ByVal VendaAutomatica
As String) As Integer
Public Declare Function Daruma_Registry_IgnorarPoucoPapel Lib "Daruma32.dll" (ByVal
IgnorarPoucoPapel As String) As Integer
Public Declare Function Daruma_Registry_ImprimeRegistry Lib "Daruma32.dll" (ByVal Produto As String)
As Integer
'Metodos de Status
Public Declare Function Daruma_FI_StatusCupomFiscal Lib "Daruma32.dll" (ByVal StsCF As String) As
Integer
Public Declare Function Daruma_FI_StatusRelatorioGerencial Lib "Daruma32.dll" (ByVal StsGerencial As
String) As Integer
Public Declare Function Daruma_FI_StatusComprovanteNaoFiscalVinculado Lib "Daruma32.dll" (ByVal
StsCNFV As String) As Integer
Public Declare Function Daruma_FI_VerificaImpressoraLigada Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_VerificaTotalizadoresParciais Lib "Daruma32.dll" (ByVal
Totalizadores_Parciais As String) As Integer
Public Declare Function Daruma_FI_VerificaModoOperacao Lib "Daruma32.dll" (ByVal Modo As String) As
Integer
Public Declare Function Daruma_FI_VerificaTotalizadoresNaoFiscais Lib "Daruma32.dll" (ByVal
Totalizadores As String) As Integer
Public Declare Function Daruma_FI_VerificaTotalizadoresNaoFiscaisEx Lib "Daruma32.dll" (ByVal
Totalizadores As String) As Integer
Public Declare Function Daruma_FI_VerificaTruncamento Lib "Daruma32.dll" (ByVal Flag As String) As
Integer
Public Declare Function Daruma_FI_VerificaAliquotasIss Lib "Daruma32.dll" (ByVal AliquotasIss As String)
As Integer
Public Declare Function Daruma_FI_VerificaRecebimentoNaoFiscal Lib "Daruma32.dll" (ByVal
Recebimentos As String) As Integer
Public Declare Function Daruma_FI_VerificaTipoImpressora Lib "Daruma32.dll" (ByRef TipoImpressora As
Integer) As Integer
Public Declare Function Daruma_FI_VerificaIndiceAliquotasIss Lib "Daruma32.dll" (ByVal AliquotaIss As
String) As Integer
Public Declare Function Daruma_FI_VerificaModeloECF Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_VerificaDescricaoFormasPagamento Lib "Daruma32.dll" (ByVal
Descricao As String) As Integer
Public Declare Function Daruma_FI_VerificaXPendente Lib "Daruma32.dll" (ByVal XPendente As String) As
Integer
Public Declare Function Daruma_FI_VerificaZPendente Lib "Daruma32.dll" (ByVal ZPendente As String) As
Integer
Public Declare Function Daruma_FI_VerificaDiaAberto Lib "Daruma32.dll" (ByVal DiaAberto As String) As
Integer
Public Declare Function Daruma_FI_VerificaHorarioVerao Lib "Daruma32.dll" (ByVal HorarioVerao As
String) As Integer
Public Declare Function Daruma_FI_VerificaFormasPagamento Lib "Daruma32.dll" (ByVal FormasPagto As
String) As Integer
Public Declare Function Daruma_FI_VerificaFormasPagamentoEx Lib "Daruma32.dll" (ByVal
FormasPagtoEx As String) As Integer
Public Declare Function Daruma_FI_VerificaEpromConectada Lib "Daruma32.dll" (ByVal Flag As String) As
Integer
Public Declare Function Daruma_FI_VerificaEstadoImpressora Lib "Daruma32.dll" (ByRef ACK As Integer,
ByRef ST1 As Integer, ByRef ST2 As Integer) As Integer

Daruma Automao

Daruma Framework

42

'Metodos de Informacao do ECF e Contadores


Public Declare Function Daruma_FI_ClicheProprietario Lib "Daruma32.dll" (ByVal Cliche As String) As
Integer
Public Declare Function Daruma_FI_ClicheProprietarioEx Lib "Daruma32.dll" (ByVal ClicheProprietarioEx As
String) As Integer
Public Declare Function Daruma_FI_NumeroCaixa Lib "Daruma32.dll" (ByVal NumeroCaixa As String) As
Integer
Public Declare Function Daruma_FI_NumeroLoja Lib "Daruma32.dll" (ByVal NumeroLoja As String) As
Integer
Public Declare Function Daruma_FI_NumeroSerie Lib "Daruma32.dll" (ByVal NumeroSerie As String) As
Integer
Public Declare Function Daruma_FI_VersaoFirmware Lib "Daruma32.dll" (ByVal VersaoFirmware As String)
As Integer
Public Declare Function Daruma_FI_CGC_IE Lib "Daruma32.dll" (ByVal CGC As String, ByVal IE As String)
As Integer
Public Declare Function Daruma_FI_LerAliquotasComIndice Lib "Daruma32.dll" (ByVal AliquotasComIndice
As String) As Integer
Public Declare Function Daruma_FI_NumeroCupom Lib "Daruma32.dll" (ByVal NumeroCupom As String)
As Integer
Public Declare Function Daruma_FI_COO Lib "Daruma32.dll" (ByVal Coo_Inicial As String, ByVal
COO_Final As String) As Integer
Public Declare Function Daruma_FI_MinutosImprimindo Lib "Daruma32.dll" (ByVal Minutos As String) As
Integer
Public Declare Function Daruma_FI_MinutosLigada Lib "Daruma32.dll" (ByVal Minutos As String) As
Integer
Public Declare Function Daruma_FI_NumeroSubstituicoesProprietario Lib "Daruma32.dll" (ByVal
NumeroSubstituicoes As String) As Integer
Public Declare Function Daruma_FI_NumeroIntervencoes Lib "Daruma32.dll" (ByVal NumeroIntervencoes
As String) As Integer
Public Declare Function Daruma_FI_NumeroReducoes Lib "Daruma32.dll" (ByVal NumeroReducoes As
String) As Integer
Public Declare Function Daruma_FI_NumeroCuponsCancelados Lib "Daruma32.dll" (ByVal
NumeroCancelamentos As String) As Integer
Public Declare Function Daruma_FI_NumeroOperacoesNaoFiscais Lib "Daruma32.dll" (ByVal
NumeroOperacoes As String) As Integer
Public Declare Function Daruma_FI_DataHoraImpressora Lib "Daruma32.dll" (ByVal Data As String, ByVal
Hora As String) As Integer
Public Declare Function Daruma_FI_DataHoraReducao Lib "Daruma32.dll" (ByVal Data As String, ByVal
Hora As String) As Integer
Public Declare Function Daruma_FI_DataMovimento Lib "Daruma32.dll" (ByVal Data As String) As Integer
Public Declare Function Daruma_FI_ContadoresTotalizadoresNaoFiscais Lib "Daruma32.dll" (ByVal
Contadores As String) As Integer
'Metodos Totalizadores Gerais
Public Declare Function Daruma_FI_GrandeTotal Lib "Daruma32.dll" (ByVal GrandeTotal As String) As
Integer
Public Declare Function Daruma_FI_Descontos Lib "Daruma32.dll" (ByVal ValorDescontos As String) As
Integer
Public Declare Function Daruma_FI_Acrescimos Lib "Daruma32.dll" (ByVal ValorAcrescimos As String) As
Integer
Public Declare Function Daruma_FI_Cancelamentos Lib "Daruma32.dll" (ByVal ValorCancelamentos As
String) As Integer
Public Declare Function Daruma_FI_DadosUltimaReducao Lib "Daruma32.dll" (ByVal DadosReducao As
String) As Integer
Public Declare Function Daruma_FI_SubTotal Lib "Daruma32.dll" (ByVal SubTotal As String) As Integer
Public Declare Function Daruma_FI_RetornoAliquotas Lib "Daruma32.dll" (ByVal cAliquotas As String) As
Integer
Public Declare Function Daruma_FI_ValorPagoUltimoCupom Lib "Daruma32.dll" (ByVal ValorCupom As
String) As Integer
Public Declare Function Daruma_FI_ValorFormaPagamento Lib "Daruma32.dll" (ByVal FormaPagamento
As String, ByVal ValorForma As String) As Integer
Public Declare Function Daruma_FI_ValorTotalizadorNaoFiscal Lib "Daruma32.dll" (ByVal Totalizador As
String, ByVal ValorTotalizador As String) As Integer
Public Declare Function Daruma_FI_UltimoItemVendido Lib "Daruma32.dll" (ByVal NumeroItem As String)
As Integer
Public Declare Function Daruma_FI_UltimaFormaPagamento Lib "Daruma32.dll" (ByVal FormaPagamento

Daruma Automao

43

Daruma Framework

As String, ByVal ValorForma As String) As Integer


Public Declare Function Daruma_FI_TipoUltimoDocumento Lib "Daruma32.dll" (ByVal TipoUltimoDoc As
String) As Integer
'Metodos Relatorios Fiscais e Relatorios
Public Declare Function Daruma_FI_MapaResumo Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_RelatorioTipo60Analitico Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_RelatorioTipo60Mestre Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI_FlagsFiscais Lib "Daruma32.dll" (ByRef Flag As Integer) As Integer
Public Declare Function Daruma_FI_PalavraStatus Lib "Daruma32.dll" (ByVal PalavraStatus As String) As
Integer
Public Declare Function Daruma_FI_PalavraStatusBinario Lib "Daruma32.dll" (ByVal PalavraStatusBinario
As String) As Integer
Public Declare Function Daruma_FI_SimboloMoeda Lib "Daruma32.dll" (ByVal SimboloMoeda As String) As
Integer
Public Declare Function Daruma_FI_RetornoImpressora Lib "Daruma32.dll" (ByRef ACK As Integer, ByRef
ST1 As Integer, ByRef ST2 As Integer) As Integer
Public Declare Function Daruma_FI_RetornaErroExtendido Lib "Daruma32.dll" (ByVal ErroExtendido As
String) As Integer
Public Declare Function Daruma_FI_RetornaAcrescimoNF Lib "Daruma32.dll" (ByVal AcrescimoNF As
String) As Integer
Public Declare Function Daruma_FI_RetornaCFCancelados Lib "Daruma32.dll" (ByVal CNCancelados As
String) As Integer
Public Declare Function Daruma_FI_RetornaCNFCancelados Lib "Daruma32.dll" (ByVal CNFCancelados As
String) As Integer
Public Declare Function Daruma_FI_RetornaCLX Lib "Daruma32.dll" (ByVal RetornaCLX As String) As
Integer
Public Declare Function Daruma_FI_RetornaCNFNV Lib "Daruma32.dll" (ByVal RetornaCNFNV As String)
As Integer
Public Declare Function Daruma_FI_RetornaCNFV Lib "Daruma32.dll" (ByVal RetornaCNFV As String) As
Integer
Public Declare Function Daruma_FI_RetornaCRO Lib "Daruma32.dll" (ByVal RetornaCRO As String) As
Integer
Public Declare Function Daruma_FI_RetornaCRZ Lib "Daruma32.dll" (ByVal RetornaCRZ As String) As
Integer
Public Declare Function Daruma_FI_RetornaCRZRestante Lib "Daruma32.dll" (ByVal RetornaCRZRestante
As String) As Integer
Public Declare Function Daruma_FI_RetornaCancelamentoNF Lib "Daruma32.dll" (ByVal CancelamentoNF
As String) As Integer
Public Declare Function Daruma_FI_RetornaDescontoNF Lib "Daruma32.dll" (ByVal DescontoNF As String)
As Integer
Public Declare Function Daruma_FI_RetornaGNF Lib "Daruma32.dll" (ByVal RetornaGNF As String) As
Integer
Public Declare Function Daruma_FI_RetornaTempoImprimindo Lib "Daruma32.dll" (ByVal
TempoImprimindo As String) As Integer
Public Declare Function Daruma_FI_RetornaTempoLigado Lib "Daruma32.dll" (ByVal TempoLigado As
String) As Integer
Public Declare Function Daruma_FI_RetornaTotalPagamentos Lib "Daruma32.dll" (ByVal TotalPagamentos
As String) As Integer
Public Declare Function Daruma_FI_RetornaTroco Lib "Daruma32.dll" (ByVal Troco As String) As Integer
Public Declare Function Daruma_FI_RetornaValorComprovanteNaoFiscal Lib "Daruma32.dll" (ByVal
IndiceRegistrCNF As String, ByVal Ref_Valor As String) As Integer
Public Declare Function Daruma_FI_RetornaIndiceComprovanteNaoFiscal Lib "Daruma32.dll" (ByVal
DescricaoRegistrCNF As String, ByVal Ref_Indice As String) As Integer
Public Declare Function Daruma_FI_RetornaRegistradoresNaoFiscais Lib "Daruma32.dll" (ByVal
RegistrNaoFiscais As String) As Integer
Public Declare Function Daruma_FI_RetornaRegistradoresFiscais Lib "Daruma32.dll" (ByVal
RegistradoresFiscais As String) As Integer
'Metodos TEF
Public Declare Function Daruma_TEF_EsperarArquivo Lib "Daruma32.dll" (ByVal PathArquivo As String,
ByVal Tempo As String, ByVal Travar As String) As Integer
Public Declare Function Daruma_TEF_ImprimirResposta Lib "Daruma32.dll" (ByVal PathArquivo As String,
ByVal Forma As String, ByVal Travar As String) As Integer
Public Declare Function Daruma_TEF_ImprimirRespostaCartao Lib "Daruma32.dll" (ByVal PathArquivo As
String, ByVal Forma As String, ByVal Travar As String, ByVal ValorPagamento As String) As Integer

Daruma Automao

Daruma Framework

44

Public Declare Function Daruma_TEF_FechaRelatorio Lib "Daruma32.dll" () As Integer


Public Declare Function Daruma_TEF_SetFocus Lib "Daruma32.dll" (ByVal TituloJanela As String) As
Integer
Public Declare Function Daruma_TEF_TravarTeclado Lib "Daruma32.dll" (ByVal Travar As String) As
Integer
************************************************************************************
***************
'
'
'
FS2000
'
'
'
'***********************************************************************************
****************

'Metodos exclusivos
Public Declare Function Daruma_Registry_FS2000_CupomAdicional Lib "Daruma32.dll" (ByVal
CupomAdicional As String) As Integer
Public Declare Function Daruma_Registry_FS2000_TempoEsperaCheque Lib "Daruma32.dll" (ByVal
TempodeEspera As String) As Integer
Public Declare Function Daruma_FI2000_DescontoSobreItemVendido Lib "Daruma32.dll" (ByVal
NumeroItem As String, ByVal TipoDesconto As String, ByVal ValorDesconto As String) As Integer
Public Declare Function Daruma_FI2000_AcrescimosICMSISS Lib "Daruma32.dll" (ByVal AcrescICMS As
String, ByVal AcrescISS As String) As Integer
Public Declare Function Daruma_FI2000_CancelamentosICMSISS Lib "Daruma32.dll" (ByVal CancelICMS
As String, ByVal CancelISS As String) As Integer
Public Declare Function Daruma_FI2000_DescontosICMSISS Lib "Daruma32.dll" (ByVal DescICMS As
String, ByVal DescISS As String) As Integer
Public Declare Function Daruma_FI2000_LeituraInformacaoUltimosCNF Lib "Daruma32.dll" (ByVal
UltimosCNF As String) As Integer
Public Declare Function Daruma_FI2000_LeituraInformacaoUltimoDoc Lib "Daruma32.dll" (ByVal
TipoUltimoDoc As String, ByVal ValorUltimoDoc As String) As Integer
Public Declare Function Daruma_FI2000_VerificaRelatorioGerencial Lib "Daruma32.dll" (ByVal Gerencial As
String) As Integer
Public Declare Function Daruma_FI2000_CriaRelatorioGerencial Lib "Daruma32.dll" (ByVal NomeGerencial
As String) As Integer
Public Declare Function Daruma_FI2000_AbreRelatorioGerencial Lib "Daruma32.dll" (ByVal Indice As
String) As Integer
Public Declare Function Daruma_FI2000_CancelamentoCNFV Lib "Daruma32.dll" (ByVal COO_CNFV As
String) As Integer
Public Declare Function Daruma_FI2000_SegundaViaCNFVinculado Lib "Daruma32.dll" () As Integer
'Metodos para cheques
Public Declare Function Daruma_FI2000_StatusCheque Lib "Daruma32.dll" (ByVal StatusCheque As
String) As Integer
Public Declare Function Daruma_FI2000_ImprimirCheque Lib "Daruma32.dll" (ByVal Banco As String,
ByVal Cidade As String, ByVal Data As String, ByVal Favorecido As String, ByVal Valor As String, ByVal
PosicaoCheque As String) As Integer
Public Declare Function Daruma_FI2000_ImprimirVersoCheque Lib "Daruma32.dll" (ByVal VersoCheque
As String) As Integer
Public Declare Function Daruma_FI2000_LiberarCheque Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI2000_LeituraCodigoMICR Lib "Daruma32.dll" (ByVal CodigoMICR As
String) As Integer
Public Declare Function Daruma_FI2000_CancelarCheque Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_FI2000_LeituraTabelaCheque Lib "Daruma32.dll" (ByVal TabelaCheque
As String) As Integer
Public Declare Function Daruma_FI2000_CarregarCheque Lib "Daruma32.dll" (ByVal NumeroBanco As
String) As Integer
Public Declare Function Daruma_FI2000_CorrigirGeometriaCheque Lib "Daruma32.dll" (ByVal
NumeroBanco As String, ByVal GeometriaCheque As String) As Integer
************************************************************************************
***************

Daruma Automao

45

Daruma Framework

'
'
'
TA1000

'

'
'
'***********************************************************************************
****************

'Metodos para Registry


Public Declare Function Daruma_Registry_TA1000_Porta Lib "Daruma32.dll" (ByVal Porta As String) As
Integer
Public Declare Function Daruma_Registry_TA1000_PathProdutos Lib "Daruma32.dll" (ByVal PathProdutos
As String) As Integer
Public Declare Function Daruma_Registry_TA1000_PathUsuarios Lib "Daruma32.dll" (ByVal PathUsuarios
As String) As Integer
Public Declare Function Daruma_Registry_TA1000_NumeroItensEnviados Lib "Daruma32.dll" (ByVal
NumeroItensEnviados As String) As Integer
Public Declare Function Daruma_Registry_TA1000_PathRelatorios Lib "Daruma32.dll" (ByVal
PathRelatorios As String) As Integer

Public Declare Function Daruma_TA1000_CadastrarProdutos Lib "Daruma32.dll" (ByVal Descricao As


String, ByVal Codigo As String, ByVal DecimaisPreco As String, ByVal DecimaisQuantidade As String,
ByVal Preco As String, ByVal DescontoAcrescimo As String, ByVal ValorDescontoAcrescimo As String,
ByVal UnidadeMedida As String, ByVal Aliquota As String, ByVal ProximoProduto As String, ByVal
ProdutoAnterior As String, ByVal Estoque As String) As Integer
Public Declare Function Daruma_TA1000_ConsultarProdutos Lib "Daruma32.dll" (ByVal Descricao As
String, ByVal Codigo As String, ByVal DecimaisPreco As String, ByVal DecimaisQuantidade As String,
ByVal Preco As String, ByVal DescontoAcrescimo As String, ByVal ValorDescontoAcrescimo As String,
ByVal UnidadeMedida As String, ByVal Aliquota As String, ByVal ProximoProduto As String, ByVal
ProdutoAnterior As String, ByVal Estoque As String) As Integer
Public Declare Function Daruma_TA1000_AlterarProdutos Lib "Daruma32.dll" (ByVal Codigo_Consultar As
String, ByVal Descricao As String, ByVal Codigo As String, ByVal DecimaisPreco As String, ByVal
DecimaisQuantidade As String, ByVal Preco As String, ByVal DescontoAcrescimo As String, ByVal
ValorDescontoAcrescimo As String, ByVal UnidadeMedida As String, ByVal Aliquota As String, ByVal
ProximoProduto As String, ByVal ProdutoAnterior As String, ByVal Estoque As String) As Integer
Public Declare Function Daruma_TA1000_EliminarProdutos Lib "Daruma32.dll" (ByVal Codigo As String)
As Integer
Public Declare Function Daruma_TA1000_EnviarBancoProdutos Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_TA1000_ReceberBancoProdutos Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_TA1000_ReceberProdutosVendidos Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_TA1000_ZerarProdutos Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_TA1000_ZerarProdutosVendidos Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_TA1000_EnviarBancoUsuarios Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_TA1000_ReceberBancoUsuarios Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_TA1000_ZerarUsuarios Lib "Daruma32.dll" () As Integer
Public Declare Function Daruma_TA1000_CadastrarUsuarios Lib "Daruma32.dll" (ByVal Nome As String,
ByVal CPF As String, ByVal CodigoConvenio As String, ByVal CodigoUsuario As String, ByVal
UsuarioAnterior As String, ByVal ProximoUsuario As String) As Integer
Public Declare Function Daruma_TA1000_ConsultarUsuarios Lib "Daruma32.dll" (ByVal Codigo_Consultar
As String, ByVal Nome As String, ByVal CPF As String, ByVal CodigoConvenio As String, ByVal
CodigoUsuario As String, ByVal UsuarioAnterior As String, ByVal ProximoUsuario As String) As Integer
Public Declare Function Daruma_TA1000_AlterarUsuarios Lib "Daruma32.dll" (ByVal Codigo_Consultar As
String, ByVal Nome As String, ByVal CPF As String, ByVal CodigoConvenio As String, ByVal CodigoUsuario
As String, ByVal UsuarioAnterior As String, ByVal ProximoUsuario As String) As Integer
Public Declare Function Daruma_TA1000_EliminarUsuarios Lib "Daruma32.dll" (ByVal Codigo As String) As
Integer
Public Declare Function Daruma_TA1000_LeStatusTransferencia Lib "Daruma32.dll" () As Integer
************************************************************************************
***************

Daruma Automao

Daruma Framework

46

'
'
'
DUAL

'

'
'
'***********************************************************************************
****************

'Metodos para Registry


Public Declare Function
Integer
Public Declare Function
Integer
Public Declare Function
String) As Integer
Public Declare Function
Integer
Public Declare Function
String) As Integer

Daruma_Registry_DUAL_Enter Lib "Daruma32.dll" (ByVal Enter As String) As


Daruma_Registry_DUAL_Espera Lib "Daruma32.dll" (ByVal Espera As String) As
Daruma_Registry_DUAL_ModoEscrita Lib "Daruma32.dll" (ByVal ModoEscrita As
Daruma_Registry_DUAL_Porta Lib "Daruma32.dll" (ByVal Porta As String) As
Daruma_Registry_DUAL_Tabulacao Lib "Daruma32.dll" (ByVal Tabulacao As

'Metodos para Status


Public Declare Function Daruma_DUAL_VerificaStatus Lib "Daruma32.dll" () As Integer 'Verificar Status
Public Declare Function Daruma_DUAL_VerificaDocumento Lib "Daruma32.dll" () As Integer 'Verifica
Documento
'Metodos para Autenticacao a Impressao
Public Declare Function Daruma_DUAL_ImprimirTexto Lib "Daruma32.dll" (ByVal TextoLivre As String,
ByVal TamanhoTexto As Integer) As Integer 'Imprimir Texto Livre
Public Declare Function Daruma_DUAL_Autenticar Lib "Daruma32.dll" (ByVal NumVias As String, ByVal
Texto As String, ByVal TempoAguardar As String) As Integer 'Autenticar
Public Declare Function Daruma_DUAL_AcionaGaveta Lib "Daruma32.dll" () As Integer 'AcionaGaveta
'Declaracoes globais
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
' Funcoes globais
Public Function Daruma_MostrarRetorno()
Dim Str_ErroExtendido As String
Int_Ack = 0
Int_St1 = 0
Int_St2 = 0
Daruma_FI_RetornoImpressora Int_Ack, Int_St1, Int_St2
Str_ErroExtendido = Space(4)
Daruma_FI_RetornaErroExtendido Str_ErroExtendido
MsgBox "Retorno do Metodo = " + CStr(Int_Retorno) + Chr(13) + Chr(10) _
+ "Ack = " + CStr(Int_Ack) + Chr(13) + Chr(10) _
+ "St1 = " + CStr(Int_St1) + Chr(13) + Chr(10) _
+ "St2 = " + CStr(Int_St2) + Chr(13) + Chr(10) _
+ "Erro Extendido = " + Str_ErroExtendido, , "Daruma Framework Retorno do Metodo"
End Function
'Retornos da DUAL
Public Function Retorno_DUAL()
If Int_Retorno = 1 Then
MsgBox "1(um) - Impressora OK!", vbInformation, "Daruma Framework"
End If
If Int_Retorno = -50 Then
MsgBox "-50 - Impressora OFF-LINE!", vbCritical, "Daruma Framework"

Daruma Automao

47

Daruma Framework

End If
If Int_Retorno = -51 Then
MsgBox "-51 - Impressora Sem Papel!", vbCritical, "Daruma Framework"
End If
If Int_Retorno = -27 Then
MsgBox "-27 - Erro Generico!", vbCritical, "Daruma Framework"
End If
If Int_Retorno = 0 Then
MsgBox "0 - Impressora Desligada!", vbCritical, "Daruma Framework"
End If
End Function

1.6.3.3

Daruma_FI_AutenticacaoStr(ndice 1302)
Definio do Mtodo:
Permite a autenticao de documentos com a adio de uma String de at 13 carcteres.
Parmetros do Mtodo:
String: de at 13 carcteres.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo permite ao usurio entrar com at 13 carcteres onde poder utilizar para texto livre,
observaes ou at mesmo uma criptografia.
- Dever ser executada imediatamente aps um recebimento no fiscal ou o trmino de um cupom fiscal.
- Poder ser repetido at 4 vezes para cada recebimento, aps isso o mtodo ser ignorado.
- Na impressora fiscal Daruma, sero aguardados 5 segundos para o posicionamento do documento e
autenticar no documento a data, hora, nmero da loja, nmero do caixa e o nmero do ltimo cupom
fiscal. Se decorrido os 5 segundos sem o posicionamento do documento.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_AutenticacaoStr As String
Str_AutenticacaoStr = "Framework"
Int_Retorno = Daruma_FI_AutenticacaoStr(Str_AutenticacaoStr)
Exemplo em Delphi 7.0:
var Str_Autenticacao_Str: String;
begin
Str_AutenticacaoStr := AutenticacaoStr.Text;
Int_Retorno := Daruma_FI_AutenticacaoStr( pchar( Str_AutenticacaoStr ) );

1.6.3.4

Daruma_FI_VerificaEstadoGaveta(ndice 1311)
Definio do Mtodo:
Retorna se a gaveta est fechada ou aberta.
Parmetros da Mtodo:
Estado: INTEIRO com a Varivel para receber o estado da gaveta, onde:
Estado = 0 sensor em nvel 0 (aberta)
Estado = 1 sensor em nvel 1 (fechada)
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o

Daruma Automao

Daruma Framework

48

ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.


Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Int_Estado_Gaveta As Integer
Int_Estado_Gaveta = 0
Int_Retorno = Daruma_FI_VerificaEstadoGaveta(Int_Estado_Gaveta)
If Int_Estado_Gaveta = 1 Then
MsgBox "1 = Gaveta Aberta"
Else
MsgBox "0 = Gaveta Fechada"
End If
Exemplo em Delphi 7.0:
var Str_Estado_Gaveta: String;
begin
SetLength (Str_Estado_Gaveta,1);
Int_Retorno := Daruma_FI_VerificaEstadoGavetaStr( Str_Estado_Gaveta );
if Str_Estado_Gaveta = '1' Then
begin
Application.MessageBox('1 = Gaveta Aberta!', 'Daruma Framework', mb_ok);

1.6.3.5

Daruma_FI_VerificaEstadoGavetaStr(ndice 1312)
Definio do Mtodo:
Retorna se a gaveta est fechada ou aberta.
Parmetros da Mtodo:
Estado: INTEIRO com a Varivel para receber o estado da gaveta, onde:
1. Estado = 1 sensor em nvel 1 (fechada)
2. Estado = 0 sensor em nvel 0 (aberta)
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Estado_Gaveta As String
Str_Estado_Gaveta = Space(1)
Int_Retorno = Daruma_FI_VerificaEstadoGavetaStr(Str_Estado_Gaveta)
If Str_Estado_Gaveta = 1 Then
MsgBox "1 = Gaveta Aberta!"
Else
MsgBox "0 = Gaveta Fechada!"
End If
Exemplo em Delphi 7.0:
var Str_Estado_Gaveta: String;
begin
SetLength (Str_Estado_Gaveta,1);
Int_Retorno := Daruma_FI_VerificaEstadoGavetaStr( Str_Estado_Gaveta );

Daruma Automao

49

Daruma Framework

if Str_Estado_Gaveta = '1' Then


begin
Application.MessageBox('1 = Gaveta Aberta!', 'Daruma Framework', mb_ok);

1.6.3.6

Daruma_FI_AcionaGaveta(ndice 1310)
Definio do Mtodo:
Abre a gaveta de dinheiro.
Parmetros do Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_AcionaGaveta()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_AcionaGaveta();

1.6.3.7

Daruma_FI_AbrePortaSerial(ndice 600)
Definio do Mtodo:
Abre a porta serial para comunicao com a impressora.
Parmetros da Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- A Mtodo l o nome da porta a ser aberta no Na Chave do Registry Se o parmetro "porta" estiver
configurado com a palavra "Default" a Mtodo localiza onde a impressora est conectada e configurado no
Registry.
- Por Default a Daruma32.dll faz o gerenciamento de fluxo de dados, evitando dessa maneira
de ter que abrir a porta serial.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_AbrePortaSerial()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_AbrePortaSerial();

1.6.3.8

Daruma_FI_FechaPortaSerial(ndice 601)
Definio do Mtodo:
Fecha a porta serial.

Daruma Automao

Daruma Framework

50

Parmetros da Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Por Default a Daruma32.dll faz o gerenciamento de fluxo de dados.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_FechaPortaSerial()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_FechaPortaSerial();

1.6.3.9

Daruma_FI_AberturaDoDia(ndice 604)
Definio do Mtodo:
Faz a abertura do caixa emitindo um suprimento e uma LeituraX. Obs.: Na FS600 (MFD), no ser emitida
a LeituraX.
Parmetros da Mtodo:
1. Valor: String com o Valor do suprimento com at 14 dgitos (2 casas decimais). Informe o valor "0"
para no fazer suprimento.
2. FormaPagamento: String com a Forma de pagamento com at 16 carcteres. Se no for informado,
o suprimento ser feito em Dinheiro.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
No caso de ter sido emitida uma LeituraX, no dia entao ser feito apenas um suprimento.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Valor_do_Suprimento As String
Dim Str_Forma_de_Pagamento As String
Str_Valor_do_Suprimento = "0,10"
Str_Forma_de_Pagamento = "Dinheiro"
Int_Retorno = Daruma_FI_AberturaDoDia(Str_Valor_do_Suprimento, Str_Forma_de_Pagamento)
Exemplo em Delphi 7.0:
var
Str_Valor_do_Suprimento: String;
Str_Forma_de_Pagamento: String;
begin
Str_Valor_do_Suprimento := '0,10';
Str_Forma_de_Pagamento := 'Dinheiro';
Int_Retorno := Daruma_FI_AberturaDoDia( pchar( Str_Valor_do_Suprimento ), pchar(
Str_Forma_de_Pagamento ) );

Daruma Automao

51

Daruma Framework

1.6.3.10 Daruma_FI_FechamentoDoDia(ndice 605)


Definio do Mtodo:
Faz o fechamento do dia. Esse Mtodo grava o COO final e o Grande Total final que sero usados na
Mtodo Daruma_FI_RelatorioTipo60Mestre.
Parmetros da Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo dever ser aplicado sempre antes do encerramento do dia fiscal.
- Nunca emita nenhum relatrio, antes de executar este Mtodo.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_FechamentoDoDia()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_FechamentoDoDia();

1.6.3.11 Daruma_FI_ImprimeConfiguracoesImpressora(ndice 607)


Definio do Mtodo:
Imprime configuraes da impressora fiscal em um relatrio gerencial. Ser emitida uma leitura X antes.
Veja abaixo em "Observaes" as informaes que sero impressas.
Parmetros da Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Observaes:
Sero impressas as seguintes configuraes:
Data da impressora
Hora da impressora
Verso do firmware
Verso da dll
log da dll
Lin. Imp. aps pouco papel
0000
Tipo Impressora
fiscal + gaveta+autenticao
GravaStatus
Grava Retorno
Status Mtodo
Controle Porta
Modo gaveta
Modo Emulador

27/06/2001
11:38:37
120
1.9
Desabilitado

NO
NO
NO
NO
0
NO

Exemplos:
Exemplo em Visual Basic 6.0:

Daruma Automao

Daruma Framework

52

Int_Retorno = Daruma_FI_ImprimeConfiguracoesImpressora()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_ImprimeConfiguracoesImpressora();

1.6.4

Mtodos Pogramao e Configurao


Definio do Mtodo:
Imprime configuraes da impressora fiscal em um relatrio gerencial. Ser emitida uma leitura X antes.
Veja abaixo em "Observaes" as informaes que sero impressas.
Parmetros da Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Observaes:
Sero impressas as seguintes configuraes:
Data da impressora
Hora da impressora
Verso do firmware
Verso da dll
log da dll
Lin. Imp. aps pouco papel
0000
Tipo Impressora
fiscal + gaveta+autenticao
GravaStatus
Grava Retorno
Status Mtodo
Controle Porta
Modo gaveta
Modo Emulador

27/06/2001
11:38:37
120
1.9
Desabilitado

NO
NO
NO
NO
0
NO

Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_ImprimeConfiguracoesImpressora()

1.6.4.1

Daruma_FI_ProgramaAliquota(ndice 302)
Definio do Mtodo:
Programa alquota tributria na Impressora Fiscal.
Parmetros do Mtodo:
1. Alquota: String com o valor da alquota a ser programada.
2. Vnculo: INTEIRO com o valor 0 (zero) para vincular a alquota ao ICMS e 1 (um) para vincular ao
ISS.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:

Daruma Automao

53

Daruma Framework

- Para que este Mtodo funcione e preciso que seja enviado Emediatamente apos uma ReducaoZ.
- Nas Impressoras Daruma, voc "no precisa" carregar diariamente as Alquotas.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Valor_da_Aliquota As String
Dim Int_Tipo_da_Aliquota As Integer
Str_Valor_da_Aliquota = "1800"
Int_Tipo_da_Aliquota = "0"
Int_Tipo_da_Aliquota = CInt(TX_Tipo_da_Aliquota.Text)
Int_Retorno = Daruma_FI_ProgramaAliquota(Str_Valor_da_Aliquota, _
Int_Tipo_da_Aliquota)
Exemplo em Delphi 7.0:
var
Str_Valor_da_Aliquota: String;
Int_Tipo_da_Aliquota: Integer;
begin
Str_Valor_da_Aliquota := '1800';
Int_Tipo_da_Aliquota :='0'
Int_Tipo_da_Aliquota := StrToInt(Trim(Tipo_da_Aliquota.Text));
Int_Retorno := Daruma_FI_ProgramaAliquota( pchar( Str_Valor_da_Aliquota ), Int_Tipo_da_Aliquota );

1.6.4.2

Daruma_FI_NomeiaTotalizadorNaoSujeitoIcms(ndice 304)
Definio do Mtodo:
Programa Totalizador No Sujeito ao ICMS. Equivale a por exemplo Conta de Luz, gua, Telefone, etc.
Parmetros do Mtodo:
1. Indice: INTEIRO com a posio em que o totalizador ser programado.
2. Totalizador: String at 19 carcteres com o nome do totalizador.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Observaes:
O cupom fiscal deve estar fechado.
No pode haver outro totalizador cadastrado com o mesmo ndice.
Ser executada somente aps uma Reduo Z.

Exemplos:

Exemplo em Visual Basic 6.0:


Dim Int_Indice_do_Totalizador As Integer
Dim Str_Nome_do_Totalizador As String
Int_Indice_do_Totalizador = "00"
Int_Indice_do_Totalizador = CInt(TX_Indice_do_Totalizador.Text)
Str_Nome_do_Totalizador = "Conta de Luz"
Int_Retorno = Daruma_FI_NomeiaTotalizadorNaoSujeitoIcms _
(Int_Indice_do_Totalizador, Str_Nome_do_Totalizador)
Exemplo em Delphi 7.0:
var
Int_Indice_do_Totalizador: Integer;
Str_Nome_do_Totalizador: String;
begin

Daruma Automao

Daruma Framework

54

Int_Indice_do_Totalizador :='00'
Int_Indice_do_Totalizador := StrToInt(Trim(Indice_do_Totalizador.Text));
Str_Nome_do_Totalizador := 'Conta de Luz';
Int_Retorno := Daruma_FI_NomeiaTotalizadorNaoSujeitoIcms( Int_Indice_do_Totalizador, pchar(
Str_Nome_do_Totalizador ) );

1.6.4.3

Daruma_FI_ProgramaFormasPagamento(ndice 301)
Definio do Mtodo:
Realiza o casdastro das formas de pagamento na impressora fiscal, este Mtodo deve ser enviado
somente aps a realizao de uma ReduoZ que efetuado pela DLL de forma Automtica dependendo
de como estiver a Chave do Registry Daruma_Registry_ZAutomatica.
Parmetros do Mtodo:
Moeda: String contendo as formas de Pagamento desejadas, separadas por PONTO-E-VIRGULA, cada
forma de pagamento deve ter o tamanho de at 16 carcteres.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O cupom fiscal deve estar fechado.
- Ser executado somente aps uma Reduo Z.
- Na FS600 MFD a forma de pagamento no ser vinculvel. Para tornar a forma de pagamento vinculvel
na FS600 preciso que seja feita uma Interveno Tcnica.
Exemplos:

Exemplo em Visual Basic 6.0:


Dim Str_Descricao_das_Formas_Pagamento As String
Str_Descricao_das_Formas_Pagamento = "Cartao;Cheque;Redecard;"
Int_Retorno = Daruma_FI_ProgramaFormasPagamento(Str_Descricao_das_Formas_Pagamentto)
Exemplo em Delphi 7.0:
var
Str_Descricao_das_Formas_Pagamento: String;
begin
Str_Descricao_das_Formas_Pagamento := 'Cartao;Cheque;Redecard;';
Int_Retorno := Daruma_FI_ProgramaFormasPagamento( pchar(
Str_Descricao_das_Formas_Pagamento ) );

1.6.4.4

Daruma_FI_ProgramaOperador(ndice 310)
Definio do Mtodo:
Programa o Operador no ECF, essa programao pode ser seita a qualquer momento do dia.
Parmetros do Mtodo:
Operador: String com at 20 carcteres.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo poder ser chamado a qualquer momento do dia.

Daruma Automao

55

Daruma Framework

Exemplos:

Exemplo em Visual Basic 6.0:


Dim Str_Nome_do_Operador As String
Str_Nome_do_Operador = "Operador 01"
Int_Retorno = Daruma_FI_ProgramaOperador(Str_Nome_do_Operador)
Exemplo em Delphi 7.0:
var
Str_Nome_do_Operador: String;
begin
Str_Nome_do_Operador := 'Operador 01';
Int_Retorno := Daruma_FI_ProgramaOperador( pchar( Str_Nome_do_Operador ) );

1.6.4.5

Daruma_FI_ProgramaArredondamento(ndice 305)
Definio do Mtodo:
Programa o modo arrendondamento na impressora.
Parmetros do Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O cupom fiscal deve estar fechado.
- Ser executada somente aps uma Reduo Z.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_ProgramaArredondamento()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_ProgramaArredondamento();

1.6.4.6

Daruma_FI_ProgramaTruncamento(ndice 306)
Definio do Mtodo:
Programa o modo truncamento na impressora.
Parmetros do Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O cupom fiscal deve estar fechado
- Ser executada somente aps uma Reduo Z.
Exemplos:

Daruma Automao

Daruma Framework

56

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_ProgramaTruncamento()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_ProgramaTruncamento();

1.6.4.7

Daruma_FI_LinhasEntreCupons(ndice 307)
Definio do Mtodo:
Programa o espaamento de linhas entre os cupons.
Parmetros do Mtodo:
Linhas: INTEIRO entre 0 e 15 indicando o nmero de linhas.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O espaamento ideal entre os cupons de 7 linhas.
Exemplos:

Exemplo em Visual Basic 6.0:


Dim Int_Linhas_Entre_Cupons As Integer
Int_Linhas_Entre_Cupons = "15"
Int_Linhas_Entre_Cupons = CInt(TX_Linhas_Entre_Cupons.Text)
Int_Retorno = Daruma_FI_LinhasEntreCupons(Int_Linhas_Entre_Cupons)
Exemplo em Delphi 7.0:
var
Int_Linhas_Entre_Cupons: Integer;
begin
Int_Linhas_Entre_Cupons :='15'
Int_Linhas_Entre_Cupons := StrToInt(Trim(Linhas_Entre_Cupons.Text));
Int_Retorno := Daruma_FI_LinhasEntreCupons( Int_Linhas_Entre_Cupons );

1.6.4.8

Daruma_FI_EspacoEntreLinhas(ndice 308)
Definio do Mtodo:
Programa o espaamento entre as linhas impressas no cupom.
Parmetros do Mtodo:
Dots: INTEIRO entre 0 e 255 indicando o espao (dots) entre as linhas.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O espaamento ideal entre linhas de 15 (dots).
Exemplos:

Exemplo em Visual Basic 6.0:


Dim Int_Espaco_Entre_linhas As Integer

Daruma Automao

57

Daruma Framework

Int_Espaco_Entre_linhas = "15"
Int_Espaco_Entre_Linhas = CInt(TX_Espaco_Entre_Linhas.Text)
Int_Retorno = Daruma_FI_EspacoEntreLinhas(Int_Espaco_Entre_linhas)
Exemplo em Delphi 7.0:
var
Int_Espaco_Entre_Linhas: Integer;
begin
Int_Espaco_Entre_Linhas :='15'
Int_Espaco_Entre_Linhas := StrToInt(Trim(Espaco_Entre_Linhas.Text));
Int_Retorno := Daruma_FI_EspacoEntreLinhas( Int_Espaco_Entre_Linhas );

1.6.4.9

Daruma_FI_ProgramaHorarioVerao(ndice 303)
Definio do Mtodo:
Programa e desprograma o horrio de vero. Se a impressora j estiver no horrio de vero o mesmo
ser desprogramado atrasando o relgio em 1 (uma) hora, caso contrrio ser adiantado 1 (uma) hora.
Parmetros do Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- A programao do horrio de vero ser realizada somente aps uma Reduo Z. Para desprogramar, o
Mtodo somente ser aceito, 1 (uma) hora aps a Reduo Z e no pode ter havido movimento na
impressora nesse perodo.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_ProgramaHorarioVerao()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_ProgramaHorarioVerao();

1.6.4.10 Daruma_FI_EqualizaFormasPgto(ndice 311)


Definio do Mtodo:
Equaliza as formas de pagamento.
Parmetros do Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O cupom fiscal deve estar fechado.
Exemplo de aplicao do Mtodo:
- Imagine que voc tenha uma forma de pagamento com a descrio vCartao, porm no tem o par dela
nos vinculados. E nssa hora que este Mtodo torna-se indispensvel, pelo fato de que quando executado

Daruma Automao

Daruma Framework

58

ele criar o Vinculado que estava faltando, para fazer par com a forma de pagamento que havia sido
programada. Sendo assim passariamos a ter nos meios de pagamento vCartao e agora tabem nos
vinculados Cartao e so assim poderia-se fazer um Comprovante no Fiscal Vinculado a partir da forma de
pagamento vCartao.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_EqualizaFormasPgto()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_EqualizaFormasPgto();

1.6.4.11 Daruma_FI_ProgramaVinculados(ndice 312)


Definio do Mtodo:
Programa comprovante vinculado.
Parmetros do Mtodo:
String: Com a descrio do vinculado com at 16 carcteres.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo s ser aceito aps uma ReduoZ e antes de uma LeituraX.
Exemplos:

Exemplo em Visual Basic 6.0:


Dim Str_Descricao_do_Vinculado As String
Str_Descricao_do_Vinculado = "TEF"
Int_Retorno = Daruma_FI_ProgramaVinculados(Str_Descricao_do_Vinculado)
Exemplo em Delphi 7.0:
var Str_Descricao_do_Vinculado: String;
begin
Str_Descricao_do_Vinculado := 'TEF';
Int_Retorno := Daruma_FI_ProgramaVinculados( pchar( Str_Descricao_do_Vinculado ) );

1.6.4.12 Daruma_FI_ProgramaFormasPgtoSemVincular(ndice 313)


Definio do Mtodo:
Programa forma de pagamento sem vincular.
Parmetros do Mtodo:
String: Com a descrio da forma de pagamento com at 16 carcteres.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.

Daruma Automao

59

Daruma Framework

Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo s ser aceito aps uma ReduoZ e antes de uma LeituraX.
- Este Mtodo dever ser aplicado sempre que a impressora j tiver o comprante vinculado e no tiver a
forma de pagamento com a mesma descrio. Sendo assim voc necessita criar uma forma de pagamento
com a mesma descrio, deixando-a em concomitncia com o vinculado, para que voc possa gerar um
CNFV, a partir da forma de pagamento.
Exemplos:

Exemplo em Visual Basic 6.0:


Dim Str_Descricao_da_Forma_Pagamento As String
Str_Descricao_da_Forma_Pagamento = "Redecard"
Int_Retorno = Daruma_FI_ProgFormasPagtoSemVincular(Str_Descricao_da_Forma_Pagamento)
Exemplo em Delphi 7.0:
var Str_Descricao_da_Forma_Pagamento: String;
begin
Str_Descricao_da_Forma_Pagamento := 'Redecard';
Int_Retorno := Daruma_FI_ProgFormasPagtoSemVincular( pchar( Str_Descricao_da_Forma_Pagamento
) );

1.6.4.13 Daruma_FI_CfgFechaAutomaticoCupom(ndice 400)


Definio do Mtodo:
Permite que voc configure o ECF para que quando tenha um Cupom Fiscal Aberto, ao Ligar e Desligar a
mesma possa fechar o cupom automaticamente sem a interveno do Software Aplicativo, permitindo
eliminar situaes de travamento.
Parmetros do Mtodo:
1. No fecha o Cupom Fiscal Automacamente, isso fica a cargo do aplicativo.
2. Fecha o Cupom Fiscal Automaticamente ao Ligar e Desligar o ECF.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo ir configurar diretamente a impressora.
- O Default da dll ir setar pra 0 este recurso. Para habilit-lo, voc dever chamar este mtodo no stratup de sua aplicao.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_CfgFechaAutomaticoCupom("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_CfgFechaAutomaticoCupom('1');

Daruma Automao

Daruma Framework

60

1.6.4.14 Daruma_FI_CfgRedZAutomatico(ndice 401)


Definio do Mtodo:
Permite que voc configure o ECF para que Realize a Reduo Z Automaticamente.
Parmetros do Mtodo:
0 - O ECf No Realiza a Z Automaticamente
1 - Realiza a Z Automaticamente.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Ateno! este Mtodo anula completamente os valores da dll de ZAutomatica, ou seja, se voc chama
a Mtodo Daruma_Registry_ZAutomatica e passar os Valores a 1(um) para a dll Fazer Automaticamente,
e se voc chamar esta Mtodo para que nao faa a Reduo Z Automatica de nada adiantar, ou seja,
para que o ECF nem a DLL realiza a Z Automaticamente e sim que seja comandada por seu aplicativo
voc dever chamar esta Mtodo com o Valor 0(Zero) e a Mtodo Daruma_Registry_ZAutomatica com o
Valor tambm 0(zero) com isso nem a dll nem o ECF ir Efetuar a ReduoZ Automaticamente deixando
esta Mtodo totalmente a cargo de seu aplicativo.
- Este Mtodo ir configurar diretamente a impressora.
- O Default da dll ir setar pra 0 este recurso. Para habilit-lo, voc dever chamar este mtodo no stratup de sua aplicao.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_CfgRedZAutomatico("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_CfgRedZAutomaticoCupom('1');

1.6.4.15 Daruma_FI_CfgImpEstGavVendas(ndice 411)


Definio do Mtodo:
Imprime na X e na Z quantas vezes a Gaveta foi Aberta
Parmetros do Mtodo:
0 - No Imprime na X e na Z quantas Vezes a Gaveta foi Aberta.
1 - Imprime na X e na Z quantas Vezes a Gaveta foi Aberta.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo ir configurar diretamente a impressora.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_CfgImpEstGavVendas("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_CfgImpEstGavVendas('1');

Daruma Automao

61

Daruma Framework

1.6.4.16 Daruma_FI_CfgLeituraXAuto(ndice 402)


Definio do Mtodo:
Permite que voc configure o ECF seja realizado a Leitura X automaticamente para a Abertura do Dia.
Parmetros do Mtodo:
1 - Abre o Dia, ou realiza a X, automaticamente.
0 - No Abre o Dia, ou No realiza a X, automaticamente.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo ir configurar diretamente a impressora.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_CfgLeituraXAuto("1")
Exemplo em Delphi 7.0:
Int_Retorno = Daruma_FI_CfgImpEstGavVendas('1');

1.6.4.17 Daruma_FI_CfgCalcArredondamento(ndice 403)


Definio do Mtodo:
Configura o ECF para Calcular valores com a Regra de Arredondamento, ou seja, caso o valor calculado
resulte de 5(incluindo o 5) pra cima ser arredondado a ultima casa para o valor superior. Exemplos
R$1,347 ser R$1,35
Parmetros do Mtodo:
0 - No realiza os Calculos Por arredondamento e sim por truncamento
1 - Realiza os Calculos por Arredondamento.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo ir configurar diretamente a impressora.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_CfgCalcArredondamento("1")
Exemplo em Delphi 7.0:
Int_Retorno = Daruma_FI_CalcArredondamento('1');

1.6.4.18 Daruma_FI_CfgHorarioVerao(ndice 404)


Definio do Mtodo:
Configura o ECF para trabalhar com Horario de Vero.

Daruma Automao

Daruma Framework

62

Parmetros do Mtodo:
1 - Comanda o ECF para entrar em Horario de Vero, ou seja, Automaticamente ser Adiantado 1(uma)
hora no Relgio da Impressora
0 - Comanda o ECF para SAIR do horario de Vero, ou seja atrasa o Relogio em 1(uma) hora.
Observaes:
Este Mtodo s sero executados caso no tenha uma Venda no Dia, ou seja, Entre um a Reduo Z
(fechamento de Dia) e uma X (abertura de Dia). Para SAIR do horario de verao voc deve realizar uma
Reduo Z e ESPERAR 1(uma) hora antes de enviar o mtodo, isso se deve pelo fato que um avez que a
Z foi Executada, o Horario em que a Z foi executada ficou gravado na Memoria Fiscal que no Permitir
que o Relogio do ECF volte 1(uma) hora atras da hora que j foi gravada na Memria Fiscal, por isso a
necessidade de se esperar 1(uma) hora para SAIR do Horario de Vero.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo ir configurar diretamente a impressora.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_CfgHorarioVerao("1")
Exemplo em Delphi 7.0:
Int_Retorno = Daruma_FI_CfgHorarioVerao('1');

1.6.4.19 Daruma_FI_CfgSensorAut(ndice 405)


Definio do Mtodo:
Permite que voc configure o ECF para ter o Sensor de Autenticao Habilitado ou no, permitindo que
voc utilize a Mtodo Daruma_FI_VerificaDocAutenticacao para verificar se o Documento est presente ou
no para ser Autenticado.
Parmetros do Mtodo:
0 - Sensor de Autenticao Desabilitado.
1- Sensor de Autenticao Habilitado.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo ir configurar diretamente a impressora.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_CfgSensorAut("1")
Exemplo em Delphi 7.0:
Int_Retorno = Daruma_FI_CfgSensorAut('1')

Daruma Automao

63

Daruma Framework

1.6.4.20 Daruma_FI_CfgCupomAdicional(ndice 412)


Definio do Mtodo:
Permite que voc configure o ECF para a Emisso de um Cupom Adicional a cada Cupom Fiscal Emitido.
Parmetros do Mtodo:
0 - Emisso do Cupom Adicional Desablitado.
1 - Emisso do Cupom Adicional Hablitado.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo ir configurar diretamente a impressora.
- O Default da dll ir setar pra 0 este recurso. Para habilit-lo, voc dever chamar este mtodo no startup de sua aplicao.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_CfgCupomAdicional("1")
Exemplo em Delphi 7.0:
Int_Retorno = Daruma_FI_CfgCupomAdicional('1')

1.6.4.21 Daruma_FI_CfgEspacamentoCupons(ndice 407)


Definio do Mtodo:
Configura o Nmero de Linhas entre cupons, isso permite uma economia de Bobina e um controle do
avano entre os documentos.
Parmetros do Mtodo:
2(Dois) dgitos com o nmero de linhas que voc deseja avanar aps a emisso de qualquer Documento.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
-Este Mtodo ir configurar diretamente a impressora.
Exemplos:

Exemplo em Visual Basic 6.0:


Dim Str_Valor As String
Str_Valor = InputBox("Entre com o nmero de linhas", "Daruma_Framework", "15")
Int_Retorno = Daruma_FI_CfgEspacamentoCupons(Str_Valor)

Exemplo em Delphi 7.0:

Daruma Automao

Daruma Framework

64

1.6.4.22 Daruma_FI_CfgHoraMinReducaoZ(ndice 408)


Definio do Mtodo:
Permite configurar at que horas o ECF ir esperar para Realizar a Reduo Z Automtica (Caso esteja
Configurado para Fazer isso, ver Mtodo Daruma_FI_CfgRedZAutomatico) ou para que o ECF passe a
Rejeitar novos mtodos e imprime sempre "Reduo Z Pendente" at que a Reduo Z seja Comandada
por Software.
Parmetros do Mtodo:
Valor com 2(dois) Dgitos que contma Hora da Reduo Z. Exemplos: "02" ou "08".
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo ir configurar diretamente a impressora.
Exemplos:

Exemplo em Visual Basic 6.0:


Dim Str_Hora_Min_para_ReducaoZ As String
Int_Valor = InputBox("Entre com o Horario para recucaoZ:", "Daruma Framework", "08")
If Str_Hora_Min_para_ReducaoZ = "" Then
Exit Sub
End If
Int_Retorno = Daruma_FI_CfgHoraMinReducaoZ(Str_Hora_Min_para_ReducaoZ)
Exemplo em Delphi 7.0:
var
Str_Valor: String;
begin
Str_Valor := InputBox('Entre com o horrio para RecuoZ:', 'Daruma Framework', '08');
if Str_Valor = '' Then
Exit;
Int_Retorno := Daruma_FI_CfgHoraMinReducaoZ(Str_Valor);

1.6.4.23 Daruma_FI_CfgLimiarNearEnd(ndice 409)


Definio do Mtodo:
Permite Configurar quantas linhas voc deseja atrasar o sensor de Pouco Papel, ou seja, voc pode indicar
que o sensor de pouco papel s comee a sinalizar pouco papel quando a bobina estiver bem proxima do
final, por Exemplos, em bobina de 22MM o valor de 0450 indica que o ECF ir sinalizar pouco papel
quanto realmente estiver bem prximo do final da bobina. Isso economiza mais Papel atravs de um
Aproveitamento melhor do Sinal de "Pouco Papel"
Parmetros do Mtodo:
String com 4(quatro) dgitos que indica quantas linhas o sinal de pouco papel deve ser Atrasado, o Valor
0000 indica que o sinal fica desabilitado.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo ir configurar diretamente a impressora.

Daruma Automao

65

Daruma Framework

Exemplos:

Exemplo em Visual Basic 6.0:


Dim Str_Numero_Linhas As String
Str_Numero_Linhas = InputBox("Entre com o nmero de linhas para o aviso de Pouco Papel:", "Daruma
Framework", "0450")
Int_Retorno = Daruma_FI_CfgLimiarNearEnd(Str_Numero_Linhas)
Exemplo em Delphi 7.0:
var
Str_Numero_Linhas: String;
begin
Str_Numero_Linhas := InputBox('Entre com o nmero de linhas para o aviso de Pouco Papel:', 'Daruma
Framework', '0450');
if Str_Numero_Linhas = '' Then
Exit;
Int_Retorno := Daruma_FI_CfgLimiarNearEnd(Str_Numero_Linhas);

1.6.4.24 Daruma_FI_CfgPermMensPromCNF(ndice 410)


Definio do Mtodo:
Permite o Uso da Mensagem Promocional no Comprovante No Fiscal No Vinculado.
Parmetros do Mtodo:
0 - No exibe a Mensagem Promocional.
1 - Exide a Mensagem Promocional.

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo ir configurar diretamente a impressora.
- O Default da dll ir setar pra 0 este recurso. Para habilit-lo, voc dever chamar este mtodo no stratup de sua aplicao.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_FI_CfgPermMensPromCNF("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_CfgPermMensPromCNF('1');

1.6.4.25 Regra de Configurao do Registry


Mtodos de Configurao do Registry, Regra Geral:
Todas os Mtodos Referentes a Configurao do Registry da Impressora sempre recebem como
parmetro uma String, que pode ser (0 zero, indicando desligado) ou (1 um, Indicando Ligado) ou em
algumas Mtodo haver a necessidade que voc passe uma String como por Exemplos Porta que pode ser
"Default" ou a Porta Serial Desejada, por Exemplos "COM1!!.
Todas os Mtodos sempre devolvem um inteiro:
1 - OK
-4 - No OK, Chave no Encontrada.

Daruma Automao

Daruma Framework

66

Se em algum Mtodo de configurao do Registry da dll voc passar a varivel com valor NULO ou VAZIA
a dll se encarrega de gravar no Registry o Valor Default correspondente a Chave que voc est
trabalhando.
Estes So os Valores DEFAULT do Registry:
[HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA]
[HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF]
Porta= DEFAULT
Path= C:\
Status= 0
StatusFuncao= 0
Retorno= 0
ControlePorta= 1
ModoGaveta= 0
ConfigRede= 0
Log= 0
NomeLog= C:\Daruma32.log
Emulador= 0
Separador= ,
SeparaMsgPromo= 1
Vende1Linha = 1
XAutomatica = 0
ZAutomatica = 1
AbrirDiaFiscal =1
ErroExtendidoOk=000
IgnorarPoucoPapel=1

1.6.4.26 Valores do Registry para o ECF


Definies:
Estas so as Chaves e os Valores Adotados para a Configurao do Registry para Se trabalhar com o ECF:
[HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA]
[HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF]
Porta= DEFAULT
Path= C:\
Status= 0
StatusFuncao= 0
Retorno= 0
ControlePorta= 1
ModoGaveta= 0
ConfigRede= 0
Log= 0
NomeLog= C:\Daruma32.log
Separador= ,
SeparaMsgPromo= 1
Vende1Linha = 1
XAutomatica = 0
ZAutomatica = 1
AbrirDiaFiscal =1
ErroExtendidoOk=000
IgnorarPoucoPapel=1
CHAVE:
DARUMA\ECF - Nesta Chave Voc encontrar as configuraes para que a dll trabalhe com
nosso ECF.
VALUES:

Daruma Automao

67

Daruma Framework

Porta: Indica a porta serial de comunicao entre a impressora e o micro. Se o valor for igual a
"DEFAULT", a DLL buscar a porta onde estiver a impressora, automaticamente.
Path: Configura o diretrio onde ser criado o arquivo "STATUS.TXT", "RETORNO.TXT" e
"Daruma32.LOG". O path default o diretrio raiz na unidade C:\
Separador: Permite que voc configure o carctere separador dos dados que sero retornados, como
formas de Pagamento, etc.. permitindo maior flexibilidade do software de frente de caixa obter os dados
sem que tenha que obedecer uma formatao especifica da dll, com tamanhos fixos pois ao configurar o
separador voc programara a busca e separao dos dados pelo separador e no mais pelo tamanho fixo
definido pela dll. O Default "," (Virgula).
Status: Se essa opo estiver com o valor 1, os Mtodos da DLL iro gravar o status da impressora (ACK,
ST1 e ST2) no arquivo chamado "STATUS.TXT". O valor default dessa opo 0, com o status da
impressora sendo retornado atravs da Mtodo Daruma_FI_RetornoImpressora.
Retorno: Se essa opo estiver com o valor 1, os Mtodoa de Informaes da dll como
Daruma_FI_NumeroCupom( cNumCupom) da DLL iro gravar o retorno no arquivo chamado
"RETORNO.TXT ". O valor default dessa opo 0, com as informaes sendo retornadas atravs das
variveis passadas como parmetro nos Mtodos.
StatusFuncao: Esta chave configura a DLL para retornar o valor 27 nas Mtodo, quando o status da
impressora (ACK, ST1, ST2) for diferente de 6,0,0. Com essa configurao a Mtodo
Daruma_FI_RetornoImpressora poder ser executada somente quando o retorno for 27. O valor um "1"
habilita e o valor zero "0" desabilita essa configurao. O valor default zero "0".
ControlePorta: Se estiver com o valor 0, a abertura e o fechamento da porta sero controlados pelo
programador. Se estiver com o valor 1, sero controlados pela DLL. A DLL ir abrir e fechar a porta
automaticamente em cada Mtodo. recomendvel que o controle da porta seja realizado pelo
programador e que a mesma seja aberta no incio da execuo do programa e fechada somente no
trmino da execuo do mesmo.
ModoGaveta: Em alguns modelos de gaveta, este sinal poder vir invertido, ou seja, o sinal que
corresponde a "gaveta aberta", pode ser o sinal para "gaveta fechada". Neste caso habilite esta chave,
substituindo o valor 0 (zero) para (1) um.
Veja a Mtodo
Daruma_FI_VerificaEstadoGaveta para maiores informaes.

Log: Se essa opo estiver com o valor 1, a DLL ir criar um arquivo de log chamado "Daruma32.LOG"
com todas as Mtodo executadas, seus parmetros e valores de retorno.
NomeLog: Nome do Arquivo de Log que voc deseja Criar, possibilitando que o Arquivo de Log seja
Personalizado de acordo com
seu aplicativo. Este arquivo ser gravado no path indicado no value Path
e somente ser vlido que o value Log for
igual a 1(um)
SeparaMsgPromo: Por questes de layout do cupom, adicionamos antes da mensagem promocional uma
linha separatoria deixando mais clara o que mensagem promoicional e o que Total do Cupom, caso
voc necessite utilizar o buffer de 620 bytes da mensagem promiocional e nao deseja que aparea esta
linha separatoria, configure esta chave para "0" (zero), seu Default "1"(um)

Vende1Linha: Permite que a Mtodo Daruma_FI_VendeItem tente imprimir a venda item em uma linha
apenas, com isso voc ter uma economia no cupom fiscal de at 40%, ou seja, com esta chave a 1(um)
esta "inteligncia" ativada, caso contrario todos os itens sero vendidos em duas linhas. O Valor default
desta Chave 1(um).
XAutomatica: A Dll ir efetuar uma LeituraX automaticamente ao perceber que existe esta necessidade,
porque? porque no ECF Daruma existe o conceito da Abertura de DIA, ou seja, o DIA na Impressora
aberto com uma LeituraX, e ao enviar o primeiro mtodo para o ECF, e o ECF tiver uma Reduo Z
Pendente e esta chave estiver a 1(um) ento a dll ir efetuar a X automaticamente.
ZAutomatica: O Mesmo que acontece com a LeituraZ, a Impressora Daruma trabalha com o Conceito de
no permitir que a Reduo Z acontea automaticamente, por isso voec deve "setar" esta chave para
1(um) caso voc deseje que a Reduo Z passe a ser executada de forma automatica.
AbrirDiaFiscal: A Impressora Daruma, necessita que seja efetuado uma LeituraX para a emissao do

Daruma Automao

Daruma Framework

68

primeiro Cupom Fiscal, por isso foi criado esta chave para que voc possa configurar o que deseja, se a
dll faz a LeituraX automaticamente ou no, voc poder escolher a opo desejada apenas colocando
0(nao) ou 1(um) nesta chave. Com a Chave a 1(um) ao solicitar uma Venda, atravs das Mtodo
Daruma_FI_AbreCupom ou Daruma_FI_VendeItem
ErroExtendidoOk: A Mtodo Daruma_FI_RetornaErroExtendido, devolve para o aplicativo o erro
sinalizado pelo ECF, com esta chave voc poder configurar qual o valor que voc deseja retornar caso o
ECF retorne OK, o default desta chave "000" para Tudo OK com o Ecf na chamada da Mtodo
Daruma_FI_RetornaErroExtendido.
IgnorarPoucoPapel: Esta Chave tem por Default o Valor 1(um) ou seja, nao trata o pouco papel, sendo
assim quando o ECF indicar Pouco Papel a dll nao ira retonar o -27 (caso seja programado para isso na
Funcao Daruma_Registry_StatusFuncao) e tampouco retornar 64 no Byte de Status 2, conforme tabela
de decodificao de Erro.

1.6.4.27 Daruma_Registry_AlteraRegistry (ndice 17)


Definio do Mtodo:
Permite a Alterao das chaves do registry sem a necessidade de utilizar as Mtodo anteriores e
especificas para cada Chave, com Este Mtodo voc podera alterar qualquer umas das chaves do registry
do ECF Daruma sem a necessidade de chamar uma Mtodo para cada chave.
Parmetros da Mtodo:
1. String com o nome da Chave que deseja Alterar.
2. String com o Valor da Chave que deseja Alterar.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Nome_da_Chave As String
Dim Str_Valor_da_Chave As String
Str_Nome_da_Chave = InputBox("Entre com o nome da Chave que voc deseja Alterar:", "Daruma
Framework", "Porta")
Str_Valor_da_Chave = InputBox("Entre com um novo Valor para Chave:", "Daruma Framework",
"Default")
If Str_Nome_da_Chave = "" Or Str_Valor_da_Chave = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_AlteraRegistry(Str_Nome_da_Chave, Str_Valor_da_Chave)
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_AlteraRegistry(Str_Nome_da_Chave, Str_Valor_da_Chave);

1.6.4.28 Daruma_Registry_Porta(ndice 1)
Definio do Mtodo:
Este Mtodo permite Configurar a porta serial da impressora, ou simplesmente indicar para a dll que
Daruma Automao

69

Daruma Framework

busque para voc onde a impressora est conectada, a dll buscar da COM1 at a COM15.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Valor Defult da Chave = "DEFAULT".
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Porta As String
Str_Porta = InputBox("Entre com o Nome da Porta onde est a Impressora:", "Daruma Framework",
"Default")
If Str_Porta = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_Porta(Str_Porta)
Exemplo em Delphi 7.0:
var
Str_Porta: String;
begin
Str_Porta := InputBox('Entre com o nome da Porta onde est a Impressora:', 'Daruma Framework',
'Default');
if Str_Porta = '' Then
Exit;
Int_Int_Retorno := Daruma_Registry_Porta( pchar(Str_Porta) );

1.6.4.29 Daruma_Registry_Path(ndice 2)
Definio do Mtodo:
Configura o Path onde ser criado os arquivos de retorno, resposta, relatorios Tipo 60, Log da dll, sempre
e quando a dll tiver como dispositivo de "OutPut" um arquivo texto este ser criado no path em que est
configurado nesta chave.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Observaes:
Valor Defult da Chave = "C:\".
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Path As String
Str_Path = InputBox("Entre com o Path:", "Daruma Framework", "C:\")
If Str_Path = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_Path(Str_Path)

Daruma Automao

Daruma Framework

70

Exemplo em Delphi 7.0:


var
Str_Path: String;
begin
Str_Path := InputBox('Entre com o Path:', 'Daruma Framework', 'C:\');
if Str_Path = '' Then
Exit;
Int_Retorno := Daruma_Registry_Path( pchar(Str_Path) );

1.6.4.30 Daruma_Registry_Status(ndice 3)
Definio do Mtodo:
Configura se o status da Impressora ser retornado na Varivel (por referncia) ou em arquivo Texto
(STATUS.txt).
Parmetros do Mtodo:
0 - No Retornar em Arquivo Texto.
1 - Retorna em Arquivo Texto.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Valor Defult da Chave = "0".
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_Status("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_Status('1')

1.6.4.31 Daruma_Registry_StatusFuncao(ndice 4)
Definio do Mtodo:
0 - A Mtodo ter sua tabela de Retorno normal.
1 - A Mtodo retornar -27 caso o ECF sinalize valores de status diferentes de OK.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Caso o Mtodo envie o mtodo para o ECF e seja detectado um Erro na execuo do mtodo sinalizado
pelo ECF ou um Warning sinalizado pelo ECF (Pouco Papel, por Exemplos), isso ser sinalizado no retorno
da propria Mtodo, com o valor de -27
- Valor Defult da Chave = "0".
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_StatusFuncao("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_StatusFuncao('1');

Daruma Automao

71

Daruma Framework

1.6.4.32 Daruma_Registry_Retorno(ndice 5)
Definio do Mtodo:
Permite configurar como ser o retorno de informaes da impressora, por Exemplos, nmero de srie do
ECF poder vir na Varivel por Referncia ou em arquivo texto, RETORNO.TXT.
Parmetros do Mtodo:
0 - Retorna as informaes na Varivel.
1 - No retorna as informaes na Varivel passada e sim no arquivo Texto RETORNO.TXT.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Valor Defult da Chave = "0".
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_Retorno("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_Retorno('1');

1.6.4.33 Daruma_Registry_ControlePorta(ndice 6)
Definio do Mtodo:
Permite configurar como ser realizado o controle da Porta Serial, pelo Aplicativo ou pela Dll
aconselhado que seja sempre pela dll pois isso possibilita trabalhar sem problemas em tempo de DEBUG
do software.
Parmetros do Mtodo:
0 - O Aplicativo Controla a porta Serial e deve chamar as Mtodo de Abertura e Fechamento de porta.
1 - Todo este controle fica a cargo da dll de comunicacao Daruma32.dll.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Valor Defult da Chave = "1".
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_ControlePorta("1")
Exemplo em Delphi 7.0:
Int__Retorno := Daruma_Registry_ControlePorta('1');

1.6.4.34 Daruma_Registry_ModoGaveta(ndice 7)
Definio do Mtodo:
Permite inverter o sinal da Gaveta com a logica Negativa, se a gaveta estiver devolvendo o sinal de
Aberta mesmo que ela estaja fechada, inverta o valor desta chave para obter o resultado correto, isso foi
Daruma Automao

Daruma Framework

72

implementado devido o fato de muitas gavetas estarem saindo com problemas no sinal lgico.
Parmetros do Mtodo:
0 - Lgica Invertida.
1 - Lgica Invertida.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Valor Defult da Chave = "0".
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_ModoGaveta("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_ModoGaveta('1');

1.6.4.35 Daruma_Registry_ConfigRede(ndice 8)
Ainda Nao Utilizado!

1.6.4.36 Daruma_Registry_Log(ndice 9)
Definio do Mtodo:
Configura se deseja que a dll faa log de todas as aes, parmetros e retornos. Ser criado o Arquivo
Daruma32.log no Path que esta configurado como valor da Chave Path.
Parmetros do Mtodo:
0 - No Cria o Log.
1 - Cria Log com todas as aes.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Valor Defult da Chave = "0".
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_Log("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_Log('1');

1.6.4.37 Daruma_Registry_NomeLog(ndice 10)


Defini do Mtodo:
Configurar o Nome do Arquivo Log que ser Criado.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:

Daruma Automao

73

Daruma Framework

1: OK, Sucesso ao enviar o mtodo.


-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Valor Defult da Chave = "Daruma32.Log".
Exemplos:
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Nome_Log As String
Str_Nome_Log = InputBox("Entre com um Nome para o Log:", "Daruma Framework", "Daruma32.log")
If Str_Nome_Log = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_NomeLog(Str_Nome_Log)
Exemplo em Delphi 7.0:
var
Str_Nome_Log: String;
begin
Str_Nome_Log := InputBox('Entre com um Nome para o Log:', 'Daruma Framework', 'Daruma32.log');
if Str_Nome_Log = '' Then
Exit;
Int_Retorno := Daruma_Registry_NomeLog( pchar(Str_Nome_Log) );

1.6.4.38 Daruma_Registry_Separador(ndice 11)


Definio do Mtodo:
Indica qual ser o carctere de Separao que voc utilizar para o retorno de dados que seja necessario
a seprarao por este carctere facilitando que o software possa utilizar e separar a informao, por
Exemplos: Retorno de Formas de Pagamento ir retornar "Dinheiro, Cheque,Cartao", com estes dados
separado por Vrgula voc ter uma maior facilidade de separar e utilizar os dados sem a necessidade de
estar amarrado a um tamanho fixo dos dados.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
O Valor Default = ","

( Vrgula )
Exemplos:

Exemplo em Visual Basic 6.0:


Dim Str_Separador As String
Str_Separador = InputBox("Entre com o Tipo de Separador:", "Daruma Framework", ",")
If Str_Separador = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_Separador(Str_Separador)

Exemplo em Delphi 7.0:

Daruma Automao

Daruma Framework

74

Str_Separador: String;
begin
Str_Separador := InputBox('Entre com o Tipo de Separador:', 'Daruma Framework', ',');
if Str_Separador = '' Then
Exit;
Int_Retorno := Daruma_Registry_Separador( pchar(Str_Separador) );

1.6.4.39 Daruma_Registry_SeparaMsgPromo(ndice 12)


Definio do Mtodo:
Indica se voc deseja que antes da mensagem promocional seja traado uma linha separadora, para
deixar mais claro no cupom fiscal o que mensagem promocional e o que subtotal.
Parmetros do Mtodo:
0 - No inclui a linha Separadora na Mensagem Promocional.
1 - Inclui a linha Separadora na Mensagem Promocional.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
O Valor Default desta chave 1(um).
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_SeparaMsgPromo("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_SeparaMsgPromo('1');

1.6.4.40 Daruma_Registry_Vende1Linha(ndice 13)


Definio do Mtodo:
Permite que a Mtodo Daruma_FI_VendeItem tente imprimir a venda do item em uma linha
apenas, com isso voc ter uma economia no cupom fiscal de at 40%, ou seja, com esta chave a 1(um)
esta "inteligncia" ativada, caso contrario todos os itens sero vendidos em duas linhas. O Valor default
desta Chave 1(um).
Parmetros da Mtodo:
0 - No tentar Imprimir a venda do Item em uma Linha, neste caso sempre ser em duas linhas.
1 - ir tentar vender e imprimir a venda do item em uma linha, sempre que possivel.
Observaes:
O Valor Default desta chave 1(um).
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_VendeItemUmaLinha("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_VendeItemUmaLinha('1');

Daruma Automao

75

Daruma Framework

1.6.4.41 Daruma_Registry_XAutomatica(ndice 14)


Definio do Mtodo:
A Dll ir efetuar uma LeituraX automaticamente ao perceber que existe esta necessidade, porque? porque
no ECF Daruma existe o conceito da Abertura de DIA, ou seja, o DIA na Impressora aberto com uma
LeituraX, e ao enviar o primeiro mtodo para o ECF, e o ECF tiver uma Reduo Z Pendente e esta chave
estiver a 1(um) ento a dll ir efetuar a X automaticamente.
Parmetros da Mtodo:
0 - No efetua a Leitura X Automaticamente, deixa isso a cargo da aplicao.
1 - Ir efetuar a Leitura X Automaticamente ao perceber que existe uma LeituraX Pendente para Abrir o
Dia.
Observaes:
O Valor Default desta chave 1(um).
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_XAutomatica("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_XAutomatica('1');

1.6.4.42 Daruma_Registry_ZAutomatica(ndice 15)


Definio do Mtodo:
O Mesmo que acontece com a LeituraZ, a Impressora Daruma trabalha com o Conceito de no permitir
que a Reduo Z acontea automaticamente, por isso voec deve "setar" esta chave para 1(um) caso voc
deseje que a Reduo Z passe a ser executada de forma automatica.
Parmetros da Mtodo:
0 - No efetua a Reduo Z Automaticamente, deixa isso a cargo da aplicao.
1 - Ir efetuar a Reduo Z Automaticamente ao perceber que existe uma LeituraX Pendente para Abrir o
Dia.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O Valor Default desta chave 1(UM).
Ateno que Este Mtodo anula completamente os valores da dll de ZAutomatica, ou seja, se voc chama
a Mtodo Daruma_FI_CfgRedZAutomatico e passar os Valores a 1(um) para a dll Fazer
Automaticamente, e se voc chamar Este Mtodo para que nao faa a Reduo Z Automatica de nada
adiantar, ou seja, para que o ECF nem a DLL realiza a Z Automaticamente e sim que seja comandada
por seu aplicativo voc dever chamar Este Mtodo com o Valor 0(Zero) e a Mtodo
Daruma_FI_CfgRedZAutomatico com o Valor tambm 0(zero) com isso nem a dll nem o ECF ir Efetuar a
Reduo Z Automaticamente deixando Este Mtodo totalmente a cargo de seu aplicativo.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_ZAutomatica("1")

Daruma Automao

Daruma Framework

76

Exemplo em Delphi 7.0:


Int_Retorno := Daruma_Registry_ZAutomatica('1');

1.6.4.43 Daruma_Registry_TerminalServer(ndice 21)


Definio do Mtodo:
Esta Chave indica para a Dll que dever trabalhar atravs de Endereo IP e no atravs de Porta Serial.
Parmetros da Mtodo:
0 - Trabalha com Porta Serial Local.
1 - Trabalha com Terminal Server - Atravs do Endereo IP do Servidor.
Observaes:
- O Valor Default desta chave 0(Zero).
- Esta Chave s deve ser alterada quando utilizada a DLL Verso SERVER, que dever ser
Copiada no Servidor. Para Mais informao em como utilizar o ECF com Terminal Sever
verifique o topido especfico neste Help.
- Caso esta Chave esteja "setada" para 1(um) e voc no estiver utilizando-se da Arquitetura Terminal
Server, ento a - Comunicao no poder ser efetuada com o ECF devolvendo (ZERO) nas Mtodo que
voc chamar, ou seja, Erro de Comunicao.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_TerminalServer("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_TerminalServer('1');

1.6.4.44 Daruma_Registry_AbrirDiaFiscal(ndice 23)


Definio do Mtodo:
A Impressora Daruma, necessita que seja efetuado uma LeituraX para a emisso do primeiro Cupom
Fiscal, por isso foi criada esta chave, para que voc possa configurar o que deseja, se a dll faz a LeituraX
automaticamente ou no, voc poder escolher a opo desejada apenas colocando 0(no) ou 1(um)
nesta chave. Com a Chave a 1(um) ao solicitar uma Venda, atravs das Mtodo Daruma_FI_AbreCupom
ou Daruma_FI_VendeItem
Parmetros da Mtodo:
0 - No efetua a Leitura X Automaticamente, deixa isso a cargo da aplicao.
1 - Ir efetuar a Leitura X Automaticamente ao perceber que existe uma LeituraX Pendente para Abrir o
Dia.
Observaes:
- O Valor Default desta chave 1(um).
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_AbrirDiaFiscal("1")

Daruma Automao

Exemplo em Delphi 7.0:

77

Daruma Framework

Int_Retorno := Daruma_Registry_AbrirDiaFiscal('1');

1.6.4.45 Daruma_Registry_IgnorarPoucoPapel(ndice 24)

Definio do Mtodo:
Esta Chave tem por Default o Valor 1(um) ou seja, no trata o pouco papel, sendo assim quando o ECF
indicar Pouco Papel a dll nao ira retonar o -27 (caso seja programado para isso na Funcao
Daruma_Registry_StatusFuncao) e tampouco retornar 64 no Byte de Status 2, conforme tabela de
decodificao de Erro.
Parmetros da Mtodo:
0 - Passa a considerar o Sinal de Pouco Papel, devolvendo -27 na Funcao ou 64 no Bit de Status.
1 - Passa a No considerar o sinal de pouco papel, devolvendo sempre 1(um) na Mtodo quando o ECF
sinalizar POUCO PAPEL.
Observaes:
- O Valor Default desta chave 1(UM).
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
1: OK, Sucesso ao Configurar o Registry.
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_IgnorarPoucoPapel("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_IgnorarPoucoPapel('1');

1.6.4.46 Daruma_Registry_ImprimeRegistry(ndice 18)


Definio do Mtodo:
Imprime a Configurao Atual do Registry, passe o produto como Referencia que ser impressor no
Relatrio Gerencial as configuraes do Registry do produto passado como parmetro..
Parmetros da Mtodo:
String com o Nome do Produto que podem ser as seguintes Strings:
ECF - Refere-se a Impressora Fiscal.
DUAL - Refere-se a Impressora No Fiscal, Miniimpressora.
ECFR - Refere-se a Impressora Fiscal para Restaurantes.
ECFB - Refere-se a Impressora Fiscal para Bilhete de Passagem Rodoviaria
TA1000 - Refere-se ao MicroTerminal TA1000

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Produto As String
Str_Produto = InputBox("Entre com o nome do Produto a ser impresso:", "Daruma Framework", "ECF")
If Str_Produto = "" Then

Daruma Automao

Daruma Framework

78

Exit Sub
End If
Int_Retorno = Daruma_Registry_ImprimeRegistry(Str_Produto)
Exemplo em Delphi 7.0:
var
Str_Produto: String;
begin
Str_Produto := InputBox('Entre com o nome do Produto a ser impresso:', 'Daruma Framework', 'ECF' );
if Str_Produto = '' Then
Exit;
Int_Retorno := Daruma_Registry_ImprimeRegistry( pchar(Str_Produto) );

1.6.4.47 Daruma_Registry_RetornaValor(ndice 19)


Definio do Mtodo:
Retorna o Valor de uma Chave do Registry da DARUMA32.dll.

Parmetros da Mtodo:
String com o Nome do produto que podem ser:
ECF - Refere-se a Impressora Fiscal.
DUAL - Refere-se a Impressora No Fiscal, Miniimpressora.
ECFR - Refere-se a Impressora Fiscal para Restaurantes.
ECFB - Refere-se a Impressora Fiscal para Bilhete de Passagem Rodoviaria
TA1000 - Refere-se ao MicroTerminal TA1000
1.
2.

String com o Nome da Chave do produto


String por Referencia com 50 espaos alocados para que possa retornar na varivel o valor da Chave
que voc deseja.

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Nome_do_Produto As String
Dim Str_Chave As String
Dim Str_Retorno As String
Str_Retorno = Space(50)
Str_Nome_do_Produto = InputBox("Entre com o Nome do Produto:", "Daruma Framework", "ECF")
Str_Chave = InputBox("Entre com o Nome da Chave para Saber o seu Valor:", "Daruma Framework",
"Log")
If Str_Nome_do_Produto = "" Or Str_Chave = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_RetornaValor(Str_Nome_do_Produto, Str_Chave, Str_Retorno)
MsgBox Str_Nome_do_Produto + " \ " + Str_Chave + " = " + Str_Retorno, vbInformation, "Daruma
Framwork"
Exemplo em Delphi 7.0:
var
Str_Nome_do_Produto: String;
Str_Chave: String;
Str_Retorno: String;
begin

Daruma Automao

79

Daruma Framework

Str_Retorno := StringOFChar(#0,50);
Str_Nome_do_Produto := InputBox('Entre com o Nome do Produto:', 'Daruma Framework', 'ECF');
Str_Chave := InputBox('Entre com o Nome da Chave para Saber o seu Valor:', 'Daruma Framework',
'Log');
if (Str_Nome_do_Produto = '')or(Str_Chave = '') Then
Exit;
Int_Retorno := Daruma_Registry_RetornaValor(Str_Nome_do_Produto, Str_Chave, Str_Retorno);
Application.MessageBox(pchar(Str_Nome_do_Produto + ' \ ' + Str_Chave + ' = ' + Str_Retorno),
'Daruma Framework', mb_ok + 32);

1.6.4.48 Daruma_Registry_Default(ndice 20)


Definio do Mtodo:
Zera as Configuraes realizadas no Registry deixando o Registry com seus Valores Default.
Parmetros da Mtodo:
No H.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_Default()
Exemplo em Delphi 7.0:
int_Retorno := Daruma_Registry_Default();

1.6.4.49 Daruma_Registry_ErroExtendidoOk(ndice 22)


Definio do Mtodo:
O Mtodo Daruma_FI_RetornaErroExtendido, devolve para o aplicativo o erro sinalizado pelo ECF, com
esta chave voc poder configurar qual o valor que voc deseja retornar caso o ECF retorne OK, o default
desta chave "000" para Tudo OK com o Ecf na chamada dO Mtodo Daruma_FI_RetornaErroExtendido.
Parmetros do Mtodo:
Cdigo com trs dgitos que voc deseja que seja retornado, por Exemplo, se voc deseja que seja
retornando "000" quando o ECF retornar OK, voc deve passar "000" no parmetro dEste Mtodo.
Observaes:
O Valor Default desta chave "000".
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Valor_do_ErroExt As String
Str_Valor_do_ErroExt = InputBox("Entre com um Valor para o Erro Extendido:", "Daruma Framework",
"000")
If Str_Valor_do_ErroExt = "" Then
Exit Sub
End If

Daruma Automao

Daruma Framework

80

Int_Retorno = Daruma_Registry_ErroExtendidoOk(Str_Valor_do_ErroExt)
Exemplo em Delphi 7.0:
var
Str_Valor_do_ErroExt: String;
begin
Str_Valor_do_ErroExt := InputBox('Entre com um Valor para o Erro Extendido:', 'Daruma Framework',
'000');
if Str_Valor_do_ErroExt = '' Then
Exit;
Int_Retorno := Daruma_Registry_ErroExtendidoOk( pchar(Str_Valor_do_ErroExt) );

1.6.4.50 Daruma_Registry_Velocidade(ndice 28)


Definio do Mtodo:
Este Mtodo permite a voc configurar a velocidade da porta serial de 9600 ou 38400 na FS600.
Parmetros do Mtodo:
Observaes:
O Valor Default desta chave "9600".
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Valor_do_ErroExt As String
Str_Valor_do_ErroExt = InputBox("Entre com um Valor para o Erro Extendido:", "Daruma Framework",
"000")
If Str_Valor_do_ErroExt = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_ErroExtendidoOk(Str_Valor_do_ErroExt)
Exemplo em Delphi 7.0:
var
Str_Valor_do_ErroExt: String;
begin
Str_Valor_do_ErroExt := InputBox('Entre com um Valor para o Erro Extendido:', 'Daruma Framework',
'000');
if Str_Valor_do_ErroExt = '' Then
Exit;
Int_Retorno := Daruma_Registry_ErroExtendidoOk( pchar(Str_Valor_do_ErroExt) );

1.6.4.51 Daruma_Registry_AplMensagem1(ndice 36)


Definio do Mtodo:
Este Mtodo possibilita a programacao da mensagem do software aplicativo.
Parmetros do Mtodo:
Mensagem do aplicativo com 42 bytes.
Observaes:
O Valor Default desta chave "000".

Daruma Automao

81

Daruma Framework

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_AplMensagem_1 As String
Str_AplMensagem_1 = InputBox("Entre com a Mensagem de seu Aplicativo:", "Daruma Framework",
"DARUMA32 FrameWork Mensagem No Programada")
If Str_AplMensagem_1 = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_AplMensagem1(Str_AplMensagem_1)
Exemplo em Delphi 7.0:
var
Str_AplMensagem_1: String;
begin
Str_AplMensagem_1:= InputBox('Entre com a Mensagem de seu Aplicativo:', 'Daruma Framework',
'DARUMA32 FrameWork Mensagem No Programada');
If Str_AplMensagem_1 = '' Then
Exit;
Int_Retorno := Daruma_Registry_AplMensagem1(pchar(Str_AplMensagem_1));

1.6.4.52 Daruma_Registry_AplMensagem2(ndice 37)


Definio do Mtodo:
Este Mtodo possibilita a programacao da mensagem do software aplicativo.
Parmetros do Mtodo:
Mensagem do aplicativo com 42 bytes.
Observaes:
O Valor Default desta chave "000".
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Private Sub MN_Daruma_Registry_AplMensagem_2_Click()
Dim Str_AplMensagem_2 As String
Str_AplMensagem_2 = InputBox("Entre com a Mensagem de seu Aplicativo:", "Daruma Framework",
"DARUMA32 FrameWork Mensagem No Programada")
If Str_AplMensagem_2 = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_AplMensagem2(Str_AplMensagem_2)
Exemplo em Delphi 7.0:
var
Str_AplMensagem_1: String;
begin
Str_AplMensagem_1:= InputBox('Entre com a Mensagem de seu Aplicativo:', 'Daruma Framework',
'DARUMA32 FrameWork Mensagem No Programada');
If Str_AplMensagem_1 = '' Then
Exit;
Int_Retorno := Daruma_Registry_AplMensagem1(pchar(Str_AplMensagem_1));

Daruma Automao

Daruma Framework

1.6.5

Mtodos de Informao, Status e Retornos

1.6.5.1

Daruma FrameworkTabela de Retornos ST1 e ST2

82

Definio do Mtodo:
Todos os mtodos, executadas na impressora, possuem bytes de retorno, que significam o estado atual
aps o envio. Cada byte tratado da seguinte maneira:

Lgica de Tratamento
Cada byte composto de 8 bits. Cada bit, dentro do byte, tem um valor, conforme a tabela acima:
O valor recebido da impressora para ST1(status 1) e/ou ST2(status 2) deve ser comparado com
cada bit.
As linhas abaixo so uma forma de voc desenvolver um pedao de cdigo para saber quais bits esto
"setados":

Codificando o ST1
If St1 >= 128 Then // bit 7
St1 = St1 - 128
sMsg = "O papel acabou"
End If
If St1 >= 64 Then // bit 6
St1 = St1 - 64
sMsg = "O papel esta acabando"
End If
If St1 >= 32 Then // bit 5
St1 = St1 - 32
sMsg = "Erro no relgio da impressora"
End If
If St1 >= 16 Then // bit 4
St1 = St1 - 16
sMsg = "Impressora em erro"
End If
If St1 >= 8 Then // bit 3
Daruma Automao

83

Daruma Framework

St1 = St1 - 8
sMsg = "Primeiro dado do mtodo no foi ESC"
End If
If St1 >= 4 Then // bit 2
St1 = St1 - 4
sMsg = "Mtodo inexistente"
End If
If St1 >= 2 Then // bit 1
St1 = St1 - 2
sMsg = "Cupom fiscal aberto"
End If
If St1 >= 1 Then // bit 0
St1 = St1 - 1
sMsg = "Nmero de parmetro(s) invlido(s)"
End If

Codificando o ST2
If St2 >= 128 Then // bit 7
St2 = St2 - 128
sMsg = "Tipo de parmetro do mtodo invlido"
End If
If St2 >= 64 Then // bit 6
St2 = St2 - 64
sMsg = "Memria fiscal cheia"
End If
If St2 >= 32 Then // bit 5
St2 = St2 - 32
sMsg = "Erro na memria RAM"
End If
If St2 >= 16 Then // bit 4
St2 = St2 - 16
sMsg = "Alquota no definida"
End If
If St2 >= 8 Then // bit 3
St2 = St2 - 8
sMsg = "Capacidade de alquotas esgotada"
End If
If St2 >= 4 Then // bit 2
St2 = St2 - 4
sMsg = "Este cancelamento no permitido"
End If
If St2 >= 2 Then // bit 1
St2 = St2 - 2
sMsg = "CNPJ/IE do Proprietrio no definidos"
End If
If St2 >= 1 Then // bit 0
St2 = St2 - 1
sMsg = "Mtodo no executado"
End If
Teste o exemplo acima com ST1 = 66, e repare que voc ter dois erros, o papel est acabando
(64) e cupom aberto (2).

1.6.5.2

Daruma_FI_StatusCupomFiscal(ndice 1404)
Definio do Mtodo:
Retorna o status Cupom Fiscal, se o mesmo esta Aberto ou Fechado.
Parmetros do Mtodo:
String com DOIS espaos alocados para escrita do Status.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:

Daruma Automao

Daruma Framework

84

1: OK, Sucesso ao enviar o mtodo.


-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Observaes:
- Devolver 0(zero) para Cupom Fechado e 1(um) para Cupom Aberto
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(2)
Int_Retorno = Daruma_FI_StatusCupomFiscal(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_StatusCupomFiscal( pchar( Str_Informacao ) );

1.6.5.3

Daruma_FI_StatusRelatorioGerencial(ndice 1405)
Definio do Mtodo:
Retorna o status do Relatrio Gerencial, se o mesmo esta Aberto ou Fechado.
Parmetros do Mtodo:
String com DOIS espaos alocados para escrita do Status.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Devolver 0(zero) para Relatrio Fechado e 1(um) para Relatrio Aberto
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(2)
Int_Retorno = Daruma_FI_StatusRelatorioGerencial(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_StatusRelatorioGerencial( pchar(Str_Informacao) );

1.6.5.4

Daruma_FI_StatusComprovanteNaoFiscalVinculado(ndice 1403)
Definio do Mtodo:
Retorna o status do Comprovante No Fiscal Vinculado, se o mesmo esta Aberto ou Fechado.
Parmetros do Mtodo:
String com DOIS espaos alocados para escrita do Status.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:

Daruma Automao

85

Daruma Framework

1: OK, Sucesso ao enviar o mtodo.


-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Devolver 0(zero) para Relatrio Fechado e 1(um) para Relatrio Aberto
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(2)
Int_Retorno = Daruma_FI_StatusComprovanteNaoFiscalVinculado(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_StatusComprovanteNaoFiscalVinculado( pchar(Str_Informacao) );

1.6.5.5

Daruma_FI_VerificaImpressoraLigada(ndice 1400]
Definio do Mtodo:
Verifica se a impressora est ligada ou conectada no computador.
Parmetros do Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_VerificaImpressoraLigada()
If Int_Retorno = 1 Then
TX_Retorno.Text = " 1 - Impressora Ligada !!!"
Else
TX_Retorno.Text = " 0 - Impressora Desligada !!!"
End If
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_VerificaImpressoraLigada();
If Int_Retorno = 1 Then
Edit1.Lines.Text:= (' 1 - Impressora Ligada !!')
else
Edit1.Lines.Text:= (' 0 - Impressora Desligada !!');

1.6.5.6

Daruma_FI_VerificaModeloECF(ndice 1469)
Definio do Mtodo:
Retorna 1 (um) Inteiro com Modelo do ECF.

1
2
3

Valores Retornados no Int_Retorno:


- FS345 - Impressora de varejo.
- FS318 - Impressora para restaurantes.
- FS2000 - Impressora de duas estaes.

Daruma Automao

Daruma Framework

86

Parmetros do Mtodo:
No H.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_VerificaModeloECF()
TX_Retorno.Text = Int_Retorno
Int_MostrarRetorno
Exemplo em Delphi 7.0:
var Int_Informacao: Integer;
begin
Int_Retorno := Daruma_FI_VerificaModeloEcf();
Edit1.Lines.Text := IntToStr(Int_Informacao);

1.6.5.7

Daruma_FI_VerificaHorarioVerao(ndice 1494)
Definio do Mtodo:
Retorna se o relgio da impressora est em horrio de vero.
0 - Relogio da Impressora no programado para horrio de vero.
1 - Relogio da Impressora programado para horrio de vero.
Parmetros do Mtodo:
String com DOIS espaos alocados para escrita do Status.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(2)
Int_Retorno = Daruma_FI_VerificaHorarioVerao(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_VerificaHorarioVerao(Str_Informacao);
Edit1.Text := (Str_Informacao);

1.6.5.8

Daruma_FI_VerificaZPendente(ndice 1488)
Definio do Mtodo:
Retorna se a ReduoZ est pendente.
1(um) para ReduoZ Pendente e 0(zero) para ReduoZ j executada.
Parmetros do Mtodo:
String com DOIS espaos alocados para escrita do Status.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:

Daruma Automao

87

Daruma Framework

1: OK, Sucesso ao enviar o mtodo.


-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(2)
Int_Retorno = Daruma_FI_VerificaZPendente(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_VerificaZPendente( pchar(Str_Informacao) );
Edit1.Text := (Str_Informacao);

1.6.5.9

Daruma_FI_VerificaXPendente(ndice 1489)
Definio do Mtodo:
Retorna se a LeituraX est pendente.
1(um) para LeituraX Pendente e 0(zero) para LeituraX j executada.
Parmetros do Mtodo:
String com DOIS espaos alocados para escrita do Status.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(2)
Int_Retorno = Daruma_FI_VerificaXPendente(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_VerificaXPendente(Str_Informacao);
Edit1.Text := (Str_Informacao);

1.6.5.10 Daruma_FI_VerificaDiaAberto(ndice 1487)


Definio do Mtodo:
Retorna se a o dia est aberto.
1(um) Se o dia estiver Aberto e 0(zero) Se o dia estiver Fechado.
Parmetros do Mtodo:
String com DOIS espaos alocados para escrita do Status.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.

Daruma Automao

Daruma Framework

88

Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(2)
Int_Retorno = Daruma_FI_VerificaDiaAberto(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_VerificaDiaAberto(Str_Informacao);
Edit1.Text := (Str_Informacao);

1.6.5.11 Daruma_FI_VerificaTipoImpressora(ndice 1444)


Definio do Mtodo:
Retorna o tipo de impressora.
Parmetros do Mtodo:
TipoImpressora: Varivel inteira para receber o tipo da impressora (veja abaixo em "Observaes" os
valores retornados).
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O valor do tipo de impressora pode ser:
1
2
3
4
5
6
7
8

Impressora
Impressora
Impressora
Impressora
Impressora
Impressora
Impressora
Impressora

fiscal, gaveta, autenticaao.


fiscal, gaveta, cutter.
fiscal, presenter, autenticaao.
fiscal, presenter, cutter.
bilhete de passagem, gaveta, autenticaao.
bilhete de passagem, gaveta, cutter.
bilhete de passagem, presenter, autenticaao.
bilhete de passagem, presenter, cutter.
Exemplos:

Exemplo em Visual Basic 6.0:


Int_Informacao = 0
Int_Retorno = Daruma_FI_VerificaTipoImpressora(Int_Informacao)
TX_Retorno.Text = Int_Informacao
Exemplo em Delphi 7.0:
var Int_Informacao: Integer;
begin
Int_Informacao := 0;
Int_Retorno := Daruma_FI_VerificaTipoImpressora( Int_Informacao );
Edit1.Text := (Str_Informacao);

1.6.5.12 Daruma_FI_VerificaDescricaoFormasPagamento(ndice 1449)


Definio do Mtodo:
Retorna Apenas a Descrio das Formas de Pagamento que Esto Programadas no ECF.

Daruma Automao

89

Daruma Framework

Parmetros do Mtodo:
FormasPagamento: Varivel String com 275 posies para receber as formas programadas.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo retorna as informaes das formas de pagamento na seguinte ordem:
Descrio da forma de pagamento.....................: 16 bytes
+ 1 carctere Separador, conforme configurado no Registry com o Mtodo Daruma_Registry_Separador.
- So retornadas 16 formas de pagamento :
Ticket
,Dinheiro
,Cartao
,A vista
,TEF
,Teste1
,Teste2
,Pagamento Tipo H,Pagamento Tipo I,Pagamento Tipo J,Pagamento Tipo K,Pagamento Tipo L,Pagamento
Tipo M,Pagamento Tipo N,Pagamento Tipo O,Pagamento Tipo P,
- A impressora permite programar at 16 formas de pagamento, as formas que no estiverem
programadas estaro com os valores zerados e a descrio em branco (veja Exemplos acima).
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(275)
Int_Retorno = Daruma_FI_VerificaDescricaoFormasPagamento(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,275);
Int_Retorno := Daruma_FI_VerificaDescricaoFormasPagamento(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.13 Daruma_FI_VerificaFormasPagamento(ndice 1442)


Ateno!!!
Este mtodo est descontinuado, favor utilizar Daruma_FI_VerificaFormasPagamentoEx
(indice1486)

1.6.5.14 Daruma_FI_VerificaFormasPagamentoEx(ndice 1448)


Definio do Mtodo:
Retorna as formas de pagamento e seus valores acumulados.
Parmetros do Mtodo:
FormasPagamento: Varivel String com 1027 posies para receber as formas programadas.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo retorna as informaes das formas de pagamento na seguinte ordem:

Daruma Automao

Daruma Framework

90

Descrio da forma de pagamento.....................: 16 bytes


Valor acumulado (2 casas decimais)..................: 20 bytes
Valor recebido no ltimo cupom (2 casas decimais)...: 20 bytes
Valor indicando se a forma foi usada para a emisso
+ 1 carctere Separador, conforme configurado no Registry com o Mtodo Daruma_Registry_Separador.
- So retornadas16 formas de pagamento mais a forma "Valor Recebido" e "Troco" obedecendo a ordem
descrita anteriormente. As formas de pagamento so separadas por vrgula. Veja Exemplos a seguir:
Ticket
Dinheiro
Cartao
A vista
TEF
Teste1
Teste2

0000000000000000000000000000000000000000,
0000000000000002000000000000000000010000,
0000000000000000000000000000000000000000,
0000000000000000000000000000000000000000,
0000000000000000000000000000000000000000,
0000000000000000000000000000000000000000,
0000000000000000000000000000000000000000,
0000000000000000000000000000000000000000,
0000000000000000000000000000000000000000,
0000000000000000000000000000000000000000,
0000000000000000000000000000000000000000,
0000000000000000000000000000000000000000,
0000000000000000000000000000000000000000,
0000000000000000000000000000000000000000,
0000000000000000000000000000000000000000,
0000000000000000000000000000000000000000,
Valor Recebido 0000000000000002000000000000000000010000,
Troco
0000000000000001945000000000000000009725,
- A impressora permite programar at 16 formas de pagamento, as formas que no estiverem
programadas estaro com os valores zerados e a descrio em branco (veja Exemplos acima).
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(1000)
Int_Retorno = Daruma_FI_VerificaFormasPagamentoEx(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,1027);
Int_Retorno := Daruma_FI_VerificaFormasPagamentoEx(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.15 Daruma_FI_VerificaEstadoImpressora(ndice 1401)


Definio do Mtodo:
Retorna o estado da impressora.
Parmetros do Mtodo:
1. ACK: Varivel inteira para receber o primeiro byte.
2. ST1: Varivel inteira para receber o segundo byte.
3. ST2: Varivel inteira para receber o terceiro byte.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo devolve o status da impressora (Retorno da Impressora).
Exemplos:

Daruma Automao

91

Daruma Framework

Exemplo em Visual Basic 6.0:


Dim Int_Estado_Ack As Integer
Dim Int_Estado_St1 As Integer
Dim Int_Estado_St2 As Integer
Int_Estado_Ack = 0
Int_Estado_St1 = 0
Int_Estado_St2 = 0
Int_Retorno = Daruma_FI_VerificaEstadoImpressora(Int_Estado_Ack, Int_Estado_St1, Int_Estado_St2)
TX_Retorno.Text = " Ack=" + CStr(Int_Estado_Ack) + " St1=" + CStr(Int_Estado_St1) + " St2=" +
CStr(Int_Estado_St2)
Exemplo em Delphi 7.0:
var
Int_Daruma_ACK: Integer;
Int_Daruma_ST1: Integer;
Int_Daruma_ST2: Integer;
begin
Int_Daruma_ACK := 0;
Int_Daruma_ST1 := 0;
Int_Daruma_ST2 := 0;
Int_Retorno:= Daruma_FI_VerificaEstadoImpressora( Int_Daruma_ACK, Int_Daruma_ST1,
Int_Daruma_ST2 );
Edit1.Lines.Text := (' ACK=' + IntToStr(Int_Daruma_ACK) + ' ST1=' + IntToStr(Int_Daruma_ST1) + '
ST2=' + InttoStr(Int_Daruma_ST2));

1.6.5.16 Daruma_FI_VerificaAliquotasIss(ndice 1440)


Definio do Mtodo:
Retorna as alquotas de vinculao ao ISS.
Parmetros do Mtodo:
AliquotasIss: Varivel String com 79 posies para receber as alquotas vinculadas ao Iss.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Observaes:
As alquotas retornadas estaro separadas por vrgula. Ex.: 1800,1200,1500
Para isento utilize II
Para no tributado NN
Para substituio FF
Exemplos:

Exemplo em Visual Basic 6.0:


Str_Informacao = Space(79)
Int_Retorno = Daruma_FI_VerificaAliquotasIss(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,79);
Int_Retorno := Daruma_FI_VerificaAliquotasIss(Str_Informacao);

1.6.5.17 Daruma_FI_VerificaIndiceAliquotasIss(ndice 1445)


Definio:
Retorna os ndices das alquotas de ISS.

Daruma Automao

Daruma Framework

92

Parmetros do Mtodo:
IndiceAliquotas: Varivel String com o tamanho de 48 posies para receber os ndices das alquotas de
ISS.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Os ndices retornados estaro separados por vrgula. Ex.: 02,03,04
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(48)
Int_Retorno = Daruma_FI_VerificaIndiceAliquotasIss(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,48);
Int_Retorno := Daruma_FI_VerificaIndiceAliquotasIss(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.18 Daruma_FI_VerificaTotalizadoresNaoFiscais(ndice 1436)


Ateno!!!
Este mtodo est descontinuado, favor utilizar Daruma_FI_VerificaFormasPagamentoEx
(indice1486)

1.6.5.19 Daruma_FI_VerificaTotalizadoresNaoFiscaisEx(ndice 1486)


Definio do Mtodo:
Retorna a descrio dos totalizadores no fiscais programados na impressora com o Mtodo
Daruma_FI_NomeiaTotalizadorNaoSujeitoIcms
Parmetros do Mtodo:
Totalizadores: Varivel String com 300 posies para receber a descrio dos totalizadores no fiscais
programados.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Observaes:
Os totalizadores viro separados por vrgula.
Este Mtodo retorna somente os 16 primeiros cadastrados.
Ex. Sangria,Suprimento,Conta de Luz, etc...
Exemplos:

Exemplo em Visual Basic 6.0:


Str_Informacao = Space(300)
Int_Retorno = Daruma_FI_VerificaTotalizadoresNaoFiscaisEx(Str_Informacao)

Daruma Automao

93

Daruma Framework

TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,300);
Int_Retorno := Daruma_FI_VerificaTotalizadoresNaoFiscaisEx(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.20 Daruma_FI_VerificaEpromConectada(ndice 1432)


Definio do Mtodo:
Verifica se a Eprom est conectada.
Parmetros do Mtodo:
FlagEprom: Varivel String com 2 posies para receber o flag de Eprom conectada. Onde:
1 - Eprom conectada.
0 - Eprom desconectada.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(2)
Int_Retorno = Daruma_FI_VerificaEpromConectada(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_VerificaEpromConectada(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.21 Daruma_FI_VerificaRecebimentosNaoFiscal(ndice 1443)


Definio do Mtodo:
Retorna os recebimentos no fiscais no vinculados programados na impressora.
Parmetros do Mtodo:
Recebimentos: Varivel String com 2200 posies para receber as informaes.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo retorna as informaes para os 50 totalizadores no fiscais no vinculados na seguinte
ordem:
Valor indicando quantas vezes cada recebimento foi utilizado: 4 bytes

Daruma Automao

Daruma Framework

94

Valor acumulado para cada recebimento (2 casas decimais)....: 20 bytes


000100000000000000001000Conta de Luz
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
,000000000000000000000000
- A impressora permite programar at 50 totalizadores no fiscais no vinculados, os totalizadores que
no estiverem programados estaro com os valores zerados e a descrio em branco (veja Exemplos
acima).
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(2200)
Int_Retorno = Daruma_FI_VerificaRecebimentoNaoFiscal(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2200);
Int_Retorno := Daruma_FI_VerificaRecebimentoNaoFiscal(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.22 Daruma_FI_VerificaTruncamento(ndice 1439)


Definio do Mtodo:
Retorna 1 se a impressora estiver no modo truncamento e 0 se estiver no modo arredondamento.
Parmetros do Mtodo:
Truncamento: Varivel String com 2 posies para receber o retorno. Onde:
1 - Impressora programada para Truncar.
2 - Impressora programada para Arredondar.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:

Daruma Automao

95

Daruma Framework

Exemplo em Visual Basic 6.0:


Str_Informacao = Space(2)
Int_Retorno = Daruma_FI_VerificaTruncamento(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_VerificaTruncamento(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.23 Daruma_FI_VerificaModoOperacao(ndice 1431)


Definio do Mtodo:
Verifica se a impressora est em modo normal ou em interveno tcnica.
Parmetros do Mtodo:
ModoOperacao: Varivel String com 2 posies para receber o modo de operao da impressora. Onde:
1 - Modo normal
0 - Interveno tcnica.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(2)
Int_Retorno = Daruma_FI_VerificaModoOperacao(Str_Informacao)
If Str_Informacao = 1 Then
TX_Retorno.Text = " 1 - Impressora em Modo Operacional !!!"
Else
TX_Retorno.Text = " 0 - Impressora em Modo de Interveno Tcnica !!!"
End If
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_VerificaModoOperacao(Str_Informacao);
if Str_Informacao = '1' Then
begin
Edit1.Lines.Text := (' 1 - Impressora em Modo Operacional !!');
end
else
begin
Edit1.Lines.Text := (' 0 - Impressora em Modo de Intervencao Tecnica !!');
end;

1.6.5.24 Daruma_FI_VerificaTotalizadoresParciais(ndice 1407)


Definio do Mtodo:
Retorna os totalizadores parciais cadastrados na impressora com as seguintes informaes:
Parmetros do Mtodo:
Totalizadores: Varivel String com o tamanho de 445 posies para receber os totalizadores parciais
cadastrados.

Daruma Automao

Daruma Framework

96

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- So retornadas as seguintes informaes separadas por vrgulas:
Totalizadores parciais tributados..........: 224 bytes
Iseno....................................: 14 bytes
No insidncia.............................: 14 bytes
Substituo................................: 14 bytes
Totalizadores parciais no sujeitos ao ICMS: 126 bytes
Sangria....................................: 14 bytes
Suprimento.................................: 14 bytes
Grande Total...............................: 18 bytes
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(445)
Int_Retorno = Daruma_FI_VerificaTotalizadoresParciais(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_VerificaModoOperacao(Str_Informacao);
if Str_Informacao = '1' Then
begin
Edit1.Lines.Text := (' 1 - Impressora em Modo Operacional !!');
end
else
begin
Edit1.Lines.Text := (' 0 - Impressora em Modo de Intervencao Tecnica !!');
end;

1.6.5.25 Daruma_FI_ClicheProprietario(ndice 1424)


este comado est descontinuado na dll, favor utilizar
Daruma_FI_ClicheProprietarioEx (ndice 1467)

1.6.5.26 Daruma_FI_ClicheProprietarioEx(ndice 1467)


Definio do Mtodo:
Retorna o clich do proprietrio cadastrado na impressora.
Parmetros do Mtodo:
ClicheProprietario: Varivel String com 400 posies para receber clich cadastrado.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(400)
Int_Retorno = Daruma_FI_ClicheProprietario(Str_Informacao)

Daruma Automao

97

Daruma Framework

TX_Retorno.Text = Str_Informacao
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,400);
Int_Retorno := Daruma_FI_ClicheProprietarioEx(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.27 Daruma_FI_NumeroCaixa(ndice 1425)


Definio do Mtodo:
Retorna o nmero do caixa cadastrado na impressora.
Parmetros do Mtodo:
Numero Caixa: Varivel String com 4 posies para receber o nmero do caixa cadastrado na impressora.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(04)
Int_Retorno = Daruma_FI_NumeroCaixa(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_NumeroCaixa(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.28 Daruma_FI_NumeroLoja(ndice 1426)


Definio do Mtodo:
Retorna o nmero da loja cadastrado na impressora.
Parmetros do Mtodo:
Numero Loja: Varivel String com 4 posies para receber o nmero da loja cadastrado na impressora.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(04)
Int_Retorno = Daruma_FI_NumeroLoja(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Daruma_MostrarRetorno

Daruma Automao

Daruma Framework

98

Exemplo em Delphi 7.0:


var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_NumeroLoja(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.29 Daruma_FI_NumeroSerie(ndice 1411)


Definio do Mtodo:
Retorna o nmero de srie da impressora.
Parmetros do Mtodo:
Nmero Srie: Varivel String com o tamanho de 15 posies para receber o nmero de srie.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(15)
Int_Retorno = Daruma_FI_NumeroSerie(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,15);
Int_Retorno := Daruma_FI_NumeroSerie(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.30 Daruma_FI_VersaoFirmware(ndice 1412)


Definio do Mtodo:
Retorna a verso do firmware da impressora.
Parmetros do Mtodo:
Versao Firmware: Varivel String com o tamanho de 4 posies para receber a verso do firmware.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_VersaoFirmware(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin

Daruma Automao

99

Daruma Framework

SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_VersaoFirmware(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.31 Daruma_FI_CGC_IE(ndice 1413)


Definio do Mtodo:
Retorna o CGC e a Inscrio Estadual do cliente/proprietrio cadastrado na impressora.
Parmetros do Mtodo:
CGC: Varivel String com 18 posies para receber o CGC.
IE: Varivel String com 15 posies para receber a Inscrio Estadual.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_CGC As String
Dim Str_IE As String
Str_CGC = Space(18)
Str_IE = Space(15)
Int_Retorno = Daruma_FI_CGC_IE(Str_CGC, Str_IE)
TX_Retorno.Text = " CGC:" + Str_CGC + " IE:" + Str_IE
Exemplo em Delphi 7.0:
var
Str_CGC: String;
Str_IE: String;
begin
SetLength (Str_CGC,18);
SetLength (Str_IE,15);
Int_Retorno := Daruma_FI_CGC_IE(Str_CGC, Str_IE);
Edit1.Lines.Text := Pchar(' CGC:' + Str_CGC + ' IE:' + Str_IE);

1.6.5.32 Daruma_FI_NumeroCupom(ndice 1417)


Definio do Mtodo:
Retorna o nmero do cupom.
Parmetros do Mtodo:
NmeroCupom: Varivel String com 6 posies para receber o nmero do ltimo cupom.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Quando este mdodo e execudado antes do cupom ser aberto, ento o nmero retornado e o do
prximo cupom.
- Quando este mtodo e executado com o cupom aberto, ento ser retornado o nmero do cupom enm
aberto.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(6)
Int_Retorno = Daruma_FI_NumeroCupom(Str_Informacao)

Daruma Automao

Daruma Framework

100

TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,6);
Int_Retorno := Daruma_FI_NumeroCupom(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.33 Daruma_FI_COO(ndice 1468)


Definio do Mtodo:
Retorna o nmero do cupom INICIAL e ATUAL do DIA em que no foi efetuando a Reduo Za
Parmetros do Mtodo:
1. NumeroCupomINICIAL: Varivel String com 6 posies para receber o nmero do Primeiro Cupom do
DIA.
2. NumeroCupomFinal: Varivel String com 6 posies para receber o nmero do ltimo cupom
Emitido.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_COO_Inicial As String
Dim Str_COO_Final As String
Str_COO_Inicial = Space(6)
Str_COO_Final = Space(6)
Int_Retorno = Daruma_FI_COO(Str_COO_Inicial, Str_COO_Final)
TX_Retorno.Text = " COO Inicial:" + Str_COO_Inicial + " COO Final:" + Str_COO_Final
Exemplo em Delphi 7.0:
var
Str_COO_Inicial: String;
Str_COO_Final: String;
begin
SetLength (Str_COO_Inicial,6);
SetLength (Str_COO_Final,6);
Int_Retorno := Daruma_FI_COO (Str_COO_Inicial, Str_COO_Final);
Edit1.Lines.Text := pchar(' COO Inicial:' + Str_COO_Inicial + ' COO Final:' + Str_COO_Final);

1.6.5.34 Daruma_FI_MinutosImprimindo(ndice 1430)


Definio do Mtodo:
Retorna o tempo em minutos que a impressora est ou esteve imprimindo.
Parmetros do Mtodo:
Minutos Imprimindo: Varivel String com 4 posies para receber os minutos em impresso.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:

Daruma Automao

101

Daruma Framework

Exemplo em Visual Basic 6.0:


Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_MinutosImprimindo(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_MinutosImprimindo(Str_Informacao);
Edit1.lines.Text := (Str_Informacao);

1.6.5.35 Daruma_FI_MinutosLigada(ndice 1429)


Definio do Mtodo:
Retorna o tempo em minutos que a impressora est ligada.
Parmetros do Mtodo:
Minutos Ligada: Varivel String com 4 posies para receber os minutos em que a impressora est ligada.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Obsercao:
Este mtodo retornar sempre zero, na FS600.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_MinutosLigada(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_MinutosLigada(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.36 Daruma_FI_NumeroSubstituicoesProprietario(ndice 1422)


Definio do Mtodo:
Retorna o nmero de substituies de proprietrio.
Parmetros do Mtodo:
Substituies: Varivel String com 4 posies para receber o nmero de substituies.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_NumeroSubstituicoesProprietario(Str_Informacao)
TX_Retorno.Text = Str_Informacao

Daruma Automao

Daruma Framework

102

Exemplo em Delphi 7.0:


var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_NumeroSubstituicoesProprietario(Str_Informacao);
Edit1.lines.Text := (Str_Informacao);

1.6.5.37 Daruma_FI_NumeroIntervencoes(ndice 1421)


Definio do Mtodo:
Retorna o nmero de intervenes tcnicas realizadas na impressora.
Parmetros do Mtodo:
Intervenes: Varivel String com 4 posies para receber o nmero de intervenes.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_NumeroIntervencoes(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_NumeroIntervencoes(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.38 Daruma_FI_NumeroReducoes(ndice 1420)


Definio do Mtodo:
Retorna o nmero de redues Z realizadas na impressora.
Parmetros do Mtodo:
Redues: Varivel String com 4 posies para receber o nmero de Redues Z.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_NumeroReducoes(Str_Informacao)
TX_Retorno.Text = Str_Informacao

Daruma Automao

Exemplo em Delphi 7.0:

103

Daruma Framework

var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_NumeroReducoes(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.39 Daruma_FI_NumeroCuponsCancelados(ndice 1419)


Definio do Mtodo:
Retorna o nmero de cupons cancelados.
Parmetros do Mtodo:
Cupons Cancelados: Varivel String com o tamanho de 4 bytes para receber o nmero de cupons
cancelados.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_NumeroCuponsCancelados(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_NumeroCuponsCancelados(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.40 Daruma_FI_NumeroOperacoesNaoFiscais(ndice 1418)


Definio do Mtodo:
Retorna o nmero de operaes no fiscais executadas na impressora.
Parmetros do Mtodo:
Operaces: Varivel String com 6 posies para receber o nmero de operaes.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(6)
Int_Retorno = Daruma_FI_NumeroOperacoesNaoFiscais(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;

Daruma Automao

Daruma Framework

104

begin
SetLength (Str_Informacao,6);
Int_Retorno := Daruma_FI_NumeroOperacoesNaoFiscais(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.41 Daruma_FI_DataHoraImpressora(ndice 1434)


Definio do Mtodo:
Retorna a data e a hora atual da impressora.
Parmetros do Mtodo:
1. Data: Varivel String com 6 posies para receber a data atual da impressora no formato ddmmaa.
2. Hora: Varivel String com 6 posies para receber a hora atual da impressora no formato hhmmss.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Data As String
Dim Str_Hora As String
Str_Data = Space(6)
Str_Hora = Space(6)
Int_Retorno = Daruma_FI_DataHoraImpressora(Str_Data, Str_Hora)
TX_Retorno.Text = " Data:" + Str_Data + " Hora:" + Str_Hora
Exemplo em Delphi 7.0:
var
Str_Data: String;
Str_Hora: String;
begin
SetLength (Str_Data,6);
SetLength (Str_Hora,6);
Int_Retorno := Daruma_FI_DataHoraImpressora(Str_Data, Str_Hora );
Edit1.Lines.Text := Pchar(' Data: ' + Str_Data + ' Hora: ' + Str_Hora);

1.6.5.42 Daruma_FI_DataHoraReducao(ndice 1437)


Definio do Mtodo:
Retorna a data e a hora da ltima Reduo Z.
Parmetros do Mtodo:
1. DataReduo: Varivel String com 6 posies para receber a data da ltima reduo no formato
ddmmaa.
2. HoraReduo: Varivel String com 6 posies parar eceber a hora da ltima reduo no formato
hhmmss.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Data_Rdz As String
Dim Str_Hora_Rdz As String

Daruma Automao

105

Daruma Framework

Str_Data_Rdz = Space(6)
Str_Hora_Rdz = Space(6)
Int_Retorno = Daruma_FI_DataHoraReducao(Str_Data_Rdz, Str_Hora_Rdz)
TX_Retorno.Text = " Data:" + Str_Data_Rdz + " Hora:" + Str_Hora_Rdz
Exemplo em Delphi 7.0:
var
Str_Data_Rdz: String;
Str_Hora_Rdz: String;
begin
SetLength (Str_Data_Rdz,6);
SetLength (Str_Hora_Rdz,6);
Int_Retorno := Daruma_FI_DataHoraReducao(Str_Data_Rdz, Str_Hora_Rdz );
Edit1.Lines.Text := pchar(' Data:' + Str_Data_Rdz + ' Hora:' + Str_Hora_Rdz);

1.6.5.43 Daruma_FI_DataMovimento(ndice 1438)


Definio do Mtodo:
Retorna a data do ltimo movimento.
Parmetros do Mtodo:
Data Movimento: Varivel String com 6 posies para receber a data do movimento no formato ddmmaa.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Data_Mov As String
Str_Data_Mov = Space(6)
Int_Retorno = Daruma_FI_DataMovimento(Str_Data_Mov)
TX_Retorno.Text = " Data:" + Str_Data_Mov
Exemplo em Delphi 7.0:
var
Str_Data_Mov: String;
begin
SetLength (Str_Data_Mov,6);
Int_Retorno := Daruma_FI_DataMovimento(Str_Data_Mov);
Edit1.Lines.Text := (' Data: ' + Str_Data_Mov);

1.6.5.44 Daruma_FI_ContadoresTotalizadoresNaoFiscais(ndice 1435)


Definio do Mtodo:
Retorna o nmero de vezes em que os totalizadores no sujeitos ao ICMS foram usados.
Parmetros do Mtodo:
Contadores: Varivel String com 44 posies para receber os contadores dos totalizadores.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- A impressora fiscal Daruma, permite a programao de at 50 totalizadores no fiscais, porm esse

Daruma Automao

Daruma Framework

106

Mtodo retorna somente os contadores dos 9 primeiros totalizadores cadastrados.


- O contedo da varivel retornada ser 36 dgitos separados de 4 em 4 por vrgura que representam os
9 primeiros totalizadores. Ex.: "0001,0003,0001,0005,0004,0002,0003,0004,0007"
- O primeiro valor corresponde ao nmero de vezes que o totalizador 01 foi usado, o segundo
corresponde ao totalizador 02 e assim sucessivamente. A contagem Inicia-se do contador 03 em diante
pois o 01 e 02 sempre sera Sangria e Suprimento.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(44)
Int_Retorno = Daruma_FI_ContadoresTotalizadoresNaoFiscais(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,44);
Int_Retorno := Daruma_FI_ContadoresTotalizadoresNaoFiscais(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.45 Daruma_FI_LerAliquotasComIndice(ndice 1483)


Definio do Mtodo:
Retorna as alquotas cadastradas na impressora com o Indice indicativo se a mesma esta cadastrada no
ISS ou no ICMS.
Parmetros do Mtodo:
Aliquotas: Varivel String com o tamanho de 300 posies para receber as alquotas.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Observaes:
Inicio com S significa que ISS.
Inicio com T significa que ICMS.
As alquotas retornadas estaro separadas por vrgula.I Ex.: Sa1200, TB1700, TC0500, Sc1800.
Exemplos:

Exemplo em Visual Basic 6.0:


Str_Informacao = Space(300)
Int_Retorno = Daruma_FI_LerAliquotasComIndice(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,300);
Int_Retorno := Daruma_FI_LerAliquotasComIndice(Str_Informacao);
Edit1.lines.Text := (Str_Informacao);

1.6.5.46 Daruma_FI_VendaBruta(ndice 1484)


Definio do Mtodo:
Retorna o valor do Grande Total da impressora.
Parmetros do Mtodo:
VendaBruta: Varivel String com 18 posies para receber o valor do grande total com 2 casas decimais.

Daruma Automao

107

Daruma Framework

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(18)
Int_Retorno = Daruma_FI_VendaBruta(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,18);
Int_Retorno := Daruma_FI_VendaBruta(Str_Informacao );
Edit1.Lines.Text := (Str_Informacao);

1.6.5.47 Daruma_FI_GrandeTotal(ndice 1414)


Definio do Mtodo:
Retorna o valor do Grande Total da impressora.
Parmetros do Mtodo:
GrandeTotal: Varivel String com 18 posies para receber o valor do grande total com 2 casas decimais.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(18)
Int_Retorno = Daruma_FI_GrandeTotal(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,18);
Int_Retorno := Daruma_FI_GrandeTotal(Str_Informacao );
Edit1.Lines.Text := (Str_Informacao);

1.6.5.48 Daruma_FI_Descontos(ndice 1415)


Definio do Mtodo:
Retorna a valor acumulado dos descontos.
Parmetros do Mtodo:
Descontos: Varivel String com 14 posies para receber o valor dos descontos com 2 casas decimais.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.

Daruma Automao

Daruma Framework

108

Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(14)
Int_Retorno = Daruma_FI_Descontos(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,14);
Int_Retorno := Daruma_FI_Descontos(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.49 Daruma_FI_Acrescimos(ndice 1441)


Ateno!!!
Este mtodo est descontinuado, favor utilizar!!!

1.6.5.50 Daruma_FI_Cancelamentos(ndice 1416)


Definio do Mtodo:
Retorna o valor acumulado dos itens e dos cupons cancelados
Parmetros do Mtodo:
Cancelamentos: Varivel String com 14 posies para receber o valor dos cancelamentos com 2 casas
decimais.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(14)
Int_Retorno = Daruma_FI_Cancelamentos(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,14);
Int_Retorno := Daruma_FI_Cancelamentos(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.51 Daruma_FI_DadosUltimaReducao(ndice 1410)


Definio do Mtodo:
Retorna os dados da impressora no momento da ltima Reduo Z.

Daruma Automao

109

Daruma Framework

Parmetros do Mtodo:
Dados Reducao: Varivel String com o tamanho de 631 posies para receber os dados da ltima
reduo.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- So retornados os valores das seguintes informaes separados por vrgulas:

Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(631)
Int_Retorno = Daruma_FI_DadosUltimaReducao(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,631);
Int_Retorno := Daruma_FI_DadosUltimaReducao(Str_Informacao);
Edit1.lines.Text := (Str_Informacao);

Daruma Automao

Daruma Framework

110

1.6.5.52 Daruma_FI_SubTotal(ndice 1408)


Definio do Mtodo:
Retorna o valor do subtotal do cupom.
Parmetros do Mtodo:
SubTotal: Varivel String com o tamanho de 14 posies para receber o subtotal do cupom.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(14)
Int_Retorno = Daruma_FI_SubTotal(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,14);
Int_Retorno := Daruma_FI_Subtotal(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.53 Daruma_FI_RetornoAliquotas (ndice 1406)


Definio do Mtodo:
Retorna as alquotas cadastradas na impressora.
Parmetros do Mtodo:
Aliquotas: Varivel String com o tamanho de 79 posies para receber as alquotas.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- As alquotas retornadas estaro separadas por vrgula. Ex.: 1200, 1700, 0500, 1800
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(79)
Int_Retorno = Daruma_FI_RetornoAliquotas(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,79);
Int_Retorno := Daruma_FI_RetornoAliquotas(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

Daruma Automao

111

Daruma Framework

1.6.5.54 Daruma_FI_ValorPagoUltimoCupom (ndice 1433)


Definio do Mtodo:
Retorna o valor pago no ltimo cupom.
Parmetros do Mtodo:
Valor: Varivel String com 14 posies para receber o valor pago no ltimo cupom.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Valor pago no ltimo cupom diferente do valor total do cupom.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(14)
Int_Retorno = Daruma_FI_ValorPagoUltimoCupom(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,14);
Int_Retorno := Daruma_FI_ValorPagoUltimoCupom(Str_Informacao);
Edit1.lines.Text := (Str_Informacao);

1.6.5.55 Daruma_FI_UltimaFormaPagamento (ndice 1446) (copy)


Definio do Mtodo:
Retorna a ultima forma de pagamento e tambm o valor que foi pago.
Parmetros do Mtodo:
- FormaPagamento: Varivel String com 16 posies para a descrio da Forma de Pagamento.
- Valor: Varivel String com 14 posies para receber o valor pago.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Descricao_Forma As String
Dim Str_Valor_Forma As String
Str_Descricao_Forma = Space(16)
Str_Valor_Forma = Space(14)
Int_Retorno = Daruma_FI_UltimaFormaPagamento(Str_Descricao_Forma, Str_Valor_Forma)
TX_Retorno.Text = Str_Descricao_Forma + " = " + Str_Valor_Forma
Exemplo em Delphi 7.0:
var
Str_Descricao_da_Forma: String;
Str_Valor_da_Forma: String;

Daruma Automao

Daruma Framework

112

begin
SetLength (Str_Descricao_da_Forma,16);
SetLength (Str_Valor_da_Forma,14);
Int_Retorno := Daruma_FI_UltimaFormaPagamento(Str_Descricao_da_Forma, Str_Valor_da_Forma);
Edit1.Lines.Text := pchar(Str_Descricao_da_Forma + ' = ' + Str_Valor_da_Forma);

1.6.5.56 Daruma_FI_ValorFormaPagamento (ndice 1446)


Definio do Mtodo:
Retorna o valor acumulado em uma determinada forma de pagamento.
Parmetros do Mtodo:
FormaPagamento: Varivel String com at 16 posies com a descrio da Forma de Pagamento que
deseja retornar o seu valor.
- Valor: Varivel String com 14 posies para receber o total acumulado.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Descricao_Forma As String
Dim Str_Valor_Forma As String
Str_Descricao_Forma = Space(16)
Str_Valor_Forma = Space(14)
Str_Descricao_Forma = InputBox("Entre com a Forma de Pagamento a ser consultada:", "Daruma
Framework", "Dinheiro")
Int_Retorno = Daruma_FI_ValorFormaPagamento(Str_Descricao_Forma, Str_Valor_Forma)
TX_Retorno.Text = Str_Descricao_Forma + " = " + Str_Valor_Forma
Exemplo em Delphi 7.0:
var
Str_Descricao_da_Forma: String;
Str_Valor_da_Forma: String;
begin
SetLength (Str_Descricao_da_Forma,16);
SetLength (Str_Valor_da_Forma,14);
Str_Descricao_da_Forma := InputBox('Entre com a Forma de Pagamento a ser consultada:', 'Daruma
Framework', 'Dinheiro');
if Str_Descricao_da_Forma = '' Then
Exit;
Int_Retorno := Daruma_FI_ValorFormaPagamento((Str_Descricao_da_Forma),(Str_Valor_da_Forma)) ;
Edit1.Lines.Text := (pchar(Str_Descricao_da_Forma + ' = ' + Str_Valor_da_Forma));

1.6.5.57 Daruma_FI_ValorTotalizadorNaoFiscal (ndice 1447)


Definio do Mtodo:
Retorna o valor acumulado em um determinado totalizador no fiscal.
Parmetros do Mtodo:
Totalizador: Varivel String com at 19 posies com a descrio do Totalizador.
Valor: Varivel String com 14 posies para receber a informao.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
-25: Totalizador no programado.
Exemplos:

Daruma Automao

113

Daruma Framework

Exemplo em Visual Basic 6.0:


Dim Str_Totalizador_Nao_Fiscal As String
Dim Str_Valor_Totalizador As String
Str_Totalizador_Nao_Fiscal = Space(19)
Str_Valor_Totalizador = Space(14)
Str_Totalizador_Nao_Fiscal = InputBox("Entre com a Descrio do Totalizador a ser consultado:",
"Daruma Framework", "Conta de Luz")
Int_Retorno = Daruma_FI_ValorTotalizadorNaoFiscal(Str_Totalizador_Nao_Fiscal, Str_Valor_Totalizador)
TX_Retorno.Text = Str_Totalizador_Nao_Fiscal + " = " + Str_Valor_Totalizador
Exemplo em Delphi 7.0:
var
Str_Totalizador_Nao_Fiscal: String;
Str_Valor_do_Totalizador: String;
begin
SetLength (Str_Totalizador_Nao_Fiscal,19);
SetLength (Str_Valor_do_Totalizador,14);
Str_Totalizador_Nao_Fiscal := InputBox('Entre com a Descricao do Totalizador a ser consultado:',
'Daruma Framework', 'Conta de Luz');
Int_Retorno :=
Daruma_FI_ValorTotalizadorNaoFiscal((Str_Totalizador_Nao_Fiscal),(Str_Valor_do_Totalizador) );
Edit1.Lines.Text := pchar(Str_Totalizador_Nao_Fiscal + ' = ' + Str_Valor_do_Totalizador);

1.6.5.58 Daruma_FI_UltimoItemVendido (ndice 1423)


Definio do Mtodo:
Retorna o nmero do ltimo item vendido.
Parmetros do Mtodo:
UltimoItem: Varivel String com 4 posies para receber o nmero do ltimo item vendido.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_UltimoItemVendido(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_UltimoItemVendido(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.59 Daruma_FI_TipoUltimoDocumento (ndice 1493)


Definio do Mtodo:
Retorna o tipo do ltimo cupom emitido.
Parmetros do Mtodo:
UltimoItem: Varivel String com 3 posies para receber o nmero do ltimo item vendido.

Daruma Automao

Daruma Framework

114

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplo:
Se o ltimo documento emitido tiver sido uma ReduoZ ento o retorno ser este:LRZ
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(3)
Int_Retorno = Daruma_FI_TipoUltimoDocumento(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_TipoUltimoDocumento(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.60 Daruma_FI_MapaResumo(ndice 602)


Definio do Mtodo:
Gera o relatrio "Mapa Resumo" referente ao movimento do dia. As informaes sero geradas no
arquivo RETORNO.TXT no diretrio configurado no parmetro "path" na chave do Registry. O diretrio
default configurado o diretrio raiz (C:\).
Parmetros da Funo:
No h
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- As informaes contidas no mapa resumo podem variar de Estado para Estado. Essa funo gera o
relatrio com as informaes padres que so usadas na maioria dos Estados. O relatrio gerado ter o
seguinte layout:
Contador de Reduo Z..:

0480

COO....................:

000110

Venda Bruta............:

0,00

Venda Lquida..........:

0,00

Cancelamentos..........:

0,00

Acrscimos.............:

0,00

Descontos..............:

0,00

ISS....................:

Daruma Automao

0,00

115

Daruma Framework

Iseno................:

0,00 - II

No Incidncia.........:

0,00 - NN

Substituio Tributria:

0,00 - FF

1200...................:

0,00 - Aliquota

- Aps a linha "Substituio Tributria" sero gravadas as informaes de vendas referente as alquotas
de ICMS. Portanto, o nmero de linhas ir variar de acordo com o nmero de alquotas de ICMS
cadastradas na impressora.
- As informaes contidas no mapa resumo sero referentes aos dados da ltima reduo Z, portanto,
para gerar o mapa resumo referente ao movimento do dia voc deve executar essa funo aps a
reduo Z, caso contrrio o mapa resumo ser gerado com as informaes referente ao movimento do dia
anterior, para isso voc mesmo podera efetuar a Reduo ZDaruma_Registry_ZAutomatica configurando
a Chave para o Valor 1(um).
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_MapaResumo()
Shell "notepad C:\retorno.txt", vbMaximizedFocus
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_MapaResumo();
WinExec('c:\windows\NOTEPAD.EXE C:\retorno.txt',SW_SHOWNORMAL);

1.6.5.61 Daruma_FI_RelatorioTipo60Analitico(ndice 605)


Definio do Mtodo:
Gera o relatrio "Tipo 60 analtico" exigido pelo convnio de ICMS 85/2001. As informaes sero geradas
no arquivo RETORNO.TXT no diretrio configurado no parmetro "path" na Chave do Registry. O diretrio
default o diretrio raiz (C:\).
Parmetros da Funo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O relatrio gerado ter o seguinte layout:
Tipo do relatrio.........:

60

Subtipo...................:

Data de emisso...........:
Nmero de srie...........:

09/09/05
000000000036861

Cancelamentos.............:

0,00

Descontos.................:

0,00

F.........................:

0,00

I.........................:

0,00

Daruma Automao

Daruma Framework

N.........................:

0,00

1200......................:

0,00

ISS.......................:

0,00

116

- Aps a linha "N..." sero gravadas as informaes de vendas referentes s alquotas tributrias.
Portanto, o nmero de linhas ir variar de acordo com o nmero de alquotas cadastradas na impressora.
- As informaes contidas no relatrio Tipo 60 Analtico so referentes aos dados da ltima Reduo Z.
Portanto, para gerar o relatrio referente ao movimento do dia voc deve executar esse mtodo aps a
Reduo Z, caso contrrio as informaes geradas sero referentes ao movimento do dia anterior, para
isso voc mesmo podera efetuar a Reduo Z configurando Daruma_Registry_ZAutomatica o a Chave
para o Valor 1(um).
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_RelatorioTipo60Analitico()
Shell "notepad C:\retorno.txt", vbMaximizedFocus
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_RelatorioTipo60Analitico();
WinExec('c:\windows\NOTEPAD.EXE C:\retorno.txt',SW_SHOWNORMAL);

1.6.5.62 Daruma_FI_RelatorioTipo60Mestre(ndice 606)


Definio do Mtodo:
Gera o relatrio "Tipo 60 Mestre" exigido pelo convnio de ICMS 85/2001. As informaes sero geradas
no arquivo RETORNO.TXT no diretrio configurado no parmetro "path" na chave do registry. O diretrio
default o diretrio raiz (C:\).
Parmetros da Funo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- O relatrio gerado ter o seguinte layout:

Tipo do relatrio.........:
Subtipo...................:
Data de emisso...........:
Nmero de srie...........:
Nmero do equipamento.....:
Modelo do documento fiscal:

60
M
09/09/05
000000000036861
0013
2D

COO inicial...............:

000111

COO final.................:

000125

Contador de redues......:

Daruma Automao

0480

117

Daruma Framework

Reinicio de Operacao......:

0388

Venda Bruta...............:

0,00

Totalizador geral.........:

4.135.406,04

- As informaes contidas no relatrio Tipo 60 Mestre so alimentadas pelo Mtodo


Daruma_FI_AberturaDoDia e pelo outro Mtodo Daruma_FI_FechamentoDoDia: e (veja esses mtodos
para maiores informaes). O Mtodo Daruma_FI_RelatorioTipo60Mestre deve ser executado aps
Daruma_FI_FechamentoDoDia() e o mtodo ou aps a Reduo Z (caso a reduo tenha sido executada
automaticamente pela impressora).
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_RelatorioTipo60Analitico()
Shell "notepad C:\retorno.txt", vbMaximizedFocus
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_RelatorioTipo60Analitico();
WinExec('c:\windows\NOTEPAD.EXE C:\retorno.txt',SW_SHOWNORMAL);

1.6.5.63 Daruma_FI_FlagsFiscais(ndice 1428)


Definido do Mtodo:
Retorna um nmero referente ao flag fiscal da impressora. Veja discriminao abaixo.
Parmetros do Mtodo:
FlagFiscal: Varivel inteira para receber um nmero representando o flag fiscal da impressora. Veja
discriminao abaixo.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Discriminao dos valores para o flag fiscal:
Descrio
Valor
Cupom fiscal aberto
1
Fechamento de formas de pgto iniciado
2
Horrio de vero selecionado
4
J houve reduo Z no dia
8
Permite cancelar cupom fiscal
32
Memria fiscal sem espao
128
- Os valores podem vir somados o que indica mais de um estado.
- Por Exemplos se o cupom estiver aberto e o horrio de vero selecionado ento o flag vir = 37.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Informacao = 0
Int_Retorno = Daruma_FI_FlagsFiscais(Int_Informacao)
TX_Retorno.Text = Int_Informacao
Exemplo em Delphi 7.0:
var Int_Informacao: Integer;
begin
Int_Informacao:= 0;

Daruma Automao

Daruma Framework

118

Int_Retorno := Daruma_FI_FlagsFiscais( Int_Informacao );


Edit1.Lines.Text := IntToStr(Int_Informacao);

1.6.5.64 Daruma_FI_PalavraStatus(ndice 1481)


Definio do Mtodo:
Retorna o Status do ECF em Bytes 12 Bytes)
Parmetros do Mtodo:
String com 12 Posies Ex. A4C60C000000.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo retorna 12 Bytes no Seguinte Formato
Byte
Byte
Byte
Byte
Byte
Byte
Byte
Byte
Byte
Byte
Byte
Byte

1 (S1) - S1 Significa STATUS 1


2 (S2)
3 (S3)
4 (S4)
5 (S5)
6 (S6)
7 (S7)
8 (S8)
9 (S9)
10 (S10)
11 (S11)
12 (S12)

Para Analisar Cada Byte Siga a Seguinte Tabela Abaixo:


Bit Descrio de S1
b3
0 = Gaveta do caixa fechada
1 = Gaveta do caixa aberta
b2
0 = Impressora operacional
1 = Impressora em falha mecnica
b1
0 = Documento posicionado para autenticao
1 = Sem documento em posio de autenticao
b0
0 = Papel presente
1 = Fim da bobina de papel
Bit Descrio de S2
b3
0 = Impressora On Line
1 = Impressora Off Line
b2
0 = Perifrico conectado na Interface Auxiliar
1 = Nenhum perifrico conectado
b1
0 = No h reduo Z pendente
1 = Reduo Z do perodo anterior ainda pendente
b0
0 = Near End no detectado
1 = Detectado proximidade de Fim de Papel
Bit Descrio de S3
b3
0 = Impressora em modo manuteno
1 = Impressora em modo operao
b2
0 = Sensor de autenticao desabilitado
1 = Sensor de autenticao ativo
b1
0 = Guilhotina desabilitada
1 = Guilhotina habilitada
b0
0 = Fechamento automtico de C.F. desabilitado
1 = Fechamento automtico de C.F. habilitado

Daruma Automao

119

Daruma Framework

Bit Descrio de S4
b3
0 = Relatrio gerencial no aberto
1 = Relatrio gerencial aberto
b2
0 = Cupom Fiscal no aberto
1 = Cupom Fiscal aberto
b1
0 = Buffer de comunicao no vazio
1 = Buffer de comunicao vazio
b0
0 = Impresso encerrada
1 = Impresso em andamento
Bit Descrio de S5
b3
0 = Jumper de operao instalado
1 = Jumper de operao removido (deslacrado)
b2
0 = Impressora operacional
1 = Impressora em Erro Fiscal (bloqueada)
b1
0 = MF presente
1 = MF ausente ou no inicializada
b0
0 = Modo normal
1 = Modo treinamento
Bit Descrio de S6
b3
0 = Configurao da IF habilitada
1 = Configurao da IF inibida at a prxima Reduo Z
b2
0 = Leitura X do incio do dia ainda no emitida
1 = Leitura X do incio do dia j emitida
b1
0 = Impressora em operao
1 = Reduo Z de hoje j emitido (IF travada at 0h)
b0
0 = Fita detalhe OK
1 = Fim do papel da fita detalhe
Bit Descrio de S7
b3
Sempre
b
Sempre
b1
Sempre
b0
Sempre

zero
zero
zero
zero

Bit Descrio de S8
b3
Sempre zero
b2
Sempre zero
b1
0 = No ocorreu queda de energia
1 = Ocorreu queda de energia
b0
0 = Impresso encerrada
1 = Impresso em andamento ou pendente
Bit Descrio de S9
b3
Sempre zero
b2
Sempre zero
b1
Sempre zero
b0
0 = Totalizadores Fiscais OK
1 = Erro nos totalizadores fiscais
Bit Descrio de S10
b3
0 = MF OK
1 = Erro na Leitura da MF ou MF substituda
b2
0 = Gravao da MF OK
1 = Erro na gravao da MF
b1
0 = Relgio interno OK
1 = Erro no relgio interno
b0
0 = Clich do proprietrio OK
1 = Clich do proprietrio danificado
Bit Descrio de S11
b3
Sempre zero
b
Sempre zero
b1
Sempre zero
b0
Sempre zero

Daruma Automao

Daruma Framework

120

Valor Descrio de S12


0
Impressora OK
1
Falha no tacogerador
2
Falha no sensor de margem
4
Falha de guilhotina
5
Firmware invlido
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(12)
Int_Retorno = Daruma_FI_PalavraStatus(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,12);
Int_Retorno := Daruma_FI_PalavraStatus(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.65 Daruma_FI_PalavraStatusBinario(ndice 1482)

Definio do Mtodo:
Retorna o Status do ECF com 12 Bytes de Status (Total de 45 Bits), no apenas o ACK, ST1 e ST2, mas
14 Bytes de Status que o ECF devolve de forma extendida em cada mtodo.
Parmetros do Mtodo:
String com 50 Posies onde devolver 0(zero) e 1(um) indicando cada Status do ECF
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo devolver 48 carcteres cada um indicando o status 0(zero) ou 1(um) de acordo com a
Tabela Abaixo.
stas 48 Posies resultado dos 12 Bytes de status que o ECF permite trabalhar, com 4 Bits cada Bytes
(12*4) Totalizando 45 Bits ou carcteres que sero escritos na varivel por refncia que voc passou
neste Mtodo.
So 45 Bits e No 48 Bits porque o Byte 12 no destrinchado em 4 Bits mas sim em um nico Valor
Inteiro.
Para Anlise do Status escrito em sua varivel siga a tabela abaixo:

Daruma Automao

121

Daruma Framework

Bit/
Se estiver Valendo 0(zero)
Posi
significa:
o
1
Gaveta Fechada

Gaveta Aberta

Impressora Operacional, OK

Impressora Com Falha Mecanica

Doc Posicionado para Autenticar

Sem Doc Posicionado para Autenticar

Impressora com Papel

Impressora Sem Papel

Impressora On-Line

Impressora Off-Line

Periferico Conectardo a Porta Auxiliar

Perifericio no Conectado a porta Auxiliar

No h Reduo Z Pendente

H Reduo Z pendente

Pouco Papel No Detectado Imp. OK

Pouco Papel Detectado

Impressora em Modo Interveno Tec.

Impressora em Modo Normal

10

Sensor de Autenticao Desabilitado

Sensor de Autenticao OK

11

Guilhotina Desabilitada

Guilhotina OK

12

Fechamento automatico do ECF Desab. Fechamento Automatico do ECF Habilitado

13

Relatorio Gerencial no Aberto

14

Cupom Fiscal No Aberto

Cupom Fiscal Aberto

15

Buffer de Comunicacao Com Dados

Buffer de Comunicao Vazio

16

Impresso Encerrada

Impresso em Andamento

17

Jumper de Modo Operao Presente

Jumper de Modo Operao removido

18

Impressora Operacaonal

Impressora em Modo Fiscal

19

Memoria Fiscal Presente

Memoria Fiscal Ausente, No Inicializada.

20

Modo Normal

Modo Treinamento

21
22
23
24

Se Estiver Valendo 1(um) significa:

Relatorio Gerencial Aberto

Configurao do ECF Habilitado (Aps


uma Reduo Z e antes de uma X)
Leitura X de Abertura de Dia ainda no
Emitida
Impressora com Dia Fiscal Aberto
Fita Detalhe OK

Configurao do ECF Inibida at a


Prxima Leitura X
Leitura X de comeo de Dia j Emitida
Impressora Com a Z de "Hoje" j emitida
Fim do Papel da Fita Detalhe

25

SEMPRE ZERO

26

SEMPRE ZERO

27

SEMPRE ZERO

28

SEMPRE ZERO

29

SEMPRE ZERO

30

SEMPRE ZERO

31

SEMPRE ZERO

32

Impresso Concluida

33

Impresso em Andamento
SEMPRE ZERO

34

SEMPRE ZERO

35

MF Operacional

MF DEsconectada

36

Totalizadores Fiscais OK

Totalizadores Fiscais Danificados

37

MF OK

Erro na Leitura da MF

38

Gravacao da MF OK

Erro na Gravacao da MF

39

Relogio Interno OK

Erro no Relogio Interno

40

Cliche do Proprietario OK

Cliche do Proprietario Danificado

41

SEMPRE ZERO

42

SEMPRE ZERO

43

SEMPRE ZERO

44
45

SEMPRE ZERO
0
1
2
4

=
=
=
=

Impressora OK
Falha no TacoGerador
Falha no Sensor de Margem
Falha de Guilhotina

Caso esta Posicao seja diferente de 0(zero)


porque tem problema Mecanico no ECF,
sendo o mesmo indicado por um dos
Daruma Automao

Daruma Framework

122

Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(50)
Int_Retorno = Daruma_FI_PalavraStatusBinario(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,50);
Int_Retorno := Daruma_FI_PalavraStatusBinario(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.66 Daruma_FI_SimboloMoeda(ndice 1427)


Definio do Mtodo:
Retorna o smbolo da moeda cadastrada na impressora.
Parmetros do Mtodo:
Smbolo Moeda: Varivel String com 2 posies para receber o smbolo da moeda.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(2)
Int_Retorno = Daruma_FI_SimboloMoeda(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_SimboloMoeda(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.67 Daruma_FI_RetornoImpressora(ndice 1402)


Definio do Mtodo:
L o retorno da impressora referente ao ltimo mtodo enviado.
Parmetros do Mtodo:
1. ACK: Varivel INTEIRA para receber o primeiro byte.
2. ST1: Varivel INTEIRA para receber o segundo byte.
3. ST2: Varivel INTEIRA para receber o terceiro byte.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo deve ser usada aps a execuo de qualquer outro Mtodo da DLL para ler o
Retorno da Impressora referente o Mtodo executada. Este Mtodo devolve o status da impressora.

Daruma Automao

123

Daruma Framework

Exemplos:
Exemplo em Visual Basic 6.0:
Global Int_Retorno As Integer
Global Int_Ack As Integer
Global Int_St1 As Integer
Global Int_St2 As Integer
Global Str_ErroExtendido As String
Public Function Daruma_MostrarRetorno()
Int_Ack = 0
Int_St1 = 0
Int_St2 = 0
Daruma_FI_RetornoImpressora Int_Ack, Int_St1, Int_St2
Str_ErroExtendido = Space(4)
Daruma_FI_RetornaErroExtendido Str_ErroExtendido
MsgBox "Retorno do Mtodo = " + CStr(Int_Retorno) + Chr(13) + Chr(10) _
+ "Ack = " + CStr(Int_Ack) + Chr(13) + Chr(10) _
+ "St1 = " + CStr(Int_St1) + Chr(13) + Chr(10) _
+ "St2 = " + CStr(Int_St2) + Chr(13) + Chr(10) _
+ "Erro Extendido = " + Str_ErroExtendido, , "Daruma Framework Retorno do Mtodo"
End Function
Exemplo em Delphi 7.0:
Var Daruma_ACK,Daruma_ST1,Daruma_ST2:Integer;
begin
Daruma_Ack := 0;
Daruma_ST1 := 0;
Daruma_ST2 := 0;
Int_Retorno:= Daruma_FI_RetornoImpressora( Daruma_ACK, Daruma_ST1, Daruma_ST2 );

1.6.5.68 Daruma_FI_RetornaErroExtendido(ndice 1470 )


Definio do Mtodo:
Retorna o Erro Extendido do ECF, alm do ST1 e ST2 retorna uma Tabela Completa de Erros.
Parmetros do Mtodo:
String: Com 4 Posies que ir conter o Cdigo de Erro Extendido que o ECF retorna.
Retorna 999 caso tenha a DLL retorne TIME-OUT.
Retorna a String original passada, com VAZIOS, caso NO HAJA ERRO.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Tabela de Erro Retornada:
=================================================================
=====
00 IF em modo Manuteno. Foi ligada sem o Jumper de Operao
01 mtodo disponvel somente em modo Manuteno
02 Erro durante a gravao da Memria Fiscal
03 Memria Fiscal esgotada
04 Erro no relgio interno da IF
05 Falha mecnica na IF
06 Erro durante a leitura da Memria Fiscal
10 Documento sendo emitido
11 Documento no foi aberto
12 No existe documento a cancelar
13 Dgito no numrico no esperado foi encontrado nos Parmetros do Mtodo:s

Daruma Automao

Daruma Framework

14
15
16
17
18
19
20
21
22
23
24
25
27
28
29
30
31
32
35
36
37
38
39
40
41
42
43
44
45
48
49
50
51
52
56
61
76
77
80
81
82
83
84
85
86
87
90

No h mais memria disponvel para esta operao


Item a cancelar no foi encontrado
Erro de sintaxe no mtodo
"Estouro" de capacidade numrica (overflow)
Selecionado totalizador tributado com alquota de imposto no definida
Memria Fiscal vazia
No existem campos que requerem atualizao
Detectado proximidade do final da bobina de papel
Cupom de Reduo Z j foi emitido. IF inoperante at 0:00h do prximo dia
Reduo Z do perodo anterior ainda pendente. IF inoperante
Valor de desconto ou acrscimo invlido (limitado a 100%)
carctere invlido foi encontrado nos Parmetros do Mtodo:s
Nenhum perifrico conectado a interface auxiliar
Foi encontrado um campo em zero
Documento anterior no foi Cupom Fiscal. No pode emitir Cupom Adicional
Acumulador No Fiscal selecionado no vlido ou no est disponvel
No pode autenticar. Excedeu 4 repeties ou no permitida nesta fase
Cupom adicional inibido por configurao
Relgio Interno Inoperante
Verso do firmware gravada na Memria Fiscal no a esperada
Alquota de imposto informada j est carregada na memria
Forma de pagamento selecionada no vlida
Erro na seqncia de fechamento do Cupom Fiscal
IF em Jornada Fiscal. Alterao da configurao no permitida
Data invlida. Data fornecida inferior ltima gravada na Memria Fiscal
Leitura X inicial ainda no foi emitida
No pode emitir Comprovante Vinculado
Cupom de Oramento no permitido para este estabelecimento
Campo obrigatrio em branco
No pode estornar
Forma de pagamento indicada no encontrada
Fim da bobina de papel
Nenhum usurio cadastrado na MF
MF no instalada ou no inicializada
Documento j aberto
Queda de energia durante a emisso de Cupom Fiscal
Desconto em ISS no permitido (somente para verso 1.11 do Estado de Santa Catarina)
Acrscimo em IOF inibido
Perifrico na interface auxiliar no pode ser reconhecido
Solicitado preenchimento de cheque de banco desconhecido
Solicitado transmisso de mensagem nula pela interface auxiliar
Extenso do cheque no cabe no espao disponvel
Erro na comunicao com a interface auxiliar
Erro no dgito verificador durante comunicao com a PertoCheck
Falha na carga de geometria de folha de cheque
Parmetros do Mtodo: invllido para o campo de data do cheque
Sequncia de validao de nmero de srie invlida
Exemplos:

Exemplo em Visual Basic 6.0:


Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_RetornaErroExtendido(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_RetornaErroExtendido(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

Daruma Automao

124

125

Daruma Framework

1.6.5.69 Daruma_FI_RetornaAcrescimoNF(ndice 1451)


Definio do Mtodo:
Retorna o valor acumulado no totalizador de Acrescimos No Fiscais. (14 Posies).
Parmetros do Mtodo:
String: Com 14 posies.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(14)
Int_Retorno = Daruma_FI_RetornaAcrescimoNF(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,14);
Int_Retorno := Daruma_FI_RetornaAcrescimoNF(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.70 Daruma_FI_RetornaCFCancelados(ndice 1452)


Definio do Mtodo:
Retorna a Quantidade de Cupons Fiscais Cancelados (4 dgitos).
Parmetros do Mtodo:
String: Com 4 posies.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_RetornaCFCancelados(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_RetornaCFCancelados(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

Daruma Automao

Daruma Framework

126

1.6.5.71 Daruma_FI_RetornaCNFCancelados(ndice 1453)


Definio do Mtodo:
Retorna a Quantidade de Cupons Nao Fiscais Cancelados (4 dgitos)
Parmetros do Mtodo:
String: Com 4 posies.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_RetornaCNFCancelados(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_RetornaCNFCancelados(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.72 Daruma_FI_RetornaCLX(ndice 1454)


Definio do Mtodo:
Retorna contador de LeituraX - Quantidade de Vezes em foram emitidas LeituraX no dia.
Parmetros do Mtodo:
String: Com 4 posies.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_RetornaCLX(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_RetornaCLX(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

Daruma Automao

127

Daruma Framework

1.6.5.73 Daruma_FI_RetornaCNFNV(ndice 1455)


Definio do Mtodo:
Retorna o Valor Acumulado nos Comprovantes No Fiscais No Vinculados (14 dgitos) em cada sequncia
e por sua vez um contador de 4 dgitos indicando a quantidade de vezes em que foram utilizados no ECF.
Parmetros do Mtodo:
String: Com 304 posies.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo retorna os 16 Totalizadodes No Fiscais No Vinculados (CNFNV) na seguinte Ordem
16 Blocos composto de: 14 bytes
Valor Acumulado no Comprovante No Fiscal No Vinculado..........: 14 bytes - Recebimento No Fiscal.
Contador deste Comprovante indicando a quant. de vezes utilizado.: 4 bytes
+ 1 carctere Separador, conforme configurado no Registry com o Mtodo Daruma_Registry_Separador.
Retorno do Mtodo:
000000000000000000,000000000000000000,000000000000000000,000000000000000000,000000000
000000000,000000000000000000,000000000000000000,000000000000000000,000000000000000000,
000000000000000000,000000000000000000,000000000000000000,000000000000000000,000000000
000000000,000000000000000000,000000000000000000,
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(304)
Int_Retorno = Daruma_FI_RetornaCNFNV(Str_Informacao)
TX_Retorno.Text = Str_Informacao

Exemplo em Delphi 7.0:


var
Str_Informacao: String;
begin
SetLength (Str_Informacao,304);
Int_Retorno := Daruma_FI_RetornaCNFNV(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.74 Daruma_FI_RetornaCNFV(ndice 1456)


Definio do Mtodo:
Retorna o Valor Acumulado nos Comprovantes No Fiscais Vinculados (14 dgitos) em cada sequncia e
por sua vez um contador de 4 dgitos indicando a quantidade de vezes em que foram utilizados no ECF.
Parmetros do Mtodo:
String: Com 304 posies.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo retorna os 16 Totalizadodes No Fiscais Vinculados (CNFV) na seguinte Ordem
16 Blocos composto de: 14 bytes.
Valor Acumulado no Comprovante No Fiscal Vinculado..........: 14 bytes
Contador deste Comprovante indicando a quant. de vezes utilizado.: 4 bytes

Daruma Automao

Daruma Framework

128

+ 1 carctere Separador, conforme configurado no Registry com o Mtodo Daruma_Registry_Separador.


Retorno do Mtodo:
000000000000000000,000000000000000000,000000000000000000,000000000000000000,000000000
000000000,000000000000000000,000000000000000000,000000000000000000,000000000000000000,
000000000000000000,000000000000000000,000000000000000000,000000000000000000,000000000
000000000,000000000000000000,000000000000000000,
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(304)
Int_Retorno = Daruma_FI_RetornaCNFV(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,304);
Int_Retorno := Daruma_FI_RetornaCNFV(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.75 Daruma_FI_RetornaCRO(ndice 1457)


Definio do Mtodo:
Retorna a quantidade de Vezes em que se Reiniciou a Operao no ECF.
CRO - Contador de Reincio de Operaoo - Geralmente quando se cadastra um Novo Usurio no ECF.
Parmetros do Mtodo:
String: Com 4 posies.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_RetornaCRO(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_RetornaCRO(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.76 Daruma_FI_RetornaCRZ(ndice 1458)


Definio do Mtodo:
Retorna a quantidade de Vezes em que se Realizou uma Reduo Z.
CRZ - Contador de Reduo Z.
Parmetros do Mtodo:
String: Com 4 posies.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.

Daruma Automao

129

Daruma Framework

-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_RetornaCRZ(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_RetornaCRZ(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.77 Daruma_FI_RetornaCRZRestante(ndice 1459)


Definio do Mtodo:
Retorna a quantidade Reduo Z Restante.
CRZ - Contador de Reduo Z.
Parmetros do Mtodo:
String: Com 4 posies
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_RetornaCRZRestante(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_RetornaCRZRestante(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.78 Daruma_FI_RetornaCancelamentoNF(ndice 1460)


Definio do Mtodo:
Retorna o Valor acumulado que indica o Total em Reais dos cancelamentos no fiscais Realizados
Parmetros do Mtodo:
String: Com 14 posies.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Daruma Automao

Daruma Framework

130

Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(14)
Int_Retorno = Daruma_FI_RetornaCancelamentoNF(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,14);
Int_Retorno := Daruma_FI_RetornaCancelamentoNF(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.79 Daruma_FI_RetornaDescontoNF(ndice 1461)


Definio do Mtodo:
Retorna o Valor acumulado que indica o Total em Reais dos descontos no fiscais Realizados.
Parmetros do Mtodo:
String: Com 14 posies
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(14)
Int_Retorno = Daruma_FI_RetornadescontoNF(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,14);
Int_Retorno := Daruma_FI_RetornaDescontoNF(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.80 Daruma_FI_RetornaGNF(ndice 1462)


Definio do Mtodo:
Retorna a quantidade de vezes em que foram emitidos Documentos No Fiscais. (O que no Cupom
Fiscal)
Ex: Relatorio Gerencial, Vinculado, Receber valor agua, (recebimento no fiscal), Sangria, Suprimento,
etc..
GNF - Geral No Fiscal
Parmetros do Mtodo:
String: Com 6 posies.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:

Daruma Automao

131

Daruma Framework

Str_Informacao = Space(6)
Int_Retorno = Daruma_FI_RetornaGNF(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,6);
Int_Retorno := Daruma_FI_RetornaGNF(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.81 Daruma_FI_RetornaTempoImprimindo(ndice 1463)


Definio do Mtodo:
Retona o Tempo em que esteve imprimindo documentos (tempo em Minutos)
Parmetros do Mtodo:
String: Com 4 posies.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_RetornaTempoImprimindo(Str_Informacao)
TX_Retorno.Text = Str_Informacao

Exemplo em Delphi 7.0:


var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_RetornaTempoImprimindo(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.82 Daruma_FI_RetornaTempoLigado(ndice 1464)

Definio do Mtodo:
Retona o Tempo em que esteve Ligada (tempo em Minutos)
Parmetros do Mtodo:
String: Com 4 posies
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(4)
Int_Retorno = Daruma_FI_RetornaTempoLigado(Str_Informacao)
TX_Retorno.Text = Str_Informacao

Daruma Automao

Daruma Framework

132

Exemplo em Delphi 7.0:


var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_RetornaTempoLigado(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.83 Daruma_FI_RetornaTotalPagamentos(ndice 1465)

Definio do Mtodo:
Retorna o Total contabilizado em Reais nas 16 Formas de Pagamento do ECF.
Retorna em Blocos de 14 dgitos o valor acumulado de cada forma de pagamento.
Parmetros do Mtodo:
String: Com 304 posies
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo retorna o Valor das 14 Formas de Pagamento na seguinte Ordem
16 Blocos composto de:
Valor Acumulado na Forma de Pagamento.........: 14 bytes
+ 1 carctere Separador, conforme configurado no Registry com o Mtodo Daruma_Registry_Separador.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(304)
Int_Retorno = Daruma_FI_RetornaTotalPagamentos(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,304);
Int_Retorno := Daruma_FI_RetornaTotalPagamentos(Str_Informacao);
Edit1.Lines.Text := (pchar(Str_Informacao));

1.6.5.84 Daruma_FI_RetornaTroco(ndice 1466)


Definio do Mtodo:
Retorna o Valor Acumulado em Troco, com 14 dgitos.
Parmetros do Mtodo:
String: Com 14 posies
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(14)
Int_Retorno = Daruma_FI_RetornaTroco(Str_Informacao)

Daruma Automao

133

Daruma Framework

TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,14);
Int_Retorno := Daruma_FI_RetornaTroco(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.85 Daruma_FI_RetornaRegistradoresNaoFiscais(ndice 1484)


Definio do Mtodo:
Retorna o Valor da CADA Registrador no Fiscal do ECF. Veja a descrio Abaixo
Parmetros do Mtodo:
String: com 950 Posies onde a dll ir retornar o valor de CADA TOTALIZADOR ou REGISTRADOR no
fiscal do ECF.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo retorna as informaes dos Registradores no Fiscais, cada registrador separado pelo
carctere Separador que voc escolher ou programar na dll (o Default ";") (carctere Separador,
conforme configurado no Registry com o Mtodo Daruma_Registry_Separador.)

Daruma Automao

Daruma Framework

CAMPO

Tamanho

Separador

Tamanho ToTal

COO Inicial

6 Pocies

COO Final

6 Posies

Contador Geral No Fiscal

7 Posies

Nmero de Cupons Fisca


Cancelado

5 Posies

Nmero de Cupom NFiscal


Cancelado

5 Posies

Contador de Leitura X Efetuada

5 Posies

Zeros Para Uso Futuro

5 Posies

Contador de Reinicio de Operao

5 Posies

Contador de Reduo Z

5 Posies

Reduo Z Restante

5 Posies

16 * 14

225 Posies

14

15 Posies

289 Posies

15 Posies

Total de Cada Forma de


Pagamento (16 Formas de
Pagamento com 14 Posies cada
uma, indicando o Valor
Acumulado at o momento)
Troco Acumulado

Contador de Uso e Valor


Acumulado dos Comprovantes
No Fiscais No Vinculado ( 16
Totalizadores, cada um deles com 16 *( 14 +
14 Posies indicando o Valor
4)
Acumulado + 4 Posies
indicando a Quantidade de Vezes
em que foi Utilizado)
Valor de Desconto No Fiscal
14
Acrescimo No Fiscal

14

15 Posies

Cancelamento No Fiscal

14

15 Posies

289 Posies

5 Posies

5 Posies

Zeros Para Uso Futuro

10

11 Posies

Zeros Para Uso Futuro

10

11 Posies

Contador de Uso e Valor


Acumulado dos Comprovantes
No Fiscais Vinculado ( 16
Totalizadores, cada um deles com 16 *( 14 +
14 Posies indicando o Valor
4)
Acumulado + 4 Posies
indicando a Quantidade de Vezes
em que foi Utilizado)
Tempo do ECF Ligada (em
4
Minutos)
Tempo do ECF Imprimindo

Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(950)
Int_Retorno = Daruma_FI_RetornaRegistradoresNaoFiscais(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin

Daruma Automao

134

135

Daruma Framework

SetLength (Str_Informacao,950);
Int_Retorno := Daruma_FI_RetornaREgistradoresNaoFiscais( Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.86 Daruma_FI_RetornaRegistradoresFiscais(ndice 1485)


Definio do Mtodo:
Retorna o Valor da CADA Registrador Fiscal do ECF. Veja a descrio Abaixo
Parmetros do Mtodo:
String: com 400 Posies onde a dll ir retornar o valor de CADA TOTALIZADOR ou REGISTRADOR no
fiscal do ECF.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo retorna as informaes dos Registradores Fiscais, cada registrador separado pelo carctere
Separador que voc escolher ou programar na dll (o Default ";") (carctere Separador, conforme
configurado no Registry com o Mtodo Daruma_Registry_Separador1.)
CAMPO

Tamanho

Separador

Tamanho ToTal

GT Inicial (Grande Total do


Comeo do DIA)

18

19 Pocies

Valor dos Descontos

14

15 Posies

Valor dos Cancelamentos

14

15 Posies

Valor dos Isentos ( II )

14

15 Posies

Valor dos No Incidentes ( NN )

14

15 Posies

Valor da Substituio ( FF )

14

15 Posies

16*14

225 Posies

14

15 Posies

Valor de Cada Aliquota (16


Aloquotas com 14 Posies cada
uma indicando o Valor Acumulado
em Cada uma delas)
Acrescimo IOF (Imposto
Operao Financeira)

Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(400)
Int_Retorno = Daruma_FI_RetornaRegistradoresFiscais(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,400);
Int_Retorno := Daruma_FI_RetornaRegistradoresFiscais(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);

1.6.5.87 Daruma_FI_RetornaValorComprovanteNaoFiscal(ndice 1495)


Definio do Mtodo:
Retorna o Valor de um Comrpovante No Fiscal do ECF. Veja a descrio Abaixo

Daruma Automao

Daruma Framework

136

Parmetros do Mtodo:
String: com 02 Posies com o ndice do Comprovante No Fiscal, que se deseja saber o total acumulado.
String: com 14 Posies onde a dll ir retornar o valor acumulado do TOTALIZADOR indicado.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Indice_CNF As String
Str_Informacao = Space(14)
Str_Indice_CNF = InputBox("Entre com o ndice do Comprovante No Fiscal para saber o Total
Acumulado:", "Daruma Framework", "03")
Int_Retorno = Daruma_FI_RetornaValorComprovanteNaoFiscal(Str_Indice_CNF, Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Indice_CNF: String;
Str_Informacao: String;
begin
SetLength (Str_Informacao,14);
Str_Indice_CNF := InputBox('Entre com o Indice do Comprovante Nao Fiscal para saber o Total
Acumulado:', 'Daruma Framework', '03');
Int_Retorno := Daruma_FI_RetornaValorComprovanteNaoFiscal(Str_Indice_CNF, Str_Informacao);
Edit1.Lines.Text:= (pchar(Str_Informacao));

1.6.5.88 Daruma_FI_RetornaIndiceComprovanteNaoFiscal(ndice 1496) ??????????


Definio do Mtodo:
Retorna o ndice de um Comrpovante No Fiscal do ECF. Veja a descrio Abaixo
Parmetros do Mtodo:
String: com 16 Posies com a descrio do Comprovante No Fiscal, que se deseja saber o seu ndice
String: com 2 Posies para receber o ndice do Comprovante selecionado.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Descricao_CNF As String
Str_Informacao = Space(2)
Str_Descricao_CNF = InputBox("Entre com a Descrio do Comprovante No Fiscal para saber o ndice:",
"Daruma Framework", "Conta de Luz")
Int_Retorno = Daruma_FI_RetornaIndiceComprovanteNaoFiscal(Str_Descricao_CNF, Str_Informacao)
TX_Retorno.Text = CStr(CInt(Str_Informacao))

Daruma Automao

Exemplo em Delphi 7.0:

137

Daruma Framework

1.7

Mtodos Exclusivos para a Impressora FS2000

1.7.1

Daruma_Registry_FS2000_CupomAdicional(ndice 35)
Definio do Mtodo:
Programa a Impressora FS2000 para poder emitir um Cupom Adicional
Parmetros do Mtodo:
Varivel String:
- 1 Programa.
- 0 Desprograma.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Por Default a dll ir senpre deixar o cupom adicional desprogramado, portanto caso voc queira utiliz-lo
dever chamar este mtodo no incio de seu cdigo.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_FS2000_CupomAdicional("1")
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_Registry_FS2000_CupomAdicional('1');

1.7.2

Daruma_Registry_TempoEsperaCheque(ndice 36)
Definio do Mtodo:
Ajusta o tempo de espera para o posicionamento impresso do cheque para a impresso.
Parmetros do Mtodo:
Varivel String: Com o tempo em segundos.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
- Este Mtodo e aplicado para obter-se mais tempo na hora de posicionar o temque para a impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Tempo_Espera_Cheque As String
Str_Tempo_Espera_Cheque = InputBox("Entre com o Tempo em Segundos para esperar o Cheque ser
Posicionado:", "Daruma Framework", "5")
If Str_Tempo_Espera_Cheque = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_FS2000_TempoEsperaCheque(Str_Tempo_Espera_Cheque)
Exemplo em Delphi 7.0:
var
Str_Tempo_Espera_Cheque: String;

Daruma Automao

Daruma Framework

138

begin
Str_Tempo_Espera_Cheque := InputBox('Entre com o Tempo em Segundos para esperar o Cheque ser
Posicionado:', 'Daruma Framework', '5');
if Str_Tempo_Espera_Cheque = '' Then
Exit;
Int_Retorno := Daruma_Registry_FS2000_TempoEsperaCheque(pchar(Str_Tempo_Espera_Cheque));

1.7.3

Daruma_FI2000_StatusCheque(ndice 5015)
Definio do Mtodo:
Retorna o status Cheque, se o mesmo posiocionado para impresso ou no.
Parmetros do Mtodo:
Varivel String: com DOIS espaos alocados para escrita do Status
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Status_Cheque As String
Str_Status_Cheque = Space(2)
Int_Retorno = Daruma_FI2000_StatusCheque(Str_Status_Cheque)
TX_Retornos_FS2000.Text = Str_Status_Cheque
Exemplo em Delphi 7.0:
var
Str_Status_Cheque: String;
begin
SetLength (Str_Status_Cheque,2);
Int_Retorno := Daruma_FI2000_StatusCheque(pchar(Str_Status_Cheque));

1.7.4

Daruma_FI2000_ImprimirCheque(ndice 5016)
Definio do Mtodo:
Imprime Cheque na FS2000.
Parmetros do Mtodo:
1.
Nmero do Banco: String com 03 carcteres contendo o nmero do banco.
2.
Cidade de Emisso: String com o nome da cidade de emisso do cheque.
3.
Data de Emisso: String com a data de emisso do cheque.
4.
Nome do Favorecido: String com o nemo do favorecido.
5.
Valor do Cheque: String com o valor do cheque.
6.
Posio do Cheque: String com a posio do cheque.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Numero_do_Banco As String
Dim Str_Cidade_de_Emissao As String

Daruma Automao

139

Daruma Framework

Dim
Dim
Dim
Dim

Str_Data_de_Emissao As String
Str_Favorecido As String
Str_Valor As String
Str_Posicao_do_Cheque As String

Str_Numero_do_Banco = "001"
Str_Cidade_de_Emissao = "Taubate"
Str_Data_de_Emissao = "12/01/2005"
Str_Favorecido = "Daruma S.A."
Str_Valor = "1,00"
Str_Posicao_do_Cheque = "H"
Int_Retorno = Daruma_FI2000_ImprimirCheque(Str_Numero_do_Banco, Str_Cidade_de_Emissao,
Str_Data_de_Emissao, Str_Favorecido, Str_Valor, Str_Posicao_do_Cheque
Exemplo em Delphi 7.0:
var
Str_Numero_do_Banco: String;
Str_Cidade_de_Emissao: String;
Str_Data_de_Emissao: String;
Str_Favorecido: String;
Str_Valor: String;
Str_Posicao_do_Cheque: String;
begin
Str_Numero_do_Banco := '001';
Str_Cidade_de_Emissao := 'Taubate';
Str_Data_de_Emissao := '12/01/2005';
Str_Favorecido := 'Daruma S.A.';
Str_Valor := '1,00';
Str_Posicao_do_Cheque := 'H';
Int_Retorno := Daruma_FI2000_ImprimirCheque(pchar( Str_Numero_do_Banco ), pchar(
Str_Cidade_de_Emissao ), pchar( Str_Data_de_Emissao ), pchar( Str_Favorecido ), pchar( Str_Valor ),
pchar( Str_Posicao_do_Cheque ) );

1.7.5

Daruma_FI2000_ImprimirVersoCheque(ndice 5017)
Definio do Mtodo:
Imprime Texto no Verso do Cheque na FS2000.
Parmetros do Mtodo:
String: com at (80) carcteres contendo o texto que se deseja imprimir.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Texto_Verso_do_Cheque As String
Str_Texto_Verso_do_Cheque = InputBox("Entre com o Texto a ser impresso no Verso do Cheque:",
"Daruma Framework", "Exemplo de Texto Livre no Verso do Cheque")
If Str_Texto_Verso_do_Cheque = "" Then
Exit Sub
End If
Int_Retorno = Daruma_FI2000_ImprimirVersoCheque(Str_Texto_Verso_do_Cheque)
Exemplo em Delphi 7.0:
var
Str_Texto_Verso_do_Cheque: String;

Daruma Automao

Daruma Framework

140

begin
Str_Texto_Verso_do_Cheque := InputBox('Entre com o Texto a ser impresso no Verso do Cheque:',
'Exemplo de Texto Livre no Verso do Cheque', '001');
if Str_Texto_Verso_do_Cheque = '' Then
Exit;
Int_Retorno := Daruma_FI2000_ImprimirVersoCheque(pchar(Str_Texto_Verso_do_Cheque));

1.7.6

Daruma_FI2000_LiberarCheque(ndice 5008)
Definio do Mtodo:
Libera o Cheque na FS2000.
Parmetros do Mtodo:
No h.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI2000_LiberarCheque()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI2000_LiberarCheque();

1.7.7

Daruma_FI2000_LeituraCodigoMICR(ndice 5007)
Definio do Mtodo:
L o MICR(codigo CMC7) na FS2000.
Parmetros do Mtodo:
Leitura MICR: Varivel String com (40) posies para receber o Codigo.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Cdigo_MICR As String
Str_Codigo_MICR = Space(40)
Int_Retorno = Daruma_FI2000_LeituraCodigoMICR(Str_Codigo_MICR) 'Este Metodo le o Codigo direto do
cheque
TX_Retornos_FS2000.Text = Str_Codigo_MICR
Exemplo em Delphi 7.0:
var
Str_Codigo_MICR: String;
begin
SetLength (Str_Codigo_MICR,40);
Int_Retorno := Daruma_FI2000_LeituraCodigoMICR(pchar(Str_Codigo_MICR));

Daruma Automao

141

1.7.8

Daruma Framework

Daruma_FI2000_CancelarCheque(ndice 5026)
Definio do Mtodo:
Cancela o Mdoto de impresso de cheque na FS2000.
Parmetros do Mtodo:
No H.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI2000_CancelarCheque()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI2000_CancelarCheque();

1.7.9

Daruma_FI2000_LeituraTabelaCheque(ndice 5011)
Definio do Mtodo:
L a Tabela de cheques armazenada na Impressora.
Parmetros do Mtodo:
Leitura Tabela Cheque: Varivel String com 3060 posies para receber a tabela de cheques cadastrada
na impressora.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Tabela_Cheque As String
Str_Tabela_Cheque = Space(3060)
Int_Retorno = Daruma_FI2000_LeituraTabelaCheque(Str_Tabela_Cheque)
TX_Retornos_FS2000.Text = Str_Tabela_Cheque
Exemplo em Delphi 7.0:
var
Str_Tabela_Cheque: String;
begin
SetLength (Str_Tabela_Cheque,3060);
Int_Retorno := Daruma_FI2000_LeituraTabelaCheque(pchar(Str_Tabela_Cheque));

1.7.10 Daruma_FI2000_CarregarCheque(ndice 5009)


Definio do Mtodo:
Carrega o Cheque na impressora FS2000.
Parmetros do Mtodo:
Envia a Tabela Cheque para a Impressora: Varivel String com o Nmero do Banco a ser carregado na
impressora.
Daruma Automao

Daruma Framework

142

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Numero_do_Banco As String
Str_Numero_do_Banco = InputBox("Entre com o Nmero do Banco que voc deseja Carragar o Cheque:",
"Daruma Framework", "001")
If Str_Numero_do_Banco = "" Then
Exit Sub
End If
Int_Retorno = Daruma_FI2000_CarregarCheque(Str_Numero_do_Banco)
Exemplo em Delphi 7.0:
var
Str_Numero_do_Banco: String;
begin
Str_Numero_do_Banco := InputBox('Entre com o Numero do Banco que voce deseja Carragar o
Cheque:', 'Daruma Framework', '001');
if Str_Numero_do_Banco = '' Then
Exit;
Int_Retorno := Daruma_FI2000_CarregarCheque(pchar(Str_Numero_do_Banco));

1.7.11 Daruma_FI2000_CorrigirGeometriaCheque(ndice 5010)


Definio do Mtodo:
Carrige a Geometria do Cheque FS2000.
Parmetros do Mtodo:
Varivel String: Com o Nmero do Banco a ser corrigida a Geometria.
Varivel String: Com a nova Geometria.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Sequncia dos bytes a serem passados para a correo da geometria do cheque.


29 dgitos que definem o cheque conforme:
Nmero do banco com 3 dgitos
Distncia linha do valor numrico com 2 dgitos (da borda a linha, em mm)
Coluna (final) do valor numrico com 2 dgitos
Distncia linha do primeiro extenso com 2 dgitos (da borda a linha, em mm)
Coluna (inicial) do primeiro extenso com 2 dgitos
Distncia linha do segundo extenso com 2 dgitos (da borda a linha, em mm)
Coluna (inicial) do segundo extenso com 2 dgitos
Distncia linha do favorecido com 2 dgitos (da borda a linha, em mm)
Coluna (inicial) do favorecido com 2 dgitos
Distncia linha da cidade com 2 dgitos (da borda a linha, em mm)
Coluna (final) da cidade com 2 dgitos
Coluna (inicial) do dia com 2 dgitos
Coluna (inicial) do ms com 2 dgitos
Coluna (inicial) do ano com 2 dgitos
Exemplos:

Daruma Automao

143

Daruma Framework

Exemplo em Visual Basic 6.0:


Dim Str_Numero_do_Banco As String
Dim Str_Geometria_do_Cheque As String
Str_Numero_do_Banco = "001"
Str_Geometria_do_Cheque = "04941506230128013560647090"
Int_Retorno = Daruma_FI2000_CorrigirGeometriaCheque(Str_Numero_do_Banco,
Str_Geometria_do_Cheque)
Exemplo em Delphi 7.0:
var
Str_Numero_do_Banco: String;
Str_Geometria_do_Cheque: String;
begin
Str_Numero_do_Banco := '001';
Str_Geometria_do_Cheque := '04941506230128013560647090';
Int_Retorno := Daruma_FI2000_CorrigirGeometriaCheque(pchar( Str_Numero_do_Banco ), pchar(
Str_Geometria_do_Cheque) );
FormPrincipal.Daruma_Analisa_Retorno();

1.7.12 Daruma_FI2000_DescontoSobreItemVendido(ndice 5018)


Definio do Mtodo:
Permite um desconto sobre um tem vendido.
Parmetros do Mtodo:
1.
NmeroItem: String com o nmero do tem a ser concedido o desconto, com no mximo 3 dgitos.
2.
TipoDesconto: 1 (um) carctere indicando a forma do desconto. '$' desconto por valor e '%'
desconto percentual.
3. ValorDesconto: String com at 8 dgitos para desconto por valor (2 casas decimais) e 4 dgitos para
desconto percentual.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Numero_do_Item As String
Dim Str_Tipo_do_Desconto As String
Dim Str_Valor_do_Desconto As String
Str_Numero_do_Item = "01"
Str_Tipo_do_Desconto = "$"
Str_Valor_do_Desconto = "10"
Int_Retorno = Daruma_FI2000_DescontoSobreItemVendido(Str_Numero_do_Item, _
Str_Tipo_do_Desconto, Str_Valor_do_Desconto)
Exemplo em Delphi 7.0:
var
Str_Numero_do_Item: String;
Str_Tipo_do_Desconto: String;
Str_Valor_do_Desconto: String;
begin
Str_Numero_do_Item := '01';
Str_Tipo_do_Desconto := '$';
Str_Valor_do_Desconto := '10';

Daruma Automao

Daruma Framework

144

Int_Retorno := Daruma_FI2000_DescontoSobreItemVendido(pchar( Str_Numero_do_Item ), pchar(


Str_Tipo_do_Desconto ), pchar( Str_Valor_do_Desconto ));

1.7.13 Daruma_FI2000_AcrescimosICMSISS(ndice 5021)


Definio do Mtodo:
L da memria da impressora o total de acrscimos ICMS/ISS.
Parmetros do Mtodo:
AcrscimosICMS: Varivel String com o tamanho de 14 posies para receber os acrscimos em ICMS.
AcrscimosISS: Varivel String com o tamanho de 14 posies para receber os acrscimos em ISS.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_AcrescimosICMS As String
Dim Str_AcrescimosISS As String
Str_AcrescimosICMS = Space(14)
Str_AcrescimosISS = Space(14)
Int_Retorno = Daruma_FI2000_AcrescimosICMSISS(Str_AcrescimosICMS, Str_AcrescimosISS)
TX_Retornos_FS2000.Text = " ICMS:" + Str_AcrescimosICMS + " ISS:" + Str_AcrescimosISS
Exemplo em Delphi 7.0:
var
Str_AcrescimosICMS: String;
Str_AcrescimosISS: String;
begin
SetLength (Str_AcrescimosICMS,14);
SetLength (Str_AcrescimosISS,14);
Int_Retorno := Daruma_FI2000_AcrescimosICMSISS(pchar(Str_AcrescimosICMS),
pchar(Str_AcrescimosISS));

1.7.14 Daruma_FI2000_CancelamentosICMSISS(ndice 5022)


Definio do Mtodo:
L da memria da impressora o total de cancelamentos ICMS/ISS.
Parmetros do Mtodo:
CancelamentosICMS: Varivel String com o tamanho de 14 posies para receber os cancelamentos em
ICMS.
CancelamentosISS: Varivel String com o tamanho de 14 posies para receber os cancelamentos em
ISS.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_CancelamentosICMS As String
Dim Str_CancelamentosICMS As String
Str_CancelamentosICMS = Space(14)
Str_CancelamentosISS = Space(14)
Daruma Automao

145

Daruma Framework

Int_Retorno = Daruma_FI2000_CancelamentosICMSISS(Str_CancelamentosICMS,
Str_CancelamentosISS)
TX_Retornos_FS2000.Text = " ICMS:" + Str_CancelamentosICMS + " ISS:" + Str_CancelamentosISS
Exemplo em Delphi 7.0:
var
Str_CancelamentosICMS: String;
Str_CancelamentosISS: String;
begin
SetLength (Str_CancelamentosICMS,14);
SetLength (Str_CancelamentosISS,14);
Int_Retorno := Daruma_FI2000_CancelamentosICMSISS(pchar(Str_CancelamentosICMS),
pchar(Str_CancelamentosISS));

1.7.15 Daruma_FI2000_DescontosICMSISS(ndice 5023)


Definio do Mtodo:
L da memria da impressora o total de descontos ICMS/ISS.
Parmetros do Mtodo:
DencontosICMS: Varivel String com o tamanho de 14 posies para receber os descontos em ICMS.
DencontososISS: Varivel String com o tamanho de 14 posies para receber os descontos em ISS.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_DencontosICMS As String
Dim Str_DencontosISS As String
Str_DencontosICMS = Space(14)
Str_DencontosISS = Space(14)
Int_Retorno = Daruma_FI2000_DescontosICMSISS(Str_Dencontos_ICMS, Str_DencontosISS)
TX_Retornos_FS2000.Text = " ICMS:" + Str_DencontosICMS + " ISS:" + Str_DencontosISS
Exemplo em Delphi 7.0:
var
Str_DescontosICMS: String;
Str_DescontosISS: String;
begin
SetLength (Str_DescontosICMS,14);
SetLength (Str_DescontosISS,14);
Int_Retorno := Daruma_FI2000_DescontosICMSISS(pchar(Str_DescontosICMS),
pchar(Str_DescontosISS));

1.7.16 Daruma_FI2000_LeituraIformacaoUltimoDOC(ndice 5024)


Definio do Mtodo:
Retorna o total acumulado do ltimo DOC emitido na impressora.
Parmetros do Mtodo:
Tipo ltimo DOC: Varivel String com 10 posies para receber o tipo do ltimo documento emitido.
Valor ltimo DOC: Varivel String com 200 posies para receber o valor do ltimo documento emitido.

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


1: OK, Sucesso ao enviar o mtodo.

Daruma Automao

Daruma Framework

146

-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Tipo_Ultimo_Doc As String
Dim Str_Valor_Ultimo_Doc As String
Str_Tipo_Ultimo_Doc = Space(25)
Str_Valor_Ultimo_Doc = Space(225)
Int_Retorno = Daruma_FI2000_LeituraInformacaoUltimoDoc(Str_Tipo_Ultimo_Doc,
Str_Valor_Ultimo_Doc)
TX_Retornos_FS2000.Text = Str_Tipo_Ultimo_Doc + Str_Valor_Ultimo_Doc
Exemplo em Delphi 7.0:
var
Str_Tipo_Ultimo_Doc: String;
Str_Valor_Ultimo_Doc: String;
begin
SetLength (Str_Tipo_Ultimo_Doc,25);
SetLength (Str_Valor_Ultimo_Doc,225);
Int_Retorno := Daruma_FI2000_LeituraInformacaoUltimoDoc(pchar(Str_Tipo_Ultimo_Doc),
pchar(Str_Valor_Ultimo_Doc));

1.7.17 Daruma_FI2000_LeituraIformacaoUltimosCNF(ndice 5025)


Definio do Mtodo:
Retorna o total acumulado dos ltimos CNF, programados na impressora.
Parmetros do Mtodo:
Relatrio Gerencial: Varivel String com 200 posies para receber o contedo do ltimo relatrio
gerencial emitido na impressora.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_LeituraUltimosCNF As String
Str_LeituraUltimosCNF = Space(450)
Int_Retorno = Daruma_FI2000_LeituraInformacaoUltimosCNF(Str_LeituraUltimosCNF)
TX_Retornos_FS2000.Text = Str_LeituraUltimosCNF
Exemplo em Delphi 7.0:
var
Str_LeituraUltimosCNF: String;
begin
SetLength (Str_LeituraUltimosCNF,450);
Int_Retorno := Daruma_FI2000_LeituraInformacaoUltimosCNF(pchar(Str_LeituraUltimosCNF) );
end;

1.7.18 Daruma_FI2000_AbreRelatorioGerencial(ndice 5013)


Definio do Mtodo:
Abre um relatrio gerencial previamente programado na impressora.

Daruma Automao

147

Daruma Framework

Parmetros do Mtodo:
Abre Relatrio Gerencial: Varivel String com o ndice do relatrio gerencial a ser aberto.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Indice_Gerencial As String
Str_Indice_Gerencial = InputBox("Entre com o Indice do Gerencial a ser Aberto:", "Daruma Framework",
"01")
If Str_Indice_Gerencial = "" Then
Exit Sub
End If
Int_Retorno = Daruma_FI2000_AbreRelatorioGerencial(Str_Indice_Gerencial)
Exemplo em Delphi 7.0:
begin
Str_Indice_Gerencial := InputBox('Entre com o Indice do Gerencial a ser Aberto:', 'Daruma
Framework', '01');
if Str_Indice_Gerencial = '' Then
Exit;
Int_Retorno := Daruma_FI2000_AbreRelatorioGerencial(pchar(Str_Indice_Gerencial));

1.7.19 Daruma_FI2000_CriaRelatorioGerencial(ndice 5012)Falta exemplo em


Delphi!!!!!!
Definio do Mtodo:
Permite programar na impressora relatrios gerenciais.
Parmetros do Mtodo:
Cria Relatrio Gerencial: Varivel String com descrio do relatrio gerencial com at (16) carcteres.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Nome_Gerencial As String
Str_Nome_Gerencial = InputBox("Entre com um Nome para o Gerencial:", "Daruma Framework",
"Relatorio Diario")
If Str_Nome_Gerencial = "" Then
Exit Sub
End If
Int_Retorno = Daruma_FI2000_CriaRelatorioGerencial(Str_Nome_Gerencial)
Exemplo em Delphi 7.0:
var
Str_Nome_Gerencial: String;
begin
Str_Nome_Gerencial := InputBox('Entre com um Nome para o Gerencial:', 'Daruma Framework',
'Relatorio Diario');
Daruma Automao

Daruma Framework

148

if Str_Nome_Gerencial = '' Then


Exit;
Int_Retorno := Daruma_FI2000_CriaRelatorioGerencial(Str_Nome_Gerencial);
TX_Retornos_FS2000.Lines.Text := pchar(Str_Nome_Gerencial);

1.7.20 Daruma_FI2000_VerificaRelatorioGerencial(ndice 5014)


Definio do Mtodo:
Retorna as descries dos relatrios programados na impressora.
Parmetros do Mtodo:
Relatrio Gerencial: Varivel String com 200 posies para receber as descries dos relatrios gerenciais
programados na impressora.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Gerencial As String
Str_Gerencial = Space(358)
Int_Retorno = Daruma_FI2000_VerificaRelatorioGerencial(Str_Gerencial)
TX_Retornos_FS2000.Text = Str_Gerencial
Exemplo em Delphi 7.0:
var
Str_Gerencial: String;
begin
SetLength (Str_Gerencial,358);
Int_Retorno := Daruma_FI2000_VerificaRelatorioGerencial(pchar(Str_Gerencial));

1.7.21 Daruma_FI2000_SegundaViaCNFV(ndice 5019)


Definio do Mtodo:
Permite emitir uma segunda via de um CNFV.
Parmetros do Mtodo:
No H.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI2000_SegundaViaCNFVinculado()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI2000_SegundaViaCNFVinculado();

Daruma Automao

149

Daruma Framework

1.7.22 Daruma_FI2000_CancelamentoCNFV(ndice 5020)


Definio do Mtodo:
Permite cancelar um CNFV.
Parmetros do Mtodo:
Cancelamento: Varivel String com o ndice do CNFV a ser cancelado.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_COO_CNFV As String
Str_COO_CNFV = InputBox("Entre com o COO do CNFV a ser Cancelado:", "Daruma Framework", "001")
If Str_COO_CNFV = "" Then
Exit Sub
End If
Int_Retorno = Daruma_FI2000_CancelamentoCNFV(Str_COO_CNFV)
Exemplo em Delphi 7.0:
var
Str_COO_CNFV: String;
begin
Str_COO_CNFV := InputBox('Entre com o COO do CNFV a ser Cancelado:', 'Daruma Framework',
'001');
if Str_COO_CNFV = '' Then
Exit;
Int_Retorno := Daruma_FI2000_CancelamentoCNFV(pchar(Str_COO_CNFV));

1.8

Mtodos Exclusivos para TEF

1.8.1

Implementando TEF com a Daruma32.dll


Definio do Mtodo:
Para realizar o TEF, existe operaes que infelizmente so um pouco difcies para determinadas
linguagens de programao Implementar.
Um Exemplo disso o travamento do Teclado, Impressao da Resposta do TEF, problemas de foco na
Janela, controle do ECF ligado e Desligado, etc.
Por isso implementamos para voc desenvolvedor 5(Cinco) Funes Exclusivas para o TEF que permitir
que voc efetue o TEF sem maiores problemas e sem dificuldades nas operaes de
1)
2)
3)
4)

Esperar o Arquivo de Resposta.


Imprimir Resposta controlando o Arquivo no ECF se foi desligado ou no e re-imprimindo no Gerencial.
Setar o Foco na Janela de seu aplicativo de Automao.
Fechar o Relatorio Seja ele Vinculado ou no.

Veja Graficamente como e quando usar as Funes Auxiliares de TEF: clique aqui
Daruma_TEF_Tratando os Erros para ver passo-a-passo, como fazer o tratamentos dos erros como:
Impressora com pouco papel, sem papel, off-line ou desligada.

Daruma Automao

Daruma Framework

Daruma Automao

150

151

1.8.2

Daruma Framework

Daruma_TEF_SetFocus(ndice 1902)
Definio do Mtodo:
Coloca o foco na Janela que voc especificar. Isso resolve alguns problemas do TEF de perda de foco apos
ou durante uma transao TEF.
Parmetros do Mtodo:
JANELA = String com o TITULO da Janela, a Mtodo ir buscar a janela para colocar o foco atravs do
TTULO da Janela, do CAPTION da Janela. Apenas isso.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplo: Colocando o Foco em uma Janela que o Ttulo da Janela "Aplicativo de Automao
Comercial Verso 1.0"
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Titulo_Janela As String
Str_Titulo_JanelInt_Retorno = InputBox("Entre com o ttulo da Janela que voc deseja setar o focu:",
"Daruma Framework", "Daruma Framework Impressoras Fiscais")
Int_Retorno = Daruma_TEF_SetFocus(Str_Titulo_Janela)
End Sub
Exemplo em Delphi 7.0:
var Str_Titulo_Janela: String;
begin
Str_Titulo := InputBox('Daruma Framework', 'Entre com o ttulo da Janela que voc deseja setar o
focu:', 'Daruma Framework Impressoras Fiscais');
Int_Retorno := Daruma_TEF_SetFocus(pchar(Str_Titulo_Janela));

1.8.3

Daruma_TEF_FechaRelatorio(ndice 1904)
Definio do Mtodo:
Fecha o Relatrio no ECF, seja qual for o relatrio que estiver aberto. No se preocupe em identificar se o
Relatrio Gerencial ou Comprvante No Fiscal No Vinculado, apenas chame esta Mtodo que possui
inteligencia para Identificar qual o relatorio que est aberto e fech-lo.
Sem parmetros.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplo: Se tiver um comprovante no fiscal aberto na impressora, esta mtodo er chech-lo.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_TEF_FechaRelatorio()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_TEF_FechaRelatorio();

Daruma Automao

Daruma Framework

1.8.4

152

Daruma_TEF_ImprimirResposta(ndice 1901)
Definio do Mtodo:
Um dos Grandes problemas Hoje das empresas de software na Homologao do TEF a impresso da
Reposta no ECF.
Abrir o Arquivo, Buscar o Campo a ser impresso, Controlar a impressao, etc.. tudo isso realizado por
este Mtodo.
Passe apenas o PATH onde este arquivo se encontra e esta Mtodo imprime pra voc o Arquivo e ir
devolver se a impresso foi com sucesso ou no, caso no tenha tido sucesso voc dever proceder os
passos do TEF de perguntar se deseja continuar a impresso ou no etc..Clique aqui e veja como tratar os
possveis erros de impresso.
Parmetros do Mtodo:
Arquivo = String com o Caminho completo + nome do arquivo que voc deseja imprimir:
"C:\TEF_DIAL\RESP\INTPOS.001"
Forma = A Forma Pagamento que voc deseja Abrir o Comprovante no fiscal Vinculado, caso voc
deseje imprimir o Arquivo no Relatrio Gerencial, passe este parmetro VAZIO, NULO sem contedo. E o
Arquivo ser impresso em um relatrio Gerencial.
TravarTeclado = String com "0" ou "1" para travar o teclado durante a Impresso do Arquivo. "0" - No
Trava, "1" - Trava.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.

Fluxograma bsico de uso desta Mtodo:


1) Retorno = Daruma_TEF_ImprimirResposta("C:\TEF_DIAL\INTPOS.001","Dinheiro","1")
2)Retorno Igual a 1(um)?
3)Se Sim, chamar a Mtodo para encerrar a impressao
(Daruma_FI_FechaComprovanteNaoFiscalVinculado ou Daruma_FI_FechaRelatorioGerencial)
4)Se No, Colocar MSGBOX na Tela "Impressora Nao Responde, deseja Continuar?
Sim ou no?"
5)Se Sim, Voltar para o passo 1, s que no passando o parmetro
da Forma de Pagamento, passe um espaco em branco.
(Daruma_TEF_ImprimirResposta("C:\TEF_DIAL\INTPOS.001"," ","1") isso far com que a Mtodo abre o
Relatorio Gerencial e volte a imprimir tudo no Relatrio Gerencial.
6)Se no, chamar a Mtodo para encerrar a impressao
(Daruma_FI_FechaComprovanteNaoFiscalVinculado ou Daruma_FI_FechaRelatorioGerencial)
Exemplo: Impresso do Arquivo INTPOS.001 no Comprovante No Fiscal Vinculado.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Path_Arquivo_Resp_TEF As String
Dim Str_Forma_Pagamento As String
Dim Str_Travar_Teclado As String
Int_Retorno = Daruma_FI_VendeItem("0650", "Sapato", "NN", "I", "1", "2", "1,00", "%", "0,00")
Int_Retorno = Daruma_FI_IniciaFechamentoCupom("A", "%", "0,00")
Int_Retorno = Daruma_FI_EfetuaFormaPagamento("Dinheiro", "1,00")
Int_Retorno = Daruma_FI_TerminaFechamentoCupom("Obrigado volte sempre!!!")
If Int_Retorno <> 1 Then
MsgBox "Erro na venda do tem", vbCritical, "Daruma Framework"
Else
Str_Path_Arquivo_Resp_TEF = "C:\TEF_Dial\Resp\Intpos.001"
Str_Forma_Pagamento = "Dinheiro"
Str_Travar_Teclado = "1"
Int_Retorno = Daruma_TEF_ImprimirResposta(Str_Path_Arquivo_Resp_TEF, Str_Forma_Pagamento,
Str_Travar_Teclado)

Daruma Automao

153

Daruma Framework

End If
Exemplo em Delphi 7.0:
var
Str_Path_Arquivo_Resp_TEF: String;
Str_Forma_de_Pagamento: String;
Str_Travar_Teclado: String;
begin
Str_Path_Arquivo_Resp_TEF := Trim(Path_Arquivo_Resp_TEF.Text);
Str_Forma_de_Pagamento := Trim(Forma_de_Pagamento.Text);
Str_Travar_Teclado := Trim(Travar_Teclado.Text);
Int_Retorno := Daruma_FI_VendeItem(pchar('0650'), pchar('Sapato'), pchar('NN'), 'I', '1', 2,
pchar('1,00'), '%', pchar('0,00'));
Int_Retorno := Daruma_FI_IniciaFechamentoCupom('A', '%', pchar('0,00'));
Int_Retorno := Daruma_FI_EfetuaFormaPagamento(pchar(Str_Forma_de_Pagamento), pchar('1,00'));
Int_Retorno := Daruma_FI_TerminaFechamentoCupom(pchar('Obrigado volte sempre!!'));
if Int_Retorno <> 1 Then
begin
Application.MessageBox('Erro na venda do item !!!', 'Daruma Framework', mb_ok + 16);
end;
Int_Retorno := Daruma_TEF_ImprimirResposta(pchar( Str_Path_Arquivo_Resp_TEF ), pchar(
Str_Forma_de_Pagamento ), pchar( Str_Travar_Teclado ) );

1.8.5

Daruma_TEF_ImprimirRespostaCartao(ndice 1905)
Definio do Mtodo:
Um dos Grandes problema Hoje das empresas de software na Homologao do TEF a impresso da
Reposta no ECF.
Abrir o Arquivo, Buscar o Campo a ser impresso, Controlar a impressao, etc.. tudo isso realizado por
esta Mtodo.
Passe apenas o PATH onde este arquivo se encontra e esta Mtodo imprime pra voc o Arquivo e ir
devolver se a impresso foi com sucesso ou no, caso no tenha tido sucesso voc dever proceder os
passos do TEF de perguntar se deseja continuar a impresso ou no etc..
Parmetros do Mtodo:
Arquivo = String com o Caminho completo + nome do arquivo que voc deseja imprimir:
"C:\TEF_DIAL\RESP\INTPOS.001"
Forma = A Forma Pagamento que voc deseja Abrir o Comprovante no fiscal Vinculado, caso voc
deseje imprimir o Arquivo no Relatrio Gerencial, passe este parmetro com apenas um ESPAO EM
BRANCO. E o Arquivo ser impresso em um relatrio Gerencial.
TravarTeclado = String com "0" ou "1" para travar o teclado durante a Impresso do Arquivo. "0" - No
Trava, "1" - Trava.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Fluxograma bsico de uso desta Mtodo:
1) Retorno = Daruma_TEF_ImprimirResposta("C:\TEF_DIAL\INTPOS.001","Dinheiro","1")
2)Retorno Igual a 1(um)?
3)Se Sim, chamar a Mtodo para encerrar a impressao
(Daruma_FI_FechaComprovanteNaoFiscalVinculado ou Daruma_FI_FechaRelatorioGerencial)
4)Se No, Colocar MSGBOX na Tela "Impressora Nao Responde, deseja Continuar?
Sim ou no?"
5)Se Sim, Voltar para o passo 1, s que no passando o parmetro
da Forma de Pagamento, passe um espaco em branco.
(Daruma_TEF_ImprimirResposta("C:\TEF_DIAL\INTPOS.001"," ","1") isso far com que a Mtodo abre o

Daruma Automao

Daruma Framework

154

Relatorio Gerencial e volte a imprimir tudo no Relatrio Gerencial.


6)Se no, chamar a Mtodo para encerrar a impressao
(Daruma_FI_FechaComprovanteNaoFiscalVinculado ou Daruma_FI_FechaRelatorioGerencial)
Exemplo: Impresso do Arquivo INTPOS.001 no Comprovante No Fiscal Vinculado.
Observaes:
- Aplica-se este metodo quando se tratar de uma venda com mais de um carto.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Path_Arquivo_Resp_TEF As String
Dim Str_Forma_de_Pagamento As String
Dim Str_Travar_Teclado As String
Dim Str_Valor_da_Forma_Pagamento As String
Int_Retorno
Int_Retorno
Int_Retorno
Int_Retorno
Int_Retorno

=
=
=
=
=

Daruma_FI_VendeItem("7000", "Chinelo", "NN", "I", "1", "2", "2,50", "%", "0,00")


Daruma_FI_IniciaFechamentoCupom("A", "%", "0,00")
Daruma_FI_EfetuaFormaPagamento("Dinheiro", "1,50")
Daruma_FI_EfetuaFormaPagamento("Dinheiro", "1,00")
Daruma_FI_TerminaFechamentoCupom("Obrigado volte sempre!!")

If Int_Retorno <> 1 Then


MsgBox "Erro na venda do item!", vbCritical, "Daruma Framework"
Else
Str_Path_Arquivo_Resp_TEF = "C:\TEF_Dial\Resp\Intpos.001"
Str_Forma_de_Pagamento = "Dinheiro"
Str_Travar_Teclado = "1"
Str_Valor_da_Forma_Pagamento = "1,00"
Int_Retorno = Daruma_TEF_ImprimirRespostaCartao(Str_Path_Arquivo_Resp_TEF,
Str_Forma_de_Pagamento, _
Str_Travar_Teclado, Str_Valor_da_Forma_Pagamento)
Int_Retorno = Daruma_TEF_FechaRelatorio()
If Int_Retorno = 1 Then
Int_Retorno = Daruma_TEF_ImprimirRespostaCartao("C:\TEF_Dial\Resp\Intpos.001", "Dinheiro",
"1", "1,50")
Int_Retorno = Daruma_TEF_FechaRelatorio()
End If
End If
Exemplo em Delphi 7.0:
var
Str_Path_Arquivo_Resp_TEF: String;
Str_Forma_de_Pagamento: String;
Str_Travar_Teclado: String;
Str_Valor_da_Forma_Pagamento: String;
begin
Str_Path_Arquivo_Resp_TEF := Trim(Path_Arquivo_Resp_TEF.Text);
Str_Forma_de_Pagamento := Trim(Forma_de_Pagamento.Text);
Str_Travar_Teclado := Trim(Travar_Teclado.Text);
Str_Valor_da_Forma_Pagamento := Trim(Valor_da_Forma_Pagamento.Text);
Int_Retorno := Daruma_FI_VendeItem(pchar('0650'), pchar('Sapato'), pchar('NN'), 'I', '1', 2,
pchar('2,50'), '%', pchar('0,00'));
Int_Retorno := Daruma_FI_IniciaFechamentoCupom('A', '%', pchar('0,00'));
Int_Retorno := Daruma_FI_EfetuaFormaPagamento(pchar('Dinheiro'), pchar('1,50'));
Int_Retorno := Daruma_FI_EfetuaFormaPagamento(pchar('Dinheiro'), pchar('1,00'));
Int_Retorno := Daruma_FI_TerminaFechamentoCupom(pchar('Obrigado volte sempre!!'));
if Int_Retorno <> 1 Then
begin
Application.MessageBox('Erro na venda do item !!!', 'Daruma Framework', mb_ok + 16);
end
else
begin

Daruma Automao

155

Daruma Framework

Int_Retorno := Daruma_TEF_ImprimirRespostaCartao(pchar( Str_Path_Arquivo_Resp_TEF ), pchar(


Str_Forma_de_Pagamento ), pchar( Str_Travar_Teclado ), pchar( Str_Valor_da_Forma_Pagamento) );
Int_Retorno := Daruma_TEF_FechaRelatorio();
end;
if Int_Retorno = 1 Then
begin
Int_Retorno := Daruma_TEF_ImprimirRespostaCartao(pchar('C:\TEF_Dial\Resp\Intpos.001'),
pchar('1,50'), '1', pchar('Dinheiro'));
Int_Retorno := Daruma_TEF_FechaRelatorio();

1.8.6

Daruma_TEF_EsperarArquivo(ndice 1900)
Definio do Mtodo:
Faz com que a dll espere um Arquivo (que voc passa como Parmetro) por "X" segundos (que voc
tambm passa como parmetro) e devolve se o Arquivo foi encontrado dentro do tempo especificado,
caso contrario devolve TIME-OUT.
Este Mtodo de extrema utilidade para o TEF - Transferncia Eletronica de Fundos - onde o aplicativo
necessita esperar aquivos de resposta do Gerenciador Padro, 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 faa o "contador
de tempo" para voc, voc ainda pode escolher se enquanto a dll aguarda a criao do Arquivo o Teclado
deve ser Bloqueado ou no.
Parmetros do Mtodo:
Arquivo = String com o Caminho completo + nome do arquivo que voc deseja esperar, EX:
"C:\TEF_DIAL\RESP\INTPOS.001"
Ttempo = String com o tempo qeu voc deseja que a dll fique esperando o arquivo chegar, este tempo
deve ser passado em Segundos, exemplo de espera de 45 Segundos, EX: "45".
TravarTeclado = String com "0" ou "1" para travar o teclado enquanto espera a chegada do arquivo. "0" No Trava, "1" - Trava.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplo: Esperar a chegada do arquivo INTPOS.001 pelos segundos que voc espacificar, sem travar
o teclado.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Path_Arquivo_Resp_TEF As String
Dim Str_Tempo_Espera As String
Str_Path_Arquivo_Resp_TEF = "C:\TEF_Dial\Resp\Intpos.001"
Str_Tempo_Espera = Tx_Tempo_de_Espera
Int_Retorno = Daruma_TEF_EsperarArquivo(Str_Path_Arquivo_Resp_TEF, Str_Tempo_Espera, "0")
If Int_Retorno = 1 Then
MsgBox "O Arquivo de Resposta foi localizado com sucesso no seguinte path:" +
TX_Path_Nome_Arquivo, vbExclamation, "Daruma Framework"
Else
MsgBox "Estourou o tempo de:" + Tx_Tempo_de_Espera + " segundos e o arquivo de resposta nao
pode ser localizado no seguinte path: " + Str_Path_Resp_TEF, vbCritical, "Daruma Framework"
End If

Exemplo em Delphi 7.0:

Daruma Automao

Daruma Framework

156

var
Str_Path_Resp_TEF: String;
Str_Tempo_Espera: String;
begin
Str_Path_Resp_TEF := Trim(Path_Resp_TEF.Text);
Str_Tempo_Espera := Trim(Tempo_Espera.Text);
Int_Retorno := Daruma_TEF_EsperarArquivo( pchar( Str_Path_Resp_TEF ), pchar( Str_Tempo_Espera
), pchar(' 0') );
if Int_Retorno = 1 Then
begin
Application.MessageBox('O Arquivo de Resposta foi localizado com sucesso !!!', 'Daruma Framework',
mb_ok + 32);
end
else
begin
Application.MessageBox('O Arquivo de Resposta no foi localizdo, Tempo esgotado !!!', 'Daruma
Framework', mb_ok + 16);
end;

1.8.7

Daruma_TEF_TravarTeclado(ndice 1903)
Definio do Mtodo:
Trava ou Destrava o Teclado para entrada de dados, no bufferiza e no deixa resduos no Buffer. Trava
totalmente a entrada de dados via teclado deixando o Buffer Zerado.
Parmetros do Mtodo:
String com 0(Zero) ou 1(um) , 0(Destrava) 1(Trava)
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Travar As String
Int_Retorno = Daruma_FI_VerificaImpressoraLigada()
MsgBox "Seu Teclado Ficara Travado por 5 segundos Pressione Enter para comear!", vbCritical, "Daruma
Framework"
Int_Retorno = Daruma_TEF_TravarTeclado("1")
Sleep (5000)
Int_Retorno = Daruma_TEF_TravarTeclado("0")
MsgBox "Seu Teclado foi Destravado", vbEsclamation, "Daruma Framework"
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_VerificaImpressoraLigada();
Application.MessageBox('Seu Teclado Ficara Travado por 5 segundos Pressione Enter para comear!!!',
'Daruma Framework', mb_ok + 32);
Int_Retorno := Daruma_TEF_TravarTeclado('1');
Sleep (5000);
Int_Retorno := Daruma_TEF_TravarTeclado('0');
Application.MessageBox('Seu Teclado foi Destravado!!!', 'Daruma Framework', mb_ok + 32);

Daruma Automao

157

1.8.8

Daruma Framework

Daruma_TEF_Tratando os Erros
Dicas de tratamentos de Impresso:
Como fazer nos seguintes casos?
1 - Acaba a Energia.
2 - Acaba Bobina de Papel.
3 - O Ecf sinaliza Pouco Papel.
4 - A impressora fica Off-Line.
Veja o Fluxo abaixo para, onde so previstos todos estes pontos.
Exemplo em Vb6:
Dim Int_Sts_Func As Integer
Dim Int_Impressao_TEF As Integer
Dim Int_Numero_Vias As Integer
Dim Str_Sts_CF As String
Dim Str_Sts_CNFV As String
Dim Str_Sts_Gerencial As String
Dim Str_Confirma As String
Dim Int_Sts_CF As Integer
Dim Int_Sts_CNFV As Integer
Dim Int_Sts_Gerencial As Integer
Dim Int_Flag_Vinculado As Integer
Dim Int_Ack_Retorno
Dim Int_Sts1 As Integer
Dim Int_Sts2 As Integer
Dim Int_Contador As Integer
Int_Sts_Func = 0
Str_Sts_CNFV = Space(2)
Str_Sts_Gerencial = Space(2)
Int_Sts_Func = Daruma_Registry_StatusFuncao("0")
Int_Sts_Func = Daruma_FI_VerificaImpressoraLigada
If Int_Sts_Func = 1 Then 'Analisa-se e st1 e caso seja >=16 entao a impressora esta off-line
Int_Sts_Func = Daruma_FI_VerificaEstadoImpressora(Int_Ack_Retorno, Int_Sts1, Int_Sts2)
Int_Contador = 128
'Aqui Verifica se o Bit 16 esta ligado, se estiver ligado e porque esta off line a impressora
'se ele estiver ligado ele sai com 16 na Varivel ST1
Do While (Int_Sts1 > 16 And Int_Sts1 <> 0)
If Int_Sts1 >= Int_Contador Then
Int_Sts1 = Int_Sts1 - Int_Contador
Else
Int_Contador = Int_Contador - Int_Sts1
End If
Loop
If Int_Sts1 >= 16 Then
Int_Sts_Func = 0 'Aqui eu zero a Varivel para que caia no loop de impressora desligada
End If
End If
If Int_Sts_Func <> 1 Then
MsgBox "Impressora Desligada ligue para comecar os testes!", vbCritical, "Daruma Framework"
Exit Sub
End If
'Aqui fazemos uma venda para que o nosso arquivos de resposta possa ser impresso
Int_Sts_Func = Daruma_FI_VendeItem("500", "Caderno", "FF", "I", "1", "2", "1,00", "$", "0,00")
Int_Sts_Func = Daruma_FI_IniciaFechamentoCupom("A", "$", "0,00")
Int_Sts_Func = Daruma_FI_EfetuaFormaPagamento("Dinheiro", "1,00")
Int_Sts_Func = Daruma_FI_TerminaFechamentoCupom("Obrigado Volte Sempre!!!")
Int_Sts_Func = Daruma_TEF_EsperarArquivo("C:\TEF_Dial\Resp\Intpos.001", "5", "0")
If Int_Sts_Func <> 1 Then
MsgBox "Arquivo com a Resposta de TEF No Encontrado!", vbCritical, "Daruma Framework"
Exit Sub

Daruma Automao

Daruma Framework

158

End If
Int_Sts_Func = Daruma_Registry_StatusFuncao("1")
Int_Impressao_TEF = 0
Int_Numero_Vias = 2
Do While (Int_Numero_Vias <> 0) 'Inicio do loop que controla o numero do vias
Int_Sts_CF = 0
Str_Sts_CF = Space(3)
Int_Sts_Func = Daruma_FI_StatusCupomFiscal(Str_Sts_CF)
Int_Sts_CF = CInt(Str_Sts_CF) 'Converto a Varivel String em integer evitando assim sujeira
Do While (Int_Sts_CF = 1) 'Enquanto o cupom estiver aberto permaneco em loop
'Int_Sts_Func = Daruma_Registry_StatusFuncao("0")
Int_Sts_Func = Daruma_FI_IniciaFechamentoCupom("A", "$", "0,00")
Int_Sts_Func = Daruma_FI_EfetuaFormaPagamento("Dinheiro", "1,00")
Int_Sts_Func = Daruma_FI_TerminaFechamentoCupom("Obrigado Volte Sempre!!!")
Int_Sts_Func = Daruma_FI_VerificaImpressoraLigada
'Int_Sts_Func = Daruma_Registry_StatusFuncao("1")
If Int_Sts_Func = 1 Then 'Analisa-se e st1 e caso seja >=16 entao a impressora esta off-line
Int_Sts_Func = Daruma_FI_VerificaEstadoImpressora(Int_Ack_Retorno, Int_Sts1, Int_Sts2)
End If
If Int_St1 >= 16 Then
Int_Sts_Func = 0 'Aqui eu zero a Varivel para que caia no loop de impressora desligada
End If
Do While (Int_Sts_Func <> 1) 'Enquanto a impressora estiver desligada permaneo em loop
Str_ConfirmInt_Retorno = 0
Str_ConfirmInt_Retorno = MsgBox("Impressora Desligada! Verifique e clique em Sim para
reimpresso no Gerencial" _
+ Chr(13) + Chr(10) + "ou No para cancelar.", vbCritical + vbQuestion + vbYesNo, "Daruma
Framework")
If Str_ConfirmInt_Retorno = vbYes Then 'Verificando se o usurio deseja continuar ou no
Int_Sts_Func = Daruma_Registry_StatusFuncao("0")
Int_Sts_Func = Daruma_FI_VerificaImpressoraLigada
Int_Sts_Func = Daruma_Registry_StatusFuncao("1")
Else
Exit Sub 'Mtodo abortada!!!
End If
Loop 'Final do Do While Enquanto a impressora estiver desligada permaneo em loop
Loop 'Final do Do While Enquanto o cupom estiver aberto permaneco em loop
Int_Impressao_TEF = Int_Sts_CNFV = Int_Sts_Gerencial = 0
Do While (Int_Impressao_TEF <> 1) 'Controle de Impresso da resposta de TEF
Int_Sts_Func = Daruma_Registry_StatusFuncao("0")
Int_Sts_Func = Daruma_FI_VerificaImpressoraLigada
If Int_Sts_Func = 1 Then 'Analisa-se e st1 e caso seja >=16 entao a impressora esta off-line
Int_Sts_Func = Daruma_FI_VerificaEstadoImpressora(Int_Ack_Retorno, Int_Sts1, Int_Sts2)
Int_Contador = 128
'Aqui Verifica se o Bit 16 esta ligado, se estiver ligado e porque esta off line a impressora
'se ele estiver ligado ele sai com 16 na Varivel ST1
Do While (Int_Sts1 > 16 And Int_Sts1 <> 0)
If Int_Sts1 >= Int_Contador Then
Int_Sts1 = Int_Sts1 - Int_Contador
Else
Int_Contador = Int_Contador - Int_Sts1
End If
Loop
If (Int_Sts1 <> 16) Then
Int_Sts_Func = 0 'Aqui eu zero a Varivel para que caia no loop de impressora desligada
Int_Sts_Func = Daruma_FI_StatusComprovanteNaoFiscalVinculado(Str_Sts_CNFV)
Int_Sts_CNFV = CInt(Str_Sts_CNFV) 'Converto a Varivel String em integer evitando assim
sujeira
Int_Sts_Func = Daruma_FI_StatusRelatorioGerencial(Str_Sts_Gerencial)
Int_Sts_Gerencial = CInt(Str_Sts_Gerencial) 'Converto a Varivel String em integer evitando
assim sujeira

Daruma Automao

159

Daruma Framework

Int_Sts_Func = Daruma_Registry_StatusFuncao("0")
If ((Int_Sts_CNFV = 0 And Int_Sts_Gerencial = 0) Or Int_Flag_Vinculado = 0) Then 'Checando
o Status do CNFV e Relatorio Gerencial
Int_Impressao_TEF = Daruma_TEF_ImprimirResposta("C:\TEF_Dial\Resp\Intpos.001",
"Dinheiro", "1")
If Int_Impressao_TEF = 1 Then
Int_Flag_Vinculado = 0
Else
Int_Flag_Vinculado = 1
End If
Else
Int_Impressao_TEF = Daruma_TEF_ImprimirResposta("C:\TEF_Dial\Resp\Intpos.001", " ",
"1")
End If
End If
Int_Sts_Func = Daruma_Registry_StatusFuncao("1")
If (Int_Impressao_TEF <> 1) Then 'Controle de Interrupo na Impresso
Str_ConfirmInt_Retorno = MsgBox("Impressora Desligada! Verifique e clique em Sim para
reimpresso no Gerencial" _
+ Chr(13) + Chr(10) + "ou No para cancelar.", vbCritical + vbQuestion + vbYesNo, "Daruma
Framework")
If Str_ConfirmInt_Retorno = vbNo Then
Int_Impressao_TEF = 1
Int_Numero_Vias = 0
Else
' Int_Numero_Vias = Int_Numero_Vias - 1
End If
Else
Int_Numero_Vias = Int_Numero_Vias - 1
End If
Else
Str_ConfirmInt_Retorno = MsgBox("Impressora Desligada! Verifique e clique em Sim para
reimpresso no Gerencial" _
+ Chr(13) + Chr(10) + "ou No para cancelar.", vbCritical + vbQuestion + vbYesNo, "Daruma
Framework")
If Str_ConfirmInt_Retorno = vbNo Then
Int_Impressao_TEF = 1
Int_Numero_Vias = 0
Else
Int_Impressao_TEF = 0
End If
End If
Loop 'Final do Do While Controle de Impresso da resposta de TEF
Loop 'Final do Do While (Int_Numero_Vias <> 0) 'Inicio do loop que controla o numero do vias
If (Daruma_FI_VerificaImpressoraLigada) <> 1 Then
Exit Sub
End If
Int_Sts_Func = Daruma_FI_StatusComprovanteNaoFiscalVinculado(Str_Sts_CNFV)
Int_Sts_CNFV = CInt(Str_Sts_CNFV) 'Converto a Varivel String em integer evitando assim sujeira
Int_Sts_Func = Daruma_FI_StatusRelatorioGerencial(Str_Sts_Gerencial)
Int_Sts_Gerencial = CInt(Str_Sts_Gerencial) 'Converto a Varivel String em integer evitando assim
sujeira
If (Int_Sts_CNFV = 1 Or Int_Sts_Gerencial = 1) Then 'Checando o Status do CNFV e Relatorio
Gerencial
Int_Sts_Func = Daruma_TEF_FechaRelatorio() 'Fim da Rotina de TEF
MsgBox "Impresso de TEF concluda", vbInformation, "Daruma Framework"
Exit Sub
Else
MsgBox "A impresso foi Imterrompida", vbCritical, "Daruma Framework"
Exit Sub
End If

Exemplo em Delphi 7.0:

Daruma Automao

Daruma Framework

160

var
Int_Sts_Func: Integer;
Int_Impressao_TEF: Integer;
Int_Numero_Vias: Integer;
Str_Sts_CF: String;
Str_Sts_CNFV: String;
Str_Sts_Gerencial: String;//Obs: no VB est como String; Str_Confirma: String;
Int_Confirma: Integer;
Int_Sts_CF: Integer;
Int_Sts_CNFV: Integer;
Int_Sts_Gerencial: Integer;
Int_Flag_Vinculado: Integer;
Int_Ack_Retorno: Integer;//Obs: no VB est = Dim Int_Ack_Retorno
Int_Sts1: Integer;
Int_Sts2: Integer;
Int_Contador: Integer;
begin
Int_Flag_Vinculado:=(0);
Int_Contador:=(0);
Int_Sts_Func:= (0);
SetLength (Str_Sts_CNFV,2);
SetLength (Str_Sts_Gerencial,2);
Int_Sts_Func:= Daruma_Registry_StatusFuncao('0');
Int_Sts_Func:= (Daruma_FI_VerificaImpressoraLigada);
//IF 01
If Int_Sts_Func = 1 Then //Analisa-se e st1 e caso seja >=16 entao a impressora esta off-line
Begin
Int_Sts_Func:= Daruma_FI_VerificaEstadoImpressora(Int_Ack_Retorno, Int_Sts1, Int_Sts2);
Int_Contador:= (128);
//Aqui Verifica se o Bit 16 esta ligado, se estiver ligado e porque esta off line a impressora
//se ele estiver ligado ele sai com 16 na variavel ST1
//While_01
While ((Int_Sts1 > 16) And (Int_Sts1 <> 0)) Do
begin
//IF 02
If ((Int_Sts1) >= (Int_Contador)) Then
begin
Int_Sts1:= (Int_Sts1 - Int_Contador);
end
Else
Begin
Int_Contador:= (Int_Contador - Int_Sts1);
End; //IF 02
end;//While_01
//IF 03
If Int_Sts1 >= 16 Then
begin
Int_Sts_Func:= (0); //Aqui eu zero a variavel para que caia no loop de impressora desligada
End; //IF 03
end;//IF 01
//IF 04
If Int_Sts_Func <> 1 Then
Begin
Application.MessageBox('Impressora Desligada ligue para comecar os testes!', 'Daruma
Framework', mb_ok + 16);
Exit;
end; //IF 04
//Aqui fazemos uma venda para que o nosso arquivos de resposta possa ser impresso
Int_Sts_Func:= Daruma_FI_VendeItem (pchar('500'), pchar('Caderno'), pchar('FF'), 'I', '1', 2,
pchar('1,00'), '$', pchar('0,00'));
Int_Sts_Func:= Daruma_FI_FechaCupomResumido(pchar('Dinheiro'), pchar('Tks!!'));
//IF 05
If Int_Sts_Func <> 1 Then
begin
Application.MessageBox('O Cupom Fiscal Esta Aberto Verifique!', 'Daruma Framework', mb_ok +
16);

Daruma Automao

161

Daruma Framework

Exit;
End;//IF 05
Int_Sts_Func:= Daruma_Registry_StatusFuncao('1');
Int_Impressao_TEF:= (0);
Int_Numero_Vias:= (2);
//While_02
While (Int_Numero_Vias <> 0) do //Inicio do loop que controla o numero do vias
begin
Int_Sts_CF:= 0;
SetLength (Str_Sts_CF,3);
Int_Sts_Func:= Daruma_FI_StatusCupomFiscal(Str_Sts_CF);
Int_Sts_CF:= StrToInt(Str_Sts_CF); //Converto a variavel string em integer evitando assim sujeira
//While_03
While (Int_Sts_CF = 1) do //Enquanto o cupom estiver aberto permaneco em loop
begin
Int_Sts_Func:= Daruma_FI_IniciaFechamentoCupom('A', '$', pchar('0,00'));
Int_Sts_Func:= Daruma_FI_EfetuaFormaPagamento(pchar('Dinheiro'), pchar('1,00'));
Int_Sts_Func:= Daruma_FI_TerminaFechamentoCupom(pchar('Obrigado Volte Sempre!!'));
//IF 06
If Int_Sts_Func = 1 Then //Analisa-se e st1 e caso seja >=16 entao a impressora esta off-line
begin
Int_Sts_Func:= Daruma_FI_VerificaEstadoImpressora(Int_Ack_Retorno, Int_Sts1,
Int_Sts2);
End;//IF 06
//IF 07
If Int_Sts1 >= 16 Then
begin
Int_Sts_Func:= (0); //Aqui eu zero a variavel para que caia no loop de impressora
desligada
End; //IF 07
//While_04
While ((Int_Sts_Func) <> (1)) do //Enquanto a impressora estiver desligada permaneco em
loop
begin
Int_Confirma:= (0);
Int_Confirma:= Application.MessageBox ('Impressora Desligada! Verifique e clique em Sim
para reimpressao no Gerencial' , 'Daruma Framework',mb_YesNo+mb_DefButton2+mb_IconQuestion);
//IF 08
If (Int_Confirma = 6) Then //Verificando se o usuario deseja continuar ou nao
//Int_Confirma = 6(Sim), = 7(No), o valor de retorno do
Application.MessageBox
Begin
Int_Sts_Func:= Daruma_Registry_StatusFuncao('0');
Int_Sts_Func:= Daruma_FI_VerificaImpressoraLigada;
Int_Sts_Func:= Daruma_Registry_StatusFuncao('1');
end
Else
begin
Exit; //Funcao abortada!!
end;//if 08
end;//While_04 //Loop Final do Do While Enquanto a impressora estiver desligada permaneco
em loop
end;//While_3 //Loop Final do Do While Enquanto o cupom estiver aberto permaneco em loop
Int_Impressao_TEF:= (0);
Int_Sts_CNFV:= (0);
//No VB era = Int_Impressao_TEF = Int_Sts_CNFV = Int_Sts_Gerencial
=0
Int_Sts_Gerencial:= (0);
//While_05
While (Int_Impressao_TEF <> 1) do //Controle de Impressao da resposta de TEF
begin
Int_Sts_Func:= Daruma_Registry_StatusFuncao('0');
Int_Sts_Func:= Daruma_FI_VerificaImpressoraLigada;
//IF 09
If Int_Sts_Func = 1 Then //Analisa-se e st1 e caso seja >=16 entao a impressora esta off-line
begin
Int_Sts_Func:= Daruma_FI_VerificaEstadoImpressora(Int_Ack_Retorno, Int_Sts1, Int_Sts2);

Daruma Automao

Daruma Framework

162

Int_Contador:= (128);
//Aqui Verifica se o Bit 16 esta ligado, se estiver ligado e porque esta off line a impressora
//se ele estiver ligado ele sai com 16 na variavel ST1
//While_06
While ((Int_Sts1 > 16) And (Int_Sts1 <> 0)) do
begin
//IF 10
If Int_Sts1 >= Int_Contador Then
begin
Int_Sts1:= ((Int_Sts1) - (Int_Contador));
end
Else
begin
Int_Contador:= ((Int_Contador) - (Int_Sts1));
end;//IF 10
end;//While_06 //Loop
//IF 11
If (Int_Sts1 <> 16) Then
begin
Int_Sts_Func:= (0); //Aqui eu zero a variavel para que caia no loop de impressora
desligada
Int_Sts_Func:= Daruma_FI_StatusComprovanteNaoFiscalVinculado(pchar(Str_Sts_CNFV));
Int_Sts_CNFV:= Int_Sts_Func; //Converto a variavel string em integer evitando assim
sujeira
Int_Sts_Func:= Daruma_FI_StatusRelatorioGerencial(Str_Sts_Gerencial);
Int_Sts_Gerencial:= StrToInt(Str_Sts_Gerencial); //Converto a variavel string em integer
evitando assim sujeira
Int_Sts_Func:= Daruma_Registry_StatusFuncao('0');
//IF 12
If ((Int_Sts_CNFV = (0)) And (Int_Sts_Gerencial = (0)) Or (Int_Flag_Vinculado = (0)))
Then //Checando o Status do CNFV e Relatorio Gerencial
begin
Int_Impressao_TEF:= Daruma_TEF_ImprimirResposta('C:\TEF_Dial\Resp\Intpos.001',
'Dinheiro', '1');
//IF 13
If Int_Impressao_TEF = 1 Then
begin
Int_Flag_Vinculado:= (0);
end
Else
begin
Int_Flag_Vinculado:= (1);
End; //IF 13
end
Else
begin
Int_Impressao_TEF:= Daruma_TEF_ImprimirResposta('C:\TEF_Dial\Resp\Intpos.001',
' ', '1');
End; //IF 12
end; // IF 11
Int_Sts_Func:= Daruma_Registry_StatusFuncao('1');
//IF 14
If (Int_Impressao_TEF <> 1) Then //Controle de Interrupcao na Impressao
begin
Int_Confirma:= Application.MessageBox ('Impressora Desligada! Verifique e clique em Sim
para reimpressao no Gerencial' , 'Daruma Framework',mb_YesNo+mb_DefButton2+mb_IconQuestion);
//IF 15
If (Int_Confirma = 7) Then
begin
Int_Impressao_TEF:= (1);
Int_Numero_Vias:= (0);
Application.MessageBox('A impressao foi Interrompida', 'Daruma Framework', mb_ok +
16);
Exit;
end;//IF 15
end

Daruma Automao

163

Daruma Framework

Else //IF 14
begin
Int_Numero_Vias:= ((Int_Numero_Vias) - (1));
end; //IF 14
end
Else//IF 09
begin
Int_Confirma:= Application.MessageBox ('Impressora Desligada! Verifique e clique em Sim
para reimpressao no Gerencial ou Nao para cancelar.' , 'Daruma
Framework',mb_YesNo+mb_DefButton2+mb_IconQuestion);
//IF 16
If (Int_Confirma = 7) Then //Int_Confirma = 6(Sim), = 7(No), o valor de retorno do
Application.MessageBox
begin
Int_Impressao_TEF:= (1);
Int_Numero_Vias:= (0);
end
Else
begin
Int_Impressao_TEF:= (0);
End;//IF 16
end;//IF 09
end; //While 5 //Loop 'Final do Do While Controle de Impressao da resposta de TEF
end; //While 02 //Loop 'Final do Do While (Int_Numero_Vias <> 0) 'Inicio do loop que controla o
numero do vias
//IF 17
If ((Daruma_FI_VerificaImpressoraLigada) <> (1)) Then
begin
Exit;
end; //IF 17
Int_Sts_Func:= Daruma_FI_StatusComprovanteNaoFiscalVinculado(pchar(Str_Sts_CNFV));
Int_Sts_CNFV:= Int_Sts_Func; //Converto a variavel string em integer evitando assim sujeira
Int_Sts_Func:= Daruma_FI_StatusRelatorioGerencial(pchar(Str_Sts_Gerencial));
Int_Sts_Gerencial:= StrToInt(Str_Sts_Gerencial); //Converto a variavel string em integer evitando
assim sujeira
//IF 18
If (((Int_Sts_CNFV) = (1)) Or ((Int_Sts_Gerencial) = (1))) Then //Checando o Status do CNFV e
Relatorio Gerencial
begin
Int_Sts_Func:= Daruma_TEF_FechaRelatorio(); //Fim da Rotina de TEF
Application.MessageBox('Impressao de TEF concluida', 'Daruma Framework', mb_ok + 32);
Exit;
end
Else
begin
Application.MessageBox('A impressao foi Interrompida', 'Daruma Framework', mb_ok + 16);
Exit;
End;//IF 18
end;

1.9

Mtodos para Impressora DUAL

1.9.1

Daruma_DUAL_ImprimirTexto (ndice 4001)


Definio do Mtodo:
Imprime Texto na Impressora DUAL (Imprimir na porta de Comunicao que foi configurada atravs do
Mtodo Daruma_Registry_DUAL_Porta.
Parmetros do Mtodo:
String: Com o texto desejado, com at 3000 bytes.
Inteiro: Indicando se ser aguardado o trmino da impresso 0(zero) no aguarda 1(um) aguardo.
Aqui voc poder Utilizar o protocolo DHTM (DARUMA HTML) caso deseje formatar um texto.

Daruma Automao

Daruma Framework

164

Por exemplo:
Se deseja Centralizar um Texto na Bobina, chame este Mtodo com o seguinte parmetro:
iRetorno = Daruma_DUAL_ImprimirTexto("<ce>Teste de Comunicao</ce>","0")
Se desejar Expandir o Texto e Deix-lo em Negrito Utilize as Chaves:
iRetorno = Daruma_DUAL_ImprimirTexto("<b><e>Teste de Comunicao</b></e>","0")
Se desejar Sublinhar apenas uma parte do Texto utilize a combinao
iRetorno = Daruma_DUAL_ImprimirTexto("<b><e>Teste de <s>Comunicao</s></b></e>","0")
E desta maneira apenas a palavra Comunicao ficar Sublinhada.
Estas so as Tags que voc poder a qualquer momento no meio de seu texto implementar, inclundo
uma Combinao entre elas:
<b></b>
<i></i>
<s></s>
<e></e>
<c></e>
<n></n>
<l></l>
<sl>NN</sl>
<tc>C</tc>
<ce></ce>
<dt></dt>
<hr></hr>
<sp>NN</sp>
<sn></sn>
<g></g>
<a>
</a>
<tb></tb>
<<
>>

Para sinalizar Negrito


Para sinalizar Itlico
Para sinalizar Sublinhado
Para sinalizar Expandido
Para sinalizar Condensado
Para sinalizar Normal
Para Saltar Uma Linha
Para Saltar Vrias Linhas
Riscar Linha com um carctere Especifico
Para Centralizar
Para Imprimir Data Atual
Para Imprimir Hora Atual
Inserir NN Espaos em Branco
Sinal Sonoro, Apitar
Abre a Gaveta
Aguardar at o Trmino da Impresso
No Aguardar at o Trmino da Impresso
Tabulao
Quando desejar imprimir o carctere "<"
Quando desenar imprimir o carctere ">"

Veja Aqui Alguns Exemplos de Utilizao


Parmetros
String: com texto que voce deseja Imprimir (at 2000 de tamanho)
Inteiro: Com o Tamanho do Texto que voce ir imprimir, caso deseje a dll podera calcular o Tamanho,
passe entao "0" neste parmetro.
Obervao:
Valor Defult da Chave = "0"
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Erro de comunicao, Impressora Desligada
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
TX_Texto_Livre.Text = TX_Texto_Livre + "<sn><l><ce><s>Teste com Formatao DHTM</s></ce>"
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sn><l><ce><s>Teste com Formatao
DHTM</s></ce>", 0)
TX_Texto_Livre.Text = TX_Texto_Livre + "<n>Estes so os carctere que voc poder
utilizar<n><l>Voc poder a qualquer monento combinar as formataes!!"
Int_Retorno = Daruma_DUAL_ImprimirTexto("<n>Estes so os carcteres que voc poder
utilizar<n><l>Voc poder a qualquer monento combinar as formataes!!", 0)

Daruma Automao

165

Daruma Framework

Int_Retorno = Daruma_DUAL_ImprimirTexto("<<b>><</b>> Para sinalizar Negrito", 0)


Int_Retorno = Daruma_DUAL_ImprimirTexto("<<i>><</i>> Para sinalizar Itlico", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<s>><</s>> Para sinalizar Sublinhado", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<e>><</e>> Para sinalizar Expandido", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<c>><</c>> Para sinalizar Condensado", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<n>><</n>> Para sinalizar Normal", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<l>><</l>> Para Saltar Uma Linha", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<sl>>NN<</sl>> Para Saltar Vrias Linhas", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<tc>>C<</tc>>Riscar Linha com carctere Especfico",
0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<ce>><</ce>> Para Centralizar", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<dt>><</dt>> Para Imprimir Data Atual", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<hr>><</hr>> Para Imprimir Hora Atual", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<sp>>NN<</sp>> Inserir NN Espaos em Branco", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<sn>><</sn>> Sinal Sonoro, Apitar", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<g>><</g>> Abre a Gaveta", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<a>><</a>> Aguardar at o Trmino da Impresso",
0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<l></l><e>DATA:<dt></dt></e><l></l><e>Hora:<hr></hr></e><l
></l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>Anvanando 5 Linhas</ce><sl>5</sl>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>Anvanando 10 Linha</ce><sl>10</sl>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l>Inserindo<sp>10</sp>10 espaos em Branco", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>Formatao Normal</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<n>DARUMA AUTOMAO!!</n><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGR+ITAL+SUBL+EXPAND</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i><s><e>DARUMA
AUTOMAO!!</b></i></s></e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGR+ITAL+SUBL+CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i><s><c>DARUMA
AUTOMAO!!</b></i></s></c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGR+ITAL+SUBL+NORMAL</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i><s><n>DARUMA
AUTOMAO!!</b></i></s></n>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<e>DARUMA AUTOMAO!!<e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<c>DARUMA AUTOMAO!!</c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGRITO+EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><e>DARUMA AUTOMAO!!</b></e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>ITLICO+EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<i><e>DARUMA AUTOMAO!!</i></e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><dt></dt>SUBLINHADO+EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<s><e>DARUMA AUTOMAO!!</s></e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGRITO+CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><c>DARUMA AUTOMAO!!</b></c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>ITLICO+CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<i><c>DARUMA AUTOMAO!!</i></c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>SUBLINHADO+CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<s><c>DARUMA AUTOMAO!!</s></c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGRITO+NORMAL</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><n>DARUMA AUTOMAO!!</b></n>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>ITLICO+NORMAL</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l><i><n>DARUMA AUTOMAO!!</i></n>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>SUBLINHADO+NORMAL</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<s><n>DARUMA AUTOMAO!!</s></n>", 0)
'Enviando todos Juntos
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l><e><b>BUFFER COMPLETO</e></b>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<<e>>DATA:<<dt>><</dt>><</e>><<l>><<l/>><<e>>Hora:<<hr
>><</hr>><</e>><<l>><<l/>><<ce>>" + _
"Anvanando 5 Linhas<</ce>><<sl>>5<</sl>>Inserindo<<sp>>10<</sp>>10 espaos em
Branco<<l>>" + _

Daruma Automao

Daruma Framework

166

"<<ce>>Formatao Normal<</ce>><<n>>DARUMA
AUTOMAO!!<</n>><<l>><<ce>>NEGR+ITAL+SUBL+EXPAND<</ce>>" + _
"<<b>><<i>><<s>><<e>>DARUMA
AUTOMAO!!<</b>><</i>><</s>><</e>><<l>><<ce>>NEGR+ITAL+SUBL+CONDENSADO<</ce>
>" + _
"<<b>><<i>><<s>><<c>>DARUMA
AUTOMAO!!<</b>><</i>><</s>><</c>><<l>><<ce>>NEGR+ITAL+SUBL+NORMAL<</ce>><<b
>>" + _
"<<i>><<s>><<n>>DARUMA
AUTOMAO!!<</b>><</i>><</s>><</n>><<l>><<ce>>EXPANDIDO<</ce>><<e>>DARUMA
AUTOMAO!!" + _
"<<e>><<l>><<ce>>CONDENSADO<</ce>><<c>>DARUMA
AUTOMAO!!<</c>><<l>><<ce>>NEGRITO+EXPANDIDO<</ce>><<b>><<e>>DARUMA
AUTOMAO!!" + _
"<</b>><</e>><<l>><<ce>>itlico+EXPANDIDO<</ce>><<i>><<e>>DARUMA
AUTOMAO!!<</i>><</e>><<l>><<ce>>SUBLINHADO+EXPANDIDO<</ce>>" + _
"<<s>><<e>>DARUMA
AUTOMAO!!<</s>><</e>><<l>><<ce>>NEGRITO+CONDENSADO<</ce>><<b>><<c>>DARUMA
AUTOMAO!!<</b>><</c>><<l>>" + _
"<<ce>>itlico+CONDENSADO<</ce>><<i>><<c>>DARUMA
AUTOMAO!!<</i>><</c>><<l>><<ce>>SUBLINHADO+CONDENSADO<</ce>><<s>><<c>>" + _
"DARUMA
AUTOMAO!!<</s>><</c>><<l>><<ce>>NEGRITO+NORMAL<</ce>><<b>><<n>>DARUMA
AUTOMAO!!<</b>><</n>><<l>><<ce>>itlico+NORMAL" + _
"<</ce>><<l>><<i>><<n>>DARUMA
AUTOMAO!!<</i>><</n>><<l>><<ce>>SUBLINHADO+NORMAL<</ce>><<s>><<n>>DARUMA
AUTOMAO!!<</s>><</n>>", 0)
Int_Retorno = Int_Retorno =
Daruma_DUAL_ImprimirTexto("<l></l><e>DATA:<dt></dt></e><l></l><e>Hora:<hr></hr></e><l
></l><ce>Anvanando 5 Linhas</ce><sl>5</sl>Inserindo<sp>10</sp>10 espaos em
Branco<l><ce>Formatao Normal</ce>" + _
"<n>DARUMA AUTOMAO!!</n><l><ce>NEGR+ITAL+SUBL+EXPAND</ce><b><i><s><e>DARUMA
AUTOMAO!!</b></i></s></e><l><n><ce>NEGR+ITAL+SUBL+CONDENSADO</ce></n><b><i><s
><c>DARUMA " + _
"AUTOMAO!!</b></i></s></c><l><ce>NEGR+ITAL+SUBL+NORMAL</ce><b><i><s><n>DARUMA
AUTOMAO!!</b></i></s></n><l><ce>EXPANDIDO</ce><e>DARUMA
AUTOMAO!!</e><l><ce>CONDENSADO" + _
"</ce><c>DARUMA AUTOMAO!!</c><l><ce>NEGRITO+EXPANDIDO</ce><b><e>DARUMA
AUTOMAO!!</b></e><l><ce>itlico+EXPANDIDO</ce><i><e>DARUMA
AUTOMAO!!</i></e><l><ce>SUBLINHADO+" + _
"EXPANDIDO</ce><s><e>DARUMA
AUTOMAO!!</s></e><l><ce>NEGRITO+CONDENSADO</ce><b><c>DARUMA
AUTOMAO!!</b></c><l><ce>itlico+CONDENSADO</ce><i><c>DARUMA
AUTOMAO!!</i></c><l>" + _
"<ce>SUBLINHADO+CONDENSADO</ce><s><c>DARUMA
AUTOMAO!!</s></c><l><ce>NEGRITO+NORMAL</ce><b><n>DARUMA
AUTOMAO!!</b></n><l><ce>itlico+NORMAL</ce><l><i><n>DARUMA AUTOMAO!!</i>" + _
"</n><l><ce>SUBLINHADO+NORMAL</ce><s><n>DARUMA AUTOMAO!!</s></n><sl>10</sl>", 0)
Exemplo em Delphi 7.0:
var
Form_Daruma_Framework_DUAL_ImprimirTexto: TForm_Daruma_Framework_DUAL_ImprimirTexto;
Int_Retorno: Integer;
implementation
Function Daruma_DUAL_ImprimirTexto( TextoLivre: String; TamanhoTexto: Integer ): Integer; StdCall;
External 'Daruma32.dll'
{$R *.dfm}
procedure TForm_Daruma_Framework_DUAL_ImprimirTexto.BT_FecharClick(
Sender: TObject);
begin
close;
end;
procedure TForm_Daruma_Framework_DUAL_ImprimirTexto.Button1Click(
Sender: TObject);

Daruma Automao

167

Daruma Framework

begin
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<sn><l><ce><s>Teste com Formatao
DHTM</s></ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<n>Estes so os carcteres que voc poder
utilizar<n><l>Voc poder a qualquer monento combinar as formataes!!'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<b>><</b>> Para sinalizar Negrito'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<i>><</i>> Para sinalizar Itlico'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<s>><</s>> Para sinalizar Sublinhado'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<e>><</e>> Para sinalizar Expandido'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<c>><</c>> Para sinalizar Condensado'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<n>><</n>> Para sinalizar Normal'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<l>><</l>> Para Saltar Uma Linha'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<ad>><</ad>> Para alinhar a direita'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<ft>>n1,n2,...,n6<</ft>> Para habilitar
tabulao'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<tb>><</tb>> Para saltar at a proxima
tabulao'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<sl>>NN<</sl>> Para Saltar Vrias Linhas'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<tc>>C<</tc>>Riscar Linha com Carcter
Especfico'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<ce>><</ce>> Para Centralizar'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<dt>><</dt>> Para Imprimir Data Atual'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<hr>><</hr>> Para Imprimir Hora Atual'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<sp>>NN<</sp>> Inserir NN Espaos em
Branco'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<sn>><</sn>> Sinal Sonoro, Apitar'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<g>><</g>> Abre a Gaveta'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<<a>><</a>> Aguardar at o Trmino da
Impresso'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<l><tc>_</tc><tc>_</tc>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<e><ce>TABULAO</ce><e><tc>_</tc>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ft>05,10,15,20,30,40</ft>'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<tb>5</tb><tb>10</tb><tb>15</tb><tb>20</tb><tb>30</tb>
<tb>40</tb>'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<tb>5</tb><tb>10</tb><tb>15</tb><tb>20</tb><tb>30</tb>
<tb>40</tb>'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<tb>5</tb><tb>10</tb><tb>15</tb><tb>20</tb><tb>30</tb>
<tb>40</tb>'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<tb>5</tb><tb>10</tb><tb>15</tb><tb>20</tb><tb>30</tb>
<tb>40</tb>'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('Data<tb></tb>Veiculo<tb></tb>Cor<tb></tb>Placa<tb></tb>H
ora'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<dt></dt><tb></tb>Golf<tb></tb><tb></tb>Branca<tb></tb>
AJY5231<tb></tb>10:15'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<dt></dt><tb></tb>Focus<tb></tb>Vermelha<tb></tb>APG20
13<tb></tb>13:45'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<dt></dt><tb></tb>Megane<tb></tb>Cinza<tb></tb>AAR5414
<tb></tb>14:30'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<dt></dt><tb></tb>Corsa<tb></tb>Preto<tb></tb>AWK0189<
tb></tb>20:40'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<l><tc>_</tc>'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<l></l><e>DATA:<dt></dt></e><l></l><e>Hora:<hr></hr><
/e><l></l>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>Anvanando 3 Linhas</ce><sl>3</sl>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>Anvanando 1 Linha</ce><sl>1</sl>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<l>Inserindo<sp>10</sp>10 espaos em Branco'),

Daruma Automao

Daruma Framework

168

0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>Formatao Normal</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<n>DARUMA AUTOMAO!!</n><l>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>NEGR+ITAL+SUBL+EXPAND</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<b><i><s><e>DARUMA
AUTOMAO!!</b></i></s></e>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>NEGR+ITAL+SUBL+CONDENSADO</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<b><i><s><c>DARUMA
AUTOMAO!!</b></i></s></c>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>NEGR+ITAL+SUBL+NORMAL</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<b><i><s><n>DARUMA
AUTOMAO!!</b></i></s></n>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>EXPANDIDO</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<e>DARUMA AUTOMAO!!<e>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>CONDENSADO</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<c>DARUMA AUTOMAO!!</c>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>NEGRITO+EXPANDIDO</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<b><e>DARUMA AUTOMAO!!</b></e>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>ITLICO+EXPANDIDO</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<i><e>DARUMA AUTOMAO!!</i></e>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce><dt></dt>SUBLINHADO+EXPANDIDO</ce>'),
0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<s><e>DARUMA AUTOMAO!!</s></e>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>NEGRITO+CONDENSADO</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<b><c>DARUMA AUTOMAO!!</b></c>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>ITLICO+CONDENSADO</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<i><c>DARUMA AUTOMAO!!</i></c>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>SUBLINHADO+CONDENSADO</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<s><c>DARUMA AUTOMAO!!</s></c>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>NEGRITO+NORMAL</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<b><n>DARUMA AUTOMAO!!</b></n>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>ITLICO+NORMAL</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<l><i><n>DARUMA AUTOMAO!!</i></n>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>SUBLINHADO+NORMAL</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<s><n>DARUMA AUTOMAO!!</s></n><l>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>ALINHADO A DIREITA</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ad>DARUMA AUTOMAO!!</ad><l>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>ALINHADO A DIREITA + EXPANDIDO</ce>'),
0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<e><ad>DARUMA AUTOMAO!!</ad></e><l>'),
0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>ALINHADO A DIREITA + SUBLINHADO</ce>'),
0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ad><s>DARUMA AUTOMAO!!</s></ad><l>'),
0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>CENTRALIZADO + EXPANDIDO</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<e><ce>DARUMA AUTOMAO!!</ce></e><l>'),
0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ft>05,10,15,20,30,40</ft>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>TABULADO NA COLUNA 10</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<tb></tb><tb></tb>DARUMA<l>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>TABULADO NA COLUNA 30</ce>'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<tb></tb><tb></tb><tb></tb><tb></tb><tb></tb>DARUMA'),
0);
//Enviando todos Juntos
Int_Retorno:= Daruma_DUAL_ImprimirTexto(Pchar('<l><e><b>BUFFER COMPLETO</e></b>'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(Pchar('<<e>>DATA:<<dt>><</dt>><</e>><<l>><<l/>><<e>>Hora
:<<hr>><</hr>><</e>><<l>><<l/>><<ce>>' +
'Anvanando 5 Linhas<</ce>><<sl>>5<</sl>>Inserindo<<sp>>10<</sp>>10 espaos em
Branco<<l>>' +
'<<ce>>Formatao Normal<</ce>><<n>>DARUMA
AUTOMAO!!<</n>><<l>><<ce>>NEGR+ITAL+SUBL+EXPAND<</ce>>' +

Daruma Automao

169

Daruma Framework

'<<b>><<i>><<s>><<e>>DARUMA
AUTOMAO!!<</b>><</i>><</s>><</e>><<l>><<ce>>NEGR+ITAL+SUBL+CONDENSADO<</ce>
>' +
'<<b>><<i>><<s>><<c>>DARUMA
AUTOMAO!!<</b>><</i>><</s>><</c>><<l>><<ce>>NEGR+ITAL+SUBL+NORMAL<</ce>><<b
>>' +
'<<i>><<s>><<n>>DARUMA
AUTOMAO!!<</b>><</i>><</s>><</n>><<l>><<ce>>EXPANDIDO<</ce>><<e>>DARUMA
AUTOMAO!!' +
'<<e>><<l>><<ce>>CONDENSADO<</ce>><<c>>DARUMA
AUTOMAO!!<</c>><<l>><<ce>>NEGRITO+EXPANDIDO<</ce>><<b>><<e>>DARUMA
AUTOMAO!!' +
'<</b>><</e>><<l>><<ce>>Itlico+EXPANDIDO<</ce>><<i>><<e>>DARUMA
AUTOMAO!!<</i>><</e>><<l>><<ce>>SUBLINHADO+EXPANDIDO<</ce>>' +
'<<s>><<e>>DARUMA
AUTOMAO!!<</s>><</e>><<l>><<ce>>NEGRITO+CONDENSADO<</ce>><<b>><<c>>DARUMA
AUTOMAO!!<</b>><</c>><<l>>' +
'<<ce>>Itlico+CONDENSADO<</ce>><<i>><<c>>DARUMA
AUTOMAO!!<</i>><</c>><<l>><<ce>>SUBLINHADO+CONDENSADO<</ce>><<s>><<c>>' +
'DARUMA
AUTOMAO!!<</s>><</c>><<l>><<ce>>NEGRITO+NORMAL<</ce>><<b>><<n>>DARUMA
AUTOMAO!!<</b>><</n>><<l>><<ce>>Itlico+NORMAL' +
'<</ce>><<l>><<i>><<n>>DARUMA
AUTOMAO!!<</i>><</n>><<l>><<ce>>SUBLINHADO+NORMAL<</ce>><<s>><<n>>DARUMA
AUTOMAO!!<</s>><</n>>' +
'<<l>><<ce>>ALINHADO A DIREITA<</ce>><<ad>>DARUMA
AUTOMAO!!<</ad>><<l>><<ce>>ALINHADO A DIREITA + EXPANDIDO<</ce>>' +
'<<e>><<ad>>DARUMA AUTOMAO!!<</ad>><</e>><<l>><<ce>>ALINHADO A DIREITA +
SUBLINHADO<</ce>><<ad>><<s>>DARUMA AUTOMAO!!<</s>><</ad>>' +
'<<l>><<ce>>CENTRALIZADO + EXPANDIDO<</ce>><<e>><<ce>>DARUMA
AUTOMAO!!<</ce>><</e>><<l>><<ce>>TABULADO NA COLUNA 10<</ce>> <<tb>><</tb>>' +
' <<tb>><</tb>>DARUMA<<l>><<ce>>TABULADO NA COLUNA 30<</ce>> <<tb>><</tb>>
<<tb>><</tb>> <<tb>><</tb>> <<tb>><</tb>> <<tb>><</tb>>DARUMA<<sl>>10<</sl>>'),
0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(Pchar('<l></l><e>DATA:<dt></dt></e><l></l><e>Hora:<hr></hr></
e><l></l><ce>Anvanando 5 Linhas</ce><sl>5</sl>' +
'Inserindo<sp>10</sp>10 espaos em Branco<l><ce>Formatao Normal</ce><n>DARUMA
AUTOMAO!!</n><l><ce>NEGR+ITAL+SUBL+EXPAND</ce><b><i><s><e>DARUMA
AUTOMAO!!</b></i></s></e><l>' +
'<n><ce>NEGR+ITAL+SUBL+CONDENSADO</ce></n><b><i><s><c>DARUMA
AUTOMAO!!</b></i></s></c><l><ce>NEGR+ITAL+SUBL+NORMAL</ce><b><i><s><n>DARUMA
AUTOMAO!!</b></i></s></n><l>' +
'<ce>EXPANDIDO</ce><e>DARUMA AUTOMAO!!</e><l><ce>CONDENSADO</ce><c>DARUMA
AUTOMAO!!</c><l><ce>NEGRITO+EXPANDIDO</ce><b><e>DARUMA AUTOMAO!!</b></e><l>'
+
'<ce>Itlico+EXPANDIDO</ce><i><e>DARUMA
AUTOMAO!!</i></e><l><ce>SUBLINHADO+EXPANDIDO</ce><s><e>DARUMA
AUTOMAO!!</s></e><l><ce>NEGRITO+CONDENSADO</ce><b><c>DARUMA
AUTOMAO!!</b></c><l>' +
' <ce>Itlico+CONDENSADO</ce><i><c>DARUMA
AUTOMAO!!</i></c><l><ce>SUBLINHADO+CONDENSADO</ce><s><c>DARUMA
AUTOMAO!!</s></c><l><ce>NEGRITO+NORMAL</ce><b><n>DARUMA
AUTOMAO!!</b></n><l>' +
'<ce>Itlico+NORMAL</ce><l><i><n>DARUMA
AUTOMAO!!</i></n><l><ce>SUBLINHADO+NORMAL</ce><s><n>DARUMA
AUTOMAO!!</s></n><l><ce>ALINHADO A DIREITA</ce><ad>DARUMA AUTOMAO!!</ad><l>' +
'<ce>ALINHADO A DIREITA + EXPANDIDO</ce><e><ad>DARUMA
AUTOMAO!!</ad></e><l><ce>ALINHADO A DIREITA + SUBLINHADO</ce><ad><s>DARUMA
AUTOMAO!!</s></ad><l>' +
'<ce>CENTRALIZADO + EXPANDIDO</ce><e><ce>DARUMA
AUTOMAO!!</ce></e><l><ce>TABULADO NA COLUNA 10</ce> <tb></tb> <tb></tb>DARUMA<l>'
+
'<ce>TABULADO NA COLUNA 30</ce> <tb></tb> <tb></tb> <tb></tb> <tb></tb>
<tb></tb>DARUMA<sl>10</sl>'), 0);

Daruma Automao

Daruma Framework

1.9.2

170

Daruma_DUAL_ImprimirArquivo (ndice 4008)


Definio do Mtodo:
Imprime arquivo de texto, com at 3000 bytes.
Parmetros do Mtodo:
String: Com o nome e o path de onde est o arquivo.
Retornos do mtodo:
0 - Impressora desligado.
1 - Comando enviado com sucesso.
-2 - Arquivo no encontrado.
Aqui voc poder Utilizar o protocolo DHTM (DARUMA HTML) para formatar o seu arquivo de texto.
Estas so as Tags que voc poder a qualquer momento no meio de seu texto implementar, inclundo
uma Combinao entre elas:
<b></b>
<i></i>
<s></s>
<e></e>
<c></e>
<n></n>
<l></l>
<sl>NN</sl>
<tc>C</tc>
<ce></ce>
<dt></dt>
<hr></hr>
<sp>NN</sp>
<sn></sn>
<g></g>
<a>
</a>
<tb></tb>
<<
>>

Para sinalizar Negrito


Para sinalizar Itlico
Para sinalizar Sublinhado
Para sinalizar Expandido
Para sinalizar Condensado
Para sinalizar Normal
Para Saltar Uma Linha
Para Saltar Vrias Linhas
Riscar Linha com um carctere Especifico
Para Centralizar
Para Imprimir Data Atual
Para Imprimir Hora Atual
Inserir NN Espaos em Branco
Sinal Sonoro, Apitar
Abre a Gaveta
Aguardar at o Trmino da Impresso
No Aguardar at o Trmino da Impresso
Tabulao
Quando desejar imprimir o carctere "<"
Quando desenar imprimir o carctere ">"

Veja Aqui Alguns Exemplos de Utilizao


Parmetros
Arquivo: com texto que voce deseja Imprimir (at 3000 de tamanho)
Obervao:
As formataes que ir conter o arquivo devereo serem feitas atravs das tags DHTML.
Valor Defult da Chave = "0"
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Erro de comunicao, Impressora Desligada
1: OK, Sucesso ao enviar o arquivo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
Exemplo em Delphi 7.0:

Daruma Automao

171

1.9.3

Daruma Framework

Daruma_DUAL_VerificaSatus (ndice 4002) ?????Falta ex em delphi


Definio do Mtodo
Retorna um Valor Inteiro com o Status da Impressora DUAL
Parmetros
No h
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: DESLIGADA
1: OK
-27: ERRO GENERICO
-50: OFF-LINE
-51: SEM PAPEL
-52: INICIALIZANDO
-53: ERRO NA IMPRESSORA (MECANICO)
Observao Importante:
Se voc estiver usando a porta LPT(Paralela) e deseja pegar o status Acima voc dever configurar a
chave ModoEscrita que dever estar a 1(um) porque desta forma a DLL ir se comunicar diretamente
atravs do Endereo da Porta Paralela e no atravs da API Normal do Windows que no permite a leitura
destes Status. Isso somente deve ser levado em considerao quando estiver Usando a LPT(Paralela).
No Caso da Serial nada disso debve ser levado em considerao, porque no caso da Serial a Prpria DUAL
quem retorna um Byte indicando seu Atual Satus. Caso a chave ModoEscrita esteja igual a 0(zero) Que seu Default - este Mtodo sempre retornar 1(um) e voc no ter acesso aos Status detalhados
da Impressora. Na Porta Serial a Chave ModoEscrita no levada em Considerao.
Para maiores detalhes de como utilizar e configurar a chave Modo Escrita veja o Link
Daruma_Registry_DUAL_ModoEscrita.

Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_DUAL_VerificaStatus()
If Int_Retorno = 1 Then
MsgBox "1(um) - Impressora OK", vbInformation, "Daruma Framework"
End If
If Int_Retorno = -50 Then
MsgBox "-50 - Impressora OFF-LINE", vbCritical, "Daruma Framework"
End If
If Int_Retorno = -51 Then
MsgBox "-51 - Impressora Sem Papel", vbCritical, "Daruma Framework"
End If
If Int_Retorno = -27 Then
MsgBox "-27 - Erro Genrico", vbCritical, "Daruma Framework"
End If
If Int_Retorno = 0 Then
MsgBox "0 - Impressora Desligada", vbCritical, "Daruma Framework"
End If

1.9.4

Exemplo em Delphi 7.0:

Daruma_DUAL_VerificaDocumento (ndice 4003)


Definiod do Mtodo:
Retorna um Valor Inteiro que indica se o Documento est posicionado para Autenticar ou no
Parmetros
No H
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Documento no Posicionado para Autenticar
1: Documento Posicionado para Autenticao
Daruma Automao

Daruma Framework

172

-27: Erro Genrico


Observao Importante:
Se voc estiver usando a porta LPT(Paralela) e deseja pegar o status Acima voc dever configurar a
chave ModoEscrita que dever estar a 1(um) porque desta forma a DLL ir se comunicar diretamente
atravs do Endereo da Porta Paralela e no atravs da API Normal do Windows que no permite a leitura
destes Status. Isso somente deve ser levado em considerao quando estiver Usando a LPT(Paralela).
No Caso da Serial nada disso devolve ser levado em considerao, porque no caso da Serial a Prpria
DUAL quem retorna um Byte indicando seu Atual Status. Caso a chave ModoEscrita esteja igual a
0(zero) - Que seu Default - este Mtodo sempre retornar 1(um) e voc no ter acesso aos Status
detalhados da Impressora. Na Porta Serial a Chave ModoEscrita no levada em Considerao.
Para maiores detalhes de como utilizar e cosnfigurar a chave Modo Escrita veja o Link
Daruma_Registry_DUAL_ModoEscrita.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_DUAL_VerificaDocumento()
If Int_Retorno = 1 Then
MsgBox "1(um) - Documento Posicionado", vbInformation, "Daruma Framework"
Else
MsgBox "0(zero) - Documento No Posicionado", vbCritical, "Daruma Framework"
End If
Exemplo em Delphi 7.0:
egin
Int_Retorno:= Daruma_DUAL_VerificaDocumento();
if Int_Retorno = 1 then
begin
Application.MessageBox('1 (um) Documento Posicionado!', 'Daruma Framework', mb_ok + 32);
end
else
begin
Application.MessageBox('Documento Nao Posicionado!', 'Daruma Framework', mb_ok + 16);
end;

end;

1.9.5

Daruma_DUAL_Autenticar (ndice 4004)


Definio do Mtodo:
Permite Enviar um Texto para Autenticao e permite configurar o Tempo que deseja esperar para
Autenticar e tambm o local, na Bobina e no DOC ou s no Documento.
Aqui voc poder utilizar as TAGS DHTM para Impreso e formatar o texto que deseja Autenticar.
Por exemplo se deseja Autenticar com Sublinhado e Expandido envie o seguinte mtodo:
iRetorno = Daruma_Registry_DUAL_VerificaDocumento("1","<s><e>Texto</s></e>","10")
Por exemplo se deseja Autenticar Com a Data e a Hora Atual, chame o seguinte mtodo:
iRetorno = Daruma_Registry_DUAL_VerificaDocumento("1","<dt><hr>Texto","10")
Veja Aqui Alguns Exemplos de Utilizao

Parmetros
1. Local: 1(um) s no Documento, 0(zero) no Documento e na Bobina
2. String com 48 carcteres com a Autenticao desejada
3. Quantos Segundos deseja esperar que o Usuario coloque o Documento
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Time-Out, o Usuario no posicionou o Documento dentro do tempo indicado

Daruma Automao

173

Daruma Framework

1:
-27:
-50:
-51:
-52:
-53:

OK, Sucesso ao enviar o mtodo


Erro Genrico
Impressora OFF-Line
Impressora Sem Papel
ECF Inicializando.
Erro de Impresso.

Observao Importante:
Se voc estiver usando a porta LPT(Paralela) e deseja Autenticar, voc poder faze-lo de duas Formas.
1) Para Fazer uso do Parmetro de Time-Out (ou seja, que a dll fique esperando pra voc que o usuario
coloque o Papel na DUAL) voce dever estar com a Chave ModoEscrita a 1(um).
2) Caso voc no deseje que a dll Controle isso, voce dever sempre chamar o mtodo de Autenticar
quando o Papel j estiver presente na DUAL. Caso a Chave ModoEscrita estiver igual a 0(zero) e voce
chame a autenticao sem o papel, no ir funcionar.
Para maiores detalhes de como utilizar e configurar a chave Modo Escrita veja o Link
Daruma_Registry_DUAL_ModoEscrita.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Vias As String
Dim Str_Texto_Autenticacao As String
Dim Str_Tempo_Espera As String
Str_Vias = "1"
Str_Texto_Autenticacao = "<sn><c>DARUMA AUTENTICAO</c> (D:<dt></dt> H:<hr></hr>)</sn>"
Str_Tempo_Espera = "5"
Int_Retorno = Daruma_DUAL_Autenticar(Str_Vias, Str_Texto_Autenticacao, Str_Tempo_Espera)
Exemplo em Delphi 7.0:
var
Str_Vias: String;
Str_Texto_Autenticacao: String;
Str_Tempo_espera: String;
begin
Str_Vias:= TX_Vias.Text;
Str_Texto_Autenticacao:= TX_Texto_Autenticacao.Text;
Str_Tempo_Espera:= TX_Tempo_Espera.Text;
Int_Retorno:= Daruma_DUAL_Autenticar(Str_Vias, Str_Texto_Autenticacao, Str_Tempo_Espera);
end;
end.

1.9.6

Daruma_DUAL_AcionaGaveta (ndice 4005)


Definio do Mtodo:
Aciona a Gaveta de dinheiro que est "plugada" a Impressora DUAL na Saida RJ45 da Impressora
Parmetros:
No H
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Erro de comunicao, Impressora Desligada
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:

Daruma Automao

Daruma Framework

174

Exemplo em Visual Basic 6.0:


Int_Retorno = Daruma_DUAL_AcionaGaveta()
Exemplo em Delphi 7.0:
begin
Int_Retorno:= Daruma_DUAL_AcionaGaveta()
end;

1.9.7

Mtodos para Impresso na DUAL

1.9.7.1

Trabalhando com a DUAL NA PARALELA (LPT1, LPT2)

- O PROCESSO ABAIXO NO NECESSRIO CASO VOCE ESTEJA UTILIZANDO-SE DA PORTA


SERIAL PARA SE COMUNICAR OU SISTEMAS OPERAISONAIS COMO W95 E W98.
- O PROCESSO ABAIXO DEVE SER SEGUIDO APENAS NO CASO DE USO DA PARALELA EM
SISTEMA OPERACIONAIS PROTEGIDOS COMO W2000, WXP, WNT, WxxSERVER.
Devido a Existencia do HAL (Hardware Abstract Layer), existe a necessidade de se Burlar sta "Camada"
de comunicao para que Status como FINAL de PAPEL, Operaoes como Autenticao e Verificao se o
papel est presente para ser autenticado ou no, sejam utilizados e aceitos pelo HAL.
Por isso a dll fz uso de um servio que fornece um endereo protegido de comunicao com a PARALELA
chamado HWINTERFACE.SYS.
Passos Para a INSTALAO DA DS300 na PARALELA para Uso da DARUMA32.Dll:
(Devem ser Executados nesta Ordem)
1.
2.
4.
6.

1.9.7.2

Copie o Arquivo HWINTERFACE.SYS para o Diretorio WINXX\SYSTEM32\DRIVERS.


Aps a Instalao Faa Dois Cliques no Arquivo DARUMA.REG que ir Registrar este servio do
Windows.
Reinicie o Computador (Vlido somente para WIN2000.
Pronto!! voc j pode usar a DARUMA32.Dll na Porta Paralela de seu computador com todas os
Mtodos de Autenticao, Staus, etc.. Tudo ON-LINE com a DUAL.

Resolvendo Problemas de Comunicao com a PARALELA

Problema: J realizei a Copia do HWINTERFACE.SYS, Fiz Dois Clicks no DARUMA.REG, Reiniciei o


Computador e ainda assim a DUAL no comunica na Paralela.
Soluo: Como a Porta Paralela protegida pelo Sistema Operacional, pode ser que ainda necessite de
alguns pequenos ajustes para funcionar, tudo isso pela limitao que sistemas operacionais ProtegidoS
(W2000, WXP) possuem. Sendo assim Reinicie o Computador, entre no SETUP do computador
(Geralmente pressionando a tecla "DEL" ao re-iniciar) e verifique em que modo esta a Porta Paralela,

Daruma Automao

175

Daruma Framework

caso a mesma esteja em modo BI-DIRECIONAL, favor retirar deste modo, e colocar em Modo ECP.
Caso seu computador nao possua este modo deixar em modo NORMAL ou EPP.
Problema: OK, realizei todos os passos acima e ainda assim no Windows continua no se comunicando
com a DUAL NA paralela.
Soluo: Faa um Click com o Botao Direiro no cone Meu Computador, escolha a Opo
Propriedades, e a ficha "Hardware", nesta ficha escolha a Opo "Gerenciador de Dispositivos",
aps isso selecione a opo "PORTAS" e a porta onde esta conectada a DUAL. Faa um click na Opo
Configurao de Portas e deixe a paralela com a Seguinte Configurao: Nunca Usar Interrupo,
conforme figura abaixo:

Pressione OK: Reinicie o Computador, efetue os testes normalmente.

1.9.7.3

Utilizando as Tags de Impresso de Texto

Definio do Mtodo:
Permite trabalhar com as Tags de Formatao.
Parmetro:
String: com as tags de formatao:ex:<b>TEXTO em NEGRITO</b>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Time-Out, o Usuario no posicionou o Documento dentro do tempo indicado
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
<b></b>
<i></i>
<s></s>
<e></e>
<c></c>
<n></n>
<l></l>
<ce></ce>
<ad></ad>
<cr></cr>

Para sinalizar Negrito


Para sinalizar Itlico
Para sinalizar Sublinhado
Para sinalizar E x p a n d i d o
Para sinalizar Condensado
Para sinalizar Normal
Para Saltar Uma Linha
Para Centralizar o Texto
Para Alinhar a Direita
Retornar o Carro de Impressao para o Comeo.

Daruma Automao

Daruma Framework

<sl>NN</sl>
<tc>C</tc>
<ce></ce>
<dt></dt>
<hr></hr>
<sp>NN</sp>
<sn></sn>
<g></g>
<tb></tb>
<a>
</a>
<<
>>

176

Para Saltar Vrias Linhas


Riscar Linha com um carctere Especifico
Para Centralizar
Para Imprimir Data Atual
Para Imprimir Hora Atual
Inserir NN Espaos em Branco
Sinal Sonoro, Apitar
Abre a Gaveta
Tabulao
Aguardar at o Trmino da Impresso
No Aguardar at o Trmino da Impresso
Quando desejar imprimir o carctere "<"
Quando desenar imprimir o carctere ">"

Int_Retorno = Daruma_DUAL_ImprimirTexto("<sn><l><ce><s>Teste com Formatao


DHTM</s></ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<n>Estes so os carcteres que voc poder
utilizar<n><l>Voc poder a qualquer monento combinar as formataes!!", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<b>><</b>> Para sinalizar Negrito", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<i>><</i>> Para sinalizar Itlico", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<s>><</s>> Para sinalizar Sublinhado", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<e>><</e>> Para sinalizar Expandido", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<c>><</c>> Para sinalizar Condensado", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<n>><</n>> Para sinalizar Normal", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<l>><</l>> Para Saltar Uma Linha", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<ad>><</ad>> Para alinhar a direita", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<ft>>n1,n2,...,n6<</ft>> Para habilitar tabulao", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<tb>><</tb>> Para saltar at a proxima tabulao", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<sl>>NN<</sl>> Para Saltar Vrias Linhas", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<tc>>C<</tc>>Riscar Linha com carctere Especfico",
0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<ce>><</ce>> Para Centralizar", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<dt>><</dt>> Para Imprimir Data Atual", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<hr>><</hr>> Para Imprimir Hora Atual", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<sp>>NN<</sp>> Inserir NN Espaos em Branco", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<sn>><</sn>> Sinal Sonoro, Apitar", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<g>><</g>> Abre a Gaveta", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<a>><</a>> Aguardar at o Trmino da Impresso", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l><tc>_</tc><tc>_</tc>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<e><ce>TABULAO</ce><e><tc>_</tc>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ft>05,10,15,20,30,40</ft>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<tb>5</tb><tb>10</tb><tb>15</tb><tb>20</tb><tb>30</tb><tb>
40</tb>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<tb>5</tb><tb>10</tb><tb>15</tb><tb>20</tb><tb>30</tb><tb>
40</tb>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<tb>5</tb><tb>10</tb><tb>15</tb><tb>20</tb><tb>30</tb><tb>
40</tb>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<tb>5</tb><tb>10</tb><tb>15</tb><tb>20</tb><tb>30</tb><tb>
40</tb>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("Data<tb></tb>Veiculo<tb></tb>Cor<tb></tb>Placa<tb></tb>Hora",
0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<dt></dt><tb></tb>Golf<tb></tb><tb></tb>Branca<tb></tb>AJY52
31<tb></tb>10:15", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<dt></dt><tb></tb>Focus<tb></tb>Vermelha<tb></tb>APG2013<tb
></tb>13:45", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<dt></dt><tb></tb>Megane<tb></tb>Cinza<tb></tb>AAR5414<tb><
/tb>14:30", 0)

Daruma Automao

177

Daruma Framework

Int_Retorno =
Daruma_DUAL_ImprimirTexto("<dt></dt><tb></tb>Corsa<tb></tb>Preto<tb></tb>AWK0189<tb></t
b>20:40", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l><tc>_</tc>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<l></l><e>DATA:<dt></dt></e><l></l><e>Hora:<hr></hr></e><l
></l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>Anvanando 3 Linhas</ce><sl>3</sl>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>Anvanando 1 Linha</ce><sl>1</sl>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l>Inserindo<sp>10</sp>10 espaos em Branco", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>Formatao Normal</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<n>DARUMA AUTOMAO!!</n><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGR+ITAL+SUBL+EXPAND</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i><s><e>DARUMA
AUTOMAO!!</b></i></s></e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGR+ITAL+SUBL+CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i><s><c>DARUMA
AUTOMAO!!</b></i></s></c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGR+ITAL+SUBL+NORMAL</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i><s><n>DARUMA
AUTOMAO!!</b></i></s></n>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<e>DARUMA AUTOMAO!!<e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<c>DARUMA AUTOMAO!!</c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGRITO+EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><e>DARUMA AUTOMAO!!</b></e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>ITLICO+EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<i><e>DARUMA AUTOMAO!!</i></e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><dt></dt>SUBLINHADO+EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<s><e>DARUMA AUTOMAO!!</s></e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGRITO+CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><c>DARUMA AUTOMAO!!</b></c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>ITLICO+CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<i><c>DARUMA AUTOMAO!!</i></c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>SUBLINHADO+CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<s><c>DARUMA AUTOMAO!!</s></c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGRITO+NORMAL</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><n>DARUMA AUTOMAO!!</b></n>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>ITLICO+NORMAL</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l><i><n>DARUMA AUTOMAO!!</i></n>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>SUBLINHADO+NORMAL</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<s><n>DARUMA AUTOMAO!!</s></n><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad>ALINHADO A DIREITA</ad>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad>DARUMA AUTOMAO!!</ad><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad><e>ALINHADO A DIREITA +
EXPANDIDO</ad></e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<e><ad>DARUMA AUTOMAO!!</ad></e><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad><s>ALINHADO A DIREITA +
SUBLINHADO</ad></s>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad><s>DARUMA AUTOMAO!!</s></ad><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>CENTRALIZADO + EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<e><ce>DARUMA AUTOMAO!!</ce></e><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ft>05,10,15,20,30,40</ft>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>TABULADO NA COLUNA 10</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb></tb><tb></tb>DARUMA<l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>TABULADO NA COLUNA 30</ce>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<tb></tb><tb></tb><tb></tb><tb></tb><tb></tb>DARUMA", 0)
'Enviando todos Juntos
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l><e><b>BUFFER COMPLETO</e></b>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<<e>>DATA:<<dt>><</dt>><</e>><<l>><<l/>><<e>>Hora:<<hr
>><</hr>><</e>><<l>><<l/>><<ce>>" + _

Daruma Automao

Daruma Framework

178

"Anvanando 5 Linhas<</ce>><<sl>>5<</sl>>Inserindo<<sp>>10<</sp>>10 espaos em


Branco<<l>>" + _
"<<ce>>Formatao Normal<</ce>><<n>>DARUMA
AUTOMAO!!<</n>><<l>><<ce>>NEGR+ITAL+SUBL+EXPAND<</ce>>" + _
"<<b>><<i>><<s>><<e>>DARUMA
AUTOMAO!!<</b>><</i>><</s>><</e>><<l>><<ce>>NEGR+ITAL+SUBL+CONDENSADO<</ce>
>" + _
"<<b>><<i>><<s>><<c>>DARUMA
AUTOMAO!!<</b>><</i>><</s>><</c>><<l>><<ce>>NEGR+ITAL+SUBL+NORMAL<</ce>><<b
>>" + _
"<<i>><<s>><<n>>DARUMA
AUTOMAO!!<</b>><</i>><</s>><</n>><<l>><<ce>>EXPANDIDO<</ce>><<e>>DARUMA
AUTOMAO!!" + _
"<<e>><<l>><<ce>>CONDENSADO<</ce>><<c>>DARUMA
AUTOMAO!!<</c>><<l>><<ce>>NEGRITO+EXPANDIDO<</ce>><<b>><<e>>DARUMA
AUTOMAO!!" + _
"<</b>><</e>><<l>><<ce>>Itlico+EXPANDIDO<</ce>><<i>><<e>>DARUMA
AUTOMAO!!<</i>><</e>><<l>><<ce>>SUBLINHADO+EXPANDIDO<</ce>>" + _
"<<s>><<e>>DARUMA
AUTOMAO!!<</s>><</e>><<l>><<ce>>NEGRITO+CONDENSADO<</ce>><<b>><<c>>DARUMA
AUTOMAO!!<</b>><</c>><<l>>" + _
"<<ce>>Itlico+CONDENSADO<</ce>><<i>><<c>>DARUMA
AUTOMAO!!<</i>><</c>><<l>><<ce>>SUBLINHADO+CONDENSADO<</ce>><<s>><<c>>" + _
"DARUMA
AUTOMAO!!<</s>><</c>><<l>><<ce>>NEGRITO+NORMAL<</ce>><<b>><<n>>DARUMA
AUTOMAO!!<</b>><</n>><<l>><<ce>>Itlico+NORMAL" + _
"<</ce>><<l>><<i>><<n>>DARUMA
AUTOMAO!!<</i>><</n>><<l>><<ce>>SUBLINHADO+NORMAL<</ce>><<s>><<n>>DARUMA
AUTOMAO!!<</s>><</n>>" + _
"<<l>><<ce>>ALINHADO A DIREITA<</ce>><<ad>>DARUMA
AUTOMAO!!<</ad>><<l>><<ce>>ALINHADO A DIREITA + EXPANDIDO<</ce>>" + _
"<<e>><<ad>>DARUMA AUTOMAO!!<</ad>><</e>><<l>><<ce>>ALINHADO A DIREITA +
SUBLINHADO<</ce>><<ad>><<s>>DARUMA AUTOMAO!!<</s>><</ad>>" + _
"<<l>><<ce>>CENTRALIZADO + EXPANDIDO<</ce>><<e>><<ce>>DARUMA
AUTOMAO!!<</ce>><</e>><<l>><<ce>>TABULADO NA COLUNA 10<</ce>> <<tb>><</tb>>" +
_
" <<tb>><</tb>>DARUMA<<l>><<ce>>TABULADO NA COLUNA 30<</ce>> <<tb>><</tb>>
<<tb>><</tb>> <<tb>><</tb>> <<tb>><</tb>> <<tb>><</tb>>DARUMA<<sl>>10<</sl>>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<l></l><e>DATA:<dt></dt></e><l></l><e>Hora:<hr></hr></e><l
></l><ce>Anvanando 5 Linhas</ce><sl>5</sl>" + _
"Inserindo<sp>10</sp>10 espaos em Branco<l><ce>Formatao Normal</ce><n>DARUMA
AUTOMAO!!</n><l><ce>NEGR+ITAL+SUBL+EXPAND</ce><b><i><s><e>DARUMA
AUTOMAO!!</b></i></s></e><l>" + _
"<n><ce>NEGR+ITAL+SUBL+CONDENSADO</ce></n><b><i><s><c>DARUMA
AUTOMAO!!</b></i></s></c><l><ce>NEGR+ITAL+SUBL+NORMAL</ce><b><i><s><n>DARUMA
AUTOMAO!!</b></i></s></n><l>" + _
"<ce>EXPANDIDO</ce><e>DARUMA AUTOMAO!!</e><l><ce>CONDENSADO</ce><c>DARUMA
AUTOMAO!!</c><l><ce>NEGRITO+EXPANDIDO</ce><b><e>DARUMA AUTOMAO!!</b></e><l>"
+_
"<ce>Itlico+EXPANDIDO</ce><i><e>DARUMA
AUTOMAO!!</i></e><l><ce>SUBLINHADO+EXPANDIDO</ce><s><e>DARUMA
AUTOMAO!!</s></e><l><ce>NEGRITO+CONDENSADO</ce><b><c>DARUMA
AUTOMAO!!</b></c><l>" + _
" <ce>Itlico+CONDENSADO</ce><i><c>DARUMA
AUTOMAO!!</i></c><l><ce>SUBLINHADO+CONDENSADO</ce><s><c>DARUMA
AUTOMAO!!</s></c><l><ce>NEGRITO+NORMAL</ce><b><n>DARUMA
AUTOMAO!!</b></n><l>" + _
"<ce>Itlico+NORMAL</ce><l><i><n>DARUMA
AUTOMAO!!</i></n><l><ce>SUBLINHADO+NORMAL</ce><s><n>DARUMA
AUTOMAO!!</s></n><l><ce>ALINHADO A DIREITA</ce><ad>DARUMA AUTOMAO!!</ad><l>" +
_
"<ce>ALINHADO A DIREITA + EXPANDIDO</ce><e><ad>DARUMA
AUTOMAO!!</ad></e><l><ce>ALINHADO A DIREITA + SUBLINHADO</ce><ad><s>DARUMA
AUTOMAO!!</s></ad><l>" + _

Daruma Automao

179

Daruma Framework

"<ce>CENTRALIZADO + EXPANDIDO</ce><e><ce>DARUMA
AUTOMAO!!</ce></e><l><ce>TABULADO NA COLUNA 10</ce> <tb></tb> <tb></tb>DARUMA<l>"
+_
"<ce>TABULADO NA COLUNA 30</ce> <tb></tb> <tb></tb> <tb></tb> <tb></tb>
<tb></tb>DARUMA<sl>10</sl>", 0)
If Int_Retorno = 1 Then
MsgBox "Impressao Conlcuida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If

1.9.7.4

Exemplo em Delphi 7.0:

Teste Completo com as Tags de Impresso de Texto

Definio do Mtodo:
Permite trabalhar com as Tags de Formatao.
Parmetro:
String: com as tags de formatao:ex:<ce>CENTRALIZADO</ce>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Time-Out, o Usuario no posicionou o Documento dentro do tempo indicado
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sn><l><ce><s>Teste com Formatao
DHTM</s></ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<n>Estes so os carcteres que voc poder
utilizar<n><l>Voc poder a qualquer monento combinar as formataes!!", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<b>><</b>> Para sinalizar Negrito", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<i>><</i>> Para sinalizar Itlico", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<s>><</s>> Para sinalizar Sublinhado", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<e>><</e>> Para sinalizar Expandido", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<c>><</c>> Para sinalizar Condensado", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<n>><</n>> Para sinalizar Normal", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<l>><</l>> Para Saltar Uma Linha", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<ad>><</ad>> Para alinhar a direita", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<ft>>n1,n2,...,n6<</ft>> Para habilitar tabulao", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<tb>><</tb>> Para saltar at a proxima tabulao", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<sl>>NN<</sl>> Para Saltar Vrias Linhas", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<tc>>C<</tc>>Riscar Linha com carctere Especfico",
0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<ce>><</ce>> Para Centralizar", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<dt>><</dt>> Para Imprimir Data Atual", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<hr>><</hr>> Para Imprimir Hora Atual", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<sp>>NN<</sp>> Inserir NN Espaos em Branco", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<sn>><</sn>> Sinal Sonoro, Apitar", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<g>><</g>> Abre a Gaveta", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<<a>><</a>> Aguardar at o Trmino da Impresso", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l><tc>_</tc><tc>_</tc>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<e><ce>TABULAO</ce><e><tc>_</tc>", 0)

Daruma Automao

Daruma Framework

180

Int_Retorno = Daruma_DUAL_ImprimirTexto("<ft>05,10,15,20,30,40</ft>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<tb>5</tb><tb>10</tb><tb>15</tb><tb>20</tb><tb>30</tb><tb>
40</tb>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<tb>5</tb><tb>10</tb><tb>15</tb><tb>20</tb><tb>30</tb><tb>
40</tb>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<tb>5</tb><tb>10</tb><tb>15</tb><tb>20</tb><tb>30</tb><tb>
40</tb>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<tb>5</tb><tb>10</tb><tb>15</tb><tb>20</tb><tb>30</tb><tb>
40</tb>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("Data<tb></tb>Veiculo<tb></tb>Cor<tb></tb>Placa<tb></tb>Hora",
0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<dt></dt><tb></tb>Golf<tb></tb><tb></tb>Branca<tb></tb>AJY52
31<tb></tb>10:15", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<dt></dt><tb></tb>Focus<tb></tb>Vermelha<tb></tb>APG2013<tb
></tb>13:45", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<dt></dt><tb></tb>Megane<tb></tb>Cinza<tb></tb>AAR5414<tb><
/tb>14:30", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<dt></dt><tb></tb>Corsa<tb></tb>Preto<tb></tb>AWK0189<tb></t
b>20:40", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l><tc>_</tc>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<l></l><e>DATA:<dt></dt></e><l></l><e>Hora:<hr></hr></e><l
></l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>Anvanando 3 Linhas</ce><sl>3</sl>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>Anvanando 1 Linha</ce><sl>1</sl>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l>Inserindo<sp>10</sp>10 espaos em Branco", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>Formatao Normal</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<n>DARUMA AUTOMAO!!</n><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGR+ITAL+SUBL+EXPAND</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i><s><e>DARUMA
AUTOMAO!!</b></i></s></e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGR+ITAL+SUBL+CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i><s><c>DARUMA
AUTOMAO!!</b></i></s></c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGR+ITAL+SUBL+NORMAL</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i><s><n>DARUMA
AUTOMAO!!</b></i></s></n>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<e>DARUMA AUTOMAO!!<e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<c>DARUMA AUTOMAO!!</c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGRITO+EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><e>DARUMA AUTOMAO!!</b></e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>ITLICO+EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<i><e>DARUMA AUTOMAO!!</i></e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><dt></dt>SUBLINHADO+EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<s><e>DARUMA AUTOMAO!!</s></e>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGRITO+CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><c>DARUMA AUTOMAO!!</b></c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>ITLICO+CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<i><c>DARUMA AUTOMAO!!</i></c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>SUBLINHADO+CONDENSADO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<s><c>DARUMA AUTOMAO!!</s></c>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>NEGRITO+NORMAL</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><n>DARUMA AUTOMAO!!</b></n>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>ITLICO+NORMAL</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l><i><n>DARUMA AUTOMAO!!</i></n>", 0)

Daruma Automao

181

Daruma Framework

Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>SUBLINHADO+NORMAL</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<s><n>DARUMA AUTOMAO!!</s></n><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad>ALINHADO A DIREITA</ad>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad>DARUMA AUTOMAO!!</ad><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad>ALINHADO A DIREITA + EXPANDIDO</ad>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<e><ad>DARUMA AUTOMAO!!</ad></e><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad><s>ALINHADO A DIREITA +
SUBLINHADO</ad><s>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad><s>DARUMA AUTOMAO!!</s></ad><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>CENTRALIZADO + EXPANDIDO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<e><ce>DARUMA AUTOMAO!!</ce></e><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ft>05,10,15,20,30,40</ft>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>TABULADO NA COLUNA 10</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb></tb><tb></tb>DARUMA<l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>TABULADO NA COLUNA 30</ce>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<tb></tb><tb></tb><tb></tb><tb></tb><tb></tb>DARUMA", 0)
'Enviando todos Juntos
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l><e><b>BUFFER COMPLETO</e></b>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<<e>>DATA:<<dt>><</dt>><</e>><<l>><<l/>><<e>>Hora:<<hr
>><</hr>><</e>><<l>><<l/>><<ce>>" + _
"Anvanando 5 Linhas<</ce>><<sl>>5<</sl>>Inserindo<<sp>>10<</sp>>10 espaos em
Branco<<l>>" + _
"<<ce>>Formatao Normal<</ce>><<n>>DARUMA
AUTOMAO!!<</n>><<l>><<ce>>NEGR+ITAL+SUBL+EXPAND<</ce>>" + _
"<<b>><<i>><<s>><<e>>DARUMA
AUTOMAO!!<</b>><</i>><</s>><</e>><<l>><<ce>>NEGR+ITAL+SUBL+CONDENSADO<</ce>
>" + _
"<<b>><<i>><<s>><<c>>DARUMA
AUTOMAO!!<</b>><</i>><</s>><</c>><<l>><<ce>>NEGR+ITAL+SUBL+NORMAL<</ce>><<b
>>" + _
"<<i>><<s>><<n>>DARUMA
AUTOMAO!!<</b>><</i>><</s>><</n>><<l>><<ce>>EXPANDIDO<</ce>><<e>>DARUMA
AUTOMAO!!" + _
"<<e>><<l>><<ce>>CONDENSADO<</ce>><<c>>DARUMA
AUTOMAO!!<</c>><<l>><<ce>>NEGRITO+EXPANDIDO<</ce>><<b>><<e>>DARUMA
AUTOMAO!!" + _
"<</b>><</e>><<l>><<ce>>Itlico+EXPANDIDO<</ce>><<i>><<e>>DARUMA
AUTOMAO!!<</i>><</e>><<l>><<ce>>SUBLINHADO+EXPANDIDO<</ce>>" + _
"<<s>><<e>>DARUMA
AUTOMAO!!<</s>><</e>><<l>><<ce>>NEGRITO+CONDENSADO<</ce>><<b>><<c>>DARUMA
AUTOMAO!!<</b>><</c>><<l>>" + _
"<<ce>>Itlico+CONDENSADO<</ce>><<i>><<c>>DARUMA
AUTOMAO!!<</i>><</c>><<l>><<ce>>SUBLINHADO+CONDENSADO<</ce>><<s>><<c>>" + _
"DARUMA
AUTOMAO!!<</s>><</c>><<l>><<ce>>NEGRITO+NORMAL<</ce>><<b>><<n>>DARUMA
AUTOMAO!!<</b>><</n>><<l>><<ce>>Itlico+NORMAL" + _
"<</ce>><<l>><<i>><<n>>DARUMA
AUTOMAO!!<</i>><</n>><<l>><<ce>>SUBLINHADO+NORMAL<</ce>><<s>><<n>>DARUMA
AUTOMAO!!<</s>><</n>>" + _
"<<l>><<ce>>ALINHADO A DIREITA<</ce>><<ad>>DARUMA
AUTOMAO!!<</ad>><<l>><<ce>>ALINHADO A DIREITA + EXPANDIDO<</ce>>" + _
"<<e>><<ad>>DARUMA AUTOMAO!!<</ad>><</e>><<l>><<ce>>ALINHADO A DIREITA +
SUBLINHADO<</ce>><<ad>><<s>>DARUMA AUTOMAO!!<</s>><</ad>>" + _
"<<l>><<ce>>CENTRALIZADO + EXPANDIDO<</ce>><<e>><<ce>>DARUMA
AUTOMAO!!<</ce>><</e>><<l>><<ce>>TABULADO NA COLUNA 10<</ce>> <<tb>><</tb>>" +
_
" <<tb>><</tb>>DARUMA<<l>><<ce>>TABULADO NA COLUNA 30<</ce>> <<tb>><</tb>>
<<tb>><</tb>> <<tb>><</tb>> <<tb>><</tb>> <<tb>><</tb>>DARUMA<<sl>>10<</sl>>", 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<l></l><e>DATA:<dt></dt></e><l></l><e>Hora:<hr></hr></e><l
></l><ce>Anvanando 5 Linhas</ce><sl>5</sl>" + _

Daruma Automao

Daruma Framework

182

"Inserindo<sp>10</sp>10 espaos em Branco<l><ce>Formatao Normal</ce><n>DARUMA


AUTOMAO!!</n><l><ce>NEGR+ITAL+SUBL+EXPAND</ce><b><i><s><e>DARUMA
AUTOMAO!!</b></i></s></e><l>" + _
"<n><ce>NEGR+ITAL+SUBL+CONDENSADO</ce></n><b><i><s><c>DARUMA
AUTOMAO!!</b></i></s></c><l><ce>NEGR+ITAL+SUBL+NORMAL</ce><b><i><s><n>DARUMA
AUTOMAO!!</b></i></s></n><l>" + _
"<ce>EXPANDIDO</ce><e>DARUMA AUTOMAO!!</e><l><ce>CONDENSADO</ce><c>DARUMA
AUTOMAO!!</c><l><ce>NEGRITO+EXPANDIDO</ce><b><e>DARUMA AUTOMAO!!</b></e><l>"
+_
"<ce>Itlico+EXPANDIDO</ce><i><e>DARUMA
AUTOMAO!!</i></e><l><ce>SUBLINHADO+EXPANDIDO</ce><s><e>DARUMA
AUTOMAO!!</s></e><l><ce>NEGRITO+CONDENSADO</ce><b><c>DARUMA
AUTOMAO!!</b></c><l>" + _
" <ce>Itlico+CONDENSADO</ce><i><c>DARUMA
AUTOMAO!!</i></c><l><ce>SUBLINHADO+CONDENSADO</ce><s><c>DARUMA
AUTOMAO!!</s></c><l><ce>NEGRITO+NORMAL</ce><b><n>DARUMA
AUTOMAO!!</b></n><l>" + _
"<ce>Itlico+NORMAL</ce><l><i><n>DARUMA
AUTOMAO!!</i></n><l><ce>SUBLINHADO+NORMAL</ce><s><n>DARUMA
AUTOMAO!!</s></n><l><ce>ALINHADO A DIREITA</ce><ad>DARUMA AUTOMAO!!</ad><l>" +
_
"<ce>ALINHADO A DIREITA + EXPANDIDO</ce><e><ad>DARUMA
AUTOMAO!!</ad></e><l><ce>ALINHADO A DIREITA + SUBLINHADO</ce><ad><s>DARUMA
AUTOMAO!!</s></ad><l>" + _
"<ce>CENTRALIZADO + EXPANDIDO</ce><e><ce>DARUMA
AUTOMAO!!</ce></e><l><ce>TABULADO NA COLUNA 10</ce> <tb></tb> <tb></tb>DARUMA<l>"
+_
"<ce>TABULADO NA COLUNA 30</ce> <tb></tb> <tb></tb> <tb></tb> <tb></tb>
<tb></tb>DARUMA<sl>10</sl>", 0)
If Int_Retorno = 1 Then
MsgBox "Impressao Conlcuida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If

1.9.7.5

Exemplo em Delphi 7.0:

10 Exemplos utilizando as tags de formatacao

1.9.7.5.1 Exemplo DUAL 01

Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetro:
String: com as tabulaes:<tb></tb>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Time-Out, o Usuario no posicionou o Documento dentro do tempo indicado
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Nome_Empresa As String
Dim Str_Endereco_Empresa As String
Dim Str_Fone_Empresa As String
Dim Str_Numero_Pedido As String

Daruma Automao

183

Daruma Framework

Dim
Dim
Dim
Dim
Dim
Dim
Dim
Dim
Dim
Dim

Str_Tema_Mensagem As String
Str_Titulo_Mensagem As String
Str_Valor_Mensagem As String
Str_Forma_Cobranca As String
Str_Cliente As String
Str_Fone_Res As String
Str_Fone_Celular As String
Str_Fone_Com As String
Str_Mensagem_Promo As String
Str_Hora As String

Str_Nome_Empresa = 'I LOVE TELEMENSAGENS'


Str_Endereco_Empresa = 'Rua: XV de Novembro'
Str_Fone_Empresa = '3343-0619 / 3386-9508'
Str_Numero_Pedido = '0541'
Str_Tema_Mensagem = 'Romantica'
Str_Titulo_Mensagem = 'Casados para Sempre'
Str_Valor_Mensagem = '5,00'
Str_Forma_Cobranca = 'Em carteira"
Str_Cliente = 'Lucia de Souza'
Str_Fone_Res = '233-1154'
Str_Fone_Celular = '9916-5540'
Str_Fone_Com = '224-8890 R-254'
Str_Mensagem_Promo = 'Agradeemos a Preferncia!!!'
Str_Hora = TX_Hora.Text
'IMPRIMINDO A PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<i><e><sp>2</sp>" + TX_Nome_Empresa.Text +
"</e></i>", 0)
'IMPRIMINDO A SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><tc>-</tc></ce>", 0)
'IMPRIMINDO A TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>4</sp>" + LB_Endereco_Empresa.Caption + "<i>" +
TX_Endereco_Empresa.Text + "</i>", 0)
'IMPRIMINDO A QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>4</sp>" + LB_Fone_Empresa.Caption + "<i>" +
TX_Fone_Empresa.Text + "</i>", 0)
'IMPRIMINDO A QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>4</sp>" + LB_Pedido_N.Caption + "<i>" +
TX_Numero_Pedido.Text + "</i>", 0)
'IMPRIMINDO A SEXTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>4</sp>" + LB_Data.Caption + "<i><dt></dt></i>",
0)
'IMPRIMINDO A SETIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><tc>-</tc></ce>", 0)
'IMPRIMINDO A OITAVA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>4</sp>" + LB_Tema_Mensagem.Caption + "<i>" +
TX_Tema_Mensagem.Text + "</i>", 0)
'IMPRIMINDO A NONA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>4</sp>" + LB_Titulo_Mensagem.Caption + "<i>" +
TX_Titulo_Mensagem.Text + "</i>", 0)
'IMPRIMINDO A DECIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>4</sp>" + LB_Valor_Mensagem.Caption + "<i>" +
TX_Valor_Mensagem.Text + "</i>", 0)
'IMPRIMINDO A DECIMA PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>4</sp>" + LB_Forma_Cobranca.Caption + "<i>" +
TX_Forma_Cobranca.Text + "</i>", 0)
'IMPRIMINDO A DECIMA SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>4</sp>" + LB_Cliente.Caption + "<i>" +
TX_Cliente.Text + "</i>", 0)
'IMPRIMINDO A DECIMA TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>4</sp>" + LB_Fone_Res.Caption + "<i>" +
TX_Fone_Res.Text + "</i>", 0)
'IMPRIMINDO A DECIMA QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>4</sp>" + LB_Celular.Caption + "<i>" +
TX_Celular.Text + "</i>", 0)

Daruma Automao

Daruma Framework

184

'IMPRIMINDO A DECIMA QUINTA LINHA


Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>4</sp>" + LB_Fone_Com.Caption + "<i>" +
TX_Fone_Com.Text + "</i><sl>1</sl>", 0)
'IMPRIMINDO A DECIMA SEXTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><b>" + Tx_Mensagem_Promo.Text +
"</b></ce><sl>2</sl>", 0)
'IMPRIMINDO A DECIMA OITAVA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>35</sp>" + LB_Hora.Caption + "<hr></hr>", 0)
'IMPRIMINDO A DECIMA NONA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><tc>-</tc></ce><sl>8</sl>", 0)

If Int_Retorno = 1 Then
MsgBox "Impressao Concluida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If

Exemplo em Delphi 7.0:

1.9.7.5.2 Exemplo DUAL 02

Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetro:
String: com as tabulaes:<tb></tb>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Time-Out, o Usuario no posicionou o Documento dentro do tempo indicado
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Retorno As Integer
Dim Str_Empresa As String
Dim Str_Endereco_Empresa As String
Dim Str_Fone_Empresa As String
Dim Str_Cliente As String
Dim Str_Cadastro As String
Dim Str_Data_Devolucao As String
Dim Str_Filme As String
Dim Str_Categoria As String
Dim Str_Valor As String
Dim Str_Mensagem_Promocional As String
Str_Empresa = 'Lucas Video'
Str_Edereco_Empresa = 'AV. Constantino Lopes, 550 - Centro - Ctba.'
Str_Fone_Empresa = '232-1662'
Str_Cliente = 'Guilherme de Souza'
Str_Cadastro = '00021'
Str_Data_Devolucao = '17/01/2005'
Str_Filme = 'Piratas do Caribe'
Str_Categoria = 'Lanamento'
Str_Valor = '4,50'
Str_Mensagem_Promocional = 'A cada 2 lanamentos brinde 1 catlogo'
'IPRIMINDO A PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<e><ce><b>" + TX_Empresa.Text + "</ce></e></b>",

Daruma Automao

185

Daruma Framework

0)
'IPRIMINDO A SEGUNRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto(LB_Endereco_Empresa.Caption + "<i><sp>1</sp>" +
TX_Endereco_Empresa.Text + "</i>", 0)
'IPRIMINDO A TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto(LB_Fone_Empresa.Caption + "<i><sp>1</sp>" +
TX_Fone_Empresa.Text + "</i>", 0)
'IMPRIMINDO A QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto(LB_Nome_Cliente + "<i><sp>1</sp>" + TX_Cliente.Text +
"</i>", 0)
'IMPRIMINDO A QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto(LB_Cadastro + "<i><sp>1</sp>" + TX_Cadastro.Text +
"</i>", 0)
'IMPRIMINDO A SEXTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto(LB_Data_Devolucao + "<i><sp>1</sp>" +
TX_Data_Devolucao.Text + "</i>", 0)
'IMPRIMINDO A SETIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto(LB_Filme + "<i><sp>1</sp>" + TX_Filme.Text + "</i>",
0)
'IMPRIMINDO A OITAVA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto(LB_Categoria + "<i><sp>1</sp>" + TX_Categoria +
"</i>", 0)
'IMPRIMINDO A NONA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto(LB_Valor + "<i><sp>1</sp>" + TX_Valor +
"</i><sl>2</sl>", 0)
'IMPRIMINDO A DECIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<i><ce><b>" + TX_Mensagem_Promocional +
"</i></ce></b><sl>10</sl>", 0)
If Int_Retorno = 1 Then
MsgBox "Impressao Concluida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If

Exemplo em Delphi 7.0:

1.9.7.5.3 Exemplo DUAL 03 (Tabulaes)

Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetro:
String: com as tabulaes:<tb></tb>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Time-Out, o Usuario no posicionou o Documento dentro do tempo indicado
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
'IMPRIMINDO A PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>FRAB<tb>Ano<tb>Modelo<tb>Valor<tb>Cor", 0)
'IMPRIMINDO A SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>GM<tb>2000<tb>Corsa<tb>12.000<tb>Azul", 0)
'IMPRIMINDO A TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>Ford<tb>2005<tb>Fiesta<tb>14.000<tb>Verde", 0)
'IMPRIMINDO A QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>Fiat<tb>1998<tb>Uno Mille<tb>9.000<tb>Branco",

Daruma Automao

Daruma Framework

186

0)
'IMPRIMINDO A QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>GM<tb>1997<tb>Vectra<tb>18.000<tb>Prata", 0)
'IMPRIMINDO A SEXTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>GM<tb>1999<tb>Tigra<tb>17.000<tb>Verde", 0)
'IMPRIMINDO A SETIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>Ford<tb>2001<tb>Versalhes<tb>5.000<tb>Vinho",
0)
'IMPRIMINDO A OITAVA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>GM<tb>1998<tb>Corsa<tb>10.000<tb>Preto", 0)
'IMPRIMINDO A NONA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>Fiat<tb>1996<tb>Fiurino<tb>6.000<tb>Branca", 0)
'IMPRIMINDO A DECIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>WV<tb>1979<tb>Fusca<tb>3.000<tb>Bordo", 0)
'IMPRIMINDO A DECIMA PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>GM<tb>1996<tb>Vectra<tb>16.000<tb>Grafite", 0)
'IMPRIMINDO A DECIMA SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>Fiat<tb>1985<tb>Fiat147<tb>3.000<tb>Azul", 0)
'IMPRIMINDO A DECIMA TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>Hond<tb>2003<tb>Civic<tb>28.000<tb>Preto", 0)
'IMPRIMINDO A DECIMA QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>Fiat<tb>1999<tb>Palio<tb>12.000<tb>Cinza", 0)
'IMPRIMINDO A DECIMA QUINTA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<tb>GM<tb>2003<tb>Celta<tb>17.000<tb>Branco<sl>7</sl>", 0)
If Int_Retorno = 1 Then
MsgBox "Impressao Concluida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If

Exemplo em Delphi 7.0:

1.9.7.5.4 Exemplo DUAL 04

Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetro:
String: com as tabulaes:<tb></tb>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Time-Out, o Usuario no posicionou o Documento dentro do tempo indicado
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>~</tc><l></l>", 0)
'IMPRIMINDO A PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><e><b>CENTRO DE DANA FLESH</b></e></ce>",
0)
'IMPRIMINDO A SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l></l><tc>~</tc>", 0)
'IMPRIMINDO A TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>Rua: <c>XV de Novembro N 785 Centro CTBA
PR</c>", 0)
'IMPRIMINDO A QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><i>Fone: 234-5678 <tb>Fax:324-5678</i>", 0)

Daruma Automao

187

Daruma Framework

'IMPRIMINDO A QUINTA LINHA


Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>Data: <dt></dt><tb><tb>Hora: <hr></hr>", 0)
'IMPRIMINDO A SEXTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>Pedido:00069<tb><tb>Cliente:00013", 0)
'IMPRIMINDO A STIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><b>Atividades Escolhidas:</b></ce>", 0)
'IMPRIMINDO A OITAVA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>SAMBA<tb>+<tb>BOLERO<tb>+<tb>FORR", 0)
'IMPRIMINDO A NONA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l></l><tb><i><e><b>Valor:
55,00</b></e></i><l></l>", 0)
'IMPRIMINDO A DECIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><c>Vencimento: 10-03-05</c>", 0)
'IMPRIMINDO A DECIMA PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><c>o no pagamento implica no cancelamento da
vaga </c>", 0)
'IMPRIMINDO A DECIMA SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>Incio dia 01 de Fevereiro as 17:30hr", 0)
'IMPRIMINDO A DECIMA TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<l></l><tb>Venha Danar!!!<l></l>", 0)
'IMPRIMINDO A DECIMA QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("
<ce><s><c>Samba,Bolero,Soltinho,Forr,Zouk</c></s></ce>", 0)
'IMPRIMINDO A DECIMA QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad>Obrigado.</ad>", 0)
'IMPRIMINDO A DECIMA SEXTA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<sl></sl><sl></sl><sl></sl><sl></sl><sl></sl><sl></sl><sl></sl>
<sl></sl><sl></sl><sn></sn>", 0)
'IMPRIMINDO A DECIMA STIMA LINHA
If Int_Retorno = 1 Then
MsgBox "Impressao Concluida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If

Exemplo em Delphi 7.0:

1.9.7.5.5 Exemplo DUAL 05

Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetro:
String: com as tabulaes:<tb></tb>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Time-Out, o Usuario no posicionou o Documento dentro do tempo indicado
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_DUAL_ImprimirTexto("<e><ce><s>ESTACIONAMENTO
LAC_PARK<s></ce></e>", 0)
'IMPRIMINDO A PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<n>Endereo:</n><c> A Dr. Teobaldo Freitas Silva Ribas
- N1912</c>", 0)
'IMPRIMINDO A SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<c>Santo Andr - So Paulo - SP - Brasil</c><l></l>", 0)
'IMPRIMINDO A TERCEIRA LINHA

Daruma Automao

Daruma Framework

188

Int_Retorno = Daruma_DUAL_ImprimirTexto("<n>TICKET NMERO:<tb> 0005423</n><l></l>", 0)


'IMPRIMINDO A QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><b>Entrada:<tb><dt></dt><tb><hr></hr></b>",
0)
'IMPRIMINDO A QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>_</tc><l></l>", 0)
'IMPRIMINDO A SEXTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><i>MARCA: Fiat<tb><tb>MODELO:
Stilo</i><l></l>", 0)
'IMPRIMINDO A SETIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><i>PLACA: ANA-1069<tb>COR:
Vermelho</i><l></l>", 0)
'IMPRIMINDO A OITAVA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>_</tc><l></l>", 0)
'IMPRIMINDO A DECIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad><n>R$ 2,00 Hora</n></ad>", 0)
'IMPRIMINDO A DECIMA PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad><n>R$ 0,50 Cada 15 Minutos</n></ad>", 0)
'IMPRIMINDO A DECIMA SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><c><s><b>No nos Responsabilizamos Por Objetos
de Valor</b></s></c>", 0)
'IMPRIMINDO A DECIMA TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><c><s><b>Deixados no Interior do
Veculo</b></s></c><l></l>", 0)
'IMPRIMINDO A DECIMA QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><e><b>OBRIGADO</b></e></ce>", 0)
'IMPRIMINDO A DECIMA QUINTA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<sl></sl><sl></sl><sl></sl><sl></sl><sl></sl><sl></sl>", 0)
If Int_Retorno = 1 Then
MsgBox "Impressao Concluida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If

Exemplo em Delphi 7.0:

1.9.7.5.6 Exemplo DUAL 06

Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetro:
String: com as tabulaes:<tb></tb>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Time-Out, o Usuario no posicionou o Documento dentro do tempo indicado
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>_</tc>", 0)
'IMPRIMINDO A PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><e>VENDA - A VISTA</e></ce>", 0)
'IMPRIMINDO A SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>_</tc>", 0)
'IMPRIMINDO A TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><n>Cliente...: 000001 - CONSUMIDOR</n>", 0)
'IMPRIMINDO A QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><n>Vendedor...:</n> <e>00069 - ANDREA </e>",

Daruma Automao

189

Daruma Framework

0)
'IMPRIMINDO A QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><n>Contrato...:</n> <e>02195 -</e><n>
Data:<dt></dt></n>", 0)
'IMPRIMINDO A SEXTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>_</tc>", 0)
'IMPRIMINDO A SETIMA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("CDIGO<sp>3</sp>DESCRIO<sp>3</sp>QT<sp>6</sp>UNIT<sp>8
</sp>TOTAL", 0)
'IMPRIMINDO A OITAVA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>_</tc>", 0)
'IMPRIMINDO A DECIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("06540<tb>TENIS
REEF<sp>2</sp>1<tb>149,90<sp>6</sp>149,90", 0)
'IMPRIMINDO A DECIMA PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("05874<tb>MEIA ESTAM<sp>2</sp>6<tb>
2,90<sp>7</sp>17,40", 0)
'IMPRIMINDO A DECIMA SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("05874<tb>BLUSAO ADU<sp>2</sp>1<tb>
49,00<sp>7</sp>49,00", 0)
'IMPRIMINDO A DECIMA TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("05874<tb>CUECA SORT<sp>2</sp>2<tb>
4,90<sp>8</sp>9,80", 0)
'IMPRIMINDO A DECIMA QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("05874<tb>TOALHA MES<sp>2</sp>3<tb>
9,90<sp>7</sp>29,70 ", 0)
'IMPRIMINDO A DECIMA QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>_</tc>", 0)
'IMPRIMINDO A DECIMA SEXTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad>DESCONTOS: - 12,80</ad>", 0)
'IMPRIMINDO A DECIMA SETIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>_</tc>", 0)
'IMPRIMINDO A DECIMA OITAVA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<e>TOTAL VENDA...:<sp>2</sp>243,00</e>", 0)
'IMPRIMINDO A DECIMA NONA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>_</tc>", 0)
'IMPRIMINDO A VIGSIMA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<sl></sl><sl></sl><sl></sl><sl></sl><sl></sl><sl></sl>", 0)
'IMPRIMINDO A VIGSIMA PRIMEIRA LINHA
If Int_Retorno = 1 Then
MsgBox "Impressao Concluida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If

Exemplo em Delphi 7.0:

1.9.7.5.7 Exemplo DUAL 07

Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetro:
String: com as tabulaes:<tb></tb>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Time-Out, o Usuario no posicionou o Documento dentro do tempo indicado
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.

Daruma Automao

Daruma Framework

190

Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>#</tc>", 0)
'IMPRIMINDO A PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<e><ce>ACADEMIA NEW SPORTS</ce></e>", 0)
'IMPRIMINDO A SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><i>Rua Nossa Senhora da Luz</i>, 350", 0)
'IMPRIMINDO A TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><i>Jardim Social - Curitiba - PR</i>", 0)
'IMPRIMINDO A QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb>CNPJ 04.888.968/0001-79<tb><e>2345678<l></l></e>", 0)
'IMPRIMINDO A QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>#</tc><l></l>", 0)
'IMPRIMINDO A SEXTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<i><dt></dt><i>", 0)
'IMPRIMINDO A STIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad>Recibo nr.258963</ad><l></l>", 0)
'IMPRIMINDO A OITAVA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<c>Nome : </c><b>ELAINE
MARIA</b><sp>5</sp>(545)<l></l> ", 0)
'IMPRIMINDO A NONA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<c>Plano : </c><b>MUSCULAO
NOTURNO</b><sp>5</sp>(5)<l></l> ", 0)
'IMPRIMINDO A DECIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><e>VALOR PAGO : 45,00</e></ce> ", 0)
'IMPRIMINDO A DECIMA PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<c>Ref. ao perodo de 03/04/2005 at
03/05/2005</c><l></l>", 0)
'IMPRIMINDO A DECIMA SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<c>Obs: MENSALIDADE</c><l></l>", 0)
'IMPRIMINDO A DECIMA TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>_</tc><l></l>", 0)
'IMPRIMINDO A DECIMA QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><e>WWW.ACADEMIANEW.COM.BR</e></ce>", 0)
'IMPRIMINDO A DECIMA QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tc>_</tc><l></l>", 0)
'IMPRIMINDO A DECIMA SEXTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><e>SAUDE BELEZA E BEM ESTAR</e></ce>", 0)
'IMPRIMINDO A DECIMA STIMA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<sl></sl><sl></sl><sl></sl><sl></sl><sl></sl><sl></sl><sl></sl>
<sl></sl><sn></sn>", 0)
'IMPRIMINDO A DECIMA OITAVA LINHA
If Int_Retorno = 1 Then
MsgBox "Impressao Concluida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If

Exemplo em Delphi 7.0:

1.9.7.5.8 Exemplo DUAL 08

Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetro:
String: com as tabulaes:<tb></tb>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Time-Out, o Usuario no posicionou o Documento dentro do tempo indicado
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico

Daruma Automao

191

Daruma Framework

-50: Impressora OFF-Line


-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno =
Daruma_DUAL_ImprimirTexto("________________________________________________", 0)
'IMPRIMINDO A PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("|<sp>5</sp><e><s>CASA ASHFAQ
AHMED</s></e><sp>6</sp>|", 0)
'IMPRIMINDO A SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("|<c>Nota de : </c> <e>VENDAS</e><sp>24</sp>|", 0)
'IMPRIMINDO A TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("|<c>Nmero : </c> <e>032165</e><sp>24</sp>|", 0)
'IMPRIMINDO A QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("|<c>Vendedor: </c> <e>ZORAIDE</e><sp>22</sp>|",
0)
'IMPRIMINDO A QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("------------------------------------------------", 0)
'IMPRIMINDO A SEXTA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("|<sp>2</sp><b>CDIGO<sp>4</sp>|<sp>2</sp>DESCRIO<sp>8
</sp>| VALOR</b>
|", 0)
'IMPRIMINDO A STIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("------------------------------------------------", 0)
'IMPRIMINDO A OITAVA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("|<sp>2</sp><b>00074185<sp>2</sp>|<sp>2</sp>DVD PANALS345<sp>3</sp>|<sp>2</sp>499,00</b><sp>4</sp>|", 0)
'IMPRIMINDO A NONA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("------------------------------------------------", 0)
'IMPRIMINDO A DECIMA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("|<sp>2</sp><b>000963256<sp>1</sp>|<sp>2</sp>CALCUL<sp>3</
sp>HP49GX<sp>2</sp>|<sp>2</sp>859,00</b><sp>4</sp>|", 0)
'IMPRIMINDO A DECIMA PEIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("------------------------------------------------", 0)
'IMPRIMINDO A DECIMA SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("|<sp>2</sp><b>00258852<sp>2</sp>|<sp>2</sp>TV
TOSHI0<sp>2</sp>48P<sp>3</sp>|4,480,00</b><sp>4</sp>|", 0)
'IMPRIMINDO A DECIMA TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("------------------------------------------------", 0)
'IMPRIMINDO A DECIMA QUARTA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("|<sp>2</sp><b>000789654<sp>1</sp>|<sp>2</sp>SONY
T68i<sp>8</sp>|<sp>2</sp>659,00</b><sp>4</sp>|", 0)
'IMPRIMINDO A DECIMA QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("------------------------------------------------", 0)
'IMPRIMINDO A DECIMA SEXTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("|<sp>45</sp>|", 0)
'IMPRIMINDO A DECIMA STIMA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("|<e><sp>3</sp>TOTAL<sp>3</sp>5,727,00</e><sp>7</sp>|", 0)
'IMPRIMINDO A DECIMA OITAVA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("|<sp>45</sp>|", 0)
'IMPRIMINDO A DECIMA NONA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("------------------------------------------------", 0)
'IMPRIMINDO A VIGSIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("|<sp>18</sp>CONFIRA SUAS
MERCADORIAS<sp>3</sp>|", 0)
'IMPRIMINDO A VIGSIMA PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("|<sp>5</sp>NO ACEITAMOS RECLAMAES
POSTERIORES<sp>3</sp>|", 0)
'IMPRIMINDO A VIGSIMA SEGUNDA LINHA

Daruma Automao

Daruma Framework

192

Int_Retorno = Daruma_DUAL_ImprimirTexto("------------------------------------------------", 0)
'IMPRIMINDO A VIGSIMA TERCEIRA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<sl></sl><sl></sl><sl></sl><sl></sl><sl></sl><sl></sl>", 0)
'IMPRIMINDO A VIGSIMA QUARTA LINHA
If Int_Retorno = 1 Then
MsgBox "Impressao Concluida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If

Exemplo em Delphi 7.0:

1.9.7.5.9 Exemplo DUAL 09

Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetro:
String: com as tabulaes:<tb></tb>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Time-Out, o Usuario no posicionou o Documento dentro do tempo indicado
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><e><s>R E C I B O</s></e></ce>", 0)
'IMPRIMINDO A PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>32</sp><c>1 VIA</c>", 0)
'IMPRIMINDO A SEGUNDA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<e><sp>1</sp>INFO<sp>2</sp>XV</e><sp>14</sp><c>VENCIMENT
O:<c><dt></dt>", 0)
'IMPRIMINDO A TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<sp>32</sp><c>NMERO: 00654</c>", 0)
'IMPRIMINDO A QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<i><b>C o n t r o l e d e A l u g u e l</b></i>", 0)
'IMPRIMINDO A QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("------------------------------------------------", 0)
'IMPRIMINDO A SEXTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b>INQUILINO<sp>4</sp>..:</b> Jos Maria ", 0)
'IMPRIMINDO A STIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b>FIADOR<sp>7</sp>..:</b> Roberto Carlos ", 0)
'IMPRIMINDO A OITAVA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b>IMVEL LOCADO..:</b> AV. Almirante Sab N 258 ",
0)
'IMPRIMINDO A NONA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b>VALOR<sp>8</sp>..:</b> 455,00 ", 0)
'IMPRIMINDO A DECIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("-----------------------------------------------<l></l><l></l>", 0)
'IMPRIMINDO A DECIMA PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad>Ass:-----------------------------</ad>", 0)
'IMPRIMINDO A DECIMA SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><c>NOTA PARA SIMPLES CONFERNCIA</c>", 0)
'IMPRIMINDO A DECIMA TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><c>SEM VALOR FISCAL</c>", 0)
'IMPRIMINDO A DECIMA QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><i>FECHA..:<sp>2</sp><dt></dt><hr></hr>

Daruma Automao

193

Daruma Framework

</i>", 0)
'IMPRIMINDO A DECIMA QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("------------------------------------------------", 0)
'IMPRIMINDO A DECIMA SEXTA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<sl></sl><sl></sl><sl></sl><sl></sl><sl></sl><sl></sl><sl></sl>"
, 0)
'IMPRIMINDO A DECIMA STIMA LINHA
If Int_Retorno = 1 Then
MsgBox "Impressao Concluida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If

Exemplo em Delphi 7.0:

1.9.7.5.10 Exemplo DUAL 10

Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetro:
String: com as tabulaes:<tb></tb>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
0: Time-Out, o Usuario no posicionou o Documento dentro do tempo indicado
1: OK, Sucesso ao enviar o mtodo
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: ECF Inicializando.
-53: Erro de Impresso.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><e><s>Consultrio Mdico
</s></e></ce><l></l>", 0)
'IMPRIMINDO A PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<c>MDICO<sp>3</sp>__:</c><sp>2</sp>DR. Av
Frana", 0)
'IMPRIMINDO A SEGUNDA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<c>REGISTRO __:</c><sp>2</sp>321654", 0)
'IMPRIMINDO A TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<c>END. CONS__:</c><sp>2</sp>Rua Hugo Boos N
98, Centro CTBA PR", 0)
'IMPRIMINDO A QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("------------------------------------------------", 0)
'IMPRIMINDO A QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i>REGISTRO DE CONSULTAS</i></b>", 0)
'IMPRIMINDO A SEXTA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<tb><c>PACIENTE<sp>5</sp>__:</c><sp>2</sp>Maria de Lurdes",
0)
'IMPRIMINDO A STIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><c>DATA
CONSULTA__:<sp>1</sp>02/02/08</c><sp>7</sp>(orto)", 0)
'IMPRIMINDO A OITAVA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<tb><c>HORA CONSULTA__:<sp>1</sp>16:20:00</c>",
0)
'IMPRIMINDO A NONA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i>TOLERNCIA DE ATRASO</i></b><l></l>", 0)
'IMPRIMINDO A DECIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad>15 Minutos </ad>", 0)
'IMPRIMINDO A DECIMA PRIMEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i>DESISTNCIA</i></b>", 0)

Daruma Automao

Daruma Framework

194

'IMPRIMINDO A DECIMA SEGUNDA LINHA


Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad>Avisar com 24 Horas de Antesedncia</ad>", 0)
'IMPRIMINDO A DECIMA TERCEIRA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i>OBSERVAO</i></b>", 0)
'IMPRIMINDO A DECIMA QUARTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ad>Raio X e Outros Exames no Esto Inclusos</ad>",
0)
'IMPRIMINDO A DECIMA QUINTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<b><i>DATA HOJE</i></b>", 0)
'IMPRIMINDO A DECIMA SEXTA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce><dt></dt><sp>3</sp><hr></hr></ce>", 0)
'IMPRIMINDO A DECIMA STIMA LINHA
Int_Retorno = Daruma_DUAL_ImprimirTexto("------------------------------------------------", 0)
'IMPRIMINDO A DECIMA OITAVA LINHA
Int_Retorno =
Daruma_DUAL_ImprimirTexto("<sl></sl><sl></sl><sl></sl><sl></sl><sl></sl><sl></sl><sl></sl>
<sl></sl><sn></sn>", 0)
'IMPRIMINDO A DECIMA NONA LINHA
If Int_Retorno = 1 Then
MsgBox "Impressao Concluida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If

Exemplo em Delphi 7.0:

1.9.8

Mtodos para a DUAL de Configurao do Registry

1.9.8.1

Daruma_Registry_DUAL_Enter (ndice 30)


Definio do Mtodo:
Permite Configurar se Cada vez que a Impressora, efetuar a Impresso de uma Linha ela ir Quebrar a
Linha automaticamente.
Parmetro:
0 - No Quebra Linha Automaticamente
1 - Quebra Linha Automaticamente
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Obervao:
Valor Defult da Chave = "1"
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_DUAL_Enter("1")

1.9.8.2

Exemplo em Delphi 7.0:

Daruma_Registry_DUAL_Espera (ndice 32)


Definio do Mtodo:
Permite Sincronizar a dll com o Aplicativo:
Se voce deseja que a DLL segura 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 dll Ir retornar para o Aplicativo, porm o ECF ainda estar Imprimindo.

Daruma Automao

195

Daruma Framework

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


1: Espera Impressao Terminar para receber o Valor de Retorno da Funcao de Impressao da DLL
0: No espera
Obervao:
Valor Defult da Chave = "0"
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_DUAL_Espera("1")

1.9.8.3

Exemplo em Delphi 7.0:

Daruma_Registry_DUAL_ModoEscrita (ndice 33)


Definio do Mtodo:
Permite Configurar qual o modo de escrita da dll na porta PARALELA. Este modo s funcional do CASO
de se utilizar a porta Paralela.
Com este Mtodo voc poder configurar qual o Modo de escrita que ser praticado.
1 - Escrita DIRETO na PORTA de Comunicao Utilizando-se do HWINTERFACE.SYS
0 - Escrita sem Utilizar-se do HWINTERFACE.SYS
Ao optar pelo Modo de Escrita 1(um) , em sistema operacionais como XP, NP e 2000 voc ter acesso a
funes como:
- VerificaDocumento.
- Status da Impressora.
Porm poder realizar todas as operaes de impresso sem problemas.
Observao Importante!!!
SE VOC CONFIGUROU ESTA CHAVE PARA 1(UM) DEVER ENTO PROCEDER OS PASSOS DE
INSTALAO DO ARQUIVO HWINTERFACE.SYS. PARA ISSO VEJA O LINK:
Trabalhando com a DUAL NA PARALELA (LPT1, LPT2)

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


1: OK, Sucesso ao Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Obervao:
Valor Defult da Chave = "0"
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_DUAL_ModoEscrita("1")

1.9.8.4

Exemplo em Delphi 7.0:

Daruma_Registry_DUAL_Porta (ndice 31)


Definio do Mtodo:
Configura a porta de Comunicao que a DUAL ir Utilizar para se Comunicar
Parmetro:
String com o Valor da Porta
"LPT1"

Daruma Automao

Daruma Framework

196

"LPT2"
"COM1"
"COM2"
"COM3"
"COM4"
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Observeo:
Valor Defult da Chave = "LPT1"
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Porta As String
Str_Porta = InputBox("Entre com o Nome da Porta onde est a Impressora:", "Daruma Framework",
"Lpt1")
If Str_Porta = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_DUAL_Porta(Str_Porta)

1.9.8.5

Exemplo em Delphi 7.0:

Daruma_Registry_DUAL_Tabulacao (ndice 31)


Definio do Mtodo:
Formata as tabulaes que sero utilizadas na DUAL.
Parmetro:
String com as tabulaes: 05,10,15,20,25,35
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Tabulacao As String
Str_Tabulacao = InputBox("Entre com o Desejada:", "Daruma Framework", "05,10,15,20,25,35")
If Str_Tabulacao = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_DUAL_Tabulacao(Str_Tabulacao)
If Int_Retorno = 1 Then
MsgBox "Programacao feita com Sucesso!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
Exit Sub
End If

Daruma Automao

Exemplo em Delphi 7.0:

197

1.10

Daruma Framework

Mtodos para o TA1000

1.10.1 Mtodos para Produtos


1.10.1.1 Daruma_TA1000_CadastrarProdutos(ndice 5420)
Definio do Mtodo:
Permite o cadastrar produtos no TA1000.
Parmetros do Mtodo So 13(treze ao todo):
1.
Descrio: String at 25 carcteres com a descrio do produto.
2.
Cdigo: String com at 13 carcteres com cdigo do produto.
3.
Casas Decimais do Preo: String com apenas o carctere.
4.
Casas Decimais da Quantidade: Strig com dois carcteres.
5.
Preo do Produto: String com at 8 dgitos para o preo do tem.
6.
Desconto ou Acrscimo: String "A" para Acrscimo e "D" para Desconto.
7.
ValorDesconto ou Acrscimo: String com 5 dgitos para desconto ou Acrscimo.
8.
Unidade de Medida: String com 2 dgitos.
9.
Alquota: String com o ndice da alquota.
10. Proximo Produto: String com 5 dgitos.
11. Produto Anterior: String com 5 dgitos..
12. Estoque: String com 8 dgitos para o estoque.

Este Mtodo retornar um dos Valores Inteiros listados Abaixo:


1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Para que esse Metodo seja validado no TA1000, voce precisa chamar o metodo
Daruma_TA1000_EnviarBancoProdutos.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Descricao As String
Dim Str_Codigo As String
Dim Str_Decimais_Preco As String
Dim Str_Decimais_Quantidade As String
Dim Str_Preco As String
Dim Str_Desconto_Acrescimo As String
Dim Str_Valor_Desconto_Acrescimo As String
Dim Str_Unidade_Medida As String
Dim Str_Aliquota As String
Dim Str_Proximo_Produto As String
Dim Str_Produto_Anterior As String
Dim Str_Estoque As String
Str_Descricao = "Maca"
Str_Codigo = "0001"
Str_Decimais_Preco = "02"
Str_Decimais_Quantidade = "02"
Str_Preco = "1,00"
Str_Desconto_Acrescimo = "A"
Str_Valor_Desconto_Acrescimo = "0,10"
Str_Unidade_Medida = "UN"
Str_Aliquota = "TA"
Str_Proximo_Produto = "00000"
Str_Produto_Anterior = "00000"
Str_Estoque = "00010000"

Daruma Automao

Daruma Framework

198

Int_Retorno = Daruma_TA1000_CadastrarProdutos(Str_Descricao, Str_Codigo, Str_Decimais_Preco, _


Str_Decimais_Quantidade, Str_Preco, Str_Desconto_Acrescimo, Str_Valor_Desconto_Acrescimo, _
Str_Unidade_Medida, Str_Aliquota, Str_Proximo_Produto, Str_Produto_Anterior, Str_Estoque)
Exemplo em Delphi 7.0:
var
Str_Descricao: String;
Str_Codigo: String;
Str_Decimais_Preco: String;
Str_Decimais_Quantidade: String;
Str_Preco: String;
Str_Desconto_Acrescimo: String;
Str_Valor_Desconto_Acrescimo: String;
Str_Unidade_Medida: String;
Str_Aliquota: String;
Str_Proximo_Produto: String;
Str_Produto_Anterior: String;
Str_Estoque: String;
begin
Str_Descricao:= 'Maca';
Str_Codigo:= '0001';
Str_Decimais_Preco:= '02';
Str_Decimais_Quantidade:= '02';
Str_Preco:= '1,00';
Str_Desconto_Acrescimo:= 'A';
Str_Valor_Desconto_Acrescimo:= '0,10';
Str_Unidade_Medida:= 'UN';
Str_Aliquota:= ''TA;
Str_Proximo_Produto:= '00000';
Str_Produto_Anterior:= '00000';
Str_Estoque:= '00010000';
Int_Retorno:= Daruma_TA1000_CadastrarProdutos(pchar(Str_Descricao), pchar(Str_Codigo),
pchar(Str_Decimais_Preco), pchar(Str_Decimais_Quantidade), pchar(Str_Preco),
pchar(Str_Desconto_Acrescimo), pchar(Str_Valor_Desconto_Acrescimo), pchar(Str_Unidade_Medida),
pchar(Str_Aliquota), pchar(Str_Proximo_Produto), pchar(Str_Produto_Anterior), pchar(Str_Estoque));
end;

1.10.1.2 Daruma_TA1000_ConsultarProdutos(ndice 5440)


Definio do Mtodo:
Permite o consultar produtos no TA1000.
Parmetros do Mtodo:
1.
Cdigo a ser consultado: String com at 13 carcteres contendo o cdigo do produto.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observao do Mtodo:
Basta voc passar o cdigo do produto a ser consultado e no mais alocar espaos para receber os dados
do produto.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Codigo As String
Dim Str_Descricao As String
Dim Str_Decimais_Preco As String
Dim Str_Decimais_Quantidade As String

Daruma Automao

199

Daruma Framework

Dim
Dim
Dim
Dim
Dim
Dim
Dim
Dim

Str_Preco As String
Str_Desconto_Acrescimo As String
Str_Valor_Desconto_Acrescimo As String
Str_Unidade_Medida As String
Str_Aliquota As String
Str_Proximo_Produto As String
Str_Produto_Anterior As String
Str_Estoque As String

Str_Codigo = "0001"
Str_Descricao = Space(25)
Str_Decimais_Preco = Space(1)
Str_Decimais_Quantidade = Space(2)
Str_Preco = Space(8)
Str_Desconto_Acrescimo = Space(2)
Str_Valor_Desconto_Acrescimo = Space(5)
Str_Unidade_Medida = Space(2)
Str_Aliquota = Space(3)
Str_Proximo_Produto = Space(5)
Str_Produto_Anterior = Space(5)
Str_Estoque = Space(8)
Int_Retorno = Daruma_TA1000_ConsultarProdutos(Str_Codigo, Str_Descricao, Str_Decimais_Preco, _
Str_Decimais_Quantidade, Str_Preco, Str_Desconto_Acrescimo, _
Str_Valor_Desconto_Acrescimo, Str_Unidade_Medida, Str_Aliquota, _
Str_Proximo_Produto, Str_Produto_Anterior, Str_Estoque)
Exemplo em Delphi 7.0:
var
Str_Descricao: String;
Str_Codigo: String;
Str_Decimais_Preco: String;
Str_Decimais_Quantidade: String;
Str_Preco: String;
Str_Desconto_Acrescimo: String;
Str_Valor_Desconto_Acrescimo: String;
Str_Unidade_Medida: String;
Str_Aliquota: String;
Str_Proximo_Produto: String;
Str_Produto_Anterior: String;
Str_Estoque: String;
begin
Str_Codigo:= Trim(TX_Codigo.Text);
SetLength (Str_Descricao,25);
SetLength (Str_Decimais_Preco,1);
SetLength (Str_Decimais_Quantidade,2);
SetLength (Str_Preco,8);
SetLength (Str_Desconto_Acrescimo,2);
SetLength (Str_Valor_Desconto_Acrescimo,5);
SetLength (Str_Unidade_Medida,2);
SetLength (Str_Aliquota,3);
SetLength (Str_Proximo_Produto,5);
SetLength (Str_Produto_Anterior,5);
SetLength (Str_Estoque,10);
Int_Retorno:= Daruma_TA1000_ConsultarProdutos(pchar(Str_Codigo), Str_Descricao,
Str_Decimais_Preco, Str_Decimais_Quantidade, Str_Preco, Str_Desconto_Acrescimo,
Str_Valor_Desconto_Acrescimo, Str_Unidade_Medida, Str_Aliquota, Str_Proximo_Produto,
Str_Produto_Anterior, Str_Estoque);
TX_Descricao.Text:= pchar(Str_Descricao);
TX_Decimais_Preco.Text:= pchar(Str_Decimais_Preco);
TX_Decimais_Quantidade.Text:= pchar(Str_Decimais_Quantidade);
TX_Preco.Text:= pchar(Str_Preco);
TX_Desconto_Acrescimo.Text:= pchar(Str_Desconto_Acrescimo);

Daruma Automao

Daruma Framework

200

TX_Valor_Desconto_Acrescimo.Text:= pchar(Str_Valor_Desconto_Acrescimo);
TX_Unidade_Medida.Text:= pchar(Str_Unidade_Medida);
TX_Aliquota.Text:= pchar(Str_Aliquota);
TX_Proximo_Produto.Text:= pchar(Str_Proximo_Produto);
TX_Produto_Anterior.Text:= pchar(Str_Produto_Anterior);
TX_Estoque.Text:= pchar(Str_Estoque);
end;

1.10.1.3 Daruma_TA1000_AlterarProdutos(ndice 5410)


Definio do Mtodo:
Permite alterar um determinado produto no TA1000.
Parmetros do Mtodo:
1. Cdigo: String com at 13 carcteres contendo o cdigo do produto a ser alterado.
2. Descrio: String at 25 carcteres com a descrio do produto.
3. Cdigo: String com at 13 carcteres contendo o cdigo do produto.
4. Casas Decimais do Preo: Strig com apenas o carctere.
5. Casas Decimais da Quantidade: Strig com dois carcteres.
6. Preo do Produto: String com at 8 dgitos para o preo do tem.
7. Desconto ou Acrscimo: String "A" para Acrscimo e "D" para Desconto.
8. ValorDesconto ou Acrscimo: String com 5 dgitos para desconto ou Acrscimo.
9. Unidade de Medida: String com 2 dgitos.
10. Alquota: String com o ndice da alquota.
11. Proximo Produto: String com 5 dgitos.
12. Produto Anterior: String com 5 dgitos..
13. Estoque: String com 8 dgitos para o estoque.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Para que esse Metodo seja validado no TA1000, voce precisa chamar o metodo
Daruma_TA1000_EnviarBancoProdutos.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Codigo_Consultar As String
Dim Str_Descricao As String
Dim Str_Codigo As String
Dim Str_Decimais_Preco As String
Dim Str_Decimais_Quantidade As String
Dim Str_Preco As String
Dim Str_Desconto_Acrescimo As String
Dim Str_Valor_Desconto_Acrescimo As String
Dim Str_Unidade_Medida As String
Dim Str_Aliquota As String
Dim Str_Proximo_Produto As String
Dim Str_Produto_Anterior As String
Dim Str_Estoque As String
Str_Codigo_Consultar = "0001"
Str_Descricao = "Maca"
Str_Codigo = "0001"
Str_Decimais_Preco ="2"
Str_Decimais_Quantidade = "2"
Str_Preco = "1,00"
Str_Desconto_Acrescimo = "A"
Str_Valor_Desconto_Acrescimo = "0,10"
Str_Unidade_Medida = "UN"
Str_Aliquota = "TA"

Daruma Automao

201

Daruma Framework

Str_Proximo_Produto = "00000"
Str_Produto_Anterior = "00000"
Str_Estoque = "00000100"
Int_Retorno = Daruma_TA1000_AlterarProdutos(Str_Codigo_Consultar, Str_Descricao, Str_Codigo,
Str_Decimais_Preco, _
Str_Decimais_Quantidade, Str_Preco, Str_Desconto_Acrescimo, Str_Valor_Desconto_Acrescimo, _
Str_Unidade_Medida, Str_Aliquota, Str_Proximo_Produto, Str_Produto_Anterior, Str_Estoque)
Exemplo em Delphi 7.0:
var
Str_Codigo_Consultar: String;
Str_Descricao: String;
Str_Codigo: String;
Str_Decimais_Preco: String;
Str_Decimais_Quantidade: String;
Str_Preco: String;
Str_Desconto_Acrescimo: String;
Str_Valor_Desconto_Acrescimo: String;
Str_Unidade_Medida: String;
Str_Aliquota: String;
Str_Proximo_Produto: String;
Str_Produto_Anterior: String;
Str_Estoque: String;
begin
Framework_TA1000_AterarProdutos.Refresh;
Str_Codigo_Consultar:= TX_Codigo_Consultar.Text;
Str_Descricao:= TX_Descricao.Text;
Str_Codigo:= TX_Codigo.Text;
Str_Decimais_Preco:= TX_Decimais_Preco.Text;
Str_Decimais_Quantidade:= TX_Decimais_Quantidade.Text;
Str_Preco:= TX_Preco.Text;
Str_Desconto_Acrescimo:= TX_Desconto_Acrescimo.Text;
Str_Valor_Desconto_Acrescimo:= TX_Valor_Desconto_Acrescimo.Text;
Str_Unidade_Medida:= TX_Unidade_Medida.Text;
Str_Aliquota:= TX_Aliquota.Text;
Str_Proximo_Produto:= TX_Proximo_Produto.Text;
Str_Produto_Anterior:= TX_Produto_Anterior.Text;
Str_Estoque:= TX_Estoque.Text;
Int_Retorno:= Daruma_TA1000_AlterarProdutos(pchar(Str_Codigo_Consultar), pchar(Str_Descricao),
pchar(Str_Codigo), pchar(Str_Decimais_Preco), pchar(Str_Decimais_Quantidade), pchar(Str_Preco),
pchar(Str_Desconto_Acrescimo), pchar(Str_Valor_Desconto_Acrescimo), pchar(Str_Unidade_Medida),
pchar(Str_Aliquota), pchar(Str_Proximo_Produto), pchar(Str_Produto_Anterior), pchar(Str_Estoque));
end;

1.10.1.4 Daruma_TA1000_EliminarProdutos(ndice 5430)


Definio do Mtodo:
Permite eliminar um determinado produto no TA1000.
Parmetros do Mtodo:
1. Cdigo: String com at 13 carcteres contendo o cdigo do produto a ser eliminado.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Para que esse Metodo seja validado no TA1000, voce precisa chamar o metodo
Daruma_TA1000_EnviarBancoProdutos.

Daruma Automao

Daruma Framework

202

Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Codigo As String
Str_Codigo = InputBox("Entre com o Codigo do Produto que voce deseja Eliminar:", "Daruma
Framework", "0001")
Int_Retorno = Daruma_TA1000_EliminarProdutos(Str_Codigo)
Exemplo em Delphi 7.0:
var
Str_Codigo: String;
begin
Str_Codigo:= InputBox('Daruma Framework' , 'Entre com o Cdigo do Produto que Voc Deseja
Eliminar:','0001');
If Str_Codigo = '' then
begin
exit;
end;
int_Retorno:= Daruma_TA1000_EliminarProdutos(pchar(Str_Codigo));
end;

1.10.1.5 Daruma_TA1000_EnviarBancoProdutos(ndice 5350)


Definio do Mtodo:
Permite enviar os produtos para o TA1000.
Parmetros do Mtodo:
No H.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Int_Status As Integer
Int_Retorno = Daruma_TA1000_EnviarBancoProdutos()
Daruma_Framework_TA1000_Progress.Show
Int_Status = 0
Do While (Int_Status <> 100)
Int_Status = Daruma_TA1000_LeStatusTransferencia()
Daruma_Framework_TA1000_Progress.PB_TA1000.Value = Int_Status
Loop
Retorno_TA1000
Unload Daruma_Framework_TA1000_Progress
Exemplo em Delphi 7.0:
var
Int_Status: Integer;
begin
Int_Retorno:= Daruma_TA1000_EnviarBancoProdutos();
Framework_TA1000_Progress.Show;
Int_Status:= 0;
While (Int_Status <> 100) do
begin
Int_Status:= Daruma_TA1000_LeStatusTransferencia();
Framework_TA1000_Progress.PB_TA1000.Position:= Int_Status;
end;
Retorno_TA1000;

Daruma Automao

203

Daruma Framework

Framework_TA1000_Progress.Close;
end;

1.10.1.6 Daruma_TA1000_ReceberBancoProdutos(ndice 5360)


Definio do Mtodo:
Permite receber os produtos cadastrados no TA1000.
Parmetros do Mtodo:
No H.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Este metodo retornara os produtos em um arquivo TXTcomo nome de Produtos.plu, em um path indicado
no registry.
O Path default e C:\
O formato do arquivo de retorno pode ser visto abaixo:
Header v1.46 PRODUTOS
;00001;00001;00001;bjcpcxfcgfjgkgltmcmtpcptscttunvd
Produto Numero1
;1
;2;2;00000100;-00000;un;TA;000;00002;00100;00000001
Produto Numero2
;2
;2;2;00000200;-00000;un;TA;000;00003;00001;00000002
Produto Numero3
;3
;2;2;00000300;-00000;un;TA;000;00004;00002;00000003
Produto Numero4
;4
;2;2;00000400;-00000;un;TA;000;00005;00003;00000004
Produto Numero5
;5
;2;2;00000500;-00000;un;TA;000;00006;00004;00000005
Produto Numero6
;6
;2;2;00000600;-00000;un;TA;000;00007;00005;00000006
Produto Numero7
;7
;2;2;00000700;-00000;un;TA;000;00008;00006;00000007
Produto Numero8
;8
;2;2;00000800;-00000;un;TA;000;00009;00007;00000008
Produto Numero9
;9
;2;2;00000900;-00000;un;TA;000;00010;00008;00000009
Produto Numero10
;10
;2;2;00001000;-00000;un;TA;000;00011;00009;00000010
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Int_Status As Integer
Int_Retorno = Daruma_TA1000_ReceberBancoProdutos()
Daruma_Framework_TA1000_Progress.Show
Int_Status = 0
Do While (Int_Status <> 100)
Int_Status = Daruma_TA1000_LeStatusTransferencia()
Daruma_Framework_TA1000_Progress.PB_TA1000.Value = Int_Status
Loop
Retorno_TA1000
Unload Daruma_Framework_TA1000_Progress
Exemplo em Delphi 7.0:
var
Int_Status: Integer;
begin
Int_Retorno:= Daruma_TA1000_ReceberBancoProdutos();
Framework_TA1000_Progress.Show;
Int_Status:= 0;
While (Int_Status <> 100) Do
begin
Int_Status:= Daruma_TA1000_LeStatusTransferencia();
Framework_TA1000_Progress.PB_TA1000.Position:= Int_Status;
end;
Framework_TA1000_Progress.Close;

Daruma Automao

Daruma Framework

204

1.10.1.7 Daruma_TA1000_ReceberProdutosVendidos(ndice 5363)


Definio do Mtodo:
Permite receber os produtos vendidos no TA1000.
Parmetros do Mtodo:
No H.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
1. Este metodo retornara os produtos em um arquivo TXTcom nome de ProdutosVendidos.plu, em um
path indicado no registry.
2. O Path default e C:\
O formato do arquivo de retorno pode ser visto abaixo:
Header PRODUTOS VENDIDOS ;00001;00001;00001;
A1200b1800c1200d1500E////F////G////H////I////J////K////L////M////N////O////P////
Produto Numero1
;1
;2;2;00000100;00000;un;TA;000;00002;00010;00009900;0000001000;0000001000;0000001000;
Produto Numero2
;2
;2;2;00000200;00000;un;TA;000;00003;00001;00009900;0000001000;0000001000;0000001000;
Produto Numero3
;3
;2;2;00000300;00000;un;TA;000;00004;00002;00009800;0000002000;0000002000;0000002000;
Produto Numero4
;4
;2;2;00000400;00000;un;TA;000;00005;00003;00009900;0000001000;0000001000;0000001000;
Produto Numero5
;5
;2;2;00000500;00000;un;TA;000;00006;00004;00009900;0000001000;0000001000;0000001000;
Produto Numero6
;6
;2;2;00000600;00000;un;TA;000;00007;00005;00009900;0000001000;0000001000;0000001000;
Produto Numero7
;7
;2;2;00000700;00000;un;TA;000;00008;00006;00009900;0000001000;0000001000;0000001000;
Produto Numero8
;8
;2;2;00000800;00000;un;TA;000;00009;00007;00009900;0000001000;0000001000;0000001000;
Produto Numero9
;9
;2;2;00000900;00000;un;TA;000;00010;00008;00009900;0000001000;0000001000;0000001000;
Produto Numero10
;10
;2;2;00001000;00000;un;TA;000;00001;00009;00009900;0000001000;0000001000;0000001000;
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Int_Status As Integer
Int_Retorno = Daruma_TA1000_ReceberProdutosVendidos()
Daruma_Framework_TA1000_Progress.Show
Int_Status = 0
Do While (Int_Status <> 100)
Int_Status = Daruma_TA1000_LeStatusTransferencia()
Daruma_Framework_TA1000_Progress.PB_TA1000.Value = Int_Status
Loop
Retorno_TA1000
Unload Daruma_Framework_TA1000_Progress
End Sub
Exemplo em Delphi 7.0:
var
Int_Status: Integer;
begin
Int_Retorno:= Daruma_TA1000_ReceberBancoProdutos();
Framework_TA1000_Progress.Show;
Int_Status:= 0;

Daruma Automao

205

Daruma Framework

While (Int_Status <> 100) Do


begin
Int_Status:= Daruma_TA1000_LeStatusTransferencia();
Framework_TA1000_Progress.PB_TA1000.Position:= Int_Status;
end;
Retorno_TA1000;
Framework_TA1000_Progress.Close;

1.10.1.8 Daruma_TA1000_ZerarProdutos(ndice 5450)


Definio do Mtodo:
Permite zerar os produtos no TA1000.
Parmetros do Mtodo:
No H.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Para que esse Metodo seja validado no TA1000, voce precisa chamar o metodo
Daruma_TA1000_EnviarBancoProdutos.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_TA1000_ZerarProdutos()
Exemplo em Delphi 7.0:
begin
Int_Retorno:= Daruma_TA1000_ZerarProdutos();
end;

1.10.1.9 Daruma_TA1000_ZerarProdutosVendidos(ndice 5456)


Definio do Mtodo:
Permite zerar os produtos vendidos no TA1000.
Parmetros do Mtodo:
No H.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Para que esse Metodo seja validado no TA1000, voce precisa chamar o metodo
Daruma_TA1000_EnviarBancoProdutos.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_TA1000_ZerarProdutosVendidos()
Exemplo em Delphi 7.0:
begin
Int_Retorno:= Daruma_TA1000_ZerarProdutosVendidos();

Daruma Automao

Daruma Framework

206

end;

1.10.2 Mtodos para Usurios


1.10.2.1 Daruma_TA1000_CadastrarUsuarios(ndice 5422)
Definio do Mtodo:
Permite o cadastrar usuros no TA1000.
Parmetros do Mtodo So 13(treze ao todo):
1. Nome: String at 26 carcteres com o nome do usurio.
2. CPF: String com at 13 carcteres contendo o CPF do usurio.
3. Cdigo do Convnio: String com at 6 dgitos contendo o cdigo do convnio.
4. Cdigo do Usurio: String com at 6 dgitos contendo o cdigo do usurio.
5. Proximo Usurio: String com 6 dgitos.
6. Usurio Anterior: String com 6 dgitos.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Para que esse Metodo seja validado no TA1000, voce precisa chamar o metodo
Daruma_TA1000_EnviarBancoUsuarios.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Nome As String
Dim Str_CPF As String
Dim Str_Codigo_Convenio As String
Dim Str_Codigo_Usuario As String
Dim Str_Usuario_Anterior As String
Dim Str_Proximo_Usuario As String
Str_Nome = "Usuario1"
Str_CPF = "7876609958700"
Str_Codigo_Convenio = "000000"
Str_Codigo_Usuario = "000000"
Str_Usuario_Anterior = "000000"
Str_Proximo_Usuario = "000000"
Int_Retorno = Daruma_TA1000_CadastrarUsuarios(Str_Nome, Str_CPF, Str_Codigo_Convenio, _
Str_Codigo_Usuario, Str_Usuario_Anterior, Str_Proximo_Usuario)
Exemplo em Delphi 7.0:
var
Str_Nome: String;
Str_CPF: String;
Str_Codigo_Convenio: String;
Str_Codigo_Usuario: String;
Str_Usuario_Anterior: String;
Str_Proximo_Usuario: String;
begin
Str_Nome:= TX_Nome.'Usuario1';
Str_CPF:= '7876609958700';
Str_Codigo_Convenio:= '000000';
Str_Codigo_Usuario:= '000000';
Str_Usuario_Anterior:= '000000';
Str_Proximo_Usuario:= '000000';
Int_Retorno:= Daruma_TA1000_CadastrarUsuarios(pchar(Str_Nome), pchar(Str_CPF),
pchar(Str_Codigo_Convenio), pchar(Str_Codigo_Usuario), pchar(Str_Usuario_Anterior),
pchar(Str_Proximo_Usuario));

Daruma Automao

207

Daruma Framework

Framework_TA1000.Retorno_TA1000();

1.10.2.2 Daruma_TA1000_ConsultarUsuarios(ndice 5443)


Definio do Mtodo:
Permite o consultar usuarios no TA1000.
Parmetros do Mtodo:
1.
Cdigo: String com at 6 carcteres contendo o cdigo do usurio.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observao do Mtodo:
Basta voc passar o cdigo do usurio a ser consultado e no mais alocar espaos para receber os dados
do usurio.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Codigo_Consultar As String
Dim Str_Nome As String
Dim Str_CPF As String
Dim Str_Codigo_Convenio As String
Dim Str_Codigo_Usuario As String
Dim Str_Usuario_Anterior As String
Dim Str_Proximo_Usuario As String
Str_Codigo_Consultar = TX_Codigo_Consultar.Text
Str_Nome = Space(26)
Str_CPF = Space(13)
Str_Codigo_Convenio = Space(6)
Str_Codigo_Usuario = Space(6)
Str_Usuario_Anterior = Space(6)
Str_Proximo_Usuario = Space(6)
Int_Retorno = Daruma_TA1000_ConsultarUsuarios(Str_Codigo_Consultar, Str_Nome, Str_CPF,
Str_Codigo_Convenio, _
Str_Codigo_Usuario, Str_Usuario_Anterior,
Str_Proximo_Usuario)
Exemplo em Delphi 7.0:
var
Str_Codigo_Consultar: String;
Str_Nome: String;
Str_CPF: String;
Str_Codigo_Convenio: String;
Str_Codigo_Usuario: String;
Str_Usuario_anterior: String;
Str_Proximo_Usuario: String;
begin
Str_Codigo_consultar:= Trim(TX_Codigo_Consultar.Text);
SetLength (Str_Nome,25);
SetLength (Str_CPF,11);
SetLength (Str_Codigo_Convenio,4);
SetLength (Str_Codigo_Usuario,5);
SetLength (Str_Usuario_Anterior,5);
SetLength (Str_Proximo_Usuario,5);

Int_Retorno:= Daruma_TA1000_ConsultarUsuarios(pchar(Str_Codigo_Consultar), Str_Nome, Str_CPF,


Str_Codigo_Convenio, Str_Codigo_Usuario, Str_Usuario_Anterior, Str_Proximo_Usuario);

Daruma Automao

Daruma Framework

208

TX_Nome.Text:= Str_Nome;
TX_CPF.Text:= Str_CPF;
TX_Codigo_Convenio.Text:= Str_Codigo_Convenio;
TX_Codigo_Usuario.Text:= Str_Codigo_Usuario;
TX_Usuario_Anterior.Text:= Str_Usuario_Anterior;
TX_Proximo_Usuario.Text:= Str_Proximo_Usuario;

1.10.2.3 Daruma_TA1000_AlterarUsuarios(ndice 5412)


Definio do Mtodo:
Permite alterar um determinado produto no TA1000.
Parmetros do Mtodo:
1. Cdigo do usurio alterado: String com at 6 carcteres contendo o cdigo do usurio a ser alterado.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Para que esse Metodo seja validado no TA1000, voce precisa chamar o metodo
Daruma_TA1000_EnviarBancoUsuarios.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Codigo_Consultar As String
Dim Str_Nome As String
Dim Str_CPF As String
Dim Str_Codigo_Convenio As String
Dim Str_Codigo_Usuario As String
Dim Str_Usuario_Anterior As String
Dim Str_Proximo_Usuario As String
Str_Codigo_Consultar = TX_Codigo_Consultar.Text
Str_Nome = TX_Nome.Text
Str_CPF = TX_CPF.Text
Str_Codigo_Convenio = TX_Codigo_Convenio.Text
Str_Codigo_Usuario = TX_Codigo_Usuario.Text
Str_Usuario_Anterior = TX_Usuario_Anterior.Text
Str_Proximo_Usuario = TX_Proximo_Usuario.Text
Int_Retorno = Daruma_TA1000_AlterarUsuarios(Str_Codigo_Consultar, Str_Nome, Str_CPF,
Str_Codigo_Convenio, _
Str_Codigo_Usuario, Str_Usuario_Anterior, Str_Proximo_Usuario)
Exemplo em Delphi 7.0:
var
Str_Codigo_Consultar: String;
Str_Nome: String;
Str_CPF: String;
Str_Codigo_Convenio: String;
Str_Codigo_Usuario: String;
Str_Usuario_anterior: String;
Str_Proximo_Usuario: String;
begin
Framework_TA1000_AlterarUsuarios.Refresh;
Str_Codigo_Consultar:= TX_Codigo_Consultar.Text;
Str_Nome:= TX_Nome.Text;
Str_CPF:= TX_CPF.Text;
Str_Codigo_Convenio:= TX_Codigo_Convenio.Text;
Str_Codigo_Usuario:= TX_Codigo_Usuario.Text;
Str_Usuario_Anterior:= TX_Usuario_Anterior.Text;

Daruma Automao

209

Daruma Framework

Str_Proximo_Usuario:= TX_Proximo_Usuario.Text;
Int_Retorno:= Daruma_TA1000_AlterarUsuarios(pchar(Str_Codigo_Consultar), pchar(Str_Nome),
pchar(Str_CPF), pchar(Str_Codigo_Convenio), pchar(Str_Codigo_Usuario), pchar(Str_Usuario_Anterior),
pchar(Str_Proximo_Usuario));
Framework_TA1000.Retorno_TA1000();
end;

1.10.2.4 Daruma_TA1000_EliminarUsuarios(ndice 5432)


Definio do Mtodo:
Permite eliminar um determinado produto no TA1000.
Parmetros do Mtodo:
1. Cdigo: String com at 13 carcteres contendo o cdigo do produto a ser eliminado.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Para que esse Metodo seja validado no TA1000, voce precisa chamar o metodo
Daruma_TA1000_EnviarBancoUsuarios.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Codigo As String
Str_Codigo = InputBox("Entre com o Codigo do Produto que voce deseja Eliminar:", "Daruma
Framework", "0001")
Int_Retorno = Daruma_TA1000_EliminarProdutos(Str_Codigo)
Exemplo em Delphi 7.0:
var
Str_Codigo: String;
begin
Str_Codigo:= InputBox('Daruma Framework' , 'Entre com o Cdigo do Produto que Voc Deseja
Eliminar:','0001');
If Str_Codigo = '' then
begin
exit;
end;
int_Retorno:= Daruma_TA1000_EliminarProdutos(pchar(Str_Codigo));
end;

1.10.2.5 Daruma_TA1000_EnviarBancoUsuarios(ndice 5351)


Definio do Mtodo:
Permite enviar os produtos para o TA1000.
Parmetros do Mtodo:
No H.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Exemplos:

Daruma Automao

Daruma Framework

210

Exemplo em Visual Basic 6.0:


Dim Int_Status As Integer
Int_Retorno = Daruma_TA1000_EnviarBancoUsuarios()
Daruma_Framework_TA1000_Progress.Show
Int_Status = 0
Do While (Int_Status <> 100)
Int_Status = Daruma_TA1000_LeStatusTransferencia()
Daruma_Framework_TA1000_Progress.PB_TA1000.Value = Int_Status
Loop
Retorno_TA1000
Unload Daruma_Framework_TA1000_Progress
Exemplo em Delphi 7.0:
var
Int_Status: Integer;
begin
Int_Retorno:= Daruma_TA1000_EnviarBancoUsuarios();
Framework_TA1000_Progress.Show;
Int_Status:= 0;
while (Int_Status <> 100) Do
begin
Int_Status:= Daruma_TA1000_LeStatusTransferencia();
Framework_TA1000_Progress.PB_TA1000.Position:= Int_Status;
end;
Framework_TA1000.Retorno_TA1000();
Framework_TA1000_Progress.Close;

1.10.2.6 Daruma_TA1000_ReceberBancoUsuarios(ndice 5361)


Definio do Mtodo:
Permite receber os produtos vendidos.
Parmetros do Mtodo:
No H.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Este metodo retornara os produtos em um arquivo TXTcomo nome de Usuarios.plu, que sera em um path
indicado no registry.
O formato do arquivo de retorno pode ser visto abaixo:
Header v1.40 USUARIOS
;00001;00001;00001;bjcpcxfcgfjgkglt
Usuario Numero1
;877E774E145;
0001
Usuario Numero2
;877.774.145;2 ;2 ;00001;00003
Usuario Numero3
;877.774.145;3 ;3 ;00002;00004
Usuario Numero4
;877.774.145;4 ;4 ;00003;00005
Usuario Numero5
;877.774.145;5 ;5 ;00004;00006
Usuario Numero6
;877.774.145;6 ;6 ;00005;00007
Usuario Numero7
;877.774.145;7 ;7 ;00006;00008
Usuario Numero8
;877.774.145;8 ;8 ;00007;00009
Usuario Numero9
;877.774.145;9 ;9 ;00008;00010
Usuario Numero10
;877.774.145;10 ;10 ;00009;00011
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Int_Status As Integer

Daruma Automao

211

Daruma Framework

Int_Retorno = Daruma_TA1000_ReceberBancoUsuarios()
Daruma_Framework_TA1000_Progress.Show
Int_Status = 0
Do While (Int_Status <> 100)
Int_Status = Daruma_TA1000_LeStatusTransferencia()
Daruma_Framework_TA1000_Progress.PB_TA1000.Value = Int_Status
Loop
Retorno_TA1000
Unload Daruma_Framework_TA1000_Progress
Exemplo em Delphi 7.0:
var
Int_Status: Integer;
begin
Int_Retorno:= Daruma_TA1000_ReceberBancoUsuarios();
Framework_TA1000_Progress.show;
Int_Status:=0;
While (Int_Status <> 100) do
begin
Int_status:= Daruma_TA1000_LeStatusTransferencia();
Framework_TA1000_Progress.PB_TA1000.Position:= Int_Status;
end;
Framework_TA1000.Retorno_TA1000();
Framework_TA1000_Progress.Close;

1.10.2.7 Daruma_TA1000_ZerarUsuarios(ndice 5452)


Definio do Mtodo:
Permite zerar os produtos no TA1000.
Parmetros do Mtodo:
No H.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Para que esse Metodo seja validado no TA1000, voce precisa chamar o metodo
Daruma_TA1000_EnviarBancoUsuarios.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_TA1000_ZerarProdutos()
Exemplo em Delphi 7.0:
begin
Int_Retorno:= Daruma_TA1000_ZerarProdutos();
end;

1.10.3 Teste Completo Gerando Banco de Produtos e Usuarios


1.10.3.1 Daruma TA1000 Gerar Banco com Produtos
Definio do Mtodo:
Algoritimo para gerar-se um banco contendo Produtos
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo.

Daruma Automao

Daruma Framework

212

-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Int_Contador As Integer
Dim Str_Codigo As String
Dim Str_Descricao As String
Dim Str_Valor As String
Dim Str_Estoque As String
Dim Str_Proximo_Produto As String
Dim Str_Produto_Anterior As String
Dim Int_Quantidade_Produtos As Integer
Int_Quantidade_Produtos = CInt("100")
Int_Contador = 1
Int_Retorno = Daruma_TA1000_ZerarProdutos()
Do While (Int_Contador <= Int_Quantidade_Produtos)
Str_Codigo = CStr(Int_Contador)
Str_Descricao = "Produto Numero" + CStr(Int_Contador)
Str_Valor = String(6 - Len(CStr(Int_Contador)), "0")
Str_Valor = Str_Valor + CStr(Int_Contador) + "00"
Str_Estoque = "00010000"

If Int_Contador = 1 Then
Str_Produto_Anterior =
Str_Produto_Anterior =
Else
Str_Produto_Anterior =
Str_Produto_Anterior =
End If

String(5 - Len(CStr(Int_Quantidade_Produtos)), "0")


Str_Produto_Anterior + CStr(Int_Quantidade_Produtos)
String(5 - Len(CStr(Int_Contador)), "0")
Str_Produto_Anterior + CStr(Int_Contador - 1)

If Int_Contador = Int_Quantidade_Produtos Then


Str_Proximo_Produto = "00001"
Else
Str_Proximo_Produto = String(5 - Len(CStr(Int_Contador + 1)), "0")
Str_Proximo_Produto = Str_Proximo_Produto + CStr(Int_Contador + 1)
End If
Int_Retorno = Daruma_TA1000_CadastrarProdutos(Str_Descricao, Str_Codigo, "2", "2", Str_Valor,
"D", "0,00", "UN", _
"TA", Str_Proximo_Produto,
Str_Produto_Anterior, Str_Estoque)

Int_Contador = Int_Contador + 1
Loop

Exemplo em Delphi 7.0:

1.10.3.2 Daruma TA1000 Gerar Banco com Usuarios


Definio do Mtodo:
Algoritimo para gerar-se um banco contendo Usuarios
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:

Daruma Automao

213

Daruma Framework

1: OK, Sucesso ao enviar o mtodo.


-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo Executou o mtodo porm o
ECF sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observaes:
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Int_Contador As Integer
Dim Str_Codigo_Convenio As String
Dim Str_Codigo_Usuario As String
Dim Str_Nome As String
Dim Str_Valor As String
Dim Str_Estoque As String
Dim Str_Proximo_Usuario As String
Dim Str_Usuario_Anterior As String
Dim Int_Quantidade_Usuarios As Integer
Int_Quantidade_Usuarios = CInt("100")
Int_Contador = 1
Int_Retorno = Daruma_TA1000_ZerarUsuarios()
Do While (Int_Contador <= Int_Quantidade_Usuarios)
Str_Codigo_Usuario = CStr(Int_Contador)
Str_Nome = "Usuario Numero" + CStr(Int_Contador)
Str_Codigo_Convenio = String(6 - Len(CStr(Int_Contador)), "0")
Str_Codigo_Convenio = Str_Valor + CStr(Int_Contador)
If Int_Contador = 1 Then
Str_Usuario_Anterior =
Str_Usuario_Anterior =
Else
Str_Usuario_Anterior =
Str_Usuario_Anterior =
End If

String(5 - Len(CStr(Int_Quantidade_Usuarios)), "0")


Str_Usuario_Anterior + CStr(Int_Quantidade_Usuarios)
String(5 - Len(CStr(Int_Contador)), "0")
Str_Usuario_Anterior + CStr(Int_Contador - 1)

If Int_Contador = Int_Quantidade_Usuarios Then


Str_Proximo_Usuario = "00001"
Else
Str_Proximo_Usuario = String(5 - Len(CStr(Int_Contador + 1)), "0")
Str_Proximo_Usuario = Str_Proximo_Usuario + CStr(Int_Contador + 1)
End If
Int_Retorno = Daruma_TA1000_CadastrarUsuarios(Str_Nome, "877.774.145-87",
Str_Codigo_Convenio, _
Str_Codigo_Usuario, Str_Usuario_Anterior, Str_Proximo_Usuario)

Int_Contador = Int_Contador + 1
Loop

Exemplo em Delphi 7.0:

Daruma Automao

Index

Index
-..log

72

-<</a> No Aguardar at o Trmino da Impresso


175, 179
<a> Aguardar at o Trmino da Impresso 175,
179
<b></b> Para sinalizar Negrito 175, 179
<c></e> Para sinalizar Condensado 175, 179
<ce></ce> Para Centralizar 175, 179
<dt></dt> Para Imprimir Data Atual 175, 179
<e></e> Para sinalizar Expandido 175, 179
<g></g> Abre a Gaveta 175, 179
<hr></hr> Para Imprimir Hora Atual 175, 179
<i></i> Para sinalizar iTlico 175, 179
<l></l> Para Saltar Uma Linha 175, 179
<n></n> Para sinalizar Normal 175, 179
<s></s> Para sinalizar Sublinhado 175, 179
<sl>NN</sl> Para Saltar Vrias Linhas" 175, 179
0) 175, 179
<sn></sn> Sinal Sonoro 175, 179
Apitar 175, 179
<sp>NN</sp> Inserir NN Espaos em Branco 175,
179
<tc>C</tc> Riscar Linha com um Caracter Especifico
175, 179

-001

182

-11 68
1.11 13
10 72
1000 9
1001 10
1004 11
1005 14
Daruma Automao

1006 15
1007 16
1008 16
1009 17
1010 20
1011 19
1012 18
1013 21
1014 14
1015 23
1016 22
1017 20
1018 22
1019 13
11 73
1100 33
1101 32
1102 29
1103 30
1104 31
1105 31
1106 34
12 74
1200 35
1201 26
1202 33
1203 24
1204 24
1205 25
1206 35
1207 36
1208 25
1209 26
1210 27
1211 28
1212 29
13 74
1300 37
1301 36
1302 47
1310 49
1311 47
1312 48
14 75
1400 85
1401 90
1402 122

214

215
1403
1404
1405
1406
1407
1408
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1451

Daruma Framework
84
83
84
110
95
110
108
98
98
99
107
107
108
99
103
103
102
102
101
113
96
97
97
122
117
101
100
95
93
111
104
105
92
104
105
94
91
108
89
93
88
91
111, 112
112
89
88
125

1452 125
1453 126
1454 126
1455 127
1456 127
1457 128
1458 128
1459 129
1460 129
1461 130
1462 130
1463 131
1464 131
1465 132
1466 132
1467 96
1468 100
1469 85
1470 123
1481 118
1482 120
1483 106
1484 106, 133
1485 135
1486 92
1487 87
1488 86
1489 87
1493 113
1494 86
1495 135
1496 136
15 75
17 68
18 77
19 78
1900 155
1901 152
1902 151
1903 156
1904 151
1905 153
1Linha 10, 74

-22

69
Daruma Automao

Index

20
21
22
23
24
28

79
76
79
76
77
80

-33 70
30 194
301 54
302 52
303 57
304 53
305 55
306 55
307 56
308 56
31 195, 196
310 54
311 57
312 58
313 58
32 194
33 195
35 137
36 80, 137
37 81

-44 70
400 59
4001 163
4002 171
4003 171
4004 172, 173
4008 170
401 60
402 61
403 61
404 61
405 62
407 63
408 64
Daruma Automao

409
410
411
412

64
65
60
63

-55 71
5007 140
5008 140
5009 141
5010 142
5011 141
5012 147
5013 146
5014 148
5015 138
5016 138
5017 139
5018 143
5019 148
5020 149
5021 144
5022 144
5023 145
5024 145
5025 146
5026 141
53 7
5350 202
5351 209
5360 203
5361 210
5363 204
54 6
5410 200
5412 208
5420 197
5422 206
5430 201
5432 209
5440 198
5443 207
5450 205, 211
5456 205
55 7, 8
56 6

216

217
58
59

Daruma Framework

7
8

-66 71
60 8
600 49
601 49
603 114
604 50
605 51
606 115
607 51, 116
609 52
61 9

-77

71

-88

72

-99

72

-AAbertura 50
Abre 24, 25, 27, 49, 146
AbreCupom 9
Abrir 76
AbrirdiaAuto 76
Aciona 49
Acresc 108
Acrescimo 125
Acrescimo - Retorno 125
Acrescimos 108, 144
Acumulado 133
Adicional 22, 63, 137
Ajusta 34
Aliquota 52, 91
Aliquota Valores 135

Aliquotas 91, 106, 110


Aliquotas - Ler Total de 95
Altera 69
Alterando o Registry 68
Alterar 200, 208
Anterior 14
Aplicativo 80, 81
arquivo 155, 170
Arquivo de Comando 8
Arredondamento 55, 61
Aumenta 20, 23
Autentica 37, 47
Autenticacao 171, 172, 173
Autenticao 37, 47, 62
Autenticar na Bobina 172, 173
Autenticar no Documento 172, 173
Automatica 61, 75
Automatico 59

-BBanco 211, 212


Binario 120
Bruta 106

-CCadastrar 197, 206


Caixa 29, 97
Calculos 61
Caminho 69
Cancel 108
Cancela 14, 15
Cancelados 103, 108, 125, 126
Cancelamento 149
Cancelamentos 108, 144
Valor Acumulado 135
Cancelar 141
Canlelamentos 125
Carregar 141
CGC 99
CGC proprietario do ECF 96
Cheque 137, 138, 139, 140, 141, 142
Cliche 96
CMC7 140
CNF 26, 126, 146
Daruma Automao

Index

CNFV 148, 149


CNPJ do ECF 96
Codigo 140
ComIndice 106
Comprivante 25
Comprovante 24, 84, 135, 136
COMX 68
Conectada 93
Config 72
Configuraes 51
Configuracoes do ECF 59, 60, 61, 62, 63, 64, 65
Configurando 59, 60, 61
Configurando a DLL 3, 5
Configurando Impressora DUAL 194
Conforguraes 52
Consultar 198, 207
Consumidor 21
Contador 105
Contador de LeituraX 126, 133
Contador de Nao Fiscal Nao Vinculado 133
Contador de Nao Fiscal Vinculado 133
Contador de Reduo Z 128
Contador de Reducao Z Restante 129
Contador de Reinicio 128
Contador Geral Nao Fiscal 130
Contador Nao Fiscal 133
Contadores 105
Controle 71
COO 99
COO FINAL 100
COO INICIAL 100
COOFinal 133
COOInicial 133
Corrigir 142
Cria 147
Cumpons 103
Cupom 9, 14, 16, 19, 22, 59, 63, 83, 99, 137
Cupom Nao Fiscal Nao Vinculado 127
CupomNFNV 127
Cupons 56, 63

-DDados 108
Daruma Framework 29
Daruma TA1000 Gerar Banco com Produtos
Daruma TA1000 Gerar Banco com Usuarios
Daruma Automao

211
212

218

Daruma_DUAL_Autenticar 172, 173


Daruma_DUAL_ImprimirArquivo 170
Daruma_DUAL_ImprimirTexto 163
Daruma_DUAL_VerificaDocumento 171
Daruma_DUAL_VerificaStatus 171
Daruma_FI_AberturaDoDia 50
Daruma_FI_AbreComprovanteNaoFiscalVinculado
24
Daruma_FI_AbreCupom 9
Daruma_FI_AbrePortaSerial 49
Daruma_FI_AbreRecebimentoNaoFiscal 27
Daruma_FI_AbreRelatorioGerencial 25
Daruma_FI_AcionaGaveta 49
Daruma_FI_Acrescimos 108
Daruma_FI_AumentaDescricaoItem 23
Daruma_FI_Autenticacao 37
Daruma_FI_AutenticacaoStr 47
Daruma_FI_CancelaCupom 14
Daruma_FI_CancelaItemAnterior 14
Daruma_FI_CancelaItemGenerico 15
Daruma_FI_Cancelamentos 108
Daruma_FI_CfgCalcArredondamento 61
Daruma_FI_CfgCupomAdicional 63
Daruma_FI_CfgEspacamentoCupons 63
Daruma_FI_CfgFechaAutomaticoCupom 59
Daruma_FI_CfgHoraMinReducaoZ 64
Daruma_FI_CfgHorarioVerao 61
Daruma_FI_CfgImpEstGavVendas 60
Daruma_FI_CfgLeituraXAuto 61
Daruma_FI_CfgLimiarNearEnd 64
Daruma_FI_CfgPermMensPromCNF 65
Daruma_FI_CfgRedZAutomatico 60
Daruma_FI_CfgSensorAut 62
Daruma_FI_CGC_IE 99
Daruma_FI_ClicheProprietario (ndice 1424) 96
Daruma_FI_ClicheProprietarioEx 96
Daruma_FI_ContadoresTotalizadoresNaoFiscais
105
Daruma_FI_COO 100
Daruma_FI_DadosUltimaReducao 108
Daruma_FI_DataHoraImpressora 104
Daruma_FI_DataHoraReducao 104
Daruma_FI_DataMovimento 105
Daruma_FI_Descontos 107
Daruma_FI_EfetuaFormaPagamento 16
Daruma_FI_EfetuaFormaPagamentoDescricaoForm
a 17

219

Daruma Framework

Daruma_FI_EfetuaFormaPagamentoNaoFiscal 28
Daruma_FI_EmitirCupomAdicional 22
Daruma_FI_EnviarTextoCNF 26
Daruma_FI_EqualizaFormasPgto 57
Daruma_FI_EspacoEntreLinhas 56
Daruma_FI_EstornoFormasPagamento 20
Daruma_FI_FechaComprovanteNaoFiscalVinculado
25
Daruma_FI_FechaCupom 19
Daruma_FI_FechaCupomResumido 18
Daruma_FI_FechamentoDoDia 51
Daruma_FI_FechaPortaSerial 49
Daruma_FI_FechaRelatorioGerencial 26
Daruma_FI_FlagsFiscais 117
Daruma_FI_GrandeTotal 107
Daruma_FI_IdentificaConsumidor 21
Daruma_FI_ImprimeConfiguracoes 52
Daruma_FI_ImprimeConfiguracoesImpressora 51
Daruma_FI_IniciaFechamentoCupom 16
Daruma_FI_LeituraMemoriaFiscalData 29
Daruma_FI_LeituraMemoriaFiscalReducao (ndice
1103) 30
Daruma_FI_LeituraMemoriaFiscalSerialData (ndice
1104) 31
Daruma_FI_LeituraMemoriaFiscalSerialReducao
(ndice 1105) 31
Daruma_FI_LeituraX 32
Daruma_FI_LerAliquotasComIndice 106
Daruma_FI_LinhasEntreCupons 56
Daruma_FI_MapaResumo (ndice 603) 114
Daruma_FI_MinutosImprimindo 100
Daruma_FI_MinutosLigadas 101
Daruma_FI_NomeiaTotalizadorNaoSujeitoIcms 53
Daruma_FI_NumeroCaixa 97
Daruma_FI_NumeroCupom 99
Daruma_FI_NumeroCuponsCancelados 103
Daruma_FI_NumeroIntervencoes 102
Daruma_FI_NumeroLoja 97
Daruma_FI_NumeroOperacoesNaoFiscais 103
Daruma_FI_NumeroReducoes 102
Daruma_FI_NumeroSerie 98
Daruma_FI_NumeroSubstituicoesProprietario 101
Daruma_FI_PalavraStatus 118
Daruma_FI_PalavraStatusBinario 120
Daruma_FI_ProgramaAliquota 52
Daruma_FI_ProgramaArredondamento 55
Daruma_FI_ProgramaFormasPagamento 54
Daruma_FI_ProgramaFormasPgtoSemVincular 58

Daruma_FI_ProgramaHorarioVerao 57
Daruma_FI_ProgramaOperador 54
Daruma_FI_ProgramaTruncamento 55
Daruma_FI_ProgramaViculados 58
Daruma_FI_RecebimentoNaoFiscal 33
Daruma_FI_ReducaoZ 33
Daruma_FI_ReducaoZAjustaDataHora 34
Daruma_FI_RelatorioGerencial 35
Daruma_FI_RelatorioTipo60Analitico (ndice 606)
115
Daruma_FI_RelatorioTipo60Mestre (ndice 607)
116
Daruma_FI_RetornaAcrescimoNF 125
Daruma_FI_RetornaCancelamento 129
Daruma_FI_RetornaCFCancelados 125
Daruma_FI_RetornaCLX 126
Daruma_FI_RetornaCNFCancelados 126
Daruma_FI_RetornaCNFNV 127
Daruma_FI_RetornaCNFV 127
Daruma_FI_RetornaCRO 128
Daruma_FI_RetornaCRZ 128
Daruma_FI_RetornaCRZRestante 129
Daruma_FI_RetornaDescontoNF 130
Daruma_FI_RetornaErroExtendido 123
Daruma_FI_RetornaGNF 130
Daruma_FI_RetornaIndiceComprovanteNaoFiscal
136
Daruma_FI_RetornaRegistradoresFiscais 135
Daruma_FI_RetornaRegistradoresNaoFiscais 133
Daruma_FI_RetornaTempoImprimindo 131
Daruma_FI_RetornaTempoLigado (ndice 1464)
131
Daruma_FI_RetornaTotalPagamentos 132
Daruma_FI_RetornaTroco 132
Daruma_FI_RetornaValorComprovanteNaoFiscal
135
Daruma_FI_RetornoAliquotas 110
Daruma_FI_RetornoImpressora 122
Daruma_FI_Sangria 35
Daruma_FI_SimboloMoeda 122
Daruma_FI_StatusComprovanteNaoFiscalVinculado
84
Daruma_FI_StatusCupomFiscal 83
Daruma_FI_StatusRelatorioGerencial 84
Daruma_FI_SubTotal 110
Daruma_FI_Suprimento 36
Daruma_FI_TerminaFechamentoCupom 20
Daruma_FI_TipoUltimoDocumento 113
Daruma Automao

Index

Daruma_FI_UltimaFormaPagamento 111
Daruma_FI_UltimoItemVendido (ndice 1423) 113
Daruma_FI_UsaComprovanteNaoFiscalVinculado
24
Daruma_FI_UsaUnidadeMedida 22
Daruma_FI_ValorFormaPagamento 112
Daruma_FI_ValorPagoUltimoCupom 111
Daruma_FI_ValorTotalizadorNaoFiscal 112
Daruma_FI_VendaBruta 106
Daruma_FI_VendeItem 10
Daruma_FI_VendeItemDepartamento 11
Daruma_FI_VendeItemTresDecimais 13
Daruma_FI_VerificaAliquotasIss 91
Daruma_FI_VerificaDescricaoFormasPagamento
88
Daruma_FI_VerificaDiaAberto 87
Daruma_FI_VerificaDocAutenticacao 36
Daruma_FI_VerificaEpromConectada 93
Daruma_FI_VerificaEstadoGaveta 47
Daruma_FI_VerificaEstadoGavetaStr 48
Daruma_FI_VerificaEstadoImpressora 90
Daruma_FI_VerificaFormasPagamento 89
Daruma_FI_VerificaFormasPagamentoEx 89
Daruma_FI_VerificaHorarioVerao 86
Daruma_FI_VerificaImpressoraLigada 85
Daruma_FI_VerificaIndiceAliquotasIss 91
Daruma_FI_VerificaModeloECF 85
Daruma_FI_VerificaModoOperacao 95
Daruma_FI_VerificaRecebimentosNaoFiscal 93
Daruma_FI_VerificaTipoImpressora 88
Daruma_FI_VerificaTotalizadoresNaoFiscais 92
Daruma_FI_VerificaTotalizadoresNaoFiscaisEx 92
Daruma_FI_VerificaTotalizadoresParciais 95
Daruma_FI_VerificaTruncamento 94
Daruma_FI_VerificaXPendente 87
Daruma_FI_VerificaZPendente 86
Daruma_FI_VersaoFirmware 98
Daruma_FI2000_AbreRelatorioGerencial 146
Daruma_FI2000_AcrescimosICMSISS 144
Daruma_FI2000_CancelamentoCNFV 149
Daruma_FI2000_CancelamentosICMSISS 144
Daruma_FI2000_CancelarCheque 141
Daruma_FI2000_CarregarCheque 141
Daruma_FI2000_CorrigirGeometriaCheque 142
Daruma_FI2000_CriaRelatorioGerencial 147
Daruma_FI2000_DescontosICMSISS 145
Daruma_FI2000_DescontoSobreItemVendido 143
Daruma Automao

220

Daruma_FI2000_ImprimirCheque 138
Daruma_FI2000_ImprimirVersoCheque 139
Daruma_FI2000_LeituraCodigoMICR 140
Daruma_FI2000_LeituraInformacaoUltimoDOC
145
Daruma_FI2000_LeituraInformacaoUltimosCNF
146
Daruma_FI2000_LeituraTabelaCheque 141
Daruma_FI2000_LiberarCheque 140
Daruma_FI2000_SegundaViaCNFV 148
Daruma_FI2000_StatusChque 138
Daruma_FI2000_VerificaRelatorioGerencial 148
Daruma_Observer_Registry_Entrada 8
Daruma_Observer_Registry_Execucao 7
Daruma_Observer_Registry_Hibernar 6
Daruma_Observer_Registry_Hibernar_Frequencia
6
Daruma_Observer_Registry_Hibernar_TimeOut 7
Daruma_Observer_Registry_Log 7
Daruma_Observer_Registry_Log_Path 8
Daruma_Observer_Registry_Produto 9
Daruma_Observer_Registry_Saida 8
Daruma_Registry_AbrirDiaFiscal 76
Daruma_Registry_AlteraRegistry 68
Daruma_Registry_AplMensagem1 80
Daruma_Registry_AplMensagem2 81
Daruma_Registry_ConfigRede 72
Daruma_Registry_ControlePorta 71
Daruma_Registry_Default 79
Daruma_Registry_DUAL_Enter 194
Daruma_Registry_DUAL_Espera 194
Daruma_Registry_DUAL_ModoEscrita 195
Daruma_Registry_DUAL_Porta 195, 196
Daruma_Registry_ErroExtendidoOk 79, 80
Daruma_Registry_FS2000_CupoamAdicional 137
Daruma_Registry_IgnorarPoucoPapel 77
Daruma_Registry_ImprimeRegistry 77
Daruma_Registry_Log 72
Daruma_Registry_ModoGaveta 71
Daruma_Registry_NomeLog 72
Daruma_Registry_Path 69
Daruma_Registry_Porta 68
Daruma_Registry_RetornaValor 78
Daruma_Registry_Retorno 71
Daruma_Registry_Separador 73
Daruma_Registry_SeparaMsgPromo 74
Daruma_Registry_Status 70
Daruma_Registry_StatusFuncao 70

221

Daruma Framework

Daruma_Registry_TempoEsperaCheque 137
Daruma_Registry_TerminalServer 76
Daruma_Registry_Vende1Linha 74
Daruma_Registry_XAutomatica 75
Daruma_Registry_ZAutomatica 75
Daruma_TA1000_AlterarProdutos 200
Daruma_TA1000_AlterarUsuarios 208
Daruma_TA1000_CadastrarProdutos 197
Daruma_TA1000_CadastrarUsuarios 206
Daruma_TA1000_ConsultarProdutos 198
Daruma_TA1000_ConsultarUsuarios 207
Daruma_TA1000_EliminarProdutos 201, 209
Daruma_TA1000_EnviarBancoProdutos 202, 209
Daruma_TA1000_ReceberBancoProdutos 203,
210
Daruma_TA1000_ReceberProdutosVendidos 204
Daruma_TA1000_ZerarProdutos 205, 211
Daruma_TEF_EsperarArquivo (ndice 1900) 155
Daruma_TEF_FechaRelatorio(ndice 1904) 151
Daruma_TEF_ImprimirResposta (ndice 1901) 152
Daruma_TEF_ImprimirRespostaCartao 153
Daruma_TEF_SetFocus (ndice 1902) 151
Daruma_TEF_TravarTeclado 156
Daruma32.log 72
Data 29, 34, 104, 105
Decimais 13
Declarando a DLL 5
Decodificacao do Erro do ECF 123
Default 79
Departamento 11
Desconto 143
Descontos 107, 145
Valor Acumulado 135
Descricao 17
Descrio 20, 23
Descrio Formas Pagamento 88
DHTML 175, 179
Dia 50, 51, 76
DiaAberto 87
Do 50, 51
DOC 145
Documento 36, 113, 171, 172, 173
Documento Posicionado 171, 172, 173
DUAL 194, 195, 196
Porta de Comunicao 194, 195, 196
Status 171
DUAL Impressora Dual 194

DXML

175, 179

-EECF Verificar Modelo do ECF 85


Efetua 16, 17, 28
Eliminar 201, 209
Emitido 113
Emitir 22
End 64
Entre 56, 63
Enviar 26
Envirar 202, 209
Eprom 93
Equaliza 57
Erro 79, 80
Erro 00 IF em modo Manuteno. Foi ligada sem o
Jumper de Operao 123
Erro 01 Comando disponvel somente em modo
Manuteno 123
Erro 02 Erro durante a gravao da Memria Fiscal
123
Erro 03 Memria Fiscal esgotada 123
Erro 04 Erro no relgio interno da IF 123
Erro 05 Falha mecnica na IF 123
Erro 06 Erro durante a leitura da Memria Fiscal
123
Erro 10 Documento sendo emitido 123
Erro 11 Documento no foi aberto 123
Erro 12 No existe documento a cancelar 123
Erro 13 Dgito no numrico no esperado foi
encontrado nos parmetros 123
Erro 14 No h mais memria disponvel para esta
operao 123
Erro 15 Item a cancelar no foi encontrado 123
Erro 16 Erro de sintaxe no comando 123
Erro 17 "Estouro" de capacidade numrica (overflow)
123
Erro 18 Selecionado totalizador tributado com
alquota de imposto no definida 123
Erro 19 Memria Fiscal vazia 123
Erro 20 No existem campos que requerem
atualizao 123
Erro 21 Detectado proximidade do final da bobina de
papel 123
Erro 22 Cupom de Reduo Z j foi emitido. IF
inoperante at 0:00h do prximo dia 123
Erro 23 Reduo Z do perodo anterior ainda
pendente. IF inoperante 123
Daruma Automao

Index

Erro 24 Valor de desconto ou acrscimo invlido


(limitado a 100%) 123
Erro 25 Caracter invlido foi encontrado nos
parmetros 123
Erro 27 Nenhum perifrico conectado a interface
auxiliar 123
Erro 28 Foi encontrado um campo em zero 123
Erro 29 Documento anterior no foi Cupom Fiscal.
No pode emitir Cupom Adicional 123
Erro 30 Acumulador No Fiscal selecionado no
vlido ou no est disponvel 123
Erro 31 No pode autenticar. Excedeu 4 repeties
ou no permitida nesta fase 123
Erro 32 Cupom adicional inibido por configurao
123
Erro 35 Relgio Interno Inoperante 123
Erro 36 Verso do firmware gravada na Memria
Fiscal no a esperada 123
Erro 37 Alquota de imposto informada j est
carregada na memria 123
Erro 38 Forma de pagamento selecionada no
vlida 123
Erro 39 Erro na seqncia de fechamento do Cupom
Fiscal 123
Erro 40 IF em Jornada Fiscal. Alterao da
configurao no permitida 123
Erro 41 Data invlida. Data fornecida inferior
ltima gravada na Memria Fiscal 123
Erro 42 Leitura X inicial ainda no foi emitida 123
Erro 43 No pode emitir Comprovante Vinculado
123
Erro 44 Cupom de Oramento no permitido para
este estabelecimento 123
Erro 45 Campo obrigatrio em branco 123
Erro 48 No pode estornar 123
Erro 49 Forma de pagamento indicada no
encontrada 123
Erro 50 Fim da bobina de papel 123
Erro 51 Nenhum usurio cadastrado na MF 123
Erro 52 MF no instalada ou no inicializada 123
Erro 61 Queda de energia durante a emisso de
Cupom Fiscal 123
Erro 76 Desconto em ISS no permitido (somente
para verso 1.11 do Estado de Santa Catarina)
123
Erro 77 Acrscimo em IOF inibido 123
Erro 80 Perifrico na interface auxiliar no pode ser
reconhecido 123
Erro 81 Solicitado preenchimento de cheque de
banco desconhecido 123

Daruma Automao

222

Erro 82 Solicitado transmisso de mensagem nula


pela interface auxiliar 123
Erro 83 Extenso do cheque no cabe no espao
disponvel 123
Erro 84 Erro na comunicao com a interface auxiliar
123
Erro 85 Erro no dgito verificador durante
comunicao com a PertoCheck 123
Erro 86 Falha na carga de geometria de folha de
cheque 123
Erro 87 Parmetro invllido para o campo de data do
cheque 123
Erro 90 Sequncia de validao de nmero de srie
invlida 123
Erro do ECF 123
Erro Extendido do ECF 123
Espaamento 63
Espaco 56
Espera 137
esperar 155
Esperar Impressao 194
Est 60
Estado 47, 48, 90
Estorno 20
Exemplo_DUAL_01 182
Exemplo_DUAL_02 184
Exemplo_DUAL_03 185
Exemplo_DUAL_04 186
Exemplo_DUAL_05 187
Exemplo_DUAL_06 188
Exemplo_DUAL_07 189
Exemplo_DUAL_08 190
Exemplo_DUAL_09 192
Exemplo_DUAL_10 193
Extendida 23
ExtendidoOk 79, 80

-FFecha 18, 19, 25, 26, 49, 59


Fechamento 16, 51
FI2000 138
Firmeware 98
Fiscais 92, 105, 117
Fiscal 24, 25, 27, 29, 33, 35, 36, 53, 76, 83, 112,
127, 135, 136
Flags 117
Forma 17, 28, 111, 112

223

Daruma Framework

Formas 20, 54, 57, 88, 89


Formas de Pagamento - total acumulado 132
Formas Pagamento 88
Funcao 71
Funes de Configurao do Observer 5
Fundo 29

-GGande Total - Ler Total 95


Gav 60
Gaveta 47, 48, 49, 71
Generico 15
Geometria 142
Gerar 211, 212
Gerencial 25, 26, 35, 84, 146, 147, 148
Graficamente como Funciona o OBSERVER
Grande 107
Grande Total Contador 135
GT 107
GT Inicial 135

-L5

-HHibernar - Log 7
Hibernar Local de Execucao 7
Hibernar Log Path e Nome do Log
Hibernar Observer 6, 7, 8
Hora 34, 64, 104
Horario 57, 61

Imprimir 51, 52, 138, 163, 170


Indice 91, 136
Informacao 145, 146
Inicia 16
Instalando o Driver Observer 5
Int 102
Inter 102
Intervencoes 102
IOF Valor Acumulado 135
Isento 91
Valor Acumulado 135
Iss 91, 144, 145
Item 10, 14, 20, 74, 143

-IICMS 144, 145


Identifica 21
IE 99
Ignora 77
Imp 60
Implementando TEF com a Daruma32.dll 149
Impressora 51, 52, 85, 88, 90, 104, 122
Impri 52
Imprime 51
Imprimindo 77, 100
Imprimindo na Impressora DUAL 195, 196
Imprimindo o Registry 77
Imprimindo o TEF 152, 153

Leitura 29, 32, 141, 145, 146


Leiturax 61, 75
LeituraX Contador 126
Ler 106
Ler Status na DUAL 171
Ler Total de - Sangria 95
Ler Total de - Suprimento 95
Liberar 140
Ligada 85
Ligadas 101
Ligando o Log 72
Limiar 64
Linhas 56
LJ 97
Log 72
Loja 97
LPT1 195, 196

-MMedida 22
Memoria 29
Memoria Fiscal Impresso 29
Memoria Fiscal Leitura pela Serial
Mensagem 65, 74, 80, 81
Mtodo: Daruma_FI_FundoCaixa
MICR 140
Mnima 64
Minutos 100
Modelo do ECF 85

31
29

Daruma Automao

Index

Modificando o Registry 68
Modo 71, 95
Modo de Escrita na Paralela
Moeda 122
Movimento 105
Mudando o Registry 68
Munitos 101

Observer Configurar Path e Nome do Log


Observer Configurar Produto 9
Operacao 95
Operacoes 103
Operador 54

195

Nao 24, 25, 27, 33, 35, 36, 53, 92, 105, 112, 127,
135, 136
No Fiscais 92
Nao Fiscal 133
Nao Fiscal - Contador Geral 130
Nao fiscal - total cancelado 129
No Incidente 135
Valor Acumulado 135
No Incidente - Ler Total de 95
No tributado 91
Nao Vinculado Valor Acumulado 133
NaoFical 84
NaoFisca 93
NaoFiscais 103
NaoFiscal 28
Near 64
NF 125
Numero 97, 98, 99, 101, 102, 103
Numero de Reducoes Z Restante 129
Numero do COO Final 100
Numero do COO Inicial 100

-O-

Daruma Automao

-P-

-N-

O Qu o Driver Daruma Observer? 5


Observer - Arquivo de Comando 8
Observer - Configurando 5
Observer - Hibernar 6, 7, 8
Observer - Local de Execucao 7
Observer - Log 7
Observer - Log Path e Nome do Log 8
Observer - Produto 9
Observer Configurar Arquivo de Comando 8
Observer Configurar Frequencia de Hibernacao
Observer Configurar Hibernacao 6, 7, 8
Observer Configurar Local de Execucao 7
Observer Configurar Log 7

224

Pagamento 16, 20, 28, 54


Pagamento Descrio 88
Pago 111
Palavra 118
Palavra de Status do ECF 118
Papel 77
Paralela 174
Path 69
Permite 65
Pgto 57, 89, 111, 112
Por 61
Porta 49
Porta de Comunicao 71
Porta Serial 68
Pouco 77
Preparando seu Aplicativo para o Observer 5
Presente 36
Problemas na Paralela 174
Produto Observer 9
Produtos 197, 198, 200, 201, 202, 203, 204, 205,
209, 210, 211
ProdutosVendidos 205
Progama 57
Programa 52, 53, 54, 55, 58
Promo 74
Promocional 65
Proprietario 96, 101

-R-

Rec 93
Receber 203, 204, 210
Recebi 93
Recebimento 27, 33
Recebimentos 93
Recucoes 102
Red 102
Rede 72
Reducao 60, 108

225

Daruma Framework

Reduo 64
Reduo Z Contador 128
Reducao Z Restante 129
Reduo Z Restante 133
ReducaoZ 33, 104
ReduoZ 75
Registradores Nao Fiscais 133
Registry 66, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
78, 79, 80, 137
Regra de Configurao do Registry 65
Reinicio Contador 128
Reinicio de Operao 128
Relatorio 25, 26, 32, 35, 84, 146, 147, 148
Remoto 76
Resolvendo Problemas de Comunicao com a
PARALELA 174
Resumido 18
Retorna 78, 125, 126, 127, 135, 136
Retorna Erro Extendido 123
Retorno 71, 110, 122
Retorno da 71
retornos 82

-SSangria 35
Sangria - Ler Total de 95
Sangria - Ler Total de 95
Sangria - No Incidente 95
Satatus 84
Segunda 148
Sem 58
Sensor 62
Separador 73
Serial 49
Serie 98
Server 76
Simbolo 122
Sincronizar Impressao 194
Sobre 143
ST1 82
ST2 82
Status 70, 83, 84, 138
Status DUAL 171
Status ECF Extendido com 14 Bytes
StatusF 70
StatusFuncao 70

120

Str 47
Sub 110
Subs 101
Substituio 91
Valor Acumulado 135
Substituio Tributaria - Ler Total de
Substituicoes 101
Sujeito 53
Suprimento 36
Suprimento - Ler Total de 95

95

-TTA1000 197, 198, 200, 201, 202, 203, 204, 205,


206, 207, 208, 209, 210, 211, 212
Tab 185
tabela 82, 141
Tabulacoes 185
Tags Daruma 175, 179
teclado 156
TEF - Esperando Arquivo 155
TEF - Fechando o Relatorio 151
TEF - Funes que Facilitam o TEF 149
TEF - Imprimindo 152, 153
TEF - Setando o Foco na Janela 151
TEF - Travando o Teclado 156
Tempo 137
Tempo Imprimindo 131, 133
Tempo Ligada 133
Tempo Ligado 131
Terminal 76
Texto 26, 163
Tipo 88, 113
Total 107, 110
Total Acumulado nos Pagamentos 132
Totaliza 92
Totalizador 53, 112
Totalizador Nao Sujeito ao ICMS - Ler Total de 95
Totalizadores 92, 105
Trabalhando com a DUAL em XP 174
NT e Sistemas Protegidos 174
Tratando_os_Erros 157
travar 156
Tres 13
Troco 132
Troco - total acumulado 132
Truncamento 55, 94
Daruma Automao

Index

-U-

-X-

Ultima 108, 111


Ultimo 113, 145
Ultimos 146
Unidade 11, 22
Usa 22, 24
Usuarios 206, 207, 208, 212

XPendente

-VValor 111, 112, 135


Valor 16 Totalizadores No Fiscais 92
Valor Acumulado em Totalizadoes No Fiscais 92
Valor Acumulado Nao Fiscal Nao Vinculado 133
Valor Acumulado Nao Fiscal Vinculado 133
Valor de Cada Alquota 135
Valor de Cancelamento nao fiscal 129
Valor dos Erros do ECF 123
Valor Isento 135
Valor No Incedente 135
Valor Substiruio Tributaria 135
Valor Total de Descontos Nao Fiscais 130
Valores 66, 78
Valores do Registry para o ECF 66
Venda 106
Vendas 60
Vende 10, 11, 74
Vendido 143
Verao 57, 61
Verifica 36, 47, 48, 85, 86, 87, 88, 89, 90, 91, 92,
93, 94, 95, 104, 148
Verifica Modelo do ECF 85
Verificar Autenticacao 171, 172, 173
Verificar Documento 171, 172, 173
Verificar Satus na DUAL 171
VerificHorario 86
Versao 98
Verso 139
Via 148
Vinculado 84, 127
Vinculado Valor Acumulado 133
Vinculados 58
Vincular 58

Daruma Automao

87

-ZZ 102
ZAutomatica 60
Zerando o Registry
Zerar 205, 211
ZPendente 86

79

226

227

Daruma Framework

Endnotes 2... (after index)

Daruma Automao

Back Cover

You might also like