You are on page 1of 402

Daruma Automao

Standard print
manual template
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)
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: maio 2010 in (whereever you are located)
Daruma Framework
Daruma Automao
Publisher
Special thanks to:
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...
Last not least, we want to thank EC Software who wrote this great
help tool called HELP & MANUAL which printed this document.
Managing Editor
Technical Editors
Cover Designer
...enter name...
...enter name...
...enter name...
...enter name...
...enter name...
Production
...enter name...
Team Coordinator
...enter name...
Table of Contents
Foreword 1
Part I Daruma 32 Framework
3
................................................................................................................................... 3 1 Algumas informaes sobre este manual
................................................................................................................................... 6 2 Lista dos Mtodos disponveis na DLL e seus ndices
................................................................................................................................... 10 3 Configurando a Daruma32.SO
................................................................................................................................... 11 4 Configurando a Daruma32.DLL para trabalhar com W.T.S. (Utilizando o Observer).
................................................................................................................................... 14 5 Configurando a Daruma32.DLL para trabalhar com W.T.S. (Utilizando o Windows 2003 Server)
................................................................................................................................... 19 6 Utlizando o FlagShip com Impressoras Daruma
.......................................................................................................................................................... 24 Fazendo um Cupom Fiscal com o FlagShip com Impressoras Daruma
................................................................................................................................... 25 7 Driver Daruma Observer para Aplicativos DOS/Win 16 Bit's
.......................................................................................................................................................... 25 O Qu o Driver Daruma Observer?
.......................................................................................................................................................... 26 Graficamente como Funciona o Observer
.......................................................................................................................................................... 27 Instalando o Driver Observer no Sistema Operacional Windows
.......................................................................................................................................................... 33 Instalando o Driver Linux Observer 2.0
.......................................................................................................................................................... 35 Preparando seu Aplicativo para o Observer
.......................................................................................................................................................... 38 Trabalhando com Comandos em Lote, usando o Mapeamento de Unidade
.......................................................................................................................................................... 39 Trabalhando com o Observer linux em rede
......................................................................................................................................................... 39 Observer com Network File System (NFS)
.......................................................................................................................................................... 40 Mtodos para o Observer de Configurao do Registry
......................................................................................................................................................... 40 Configurao do Observer
......................................................................................................................................................... 41 Daruma_Observer_Registry_Execucao (ndice 53)
......................................................................................................................................................... 41 Daruma_Observer_Registry_Log (ndice 58)
......................................................................................................................................................... 41 Daruma_Observer_Registry_Log_Path (ndice 59)
......................................................................................................................................................... 42 Daruma_Observer_Registry_Entrada (ndice 50)
......................................................................................................................................................... 42 Daruma_Observer_Registry_Saida (ndice 52)
......................................................................................................................................................... 43 Daruma_Observer_Registry_Produto (ndice 61)
................................................................................................................................... 43 8 Mtodos Exclusivos para Impressora Fiscal
.......................................................................................................................................................... 43 Mtodo para ajustar automtico para Horrio de Vero
......................................................................................................................................................... 43 Daruma_FI_ConfiguraHorarioVerao(ndice 314)
.......................................................................................................................................................... 44 Mtodos de Cupom Fiscal
......................................................................................................................................................... 44 Daruma_FI_AbreCupom(ndice 1000)
......................................................................................................................................................... 44 Daruma_FI_VendeItem(ndice 1001)
......................................................................................................................................................... 47 Daruma_FI_CancelaCupom(ndice 1014)
......................................................................................................................................................... 47 Daruma_FI_CancelaItemAnterior(ndice 1005)
......................................................................................................................................................... 48 Daruma_FI_CancelaItemGenerico(ndice 1006)
......................................................................................................................................................... 48 Daruma_FI_IniciaFechamentoCupom(ndice 1007)
......................................................................................................................................................... 50 Daruma_FI_EfetuaFormaPagamento(ndice 1008)
......................................................................................................................................................... 51 Daruma_FI_EfetuaFormaPagamentoDescricaoForma(ndice 1009)
......................................................................................................................................................... 52 Daruma_FI_FechaCupomResumido(ndice 1012)
......................................................................................................................................................... 53 Daruma_FI_FechaCupom(ndice 1011)
......................................................................................................................................................... 54 Daruma_FI_TerminaFechamentoCupom(ndice 1010)
......................................................................................................................................................... 55 Daruma_FI_EstornoFormasPagamento(ndice 1017)
......................................................................................................................................................... 55 Daruma_FI_IdentificaConsumidor(ndice 1013)
......................................................................................................................................................... 56 Daruma_FI_EmitirCupomAdicional(ndice 1018)
......................................................................................................................................................... 57 Daruma_FI_UsaUnidadeMedida(ndice 1016)
Daruma Framework I
Daruma Automao
......................................................................................................................................................... 58 Daruma_FI_AumentaDescricaoItem(ndice 1015)
.......................................................................................................................................................... 58 Mtodos de Recebimentos, No Fiscais e Vinculados
......................................................................................................................................................... 58 Daruma_FI_AbreComprovanteNaoFiscalVinculado(ndice 1203)
......................................................................................................................................................... 59 Daruma_FI_UsaComprovanteNaoFiscalVinculado(ndice 1204)
......................................................................................................................................................... 60 Daruma_FI_FechaComprovanteNaoFiscalVinculado(ndice 1205)
......................................................................................................................................................... 60 Daruma_FI_AbreRelatorioGerencial(ndice 1208)
......................................................................................................................................................... 61 Daruma_FI_FechaRelatorioGerencial(ndice 1201)
......................................................................................................................................................... 61 Daruma_FI_AbreRecebimentoNaoFiscal(ndice 1210)
......................................................................................................................................................... 63 Daruma_FI_EfetuaFormaPagamentoNaoFiscal(ndice 1211)
......................................................................................................................................................... 64 Daruma_FI_LeituraMemoriaFiscalData(ndice 1102)
......................................................................................................................................................... 65 Daruma_FI_LeituraMemoriaFiscalReducao(ndice 1103)
......................................................................................................................................................... 65 Daruma_FI_LeituraMemoriaFiscalSerialData(ndice 1104)
......................................................................................................................................................... 66 Daruma_FI_LeituraMemoriaFiscalSerialReducao(ndice 1105)
......................................................................................................................................................... 67 Daruma_FI_LeituraX(ndice 1101)
......................................................................................................................................................... 68 Daruma_FI_LeituraxSerial(ndice 0000)
......................................................................................................................................................... 68 Daruma_FI_RecebimentoNaoFiscal(ndice 1202)
......................................................................................................................................................... 69 Daruma_FI_ReducaoZ(ndice 1100)
......................................................................................................................................................... 70 Daruma_FI_ReducaoZAjustaDataHora(ndice 1106)
......................................................................................................................................................... 71 Daruma_FI_RelatorioGerencial(ndice 1200)
......................................................................................................................................................... 71 Daruma_FI_Sangria(ndice 1206)
......................................................................................................................................................... 72 Daruma_FI_Suprimento(ndice 1207)
.......................................................................................................................................................... 73 Mtodos Gaveta Autenticao e Outras
......................................................................................................................................................... 73 Daruma_FI_VerificaDocAutenticacao(ndice 1301)
......................................................................................................................................................... 73 Daruma_FI_Autenticacao(ndice 1300)
......................................................................................................................................................... 74 Daruma_FI_AutenticacaoStr(ndice 1302)
......................................................................................................................................................... 75 Daruma_FI_VerificaEstadoGaveta(ndice 1311)
......................................................................................................................................................... 75 Daruma_FI_VerificaEstadoGavetaStr(ndice 1312)
......................................................................................................................................................... 76 Daruma_FI_AcionaGaveta(ndice 1310)
......................................................................................................................................................... 76 Daruma_FI_AberturaDoDia(ndice 603)
......................................................................................................................................................... 77 Daruma_FI_FechamentoDoDia(ndice 604)
......................................................................................................................................................... 77 Daruma_FI_ImprimeConfiguracoesImpressora(ndice 607)
......................................................................................................................................................... 78 Daruma_FI_SaltarLinhas
.......................................................................................................................................................... 79 Mtodos Programao e Configurao
......................................................................................................................................................... 79 Daruma_FI_ProgramaAliquota(ndice 302)
......................................................................................................................................................... 80 Daruma_FI_NomeiaTotalizadorNaoSujeitoIcms(ndice 304)
......................................................................................................................................................... 80 Daruma_FI_ProgramaFormasPagamento(ndice 301)
......................................................................................................................................................... 81 Daruma_FI_ProgramaOperador(ndice 310)
......................................................................................................................................................... 82 Daruma_FI_ProgramaArredondamento(ndice 305)
......................................................................................................................................................... 82 Daruma_FI_ProgramaTruncamento(ndice 306)
......................................................................................................................................................... 83 Daruma_FI_LinhasEntreCupons(ndice 307)
......................................................................................................................................................... 83 Daruma_FI_EspacoEntreLinhas(ndice 308)
......................................................................................................................................................... 84 Daruma_FI_ProgramaHorarioVerao(ndice 303)
......................................................................................................................................................... 85 Daruma_FI_EqualizaFormasPgto(ndice 309)
......................................................................................................................................................... 85 Daruma_FI_ProgramaVinculados(ndice 312)
......................................................................................................................................................... 86 Daruma_FI_ProgramaFormasPgtoSemVincular(ndice 313)
......................................................................................................................................................... 87 Daruma_FI_CfgFechaAutomaticoCupom(ndice 400)
......................................................................................................................................................... 87 Daruma_FI_CfgImpEstGavVendas(ndice 411)
......................................................................................................................................................... 88 Daruma_FI_CfgCalcArredondamento(ndice 403)
......................................................................................................................................................... 88 Daruma_FI_CfgHorarioVerao(ndice 404)
......................................................................................................................................................... 89 Daruma_FI_CfgSensorAut(ndice 405)
......................................................................................................................................................... 90 Daruma_FI_CfgCupomAdicional(ndice 412)
......................................................................................................................................................... 90 Daruma_FI_CfgEspacamentoCupons(ndice 407)
......................................................................................................................................................... 91 Daruma_FI_CfgLimiarNearEnd(ndice 409)
......................................................................................................................................................... 91 Daruma_FI_CfgPermMensPromCNF(ndice 410)
II Contents
II
Daruma Automao
......................................................................................................................................................... 92 Regra de Configurao do Registry
......................................................................................................................................................... 93 Valores do Registry para o ECF
......................................................................................................................................................... 96 Daruma_Registry_AlterarRegistry(Indice 83)
......................................................................................................................................................... 97 Daruma_Registry_AlteraRegistry (ndice 17)
......................................................................................................................................................... 98 Daruma_Registry_RetornaValor(ndice 19)
......................................................................................................................................................... 98 Daruma_Registry_Porta(ndice 1)
......................................................................................................................................................... 99 Daruma_Registry_Path(ndice 2)
......................................................................................................................................................... 100 Daruma_Registry_Status(ndice 3)
......................................................................................................................................................... 100 Daruma_Registry_StatusFuncao(ndice 4)
......................................................................................................................................................... 101 Daruma_Registry_Retorno(ndice 5)
......................................................................................................................................................... 101 Daruma_Registry_ControlePorta(ndice 6)
......................................................................................................................................................... 101 Daruma_Registry_ModoGaveta(ndice 7)
......................................................................................................................................................... 102 Daruma_Registry_Log(ndice 9)
......................................................................................................................................................... 102 Daruma_Registry_NomeLog(ndice 10)
......................................................................................................................................................... 103 Daruma_Registry_Separador(ndice 11)
......................................................................................................................................................... 103 Daruma_Registry_SeparaMsgPromo(ndice 12)
......................................................................................................................................................... 104 Daruma_Registry_Vende1Linha(ndice 13)
......................................................................................................................................................... 104 Daruma_Registry_XAutomatica(ndice 14)
......................................................................................................................................................... 105 Daruma_Registry_ZAutomatica(ndice 15)
......................................................................................................................................................... 105 Daruma_Registry_TerminalServer(ndice 21)
......................................................................................................................................................... 106 Daruma_Registry_AbrirDiaFiscal(ndice 23)
......................................................................................................................................................... 106 Daruma_Registry_IgnorarPoucoPapel(ndice 24)
......................................................................................................................................................... 107 Daruma_Registry_ImprimeRegistry(ndice 18)
......................................................................................................................................................... 107 Daruma_Registry_Default(ndice 20)
......................................................................................................................................................... 108 Daruma_Registry_ErroExtendidoOk(ndice 22)
......................................................................................................................................................... 108 Daruma_Registry_Velocidade(ndice 28)
......................................................................................................................................................... 109 Daruma_Registry_Produto(ndice 34)
......................................................................................................................................................... 109 Daruma_Registry_AplMensagem1(ndice 36)
......................................................................................................................................................... 110 Daruma_Registry_AplMensagem2(ndice 37)
......................................................................................................................................................... 110 Daruma_Registry_TEF_NumeroLinhasImpressao(ndice 38)
......................................................................................................................................................... 111 Daruma_Registry_NumeroSerieNaoFormatado(ndice 42)
......................................................................................................................................................... 111 Daruma_Registry_NumeroLinhasImpressao(ndice 38)
......................................................................................................................................................... 112 Daruma_Registry_MFD_ProgramarSinalSonoro(ndice 52)
......................................................................................................................................................... 113 Daruma_Registry_MFD_LeituraMFCompleta(ndice 49)
......................................................................................................................................................... 113 Daruma_Registry_CupomAdicionalDll(ndice 56)
......................................................................................................................................................... 114 Daruma_Registry_CupomAdicionalDllConfig(ndice 57)
......................................................................................................................................................... 115 Daruma_Registry_ComandosEmLote(ndice 58)
......................................................................................................................................................... 116 Daruma_Registry_FinalLote(ndice 59)
......................................................................................................................................................... 116 Daruma_Registry_PathLote(ndice 60)
......................................................................................................................................................... 116 Daruma_Registry_PCExpanionLogin(ndice 63)
......................................................................................................................................................... 117 Daruma_Registry_MFDValorFinal(ndice 66)
......................................................................................................................................................... 118 Daruma_Registry_LogTamMaxMB(ndice 69)
......................................................................................................................................................... 119 Daruma_Registry_SintegraSeparador(ndice 70)
......................................................................................................................................................... 120 Daruma_Registry_SintegraPath(ndice 71)
......................................................................................................................................................... 120 Daruma_Registry_MFD_LegendaInmetro(ndice 80)
......................................................................................................................................................... 121 Daruma_Registry_SintegraUF(ndice 74)
.......................................................................................................................................................... 121 Mtodos de Informao, Status e Retornos
......................................................................................................................................................... 121 Daruma_FI_StatusCupomFiscal(ndice 1404)
......................................................................................................................................................... 122 Daruma_FI_StatusRelatorioGerencial(ndice 1405)
......................................................................................................................................................... 122 Daruma_FI_StatusComprovanteNaoFiscalVinculado(ndice 1403)
......................................................................................................................................................... 123 Daruma_FI_StatusComprovanteNaoFiscalNaoVinculado(ndice 1471)
......................................................................................................................................................... 123 Daruma_FI_VerificaImpressoraLigada(ndice 1400]
......................................................................................................................................................... 124 Daruma_FI_VerificaModeloECF(ndice 1469)
......................................................................................................................................................... 124 Daruma_FI_VerificaHorarioVerao(ndice 1500)
Daruma Framework III
Daruma Automao
......................................................................................................................................................... 125 Daruma_FI_VerificaDiaAberto(ndice 1484)
......................................................................................................................................................... 126 Daruma_FI_VerificaZPendente(ndice 1489)
......................................................................................................................................................... 126 Daruma_FI_VerificaXPendente(ndice 1488)
......................................................................................................................................................... 127 Daruma_FI_VerificaTipoImpressora(ndice 1444)
......................................................................................................................................................... 127 Daruma_FI_VerificaDescricaoFormasPagamento(ndice 1470)
......................................................................................................................................................... 128 Daruma_FI_VerificaFormasPagamentoEx(ndice 1448)
......................................................................................................................................................... 129 Daruma_FI_VerificaEstadoImpressora(ndice 1401)
......................................................................................................................................................... 130 Daruma_FI_VerificaAliquotasIss(ndice 1440)
......................................................................................................................................................... 130 Daruma_FI_VerificaIndiceAliquotasIss(ndice 1445)
......................................................................................................................................................... 131 Daruma_FI_VerificaTotalizadoresNaoFiscaisEx(ndice 1486)
......................................................................................................................................................... 131 Daruma_FI_VerificaEpromConectada(ndice 1432)
......................................................................................................................................................... 132 Daruma_FI_VerificaRecebimentosNaoFiscal(ndice 1443)
......................................................................................................................................................... 133 Daruma_FI_VerificaTruncamento(ndice 1439)
......................................................................................................................................................... 134 Daruma_FI_VerificaModoOperacao(ndice 1431)
......................................................................................................................................................... 134 Daruma_FI_VerificaTotalizadoresParciais(ndice 1407)
......................................................................................................................................................... 135 Daruma_FI_ClicheProprietarioEx(ndice 1467)
......................................................................................................................................................... 135 Daruma_FI_NumeroCaixa(ndice 1425)
......................................................................................................................................................... 136 Daruma_FI_NumeroLoja(ndice 1426)
......................................................................................................................................................... 137 Daruma_FI_NumeroSerie(ndice 1411)
......................................................................................................................................................... 137 Daruma_FI_RegistraNumeroSerie(ndice 1491)
......................................................................................................................................................... 138 Daruma_FI_VerificaNumeroSerie(ndice 1492)
......................................................................................................................................................... 138 Daruma_FI_RetornaSerialCriptografada(ndice 1490)
......................................................................................................................................................... 139 Daruma_FI_VersaoFirmware(ndice 1412)
......................................................................................................................................................... 139 Daruma_FI_CGC_IE(ndice 1413)
......................................................................................................................................................... 140 Daruma_FI_NumeroCupom(ndice 1417)
......................................................................................................................................................... 140 Daruma_FI_COO(ndice 1468)
......................................................................................................................................................... 141 Daruma_FI_MinutosImprimindo(ndice 1430)
......................................................................................................................................................... 141 Daruma_FI_MinutosLigada(ndice 1429)
......................................................................................................................................................... 142 Daruma_FI_NumeroSubstituicoesProprietario(ndice 1422)
......................................................................................................................................................... 142 Daruma_FI_NumeroIntervencoes(ndice 1421)
......................................................................................................................................................... 143 Daruma_FI_NumeroReducoes(ndice 1420)
......................................................................................................................................................... 143 Daruma_FI_NumeroCuponsCancelados(ndice 1419)
......................................................................................................................................................... 144 Daruma_FI_NumeroOperacoesNaoFiscais(ndice 1418)
......................................................................................................................................................... 144 Daruma_FI_DataHoraImpressora(ndice 1434)
......................................................................................................................................................... 145 Daruma_FI_DataHoraReducao(ndice 1437)
......................................................................................................................................................... 146 Daruma_FI_DataMovimento(ndice 1438)
......................................................................................................................................................... 146 Daruma_FI_ContadoresTotalizadoresNaoFiscais(ndice 1435)
......................................................................................................................................................... 147 Daruma_FI_LerAliquotasComIndice(ndice 1483)
......................................................................................................................................................... 147 Daruma_FI_VendaBruta(ndice 1490)
......................................................................................................................................................... 148 Daruma_FI_VendaBrutaAcumulada(ndice 1498)
......................................................................................................................................................... 148 Daruma_FI_GrandeTotal(ndice 1414)
......................................................................................................................................................... 149 Daruma_FI_Descontos(ndice 1415)
......................................................................................................................................................... 149 Daruma_FI_Acrescimos(ndice 1441)
......................................................................................................................................................... 150 Daruma_FI_Cancelamentos(ndice 1416)
......................................................................................................................................................... 151 Daruma_FI_DadosUltimaReducao(ndice 1410)
......................................................................................................................................................... 152 Daruma_FI_SubTotal(ndice 1408)
......................................................................................................................................................... 152 Daruma_FI_Troco(ndice 1450)
......................................................................................................................................................... 153 Daruma_FI_SaldoAPagar(ndice 1449)
......................................................................................................................................................... 153 Daruma_FI_RetornoAliquotas (ndice 1406)
......................................................................................................................................................... 154 Daruma_FI_ValorPagoUltimoCupom (ndice 1433)
......................................................................................................................................................... 154 Daruma_FI_UltimaFormaPagamento (ndice 1473)
......................................................................................................................................................... 155 Daruma_FI_ValorFormaPagamento (ndice 1446)
......................................................................................................................................................... 155 Daruma_FI_ValorTotalizadorNaoFiscal (ndice 1447)
......................................................................................................................................................... 156 Daruma_FI_UltimoItemVendido (ndice 1423)
IV Contents
IV
Daruma Automao
......................................................................................................................................................... 157 Daruma_FI_TipoUltimoDocumento (ndice 1493)
......................................................................................................................................................... 157 Daruma_FI_MapaResumo(ndice 602)
......................................................................................................................................................... 158 Daruma_FI_RelatorioTipo60Analitico(ndice 605)
......................................................................................................................................................... 160 Daruma_FI_RelatorioTipo60Mestre(ndice 606)
......................................................................................................................................................... 161 Daruma_FI_FlagsFiscais(ndice 1428)
......................................................................................................................................................... 161 Daruma_FI_PalavraStatus(ndice 1481)
......................................................................................................................................................... 164 Daruma_FI_FlagsFiscaisStr(ndice 1479)
......................................................................................................................................................... 164 Daruma_FI_SimboloMoeda(ndice 1427)
......................................................................................................................................................... 165 Daruma_FI_RetornoImpressora(ndice 1402)
......................................................................................................................................................... 166 Daruma_FI_RetornaErroExtendido(ndice 1472)
......................................................................................................................................................... 167 Daruma_FI_RetornaAcrescimoNF(ndice 1451)
......................................................................................................................................................... 168 Daruma_FI_RetornaCFCancelados(ndice 1452)
......................................................................................................................................................... 168 Daruma_FI_RetornaCNFCancelados(ndice 1453)
......................................................................................................................................................... 169 Daruma_FI_RetornaCLX(ndice 1454)
......................................................................................................................................................... 169 Daruma_FI_RetornaCNFNV(ndice 1455)
......................................................................................................................................................... 170 Daruma_FI_RetornaCNFV(ndice 1456)
......................................................................................................................................................... 171 Daruma_FI_RetornaDescicaoCNFV(ndice 1497)
......................................................................................................................................................... 171 Daruma_FI_RetornaCRO(ndice 1457)
......................................................................................................................................................... 172 Daruma_FI_RetornaCRZ(ndice 1458)
......................................................................................................................................................... 172 Daruma_FI_RetornaCRZRestante(ndice 1459)
......................................................................................................................................................... 173 Daruma_FI_RetornaCancelamentoNF(ndice 1460)
......................................................................................................................................................... 173 Daruma_FI_RetornaDescontoNF(ndice 1461)
......................................................................................................................................................... 174 Daruma_FI_RetornaTempoLigado(ndice 1464)
......................................................................................................................................................... 174 Daruma_FI_RetornaGNF(ndice 1462)
......................................................................................................................................................... 175 Daruma_FI_RetornaTempoImprimindo(ndice 1463)
......................................................................................................................................................... 175 Daruma_FI_RetornaTotalPagamentos(ndice 1465)
......................................................................................................................................................... 176 Daruma_FI_RetornaTroco(ndice 1466)
......................................................................................................................................................... 176 Daruma_FI_RetornaRegistradoresNaoFiscais(ndice 1499)
......................................................................................................................................................... 178 Daruma_FI_RetornaRegistradoresFiscais(ndice 1485)
......................................................................................................................................................... 178 Daruma_FI_RetornaValorComprovanteNaoFiscal(ndice 1495)
......................................................................................................................................................... 179 Daruma_FI_RetornaIndiceComprovanteNaoFiscal(ndice 1496)
......................................................................................................................................................... 180 Daruma_FI_RetornarVersaoDLL(ndice 1502)
......................................................................................................................................................... 180 Daruma_FI_CupomMania(ndice 0000)
.......................................................................................................................................................... 181 Mtodos Exclusivos para a Impressora MFD
......................................................................................................................................................... 181 Daruma_FIMFD_DownloadDaMFD (ndice 6004)
......................................................................................................................................................... 183 Daruma_FIMFD_RetornaInformacao (ndice 6000)
......................................................................................................................................................... 186 Daruma_FIMFD_ImprimeCodigoBarras (ndice 6001)
......................................................................................................................................................... 187 Daruma_FIMFD_ImprimeCodigoBarrasCupomAdicional
......................................................................................................................................................... 188 Daruma_FIMFD_TerminaFechamentoCupomCodigoBarras (ndice 6005)
......................................................................................................................................................... 191 Daruma_FIMFD_IndicePrimeiroVinculado (ndice 6003)
......................................................................................................................................................... 191 Daruma_FIMFD_CasasDecimaisProgramada (ndice 6002)
......................................................................................................................................................... 192 Daruma_FIMFD_StatusCupomFiscal (ndice 6008)
......................................................................................................................................................... 192 Daruma_FIMFD_SinalSonoro (ndice 53)
......................................................................................................................................................... 193 Daruma_FIMFD_ProgramaRelatoriosGerenciais (ndice 6013)
......................................................................................................................................................... 194 Daruma_FIMFD_AbreRelatorioGerencial (ndice 6014)
......................................................................................................................................................... 194 Daruma_FIMFD_VerificaRelatoriosGerenciais (ndice 6015)
......................................................................................................................................................... 196 Daruma_FIMFD_EmitirCupomAdicional (ndice 6016)
......................................................................................................................................................... 197 Daruma_FIMFD_AcionarGuilhotina (ndice 6017)
......................................................................................................................................................... 197 Daruma_FIMFD_EqualizarVelocidade (ndice 6018)
......................................................................................................................................................... 198 Daruma_FIMFD_AbreRecebimentoNaoFiscal(ndice 6009)
......................................................................................................................................................... 199 Daruma_FIMFD_RecebimentoNaoFiscal(ndice 6010)
......................................................................................................................................................... 200 Daruma_FIMFD_IniciaFechamentoNaoFiscal(ndice 6011)
......................................................................................................................................................... 201 Daruma_FIMFD_EfetuaFormaPagamentoNaoFiscal(ndice 6012)
......................................................................................................................................................... 202 Daruma_FIMFD_TerminaFechamentoNaoFiscal(ndice 6020)
Daruma Framework V
Daruma Automao
......................................................................................................................................................... 202 Daruma_FIMFD_ProgramarGuilhotina(ndice 6019)
......................................................................................................................................................... 203 Daruma_FIMFD_DescontoAcrescimoItem (ndice 6031)
......................................................................................................................................................... 204 Daruma_FIMFD_GTCodificado(ndice6083)
......................................................................................................................................................... 205 Daruma_FIMFD_Verifica_GTCodificado(ndice 6085)
......................................................................................................................................................... 205 Daruma_FIMFD_NumeroSerialCodificado(ndice6084)
......................................................................................................................................................... 206 Daruma_FIMFD_Verifica_NumeroSerialCodificado(ndice6086)
......................................................................................................................................................... 206 Daruma_FIMFD_CodigoModeloFiscal
......................................................................................................................................................... 207 Daruma_FIMFD_GerarAtoCotepeData(6041)
......................................................................................................................................................... 209 Daruma_FIMFD_GerarAtoCotepePafData(6042)
......................................................................................................................................................... 210 Daruma_FIMFD_GerarAtoCotepePafCoo(6043)
......................................................................................................................................................... 211 Daruma_FIMFD_CupomAdicionalCampoLivre
......................................................................................................................................................... 212 Daruma_Framework_DadosUltimaZ
......................................................................................................................................................... 214 Consumo de MFD - Como trabalha a compactao dos Arquivos
......................................................................................................................................... 215 Daruma_Framework_Teste_Consumo_MFD (ndice 6031
.......................................................................................................................................................... 217 Mtodos Exclusivos para a Impressora MFD Bilhete de Passagem
......................................................................................................................................................... 217 Mtodo Daruma_FIB_AbreBilhetePassagem(ndice 2000)
......................................................................................................................................................... 219 Mtodo Daruma_FIB_VendeItem(ndice 2001)
......................................................................................................................................................... 220 Mtodo Daruma_FIB_UfOrigem(ndice 0000)
.......................................................................................................................................................... 221 Mtodos Exclusivos PAF
......................................................................................................................................................... 221 Menu Fiscal
......................................................................................................................................................... 223 Registro Tipo R01 R07
......................................................................................................................................... 223 Registro Tipo R01
......................................................................................................................................... 224 Registro Tipo R02
......................................................................................................................................... 225 Registro Tipo R03
......................................................................................................................................... 226 Registro Tipo R04
......................................................................................................................................... 228 Registro Tipo R05
......................................................................................................................................... 230 Registro Tipo R06
......................................................................................................................................... 232 Registro Tipo R07
......................................................................................................................................... 232 Registro Tipo EAD
......................................................................................................................................... 233 Tabela de Cdigos de Totalizadores Parciais
......................................................................................................................................... 233 Siglas Documentos
......................................................................................................................................................... 235 Daruma_RSA_CarregaChavePrivada_Arquivo
......................................................................................................................................................... 235 Daruma_RSA_RetornaChavePublica
......................................................................................................................................................... 236 Daruma_RSA_CodificaInformacao
......................................................................................................................................................... 237 Daruma_RSA_DecodificaInformacao
......................................................................................................................................................... 237 Daruma_RSA_CriarAssinatura
......................................................................................................................................................... 238 Daruma_RSA_CriarAssinaturaOnline
......................................................................................................................................................... 239 Daruma_FIMFD_RetornaInformacao (ndice 6000)
......................................................................................................................................................... 242 Daruma_FIMFD_GTCodificado(ndice6083)
......................................................................................................................................................... 242 Daruma_FIMFD_Verifica_GTCodificado(ndice 6085)
......................................................................................................................................................... 243 Daruma_FIMFD_NumeroSerialCodificado(ndice6084)
......................................................................................................................................................... 243 Daruma_FIMFD_Verifica_NumeroSerialCodificado(ndice6086)
......................................................................................................................................................... 244 Daruma_FIMFD_CodigoModeloFiscal
......................................................................................................................................................... 245 Daruma_FIMFD_GerarAtoCotepePafData(6042)
......................................................................................................................................................... 246 Daruma_FIMFD_GerarAtoCotepePafCoo(6043)
................................................................................................................................... 247 9 Mtodos Exclusivos para a Impressora FS2000
.......................................................................................................................................................... 247 Daruma_Registry_FS2000_CupomAdicional(ndice 35)
.......................................................................................................................................................... 248 Daruma_Registry_FS2000_TempoEsperaCheque(ndice 45)
.......................................................................................................................................................... 248 Daruma_FI2000_StatusCheque(ndice 5015)
.......................................................................................................................................................... 249 Daruma_FI2000_ImprimirCheque(ndice 5016)
.......................................................................................................................................................... 250 Daruma_FI2000_ImprimirVersoCheque(ndice 5017)
.......................................................................................................................................................... 250 Daruma_FI2000_LiberarCheque(ndice 5008)
.......................................................................................................................................................... 251 Daruma_FI2000_LeituraCodigoMICR(ndice 5007)
.......................................................................................................................................................... 251 Daruma_FI2000_CancelarCheque(ndice 5026)
VI Contents
VI
Daruma Automao
.......................................................................................................................................................... 252 Daruma_FI2000_LeituraTabelaCheque(ndice 5011)
.......................................................................................................................................................... 252 Daruma_FI2000_CarregarCheque(ndice 5009)
.......................................................................................................................................................... 253 Daruma_FI2000_CorrigirGeometriaCheque(ndice 5010)
.......................................................................................................................................................... 253 Daruma_FI2000_DescontoSobreItemVendido(ndice 5018)
.......................................................................................................................................................... 254 Daruma_FI2000_AcrescimosICMSISS(ndice 5021)
.......................................................................................................................................................... 255 Daruma_FI2000_CancelamentosICMSISS(ndice 5022)
.......................................................................................................................................................... 255 Daruma_FI2000_DescontosICMSISS(ndice 5023)
.......................................................................................................................................................... 256 Daruma_FI2000_LeituraIformacaoUltimoDOC(ndice 5024)
.......................................................................................................................................................... 257 Daruma_FI2000_LeituraIformacaoUltimosCNF(ndice 5025)
.......................................................................................................................................................... 257 Daruma_FI2000_AbreRelatorioGerencial(ndice 5012)
.......................................................................................................................................................... 258 Daruma_FI2000_CriaRelatorioGerencial(ndice 5013)
.......................................................................................................................................................... 258 Daruma_FI2000_VerificaRelatorioGerencial(ndice 5014)
.......................................................................................................................................................... 259 Daruma_FI2000_SegundaViaCNFV(ndice 5019)
.......................................................................................................................................................... 259 Daruma_FI2000_CancelamentoCNFV(ndice 5020)
................................................................................................................................... 260 10 Mtodos Exclusivos para Impressora DUAL
.......................................................................................................................................................... 260 Daruma_DUAL_ImprimirTexto (ndice 4001)
.......................................................................................................................................................... 262 Daruma_DUAL_ImprimirArquivo (ndice 4008)
.......................................................................................................................................................... 263 Daruma_DUAL_VerificaSatus (ndice 4002)
.......................................................................................................................................................... 264 Daruma_DUAL_VerificaDocumento (ndice 4003)
.......................................................................................................................................................... 265 Daruma_DUAL_Autenticar (ndice 4004)
.......................................................................................................................................................... 266 Daruma_DUAL_AcionaGaveta (ndice 4005)
.......................................................................................................................................................... 266 Daruma_DUAL_StatusGaveta (ndice 4009)
.......................................................................................................................................................... 267 Daruma_DUAL_EnviarBMP (ndice 4013)
.......................................................................................................................................................... 268 Daruma_DUAL_VerificarGuilhotina (ndice 4014)
.......................................................................................................................................................... 269 Daruma_DUAL_ConfigurarGuilhotina (ndice 4015)
.......................................................................................................................................................... 269 Daruma_DUAL_Imprimimindo_Codigos_de_Barras (ndice 4007)
.......................................................................................................................................................... 271 Mtodos Alternativos para Impressoras DUAL
......................................................................................................................................................... 271 Trabalhando com a DUAL NA PARALELA (LPT1, LPT2)
......................................................................................................................................................... 272 Resolvendo Problemas de Comunicao com a PARALELA
......................................................................................................................................................... 273 Utilizando as Tags de Impresso de Texto e Formatao
......................................................................................................................................................... 279 Teste Completo com as Tags de Impresso de Texto
.......................................................................................................................................................... 286 Mtodos para a DUAL de Configurao do Registry
......................................................................................................................................................... 286 Daruma_Registry_DUAL_Enter (ndice 30)
......................................................................................................................................................... 286 Daruma_Registry_DUAL_Espera (ndice 32)
......................................................................................................................................................... 287 Daruma_Registry_DUAL_ModoEscrita (ndice 33)
......................................................................................................................................................... 288 Daruma_Registry_DUAL_Porta (ndice 31)
......................................................................................................................................................... 288 Daruma_Registry_DUAL_Tabulacao (ndice 34)
......................................................................................................................................................... 290 Daruma_Registry_DUAL_Velocidade (ndice 46)
......................................................................................................................................................... 290 Daruma_Registry_DUAL_Termica (ndice 48)
.......................................................................................................................................................... 291 10 Exemplos utilizando as TAG's de formatao
......................................................................................................................................................... 291 Exemplo DUAL 01
......................................................................................................................................................... 292 Exemplo DUAL 02
......................................................................................................................................................... 294 Exemplo DUAL 03 (Tabulaes)
......................................................................................................................................................... 295 Exemplo DUAL 04
......................................................................................................................................................... 296 Exemplo DUAL 05
......................................................................................................................................................... 297 Exemplo DUAL 06
......................................................................................................................................................... 298 Exemplo DUAL 07
......................................................................................................................................................... 299 Exemplo DUAL 08
......................................................................................................................................................... 300 Exemplo DUAL 09
......................................................................................................................................................... 301 Exemplo DUAL 10
................................................................................................................................... 303 11 Mtodos Exclusivos para o TA1000
.......................................................................................................................................................... 303 Mtodos para Produtos
......................................................................................................................................................... 303 Daruma_TA1000_CadastrarProdutos(ndice 5420)
Daruma Framework VII
Daruma Automao
......................................................................................................................................................... 304 Daruma_TA1000_LerProdutos(ndice 5460)
......................................................................................................................................................... 306 Daruma_TA1000_ConsultarProdutos(ndice 5440)
......................................................................................................................................................... 308 Daruma_TA1000_AlterarProdutos(ndice 5410)
......................................................................................................................................................... 310 Daruma_TA1000_EliminarProdutos(ndice 5430)
......................................................................................................................................................... 310 Daruma_TA1000_EnviarBancoProdutos(ndice 5350)
......................................................................................................................................................... 311 Daruma_TA1000_ReceberBancoProdutos(ndice 5360)
......................................................................................................................................................... 312 Daruma_TA1000_ReceberProdutosVendidos(ndice 5363)
......................................................................................................................................................... 313 Daruma_TA1000_ZerarProdutos(ndice 5450)
......................................................................................................................................................... 314 Daruma_TA1000_ZerarProdutosVendidos(ndice 5456)
.......................................................................................................................................................... 314 Mtodos para Usurios
......................................................................................................................................................... 314 Daruma_TA1000_CadastrarUsuarios(ndice 5422)
......................................................................................................................................................... 315 Daruma_TA1000_ConsultarUsuarios(ndice 5443)
......................................................................................................................................................... 316 Daruma_TA1000_AlterarUsuarios(ndice 5412)
......................................................................................................................................................... 317 Daruma_TA1000_EliminarUsuarios(ndice 5432)
......................................................................................................................................................... 318 Daruma_TA1000_EnviarBancoUsuarios(ndice 5351)
......................................................................................................................................................... 319 Daruma_TA1000_ReceberBancoUsuarios(ndice 5361)
......................................................................................................................................................... 320 Daruma_TA1000_ZerarUsuarios(ndice 5452)
.......................................................................................................................................................... 320 Teste Completo Gerando Banco de Produtos e Usuarios
......................................................................................................................................................... 320 Daruma TA1000 Gerar Banco com Produtos
......................................................................................................................................................... 322 Daruma TA1000 Gerar Banco com Usuarios
................................................................................................................................... 324 12 Mtodos Exclusivos para TEF
.......................................................................................................................................................... 324 Implementando TEF com a Daruma32.dll
.......................................................................................................................................................... 326 Daruma_TEF_SetFocus(ndice 1902)
.......................................................................................................................................................... 326 Daruma_TEF_FechaRelatorio(ndice 1904)
.......................................................................................................................................................... 327 Daruma_TEF_ImprimirResposta(ndice 1901)
.......................................................................................................................................................... 328 Daruma_TEF_ImprimirRespostaCartao(ndice 1905)
.......................................................................................................................................................... 330 Daruma_TEF_EsperarArquivo(ndice 1900)
.......................................................................................................................................................... 331 Daruma_TEF_TravarTeclado(ndice 1903)
.......................................................................................................................................................... 331 Daruma_TEF_Tratando_os_Erros (ndice 1900)
................................................................................................................................... 338 13 Mtodos Exclusivos para Gerar o Sintegra (MFD)
.......................................................................................................................................................... 338 Informaes sobre Sintegra
.......................................................................................................................................................... 339 Daruma_Sintegra_GerarRegistrosArq (ndice 6022)
.......................................................................................................................................................... 341 Mtodos de Mdio Nvel para Gerar o Sintegra (Mtodos Exclusivos para MFD's)
......................................................................................................................................................... 341 Daruma_Sintegra_GerarRegistro10 (ndice 6023)
......................................................................................................................................................... 342 Daruma_Sintegra_GerarRegistro11(ndice 6024)
......................................................................................................................................................... 343 Daruma_Sintegra_GerarRegistro60M (ndice 6025)
......................................................................................................................................................... 344 Daruma_Sintegra_GerarRegistro60A (ndice 6026)
......................................................................................................................................................... 345 Daruma_Sintegra_GerarRegistro60D (ndice 6027)
......................................................................................................................................................... 346 Daruma_Sintegra_GerarRegistro60I (ndice 6028)
......................................................................................................................................................... 347 Daruma_Sintegra_GerarRegistro60R (ndice 6029)
......................................................................................................................................................... 347 Daruma_Sintegra_GerarRegistro90 (ndice 6030)
.......................................................................................................................................................... 348 Mtodos de Baixo Nvel para Gerar o Sintegra
......................................................................................................................................................... 348 Daruma_FIMFD_RetornarInfoDownloadMFD (ndice 6020)
......................................................................................................................................................... 351 Daruma_FIMFD_RetornarInfoDownloadMFDArquivo (ndice 6021)
................................................................................................................................... 353 14 Consumo de MFD - Trabalhando com a Compacto dos Arquivos
.......................................................................................................................................................... 354 Daruma_Framework_Teste_Consumo_MFD (ndice 6031
................................................................................................................................... 357 15 Nota Alagoana (AL)
.......................................................................................................................................................... 357 Configurando a DLL para FS600/FS700 Trmica
.......................................................................................................................................................... 358 Configurando a DLL para FS345 Matricial
................................................................................................................................... 360 16 Cupom Mania - RJ
.......................................................................................................................................................... 360 Configurando Cupom Mania
.......................................................................................................................................................... 364 Daruma_FI_CupomMania(ndice 0000)
VIII Contents
VIII
Daruma Automao
................................................................................................................................... 365 17 Retornos
.......................................................................................................................................................... 365 Retorna Erro Extendido
.......................................................................................................................................................... 366 Daruma FrameworkTabela de Retornos ST1 e ST2
.......................................................................................................................................................... 368 Possveis valores Retornados
Index 370
Daruma Framework IX
Daruma Automao
Foreword
This is just another title page
placed between table of contents
and topics
1 Foreword
Daruma Automao
Top Level Intro
This page is printed before a new
top-level chapter starts
Part
I
Daruma 32 Framework 3
Daruma Automao
1 Daruma 32 Framework
1.1 Algumas informaes sobre este manual
Manual Eletrnico Verso 2.55
Este manual nico para toda nossa linha de impressoras e terminais, no
importando a linguagem de seu software, tampouco o Sistema Operacional.
Porque somos hoje o nico fabricante que oferece total suporte para
plataformas DOS, Windows e Linux, com acesso local ou remoto, plataformas
32 ou 64 bits. Nossos drivers possuem total homogeneidade de informaes,
tornando o seu desenvolvimento simples, rpido e uniforme. Devemos
ressaltar que os comandos listados nesse manual funcionaro corretamente
quando seguidos os padres a serem enviados pelo Desenvolvedor.
O nosso driver (DLL) nico, ou seja, um Framework, que pode ser utilizado
em qualquer um de nossos produtos Fiscais ou no-fiscais, sendo eles trmicos
ou matriciais ou ainda Terminais Autnomos (TA2000). Independente do
modelo de nossos produtos, meio de acesso ou interface de comunicao.
Lembramos que depois de baixada a DLL diretamente do Portal Exclusivo de
Desenvolvedores Daruma devemos aloc-la no mesmo caminho do Aplicativo
que ir cham-la, ou seja, mesma pasta. No aconselhamos deixar a DLL nas
pastas do Sistema Operacional, ou manter mais de uma DLL na mesma
mquina.
Se voc Desenvolvedor em linguagens DOS ou Win16 bits, poder utilizar o
Observer que o nosso driver voltado pata linguagens 16 bits e comunidades
Clipper, Cobol e linguagens for DOS. Desenvolvedores que desejam utilizar a
DLL, mas no podem devido limitao que sua linguagem aplicada imps.
Podero contar com a comodidade do Observer2 que na sua 2 gerao j
possibilita a troca de arquivos em ambiente Linux facilitando para voc
Desenvolvedor que tem uma aplicao que roda em Linux, porm no
consegue instanciar o driver Linux (Daruma32.so).
Daruma Framework 4
Daruma Automao
Alguns motivos para voc participar do nosso programa de Incentivo ao
Desenvolvedor e adquirir hoje mesmo ECF para desenvolvimento e preo
subsidiado:
1. Porque com uma impressora Daruma ao seu lado voc poder corrigir bug's, testar
e aprimorar mtodos e performance de sua aplicao.
2. Quando necessrio apresentar seu projeto em ambiente real ao cliente,
demonstrando a eficincia conjunta de sua aplicao + impressora. O cliente busca solues
conjuntas.
3. No caso de homologaco de TEF, no aceito Emulador. Como voc simularia uma
queda de energia ? Como o hardware (Impressora) se comporta nesse retorno ? Pois teremos
ausncia de condutividade eltrica com o computador, logo falta de comunicao total.
4. Nos estados de Minas Gerais, Esprito Santo e Bahia o Software tem que ser
Homologado e no aceito Emulador durante a homologao;
5. Porque com o ECF ao seu lado voc ter TOTAL realidade do que acontece no PDV,
podendo assim validar e prestar suporte ao seu cliente em menor tempo e com eficincia.
6. Em ambientes remotos temos infra-estruturas de conectividade (acesso remoto)
particulares ao negcio de cada cliente. Com uma Impressora podemos ter a mesma realidade do
cliente, mesmo em ambiente remoto e customizado. Isso no possvel com Emuladores.
Outras Generalidades deste manual:
100% auto-explicativo, de fcil pesquisa.
Objetivo, dinmico.
Auto-suficiente.
Atende a todos os produtos.
Funes nicas para Windows e Linux.
Nossos canais de Suporte Tcnico Especializado a Desenvolvedores Daruma:
Ligao gratuita via internet
Skype: suporte_daruma
Skype: suporte_desenvolvedores_daruma
Skype: desenvolvedores_suporte_daruma
Skype: daruma_suporte_alexandre
Skype: claudenir_andrade
Skype: suporte_ddc_daruma
Skype: ddc_suporte_daruma
Skype: suporte.daruma (suporte CPU)
Por email
suporte@daruma.com.br
suporte.desenvolvedores@daruma.com.br
desenvolvedores.suporte@daruma.com.br
desenvolvedores.daruma@daruma.com.br
desenvolvedores@daruma.com.br
suporte.alexandre@daruma.com.br
ddc.suporte@daruma.com.br
suporte.ddc@daruma.com.br
suporte.daruma@daruma.com.br (suporte CPU)
Via site
http://www.daruma.com.br/
Via site para desenvolvedores
http://www.desenvolvedoresdaruma.com.br/
Daruma 32 Framework 5
Daruma Automao
Por telefone
Desenvolvedores: 0800 770 3320
Fbrica(Demais equipamentos, Hardware e Cliente Final): 0800 772 5060
Daruma Framework 6
Daruma Automao
1.2 Lista dos Mtodos disponveis na DLL e seus ndices
ndice Descrio do Mtodo:
1 - Daruma_Registry_Porta
2 - Daruma_Registry_Path
3 - Daruma_Registry_Status
4 - Daruma_Registry_StatusFuncao
5 - Daruma_Registry_Retorno
6 - Daruma_Registry_ControlePorta
7 - Daruma_Registry_ModoGaveta
8 - Daruma_Registry_ConfigRede
9 - Daruma_Registry_Log
10 - Daruma_Registry_NomeLog
11 - Daruma_Registry_Separador
12 - Daruma_Registry_SeparaMsgPromo
13 - Daruma_Registry_VendeItemUmaLinha
14 - Daruma_Registry_XAutomatica
15 - Daruma_Registry_ZAutomatica
17 - Daruma_Registry_AlteraRegistry
18 - Daruma_Registry_ImprimeRegistry
19 - Daruma_Registry_RetornaValor
20 - Daruma_Registry_Default
21 - Daruma_Registry_TerminalServer
22 - Daruma_Registry_ErroExtendidoOk
23 - Daruma_Registry_AbrirDiaFiscal
24 - Daruma_Registry_IgnorarPoucoPapel
26 - Daruma_Registry_CNFNV_Personalizado
27 - Daruma_Registry_IgnoraCupomAberto
28 - Daruma_Registry_Velocidade
30 - Daruma_Registry_DUAL_Enter
31 - Daruma_Registry_DUAL_Porta
32 - Daruma_Registry_DUAL_Espera
33 - Daruma_Registry_DUAL_ModoEscrita
34 - Daruma_Registry_Produto
35 - Daruma_Registry_FS2000_CupomAdicional
36 - Daruma_Registry_Ap lMensagem1
37 - Daruma_Registry_AplMensagem2
38 - Daruma_Registry_TEF_NumeroLinhasImpressao
42 - Daruma_Registry_NumeroSerieNaoFormatado
45 - Daruma_Registry_FS2000_TempoEsperarCheque
46 - Daruma_Registry_DUAL_Velociade
47 - Daruma_Registry_DUAL_Tabulacao
48 - Daruma_Registry_DUAL_Termica
49 - Daruma_Registry_MFD_LeituraMFCompleta
52 - Daruma_Registry_MFD_ProgramarSinalSonoro
53 - Daruma_FIMFD_SinalSonoro
56 - Daruma_Registry_CupomAdicionaDll
57 - Daruma_Registry_CupomAdicionaDllConfig
60 - Daruma_Registry_MFDValorFinal
63 - Daruma_Registry_PCExpanionLogin
69 - Daruma_Registry_LogTamMaxLogMB
301 - Daruma_FI_ProgramaFormasPagamento
302 - Daruma_FI_ProgramaAliquota
303 - Daruma_FI_ProgramaHorarioVerao
304 - Daruma_FI_NomeiaTotalizadorNaoSujeitoIcms
305 - Daruma_FI_ProgramaArredondamento
306 - Daruma_FI_ProgramaTruncamento
307 - Daruma_FI_LinhasEntreCupons
308 - Daruma_FI_EspacoEntreLinhas
310 - Daruma_FI_ProgramaOperador
312 - Daruma_FI_ProgramaVinculados
314 - Daruma_FI_ConfiguraHorarioVerao
313 - Daruma_FI_ProgFormasPagtoSemVincular
400 - Daruma_FI_CfgFechAutomaticoCupom
403 - Daruma_FI_CfgCalcArredondamento
Daruma 32 Framework 7
Daruma Automao
404 - Daruma_FI_CfgHorarioVerao
405 - Daruma_FI_CfgSensorAut
407 - Daruma_FI_CfgEspacamentoCupons
409 - Daruma_FI_CfgLimiarNearEnd
410 - Daruma_FI_CfgPermMensPromCNF
411 - Daruma_FI_CfgImpEstGavVendas
412 - Daruma_FI_CfgCupomAdicional
602 - Daruma_FI_MapaResumo
603 - Daruma_FI_AberturaDoDia
604 - Daruma_FI_FechamentoDoDia
605 - Daruma_FI_RelatorioTipo60Analitico
606 - Daruma_FI_RelatorioTipo60Mestre
1000 - Daruma_FI_AbreCupom
1001 - Daruma_FI_VendeItem
1005 - Daruma_FI_CancelaItemAnterior
1006 - Daruma_FI_CancelaItemGenerico
1007 - Daruma_FI_IniciaFechamentoCupom
1008 - Daruma_FI_EfetuaFormaPagamento
1009 - Daruma_FI_EfetuaFormaPagamentoDescricaoForma
1010 - Daruma_FI_TerminaFechamentoCupom
1011 - Daruma_FI_FechaCupom
1012 - Daruma_FI_FechaCupomResumido
1013 - Daruma_FI_IdentificaConsumidor
1014 - Daruma_FI_CancelaCupom
1015 - Daruma_FI_AumentaDescricaoItem
1016 - Daruma_FI_UsaUnidadeMedida
1017 - Daruma_FI_EstornoFormasPagamento
1018 - Daruma_FI_EmitirCupomAdicional
1100 - Daruma_FI_ReducaoZ
1101 - Daruma_FI_LeituraX
1102 - Daruma_FI_LeituraMemoriaFiscalData
1103 - Daruma_FI_LeituraMemoriaFiscalReducao
1104 - Daruma_FI_LeituraMemoriaFiscalSerialData
1105 - Daruma_FI_LeituraMemoriaFiscalSerialReducao
1200 - Daruma_FI_RelatorioGerencial
1201 - Daruma_FI_FechaRelatorioGerencial
1202 - Daruma_FI_RecebimentoNaoFiscal
1203 - Daruma_FI_AbreComprovanteNaoFiscalVinculado
1204 - Daruma_FI_UsaComprovanteNaoFiscalVinculado
1205 - Daruma_FI_FechaComprovanteNaoFiscalVinculado
1206 - Daruma_FI_Sangria
1207 - Daruma_FI_Suprimento
1208 - Daruma_FI_AbreRelatorioGerencial
1210 - Daruma_FI_AbreRecebimentoNaoFiscal
1011 - Daruma_FI_EfetuaFormaPagamentoNaoFiscal
1300 - Daruma_FI_Autenticacao
1301 - Daruma_FI_VerificaDocAutenticacao
1302 - Daruma_FI_AutenticacaoStr
1310 - Daruma_FI_AcionaGaveta
1311 - Daruma_FI_VerificaEstadoGaveta
1312 - Daruma_FI_VerificaEstadoGavetaStr
1400 - Daruma_FI_VerificaImpressoraLigada
1401 - Daruma_FI_VerificaEstadoImpressora
1402 - Daruma_FI_RetornoImpressora
1403 - Daruma_FI_StatusComprovanteNaoFiscalVinculado
1404 - Daruma_FI_StatusCupomFiscal
1405 - Daruma_FI_StatusRelatorioGerencial
1406 - Daruma_FI_RetornoAliquotas
1407 - Daruma_FI_VerificaTotalizadoresParciais
1408 - Daruma_FI_SubTotal
1410 - Daruma_FI_DadosUltimaReducao
1411 - Daruma_FI_NumeroSerie
1412 - Daruma_FI_VersaoFirmware
1413 - Daruma_FI_CGC_IE
1414 - Daruma_FI_GrandeTotal
1415 - Daruma_FI_Descontos
Daruma Framework 8
Daruma Automao
1416 - Daruma_FI_Cancelamentos
1417 - Daruma_FI_NumeroCupom
1418 - Daruma_FI_NumeroOperacoesNaoFiscais
1419 - Daruma_FI_NumeroCuponsCancelados
1420 - Daruma_FI_NumeroReducoes
1421 - Daruma_FI_NumeroIntervencoes
1422 - Daruma_FI_NumeroSubstituicoesProprietario
1423 - Daruma_FI_UltimoItemVendido
1425 - Daruma_FI_NumeroCaixa
1426 - Daruma_FI_NumeroLoja
1427 - Daruma_FI_SimboloMoeda
1428 - Daruma_FI_FlagsFiscais
1429 - Daruma_FI_MinutosLigada
1430 - Daruma_FI_MinutosImprimindo
1431 - Daruma_FI_VerificaModoOperacao
1432 - Daruma_FI_VerificaEpromConectada
1433 - Daruma_FI_ValorPagoUltimoCupom
1434 - Daruma_FI_DataHoraImpressora
1435 - Daruma_FI_ContadoresTotalizadoresNaoFiscais
1437 - Daruma_FI_DataHoraReducao
1438 - Daruma_FI_DataMovimento
1439 - Daruma_FI_VerificaTruncamento
1440 - Daruma_FI_VerificaAliquotasIss
1441 - Daruma_FI_Acrescimos
1443 - Daruma_FI_VerificaRecebimentoNaoFiscal
1444 - Daruma_FI_VerificaTipoImpressora
1445 - Daruma_FI_VerificaIndiceAliquotasIss
1446 - Daruma_FI_ValorFormaPagamento
1447 - Daruma_FI_ValorTotalizadorNaoFiscal
1448 - Daruma_FI_VerificaFormasPagamentoEx
1449 - Daruma_FI_SaldoAPagar
1450 - Daruma_FI_Troco
1451 - Daruma_FI_RetornaAcrescimoNF
1452 - Daruma_FI_RetornaCFCancelados
1453 - Daruma_FI_RetornaCNFCancelados
1454 - Daruma_FI_RetornaCLX
1455 - Daruma_FI_RetornaCNFNV
1457 - Daruma_FI_RetornaCRO
1458 - Daruma_FI_RetornaCRZ
1459 - Daruma_FI_RetornaCRZRestante
1460 - Daruma_FI_RetornaCancelamentoNF
1461 - Daruma_FI_RetornaDescontoNF
1462 - Daruma_FI_RetornaGNF
1463 - Daruma_FI_RetornaTempoImprimindo
1464 - Daruma_FI_RetornaTempoLigado
1465 - Daruma_FI_RetornaTotalPagamentos
1466 - Daruma_FI_RetornaTroco
1467 - Daruma_FI_ClicheProprietarioEx
1468 - Daruma_FI_COO
1469 - Daruma_FI_VerificaModeloECF
1470 - Daruma_FI_VerificaDescricaoFormasPagamento
1471 - Daruma_FI_StatusComprovanteNaoFiscalNaoVinculado
1473 - Daruma_FI_UltimaFormaPagamento
1479 - Daruma_FI_FlagsFiscaisStr
1481 - Daruma_FI_PalavraStatus
1482 - Daruma_FI_PalavraStatusBinario
1483 - Daruma_FI_LerAliquotasComIndice
1484 - Daruma_FI_VerificaDiaAberto
1485 - Daruma_FI_RetornaRegistradoresFiscais
1486 - Daruma_FI_VerificaTotalizadoresNaoFiscaisEx
1488 - Daruma_FI_VerificaXPendente
1489 - Daruma_FI_VerificaZPendente
1490 - Daruma_FI_VendaBruta
1493 - Daruma_FI_TipoUltimoDocumento
1494 - Daruma_FI_VerificaHorarioVerao
1495 - Daruma_FI_RetornaValorComprovanteNaoFiscal
Daruma 32 Framework 9
Daruma Automao
1496 - Daruma_FI_RetornaIndiceComprovanteNaoFiscal
1497 - Daruma_FI_RetornaDescricaoCNFV
1498 - Daruma_FI_VendaBrutaAcumulada
1499 - Daruma_FI_RetornaRegistradoresNaoFiscais
1502 - Daruma_FI_RetornarVersaoDLL
1900 - Daruma_TEF_EsperarArquivo
1901 - Daruma_TEF_ImprimirResposta
1902 - Daruma_TEF_SetFocus
1903 - Daruma_TEF_TravarTeclado
1904 - Daruma_TEF_FechaRelatorio
1905 - Daruma_TEF_ImprimirRespostaCartao
2000 - Daruma_FIB_AbreBilhetePassagem
2001 - Daruma_FIB_VendeItem
4001 - Daruma_DUAL_ImprimirTexto
4002 - Daruma_DUAL_VerificaStatus
4003 - Daruma_DUAL_VerificaDocumento
4004 - Daruma_DUAL_Autenticar
4005 - Daruma_DUAL_AcionaGaveta
4008 - Daruma_DUAL_ImprimirArquivo
4009 - Daruma_DUAL_StatusGaveta
4012 - Daruma_DUAL_ImprimirCodigoBarras
4014 - Daruma_DUAL_VerificarGuilhotina
5000 - Daruma_FI2000_SelecionaBanco
5001 - Daruma_FI2000_SelecionaCidade
5002 - Daruma_FI2000_SelecionaData
5003 - Daruma_FI2000_SelecionaFavorecido
5004 - Daruma_FI2000_SelecionaValorChequeH
5005 - Daruma_FI2000_SelecionaValorChequeV
5006 - Daruma_FI2000_SelecionaTextoVersoCheque
5007 - Daruma_FI2000_LeituraCodigoMICr
5008 - Daruma_FI2000_LiberarCheque
5009 - Daruma_FI2000_CarregarCheque
5010 - Daruma_FI2000_CorrigirGeometriaCheque
5012 - Daruma_FI2000_CriaRelatorioGerencial
5013 - Daruma_FI2000_AbreRelatorioGerencial
5014 - Daruma_FI2000_VerificaRelatorioGerencial
5015 - Daruma_FI2000_StatusCheque
5016 - Daruma_FI2000_ImprimirCheque
5017 - Daruma_FI2000_ImprimirVersoCheque
5018 - Daruma_FI2000_DescontoSobreItemVendido
5019 - Daruma_FI2000_SegundaViaCNFVinculado
5020 - Daruma_FI2000_CancelamentoCNFV
5021 - Daruma_FI2000_AcrescimosICMSISS
5022 - Daruma_FI2000_CancelamentosICMSISS
5023 - Daruma_FI2000_DescontosICMSISS
5024 - Daruma_FI2000_LeituraInformacaoUltimoDoc
5025 - Daruma_FI2000_LeituraInformacaoUltimosCNF
6000 - Daruma_FIMFD_RetornaInformacao
6001 - Daruma_FIMFD_ImprimeCodigoBarras
6002 - Daruma_FIMFD_CasasDecimaisProgramada
6003 - Daruma_FIMFD_IndicePrimeiroVinculado
6004 - Daruma_FIMFD_DownloadDaMFD
6008 - Daruma_FIMFD_StatusCupomFiscal
6009 - Daruma_FIMFD_ProgramarGuilhotina
6013 - Daruma_FIMFD_ProgramaRelatoriosGerenciais
6014 - Daruma_FIMFD_AbreRelatorioGerencial
6015 - Daruma_FIMFD_VerificaRelatoriosGerenciais
6016 - Daruma_FIMFD_EmitirCupomAdicional
6017 - Daruma_FIMFD_AcionarGuilhotina
6018 - Daruma_FIMFD_EqualizarVelocidade
6019 - Daruma_FIMFD_ProgramarGuilhotina
6020 - Daruma_FIMFD_RetornarInfoDownloadMFD
6021 - Daruma_FIMFD_RetornarInfoDownloadMFDArquivo
6022 - Daruma_Sintegra_GerarRegistrosArq
6023 - Daruma_Sintegra_GerarRegistro10
6024 - Daruma_Sintegra_GerarRegistro11
Daruma Framework 10
Daruma Automao
6026 - Daruma_Sintegra_GerarRegistro60M
6027 - Daruma_Sintegra_GerarRegistro60A
6028 - Daruma_Sintegra_GerarRegistro60I
6029 - Daruma_Sintegra_GerarRegistro60R
6030 - Daruma_Sintegra_GerarRegistro90
6031 - Daruma_Framework_Teste_Consumo_MFD
6032 - Daruma_FIMFD_DescontoAcrescimoItem
1.3 Configurando a Daruma32.SO
A share library da Daruma veio para oferecer as mesmas funcionalidades e facilidades da Dll para
Windows.
1. INSTALAO
A Share Library utiliza o mesmo processo de Registry para Windows, assim para se manter a
compatibilidade e o source unificado ser necessrio os seguintes procedimentos:
mkdir -p /usr/local/share/Daruma
chmod 777 /usr/local/share/Daruma
chown -R root.users /usr/local/share/Daruma
No se esquea de dar permisso de leitura e escrita para a porta que ser utilizada, por exemplo
ttyS0, para o usurio que ir utilizar a library.
Ou para facilitar:
chmod 777 /dev/ttyS0
O diretrio /usr/local/share/Daruma ir conter o "registry" da share library intitulado Daruma32.conf,
o qual conter todas as variveis de utilizao da biblioteca.
Por exemplo:
cp libDaruma32.so /usr/local/lib
ln -s /usr/local/lib/libDaruma32.so /usr/lib/local/libDaruma32.so
ldconfig -v | grep libDaruma32.so
Fazendo isso teremos um link simblico para a share library com o nome
de libDaruma32.so, isso facilita quando for linkar o seu software com a
library.
library para o diretrio correspondente e criar o atalho padro, sem ser
necessrio recompilar o seu software. Muito similar a Dll Windows.
Se voc conseguir ver a library carregada com o comando
ldconfig -v | grep libDaruma32.so acima a parte mais "difcil" foi feita.
Caso no veja a libDaruma32.so com o comando ldconfig, verifique se o caminho /usr/local/lib est
contido no arquivo /etc/ld.so.conf.
Agora s linkar o seu programa com a library.
Daruma 32 Framework 11
Daruma Automao
g++ -fwritable-strings seu_programa -lDaruma32
Pronto agora voc vai poder usar toda a estrutura da share library de alto nvel, usando as mesmos
mtodos da Dll para Windows, como por exemplo:
Daruma_FI_AbreCupom, Daruma_FI_VendeItem, Daruma_FI_NumeroCupom e assim por diante.
1.4 Configurando a Daruma32.DLL para trabalhar com W.T.S.
(Utilizando o Observer).
A Daruma32.dll permite tambm comunicao remota, utilizando-se
do Windows Terminal Service, para que isso seja possvel descrevemos abaixo
algumas configuraes a serem feitas para um perfeito funcionamento.
Lembrando que este procedimento aplica-se somente para os Sistemas
Operacionais Win9x at Win2000 ou aplicaes Win 16 bits.
1) Preparando o nosso servidor.
1.1 Baixar a Daruma32.dll verso server, que est disponvel em nossa
pgina para down-load no link:
http://www.desenvolvedoresdaruma.com.br/home/downloads/Daruma32_Server.exe.
1.2 Entrar no aplicativo de que dever estar no servidor. Isso deve ser feito
para que seja criada a pasta Daruma (contendo todas as chaves para configurao),
no registry conforme imagem abaixo:
Uma vez criada a pasta Daruma devemos alterar o valor da chave Terminal
Server para 1(um). Voc poder clicar com o boto direito do mouse e escolhendo a
opo modificar ou ainda dando um duplo clique, que tambm permitir alterar o valor
da chave.
Alterada essa chave o nosso servidor j esta configurado.
2) Preparando a nossa estao.
2.1 Baixar a Daruma32.dll Verso Client, que est disponvel em nossa
pgina para down-load no link:
http://www.desenvolvedoresdaruma.com.br/home/downloads/Daruma32_Windows.
exe.
2.2 Baixar o Observer2 (driver) que fica monitorando o Endereo IP do
Servidor. Para baix-lo basta acessar o link:
http://www.desenvolvedoresdaruma.com.br/home/downloads/Observer_Completo.
exe.
2.3 Verificar incialmente a comunicao localmente na mquina est sendo
realizada com sucesso, seguindo as informaes abaixo na imagem. O Observer
quando configurado localmente aparece no 'Status' o nome do dispositivo
Daruma Framework 12
Daruma Automao
conectado, aps voc certificar que a impressora est conectada localmente vamos
realizar alguns testes na aba 'Testar Observer'.
"Voc poder realizar qualquer testes utlizando as informaes listadas nos tpicos do
'Testar Obverser', abaixo segue alguns exemplos de como realizar os testes utlizando o
Daruma_FI_VendeItem, aonde voc poder passar as informaes e clicar aps
programado no boto ENVIAR"
Daruma 32 Framework 13
Daruma Automao
"Para encerrar o cupom iremos utilizar a funo Daruma_FechaCupomResumido, onde
podemos tambm alterar as opes e ENVIAR."
"Aps a concluso iremos verificar se a comunicao foi realizada com sucesso."
Aps os testes a impressora estiver funcionando adequadamente, poderemos ento
retomar as configuraes para trabalhar remotamente utilizando o Observer.
Daruma Framework 14
Daruma Automao
2.4 Tendo conseguido efetuar a venda sem maiores problemas, s rsta
configurar o Observer2 para passar a monitorar o End IP pblico do Servidor e tambm a
Porta que ser usada, que por Default 1002. Conforme nos mostra a figura abaixo:
As informaes acima so uma demonstrao de como realizar as configuraes.
2.5 Concluda a configurao. Pronto agora voc j pode logar-se no
servidor e entrar no aplicativo de automao comercial e enviar os primeiros
comandos.
Observao: O endereo de IP a ser configurado no Observer2 deve ser o IP quente.
Outro detalhe que necessariamente ao dar um ping partir do servidor e vice-versa,
servidor e cliente devero responder, caso isso no acontea, ento reveja as
configuraes de sua Ethernet ou VPN.
1.5 Configurando a Daruma32.DLL para trabalhar com W.T.S.
(Utilizando o Windows 2003 Server)
A Configurao do Servidor:
Para a realizao da Comunicao entre as maquinas necessitamos primeiramente
configurar o Servidor para a realizao da comunicao, iremos utilizar o seguinte:
Daruma 32 Framework 15
Daruma Automao
- Windows 2003;
- Daruma DLL Ultima Verso Verso Cliente (Client);
- Configuraes Locais.
1 Instalando a DLL:
A DLL Daruma32.dll dever estar localizada na pasta padro indicada por ns
desenvolvedores DARUMA.
Raiz: Windows\System32
2 Configuraes Locais:
Necessitamos configurar no servidor algumas opes para que a comunicao seja
realizada com sucesso.
'Caso' voc no utilizar as portas de comunicaes da mquina, como por exemplo,
COM1, LPT ou etc. aconselhamos desabilitar as portas nos 'Dispositivos de Hardware'
(Segue a Tela Abaixo).
(Meu Computador Propriedade Hardware Gerenciador de Dispositivo)
Aps realizar essas opes adicionais, iremos configurar as propriedades do RDP
Remote Desktop Protocol (Sistema). Iremos fazer as seguintes configuraes:
Daruma Framework 16
Daruma Automao
(Meu Computador Propriedade Remoto)
** Lembrando que, caso o Servidor esteja configurado no AD necessita ser
configurado essa opo dentro do AD.
Realizados essas configuraes no servidor estar funcionando corretamente. Por
qu?
- Iremos acessar o aplicativo no caso o nosso exemplo (Framework) no servidor,
sendo assim a DLL Cliente dever estar aplicado no servidor.
- Sendo assim, o servidor estar sendo o ponto de escape para os clientes.
B Configurao do Cliente:
- Windows XP;
Daruma 32 Framework 17
Daruma Automao
- Acesso Remoto.
1 Acesso Remoto:
Para realizao da conexo remota ao servidor, iremos necessitar estar instalado o
recurso de RDP na maquina do cliente. Para acessa-lo iremos procurar em 'Acessrios
Comunicao - Conexo de rea de trabalho remota', logo aps sua execuo ir
aparecer a seguinte tela:
Computar: IP do Servidor (Ex.: 10.0.0.1)
Nome de Usurio: Nome do Usurio do Servidor
Senha: Senha do Usurio do Servidor
Domnio: Caso haja um domnio (Ex.: Daruma)
Logo aps iremos na 'ABA' Recursos Locais
Daruma Framework 18
Daruma Automao
Iremos 'habilitar' a opo portas seriais
Feitos essas configuraes no RDP, iremos realizar a comunicao com o servidor
utilizando o IP do servidor (Computador).
Realizados essas configuraes estaremos conectados nesse servidor e os aplicativos
para a utilizao da impressora que estar instalada e configurada no servidor
deixando as estaes dos clientes livres.
** Lembrando que o Firewall no interfere nas configuraes.
C Caso o Cliente utilize Domnio ou Fixo?
1 Domnio:
No caso do cliente utilizar o domnio, deveremos ter cincia de qual IP iremos nos
comunicar ao usar o RDP no cliente.
2 Fixo:
Daruma 32 Framework 19
Daruma Automao
No Caso do IP Fixo necessitamos configurar no dispositivo de Rede o IP do
Servidor e do Cliente e certificar que ambos esto comunicando (Ping).
Observaes Importantes:
O fato de ter VPN no obriga ter AD (Active Directory). AD um recurso do Windows,
para controle de diretrio (acessos a objetos de rede).
Um exemplo claro que posso ter VPN, por exemplo, em sistemas operacionais como
s distribuies Linux que no tem o recurso especifico como o AD.
No servidor:
O usurio deve estar no grupo com autorizao para acesso remoto.
O link tem que ser 'rotevel' para rota externa. Executar os comandos 'ping' entre
essas estaes vital e necessrio.
Deve ter haver todas as necessidades liberadas no caso de polticas (policies)
dentro do 'Firewall'.
O servidor preciso dar acesso a Remote Desktop.
1.6 Utlizando o FlagShip com Impressoras Daruma
Vantagens em utilizar o Observer2linux, na linguagem FlagShip.
Voc que j possui um aplicativo pronto, escrito em clipper e que comunica com as nossas
impressoras atrevs do Observer2 para windows poder utilizar o mesmo fonte para o FlagShip, sem ter
que alterar uma nica linha de codigo sequer, no mdulo fiscal.
Instrues de Instalao
1. Introduo;
Este manual de instalao do FlagShip, voltado a voc que desenvolvedor em FlagShip e est
interessado em desenvolver um aplicativo comercial, que se comunique com as nossas Impressoras
Fiscais.
2. Pr-requisitos;
1) necessrio instalarmos a lib Daruma32.so.
Para baixar a lib acesse o seguinte link: Daruma32.so. ("Esta biblioteca ser utilizada pelo driver
Observer2 para Linux"), para voc intalar ela dever realizar o procedimento:
2.1 Crie o seguinte diretrio;
mkdir -p usr/local/share/Daruma
Daruma Framework 20
Daruma Automao
2.2 D as permisses para este diretrio e usurios;
chmod 777 usr/local/share/Daruma
chown -R root.users /usr/local/share/Daruma
2.3 Dadas as permisses, hora de instalarmos e registramos a Daruma32.so;
2.3.1 Importante! O diretrio /usr/local/share/Daruma ir conter o "registry" da
Daruma32.so, este arquivo se chama Daruma32.conf, o qual conter todas as variveis de utilizao da
biblioteca;
2.3.2 Copie a lib para o diretrio criado anteriormente: cp Daruma32.so /usr/local/lib ln -s
/usr/local/lib/libDaruma32.so /usr/local/lib/libDaruma32.so;
2.3.3 Em seguida digite ldconfig -v | grep libDaruma32.so.
2.3.4 Se voc conseguir ver a Daruma32.so carregada com o comando: ldconfig -v | grep
libDaruma32.so acima a parte mais "difcil" foi feita. Caso no veja a Daruma32.so com o comando
ldconfig, verifique se o caminho /usr/local/lib est contido no arquivo /etc/ld.so.conf
2.4 Concluda a instalao da lib hora de voc baixar o Observer2linux para baix-lo
acesse: Observer2linux;
O Observer2linux uma ferramenta criada para permitir a utilizao das facilidades implementadas na
lib Daruma32.so, por programas escritos em linguagens que no acessam shared objects (.so).
Seu funcionamento baseado na troca de informaes, utilizando arquivos texto, veremos mais a fundo
este assunto mais pra frente.
2.4.1 Crie o diretrio para posterioemente copiar o Observer2linux: mkdir -p Observer2linux;
2.4.2 Copie o Observer2linux para o diretrio que acaba de ser criado: cp Observer2linux
/Observer2linux;
2.4.3 Uma vez copiado o Observer2linux, hora de fazermos um teste e ver se esta tudo
certo.
2.5 Criando um arquivo com um comando para Observer2linux;
2.5.1 Estando no diretrio do Observer2linux, entre em qualquer editor disponvel em seu
Linux;
2.5.2 J no editor digite: 1101; ou Daruma_FI_LeituraX;
2.5.3 Salve o arquivo com o nome:Daruma.cmd, se neste exatato momento a impressora
comear a imprimir uma LeituraX, bom sinal, funcionou o Observer2linux est pronto para ser usado.
Ateno se nada acontecer, hora de verificar tudo, fazer um Check List!
2.5.4 Verifique se a Impressora esta on-line e com o cabo conectado nela e no micro;
2.5.5 Verifique se no esqueceu de dar alguma permisso ao usurio
2.5.6 Verifique tambm dentre os processos pelo comando ps -A | grep Observer2;
2.5.7 Verifique se o nome e extenso do arquivo, que contm o comando esto corretos, se
ele foi realmente salvo e onde;
2.5.8 Se mesmo com tudos estando ok, no funcionou, por favor entre em contato com o
nosso suporte ao desenvolvedor 0800 770 3320 ou mande-nos um e-mail para: suporte@daruma.com.br.
D preferncia entre em contato por telefone, ou ainda se preferir nos informe o seu telefone, que
entraremos em contato.
2.6 Executando o Observer2linux em modo de teste;
2.6.1 Para isto deve-se primeiramente matar o processo do Observer2linux anteriormente
executado e iniciar o Observer2linux da seguinte maneira: ./Observer --teste &, se estiver tudo
devidamente instalado "Daruma32.so"+"Observer2linux", teremos como resultado uma LeituraX e o
seguinte retorno do comando: 001;006;000;000
3. Instalando, testando o exemplo em FlagShip;
Quando baixar e abrir o fonte do exemplo em FlagShip, voc notar que o nome do Prg o mesmo do
usado no exemplo em Clipper, isso porque h uma semelhana muito grande entre o Clipper e o FlagShip.
Na verdade o exemplo em FlagShip re-utiliza todo o cdigo escrito em Clipper. Pois bem sendo assim
voc que j escreveu um aplicativo para nossas impressoras em clipper poder re-utilizar o cdigo em
FlagShip, alterando apenas na rotina de envio e espera de arquivo o path onde gravado o arquivo de
comando Daruma.cmd e onde o Observerlinux ir gravar o arquivo de retorno Daruma.ret, acompanhe
essa mudana nos trechos tirados dos exemplos logo abaixo:
Daruma 32 Framework 21
Daruma Automao
4. Exemplo em Clipper;
/*//////////////////////////////////////Funo que envia os dados para o
ECF////////////////////////////////////////*/
static function COMUNICA_COM_ECF(VAR_COMANDO_ECF)
Delete File("c:\DARUMA.CMD")
Delete File("c:\STATUS.TXT")
Delete File("c:\RETORNO.TXT")
Delete File("c:\DARUMA.RET")
/*Escreve comandos no Arquivo*/
H_Handle := fcreate("c:\DARUMA.CMD" )
FWrite( H_Handle , @VAR_COMANDO_ECF, Len( VAR_COMANDO_ECF) )
FClose( H_Handle )
VAR_ESPERA:=1
/*Espera que o Arquivo de Resposta Seja Criado*/
do while VAR_ESPERA > 0
if File("c:\DARUMA.RET")
VAR_ESPERA :=0
else
loop
end if
enddo
RET_TAM:=0
/*Espera o Arquivo ter um conteudo*/
do While RET_TAM = 0
H_Handle := Fopen("c:\DARUMA.RET")
RET_TAM = FSeek( H_Handle, 0, FS_END )
Fclose(H_Handle)
enddo
H_Handle:= Fopen("c:\DARUMA.RET")
POS_RET = 0
VAR_RET_CMD=" "
VAR_AUX =" "
if RET_TAM > 0
for POS_RET = 1 to RET_TAM - 1
fread( H_Handle, @VAR_AUX, 1)
if VAR_AUX <> chr(13)
VAR_RET_CMD= VAR_RET_CMD + VAR_AUX
end if
next
endif
fclose(H_Handle)

set color to n/bg
@ 23,0 clear to 23,80
@23,0 say "Comando Enviado: " + VAR_COMANDO_ECF
@24,0 say "Retorno: " + VAR_RET_CMD
VAR_BUFFER_RETORNO:=VAR_RET_CMD
/* if VAR_ESPERARTECLA <> 1
inkey(0)
end if
*/
return NIL
Daruma Framework 22
Daruma Automao
/*//////////////////////////////////Fim da Funo que envia os dados para o
ECF///////////////////////////////////*/
5. Exemplo em FlagShip;
/*//////////////////////////////////////Fun?o que envia os dados para o
ECF///////////////////////////////////////*/
static function COMUNICA_COM_ECF(VAR_COMANDO_ECF)
Delete File("/Observer2/Daruma.cmd")
Delete File("/Observer2/Status.txt")
Delete File("/Observer2/Retorno.txt")
Delete File("/Observer2/Daruma.ret")
/*Escreve comandos no Arquivo*/
H_Handle := fcreate("/Observer2/Daruma.cmd" )
FWrite( H_Handle , @VAR_COMANDO_ECF, Len( VAR_COMANDO_ECF) )
FClose( H_Handle )
VAR_ESPERA:=1
/*Espera que o Arquivo de Resposta Seja Criado*/
do while VAR_ESPERA > 0
if File("/Observer2/Daruma.ret")
VAR_ESPERA :=0
else
loop
end if
enddo
RET_TAM:=0
/*Espera o Arquivo ter um conteudo*/
do While RET_TAM = 0
H_Handle := Fopen("/Observer2/Daruma.ret")
RET_TAM = FSeek( H_Handle, 0, FS_END )
Fclose(H_Handle)
enddo
H_Handle:= Fopen("/Observer2/Daruma.ret")
POS_RET = 0
VAR_RET_CMD=" "
VAR_AUX =" "
if RET_TAM > 0
for POS_RET = 1 to RET_TAM - 1
fread( H_Handle, @VAR_AUX, 1)
if VAR_AUX <> chr(13)
VAR_RET_CMD= VAR_RET_CMD + VAR_AUX
end if
next
endif
fclose(H_Handle)

set color to n/bg
@ 23,0 clear to 23,80
@23,0 say "Comando Enviado: " + VAR_COMANDO_ECF
@24,0 say "Retorno: " + VAR_RET_CMD
VAR_BUFFER_RETORNO:=VAR_RET_CMD
if VAR_ESPERARTECLA <> 1
Daruma 32 Framework 23
Daruma Automao
inkey(0)
end if
return NIL
/*//////////////////////////////////Fim da Fun?o que envia os dados para o
ECF///////////////////////////////////*/
*Muito bem agora que voc j viu o que mudou e foi apenas o pah (caminho), em relao ao trecho de
cdigo de escrita e leitura de arquivo de comando. Vejamos como instalar o exemplo e test-lo.
6. Compilando o ".PRG" com FlagShip;
Para voc compilar o aplicativo Daruma32.prg, com o compilador FlagShip para Linux, observe
a seguinte mudana no cdigo:
Foi alterado somente o Path, onde o Aplicativo em FlagShip ir criar, e apagar, os seguintes
arquivos:
Daruma.cmd, Daruma.ret, Status.txt, Retorno.txt
* Ateno: O arquivo Daruma.cmd, deve ser criado no mesmo diretrio, onde o Observer2 para
Linux est configurado.
possvel compilar de duas formas, na forma dinmica e esttica, conforme a parametrizao.
6.1 Compilando o Daruma32.prg de forma dinmica;
Para rodar o executvel necessrio ter o FlagShip instalado em seu computador. Para
compilar
o projeto digite os comando abaixo:
# FlagShip Daruma32.prg -o Daruma32
6.2 Compilando o Daruma32.prg de forma esttica;
Para rodar o executvel no necessrio ter o FlagShip instalado, pois as lib's necessrias j
esto incorporadas, neste caso, o FlagShip roda sem problemas, desde que a verso do GLib_C, seja a
mesma, veja no item 5.3 como verificar a verso da Glib_C, para compilar digite os comandos abaixo:
# FlagShip Daruma32.prg -stat -o Daruma32
*Ateno: recomendado ter a verso "glibc-2.3.3" ou superior
6.2.1 Verificando a verso da GLib_C;
Para verificar se o GLib_C est instalado, e qual sua verso, execute a linha de
comando abaixo:
# rpm -qa | grep -i glib ==> "a minha por exemplo glibc-2.3.3"
7. Como executar nosso programa em FlagShip;
possvel executar o aplicativo tanto modo grfico, como em modo terminal (texto)
Para rodar o aplicativo, entre no diretrio onde se encontra o aplicativo, e digitar os comandos
abaixo:
# ./Daruma32
7.1 Como executar no modo texto;
Essa opo ir executar o aplicativo, no terminal de comandos, para fazer essa escolha basta
digitar os comandos abaixo:
# ./Daruma32 -io=t
Daruma Framework 24
Daruma Automao
1.6.1 Fazendo um Cupom Fiscal com o FlagShip com Impressoras Daruma
J com o exemplo em FlagShip inicializado hora de voc que est comeando agora a
desenvolver para ECF (emissor de cupom fiscal), necessrio voc seguir alguns processos
importantes.
1. Qual o primeiro documento emitido quando da abertura do movimento fiscal?
uma LeituraX. um relatrio que contm todas as informaes decorrentes do movimento
realizado no PDV(ponto-de-venda), onde esta o ECF. Sendo assim para abrir o movimento, bastando
para isso enviar o comando de LeituraX. Ento como enviar o comando?
Existem duas maneiras, que se aplicam a todos os comandos existentes nesse help.
1) Crie um arquivo com comando, passando nome do Mtodo-
>Daruma_FI_LeituraX;
2) Outra forma, ao invz de invocar o mtodo pelo seu nome, passado apenas o
seu ndice, seguido do(s) parmetro(s): 1101;
Onde 1101 o ndice do mtodo LeituraX;
Ponto-e-vgula o separador padro usado para separar o ndice dos
parmetros;
2. Estando com o dia aberto, hora de partirmos para o primeiro cupom fiscal;
Abaixo listarei os comandos usados para a emisso de nosso primeiro cupom fiscal:
2.1 1000; (parmetro opcional); ou Daruma_FI_AbreCupom;(parmetro opcional);
2.2 1001;123;mamao;FF;I;1,00;2;0,10;%;0,00; ou
Daruma_FI_VendeItem;123;mamao;FF;I;1,00;2;0,10;%;0,00;
2.3 1012;dinheiro;Obrigado, Volte Sempre!!!; ou
Daruma_FI_FechaCupomResumido;dinheiro;Obrigado, Volte Sempre!!!;
O exemplo posto anteriormente suficiente para que seja emitido um cupom fiscal, lebrando
que trata-se de um exemplo, e cada comando dever ser preferncialmente escrito em um arquivo,
visando facilitar o tratamento dos arquivos de retorno.
Por consequncia teremos trs arquivos de retorno, porm voc dever abrir cada um e certificar-se de
que o retorno est ok, como o que mostrado a seguir.
3. Lendo o arquivo de retorno e verificando se correu tudo dentro do esperado, durante a
execuo do arquivo de comando Daruma.cmd;
3.1 Para cada comando Daruma.cmd enviado, voc receber um arquivo de retorno
Daruma.ret, que conter a seguinte estrutura.
exemplo: 001;006;000;000
3.2 Onde 001 o byte do tipo inteiro que nos indica que o mtodo foi enviado com sucesso
para o ECF. Importante!!! Qualquer valor diferente de 1(um), chame o mtodo
Daruma_FI_RetornoImpressora(ndice1402).
3.3 006 o ACK.
3.4 000: Equivale ao byte de Status 1, para ver a tabela de valores deste byte, clique
aqui:DarumaFrameworkTabeladeRetornosST1eST2.
3.5 000: Equivale ao byte de Status 2, para ver a tabela de valores deste byte, clique
aqui:DarumaFrameworkTabeladeRetornosST1eST2.
Daruma 32 Framework 25
Daruma Automao
1.7 Driver Daruma Observer para Aplicativos DOS/Win 16 Bit's
1.7.1 O Qu o Driver Daruma Observer?
O Driver Observer2 o nico driver Desenvolvido no mercado de automao comercial, que permite o
uso de um nico Protocolo entre os aplicativos DOS e Windows e ainda Linux que no conseguem
instnciar uma biblioteca no Linux (Daruma32.SO).
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 Observer2 que ficar residente na rea de Relgio do Windows
esperando que seja enviado comandos para ele.
Porque usar o Observer2 em meu programa DOS?
1) Porque com isso o Protocolo que voc esta usando no seu programa DOS poder continuar sendo o
mesmo quando voc migrar seu programa para Windows. Aproveitando todas as rotinas de envio de
comando, cultura e aprendizado de seus programadores com este protocolo utilizado pelo Observer2.
2) Porque todas as EVOLUES e MELHORIAS e FACILIDADES da Daruma32.dll estaro
disponveis para seu Aplicativo DOS, porque o Observer2 utiliza-se da Dll de Comunicao com todas as
faciliadades que nela se encontra.
3) Porque agora para enviar os mtodos para o ECF atravs de seu aplivativo DOS voc utiliza-se dos
Mtodos de Alto-Nvel que a Daruma32.dll contm, basta passar o NDICE ou o nome do mesmo o
ndice voc Obtem ao Lado do nome da cada Mtodo, neste Help, ou seja, com isso voc consegue usar
mtodos como por exemplo Daruma_FI_FechaCupomResumido antes no disponvies no DOS, porm
agora disponivels no Observer2.
4) Porque agora voc no necessita se preocupar com a passagem correta dos Parmetros, como por
exemplo na Descrio da venda de um tem, voc no necessita se preocupar com preenchimento do
restante da Descrio pois a Daruma32.dll atravs do Observer2 faz isso para voc!! Esta Facilidade antes
estava disponvel apenas no Windows, mas agora est disponvel tambm para Aplicativos DOS/Win 16
bits.
5) Agora voc tambm consegue enviar no somente um mtodo por vez, mas sim um lote, todos os
mtodos que necessitar. Assim sendo voc poder enviar "todos" os itens em um nico arquivo. Obs.:
Para cada comando dentro do lote de comandos, haver um retorno prprio, por exemplo se no arquivo
de lote de comandos tivermos dois itens ento teremos dois retornos.
6) Porque em ambiente Linux mesmo voc no conseguindo instnciar um shared object ainda assim
voc poder trabalhar com troca de arquivo.
Ao Instalar o Daruma Observer2 ele ficar residente com o Logo da DARUMA no Relgio do Windows,
rea denominada como rea de Notificao do Windows. Ao passar o mouse por cima aparecer o Nome
do Driver e sua verso.
Aps isso este driver ficar Observando um diretrio pr-configurado em busca de Arquivos de
mtodos, o Valor DEFAULT deste Diretorio e deste Arquivo C:\DARUMA.CMD, porm voc poder
configurar no Men do Proprio Driver ou atravs de Comandos.
Sua aplicao fica no Aguardo do Arquivo de Resposta, o Nome e Path DEFAULT deste arquivo de Reposta
C:\DARUMA.RET, porm voc poder configurar no Menu do Prprio Driver ou atravs de Comandos.
RET;ACK;ST1;ST2;
ou
RET;ACK;ST1;ST2;INFORMAO;
RET - Retorno do Mtodo.
ACK - Byte Indicativo de Recebimento OK de Comunicao com a Impressora.
ST1 - Primeiro Byte que contm Erros ou avisos do ECF.
ST2 - Segundo Byte que contm Erros ou avisos do ECF.
INFORMAO - Informao desejada caso o mtodo enviado requera uma informao alm do ACK
ST1 e ST2, como por exemplo, Nmero de Srie do ECF, Data e Hora do ECF, SubTotal, Nmero do
Cupom..
4) SEMPRE o valor ser terminado em ; (ponto e Virgula) e no formato de 3 Dgitos, por exemplo:
Daruma Framework 26
Daruma Automao
Exemplo 1) 001;006;064;001;
001 - Indica que o Mtodo Devolveu 1(indicativo de OK).
006 - ACK indica que o Protocolo de Comunicao est OK.
064 - Indica que o ECF est com Pouco Papel - Veja TabeladeErro.
001 - Indica que o Mtodo no Foi Executado - Veja TabeladeErro.
Exemplo 2) -27;006;064;000;
-27 - Indica que o Mtodo conseguiu enviar o comando para o ECF porm o ECF
contm erro ou avisos, isso acontece porque a chave StatusFuno est ligada.
006 - ACK indica que o Protocolo de Comunicacao est OK.
064 - Indica que o ECF esta com Pouco Papel - Veja TabeladeErro.
001 - Indica que o Mtodo no Foi Executado - Veja TabeladeErro.
Exemplo 3) 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).
006 - ACK indica que o Protocolo de Comunicao est OK.
000 - Indica que No Existe Erro - Veja TabeladeErro.
000 - Indica que No Existe Erro - Veja TabeladeErro.
00028 - Nmero do Cupom.
1.7.2 Graficamente como Funciona o Observer
O Driver Observer2 basicamente Varre o Diretrio 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 Observer2) sero criados.
Daruma 32 Framework 27
Daruma Automao
1.7.3 Instalando o Driver Observer no Sistema Operacional Windows
A) Como realizar a instalao do Observer?
1) Para proceder a instalao do Driver Observer2, voc deve baixar o Arquivo Observer2.ZIP em nossa
Pgina no link:
http://www.desenvolvedoresdaruma.com.br/home/downloads/Observer_completo.exe, e em seguida
descompacte em uma pasta de sua preferncia.
1.1) Recomendamos que a extrao dos arquivos seja realizado na Raiz da mquina (C:\).
2) Ao descompactar voc ir encontrar os seguintes Arquivos:
2.1) O Observer composto por diversos arquivos de configurao, exemplos entre outros que sero
explicado no prximo sub-ttulo, os arquivos extraidos do site da Daruma so:
DARUMA32;
Daruma32.dll;
DARUMA32.exe;
Daruma.lib;
Daruma32.prg;
MFC71.dll;
msvcr71.dll;
Observer2.exe.
3) Deixar a ECF (emissor cupom fiscal), ou entao DUAL, devidamente conectada ao computador e ligada;
Por ltimo dar um duplico clique no Observer2.exe.
3.1) Ao executar o Observer2.exe voc ir perceber que apareceu o seguinte icone na rea
localizada do Windows como IconTray:
B) Qual o contedo que acompanha o Observer?
1) Conforme disposto acima, iremos explicar abaixo quais as funes de cada integrante que acompanha o
Observer2:
DARUMA32: Executa atravs de um atalha o aplicativo em Clipper, que simula as apilicaes e funes
utilizando os comandos na impressora fiscal, este aplicativo para ser testado junto ao Observer e ver
como realizado a funcionabilidade do Observer.
Daruma32.dll: DLL (Dynamic Lib Library) desenvolvida pela Daruma e utilizada no Observer. Esta dll
quem faz a interface com a Impressora e devolve os retornos para o Observer2, que por sua vez devolve
Daruma Framework 28
Daruma Automao
o retorno para a sua aplicao atravs do DARUMA.RET. Est DLL deve ser devidamente atualizada
sempre que possvel, localizada no link:
http://www.desenvolvedoresdaruma.com.br/home/downloads/Daruma32_Windows.exe
DARUMA32.exe: Executvel da verso Clipper desenvolvida pelos Desenvolvedores da Daruma, software
de automao para a realizao de testes com a impressora.
Daruma.lib: Biblioteca de informao necessria para o funcionamento das operaes realizadas em
Clipper e funcionabilidade do aplicativo.
Daruma32.prg: Cdigo Fonte da aplicao em Clipper, extremamente til para verificar como se envia os
comandos para o observer e como se l os retornos devolvidos pelo observer2. Dica no final deste fonte,
voc encontrar a funo que envia os comandos e a funo que l os retornos.
MFC71.dll: DLL (Dynamic Lib Library) necessria para acessar os arquivos de sistema do Windows.
msvcr71.dll: DLL (Dynamic Lib Library) necessria para acessar os arquivos de sistema do Windows.
Observer2.exe: O principal executvel, ao executar o Observer2.exe voc estar realizando a
comunicao entre o ECF e a mquina. Necessrio sempre estar disposto em aao para executar os
comandos com a impressora.
2) Configurando o Observer2.exe:
2.1) Ao Iniciar voc ver que o mesmo ficar executado na Barra de Notificaes do Windows
(IconTray), conforme figura Abaixo.
2.2) Para Configurar o Observer2 basta dar um duplo-clique no cone (conforme fgura acima):
Daruma 32 Framework 29
Daruma Automao
DISPOSITIVO
Status:
Incialmente ir aparecer a palavra Carregando, aps carregar a impressora ir
aparecer a informao acima, caso aparea ECF no identificada necessrio verificar
as conexes com a impressora para segurar que o dispositivo est devidamente
conectado.
Dispositivo:
Produto: Selecione o Produto a ser utilizado, no caso da impressora FS345 ou
FS600 o produto fica sendo como FS345.
Porta: A porta aonde est localizada o Cabo de comunicao.
Log:
Gravar Log: Ao acionar o CheckBox, o LOG referente ao Observer ser gravado
no endereo disponvel abaixo, configurado na opo Path.
Path: Indica o caminho aonde ser salvo o LOG do Observer.
Inicializaao:
Daruma Framework 30
Daruma Automao
Modo de Execuo: Indica o modo de execuo ao ser inicializado o Observer.
Exibir Janela de inicializao: Ao marcar o checkbox, ir exibir uma janela de
inicializao do aplicativo.
Caracteres - Arquivos:
Separador: Dispes dos paramtros ultilizados.
Terminador de Linha 1: Comandos de encerramentos das linhas de executao.
Terminador de Linha 2: Comandos de encerramentos das linhas de executao.
Funcionamento:
Modo Arquivo: Modo ultilizado para realizar a comunicao local do aplicativo em
DOS, utilizando as funes de Entrada e Sada de informao.
Modo Terminal: Modo ultilizado para realizar comunicao remota.
(W.T.S.ultilizandooObserver)
Arquivo de Entrada: Arquivo localizado no caminho especializado aonde o
Observer ir realizar a entrada de comandos na impressora.
Arquivo de Sada: Arquivo localizado no caminho especializado aonde o Observer
ir realizar a sada de comandos na impressora.
Endereo Host: Endereo disponibilizado em Modo Terminal para a realizao de
comunicao remota.
Porta Host: Disponibilizado em Modo Terminal, indica a Porta em que o
Hospedeiro (Host) est aberta para a realizao de comunicao via remota.
Configurao de Processamento:
Prioridade: Indica a prioridade de processamento do Observer.
Latencia: Indica a velocidade de comunicao da troca de informaes no
Observer.
TESTAR OBSERVER
Nesta opo do Observer possvel testar suas funes seguindo os exemplos dos comandos localizados
nos ndices abaixo:
Daruma 32 Framework 31
Daruma Automao
Dicas:
I) Caso voc necessite ou deseje que o Observe 2 entre automticamente ao inicializar o Windows, voc
pode criar um atalho na pasta Iniciar de seu computador.
II) Para verificar nosso exemplo Completo em Clipper com Fonte Aberto. Para baix-lo acesse:
http://www.desenvolvedoresdaruma.com.br/home/downloads/fontes_clipper.exe
III) Para acessar nosso HELP onde contm todos os ndices dos mtodos que voc deve chamar desde seu
aplicativo DOS/Win 16 bits. Para baix-lo acesse:
http://www.desenvolvedoresdaruma.com.br/home/downloads/Daruma32_Help_Chm.exe
IV) Para baixar o Observer2 acesse:
http://www.desenvolvedoresdaruma.com.br/home/downloads/Observer_completo.exe
V) Observer2 dever permanecer o tempo todo com a opo Modo Arquivo configurada, caso contrrio ele
para de varrer o diretrio e passa para o Modo Terminal Server.
VI) Eventualmente, caso o comando Daruma.cmd perder-se durante o processo de entrada de dados na
impressora, podemos seguir o procedimento abaixo:
1 - Criar um DARUMA.CMX e somente aps ter certeza de que acabou de escrever o comando,
renomear o arquivo para DARUMA.CMD.
Daruma Framework 32
Daruma Automao
Caso o Arquivo de Retorno, o Daruma.ret retornar zerado,
2 - Necessitamos verificar se de fato o aplicativo est aguardando que o DARUMA.RET fosse criado e
que tivesse contedo (Conforme nosso exemplo em Clipper localizado no link acima (II).
3 - No se esquea de sempre apagar o Daruma.ret aps a execuo do comando.
VII) Voc poder customizar o path para troca de arquivos de comando, bem como os nomes dos
mesmos.
VIII) Caso o Retorno dos arquivos de Sada, volte com os nmeros zerados, recomendamos voc atualizar
a DLL para a mais atual disponvel em nosso site e caso contrrio continue com o problema aumentar a
Latencia para 100.
DLL: http://www.desenvolvedoresdaruma.com.br/home/downloads/Daruma32_Windows.exe
IX) Para evitar lentido da troca de arquivos entre outros no Observer2 recomendamos que seja
verificado em nosso cdigo fonte as opes de Entrada/Sada de arquivos evitando erros, lentido entre
outros problemas, onde solicitamos que seja construido de forma paralela ou semelhamente ao nosso
cdigo disponibilizado no arquivo Daruma32.prg ou abaixo:
/*////////////////////////////////////////Funo que envia os dados para o
ECF/////////////////////////////////////////*/
static function COMUNICA_COM_ECF(VAR_COMANDO_ECF)
Delete File("c:\DARUMA.CMD")
Delete File("c:\STATUS.TXT")
Delete File("c:\RETORNO.TXT")
Delete File("c:\DARUMA.RET")
/*Escreve comandos no Arquivo*/
H_Handle := fcreate("c:\DARUMA.CMD" )
FWrite( H_Handle , @VAR_COMANDO_ECF, Len( VAR_COMANDO_ECF) )
FClose( H_Handle )
VAR_ESPERA:=1
/*Espera que o Arquivo de Resposta Seja Criado*/
do while VAR_ESPERA > 0
if File("c:\DARUMA.RET")
VAR_ESPERA :=0
else
loop
end if
enddo
RET_TAM:=0
/*Espera o Arquivo ter um conteudo*/
do While RET_TAM = 0
H_Handle := Fopen("c:\DARUMA.RET")
RET_TAM = FSeek( H_Handle, 0, FS_END )
Fclose(H_Handle)
enddo
H_Handle:= Fopen("c:\DARUMA.RET")
POS_RET = 0
VAR_RET_CMD=" "
VAR_AUX =" "
if RET_TAM > 0
for POS_RET = 1 to RET_TAM - 1
Daruma 32 Framework 33
Daruma Automao
fread( H_Handle, @VAR_AUX, 1)
if VAR_AUX <> chr(13)
VAR_RET_CMD= VAR_RET_CMD + VAR_AUX
end if
next
endif
fclose(H_Handle)

set color to n/bg
@ 23,0 clear to 23,80
@23,0 say "Comando Enviado: " + VAR_COMANDO_ECF
@24,0 say "Retorno: " + VAR_RET_CMD
VAR_BUFFER_RETORNO:=VAR_RET_CMD
if VAR_ESPERARTECLA <> 1
inkey(0)
end if
return NIL
Qualquer dvida favor entrar em contato com o Suporte ao Desenvolvedor por um de nossos canais
listados a seguir:
Ligao gratuita via internet
Skype: suporte_daruma
Skype: suporte_desenvolvedores_daruma
Skype: desenvolvedores_suporte_daruma
Skype: daruma_suporte_alexandre
Skype: claudenir_andrade
Skype: suporte_ddc_daruma
Skype: ddc_suporte_daruma
Skype: suporte.daruma (suporte CPU)
Por email
suporte@daruma.com.br
suporte.desenvolvedores@daruma.com.br
desenvolvedores.suporte@daruma.com.br
desenvolvedores.daruma@daruma.com.br
desenvolvedores@daruma.com.br
suporte.alexandre@daruma.com.br
ddc.suporte@daruma.com.br
suporte.ddc@daruma.com.br
suporte.daruma@daruma.com.br (suporte CPU)
Por telefone
Desenvolvedores: 0800 770 3320
1.7.4 Instalando o Driver Linux Observer 2.0
LINUX Observer 2
Daruma Framework 34
Daruma Automao
1. Introduo;
O Linux Observer 2.0 uma ferramenta criada para permitir a utilizao das facilidades
implementadas na Daruma32.so, por programas escritos em linguagens que no acessam shared objects
(.so).
Seu funcionamento baseado na troca de informaes utilizando arquivos texto.
2. Pr-requisitos;
Para que o Observer funcione adequadamente, e necessrio certificar-se que a
Daruma32.so est corretamente instalada.
Para isto, como root, deve-se executar o seguinte comando:
ldconfig -v | grep Daruma32
O retorno experado :
libDaruma32.so -> libDaruma32.so
No caso de no aparecer ao menos uma vez o retorno acima, voc deve seguir as instrues de
instalacao especficas da Daruma32.so, contida no arquivo LEIAME.txt da SO
ConfigurandoaDaruma32.SO.
3. Instalao e Inicializacao do Observer;
Para utilizar o Observer no necessrio nenhum procedimento de instalao ou compilao.
Deve-se apenas dar permisso de execucao ao arquivo binrio Observer da seguinte forma:
chmod 777 Observer
Em seguida deve-se executar o Observer conforme mostrado abaixo:
./Observer &
Este comando far com que o Observer seja executado em segundo plano, e retornara o
ID do Processo (PID).
[1] 123 (Supondo que o ID gerado seja 123)
Para certificar-se de que o Observer est sendo executado, deve-se executar no shell a seguinte linha
de comando:
ps -A | grep Observer
O retorno esperado : 123 pts/1 00:01:00 Observer
Com isto o Observer ir esperar no mesmo diretrio onde ele se encontra um arquivo chamado
Daruma.cmd, que dever ser gerado pelo seu software para comunicacao com a SO.
Este arquivo dever conter o nome do mtodo ou seu ndice, e os parmetros separados por ";",
como mostrado no exemplo abaixo:
Se voc deseja chamar a funcao Daruma_FI_AbreCupom que possui como parmetro apenas o CGC
(opcional), deve-se escrever no arquivo Daruma.cmd a seguinte linha:
Daruma_FI_AbreCupom;01234561234-00;
Este mtodo ser executado pela impressora, e gerar um arquivo de retorno (Daruma.ret). Este
arquivo contm o retorno da chamada, Ack,ST1 ST2, e algum retorno adicional, caso o mtodo possua.
Sempre separados por ";". Abaixo segue um exemplo de um arquivo de Retorno: 001;006;000;000;
4. Verificando a verso;
Para verificar a verso do Observer deve-se executar o Observer com a opo --versao(sem acento)
da seguinte forma:
Daruma 32 Framework 35
Daruma Automao
./Observer --versao
5. Execuo em modo teste;
Quando o Observer e executado em modo teste, inicialmente ele emite uma LeituraX, e em seguida, a
cada comando, o retorno e mostrado na shell onde foi executado o Observer.
Para isto deve-se iniciar o Observer da seguinte maneira:
./Observer --teste &
6. Alterando o caminho dos arquivos de entrada e sada;
Para alterar o caminho onde sera lido o arquivo de entrada e gerado o arquivo de sada deve-se iniciar
o Observer, passando como parametro o path, da seguinte maneira:
./Observer /path_de_entrada/nome_arquivo_cmd /path_de_saida/nome_arquivo_ret &
Exemplifimando melhor:
Imagine que voc configurou o diretrio de entrada como sendo DarumaIn e o diretrio de sada
DarumaOut, e os nomes dos arquivos dos arquivos, (entrada) Daruma.cmd e Daruma (sada) Daruma.ret,
ficaria assim:
./Observer /DarumaIn/Daruma.cmd /DarumaOut/Daruma.ret &
OBS: o Sinal de "&" para deixar o Observer em back ground, liberando o console para voc
trabalhar.
7. Parando o Observer;
Voc poder apenas escrever um arquivo de comando contendo a palavre exit exemplo:exit;
Com isso voc ter o processo matado, da mesma forma que acontece utilizando o kill do linux, com a
diferena de no ter que se preocupar com o ID.
Para parar o Observer e necessrio matar o processo iniciado anteriormente.
Para isto, devemos inicialmente descobrir qual o ID do processo, utilizando o comando abaixo:
ps -A | grep Observer
O retorno gerado devera mostrado no padrao abaixo:
123 pts/1 01:05:56 Observer
|
|---------------------------> ID do Processo
Em seguida deve-se matar o processo utilizando o comando kill conforme exemplo abaixo:
kill 123
1.7.5 Preparando seu Aplicativo para o Observer
1) Primeiro Passo ter o Driver Observer2 presente no computador, conforme figura Abaixo, ele estar
presente com o Logo da DARUMA na rea de Relgio.
2) Segundo Passo criar o Arquivo de Comando no Diretrio Configurado para a Recepo de Arquivos de
Comando. Para enviar um mtodo para o ECF, use este mesmo manual. Basta voc passar o ndice do
Mtodo desejado com os Parmetros separados por ; (ponto-e-vrgula) e terminado por ; (ponto-e-
virgula).
Daruma Framework 36
Daruma Automao
Por exemplo:
Voc pode simplesmente entrar com a descrio do mtodo ou o seu respectivo ndice.
Daruma_FI_AbreCupom;10.123.154-98; ou ento
1000;10.123.154-98; (Indica que esta desejando abrir o Cupom fiscal e o Parmetro o CNPJ ou
CPF)
Daruma_FI_AbreCupom;;
1000;; (indica que deseja abrir o cupom fiscal e no deseja passar o parmetro, ou seja o parmetro
opcional)
Daruma_FI_VendeItem;123;Lapis;FF;I;10;2;0,25;%;0000; ou ento
1001;123;Lapis;FF;I;10;2;0,25;%;0000; (Exemplo de VENDA DE ITEM)
Daruma_FI_CancelaItemAnterior; ou ento
1005; (Indica que desejo cancelar o Item Anterior, ou seja, com os mtodos sem parmetros,
apenas coloca-se o ndice do Mtodo desejado e finaliza-se com ;
Assinando individualmente os arquivos com os comandos:
Antes de abordar este assunto, vou dar um histrico do motivo que levou-nos a disponibilizar este
recurso.
A necessidade de saber se o arquivo retornado Daruma.ret, pertence ao ltimo arquivo de comando
escrito anteriormente, foi que levou-nos a criar esta funcionalidade. Alm disso a possibilidade de validar
com uma criptografia, tambm foi um dos motivos.
Vejamos ento como que podemos utilizar este recurso:
1. O que obrigatrio na assinatura? R: Deve estar entre colchetes.
2. O que no pode fazer parte da assinatura? R: No pode-se interir mais que 50
caracteres.
3. Onde a assinatura deve estar dentro do arquidvo de comando? R: Sempre antes do ndice,
ou Descritivo.
4. A assinatura obrigatria? R: No, no obrigatria.
Na prtica voc escreve o arquivo de comando Daruma.cmd com o seguinte contedo:
[assinatura]+indice ou descritivo+parmetros.
[abc123]1101; ou
[abc123]Daruma_FI_LeituraX;
Como podemos ver anteriormente, a assinatura deve estar entre [colchetes], outro detalhe
importante que a assinatura pode conter caracteres alfa e tembm numricos, ou seja, com isso, voc
poder fazer uma assinatura para cada arquivo de Comando.
Misturando estas combinaes possvel criar centenas de assinaturas e/ou criptografias, deixando
ainda mais segura a troca de arquivos.
Na sequncia vejamos alguns exemplos:
1)[a1]Daruma_FI_AbreCupom;;
2)[b2]Daruma_FI_VendeItem;123;caneta;II;I;1,00;2;1,00;%;0,00;
3)[c3]Daruma_FI_FechaCupomResumido;Dinheiro;Agradecemos pela preferncia;
Contedo dos arquivos que sero devolvidos pelo Observer:
1)[a1]001;006;000;000;
2)[b2]001;006;000;000;
3)[c3]001;006;000;000;
O exemplo anterior o objetivo foi mostrar em trs arquivos de comando, que para cada arquivo foi
criada uma assinatura, e a mesma assinatura, foi inserida no arquivo retornado pelo Observer, dessa
forma, torna-se fcil saber a que arquivo de comando pertence o arquivo de retorno.
Daruma 32 Framework 37
Daruma Automao
Observao: Utilize na assinatura no mximo 50 carcteres.
Outras informaes indispensveis para utilizao do driver Observer
Neste Manual voc indentifica o ndice dos Mtodos que deseja Assim como na DLL, aqui tambm
voc no necessita passar a quantidade exata de casas, pois o Observer2 utiliza-se da dll e
preenche para voc!!!
CADA MTODO CONTM UM NDICE QUE VOC ENCONTRA AQUI NESTE MESMO MANUAL.
POR EXEMPLO O MTODO DE ABERTURA DE CUPOM:, EXEMPLO QUE UTILIZAMOS ACIMA COM O INDICE
1000:
3) Sua aplicao dever esperar um retorno do ECF, no memo formato da dll de comunicao
(Retorno.txt).
RET;ACK;ST1;ST2;
ou
RET;ACK;ST1;ST2;INFORMAO;
RET - Retorno do Mtodo (SEMPRE UM INTEIRO).
ACK - Byte Indicativo de Recebimento OK de Comunicao com a Impressora.
ST1 - Primeiro Byte que contm Erros ou avisos do ECF.
ST2 - Segundo Byte que contm Erros ou avisos do ECF.
INFORMAO - Informao desejada caso o mtodo enviado requera uma informao alm do ACK
ST1 e ST2, como por exemplo, Nmero de Srie do ECF, Data e Hora do ECF, SubTotal, Nmero do
Cupom..
4) SEMPRE o valor ser terminado em ; (ponto e Virgula) e no formato de 3 Dgitos, por exemplo:
Exemplo 1)001;006;064;001;
001 - Indica que o Mtodo Devolveu 1(indicativo de OK).
006 - ACK indica que o Protocolo de Comunicao est OK.
064 - Indica que o ECF est com Pouco Papel - Veja TabeladeRetornos.
001 - Indica que o Mtodo no Foi Executado - Veja TabeladeRetornos.
Exemplo 2)-27;006;064;000;
-27 - Indica que o Mtodo conseguiu enviar o comando para o ECF porm o ECF
contm erro ou avisos, isso acontece porque a chave StatusFuno est ligada.
006 - ACK indica que o Protocolo de Comunicacao est OK.
064 - Indica que o ECF esta com Pouco Papel - Veja TabeladeRetornos.
001 - Indica que o Mtodo no Foi Executado - Veja TabeladeRetornos.
Exemplo 3) 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).
006 - ACK indica que o Protocolo de Comunicao est OK.
000 - Indica que No Existe Erro - Veja TabeladeRetornos.
000 - Indica que No Existe Erro - Veja TabeladeRetornos.
00028 - Nmero do Cupom.
5) Saindo o Observer2.
Para sair do Observer2, basta voc escrever um arquivo de comando contendo apenas a palavra exit,
exemplo:exit; - Apenas isso e pronto o Observer2 ser finalizado.
Outra maneira para sair do Observer2, seria apenas dar um duplo clique em seu cone na barra de
tarefas e clicar no boto Sair, como nos mostra a figura a seguir:
Daruma Framework 38
Daruma Automao
1.7.6 Trabalhando com Comandos em Lote, usando o Mapeamento de Unidade
Utilizar os Arquivos em Lote uma prtica interessante, em casos onde h regime especial ou seja, no
obrigatria venda em concomitncia.
Pensando nisso, foram criados alguns mtodos para que voc desenvolvedor possa continuar a mandar os
comandos normalmente e a dll quem gerencia em um nvel mais baixo, gerando um lote com os
comandos.
Para utilizar essa soluo, siga os passos abaixo:
1. Instale o Observer na mquina cliente;
2. Crie uma pasta e deixe-a 100% compartilhada, esta pasta ser usada para a troca de arquivos;
3. Configure o Observer2 para olhar para esta pasta saiba mais sobre o Observer2 clicando aqui;
InstalandooDriverObserver2
4. Copie a Daruma32.dll Verso Server, na mquina, onde estar instalado o aplicativo de automao;
5. Mapeie a pasta, anteriormente criada;
6. Supondo que voc tenha escolhido a letra B:\ para o mapeamento, ento execute o mtodo
Daruma_Registry_PathLote(ndice60) para alterar a chave PathLote para a letra que voc escolheu
para o mapeamento;
7. Agora s executar o mtodo Daruma_Registry_ComandosEmLote(ndice58) e passar todos os
comandos que iro estar no arquivo de lote;
8. Para finalizar o lote, utilize o mtodo Daruma_Registry_FinalLote(ndice59), quando for executado
este mtodo, pronto, o lote ser enviado para a unidade mapeada e o Observer, na mquina cliente
ir executar os comandos na impressora.
Pr-Requisitos:
Daruma 32 Framework 39
Daruma Automao
1. Observer2 devidamente instalado no PDV, sem este driver torna-se impossvel: veja mais sobre o
Observer2:InstalandooDriverObserver2;
2. E os procedimentos de criao, permisso do compartilhamento;
3. O PDV(ponto de venda)dever uma impressora fiscal ou no fiscal Daruma.
1.7.7 Trabalhando com o Observer linux em rede
Para trabalhar com o Observer linux em rede, iremos utilizar o sistema de compartilhamento de diretrios
e arquivos NFS Network File System.
O NFS permite se acessar uma mquina remota, montando-a em sua prpria como um dispositivo
qualquer, permitindo assim um acesso simples, como a um diretrio local.
Esta forma de se utilizar o driver Observer linux visa possibilitar que apenas um aplicativo rodando no
servidor, atenda uma srie de pontos de venda, facilitando assim a manuteno do aplicativo comercial.
Pr-Requisitos:
1. Observer linux devidamente instalado nos PDV's, sem este driver torna-se impossvel: veja mais
sobre o Observer:InstalandooDriverLinuxObserver2.0;
2. A lib utilizada pelo Observer linux a Daruma32.SO:ConfigurandoaDaruma32.SO devidamente
instalada, que sem ela tambem torna-se impossivel;
3. E os procedimentos de criao, permisso e montagem dos compartilhamentos vistos a
seguir:ObservercomNetworkFileSystem(NFS);
4. Cada PDV(ponto de venda)dever uma impressora fiscal.
5. O Servio NFS (como servidor) dever estar habilitado, em todos os PDV's.
1.7.7.1 Observer com Network File System (NFS)
Montando o Servio de NFS
Configurando o Servidor:
1)Criar o(s) seguinte(s) diretrio(s) (aqui apenas um nome sugestivo de exemplo);
1.1)mkdir /mnt/PDV1 ou um diretrio para cada PDV que far parte da rede;
2)Dar permisso todal para o(s) mesmo(s);
2.1)chmod 777 /mnt/PDV1;
3)Confira se a comunicao est ok, dando um ping, no IP Host de seu(s) PDV(s);
4)Monte o compartilahmento do(s) ponto(s) de venda seguindo os comandos abaixo:
4.1)mount -t nfs IPPDV1:/mnt/Compartilhado_PDV1/ /mnt/PDV1
Observao:IPPDV1 o IP Host do PDV1, caso hajam mais PDV'S, basta criar mais diretrios e
seguir a risca os mesmos passos para cada um deles.
Configurando o(s) PDV (ponto de venda):
1)Criar o seguinte diretrio (aqui apenas um nome sugestivo de exemplo);
1.1)mkdir /mnt/Compartilhado_PDV1;
2)Dar permisso todal para o mesmo;
2.1)chmod 777 /mnt/Compartilhado_PDV1;
3)Copie o Observer para o diretrio que acaba de ser criado - veja mais sobre o Observer clicando no link
a seguir:InstalandooDriverLinuxObserver2.0;
Daruma Framework 40
Daruma Automao
4)Compartilhe o diretrio criado anteriormente, editando o seguite arquivo;
4.1)vi /etc/exports, adicionando a seguinte linha: /mnt/Compartilhado_PDV1
*(rw,no_root_squash);
5)Para que as configuraes tenham efeito, re-inicie o sistema NFS, se preferir o SO;
5.1)Confira se o diretrio foi compartilhado, utilizando o comando:exportfs;
6)Execute o Observer;
6.1) ./Observer &;
7)Teste para ver se o Observer linux esta ok;
7.1)no diretrio criado/compartilhado anteriormente crie um arquivo contendo o seguinte comando: vi
/Compartilhado_PDV1/Daruma.cmd;
7.2)Escreva o seguite dentro dele:Daruma_FI_LeituraX;
Se como resultado dessa ao for impressa uma LeituraX bom sinal, ento daqui em diante ser com
seu aplicativo. Lembrando que o gerenciamento de onde ser escrito o comando, fica 100% por conta do
aplicativo comercial.
Por exemplo se voc quizer escrever um arquivo de comando para o PDV1 ento dever faz-
lo:Compartilhado_PDV1, caso queira no PDV2 ento Compartilhado_PDV2.
Para facilitar o controle de pra quem enviar o comando, procure sempre nomear os diretrios conforme o
nmero do PDV(ponto de venda), dessa forma quando enviado um arquivo de comando no ODV1 por
exemplo, a reposta devolvida pelo Observer, ser escrita no mesmo diretrio, ou seja neste nosso
exemplo PDV1.
1.7.8 Mtodos para o Observer de Configurao do Registry
1.7.8.1 Configurao do Observer
O Driver Observer2 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 Observer2 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
Observer2 no Incio de seu aplicativo basta chamar os mtodos de Configurao do Registry.
Estas so as Chaves Existentes para a Configurao do Observer2 e estes so os seus
Valores DEFAULT:
[HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA]
[HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\OBSERVER]
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 = ;
Daruma 32 Framework 41
Daruma Automao
1.7.8.2 Daruma_Observer_Registry_Execucao (ndice 53)
Definio do Mtodo:
Configura o Local em que o Observer2 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 default da Chave = 1
1.7.8.3 Daruma_Observer_Registry_Log (ndice 58)
Definio do Mtodo:
Configura se o Observer2 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
Observaes:
Valor default da Chave = 0
1.7.8.4 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
Observaes:
Valor default da Chave = C:\Observer.log
Daruma Framework 42
Daruma Automao
1.7.8.5 Daruma_Observer_Registry_Entrada (ndice 50)
Definio do Mtodo:
Configura o Path + Nome do Arquivo de Comando que o Observer2 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
Observaes:
Valor default da Chave = C:\DARUMA.CMD
1.7.8.6 Daruma_Observer_Registry_Saida (ndice 52)
Definio do Mtodo:
Configura o Path + Nome do Arquivo de RESPOSTA que o Observer2 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
Observaes:
Valor default da Chave =C:\DARUMA.RET
Daruma 32 Framework 43
Daruma Automao
1.7.8.7 Daruma_Observer_Registry_Produto (ndice 61)
Definio do Mtodo:
Configura o Produto que ser Usado com o Observer2.
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
Observaes:
Valor default da Chave = FS345
1.8 Mtodos Exclusivos para Impressora Fiscal
1.8.1 Mtodo para ajustar automtico para Horrio de Vero
1.8.1.1 Daruma_FI_ConfiguraHorarioVerao(ndice 314)
Definio do Mtodo:
Automatiza o processo de programao de entrada e sada no Horrio de Vero.
Parmetros do Mtodo: (03 Parretros).
1. Data Entrada: String com 6(seis) bytes com a data de incio do horrio de vero no seguinte
formato:ddmmnn.
2. Data Sada:String com 6(seis) bytes com a data de sada do horrio de vero no seguinte
formato:ddmmnn.
3. Flag de Controle: String com 1(um) byte com 1(um) para habilitar e 0(zero) para desabilitar.
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 foi executado, 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_Entrada As String
Dim Str_Data_Saida As String
Dim Str_Controle As String
Str_Data_Entrada = Data_Entrada.Text
Str_Data_Saida = Data_Saida.Text
Str_Controle = Controle.Text
Int_Retorno = Daruma_FI_ConfiguraHorarioVerao(Str_Data_Entrada, Str_Data_Saida, Str_Controle)
Exemplo em Delphi 7.0:
var
Daruma Framework 44
Daruma Automao
Str_Data_Entrada: String;
Str_Data_Saida: String;
Str_Controle: String;
begin
Str_Data_Entrada:= Data_Entrada.Text;
Str_Data_Saida:= Data_Saida.Text;
Str_Controle:= Controle.Text;
Int_Retorno:= Daruma_FI_ConfiguraHorarioVerao(pchar(Str_Data_Entrada), pchar(Str_Data_Saida),
pchar(Str_Controle));
1.8.2 Mtodos de Cupom Fiscal
1.8.2.1 Daruma_FI_AbreCupom(ndice 1000)
Definio do Mtodo:
Abre o cupom fiscal na impressora fiscal Daruma.
Parmetros do Mtodo: (1 Parmetro, opcional).
CPF ou CNPJ: Varivel String de at 29 caracteres 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 foi executado, 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 identificao do consumidor ir ser exibida no Cupom Fiscal, aps a finalizao da Venda, podemos
usar para esse mtodo a Funo Daruma_FI_IdentificaConsumidor.
- A DLL Suporta at 999 itens dentro do cupom fiscal, ou seja, s possvel vender at 999 itens.
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 ) );
Exemplo em Java:
int retorno;
byte[] abrecupom = new byte[29];
retorno = FISCAL.Daruma_FI_AbreCupom("126.393.858-28");
1.8.2.2 Daruma_FI_VendeItem(ndice 1001)
Definio do Mtodo:
Vende o item na impressora fiscal.
Parmetros do Mtodo: (9 Parmetros).
1. Cdigo: String com at 14 caracteres contendo o cdigo do produto.
2. Descrio: String at 29 caracteres 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 caracteres ou 5 com a vrgula. Se for o ndice da alquota deve ser 2 caracteres.
Ex. (18,00 para o valor ou 1800).
Daruma 32 Framework 45
Daruma Automao
4. Tipo Quantidade: 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. Casas Decimais: Inteiro indicando o nmero de casas decimais para o valor unitrio (2 ou 3).
7. Valor Unitrio: String at 8 dgitos para valor unitrio.
8. Tipo Desconto: 1 (um) carctere indicando a forma do desconto. '$' desconto por valor e '%'
desconto percentual.
9. Valor Desconto: String com at 8 dgitos para desconto por valor (2 casas decimais) e 4 dgitos para
desconto percentual (2 casas decimais). Importante! Caso seja passado um sinal de subtrao
antes do valor exemplo: (-1,00), ser aplicada a lgica inversa e ao invz de um desconto
ser feito um acrscimo.
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 foi executado, 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:
Arredondamento: As impressoras MFD FS600 E 2100T, apenas truncam. Sendo assim foi criado o
mdodo Daruma_Registry_MFDValorFinal(ndice66). Com este mtodo, o problema de divergir o valor da
impressora, comparando-o com o valor da balana (supermercados), ou bomba de combustvel (posto de
gasolina), pode ser contornado.
- No ltimo paramtro (Valor Desconto), caso seja passado um valor negativo exe.:(-1,00), ser
aplicada a lgica inversa e ao invz de um desconto, ser feito um acrscimo no valor do tem.
- A DLL Suporta at 999 itens dentro do cupom fiscal, ou seja, s possvel vender at 999 itens.
- Acentuao e/ou caracteres especiais, no so aceitos na descrio do item.
- 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 caracteres. EX.:Cdigo->123456 Descrio-
>Laranja Baiana. Uma combinao dessas permitira que a venda sai em uma nica linha.
- O valor do desconto nunca poder ser igual ou maior do que o valor do item.
- Caso a venda seja de um ou mais itens, porm todos com alquota de servio e o ECF no esteja
habilitado para desconto em servio, ento o desconto no ser permitido. Importante para habilitar o
desconto sobre servio preciso que seja feito por meio de IT(interveo tcnica) e isso s pode ser feito
por uma assistncia tcnica autorizada Daruma.
- Caso a venda seja 2(dois) ou mais itens, sendo que pelo menos 1(um) seja com alquota de servio e o
ECF no esteja habilitado para o desconto, ento o desconto incidir sobre os itens com alquota de ICMS.
- E caso o ECF esteja hebilitado para desconto em servio ento para um cupom onde os itens sejam com
alcota de servio e tambm alquota de ICMS o desconto ser sobre todos os itens independentemente da
alquota.
- Este o nico comando a ser usado para vendas em caso de impressoras trmicas (FS600 e FS2100t).
- Alquotas de mesmo valor: Imagine que h duas alquotas com o valor 12% cadastradas na
impressora. Se voc informar o valor 1200 ou 12,00 no parmetro "alquota" o Mtodo ir imprimir o item
usando a alquota cadastrada de ICMS ou ISS. o Mtodo l as alquotas da impressora cadastrada,
devolvendo ao desenvolvedor o valor com a aliquota programada. Para usar a alquota de ISS ou ICMS
voc dever passar o valor com, por exemplo, 1200 ou 12,00.
- 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 'II' 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
caracteres e no podera dar desconto, para dar desconto e vender um item que tenha uma descrio
maior do que 7 caracteres, tenha desconto no item use o Mtodo Daruma_FI_VendeItemTresDecimais.
Esta regra s vlida para a verso 1.11.
- Para vender item em uma nica linha voc dever passar o item com o cdigo de at 13 caracteres e a
descrio de at 6 caracteres ou vice-versa. Caso no se cumpra sta condio, ento ser vendido
automticamente em 2 linhas.
- Caso o item tenha desconto ou trs decimais tambm ser vendido automticamente em 2 linhas.
- Se o cupom estiver fechado o Framework abrir o cupom para voc.
- Para dar um desconto sobre servio, a impressora dever ser programada por meio de I.T.(interveo
tcnica), caso contrrio no ser possvel.
- Nossas impressoras j veem com trs aliquotas pr-programadas que so:
Isento (duas letras II maisculas).
No tributado (duas letras NN maisculas).
Daruma Framework 46
Daruma Automao
Substituio tributria (duas letras FF maisculas).
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
Dim Int_Casas_Decimais As Integer
Dim Str_Valor_Unitario As String
Dim Str_Tipo_de_Desconto As String
Dim Str_Valor_do_Desconto As String
Dim 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 ) );
Exemplo em Java:
String codigo = "123456789";
String descricao = "bolacha";
String aliquota = "17,00";
String tipodequantidade = "I";
String quantidade = "1";
short casasdecimais = (short)1;
Daruma 32 Framework 47
Daruma Automao
String valorunitario = "1.450,00";
String desconto = "$";
String valordesconto = "0,00";
int retorno;
retorno = FISCAL.Daruma_FI_VendeItem(codigo, descricao, aliquota, tipodequantidade,
quantidade, casasdecimais, valorunitario, desconto, valordesconto);
1.8.2.3 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 foi executado, 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 ReduoZ e nem LeituraX 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();
Exemplo em Java:
int retorno;
retorno = FISCAL.Daruma_FI_CancelaCupom();
1.8.2.4 Daruma_FI_CancelaItemAnterior(ndice 1005)
Definio do Mtodo:
Cancela o ltimo item vendido.
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 foi executado, 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 item deve ter sido vendido.
- No deve ter sido cancelado nenhum item imediatamente anterior.
Exemplos:
Exemplo em Visual Basic 6.0:
Daruma Framework 48
Daruma Automao
Int_Retorno = Daruma_FI_CancelaItemAnterior
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_CancelaItemAnterior();
Exemplo em Java:
int retorno;
retorno = FISCAL.Daruma_FI_CancelaItemAnterior();
1.8.2.5 Daruma_FI_CancelaItemGenerico(ndice 1006)
Definio do Mtodo:
Cancela qualquer item dentre os cem (100) ltimos itens vendidos.
Parmetros do Mtodo: (1 Parmetro)
Nmero Item: String com o nmero do item 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 foi executado, 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 1(um) item deve ter sido vendido
- O item 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();
Exemplo em Java:
int retorno;
byte[] erroextendido = new byte[3];
retorno = FISCAL.Daruma_FI_CancelaItemGenerico("Numero do Item");
1.8.2.6 Daruma_FI_IniciaFechamentoCupom(ndice 1007)
Definio do Mtodo:
Inicia o fechamento do cupom com o uso das formas de pagamento.
Parmetros do Mtodo: (3 Parmetros)
1. Acrscimo Desconto: Indica se haver acrscimo ou desconto no cupom. 'A' para acrscimo e 'D' para
desconto.
Daruma 32 Framework 49
Daruma Automao
2. Tipo Acrscimo Desconto: Indica se o acrscimo ou desconto por valor ou por percentual. '$' para
desconto por valor e '%' para percentual.
3. Valor Acrscimo Desconto: String com no mximo 14 dgitos para acrscimo ou desconto por valor e
4 dgitos para acrscimo ou desconto por percentual (2 casas decimais).
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 foi executado, 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 desconto "nunca" poder ser igual ou maior do que o valor do cupom.
- Caso a venda seja de 1(um) ou mais itens, porm todos com alquota de servio e o ECF no esteja
habilitado para desconto em servio voc poder receber erro 24 ou 44, ento o desconto no ser
permitido. Importante para habilitar o desconto sobre servio preciso que seja feito por meio de
IT(interveo tcnica) e isso s pode ser feito por uma assistncia tcnica autorizada Daruma.
- Caso a venda seja 2(dois) ou mais itens, sendo que pelo menos 1(um) seja com alquota de servio e o
ECF no esteja habilitado para o desconto, ento o desconto incidir sobre os itens com alquota de ICMS.
- E caso o ECF esteja habilitado para desconto em servio ento para um cupom onde os itens sejam com
alquota de servio e tambm alquota de ICMS o desconto ser sobre todos os itens independentemente
da alquota.
Dica:
- Para dar acrescimos e desconto no mesmo cupom, lanando o movimento no Sub-Total do Cupom-Fiscal
basta chamar a funo mais de uma vez conforme a necessidade, passando Acrescimo ou Desconto
conforme solicitado. Segue o exemplo abaixo.
Desenvolvedor
Ligao Gratuta: 0800 770 3320
Suporte por Skype:
suporte_daruma
desenvolvedores_daruma
suporte_desenvolvedores_daruma
desenvolvedores_suporte_daruma
CNPJ: 45.170.289/0001-25 IE: 688.023.460.111
IM: 3633/72
27/01/2008 11:46:12 CCF:001819 COO:002539
CUPOM FISCAL
ITEM CDIGO DESCRIO QTD.UN.VL UNIT( R$) ST VL ITEM( R$)
001 7896003704549 bolacha 1unx10,00 I1 10,00
Subtotal R$ 10,00
ACRSCIMO +1,00
Subtotal R$ 11,00
DESCONTO -0,50
TOTAL R$ 10,50
Dinheiro 15,00
TROCO R$ 4,50
------------------------------------------------
Obrigado Volte Sempre!!!
DARUMA32 FrameWork Mensagem No Programada
DARUMA32 FrameWork Mensagem No Programada
CNPJ/CPF Consumidor: 45.543.915/0030-08
1A8 84084 38074 82D026 63 7D01C0 5A07E 08B90 47F
DARUMA AUTOMAO FS600
ECF-IF VERSO:01.04.00 ECF:001 Lj:
AAAAAAAAABGAHJJFEF 27/01/2008 11:46:43
FAB:DR0207BR000000099431 BR
Daruma Framework 50
Daruma Automao
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 ) );
Exemplo em Java:
String acrescimodesconto = "D";
String tipoacrescimodesconto = "$";
String valoracrescimodesconto = "0,01";
int retorno;
retorno = FISCAL.Daruma_FI_IniciaFechamentoCupom(acrescimodesconto,
tipoacrescimodesconto , valoracrescimodesconto);
1.8.2.7 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: (2 Parmetros)
1. Forma Pagamento: String com a forma de pagamento com no mximo 16 caracteres.
2. Valor Forma Pagamento: String com o valor da forma de pagamento com at 14 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 foi executado, 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.
- Se a forma de pagamento no estiver cadastrada na impressora o item ser registrado como a
forma 'Dinheiro'. Para cadastrar a forma de pagamento voc deve usar o
Mtodo:Daruma_FI_ProgramaFormasPagamento(ndice301) e isso imediatamente aps uma ReduoZ.
para as impressoras FS345, FS600 verso 01.00.00, 01.01.00, nas verses FS600 - 01.02.00 acima no
necessita Reduo Z.
- Lembrando que aps cadastrada a forma de pagamento no podemos exclui-ls ou altera-ls somente
via software de interveno tcnica.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Descricao_da_Forma_Pagamento As String
Daruma 32 Framework 51
Daruma Automao
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 ) );
Exemplo em Java:
String formapagamento = "Dinheiro";
String valorformapagamento = "1.500,00";
int retorno;
retorno = FISCAL.Daruma_FI_EfetuaFormaPagamento(formapagamento, valorformapagamento);
1.8.2.8 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: (3 Parmetros)
1. Forma Pagamento: String com a forma de pagamento com no mximo 16 caracteres.
2. Valor Forma Pagamento: String com o valor da forma de pagamento com at 14 dgitos.
3. Descrio Forma Pagamento: String com a descrio da forma de pagamento com no mximo 48
caracteres.
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 foi executado, 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 1(uma) linha aps a forma de pagamento.
- Se a forma de pagamento no estiver cadastrada na impressora, o Mtodo retorna erro. Para
cadastrar a forma de pagamento voc deve usar o
Mtodo:Daruma_FI_ProgramaFormasPagamento(ndice301) e isso emediatamente aps uma ReduoZ.
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 _
(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;
Daruma Framework 52
Daruma Automao
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.8.2.9 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. Esse Mtodo l o subtotal do cupom para fech-lo.
Parmetros do Mtodo: (2 Parmetros)
1. Forma Pagamento: String com a forma de pagamento com no mximo 16 caracteres.
2. Mensagem Promocional: String com a mensagem promocional com at 384 caracteres (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 foi executado, 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:
- Acentuao e/ou caracteres especiais, no so aceitos na mensagem promocional.
- 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. Para
cadastrar a forma de pagamento voc deve usar o
Mtodo:Daruma_FI_ProgramaFormasPagamento(ndice301) e isso emediatamente aps uma ReduoZ.
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 ) );
Exemplo em Java:
String descricaoformapgamento = "Cheque";
Daruma 32 Framework 53
Daruma Automao
String mensagempromocional = " Volte Sempre ";
int retorno;
retorno = FISCAL.Daruma_FI_FechaCupomResumido(descricaoformapgamento, mensagempromocional);
1.8.2.10 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: (6 Parmetros)
1. Forma Pagamento: String com o nome da forma de pagamento com no mximo 16 caracteres.
2. Acrscimo Desconto: Indica se haver acrscimo ou desconto no cupom. 'A' para acrscimo e 'D' para
desconto.
3. Tipo Acrscimo Desconto: Indica se o acrscimo ou desconto por valor ou por percentual. '$' para
desconto por valor e '%' para percentual.
4. Valor Acrscimo Desconto: String com no mximo 14 dgitos para acrscimo ou desconto por valor e
4 dgitos para acrscimo ou desconto por percentual.
5. Valor Pago: String com o valor pago com no mximo 14 dgitos.
6. Mensagem Promocional: String com a mensagem promocional com at 384 caracteres (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 foi executado, 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:
- Acentuao e/ou caracteres especiais, no so aceitos na mensagem promocional.
- 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.
- O valor do acrscimo ou desconto nunca poder ser igual ou maior do que o valor do item.
- Caso a venda seja de um ou mais itens, porm todos com alquota de servio e o ECF no esteja
habilitado para desconto em servio voc poder receber erro 24 ou 44, ento o desconto no ser
permitido. Importante para habilitar o desconto sobre servio preciso que seja feito por meio de
IT(interveno tcnica) e isso s pode ser feito por uma assistncia tcnica autorizada Daruma.
- Caso a venda seja 2(dois) ou mais itens, sendo que pelo menos 1(um) seja com alquota de servio e o
ECF no esteja habilitado para o desconto, ento o desconto incidir sobre os itens com alquota de ICMS.
- E caso o ECF esteja habilitado para desconto em servio ento para um cupom onde os itens sejam com
alcota de servio e tambm alquota de ICMS o desconto ser sobre todos os itens independentemente da
alquota.
- Se a forma de pagamento no estiver cadastrada na impressora, o Mtodo retorna erro. Para
cadastrar a forma de pagamento voc deve usar o
Mtodo:Daruma_FI_ProgramaFormasPagamento(ndice301) e isso imediatamente aps uma ReduoZ.
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"
Daruma Framework 54
Daruma Automao
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';
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.8.2.11 Daruma_FI_TerminaFechamentoCupom(ndice 1010)
Definio do Mtodo:
Termina o fechamento do cupom com mensagem promocional.
Parmetros do Mtodo: (1 Parmetro)
Mensagem Promocional: String com a mensagem promocional com at 384 caracteres (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 foi executado, 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:
- Acentuao e/ou caracteres especiais, no so aceitos na mensagem promocional.
- 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 ) );
Exemplo em Java:
Daruma 32 Framework 55
Daruma Automao
String mensagempromocional = " Volte Sempre ";
int retorno;
retorno = FISCAL.Daruma_FI_TerminaFechamentoCupom(mensagempromocional);
1.8.2.12 Daruma_FI_EstornoFormasPagamento(ndice 1017)
Definio do Mtodo:
Permite estornar valores de uma forma de pagamento e transferir em outra forma.
Parmetros do Mtodo: (3 Parmetros)
1. Forma Pagamento Origem: String com a forma de pagamento de onde o valor ser estornado, com
at 16 caracteres.
2. Forma Pagamento Destino: String com a forma de pagamento onde o valor ser transferido, com at
16 caracteres.
3. Valor Forma Pagamento: String com o valor a ser estornado com at 14 dgitos. Passando o valor
total da forma de pagamento de origem, no podendo ser maior ou menor do que o 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 foi executado, 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 pode ser executado aps o fechamento do cupom fiscal.
- Este Mtodo no compatvel com a Impressora 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.8.2.13 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: (3 Parmetros)
Daruma Framework 56
Daruma Automao
1. Nome: Nome do Consumidor com at 48 caracteres;
2. Endereo: Endereo do Consumidor com at 48 caracteres;
3. CNPJ ou CPF: At 42 caracteres.
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 foi executado, 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:
- Nome e endereo somente so aceitos caso o campo CPF/CNPJ no seja NULO
- O Comando deve ser enviado durante a emisso e antes do encerramento do Cupom Fiscal
- 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
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 ) );
Exemplo em Java:
String nome = "Daruma";
String endereco = "Av. Independencia 3.500 Tatuap";
String CPFCNPJ = "123.456.789-65" ;
int retorno;
retorno = FISCAL.Daruma_FI_IdentificaConsumidor(nome, endereco, CPFCNPJ);
1.8.2.14 Daruma_FI_EmitirCupomAdicional(ndice 1018)
Definio do Mtodo:
Emite 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:
Daruma 32 Framework 57
Daruma Automao
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 foi executado, 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
MtodoDaruma_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 Impressora 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.8.2.15 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: (1 Parmetro)
Tipo Unidade Medida: String com a unidade de medida at 2 caracteres OBRIGATORIAMENTE.
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 foi executado, 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:
- necessrio SEMPRE Abrir o cupom fiscal para usar o mtodo (Daruma_FI_AbreCupom)
- Este Mtodo deve ser usado antes do envio do Mtodo Daruma_FI_VendeItem.
- Este Mtodo tem validade, somente para a impresso de um item, voltando ao default que a impresso
de 2 (dois) espaos em branco aps a quantidade do item 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 ) );
Daruma Framework 58
Daruma Automao
1.8.2.16 Daruma_FI_AumentaDescricaoItem(ndice 1015)
Definio do Mtodo:
Este Mtodo permite aumentar a descrio do item at 200 caracteres.
Parmetros do Mtodo: (1 Parmetro)
Descrio: String com a descrio do item com at 200 caracteres.
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 foi executado, 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 ir funcionar corretamente nas impressoras trmicas, se a chave MFDTamMinDescProd
no regsitry, estiver setada para 00(zero zero). Para alterar o valor desta chave, utilize o mtodo:
Daruma_Registry_AlteraRegistry(ndice17), passando como parmetro o nome da chave e o novo valor
para a mesma. Exemplo Daruma_Registry_AlteraRegistry("MFDTamMinDescProd", "00").
- Acentuao e/ou caracteres especiais, no so aceitos na descrio do item.
- Este mtodo s pode ser executado, antes da abertura do cupom fiscal.
- Este Mtodo deve ser usada antes do Mtodo Daruma_FI_VendeItem, pois assim, o item ser impresso
com a nova descrio.
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 := '';
Int_Retorno := Daruma_FI_AumentaDescricaoItem( pchar( Str_Descricao_Extendida ) );
1.8.3 Mtodos de Recebimentos, No Fiscais e Vinculados
1.8.3.1 Daruma_FI_AbreComprovanteNaoFiscalVinculado(ndice 1203)
Definio do Mtodo:
Abre o comprovante no fiscal vinculado.
Parmetros do Mtodo: (3 Parmetros)
1. Deve estar programado na Impressora a Forma de Pagamento.
(Daruma_FI_ProgramaFormasPagamento)
2. Forma Pagamento: Forma de pagamento com at 16 caracteres.
3. Valor: Valor pago na forma de pagamento com at 14 dgitos (2 casas decimais).
4. Nmero Cupom: 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 foi executado, porm o ECF
sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Daruma 32 Framework 59
Daruma Automao
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 1(um) comprovante no fiscal por forma de pagamento.
- Os parmetros "Valor" e "Numero do Cupom" tornam-se obrigatrios se for abrir um vinculado
partir de um recebimento no fiscal, se o comprovante emitido no for referente a ltima Forma de
Pagamento do Cupom Fiscal. Ou seja, se voc 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.
- A FS600 e FS2100T, no permitem a utilizao da forma de pagamento dinheiro, para a abertura
de vinculados
- A no ir funcionar a abertura de vinculados partir de acumuladores negativos ex.: Sangria.
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 ) );
Exemplo em Java:
String formapagamento = "Cheque";
String valor = "1.450,00";
String numerocupom = "002586";
int retorno;
retorno = FISCAL.Daruma_FI_AbreComprovanteNaoFiscalVinculado(formapagamento, valor,
numerocupom);
1.8.3.2 Daruma_FI_UsaComprovanteNaoFiscalVinculado(ndice 1204)
Definio do Mtodo:
Imprime o comprovante no fiscal vinculado.
Parmetros do Mtodo: (1 Parmetro)
Texto: String com o Texto a ser impresso no comprovante no fiscal vinculado com at 618 caracteres.
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 foi executado, porm o ECF
sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressorapara 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
Daruma Framework 60
Daruma Automao
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 618 caracteres"
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 618 caracteres';
Int_Retorno := Daruma_FI_UsaComprovanteNaoFiscalVinculado( pchar( Str_Texto_Livre ) );
end;
Exemplo em Java:
String texto = "Texto Livre com at 618 caracteres";
int retorno;
retorno = FISCAL.Daruma_FI_UsaComprovanteNaoFiscalVinculado(texto);
1.8.3.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 foi executado, 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. Voc poder verificar o status atravs do
mtodo:Daruma_FI_StatusComprovanteNaoFiscalVinculado(ndice1403).
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_FechaComprovanteNaoFiscalVinculado()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_FechaComprovanteNaoFiscalVinculado();
Exemplo em Java:
int retorno = 0;
FISCAL.Daruma_FI_FechaComprovanteNaoFiscalVinculado();
1.8.3.4 Daruma_FI_AbreRelatorioGerencial(ndice 1208)
Definicao do Mtodo:
Abre o Relatrio Gerencial.
Parmetros do Mtodo:
No h.
Daruma 32 Framework 61
Daruma Automao
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 foi executado, 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.
- Nas Impressoras FS345 e FS2000 o gerencial uma vez aberto permanecer 10(dez) Minutos e se auto-
fechara.
- Nas Impressoras FS600 e FS2000T o gerencial permanecer apenas 2(dois) Minutos aberto.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_AbreRelatorioGerencial()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_AbreRelatorioGerencial();
Exemplo em Java:
int retorno = 0;
FISCAL.Daruma_FI_AbreRelatorioGerencial();
1.8.3.5 Daruma_FI_FechaRelatorioGerencial(ndice 1201)
Definio do Mtodo:
Encerra o Relatrio Gerencial.
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 foi executado, 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. Voc poder verificar o status atravs do
mtodo:Daruma_FI_StatusRelatorioGerencial(ndice1405).
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_FechaRelatorioGerencial()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_FechaRelatorioGerencial();
Exemplo em Java:
int retorno = 0;
FISCAL.Daruma_FI_FechaRelatorioGerencial();
1.8.3.6 Daruma_FI_AbreRecebimentoNaoFiscal(ndice 1210)
Definio do Mtodo:
Abre o recebimento no fiscal "CNFNV".
Parmetros do Mtodo: (6 Parmetros)
1. Descrio do Totalizador: Neste parmetro voc deve passar o descrio do totalizador com at 15
Daruma Framework 62
Daruma Automao
caracteres.
2. Acrscimo Desconto: Indica se haver acrscimo ou desconto no cupom. 'A' para acrscimo e 'D' para
desconto.
3. Tipo Acrscimo Desconto: Indica se o acrscimo ou desconto por valor ou por percentual. '$' para
desconto por valor e '%' para percentual.
4. Valor Acrscimo Desconto: 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 7 linhas 48 caracteres, totalizando 336. Importante! O texto passado
neste parmetro, sair impresso no fechamento do recebimento. Outra coisa que podero
serem usadas as tags DHTML. Por exemplo para negrito <b></b>, e x p a n d i d o <e></e> e
sublinhado <s></s>, uma de cada vez, at mesmo qualquer combinao entre elas,
ex.:<b><e><s>Observao</s></e></b>. - Na impressora FS345 (matricial), o parmetro
sexto, no suporta as 7 linhas de texto e sim somente 40 caracteres.
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 foi executado, 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 no poder ser aplicado para Sangria ou Suprimento.
- Este Mtodo abre o recebimento no fiscal que permanece aberto at que seja chamado o Mtodo
Daruma_FI_EfetuaFormaPagamentoNaoFiscal
Importante! verifique o status do recebimento antes de tentar abr-lo atravs do
Mtodo:Daruma_FI_StatusComprovanteNaoFiscalNaoVinculado(ndice1471).
- 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 Sangria, o Mtodo ser executado, porm o
cupom ser fechado automaticamente.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Descricao_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
Str_Descricao_do_Totalizador = "Conta de Luz"
Str_Acrescimo_ou_Desconto = "D"
Str_Tipo_Acrescimo_ou_Deconto = "$"
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(Str_Descricao_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_Descricao_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_Descricao_do_Totalizador := 'Conta de Luz';
Daruma 32 Framework 63
Daruma Automao
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_Descricao_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 ) );
Exemplo em Java:
String descricaototalizador = "Conta de Luz";
String acrescimodesconto = "D";
String tipoacrescimodesconto = "$";
String valoracrescimodesconto = "0,00";
String valorrecebimneto = "7,00";
String textolivre = "Referente ao pagamento da 1 primeira parcela";
int retorno;
retorno = FISCAL.Daruma_FI_AbreRecebimentoNaoFiscal(descricaototalizador, acrescimodesconto,
tipoacrescimodesconto, valoracrescimodesconto, valorrecebimneto, textolivre);
1.8.3.7 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: (3 Parmetros)
1. Forma Pagamento: String com a forma de pagamento com no mximo 16 caracteres.
2. Valor Forma Pagamento: String com o valor da forma de pagamento com at 14 dgitos.
3. Observao Livre: String com at 48 caracteres, na FS345 e at 82 na FS600/FS2100T.
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 foi executado, 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)
Exemplo em Delphi 7.0:
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';
Daruma Framework 64
Daruma Automao
Int_Retorno := Daruma_FI_EfetuaFormaPagamentoNaoFiscal( pchar( Str_Forma_de_Pagamento ),
pchar( Str_Valor_da_Forma_Pagamento ), pchar( Str_Texto_Livre ) );
Exemplo em Java:
String formapagamento = "Dinheiro";
String valorformapagamento = "5,00";
String textolivre = "Parcela paga em: 28/12/2004";
int retorno;
retorno = FISCAL.Daruma_FI_EfetuaFormaPagamentoNaoFiscal(formapagamento, valorformapagamento,
textolivre);
1.8.3.8 Daruma_FI_LeituraMemoriaFiscalData(ndice 1102)
Definio do Mtodo:
Emite a leitura da memria fiscal da impressora por intervalo de datas.
Parmetros do Mtodo: (2 Parmetros)
1. Data Inicial: String com a Data inicial no formato ddmmaa, dd/mm/aa, ddmmaaaa ou dd/mm/aaaa.
2. Data Final: 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 foi executado, 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. Voc poder verificar o status atravs do
mtodo:Daruma_FI_StatusCupomFiscal(ndice1404).
- Para realizar a Leitura da Memoria Fiscal Detalhada voc poder configurar no registro (REGEDIT) a
chave: MFDLeituraMFCompleta = '1'
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
) );
Exemplo em Java:
String datainicial = "100108";
String datafinal = "100208";
int retorno;
retorno = FISCAL.Daruma_FI_LeituraMemoriaFiscalData(datainicial, datafinal);
Daruma 32 Framework 65
Daruma Automao
1.8.3.9 Daruma_FI_LeituraMemoriaFiscalReducao(ndice 1103)
Definio do Mtodo:
Emite a leitura da memria fiscal da impressora por intervalo de redues.
Parmetros do Mtodo: (2 Parmetros)
1. Reduo Inicial: String com o Nmero da reduo inicial com at 4 dgitos.
2. Reduo Final: 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 foi executado, 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. Voc poder verificar o status atravs do
mtodo:Daruma_FI_StatusCupomFiscal(ndice1404).
- Para realizar a Leitura da Memoria Fiscal Detalhada voc poder configurar no registro (REGEDIT) a
chave: MFDLeituraMFCompleta = '1'
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;
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 ) );
Exemplo em Java:
String reducaoinicial = "10";
String reducaofinal = "20";
int retorno;
retorno = FISCAL.Daruma_FI_LeituraMemoriaFiscalReducao(reducaoinicial, reducaofinal);
1.8.3.10 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: (2 Parmetros)
1. Data Inicial: String com a Data inicial no formato ddmmaa, dd/mm/aa, ddmmaaaa ou dd/mm/aaaa.
2. Data Final: 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.
Daruma Framework 66
Daruma Automao
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo foi executado, 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. Voc poder verificar o status atravs do
mtodo:Daruma_FI_StatusCupomFiscal(ndice1404).
- Para realizar a Leitura da Memoria Fiscal Detalhada voc poder configurar no registro (REGEDIT) a
chave: MFDLeituraMFCompleta = '1'
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 ) );
Exemplo em Java:
String datainicial = "100108";
String datafinal = "100208";
int retorno;
retorno = FISCAL.Daruma_FI_LeituraMemoriaFiscalSerialData(datainicial, datafinal);
1.8.3.11 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: (2 Parmetros)
1. Reduo Inicial: String com o Nmero da reducao inicial com at 4 dgitos.
2. Reduo Final: 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
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 foi executado, 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. Voc poder verificar o status atravs do mtodo:
Daruma_FI_StatusCupomFiscal(ndice1404).
- Para realizar a Leitura da Memoria Fiscal Detalhada voc poder configurar no registro (REGEDIT) a
Daruma 32 Framework 67
Daruma Automao
chave: MFDLeituraMFCompleta = '1'
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 ) );
Exemplo em Java:
String datainicial = "10";
String datafinal = "20";
int retorno;
retorno = FISCAL.Daruma_FI_LeituraMemoriaFiscalSerialReducao(datainicial, datafinal);
1.8.3.12 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 foi executado, 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. Voc poder verificar o status atravs do mtodo:
Daruma_FI_StatusCupomFiscal(ndice1404).
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_LeituraX()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_LeituraX();
Exemplo em Java:
int retorno = 0;
Daruma Framework 68
Daruma Automao
FISCAL.Daruma_FI_LeituraX();
1.8.3.13 Daruma_FI_LeituraxSerial(ndice 0000)
Definio do Mtodo:
Recebe os dados da leiturax pela serial e grava em arquivo texto.
Parmetros do Mtodo:
No h.
Observaes:
- O cupom fiscal deve estar fechado. Voc poder verificar o status atravs do mtodo:
Daruma_FI_StatusCupomFiscal(ndice1404).
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_LeituraXSerial()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_LeituraXSerial();
Exemplo em Java:
int retorno = 0;
FISCAL.Daruma_FI_LeituraXSerial();
1.8.3.14 Daruma_FI_RecebimentoNaoFiscal(ndice 1202)
Definio do Mtodo:
Imprime o comprovante no fiscal no vinculado.
Parmetros do Mtodo: (3 Parmetros)
1. Descrio do Totalizador: String com a descrio do totalizador com at 15 caracteres.
2. Valor Recebimento: String com o Valor do recebimento com at 14 dgitos (duas casas decimais).
3. Forma Pagamento: String com a Forma de pagamento com at 16 caracteres.
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 foi executado, 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 no poder ser aplicado para Sangria ou Suprimento.
- 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_Descricao_do_Totalizador As String
Dim Str_Valor_do_Recebimento As String
Dim Str_Forma_de_Pagamento As String
Str_Descricao_do_Totalizador = "Conta de Luz"
Str_Valor_do_Recebimento = "0,10"
Str_Forma_de_Pagamento = "Dinheiro"
Daruma 32 Framework 69
Daruma Automao
Int_Retorno = Daruma_FI_RecebimentoNaoFiscal(Str_Descricao_do_Totalizador,
Str_Valor_do_Recebimento, Str_Forma_de_Pagamento)
Exemplo em Delphi 7.0:
var
Str_Descricao_do_Totalizador: String;
Str_Valor_do_Recebimento: String;
Str_Forma_de_Pagamento: String;
begin
Str_Indice_do_Totalizador := 'Conta de Luz';
Str_Valor_do_Recebimento := '0,10';
Str_Forma_de_Pagamento := 'Dinheiro';
Int_Retorno := Daruma_FI_RecebimentoNaoFiscal( pchar( Str_Descricao_do_Totalizador ), pchar(
Str_Valor_do_Recebimento ), pchar( Str_Forma_de_Pagamento ) );
1.8.3.15 Daruma_FI_ReducaoZ(ndice 1100)
Definio do Mtodo:
Emite a ReduoZ na impressora.
Parmetros do Mtodo: (2 Parmetros opcionais)
1. Data: String com a Data atual da impressora no formato ddmmaa. Opcional
2. Hora: String com a Hora a ser alterada no formato hhmmss. 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 foi executado, 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:
- Importante!!!: Caso ja tenha sido efetuada uma ReducaoZ no dia, caso seja afetuada outra, isso far
com que a Impressora fique Inoperante at s 0:00. Horrio este controlado pelo relgio interno da
prpria Impressora.
- Se o flag ZAutomatica estiver setado pra 1(um) no registry, ento em havendo uma ReduoZ
pendende, a mesma ser impressa automaticamente, mas somente se ZAutomatica estiver setado
pra 1(um).
- Nas Impressoras fiscais Trmicas, FS600 e Fs2100T, como h a compactao dos dados na MFD, ento
o tempo de retorno deste mtodo maior, do que, em impressoras matriciais, assim sendo, aps o envio
deste mtodo aguarde at que a funo retorne o processo para o seu software.
Recomendaes:
- Aconselhamos aos programadores a deixar que a Daruma32.dll, estipule os parmetros de Data e Hora,
evitando algum conflito ou falha na reduo devido aos parametros passados incorretos ou fora de
sincronizo.
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:
var
Int_Confirma: Integer;
begin
int_Confirma:= Application.MessageBox ('Tem Certeza que Deseja Efetuar a ReducaoZ?' , 'Daruma
Framework',mb_YesNo+mb_DefButton2+mb_IconQuestion);
Daruma Framework 70
Daruma Automao
if (int_Confirma = 6) then //Int_Confirma = 6(Sim), = 7(No), o valor de retorno do
Application.MessageBox
Int_Retorno := Daruma_FI_ReducaoZ(' ', ' ')
Else
exit;
end;
Exemplo em Java:
int retorno;
retorno = FISCAL.Daruma_FI_ReducaoZ("" , "");
1.8.3.16 Daruma_FI_ReducaoZAjustaDataHora(ndice 1106)
Definio do Mtodo:
Emite a ReduoZ na impressora. Permite ajustar o relgio interno da impressora em at 5 minutos.
Parmetros do Mtodo: (2 Parmetros)
1. Data: String com a Data atual da impressora no formato ddmmaa.
2. Hora: String com a Hora a ser alterada no formato hhmmss.
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 foi executado, 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:
- Importantssimo este mtodo no aceita separadores, voc dever passar apenas 12bytes.
- Se os valores estiverem fora dessa faixa sero limitados a 5 minutos.
Recomendaes:
- Aconselhamos aos programadores a deixar que a Daruma32.dll, estipule os parmetros de Data e Hora,
evitando algum conflito ou falha na reduo devido aos parametros passados incorretos ou fora de
sincronizo.
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 ) );
Exemplo em Java:
int retorno;
String data = "";
String hora = "";
retorno = FISCAL.Daruma_FI_ReducaoZAjustaDataHora(data, hora);
Daruma 32 Framework 71
Daruma Automao
1.8.3.17 Daruma_FI_RelatorioGerencial(ndice 1200)
Definio do Mtodo:
Abre e Imprime Imprime o Relatrio Gerencial.
Parmetros do Mtodo: (1 Parmetro)
Texto: String com o Texto a ser impresso no relatrio com at 618 caracteres.
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 foi executado, 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 voc 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 relatrio aberto,
efetuar seu fechamento automaticamente.
- Uma vez aberto o Relatrio Gerencial, voc ter 10(dez) minutos para a impresso de Texto Livre.
- Caso voc se esquea de fechar o Relatrio Gerencial o mesmo ser fechado automaticamente aps
10(dez) minutos contando a partir de sua abertura.
- Nas Impressoras Trmicas FS600 e FS2000T o gerencial permanecer aberto por 2(dois) Minutos.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Texto_Livre As String
Str_Texto_Livre = "Texto Livre com at 600 caracteres"
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 caracteres';
Int_Retorno := Daruma_FI_RelatorioGerencial( pchar( Str_Texto_Livre ) );
Exemplo em Java:
int retorno;
retorno = FISCAL.Daruma_FI_RelatorioGerencial("teste com o .JAR no exemplo java");
1.8.3.18 Daruma_FI_Sangria(ndice 1206)
Definio do mtodo:
Faz uma sangria na impressora (retirada de dinheiro).
Parmetros do Mtodo: (1 Parmetro)
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 foi executado, 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 Framework 72
Daruma Automao
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
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 ) );
Exemplo em Java:
String valor = "1,00";
int retorno;
retorno = FISCAL.Daruma_FI_Sangria(valor);
1.8.3.19 Daruma_FI_Suprimento(ndice 1207)
Definio do Mtodo:
Faz um suprimento na impressora (entrada de dinheiro).
Parmetros do Mtodo: (2 Parmetros)
1. Valor: String com o Valor do suprimento com at 14 dgitos (2 casas decimais).
2. Forma Pagamento: String com a Forma de pagamento com at 16 caracteres. Se no for informada,
o suprimento ser feito em Dinheiro. ATENO: Nas impressoras matriciais (FS345) esse parmetro
obrigatrio ser informado.
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 foi executado, 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_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(
Daruma 32 Framework 73
Daruma Automao
Str_Forma_de_Pagamento ) );
Exemplo em Java:
String formapagamento = "dinheiro";
String valor = "1,00";
int retorno;
retorno = FISCAL.Daruma_FI_Suprimento(valor, formapagamento);
1.8.4 Mtodos Gaveta Autenticao e Outras
1.8.4.1 Daruma_FI_VerificaDocAutenticacao(ndice 1301)
Definio do Mtodo:
Verifica se existe documento para ser Autenticado, este Mtodo pode ser til antes do envio da
autenticao, ou seja, voc apenas envia o mtodo para a Autenticao quando tiver a certeza que o
documento esta presente.
Uma prtica interessante a ser aplicada a seguinte:
1) Chamar a Funcao Daruma_FI_VerificaDocAutenticao.
2) Retornou igual a 1(um)?.
3) Se sim, chamar o mtodo 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 foi executado, 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.8.4.2 Daruma_FI_Autenticacao(ndice 1300)
Definio do Mtodo:
Permite a autenticao de documentos.
Parmetros do Mtodo:
Daruma Framework 74
Daruma Automao
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 foi executado, 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 autenticar documentos na impressora fiscal FS2100T, voc deve estar com o cupom fiscal aberto.
- 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:
Int_Retorno = Daruma_FI_Autenticacao()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_Autenticacao();
end;
1.8.4.3 Daruma_FI_AutenticacaoStr(ndice 1302)
Definio do Mtodo:
Permite a autenticao de documentos com a adio de uma String de at 13 caracteres.
Parmetros do Mtodo: (1 Parmetro)
String: de at 13 caracteres.
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 foi executado, 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 autenticar documentos na impressora fiscal FS2100T, voc deve etar com o cuporm fiscal aberto.
- Este Mtodo permite ao usurio entrar com at 13 caracteres 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 ) );
Daruma 32 Framework 75
Daruma Automao
1.8.4.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 (fechada)
- Estado = 1 sensor em nvel 1 (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 foi executado, 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_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 Int_Estado_Gaveta: Integer;
begin
Int_Estado_Gaveta := 0;
Int_Retorno := Daruma_FI_VerificaEstadoGaveta( Int_Estado_Gaveta);
if Int_Estado_Gaveta = 1 Then
begin
Application.MessageBox('1 = Gaveta Aberta!', 'Daruma Framework', mb_ok);
end
else
begin
Application.MessageBox('0 = Gaveta Fechada!', 'Daruma Framework', mb_ok);
end;
1.8.4.5 Daruma_FI_VerificaEstadoGavetaStr(ndice 1312)
Definio do Mtodo:
Retorna se a gaveta est fechada ou aberta.
Parmetros da Mtodo:
Estado: String com a Varivel para receber o estado da gaveta, onde:
- Estado = 0 sensor em nvel 0 (fechada)
- Estado = 1 sensor em nvel 1 (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 foi executado, 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 Framework 76
Daruma Automao
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 );
if Str_Estado_Gaveta = '1' Then
begin
Application.MessageBox('1 = Gaveta Aberta!', 'Daruma Framework', mb_ok);
1.8.4.6 Daruma_FI_AcionaGaveta(ndice 1310)
Definio do Mtodo:
Abre a gaveta de dinheiro(Caixa).
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 foi executado, 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();
Exemplo em Java:
int retorno = 0;
retorno = FISCAL.Daruma_FI_AcionaGaveta();
1.8.4.7 Daruma_FI_AberturaDoDia(ndice 603)
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: (2 Parmetros)
1. Valor: String com o Valor do suprimento com at 14 dgitos (2 casas decimais). Informe o valor "0"
para no fazer suprimento.
2. Forma Pagamento: String com a Forma de pagamento com at 16 caracteres. 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.
Daruma 32 Framework 77
Daruma Automao
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo foi executado, 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 ento ser feito apenas um suprimento.
- Nas Impressoras Trmicas MFDs FS600 e FS2000T a abertura do dia da-se partir da emisso de
qualquer documento salvo uma LeituraX.
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 ) );
1.8.4.8 Daruma_FI_FechamentoDoDia(ndice 604)
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 foi executado, 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.8.4.9 Daruma_FI_ImprimeConfiguracoesImpressora(ndice 607)
Definio do Mtodo:
Imprime configuraes da impressora fiscal em um relatrio gerencial. Ser emitida uma leitura X antes.
Daruma Framework 78
Daruma Automao
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 foi executado, 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 27/06/2001
Hora da impressora 11:38:37
Verso do firmware 120
Verso da dll 1.9
log da dll Desabilitado
Lin. Imp. aps pouco papel 0000
Tipo Impressora fiscal + gaveta+autenticao
GravaStatus NO
Grava Retorno NO
Status Mtodo NO
Controle Porta NO
Modo gaveta 0
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_ImprimeConfiguracoesImpressora()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI_ImprimeConfiguracoesImpressora();
1.8.4.10 Daruma_FI_SaltarLinhas
Definio do Mtodo:
Permite saltar linhas entre documentos.
Parmetros do Mtodo: (1 Parmetro)
1. NumeroLinhas: Inteiro com o nmero de linhas que deseja saltar.
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 foi executado, 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:
- Esse mtodo pode ser executado nos documentos fiscais e no-fiscais, aberto ou fechado.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Int_Linhas as Integer;
Int_Linhas = 3
Int_Retorno = Daruma_FI_SaltarLinhas(Int_Linhas)
Exemplo em Delphi 7.0:
Daruma 32 Framework 79
Daruma Automao
Var Int_Linhas :Integer;
begin
Int_Linhas:= 3;
Int_Retorno:= Daruma_FI_SaltarLinhas(Int_Linhas);
1.8.5 Mtodos Programao e Configurao
1.8.5.1 Daruma_FI_ProgramaAliquota(ndice 302)
Definio do Mtodo:
Programa alquota tributria na Impressora Fiscal.
Parmetros do Mtodo: (2 Parmetros)
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 foi executado, 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 executado aps uma ReduoZ e antes de uma LeituraX, ou qualquer outro
documento.
- Nas Impressoras Daruma, voc "no precisa" carregar diariamente as Alquotas.
- Na hora de passar o valor da alquota voc, no deve utilizar nenhum tipo de separador.
- Lembrando que aps cadastrada a Alquota no podemos exclui-ls ou altera-ls somente via software
de interveno tcnica.
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 );
Exemplo em Java:
String valoraliquota = "18,00";
int tipoaliquota = 0;
int retorno;
retorno = FISCAL.Daruma_FI_ProgramaAliquota(valoraliquota, nt = tipoaliquota);
Daruma Framework 80
Daruma Automao
1.8.5.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: (2 Parmetros)
1. Indice: INTEIRO com a posio em que o totalizador ser programado.
2. Totalizador: String at 21 caracteres 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 foi executado, 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.
- Nas impressoras fiscais FS600(MFD) e FS2100T(MFD), s sero aceitos no mximo 15 carcteres na
descrio do totalizador no fiscal.
- Lembrando que aps cadastrada a forma de recebimentos no podemos exclui-ls ou altera-ls somente
via software de interveno tcnica.
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
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 ) );
Exemplo em Java:
int indicetotalizador = 00;
String nometotalizador = "CONTAS A PAGAR";
int retorno;
retorno = FISCAL.Daruma_FI_NomeiaTotalizadorNaoSujeitoIcms(indicetotalizador, nometotalizador);
1.8.5.3 Daruma_FI_ProgramaFormasPagamento(ndice 301)
Definio do Mtodo:
Realiza o casdastro das formas de pagamento na impressora fiscal, este Mtodo deve ser enviado
Daruma 32 Framework 81
Daruma Automao
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: (1 Parmetro)
String contendo as formas de Pagamento desejadas, separadas por PONTO-E-VRGULA, cada forma de
pagamento deve ter o tamanho de at 16 caracteres.
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 foi executado, 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:
- Nas Impressoras Trmicas MFD's FS600 e FS2000T as descries das formas de pagamentos podero
ser de no mximo 15 caracteres.
- Quando executado este mtodo automaticamente a dll cria o compravente no fiscal vinculado para
cada forma de pagamento programada. Dispensando com isso a programao dos Comprovantes No
Fiscais Vinculados.
- O cupom fiscal deve estar fechado.
- Este Mtodo s ser executado aps uma ReduoZ e antes de uma LeituraX ou qualquer outro
documento.
- Nas Impressoras Trmicas MFDs FS600 e FS2000T as formas no sero vinculveis. Para torn-las a
vinculveis na preciso que seja feita uma Interveno Tcnica. Vide connio 85/01.
- Lembrando que aps cadastrada a forma de pagamento no podemos exclui-ls ou altera-ls somente
via software de interveno tcnica.
Recomendaes:
- Recomendamos antes de realizar a funo Daruma_FI_ProgramaFormasPagamento, verificar aonde est
vinculado a primeiro ndice na impressora fiscal (Metodo Disponivl nas Impressoras Trmicas com
MFD), utilizando a funo Daruma_FIMFD_IndicePrimeiroVinculado.
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.8.5.4 Daruma_FI_ProgramaOperador(ndice 310)
Definio do Mtodo:
Programa o Operador no ECF, essa programao pode ser feita a qualquer momento do dia.
Parmetros do Mtodo: (1 Parmetro)
Operador: String com at 20 caracteres.
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 foi executado, 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 Framework 82
Daruma Automao
- Este Mtodo poder ser chamado a qualquer momento do dia.
- Lembrando que aps cadastrada o operador no podemos exclui-ls ou altera-ls somente via software
de interveno tcnica.
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.8.5.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 foi executado, 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 ReduoZ.
- Este mtodo no est disponvel para a FS2000.
- Este mtodo no est disponvel para a FS600, somente nas verses 01.04.00 acima usando o Flag
MFDArredondamentoAutomatico = '1'.
- Este mtodo no est disponvel para a FS2100, somente nas verses 01.04.00 acima usando o Flag
MFDArredondamentoAutomatico = '1'.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_ProgramaArredondamento()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_ProgramaArredondamento();
1.8.5.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:
Daruma 32 Framework 83
Daruma Automao
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo foi executado, 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 ReduoZ.
- Este mtodo no est disponvel para a FS2000, pelo fato da mesma no permitir arredondamento, vide
convnio 85/01.
- Este mtodo no est disponvel para a FS600, pelo fato da mesma no permitir arredondamento, vide
convnio 85/01.
- Este mtodo no est disponvel para a FS2100T, pelo fato da mesma no permitir arredondamento,
vide convnio 85/01.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_ProgramaTruncamento()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_ProgramaTruncamento();
1.8.5.7 Daruma_FI_LinhasEntreCupons(ndice 307)
Definio do Mtodo:
Programa o espaamento de linhas entre os cupons.
Parmetros do Mtodo: (1 Parmetro)
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 foi executado, 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.8.5.8 Daruma_FI_EspacoEntreLinhas(ndice 308)
Definio do Mtodo:
Programa o espaamento entre as linhas impressas no cupom.
Daruma Framework 84
Daruma Automao
Parmetros do Mtodo: (1 Parmetro)
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 foi executado, 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
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.8.5.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:
Nenhum.
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 foi executado, 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 ReduoZ. Para desprogramar, o
Mtodo somente ser aceito 1 (uma) hora aps a ReduoZ e no pode ter havido movimento na
impressora nesse perodo.
- Voc poder deixar a entrada e sada do horrio de vero automatizada. Para isso basta seguir as
instrues abaixo:
1. Entre no registry no seguinte path: HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF;
2. Sete o flag ControlaHorarioVerao para 1(um);
3. Insira uma data vlida no flag:DataEntradaHorarioVerao ex.:091205;
4. Insira uma data vlida no flag:DataSaidadaHorarioVerao ex.:091205.
Dessa maneira conforme voc programou a Daruma32.dll quando verificar que chegou a data prevista em
sua programao, ir fazer o ajuste automaticamente, tanto para a entrada quanto para a sada do
mesmo.
Importante: Para que a sada do horrio de vero seja aceita, fundamental que a ReduoZ que
antecede a data de sada do horrio de vero seja feita ao final do perodo do dia anterior ao retorno ao
horrio normal. Exemplificando melhor: se o horrio de vero for terminar no dia 100306, ento a
ReduoZ do dia 090306 deve ter sido emitida ainda no dia 090306.
Daruma 32 Framework 85
Daruma Automao
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_ProgramaHorarioVerao()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_ProgramaHorarioVerao();
1.8.5.10 Daruma_FI_EqualizaFormasPgto(ndice 309)
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 foi executado, 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 (V = Vinculado), porm no
tem o par dela nos vinculados. E nssa hora que este Mtodo torna-se indispensvel, pelo fato de que
quando executado ele criar o Vinculado que estava faltando, para fazer par com a forma de pagamento
que havia sido programada. Sendo assim passaramos a ter nos meios de pagamento vCartao e agora
tambm nos vinculados Cartao e s assim poderia-se fazer um Comprovante no Fiscal Vinculado partir
da forma de pagamento vCartao (V = Vinculado).
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_EqualizaFormasPgto()
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_EqualizaFormasPgto();
1.8.5.11 Daruma_FI_ProgramaVinculados(ndice 312)
Definio do Mtodo:
Programa comprovante no fiscal vinculado.
Parmetros do Mtodo: (1 Parmetro)
String: Com a descrio do vinculado com at 16 caracteres.
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 foi executado, 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 dever ser usado em casos onde j exitir a forma de pagamento e ela tenha uma letra v
minscula antes da descrio. Importante! a dll possui uma inteligncia prpria em relao a esta
Daruma Framework 86
Daruma Automao
situao. Ou seja se existir uma forma de pagemento programada e que tenha o vZinho de vnculvel
ex.: vTEF e ainda no tenho o vinculado com a mesma descrio nos "CNFV", ento a dll ir criar
automaticamente o vinculado.
- Este Mtodo s ser executado aps uma ReduoZ e antes de uma LeituraX ou qualquer outro
documento.
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.8.5.12 Daruma_FI_ProgramaFormasPgtoSemVincular(ndice 313)
Definio do Mtodo:
Programa forma de pagamento sem vincular.
Parmetros do Mtodo: (1 Parmetro)
String: Com a descrio da forma de pagamento com at 16 caracteres.
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 foi executado, 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 executado esta mtodo, o vinculado que seria gerado automaticamente como acontece com a
funo Daruma_FI_ProgramaFormasPagemento, deixa de ser programado. Portando se voc necessita de
programar uma forma de pagamento avulsa "sem o vinculado", dever usar este mtodo.
- Este Mtodo s ser executado aps uma ReduoZ e antes de uma LeituraX ou qualquer outro
documento.
- 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. Assim sendo 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.
- Lembrando que aps cadastrada a forma de pagamento sem vincular no podemos exclui-ls ou altera-
ls somente via software de interveno tcnica.
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';
Daruma 32 Framework 87
Daruma Automao
Int_Retorno := Daruma_FI_ProgFormasPagtoSemVincular( pchar( Str_Descricao_da_Forma_Pagamento
) );
1.8.5.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. Este recurso foi descontinuado nas impressoras FS600 e
FS2100T. Ambas trmicas.
Parmetros do Mtodo: (1 Parmetro)
1 - No fecha o Cupom Fiscal Automacamente, isso fica a cargo do aplicativo.
0 - 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 foi executado, 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 executado aps uma ReduoZ e antes de uma LeituraX ou qualquer outro
documento.
- 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 start-
up de sua aplicao.
- Este mtodo incompatvel com a impressora FS2000.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_CfgFechaAutomaticoCupom("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_CfgFechaAutomaticoCupom('1');
1.8.5.14 Daruma_FI_CfgImpEstGavVendas(ndice 411)
Definio do Mtodo:
Imprime na LeituraX e na ReduoZ quantas vezes a Gaveta foi Aberta.
Parmetros do Mtodo: (1 Parmetro)
0 - No Imprime na LeuturaX e na ReduoZ quantas Vezes a Gaveta foi Aberta.
1 - Imprime na LeituraX e na ReduoZ 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 foi executado, 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.
- Este Mtodo s ser executado aps uma ReduoZ e antes de uma LeituraX ou qualquer outro
documento.
Daruma Framework 88
Daruma Automao
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_CfgImpEstGavVendas("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_FI_CfgImpEstGavVendas('1');
1.8.5.15 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: (1 Parmetro)
0 - No realiza os Clculos por arredondamento e sim por truncamento.
1 - Realiza os Clculos 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 foi executado, 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 ReduoZ.
- Este mtodo no est disponvel para a FS2000, vide convnio 85/01.
- Este mtodo no est disponvel para a FS600, vide convnio 85/01.
- Este mtodo no est disponvel para a FS2100T, vide convnio 85/01.
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.8.5.16 Daruma_FI_CfgHorarioVerao(ndice 404)
Definio do Mtodo:
Configura o ECF para trabalhar com Horrio de Vero.
Parmetros do Mtodo: (1 Parmetro)
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 Relgio 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 vero, voc deve realizar uma
Reduo Z e ESPERAR 1(uma) hora antes de enviar o mtodo, isso se deve pelo fato que uma vez que a
Z foi Executada, o Horrio em que a Z foi executada ficou gravado na Memria Fiscal que no Permitir
que o Relgio do ECF volte 1(uma) hora atrs 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.
Daruma 32 Framework 89
Daruma Automao
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo foi executado, 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.
- Este Mtodo s ser executado aps uma ReduoZ e antes de uma LeituraX ou qualquer outro
documento.
- Voc poder deixar a entrada e sada do horrio de vero automatizada. Para isso basta seguir as
instrues abaixo:
1. Entre no registry no seguinte path: HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF;
2. Sete o flag ControlaHorarioVerao para 1(um);
3. Insira uma data vlida no flag:DataEntradaHorarioVerao ex.:091205;
4. Insira uma data vlida no flag:DataSaidadaHorarioVerao ex.:091205.
Dessa maneira conforme voc programou a Daruma32.dll quando verificar que chegou a data prevista em
sua programao, ir fazer o ajuste automaticamente, tanto para a entrada quanto para a sada do
mesmo.
Importante: para que a sada do horrio de vero seja aceita, fundamental que a ReduoZ que
antecede a data de sada do horrio de vero seja feita ao final do perodo do dia anterior ao retorno ao
horrio normal. Exemplificando melhor: se o horrio de vero for terminar no dia 100306, ento a
ReduoZ do dia 090306 deve ter sido emitida ainda no dia 090306.
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.8.5.17 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: (1 Parmetro)
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 foi executado, 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.
- Este Mtodo s ser executado aps uma ReduoZ e antes de uma LeituraX ou qualquer outro
documento.
- Este mtodo imcompatvel com a impressora FS2000.
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 Framework 90
Daruma Automao
1.8.5.18 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: (1 Parmetro)
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 foi executado, 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 na
incializao de sua aplicao.
- Este Mtodo no compatvel com a Impressora de Duas Estaes FS2000.
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.8.5.19 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: (1 Parmetro)
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 foi executado, 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:
var
Str_Valor:String;
begin
Str_Valor:= InputBox('Entre com o nmero de linhas', 'Daruma_Framework', '15');
Daruma 32 Framework 91
Daruma Automao
Int_Retorno:= Daruma_FI_CfgEspacamentoCupons(Str_Valor);
1.8.5.20 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 comece a sinalizar pouco papel quando a bobina estiver bem prxima 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: (1 Parmetro)
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 foi executado, 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 valor configurado ir funcionar como um adiador do retorno de pouco papel. Por exemplo se voc
estiver com o valor de 0450 linhas, isso quer dizer que aproximadamente 0450 linhas aps a bobina ter
passado pelo sensor que ela passar a devolver o status de pouco papel.
- Este mtodo no compatvel com a impressora FS2000 e impressoras trmicas com MFD.
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
Close;
Int_Retorno := Daruma_FI_CfgLimiarNearEnd(Str_Numero_Linhas);
1.8.5.21 Daruma_FI_CfgPermMensPromCNF(ndice 410)
Definio do Mtodo:
Permite o Uso da Mensagem Promocional no Comprovante No Fiscal No Vinculado.
Parmetros do Mtodo: (1 Parmetro)
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 foi executado, porm o ECF
sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Daruma Framework 92
Daruma Automao
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 start-
up de sua aplicao.
- Este mtodo no compatvel com a impressora FS2000.
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.8.5.22 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 Exemplo Porta que pode ser
"Default" ou a Porta Serial Desejada exemplo COM1.
Todos os Mtodos sempre devolvem um inteiro:
1 - OK
-4 - No OK, Chave no Encontrada.
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
Separador= ,
SeparaMsgPromo= 1
Vende1Linha = 1
XAutomatica = 0
ZAutomatica = 1
AbrirDiaFiscal =1
ErroExtendidoOk=000
IgnorarPoucoPapel=1
Daruma 32 Framework 93
Daruma Automao
1.8.5.23 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\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
AplMensagem1= DARUMA32 FrameWork Mensagem No Programada
AplMensagem2= DARUMA32 FrameWork Mensagem No Programada
TipoUltimoDocumento= Nesta Chave fica armazenado a sigla com o tipo do ltimo documento que foi
emitido no ECF
Velocidade=9600
TerminalServer=0
PortaServidor=1002
Tarantella=0
TempoEsperaCheque=5
MFDTamMinDescProd=15
ThreadNoStartUp=1
CupomAdicionaDll=1
CupomAdicionaDllConfig=11111111111111111
CHAVE:
DARUMA\ECF - Nesta Chave Voc encontrar as configuraes para que a dll trabalhe com
nosso ECF.
VALORES:
Observao Geral: Caso queira alterar o valor de qualquer Chave da Pasta Daruma no Registry,
ento pode-se usar de forma genrica o mtodo Daruma_Registry_AlteraRegistry(ndice17),
bastando passa o nome da Chave a ser alterada e o seu novo valor.
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. Caso voc esteja
trabalhando com uma Impressora de outro fabricante ento este flag dever estar com DS300 setado
como produto;
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,
Daruma Framework 94
Daruma Automao
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 Mtodos de Informaes da dll como
Daruma_FI_NumeroCupom( Str_NumeroCupom) 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 006,000,000. 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 pela DLL;
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 os Mtodos executados, 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 promocional e no deseja que aparea esta
linha separatria, 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 econmia no cupom fiscal de at 40%, ou seja, com esta chave a 1(um)
esta "inteligncia" ativada, caso contrrio 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,
por qu? 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 que gera impresso para o ECF, e o ECF tiver
uma ReduoZ Pendente e esta chave estiver a 1(um) ento a dll ir efetuar a LeituraX automaticamente.
Importante! Nas Impressoras Trmicas MFDs FS600 eFS2000T a abertura do dia no acontece por meio
de impresso de uma LeituraX e sim por qualquer dopcumentos ex.: sangria suprimento ou at mesmo
um cupom fiscal;
ZAutomatica: O Mesmo que acontece com a ReduoZ, a Impressora Daruma trabalha com o Conceito
de no permitir que a ReduoZ acontea automaticamente, por isso voc deve "setar" esta chave para
1(um) caso voc deseje que a ReduoZ passe a ser executada de forma automatica;
AbrirDiaFiscal: A Impressora Daruma, necessita que seja efetuado uma LeituraX para a emisso do
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. Importante! Nas Impressoras Trmicas MFDs FS600
eFS2000T a abertura do dia no acontece por meio de impresso de uma LeituraX e sim por qualquer
dopcumentos ex.: sangria suprimento ou at mesmo um cupom fiscal;
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, no trata o pouco papel, assim
sendo quando o ECF indicar Pouco Papel a dll no ira retonar o -27 (caso seja programado para isso no
Daruma 32 Framework 95
Daruma Automao
Mtodo. Daruma_Registry_StatusFuncao) e tampouco retornar 64 no Byte de Status 2, conforme tabela
de decodificao de Erro;
AplMensagem1: Esta Chave armazena uma mensagem com a identificao do aplicativo
exemplo:Aplicativos Comerciais verso 1.00. Ela esta presente no final de todos os documentos emitidos
nas MFD (impressoras trmicas), e uma exigncia do fisco. Caso voc ainda no tenha programado esta
mensagem podera fazer isso atravs do mtodo Daruma_Registry_AplMensagem1(ndice36);
AplMensagem2: Esta Chave armazena uma mensagem com a identificao do aplicativo
exemplo:Aplicativos Comerciais verso 1.00. Ela esta presente no final de todos os documentos emitidos
nas MFD (impressoras trmicas), e uma exigncia do fisco. Caso voc ainda no tenha programado esta
mensagem podera fazer isso atravs do mtodo Daruma_Registry_AplMensagem2(ndice37);
TipoUltimoDocumento: Sempre que houver a secessidade de voc saber qual o tipo do ltimo
documento emitido, bastara ler o conteudo desta Chave com a funo
Daruma_Registry_RetornaValor(ndice19), alguns exemplo de siglas: CNV(Comprovante No Vinculado),
LXX(LeituraX), CPF(Cupom Fiscal);
Velocidade: Esta Chave visa permitir ao aplicativo poder trabalhar com uma velocidade maior ou menor
na porta serial somente nas impressoras MFDs. A velocidade default na FS600 9600, caso queira
alterar para 38400 "velocidade mxima", basta executar o mtodo
Daruma_Registry_Velocidade(ndice28);
TerminalServer: Esta Chave tem por default valor 0(zero), caso seja alterado para 1, eto a Dll (server),
passar a no mais escrever na porta local e sim no EndereoIP, que inviou o mtodo. Importante o valor
dessa Chave dever permanecer setedo sempre em 0(zero) e somente se voc estiver em uma mquina
com sistema operacional windows verso server e de fato for trabalhar com comunicao via Terminal
Serever, ai sim voc dever alterar o valor da mesma;
PortaServidor: Caso vec esteja comunicando com o ECF via Terminal Server, ento poder customizar
a porta de comunicao que por default 1002;
TempoEsperaCheque: Nesta Configurado o tempo que a funo
Daruma_FI2000_ImprimirCheque(ndice5016), ir aguardar pelo posicionamento do cheque na hora da
impresso.
Tarantella: Esta Chave dever ser setada em concomitncia com a Chave Terminal Server. Porm ao
invs de trabalhar por endereamento de IP, voc trabalha com mapeamento de unidade e com troca de
arquivos. Nesta modalidade, o Observer necessariamente ira aguardar por comandos, que sero escritos
pela dll server, na unidade mapeada no servidor.
MFDTamMinDescProd: Nas MFDs FS600 e FS2110T. possvel determinar o tamanho mnimo que se
quer obter na descrio. Quando definido que a venda ser feita em 1Linha, ento tambm h uma
tolerncia em relao ao tamanho a ser mantido na descrio, se voc definir que ir trabalhar com uma
descrio de no mnimo 15 caracteres, ento a Dll para manter a descrio com no mnimo 15 caracteres
e cortar os caracteres que excederem o nmero previamente definido nesta Chave. Importante: Nas
MFDs FS600 e FS2100T para um cdigo de 13 caracteres o tamanho mximo que poder ter
uma descrio, visando economia de bobina e por isso manter a venda em uma linha dever
ser de at 20 caracteres e para um cdigo de 1 caractere a descrio poder ter at 32
caracteres;
ThreadNoStartUp: Esta chave setada em 1(um) tem por objetivo libarar o processo para o aplicativo
durante o StartUp da Dll. Caso seja setada pra 0(zero) ento quando o aplicativo for startado o processo
ser bloqueado pela Dll e devolvido somente aps o StartUp da Dll.
NumeroSerioNaoFormatado: Esta chave setada em 1(um) tem por objetivo devolver o nmero do srie
da impressora sem a formatao "zeros esquerda", caso esteja setada para 0 (zero) ento quando
solicitdado o nmero de srie, ser devolvido com a formatao "zeros esquerda".
LinhasTEF: O nmeto de linhas que estiver setado nesta chave, ser o nmero de linhas impressas por
buffer no mtodo Daruma_TEF_ImprimirResposta, o valor default para esta chave 2.
MFDLeituraMFCompleta: Esta chave setada em 1(um) tem por objetivo permitir que a leitura da
memria fiscal nos ECF's FS600 e FS2100T, ocorra de forma completa, do contrrio ser simplificada.
CupomAdicionaDll: Esta chave setada em 1(um) tem por objetivo fazer a impresso do cupom
Daruma Framework 96
Daruma Automao
adicional. Obs.: Este cupom adicional criado pela dll, sendo assim se voc faz comunicao direta,
infelizmente no ter como imprim-lo.
CupomAdicionaDllConfig: Esta chave possui um nico parmetro, que composto de 10(dez)bytes,
sendo que o dcimo esta reservado para uso futuro, para ver os valores de configurao clique no link a
seguir:Daruma_Registry_CupomAdicionalDllConfig(ndice57)
MaxFechamentoAutomatico: Este mtodo permite que seja fixado um valor mnimo, visando suprir o
saldo devedor em casos onde pequenas difernas no fechamento do cupom, como por exemplo 0,01
centavo.
1.8.5.24 Daruma_Registry_AlterarRegistry(Indice 83)
Definio do Mtodo:
Permite a Alterao das chaves do registry, ou seja, dispensando a utilizao de um mtodo especfico.
Parmetros da Mtodo: (3 Parmetros)
1. String com o nome do Produto que deseja alterar.
2. String com o nome da Chave que deseja alterar.
3. 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 foi executado, 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:
- Este mtodo no dever ser utilizado, quando se tratar de alterar a velocidade de
comunicao com a impressora.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Nome_do_Produto As String
Dim Str_Nome_da_Chave As String
Dim Str_Valor_da_Chave As String
Str_Nome_do_Produto = InputBox("Entre com o nome do Produto que voc deseja Alterar:", "Daruma
Framework", "ECF")
Str_Nome_da_Chave = InputBox("Entre com o nome da Chave que voc deseja Alterar:", "Daruma
Framework", "Log")
Str_Valor_da_Chave = InputBox("Entre com um novo Valor para Chave:", "Daruma Framework", "1")
If Str_Nome_do_Produto = "" Or Str_Nome_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:
var
Str_Nome_do_Produto: String;
Str_Nome_da_Chave: String;
Str_Valor_da_Chave: String;
begin
Str_Nome_do_Produto := InputBox('Daruma Framework', 'Entre com o Nome do Produto:', 'ECF');
Str_Chave := InputBox('Entre com o Nome da Chave para Saber o seu Valor:', 'Daruma Framework',
'Log');
Str_Chave_Valor := InputBox('Entre com o Valor da Chave:', 'Daruma Framework', '1');
Daruma 32 Framework 97
Daruma Automao
if (Str_Nome_do_Produto = '')or(Str_Chave = '') Then
Exit;
Int_Retorno := Daruma_Registry_AlterarRegistry(Str_Nome_do_Produto, Str_Chave,
Str_Chave_Valor);
Application.MessageBox(pchar(Str_Nome_do_Produto + ' \ ' + Str_Chave + ' \ ' + Str_Chave_Valor),
'Daruma Framework', mb_ok + 32);
Daruma_Analisa_Retorno();
end;
1.8.5.25 Daruma_Registry_AlteraRegistry (ndice 17)
Definio do Mtodo:
Permite a Alterao das chaves do registry, ou seja, dispensando a utilizao de um mtodo especfico.
Parmetros da Mtodo: (2 Parmetros)
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 foi executado, 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:
- Este mtodo no dever ser utilizado, quando se tratar de alterar a velocidade de
comunicao com a impressora.
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:
var
Str_Nome_da_Chave:String;
Str_Valor_da_Chave:String;
begin
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
Close;
End If
Int_Retorno := Daruma_Registry_AlteraRegistry(Str_Nome_da_Chave, Str_Valor_da_Chave);
Daruma Framework 98
Daruma Automao
1.8.5.26 Daruma_Registry_RetornaValor(ndice 19)
Definio do Mtodo:
Retorna o Valor de uma Chave do Registry da DARUMA32.dll.
Parmetros da Mtodo: (1 Parmetro)
String com o Nome do produto que podem ser:
ECF - Refere-se a Impressora Fiscal.
DUAL - Refere-se a Impressora No Fiscal, Mini-impressora.
ECFR - Refere-se a Impressora Fiscal para Restaurantes.
ECFB - Refere-se a Impressora Fiscal para Bilhete de Passagem Rodoviria
TA1000 - Refere-se ao MicroTerminal TA1000
1. String com o Nome da Chave do produto
2. String por Referncia 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 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_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
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.8.5.27 Daruma_Registry_Porta(ndice 1)
Definio do Mtodo:
Este Mtodo permite Configurar a porta serial da impressora, ou simplesmente indicar para a dll que
localize para voc onde a impressora est conectada, a dll buscar da COM1 at a COM15.
Daruma 32 Framework 99
Daruma Automao
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
Observaes: (1 Parmetro)
Valor default 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.8.5.28 Daruma_Registry_Path(ndice 2)
Definio do Mtodo:
Configura o Path onde ser criado os arquivos de retorno, resposta, relatorios Tipo 60 e Log da dll.
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 Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Observaes: (1 Parmetro)
Valor default 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)
Exemplo em Delphi 7.0:
var
Str_Path: String;
begin
Str_Path := InputBox('Entre com o Path:', 'Daruma Framework', 'C:\');
Daruma Framework 100
Daruma Automao
if Str_Path = '' Then
Exit;
Int_Retorno := Daruma_Registry_Path( pchar(Str_Path) );
1.8.5.29 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 Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Observaes: (1 Parmetro)
Valor default 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.8.5.30 Daruma_Registry_StatusFuncao(ndice 4)
Definio do Mtodo:
Este mtodo possibilita a voc um tratameto dos retornos (erros)de maneira simplificada. Por exemplo ao
invz de voc ler o inteiro que retornado em cada mtodo e tambm o ACK, ST1 e ST2, voc le-r
apenas o iRetorno e smente se o iRetorno for diferente de 1(um) ai sim voc ter de ler os demais bytes
com o detalhe que para ler os demais bytes voc usar o
mtodo:Daruma_FI_RetornoImpressora(ndice1402).
Parmetros do Mtodo: (1 Parmetro)
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 Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
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' (Sinalizao de Erro) sinalizado pelo ECF (Pouco Papel, por Exemplo), isso ser
sinalizado no retorno da propria Mtodo, com o valor de -27
- Valor default 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 32 Framework 101
Daruma Automao
1.8.5.31 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: (1 Parmetro)
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 Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Observaes:
Valor default 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.8.5.32 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: (1 Parmetro)
1 - Todo este controle fica a cargo da dll de comunicao Daruma32.dll.
0 - O Aplicativo Controla a porta Serial e deve chamar as Mtodo de Abertura e Fechamento de porta.
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
Observaes:
Valor default 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.8.5.33 Daruma_Registry_ModoGaveta(ndice 7)
Definio do Mtodo:
Permite inverter o sinal da Gaveta com a Lgica 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
implementado devido o fato de muitas gavetas estarem saindo com problemas no sinal lgico.
Parmetros do Mtodo: (1 Parmetro)
1 - Lgica Invertida.
Daruma Framework 102
Daruma Automao
0 - Lgica normal.
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
Observaes:
Valor default 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.8.5.34 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: (1 Parmetro)
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 Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Observaes:
- Valor Default 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.8.5.35 Daruma_Registry_NomeLog(ndice 10)
Definio do Mtodo:
Configurar o Nome do Arquivo Log que ser Criado.
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
Observaes: (1 Parmetro)
- Valor default da Chave = "Daruma32.Log".
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
Daruma 32 Framework 103
Daruma Automao
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.8.5.36 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 necessrio
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 Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Observaes: (1 Parmetro)
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:
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.8.5.37 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: (1 Parmetro)
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 Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Daruma Framework 104
Daruma Automao
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.8.5.38 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: (1 Parmetro)
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 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_VendeItemUmaLinha("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_VendeItemUmaLinha('1');
1.8.5.39 Daruma_Registry_XAutomatica(ndice 14)
Definio do Mtodo:
A Dll ir efetuar uma LeituraX automaticamente ao perceber que existe esta necessidade, por qu?
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 ReduoZ Pendente e est
chave estiver a 1(um) ento a dll ir efetuar a X automaticamente.
Parmetros da Mtodo: (1 Parmetro)
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.
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
Observaes:
- O Valor Default desta chave 1(um).
- Nas Impressoras Trmicas MFDs FS600 e FS2000T o dia no aberto partir de uma LeituraX e sim
partir do primeiro documento ser emitido seja ele fiscal ou no.
Exemplos:
Exemplo em Visual Basic 6.0:
Daruma 32 Framework 105
Daruma Automao
Int_Retorno = Daruma_Registry_XAutomatica("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_XAutomatica('1');
1.8.5.40 Daruma_Registry_ZAutomatica(ndice 15)
Definio do Mtodo:
Emite a ReduoZ automaticamente quando existe uma pendncia acumulada.
Parmetros da Mtodo: (1 Parmetro)
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 ReduoZ Pendente para Abrir
o Dia.
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
Observaes:
- O Valor Default desta chave 1(UM).
Ateno! que Este Mtodo anula completamente os valores da dll de ZAutomatica e programa
manualmente para passar os Valores a 1(um) para a dll Fazer Automaticamente ou 0(zero) para anular o
comando.
Recomendaes:
A Impressora Daruma trabalha com o Conceito de no permitir que a Reduo Z acontea
automaticamente, por isso voc deve configurar esta chave para 0(Zero) caso voc deseje que a Reduo
Z passe a ser executada de forma manual.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_ZAutomatica("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_ZAutomatica('1');
1.8.5.41 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: (1 Parmetro)
0 - Trabalha com Porta Serial Local.
1 - Trabalha com Terminal Server - Atravs do Endereo IP do Servidor.
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
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 configurada 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) mas Mtodo que
voc chamar, ou seja, Erro de Comunicao.
Exemplos:
Daruma Framework 106
Daruma Automao
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_TerminalServer("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_TerminalServer('1');
1.8.5.42 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: (1 Parmetro)
0 - No efetua a LeituraX Automaticamente, deixa isso a cargo da aplicao.
1 - Ir efetuar a LeituraX 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 Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
Observaes:
- O Valor Default desta chave 1(um).
- Nas Impressoras Trmicas MFDs FS600 e FS2100T o dia no aberto partir de uma LeituraX e sim
partir do primeiro documento ser emitido seja ele fiscal ou no.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_AbrirDiaFiscal("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_AbrirDiaFiscal('1');
1.8.5.43 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: (1 Parmetro)
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 Configurar o Registry
-4: No OK, A chave ou Valor no Arquivo Registry no Foi Encontada
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:
Daruma 32 Framework 107
Daruma Automao
Int_Retorno = Daruma_Registry_IgnorarPoucoPapel("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_IgnorarPoucoPapel('1');
1.8.5.44 Daruma_Registry_ImprimeRegistry(ndice 18)
Definio do Mtodo:
Imprime a Configurao Atual do Registry, passe o produto como Referncia que ser impressor no
Relatrio Gerencial as configuraes do Registry do produto passado como parmetro..
Parmetros da Mtodo: (1 Parmetro)
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 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_Produto As String
Str_Produto = InputBox("Entre com o nome do Produto a ser impresso:", "Daruma Framework", "ECF")
If Str_Produto = "" Then
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.8.5.45 Daruma_Registry_Default(ndice 20)
Definio do Mtodo:
Zera as Configuraes realizadas no Registry deixando o Registry com seus ValoresDefault.
Parmetros da Mtodo:
No H.
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:
Int_Retorno = Daruma_Registry_Default()
Exemplo em Delphi 7.0:
Daruma Framework 108
Daruma Automao
int_Retorno := Daruma_Registry_Default();
1.8.5.46 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: (1 Parmetro)
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".
- O erro extendido apenas um complemento ao ST1 e ST2. Portanto mesmo que voc esteja
utilizando este mtodo ainda assim dever ter em sua rotina o mtodo
Daruma_FI_RetornoImpressora.
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_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.8.5.47 Daruma_Registry_Velocidade(ndice 28)
Definio do Mtodo:
Este Mtodo permite a voc configurar a velocidade na FS600 da porta serial de 9600 115200.
Parmetros do Mtodo: (1 Parmetro)
Velocidade: Varivel String com a velocidade a ser programada no ECF.
Observaes:
O Valor Default desta chave "9600".
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:
Daruma 32 Framework 109
Daruma Automao
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_Velocidade("9600")
Exemplo em Delphi 7.0:
Int_Retorno: = Daruma_Registry_Velocidade('9600');
1.8.5.48 Daruma_Registry_Produto(ndice 34)
Definio do Mtodo:
Este Mtodo permite Configurar o modelo de ECF que est conectado na porta serial, ou simplesmente
indicar para a dll identique o Produto.
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
Observaes: (1 Parmetro)
Valor default da Chave = "DEFAULT".
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_Produto("FS345")
Exemplo em Delphi 7.0:
Int_Retorno:= Daruma_Registry_Velocidade('FS345');
1.8.5.49 Daruma_Registry_AplMensagem1(ndice 36)
Definio do Mtodo:
Este Mtodo possibilita a programao da mensagem do software aplicativo.
Parmetros do Mtodo: (1 Parmetro)
Mensagem do aplicativo com 42 bytes.
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
Observaes:
- Caso a Mensagem no esteja programada o ECF acusar erro 180, vide tabela de erros
Daruma_FI_RetornaErroExtendido(ndice1470)
- Esta mensagem exigida pela legistao e ser impressa em todos os comandos que concentram
valores exemplos: cupom fiscal, recebimento no fiscal, sangria e suprimento.
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;
Daruma Framework 110
Daruma Automao
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.8.5.50 Daruma_Registry_AplMensagem2(ndice 37)
Definio do Mtodo:
Este Mtodo possibilita a programao da mensagem do software aplicativo.
Parmetros do Mtodo: (1 Parmetro)
Mensagem do aplicativo com 42 bytes.
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
Observaes:
- Caso a Mensagem no esteja programada o ECF acusar erro 180, vide tabela de erros
Daruma_FI_RetornaErroExtendido(ndice1470)
- Esta mensagem exigida pela legistao e ser impressa em todos os comandos que concentram
valores exemplos: cupom fiscal, recebimento no fiscal, sangria e suprimento.
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_2: String;
begin
Str_AplMensagem_2:= InputBox('Entre com a Mensagem de seu Aplicativo:', 'Daruma Framework',
'DARUMA32 FrameWork Mensagem No Programada');
If Str_AplMensagem_2 = '' Then
Exit;
Int_Retorno := Daruma_Registry_AplMensagem1(pchar(Str_AplMensagem_2));
1.8.5.51 Daruma_Registry_TEF_NumeroLinhasImpressao(ndice 38)
Definio do Mtodo:
Este Mtodo possibilita a programao da mensagem do software aplicativo.
Parmetros do Mtodo: (1 Parmetro)
Numero Linhas. String contendo o nmero de linhas para impresso por vez, o valor Default para esta
chave 16.
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
Daruma 32 Framework 111
Daruma Automao
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Numero_Linhas_Impressao As String
Str_Numero_Linhas_Impressao = InputBox("Entre com o Numero de Linhas para Impressao:", "Daruma
Framework", "2")
If Str_Numero_Linhas_Impressao = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_TEF_NumeroLinhasImpressao(Str_Numero_Linhas_Impressao)
Exemplo em Delphi 7.0:
var
Str_Numero_Linhas_Impressao: String;
begin
Str_Numero_Linhas_Impressao:= InputBox('Entre com o Numero de Linhas para Impressao:', '2');
If Str_Numero_Linhas_Impressao = '' Then
Exit;
Int_Retorno :=
Daruma_Registry_TEF_NumeroLinhasImpressao(pchar(Str_Numero_Linhas_Impressao));
1.8.5.52 Daruma_Registry_NumeroSerieNaoFormatado(ndice 42)
Definio do Mtodo:
Este Mtodo permite configurar se o nmero de srie da impressora ser devolvido com ou sem os zeros
esquerda.
Parmetros do Mtodo: (1 Parmetro)
Numero de Serie. Varivel String com 0(para no devolver o nmero de srie formatado ou seja sem os
zeros esquerda), ou -1(-um - para retornar o nmero de srie com os zeros esquerda).
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:
Int_Retorno = Daruma_Registry_NumeroSerieNaoFormatado("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_NumeroSerieNaoFormatado('1');
1.8.5.53 Daruma_Registry_NumeroLinhasImpressao(ndice 38)
Definio do Mtodo:
Este Mtodo permite ajustar o nmero de linhas a serem impressas por vez, durante a impresso de
resposta de TEF.
Parmetros do Mtodo: (1 Parmetro)
Linhas para Impresso. Varivel String com o 2(dois) bytes contendo o nmero de linhas a serem
impressas no buffer coloque um valor entre 01 a 16.
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
Observaes:
- O nmero mximo de linhas a serem impressas no poder ser maior do que 16.
Exemplos:
Daruma Framework 112
Daruma Automao
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_NumeroLinhasImpressao("1")
Exemplo em Delphi 7.0:
Int_Retorno:= Daruma_Registry_NumeroLinhasImpressao('1');
1.8.5.54 Daruma_Registry_MFD_ProgramarSinalSonoro(ndice 52)
Definio do Mtodo:
Este Mtodo permite programar chaves no registry, onde cada uma equivale a um tipo de cupom,
podendo ser cupom fiscal, no fiscal (vinculado), no fiscal no vinculado e relatrio gerencial.
Parmetros do Mtodo: (2 Parmetros)
Chave String com o nome da Chave do Registry que voc deseja programar;
Valor String com 0 (desabilitar) 1(habilitar).
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
Observaes:
- Este mtodo aplica-se para as impressoras FS600 e FS2100T (ambas trmicas);
- Para alterar as chaves siga a sequncia abaixo:
BuzzerCF voc ir habilitar para para seja emitido o sinal sonoro ao trmino do cupom fiscal;
BuzzerCNF voc ir habilitar para para seja emitido o sinal sonoro ao trmino do cupom no fiscal;
BuzzerCNFV voc ir habilitar para para seja emitido o sinal sonoro ao trmino do cupom no fiscal
vinculado;
BuzzerRG voc ir habilitar para para seja emitido o sinal sonoro ao trmino do relatrio gerencial;
Importante: Para que o sinal sonoro seja emitido, voc dever previamente program-lo com
pelo menos um 'beep' atravs do mtodo: Daruma_FIMFD_SinalSonoro(ndice53).
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Chave As String
Dim Str_Valor As String
Str_Chave = InputBox("Entre com o indice da Chave que voc deseja habilitar o sinal sonoro ex.:Se
passado 1=(BuzzerCF), 2=(BuzzerCNFV), 3=(BuzzerCNF) ou 4=(BuzzerRG)::", "Daruma Framework",
"1")
Str_Valor = InputBox("Entre com o nmero de beeps, podendo ser de 1 a 99 beeps:", "Daruma
Framework", "1")
If Str_Chave = "" Or Str_Valor = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_MFD_ProgramarSinalSonoro(Str_Chave, Str_Valor)
Exemplo em Delphi 7.0:
var
Str_Chave:string;
Str_Valor:string;
begin
Str_Chave := InputBox('Daruma Framework', 'Entre com o indice da Chave que voc deseja habilitar o
sinal sonoro ex.:Se passado 1=(BuzzerCF), 2=(BuzzerCNFV), 3=(BuzzerCNF) ou 4=(BuzzerRG):', '1');
Str_Valor := InputBox('Daruma Framework', 'Entre com o nmero de beeps, podendo ser de 1 a 99
beeps:', '1');
if (Str_Chave = '')or(Str_Valor = '') Then
Exit;
Int_Retorno := Daruma_Registry_MFD_ProgramarSinalSonoro(Str_Chave,Str_Valor);
Daruma 32 Framework 113
Daruma Automao
1.8.5.55 Daruma_Registry_MFD_LeituraMFCompleta(ndice 49)
Definio do Mtodo:
Este Mtodo permite programar a chave no registry, que controla se a Leitura da MF nas impressoras
MFD's FS600 e FS2100T, ser completa ou no.
Parmetros do Mtodo: (1 Parmetro)
Valor String com 0 (simplificada) 1(completa).
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
Observaes:
- Ligue este flag para poder efetuar a leitua completa da memria fiscal nas impressoras FS600 (MFD) e
FS2100T que tambm (MFD).
- Para fazer a leitura da memria fiscal voc poder usar um dos mtodos a seguir:
Daruma_FI_LeituraMemoriaFiscalData;
Daruma_FI_LeituraMemoriaFiscalReducao;
Daruma_FI_LeituraMemoriaSerialData;
Daruma_FI_LeituraMemoriaSerialRecucao;
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_MFD_LeituraMFCompleta("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_MFD_LeituraMFCompleta('1');
1.8.5.56 Daruma_Registry_CupomAdicionalDll(ndice 56)
Definio do Mtodo:
Este Mtodo permite programar a chave no registry (CupomAdicionalDll), que controla se a impresso do
cupom adicional automtica, aps cada cupom fiscal, nas impressoras MFD's FS600 e FS2100T, ser
completa ou no.
Parmetros do Mtodo: (1 Parmetro)
Valor String com 0 (no imprime) e CupomAdicional = 1(um) (imprime) .
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
Observao:
- Para que seja impresso o cupom adicional feito pela dll preciso colocar o valor 2(dois) no flag
CupomAdicional e valor 1(um) no flag CupomAdicionalDll.
Exemplo de um cupom adicional, recuperado da MFD:
DARUMA TELEC. INFORMTICA S/A
DARUMA TESTES
AV. INDEPENDNCIA,3500
TAUBAT-SP CEP:12032-000
TEL:(12)3609-5000
CNPJ: 45.170.289/0001-25
IE: 688.023.460.111
23/12/2006 15:33:55V GNF:000018 COO:000204
GRG:000010 CER:0005
RELATRIO GERENCIAL
Cupom Adicional
1)23/12/2006 15:33:41 2)CCF:000125 3)COO:000203
Daruma Framework 114
Daruma Automao
4)Qt Itens Vend:001 5)Qt Itens Canc:000 6)Tempo:00011s
7)Valor:R$ 4,90 8)Aliquotas:18,00
9)Dinheiro:R$ 4,90
10)23/12/2006 15:33:41
11)Plataf:PT14 12)Poltr:13C
13)Orig:Taubat 14)Dest:Foz do Iguau
15)Percurso:740KM 16)RG:72009528
DARUMA32 FrameWork Mensagem No Programada
DARUMA32 FrameWork Mensagem No Programada
DARUMA AUTOMAO FS600
ECF-IF VERSO:01.03.00 ECF:001 Lj:A-01
AAAAAAAAAAAAACIJGF 23/12/2006 15:33:57V
FAB:DR0206BR000000090258
Como pode ser visto no exemplo acima, as informaes contidas no cupom adicional so:
1. Data e Hora da Emisso;
2. CFF Contador Cupom Fiscal;
3. COO Contador Ordem Operao;
4. Qtde Itens Vendidos;
5. Qtde de Itens Cancelados;
6. Tempo de Impresso;
7. Valor Total do Cupom;
8. Alquotas usadas, menos Isento, No Tributado e Substituio Tributria;
9. Forma de Pagamento x Valor;
10. Reservado para uso futuro;
11. Data e Hora Embarque;
12. Plataforma;
13. Poltrona;
14. Cidade de Origem;
15. Cidade de Destino;
16. Percurso;
17. RG do Passageiro.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_CupomAdicionalDll("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_CupomAdicionalDll('1');
1.8.5.57 Daruma_Registry_CupomAdicionalDllConfig(ndice 57)
Definio do Mtodo:
Este Mtodo permite programar a chave no registry (CupomAdicionalDllConfig), que define os dados que
sero impressos no cupom adicional, aps cada cupom fiscal, nas impressoras MFD's FS600 e FS2100T.
Parmetros do Mtodo: (1 Parmetro)
Valor String: 19 bytes, na seguinte ordem:
1. Data e Hora da Emisso;
2. CFF Contador Cupom Fiscal;
3. COO Contador Ordem Operao;
4. Qtde Itens Vendidos;
5. Qtde de Itens Cancelados;
6. Tempo de Impresso;
7. Valor Total do Cupom;
8. Alquotas usadas, menos Isento, No Tributado e Substituio Tributria;
9. Forma de Pagamento x Valor;
10. Reservado para uso futuro;
11. Data e Hora Embarque;
12. Plataforma;
Daruma 32 Framework 115
Daruma Automao
13. Poltrona;
14. Cidade de Origem;
15. Cidade de Destino;
16. Percurso;
17. RG do Passageiro;
18. Aciona Guilhotina entre o Cupom Fiscal e Cupom Adicional;
19. Imprime cdigo de Barras no cupom adicional, e voc pode escolher o tipo do cdigo de barras
utilizando o mtodo
Daruma_FIMFD_ImprimeCodigoBarrasCupomAdicional.
20. Imprime um Campo Livre, caso seja previamente executado o mtodo
Daruma_FIMFD_CupomAdicionalCampoLivre;
21. Imprime a Identificao do cliente se o valor for 2(dois).
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
Exemplo de um cupom adicional, recuperado da MFD:
1)23/12/2006 15:33:41 2)CCF:000125 3)COO:000203
4)Qt Itens Vend:001 5)Qt Itens Canc:000 6)Tempo:00011s
7)Valor:R$ 4,90 8)Aliquotas:18,00
9)Dinheiro:R$ 4,90
10)23/12/2006 15:33:41
11)Plataf:PT14 12)Poltr:13C
13)Orig:Taubat 14)Dest:Foz do Iguau
15)Percurso:740KM 16)RG:72009528
DARUMA32 FrameWork Mensagem No Programada
DARUMA32 FrameWork Mensagem No Programada
DARUMA AUTOMAO FS600
ECF-IF VERSO:01.03.00 ECF:001 Lj:A-01
AAAAAAAAAAAAACIJGF 23/12/2006 15:33:57V
FAB:DR0206BR000000090258
FAB:DR0206BR000000080835
Observaes:
- Para que seja impresso o cupom adicional feito pela dll preciso colocar o valor 2(dois) no flag
CupomAdicional e valor 1(um) no flag CupomAdicionalDll.
- O Cupom Adicional ser impresso no documento Relatrio Gerencial X, caso voc queria alterar o Titulo
do Relatrio Gerencial X voc dever cadastrar um Relatrio Gerencial especfico utilizando o mtodo
Daruma_FIMFD_ProgramaRelatoriosGerenciais ou alterar a chave do registro "CupomAdicionalDllTitulo"
utilizando o mtodo Daruma_Registry_AlteraRegistry.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_CupomAdicionalDllConfig("1111111111111111111")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_CupomAdicionalDllConfig('1111111111111111111');
1.8.5.58 Daruma_Registry_ComandosEmLote(ndice 58)
Definio do Mtodo:
Este Mtodo permite tratalhar com comandos em Lote.
Parmetros do Mtodo:
Nenhum.
Daruma Framework 116
Daruma Automao
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
Observao:
- Este mtodo s deve ser utilizado, se voc pretende trabalhar com mapeamento de unidade e
bufferizando os comandos.
- Leia mais em: TrabalhandocomMapeamentodeUnidadeeBufferizandoosComandos.
1.8.5.59 Daruma_Registry_FinalLote(ndice 59)
Definio do Mtodo:
Este Mtodo finaliza o Lote com os comandos.
Parmetros do Mtodo:
Nenhum.
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
Observao:
- Este mtodo s deve ser utilizado, se voc pretende trabalhar com mapeamento de unidade e
bufferizando os comandos.
- Leia mais em: TrabalhandocomComandosemLote,usandooMapeamentodeUnidade.
1.8.5.60 Daruma_Registry_PathLote(ndice 60)
Definio do Mtodo:
Este Mtodo permite tratalhar configurar o Path onde sero escritos os comandos em Lote.
Parmetros do Mtodo:
Nenhum.
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
Observao:
- Este mtodo s deve ser utilizado, se voc pretende trabalhar com mapeamento de unidade e
bufferizando os comandos.
- Leia mais em:TrabalhandocomComandosemLote,usandooMapeamentodeUnidade.
1.8.5.61 Daruma_Registry_PCExpanionLogin(ndice 63)
Definio do Mtodo:
Este Mtodo permite a utilizao de mais de um ECF no mesmo computador.
Com a chegada do PCExpanion (um multiplicador de PC's), tornou-se necessrio que em um mesmo
computador, se possa logar-se em cada uma das impressoras, cada qual em uma porta serial.
Parmetros do Mtodo: (1 Parmetro)
Login: String, com o nome que ser usado como login.
Daruma 32 Framework 117
Daruma Automao
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
Observaes:
- Mesmo que voc no possua um PCExpanion, ainda assim ser possvel trabalhar com mais de um ECF
no mesmo micro, bastando para isso, voc usar este mtodo para logar-se em cada impressora.
Exemplo de utilizao:
Suponha que voc tm uma impressora na porta serial COM1 e outra na COM2, assim sendo, voc
executaria o mtodo Daruma_Registy_PCExpanionLogin passando PDV1 para comunicar-se com o ECF
que esta na COM1 e novamente executar o mtodo, passando PDV2 para comunicar-se com o ECF que
esta na COM2.
No exemplo citado acima, ficaria assim:
Daruma_Registy_PCExpanionLogin("PDV1")
Daruma_Registy_PCExpanionLogin("PDV2")
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Flag_Login As String
Str_Flag_Login = InputBox("Entre com o Login:", "Daruma Framework", "PDV1")
If (Str_Flag_Login = " ") Then
Exit Sub
Int_Retorno = Daruma_Registry_PCExpanionLogin(Str_Flag_Login)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_Flag_Login: String;
begin
Str_Flag_Login:= InputBox('Daruma Framework','Entre com o Login:', 'PDV1');
if (Str_Flag_Login= ' ') then
Exit;
Int_Retorno := Daruma_Registry_PCExpanionLogin(pchar(Str_Flag_Login));
Daruma_Analisa_Retorno();
end;
1.8.5.62 Daruma_Registry_MFDValorFinal(ndice 66)
Definio do Mtodo:
Este Mtodo permite passar o valor final que se pretende obter.
Esta soluo vem de encontro com a necessidade de aproximar valores, quando a balana do
supermercado ou bomba de combustvel, que arredonda os valores. Isto porque os ECF's com tecnologia
MFD no permitem arredondamento, ento, como forma de contornar este problema voc deve utilizar
este metodo.
Parmetros do Mtodo: (1 Parmetro)
ValorPretendido String com o valor pretendido.
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
Observaes:
- Se a chave est setada e o nmero de casas decimais da quantidade da impressora MFD maior que
3(trs) e o tipo de quantidade passada para a funo Daruma_FI_VendeItem(ndice1001), for fracionrio
("f" ou "F"), a DLL se encarregar de ajustar a quantidade para um novo valor, a fim de atingir o valor
setado na chave MFDValorFinal do registro path HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF chave
Daruma Framework 118
Daruma Automao
MFDValorFinal.
- Assim que a venda do item finalizada, a chave MFDValorFinal automaticamente setada para "0"
(zero).
Exemplo de utilizao:
Suponha que voc tm um tem que custa 1,556 e a impressora esteja programada para trabalhar com 4
casas decimais na quantidade e a quantidade seja de 1,9568.
Se multiplicarmos um pelo outro temos: R$:3,0447808 ao truncar a impressora deixa o valor de calcula o
valor R$3,04.
J se observarmos na balana ou na bomba, aps arredondado o valor, obten-se o valor R$3,05.
Por fazer o arredondamento, o valor no bate com o valor calculado pela impressora, mas se antes de
enviar o comando de venda de tem voc passar o valor que se pretende alcanar neste mtodo, a dll ir
incrementar a quantidade, de maneira a alcanar o valor passado como parmetro.
No exemplo citado acima, ficaria assim:
Daruma_Registry_MFDValorFinal('3,05')
Daruma_FI_VendeItem('123','teste','II','F','1,9568',2,'1,556','%','0,10')
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_ValorFinal As String
Str_ValorFinal = InputBox("Entre com o Valor Final:", "Daruma Framework",
"00000000000000000,00")
If (Str_ValorFinal = " ") Then
Exit Sub
Int_Retorno = Daruma_Registry_MFDValorFinal(Str_ValorFinal)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_ValorFinal: String;
begin
Str_ValorFinal:= InputBox('Daruma Framework','Entre com o Valor Final:', '00000000000000000,00');
if (Str_ValorFinal= ' ') then
Exit;
Int_Retorno := Daruma_Registry_MFDValorFinal(pchar(Str_ValorFinal));
Daruma_Analisa_Retorno();
end;
1.8.5.63 Daruma_Registry_LogTamMaxMB(ndice 69)
Definio do Mtodo:
Este Mtodo permite programar o tamanho mximo em mega bytes para o log. O Tamanho DEFAULT
para o log de 5MB.
Parmetros do Mtodo: (1 Parmetro)
TamanhoMB String com o tamanho maximo que ira ter o 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
Observaes:
Com este mtodo, o log quando atingir o tamanho que foi especificado no parametro.
Daruma 32 Framework 119
Daruma Automao
Indica o nmero mximo de MB (MegaBytes) que o arquivo de log poder ter.
Quando o arquivo Daruma32.log atingir este tamanho, ser criada uma cpia com nome
Daruma_DDMMAA_HHMM.log
a)DDMMAA = Data do sistema
b)HHMM = Hora do sistema.
Aps a cpia, o arquivo Daruma.log recriado, com contedo vazio.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_LogTamMaxMB As String
Str_LogTamMaxMB = InputBox("Entre com o Tamanho Mximo que voc quer que tenha o
Daruma32.log:", "Daruma Framework", "5")
If (Str_LogTamMaxMB = "") Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_LogTamMaxMB(Str_LogTamMaxMB)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_LogTamMaxMB: String;
begin
Str_LogTamMaxMB:= InputBox('Daruma Framework','Entre com o Tamanho Mximo que voc quer que
tenha o Daruma32.log:', '5');
if (Str_LogTamMaxMB= ' ') then
Exit;
Int_Retorno := Daruma_Registry_LogTamMaxMB(pchar(Str_LogTamMaxMB));
Daruma_Analisa_Retorno();
end;
1.8.5.64 Daruma_Registry_SintegraSeparador(ndice 70)
Definio do Mtodo:
Este mtodo permite que seja cofigurado um separador especfico para os dados retornados nos mtodos
para o sintegra.
Parmetros do Mtodo: (1 Parmetro).
Flag: String, com o separador a ser fixado no registry.
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_Separador As String
Str_Separador = InputBox("Entre com o Separador:", "Daruma Framework", ";")
If Str_Separador = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_SintegraSeparador(Str_Separador)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
Daruma Framework 120
Daruma Automao
var
Str_Separador: String;
begin
Str_Separador:= InputBox('Daruma Framework','Entre com o Separador:', ';');
if (Str_Separador = '') then
Exit;
Int_Retorno := Daruma_Registry_SintegraSeparador(pchar(Str_Separador));
Daruma_Analisa_Retorno();
end;
1.8.5.65 Daruma_Registry_SintegraPath(ndice 71)
Definio do Mtodo:
Este mtodo permite que seja cofigurado o path (caminho), onde ser gravado o arquivo do sintegra
especfico para os dados retornados nos mtodos para o sintegra.
Parmetros do Mtodo: (1 Parmetro).
Flag: String, com o separador a ser fixado no registry.
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_Separador As String
Str_Separador = InputBox("Entre com o Separador:", "Daruma Framework", ";")
If Str_Separador = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_SintegraPath(Str_Path)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_Separador: String;
begin
Str_Separador:= InputBox('Daruma Framework','Entre com o Separador:', ';');
if (Str_Separador = '') then
Exit;
Int_Retorno := Daruma_Registry_SintegraPath(pchar(Str_Path));
Daruma_Analisa_Retorno();
end;
1.8.5.66 Daruma_Registry_MFD_LegendaInmetro(ndice 80)
Definio do Mtodo:
Este Mtodo permite programar a chave no registry, que controla se ser impresso a Legenda do Inmetro
na unidade de medida do item nas impressoras MFD's.
Identificando a unidade de medida corretamente de acordo com a portaria deo Inmetro especfica, que
por exemplo: KG/R$, LT/R$, UN/R$, MT/R$ e assim por diante.
Parmetros do Mtodo: (1 Parmetro)
Valor String com 0 (Desligada) 1(Ligada).
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
Daruma 32 Framework 121
Daruma Automao
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_MFD_LegendaInmetro("1")
Exemplo em Delphi 7.0:
Int_Retorno := Daruma_Registry_MFD_LegendaInmetro('1');
1.8.5.67 Daruma_Registry_SintegraUF(ndice 74)
Definio do Mtodo:
Este mtodo permite que seja configurado a Unidade Federativa(UF) que alimentar o arquivo
SINTEGRA.TXT, quando utilizado o mtodo Daruma_Sintegra_GerarRegistrosArq(ndice6022).
Parmetros do Mtodo: (1 Parmetro).
Flag: String, com o separador a ser fixado no registry.
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_UF As String
Str_UF = InputBox("Entre com o Separador:", "Daruma Framework", ";")
If Str_UF = "" Then
Exit Sub
End If
Int_Retorno = Daruma_Registry_SintegraUF(Str_UF)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_UF: String;
begin
Str_UF:= InputBox('Daruma Framework','Entre com o Separador:', ';');
if (Str_UF = '') then
Exit;
Int_Retorno := Daruma_Registry_SintegraPath(pchar(Str_UF));
Daruma_Analisa_Retorno();
end;
1.8.6 Mtodos de Informao, Status e Retornos
1.8.6.1 Daruma_FI_StatusCupomFiscal(ndice 1404)
Definio do Mtodo:
Retorna o status Cupom Fiscal, se o mesmo esta Aberto ou Fechado.
Parmetros do Mtodo:
Varivel por refrencia com 2(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 foi executado, 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.
Daruma Framework 122
Daruma Automao
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.8.6.2 Daruma_FI_StatusRelatorioGerencial(ndice 1405)
Definio do Mtodo:
Retorna o status do Relatrio Gerencial, se o mesmo esta Aberto ou Fechado.
Parmetros do Mtodo:
Varivel por referncia com 2(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 foi executado, 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.8.6.3 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:
Varivel por referncia com 2(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 foi executado, 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 Vinculado Fechado e 1(um) para Vinculado Aberto.
Exemplos:
Daruma 32 Framework 123
Daruma Automao
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.8.6.4 Daruma_FI_StatusComprovanteNaoFiscalNaoVinculado(ndice 1471)
Definio do Mtodo:
Retorna o status do Comprovante No Fiscal No Vinculado, se o mesmo esta Aberto ou Fechado.
Parmetros do Mtodo:
Varivel por referncia com 2(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 foi executado, 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 Recebimento Fechado e 1(um) para Recebimento Aberto.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(2)
Int_Retorno = Daruma_FI_StatusComprovanteNaoFiscalNaoVinculado(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_StatusComprovanteNaoFiscalNaoVinculado( pchar(Str_Informacao) );
1.8.6.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 foi executado, 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
Daruma Framework 124
Daruma Automao
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.8.6.6 Daruma_FI_VerificaModeloECF(ndice 1469)
Definio do Mtodo:
Retorna no "Int_Retorno" com Modelo do ECF, conforme lista abaixo.
Valores Retornados no Int_Retorno:
1 - FS345 - Impressora de varejo.
2 - FS318 - Impressora para restaurantes.
3 - FS2000 - Impressora de duas estaes.
4 - FS600 - MFD (trmica) - Impressora de varejo .
5 - FS700 - MFD (trmica) - Impressora de varejo .
Parmetros do Mtodo:
Nenhum.
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.8.6.7 Daruma_FI_VerificaHorarioVerao(ndice 1500)
Definio do Mtodo:
Retorna se o relgio da impressora est em horrio de vero.
0 - Relgio da Impressora no programado para horrio de vero.
1 - Relgio da Impressora programado para horrio de vero.
Parmetros do Mtodo:
Varivel por referncia com 2(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 foi executado, 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 ReduoZ. Para desprogramar, o
Mtodo somente ser aceito, 1 (uma) hora aps a ReduoZ e no pode ter havido movimento na
impressora nesse perodo.
- Voc poder deixar a entrada e sada do horrio de vero automatizada. Para isso basta seguir as
instrues abaixo:
1. Entre no registry no seguinte path: HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF;
2. Configure o flag ControlaHorarioVerao para 1(um);
Daruma 32 Framework 125
Daruma Automao
3. Insira uma data vlida no flag:DataEntradaHorarioVerao ex.:091205;
4. Insira uma data vlida no flag:DataSaidadaHorarioVerao ex.:091205.
Dessa maneira conforme voc programou a Daruma32.dll quando verificar que chegou a data prevista em
sua programao, ir fazer o ajuste automaticamente, tanto para a entrada quanto para a sada do
mesmo.
Importante: Para que a sada do horrio de vero seja aceita, fundamental que a ReduoZ que
antecede a data de sada do horrio de vero seja feita ao final do perodo do dia anterior ao retorno ao
horrio normal. Exemplificando melhor: se o horrio de vero for terminar no dia 100306, ento a
ReduoZ do dia 090306 deve ter sido emitida ainda no dia 090306.
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.8.6.8 Daruma_FI_VerificaDiaAberto(ndice 1484)
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:
Varivel por referncia com 2(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 foi executado, 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:
- Na FS600 e FS2100T no h necessidade de executar este comando.
- O dia s ir retornar aberto, caso seja emitido uma LeituraX (Daruma_FI_LeituraX) na impressoa fiscal,
devido ao fato da necessidade das impressoras FS345 iniciar o dia com uma LeituraX, pois caso contrrio
o dia no ir iniciar.
Dica:
Se voc executar este mtodo aps a 0:00 (meia-noite), e ainda no tiver efetuado a ReduoZ (a
impressora permite que voc faa a ReduoZ at s 2 da manh), este mtodo ir retornar 0(zero).
Chame o mtodo Daruma_FI_DataMovimento, e se voc receber a data do movimento atual e no 6(seis)
bytes zerados, porque voc ainda esta com o dia aberto e ainda poder enviar comandos de venda at
que o ECF sinalize ReduoZ Pendente.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(2)
Int_Retorno = Daruma_FI_VerificaDiaAberto(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Daruma Framework 126
Daruma Automao
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.8.6.9 Daruma_FI_VerificaZPendente(ndice 1489)
Definio do Mtodo:
Retorna se a ReduoZ est pendente.
1(um) para ReduoZ Pendente e 0(zero) para ReduoZ j executada.
Parmetros do Mtodo:
Varivel por refrencia com 2(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 foi executado, 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(Str_Informacao);
Edit1.Text := (Str_Informacao);
1.8.6.10 Daruma_FI_VerificaXPendente(ndice 1488)
Definio do Mtodo:
Retorna se a LeituraX est pendente.
1(um) para LeituraX Pendente e 0(zero) para LeituraX j executada.
Parmetros do Mtodo:
Varivel por refrencia com 2(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 foi executado, 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
Daruma 32 Framework 127
Daruma Automao
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_VerificaXPendente(Str_Informacao);
Edit1.Text := (Str_Informacao);
1.8.6.11 Daruma_FI_VerificaTipoImpressora(ndice 1444)
Definio do Mtodo:
Retorna o tipo de impressora.
Parmetros do Mtodo:
Tipo Impressora: 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 foi executado, 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 - Impressora fiscal, gaveta, autenticaao.
2 - Impressora fiscal, gaveta, cutter.
3 - Impressora fiscal, presenter, autenticaao.
4 - Impressora fiscal, presenter, cutter.
5 - Impressora bilhete de passagem, gaveta, autenticaao.
6 - Impressora bilhete de passagem, gaveta, cutter.
7 - Impressora bilhete de passagem, presenter, autenticaao.
8 - Impressora 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.8.6.12 Daruma_FI_VerificaDescricaoFormasPagamento(ndice 1470)
Definio do Mtodo:
Retorna Apenas a Descrio das Formas de Pagamento que Esto Programadas no ECF.
Parmetros do Mtodo:
Formas Pagamento: Varivel String por referncia com 275(duzentas e setenta e cinco) 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 foi executado, 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 Framework 128
Daruma Automao
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). Para
programar as formas de pagamento utilize o mtodo
:Daruma_FI_ProgramaFormasPagamento(ndice301).
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.8.6.13 Daruma_FI_VerificaFormasPagamentoEx(ndice 1448)
Definio do Mtodo:
Retorna as formas de pagamento e seus valores acumulados.
Parmetros do Mtodo:
Formas Pagamento: Varivel String por referncia com 1027(uma mil e vinte e sete) 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 foi executado, 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
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 retornadas 16 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 0000000000000000000000000000000000000000,
Dinheiro 0000000000000002000000000000000000010000,
Cartao 0000000000000000000000000000000000000000,
A vista 0000000000000000000000000000000000000000,
TEF 0000000000000000000000000000000000000000,
Teste1 0000000000000000000000000000000000000000,
Teste2 0000000000000000000000000000000000000000,
Daruma 32 Framework 129
Daruma Automao
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). Para
programar as formas de pagamento utilize o
mtodo:Daruma_FI_ProgramaFormasPagamento(ndice301).
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.8.6.14 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 foi executado, 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.
- Recomenda-se usar este mtodo em concomitncia com a chave StatusFuncao seteda pra 1(um) no
registry, assim sendo voc s ir chamar este mtodo quando o iRet retornar diferente de 1(um).
Exemplos:
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)
Daruma Framework 130
Daruma Automao
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.8.6.15 Daruma_FI_VerificaAliquotasIss(ndice 1440)
Definio do Mtodo:
Retorna as alquotas de vinculao ao ISS.
Parmetros do Mtodo:
Aliquotas Iss: Varivel String por referncia com 79(setenta e nove) 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 foi executado, 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.8.6.16 Daruma_FI_VerificaIndiceAliquotasIss(ndice 1445)
Definio:
Retorna os ndices das alquotas de ISS.
Parmetros do Mtodo:
ndice Alquotas: Varivel String por referncia com o tamanho de 48(quarenta e oito) 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 foi executado, 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 32 Framework 131
Daruma Automao
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.8.6.17 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 por referncia com 300(trezentas) 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 foi executado, 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...
- Nas impressoras FS600(MFD) e FS2100T(MFD) s retornar 15 caracteres da descrio, isso porqu o
mximo de caracteres que permito na descrio, fica limitado a 15.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(300)
Int_Retorno = Daruma_FI_VerificaTotalizadoresNaoFiscaisEx(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_VerificaTotalizadoresNaoFiscaisEx(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.18 Daruma_FI_VerificaEpromConectada(ndice 1432)
Definio do Mtodo:
Verifica se a Eprom est conectada.
Parmetros do Mtodo:
Daruma Framework 132
Daruma Automao
FlagEprom: Varivel String por referncia com 2(duas) 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 foi executado, 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.8.6.19 Daruma_FI_VerificaRecebimentosNaoFiscal(ndice 1443)
Definio do Mtodo:
Retorna os recebimentos no fiscais no vinculados programados na impressora.
Parmetros do Mtodo:
Recebimentos: Varivel String por referncia com 2200(duas mil e duzentas) 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 foi executado, 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
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
Daruma 32 Framework 133
Daruma Automao
,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.8.6.20 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 por referncia com 2(duas) posies para receber o retorno. Onde:
1 - Impressora programada para Truncar.
0 - 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 foi executado, 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:
- Seguindo o Modelo de Impressoras Trmicas com MFD no necessrio o uso desta funo, isso porque
as impressoras citadas acima s truncam e isto esta presvito no convnio 85/01.
Exemplos:
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);
Daruma Framework 134
Daruma Automao
1.8.6.21 Daruma_FI_VerificaModoOperacao(ndice 1431)
Definio do Mtodo:
Verifica se a impressora est em modo normal ou em interveno tcnica.
Parmetros do Mtodo:
Modo Operao: Varivel String por referncia com 2(duas) 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 foi executado, 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.8.6.22 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 por referncia com o tamanho de 445(quatrocentos e quarenta e cinco)
posies para receber os totalizadores parciais cadastrados.
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 foi executado, 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
Daruma 32 Framework 135
Daruma Automao
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.8.6.23 Daruma_FI_ClicheProprietarioEx(ndice 1467)
Definio do Mtodo:
Retorna o clich do proprietrio cadastrado na impressora.
Parmetros do Mtodo:
ClicheProprietrio: Varivel String por referncia com 400(quatrocentas) 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 foi executado, 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)
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.8.6.24 Daruma_FI_NumeroCaixa(ndice 1425)
Definio do Mtodo:
Retorna o nmero do caixa cadastrado na impressora.
Parmetros do Mtodo:
Daruma Framework 136
Daruma Automao
Nmero Caixa: Varivel String por referncia com 4(quatro) 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 foi executado, 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.8.6.25 Daruma_FI_NumeroLoja(ndice 1426)
Definio do Mtodo:
Retorna o nmero da loja cadastrado na impressora.
Parmetros do Mtodo:
Nmero Loja: Varivel String por referncia com 4(quatro) 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 foi executado, 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 criado por questes de compatibilidade com softwares de mercado.
- Na impressora FS345 o nmero da Loja no esta presente em sua memria, por isso o Nmero da Loja
que ser retornado fixo em:0000.
- Nas impressoras FS600/FS2100T, o nmero da loja foi inclundo na memria da impressora e quando
for cadastrado por meio de interveno tcnica, ento retornar o mesmo.
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
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);
Daruma 32 Framework 137
Daruma Automao
1.8.6.26 Daruma_FI_NumeroSerie(ndice 1411)
Definio do Mtodo:
Retorna o nmero de srie da impressora.
Parmetros do Mtodo:
Nmero Srie: Varivel String por referncia com o tamanho de 15(quinze) 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 foi executado, 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: Para atender as regras do PAF-ECF necessrio o Nmero de Srie com 21 posies, utilize
o comando Daruma_FIMFD_RetornaInformacao(ndice6000)
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.8.6.27 Daruma_FI_RegistraNumeroSerie(ndice 1491)
Definio do Mtodo:
Ao chamar este mtodo o Nmero de srie do ECF ser lido do ECF e Criptografado atravs do algoritmo
de RIJNDAEL de 128 bytes.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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:
Vamos supor que o nmero de srie do ECF seja 0000000010 ao utilizar o FrameWork Daruma ele se
transforma em: 9619EFDF5C7991185D94BFCE1D4E6DBB5AC9DB2CE6BC6A09
Se o Nmero de srie for 0000000011 a criptografia final ser:
31AD8F505D239B55A4E0876A59B3A4F2DEA4FC117A62B78E
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_RegistraNumeroSerie()
Exemplo em Delphi 7.0:
Int_Retorno:= Daruma_FI_RegistraNumeroSerie();
Daruma Framework 138
Daruma Automao
1.8.6.28 Daruma_FI_VerificaNumeroSerie(ndice 1492)
Definio do Mtodo:
Este mtodo ir devolver 0(zero) ou 1(um) - Zero indica que o nmero de srie no bate com a
Criptografia Armazenada pelo Mtodo Daruma_FI_RegistraNumeroSerie(), 1(um) indica que o ECF
vlido pois o nmero de srie bate com o que foi Criptografado pelo Mtodo
Daruma_FI_RegistraNumeroSerie.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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_VerificaNumeroSerie()
Exemplo em Delphi 7.0:
Int_Retorno:= Daruma_FI_VerificaNumeroSerie();
1.8.6.29 Daruma_FI_RetornaSerialCriptografada(ndice 1490)
Definio do Mtodo:
Com este Mtodo voc ir receber o Nmero de Srie e tambm a Criptografia do mesmo.
Parmetros do Mtodo:
Nmero Srie Criptografado: Varivel String por referncia com o tamanho de 48(quarenta e oito)
posies para receber o nmero de srie criptografado.
Nmero Srie: Varivel String por referncia com o tamanho de 15(quinze) 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 foi executado, 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:
Vamos supor que o nmero de srie do ECF seja 0000000010 ao utilizar o FrameWork Daruma ele se
transforma em: 9619EFDF5C7991185D94BFCE1D4E6DBB5AC9DB2CE6BC6A09
Se o Nmero de srie for 0000000011 a criptografia final ser:
31AD8F505D239B55A4E0876A59B3A4F2DEA4FC117A62B78E
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_SerialCriptografado As String
Dim Str_NumeroSerial As String
Str_SerialCriptografado = Space(48)
Str_NumeroSerial = Space(20)
Int_Retorno = Daruma_FI_RetornaSerialCriptografado(Str_SerialCriptografado, Str_NumeroSerial)
MsgBox "Serial Criptografado = " + Str_SerialCriptografado + Chr(13) + Chr(10) _
+ "Numero Serial = " + Str_NumeroSerial, , "Daruma Framework"
Exemplo em Delphi 7.0:
var Str_SerialCriptografado: String;
Str_NumeroSerial: String;
begin
Daruma 32 Framework 139
Daruma Automao
SetLength (Str_SerialCriptografado,48);
SetLength (Str_NumeroSerial,20);
Int_Retorno:= Daruma_FI_RetornaSerialCriptografado(Str_SerialCriptografado, Str_NumeroSerial);
Application.MessageBox(pchar('Serial Criptografado = ' + Str_SerialCriptografado + #13 +
'Numero Serial = ' + Str_NumeroSerial
), 'Daruma Framework Retorno do mtodo', mb_ok);
end;
1.8.6.30 Daruma_FI_VersaoFirmware(ndice 1412)
Definio do Mtodo:
Retorna a verso do firmware da impressora.
Parmetros do Mtodo:
Verso Firmware: Varivel String por referncia com o tamanho de 4(quatro) 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 foi executado, 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:
Ao ultilizar este comando na impressora trmica FS600 o retorna ser equivalente 1.20, como retorna
nas impressoras matriciais Daruma, para verificar a real verso do firmware da impressora trmica FS600
necessrio acessar com a funo Daruma_FIMFD_RetornaInformacao passando ndice 83.
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
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_VersaoFirmware(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.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 por referncia com 18(dezoito) posies para receber o CGC.
IE: Varivel String por referncia 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 foi executado, 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
Daruma Framework 140
Daruma Automao
Str_CGC = Space(18)
Str_IE = Space(18)
Int_Retorno = Daruma_FI_CGC_IE(Str_CGC, Str_IE)
TX_Retorno.Text = " CGC:" + Str_CGC
TX_Retorno.Text = TX_Retorno.Text + " IE:" + Str_IE
Exemplo em Delphi 7.0:
var
Str_CGC: String;
Str_IE: String;
begin
SetLength (Str_CGC,18);
SetLength (Str_IE,18);
Int_Retorno := Daruma_FI_CGC_IE(Str_CGC, Str_IE);
Edit1.Lines.Text := Pchar(' CGC:' + Str_CGC );
Edit1.Lines.Text := Edit1.Lines.Text + ' IE:' + Str_IE;
1.8.6.32 Daruma_FI_NumeroCupom(ndice 1417)
Definio do Mtodo:
Retorna o nmero do cupom.
Parmetros do Mtodo:
Nmero Cupom: Varivel String por referncia com 6(seis) posies para receber o nmero 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 foi executado, 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
aberto.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(6)
Int_Retorno = Daruma_FI_NumeroCupom(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_NumeroCupom(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.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 ReduoZ.
Parmetros do Mtodo: (2 Parmetros)
1. Nmero Cupom INICIAL: Varivel String por referncia com 6(seis) posies para receber o nmero
Daruma 32 Framework 141
Daruma Automao
do Primeiro Cupom do DIA.
2. Nmero Cupom FINAL: Varivel String por referncia com 6(seis) 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 foi executado, 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.8.6.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 por referncia com 4(quatro) 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 foi executado, 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_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.8.6.35 Daruma_FI_MinutosLigada(ndice 1429)
Definio do Mtodo:
Retorna o tempo em minutos que a impressora est ligada.
Daruma Framework 142
Daruma Automao
Parmetros do Mtodo:
Minutos Ligada: Varivel String por referncia com 4(quatro) 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 foi executado, 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:
- Na FS600 este mtodo retornar sempre zero.
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.8.6.36 Daruma_FI_NumeroSubstituicoesProprietario(ndice 1422)
Definio do Mtodo:
Retorna o nmero de substituies de proprietrio.
Parmetros do Mtodo:
Substituies: Varivel String por referncia com 4(quatro) 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 foi executado, 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
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.8.6.37 Daruma_FI_NumeroIntervencoes(ndice 1421)
Definio do Mtodo:
Retorna o nmero de intervenes tcnicas realizadas na impressora.
Parmetros do Mtodo:
Daruma 32 Framework 143
Daruma Automao
Intervenes: Varivel String por referncia com 4(quatro) 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 foi executado, 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.8.6.38 Daruma_FI_NumeroReducoes(ndice 1420)
Definio do Mtodo:
Retorna o nmero de redues Z realizadas na impressora.
Parmetros do Mtodo:
Redues: Varivel String por referncia com 4(quatro) 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 foi executado, 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
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_NumeroReducoes(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.39 Daruma_FI_NumeroCuponsCancelados(ndice 1419)
Definio do Mtodo:
Retorna o nmero de cupons cancelados.
Daruma Framework 144
Daruma Automao
Parmetros do Mtodo:
Cupons Cancelados: Varivel String por referncia com o tamanho de 4(quatro) posies 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 foi executado, 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.8.6.40 Daruma_FI_NumeroOperacoesNaoFiscais(ndice 1418)
Definio do Mtodo:
Retorna o nmero de operaes no fiscais executadas na impressora.
Parmetros do Mtodo:
Operaes: Varivel String por referncia com 6(seis) 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 foi executado, 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;
begin
SetLength (Str_Informacao,6);
Int_Retorno := Daruma_FI_NumeroOperacoesNaoFiscais(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.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 por referncia com 6(seis) posies para receber a data atual da impressora no
formato ddmmaa.
2. Hora: Varivel String por referncia com 6(seis) posies para receber a hora atual da impressora no
Daruma 32 Framework 145
Daruma Automao
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 foi executado, 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.8.6.42 Daruma_FI_DataHoraReducao(ndice 1437)
Definio do Mtodo:
Retorna a data e a hora da ltima Reduo Z.
Parmetros do Mtodo:
1. Data Reduo: Varivel String por referncia com 6(seis) posies para receber a data da ltima
reduo no formato ddmmaa.
2. Hora Reduo: Varivel String por referncia com 6(seis) 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 foi executado, 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
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);
Daruma Framework 146
Daruma Automao
1.8.6.43 Daruma_FI_DataMovimento(ndice 1438)
Definio do Mtodo:
Retorna a data do ltimo movimento.
Parmetros do Mtodo:
Data Movimento: Varivel por referncia 6(seis) 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 foi executado, 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:
- Este mtodo retornar na FS600 - 010100 caso o dia no tenha sido aberto.
- J na FS345 ser retornado 000000.
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.8.6.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 por referncia com 44(quarenta e quatro) 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 foi executado, 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
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:
Daruma 32 Framework 147
Daruma Automao
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.8.6.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:
Alquotas: Varivel por referncia com o tamanho de 300(trezentas) 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 foi executado, 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.
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.8.6.46 Daruma_FI_VendaBruta(ndice 1490)
Definio do Mtodo:
Retorna o valor Total Bruto Vendido at o momento do referido movimento.
Parmetros do Mtodo:
Venda Bruta: Varivel por referncia com 18(dezoito) posies para receber o valor da venda bruta 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 foi executado, 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 Framework 148
Daruma Automao
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.8.6.47 Daruma_FI_VendaBrutaAcumulada(ndice 1498)
Definio do Mtodo:
Retorna o Valor da Venda Bruta Acumulada na Memria Fiscal do ECF, referente ao ltimo movimento.
Parmetros do Mtodo:
Venda Bruta Acumulada: Varivel por referncia com 18(dezoito) posies para receber o valor da venda
bruta acumulada na MF at a ltima ReduoZ 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 foi executado, 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 executado imediatamente aps o dia fiscal ter sido iniciado.
- Este mtodo no deve ser utilizado aps o dia fiscal ter sido iniciado.
- Para pegar a venda bruta aps cada cupom utilize o mtodo: Daruma_FI_VendaBruta(ndice1490).
Exemplos:
Exemplo em Visual Basic 6.0:
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,20);
Int_Retorno := Daruma_FI_VendaBrutaAcumulada(Str_Informacao );
Edit1.Lines.Text := (Str_Informacao);
1.8.6.48 Daruma_FI_GrandeTotal(ndice 1414)
Definio do Mtodo:
Retorna o valor do Grande Total da impressora.
Parmetros do Mtodo:
Grande Total: Varivel por referncia com 18(dezoito) 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 foi executado, porm o ECF
sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Daruma 32 Framework 149
Daruma Automao
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.8.6.49 Daruma_FI_Descontos(ndice 1415)
Definio do Mtodo:
Retorna a valor acumulado dos descontos.
Parmetros do Mtodo:
Descontos: Varivel por referncia com 14(quatorze) 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 foi executado, 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_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.8.6.50 Daruma_FI_Acrescimos(ndice 1441)
Definio do Mtodo:
Retorna a valor acumulado dos acrescimos.
Parmetros do Mtodo:
Descontos: Varivel por referncia com 14(quatorze) 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 foi executado, porm o ECF
sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Daruma Framework 150
Daruma Automao
Qualquer valor diferente dos listados acima deve ser encarado como Erro de execuo do Mtodo no ECF.
Observao:
- Este mtodo s ir retornar valores, se a impressora for uma FS600 ou uma FS2100T.
Portanto no retornar acrscimos na FS345.
- No armazenado o valor dos acrscimos (IOF), na MF do ECF FS345, porque a FS345 foi homologada
em um convnio que no exigia que armazene os acrscimos. Assim sendo o valor retornado ser sempre
00000000000000.
- Este mtodo ir retornar o valor acumulado dos acrescimos, somente na impressoras FS600 e FS2100T
Trmicas, quando houver.
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.8.6.51 Daruma_FI_Cancelamentos(ndice 1416)
Definio do Mtodo:
Retorna o valor acumulado dos itens e dos cupons cancelados, referente ao movimento atual.
Parmetros do Mtodo:
Cancelamentos: Varivel por referncia com 14(quatorze) 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 foi executado, 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);
Daruma 32 Framework 151
Daruma Automao
1.8.6.52 Daruma_FI_DadosUltimaReducao(ndice 1410)
Definio do Mtodo:
Retorna os dados da impressora no momento da ltima Reduo Z.
Parmetros do Mtodo:
Dados Reduo: Varivel por referncia com o tamanho de 631(seiscentos e trinta e um) 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 foi executado, 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 ir retornar valores, no campo acrscimos, se a impressora for uma FS600 ou
uma FS2100T. Portanto no retornar acrscimos na FS345.
- No armazenado o valor dos acrscimos (IOF), na MF do ECF FS345, porque a FS345 foi homologada
em um convnio que no exigia que armazene os acrscimos. Assim sendo o valor retornado ser sempre
00000000000000
- So retornados os valores das seguintes informaes separados por vrgulas:
Observao: O campo Data de Impresso, ir conter a data de impresso, somente quando for
uma FS345, quando for uma FS600 ou 2100T, a data retornada ser a data do movimento.
Exemplos:
Exemplo em Visual Basic 6.0:
Daruma Framework 152
Daruma Automao
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);
1.8.6.53 Daruma_FI_SubTotal(ndice 1408)
Definio do Mtodo:
Retorna o valor do subtotal do cupom.
Parmetros do Mtodo:
SubTotal: Varivel por referncia com o tamanho de 14(quatorze) 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 foi executado, 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.8.6.54 Daruma_FI_Troco(ndice 1450)
Definio do Mtodo:
Retorna o valor do Troco do cupom.
Parmetros do Mtodo:
Troco: Varivel por referncia com o tamanho de 18(dezoito) posies para receber o troco 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 foi executado, 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 dever estar aberto;
- Este mtodo deve ser executado, emediatamente aps o mtodo Daruma_FI_EfetuaFormaPagamento;
- Caso este mtodo seja executado como cupom fechado, ser devolvido zero no valor retornado.
Exemplos:
Exemplo em Visual Basic 6.0:
Daruma 32 Framework 153
Daruma Automao
Str_Informacao = Space(18)
Int_Retorno = Daruma_FI_Troco(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_Troco(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.55 Daruma_FI_SaldoAPagar(ndice 1449)
Definio do Mtodo:
Retorna o valor do Saldo a Pagar do cupom.
Parmetros do Mtodo:
Saldo: Varivel por referncia com o tamanho de 18(dezoito) posies para receber o saldo 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 foi executado, 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_SaldoAPagar(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_SaldoAPagar(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.56 Daruma_FI_RetornoAliquotas (ndice 1406)
Definio do Mtodo:
Retorna as alquotas cadastradas na impressora.
Parmetros do Mtodo:
Alquotas: Varivel por referncia com o tamanho de 79(setenta e nove) 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 foi executado, 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)
Daruma Framework 154
Daruma Automao
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);
1.8.6.57 Daruma_FI_ValorPagoUltimoCupom (ndice 1433)
Definio do Mtodo:
Retorna o valor pago no ltimo cupom.
Parmetros do Mtodo:
Valor: Varivel por referncia com 14(quatorze) 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 foi executado, 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.8.6.58 Daruma_FI_UltimaFormaPagamento (ndice 1473)
Definio do Mtodo:
Retorna a ltima forma de pagamento e tambm o valor que foi pago.
Parmetros do Mtodo:
- Forma Pagamento: Varivel por referncia com 16(dezeseis) posies para a descrio da Forma de
Pagamento.
- Valor: Varivel por referncia com 14(quatorze) 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 foi executado, 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
Daruma 32 Framework 155
Daruma Automao
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;
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.8.6.59 Daruma_FI_ValorFormaPagamento (ndice 1446)
Definio do Mtodo:
Retorna o valor acumulado em uma determinada forma de pagamento.
Parmetros do Mtodo:
Forma Pagamento: Varivel por referncia com at 16(dezeseis) posies com a descrio da Forma de
Pagamento que deseja retornar o seu valor.
- Valor: Varivel por referncia com 14(quatorze) 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 foi executado, 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.8.6.60 Daruma_FI_ValorTotalizadorNaoFiscal (ndice 1447)
Definio do Mtodo:
Retorna o valor acumulado em um determinado totalizador no fiscal.
Daruma Framework 156
Daruma Automao
Parmetros do Mtodo:
Totalizador: Varivel por referncia com at 19(dezenove) posies com a descrio do Totalizador.
Valor: Varivel por referncia com 14(quatorze) 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 foi executado, 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:
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.8.6.61 Daruma_FI_UltimoItemVendido (ndice 1423)
Definio do Mtodo:
Retorna o nmero do ltimo item vendido.
Parmetros do Mtodo:
ltimo Item: Varivel por referncia com 4(quatro) 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 foi executado, 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);
Daruma 32 Framework 157
Daruma Automao
1.8.6.62 Daruma_FI_TipoUltimoDocumento (ndice 1493)
Definio do Mtodo:
Retorna o tipo do ltimo cupom emitido.
Que poder ser:
CPF Cupom Fiscal
CNF Comprovante No Fiscal
LXG Leitura X Gerencial
LRG Leitura X Relatorio Gerencial
CNV comprovante No Fiscal Vinculado (TEF)
LMF Leitura Memria Fiscal
LXX Leitura X comum, sem relatorio gerencial
LRZ Reduo Z
Parmetros do Mtodo:
ltimo Item: Varivel por referncia com 3(trs) 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 foi executado, 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.8.6.63 Daruma_FI_MapaResumo(ndice 602)
Definio do Mtodo:
Gera o relatrio "Mapa Resumo" refernte 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:
Nenhum.
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 foi executado, 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 Framework 158
Daruma Automao
Observaes:
- Este mtodo s ir retornar valores, se a impressora for uma FS600 ou uma FS2100T.
Portanto no retornar acrscimos na FS345.
- No armazenado o valor dos acrscimos (IOF) na MF do ECF FS345, porque a FS345 foi homologada
em um convnio que no exigia que se armazenasse os acrscimos. Assim sendo o valor retornado ser
sempre 00000000000000.
- Nas impressoras FS345 necessrio habilitar o FLAG no registro(REGEDIT) chamado 'CRZCompativel' =
'1', ou usar a funo Daruma_Registry_AlteraRegistry, passando a chave referente.
- 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....................: 0,00
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 Z Daruma_Registry_ZAutomatica configurando
a Chave para o Valor 1(um).
- Lembrando que a DLL gera esse Layout, no tendo como alter-lo.
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.8.6.64 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
Daruma 32 Framework 159
Daruma Automao
default o diretrio raiz (C:\).
Parmetros da Funo:
Nenhum.
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 foi executado, 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...................: A
Data de emisso...........: 09/09/05
Nmero de srie...........: 000000000036861
Cancelamentos.............: 0,00
Descontos.................: 0,00
F.........................: 0,00
I.........................: 0,00
N.........................: 0,00
1200......................: 0,00
ISS.......................: 0,00
- 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.
- Nas impressoras FS345 necessrio habilitar o FLAG no registro(REGEDIT) chamado 'CRZCompativel' =
'1', ou usar a funo Daruma_Registry_AlteraRegistry, passando a chave referente.
- 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).
- Lembrando que a DLL gera esse Layout, no tendo como alter-lo.
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);
Daruma Framework 160
Daruma Automao
1.8.6.65 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:
Nenhum.
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 foi executado, 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...................: M
Data de emisso...........: 09/09/05
Nmero de srie...........: 000000000036861
Nmero do equipamento.....: 0013
Modelo do documento fiscal: 2D
COO inicial...............: 000111
COO final.................: 000125
Contador de redues......: 0480
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).
- Nas impressoras FS345 necessrio habilitar o FLAG no registro(REGEDIT) chamado 'CRZCompativel' =
'1', ou usar a funo Daruma_Registry_AlteraRegistry, passando a chave referente.
- Lembrando que a DLL gera esse Layout, no tendo como alter-lo.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI_RelatorioTipo60Mestre()
Shell "notepad C:\retorno.txt", vbMaximizedFocus
Exemplo em Delphi 7.0:
Daruma 32 Framework 161
Daruma Automao
begin
Int_Retorno := Daruma_FI_RelatorioTipo60Mestre();
WinExec('c:\windows\NOTEPAD.EXE C:\retorno.txt',SW_SHOWNORMAL);
1.8.6.66 Daruma_FI_FlagsFiscais(ndice 1428)
Definido do Mtodo:
Retorna um nmero refernte 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 foi executado, 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;
Int_Retorno := Daruma_FI_FlagsFiscais( Int_Informacao );
Edit1.Lines.Text := IntToStr(Int_Informacao);
1.8.6.67 Daruma_FI_PalavraStatus(ndice 1481)
Definio do Mtodo:
Retorna o Status do ECF em Bytes 12 Bytes)
Parmetros do Mtodo:
String com 12 Posies para receber a palavra de status 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 foi executado, 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 Caracteres ASCII no Seguinte Formato.
Daruma Framework 162
Daruma Automao
Byte 1 (S1) - S1 Significa STATUS 1
Byte 2 (S2)
Byte 3 (S3)
Byte 4 (S4)
Byte 5 (S5)
Byte 6 (S6)
Byte 7 (S7)
Byte 8 (S8)
Byte 9 (S9)
Byte 10 (S10)
Byte 11 (S11)
Byte 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
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
Daruma 32 Framework 163
Daruma Automao
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 zero
b Sempre zero
b1 Sempre zero
b0 Sempre 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
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);
Daruma Framework 164
Daruma Automao
Edit1.Lines.Text := (Str_Informacao);
1.8.6.68 Daruma_FI_FlagsFiscaisStr(ndice 1479)
Definido do Mtodo:
Retorna um nmero referente ao flag fiscal da impressora. Veja discriminao abaixo.
Parmetros do Mtodo:
FlagFiscal: Varivel string por referncia 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 foi executado, 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_FlagsFiscaisStr(Int_Informacao)
TX_Retorno.Text = Int_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Int_Retorno := Daruma_FI_FlagsFiscaisStr( Str_Informacao );
Edit1.Lines.Text := (Str_Informacao);
1.8.6.69 Daruma_FI_SimboloMoeda(ndice 1427)
Definio do Mtodo:
Retorna o smbolo da moeda cadastrada na impressora.
Parmetros do Mtodo:
Smbolo Moeda: Varivel por refrencia com 2(duas) 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 foi executado, 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 32 Framework 165
Daruma Automao
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.8.6.70 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 foi executado, 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 aps a execuo de qualquer outro Mtodo. Este Mtodo devolve
RetornodaImpressora ou seja os valores do ST1 e do ST2 .
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 Framework 166
Daruma Automao
Daruma_ST2 := 0;
Int_Retorno:= Daruma_FI_RetornoImpressora( Daruma_ACK, Daruma_ST1, Daruma_ST2 );
1.8.6.71 Daruma_FI_RetornaErroExtendido(ndice 1472)
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 foi executado, 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
07 Metodo permitido apenas em modo fiscal (IF sem jmper)
08 Relatrio Gerncial no aberto
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
14 No h mais memria disponvel para esta operao/No h nenhuma posio de mria disponvel.
15 Item a cancelar no foi encontrado
16 Erro de sintaxe no mtodo
17 "Estouro" de capacidade numrica (overflow)
18 Selecionado totalizador tributado com alquota de imposto no definida
19 Memria Fiscal vazia
20 No existem campos que requerem atualizao
21 Detectado proximidade do final da bobina de papel
22 Cupom de Reduo Z j foi emitido. IF inoperante at 0:00h do prximo dia
23 Reduo Z do perodo anterior ainda pendente. IF inoperante
24 Valor de desconto ou acrscimo invlido (limitado a 100%)
25 Carctere invlido foi encontrado nos Parmetros do Mtodos
26 Mdoto no pode ser executado
27 Impressora fora de Linha/Nenhum perifrico conectado a interface auxiliar
28 Foi encontrado um campo em zero
29 Documento anterior no foi Cupom Fiscal. No pode emitir Cupom Adicional
30 Acumulador No Fiscal selecionado no vlido ou no est disponvel
31 No pode autenticar. Excedeu 4 repeties ou no permitida nesta fase
32 Cupom adicional inibido por configurao
35 Relgio Interno Inoperante
36 Verso do firmware gravada na Memria Fiscal no a esperada
37 Alquota de imposto informada j est carregada na memria
38 Forma de pagamento selecionada no vlida
39 Erro na seqncia de fechamento do Cupom Fiscal
40 IF em Jornada Fiscal. Alterao da configurao no permitida
41 Data invlida. Data fornecida inferior ltima gravada na Memria Fiscal
42 Leitura X inicial ainda no foi emitida
43 No pode emitir Comprovante Vinculado
44 Cupom de Oramento no permitido para este estabelecimento(Mensagem do Aplicativo No
Programada)
45 Campo obrigatrio em branco
Daruma 32 Framework 167
Daruma Automao
48 No pode estornar
49 Forma de pagamento indicada no encontrada
50 Fim da bobina de papel
51 Nenhum usurio cadastrado na MF
52 MF no instalada ou no inicializada
56 Documento j aberto
61 Queda de energia durante a emisso de Cupom Fiscal
75 Operao com ISS no permitida (se a sua impressora for uma FS600 ou FS2100T, ento ser
preciso ter uma inscrio municipal gravada em sua impressora para que seja possvel programar/utilizar
alquota de servio).
76 Desconto em ISS no permitido neste ECF (a programao dever ser feita por meio de interveno
tcnica e caso o Estado permita)
77 Acrscimo em IOF inibido
80 Perifrico na interface auxiliar no pode ser reconhecido
81 Solicitado preenchimento de cheque de banco desconhecido
82 Solicitado transmisso de mensagem nula pela interface auxiliar
83 Extenso do cheque no cabe no espao disponvel
84 Erro na comunicao com a interface auxiliar
85 Erro no dgito verificador durante comunicao com a PertoCheck
86 Falha na carga de geometria de folha de cheque
87 Parmetros do Mtodo: invllido para o campo de data do cheque
90 Sequncia de validao de nmero de srie invlida
180 Mensagem do aplicativo no programada. (Esta mensagem no opcional e sim uma exigncia da
legislao e dever ser programada para que o ECF seja liberado para a emisso de documentos fiscais.
Para programar a mensagem use os mtodos:Daruma_Registry_AplMensagem1(ndice36) e
mtodo:Daruma_Registry_AplMensagem2(ndice37).
181 No possivel realizar Reduo Z entre 00:00am e 02:00am (Meia Noite e Duas da Manh) nesta
verso de firmware da FS600 (est limitao existe nas verses 1.1 pra baixo.
182 Tampa aberta.
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);
1.8.6.72 Daruma_FI_RetornaAcrescimoNF(ndice 1451)
Definio do Mtodo:
Retorna o valor acumulado no totalizador de Acrescimos No Fiscais. (14 Posies).
Parmetros do Mtodo:
String: Varivel por referncia com o tamanho de 14(quatorze) posies para receber o acrescimoNF.
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 foi executado, 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)
Daruma Framework 168
Daruma Automao
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.8.6.73 Daruma_FI_RetornaCFCancelados(ndice 1452)
Definio do Mtodo:
Retorna a Quantidade de Cupons Fiscais Cancelados (4 dgitos).
Parmetros do Mtodo:
String: Varivel por referncia com o tamanho de 4(quatro) posies para receber os CFcancelados.
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 foi executado, 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);
1.8.6.74 Daruma_FI_RetornaCNFCancelados(ndice 1453)
Definio do Mtodo:
Retorna a Quantidade de Cupons Nao Fiscais Cancelados (4 dgitos)
Parmetros do Mtodo:
String: Varivel por referncia com o tamanho de 4(quatro) posies para receber os CNFcancelados.
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 foi executado, 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:
Daruma 32 Framework 169
Daruma Automao
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,4);
Int_Retorno := Daruma_FI_RetornaCNFCancelados(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.75 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: Varivel por referncia com o tamanho de 4(quatro) posies para receber o CLX contador de
leiturasX's emitidas.
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 foi executado, 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 no est disponvel para a FS600 e FS2100T e retornar sempre 0000.
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);
1.8.6.76 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: Varivel por referncia com o tamanho de 304(trezentas e quatro) posies para receber o CNFNV
contador de comprovantes no fiscais no vinculados emitidos.
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 foi executado, 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 Framework 170
Daruma Automao
- 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.8.6.77 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: Varivel por referncia com o tamanho de 304(trezentas e quatro) posies para receber o CNFV
contador de comprovantes no fiscais vinculados emitidos.
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 foi executado, 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
+ 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:
Daruma 32 Framework 171
Daruma Automao
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,304);
Int_Retorno := Daruma_FI_RetornaCNFV(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.78 Daruma_FI_RetornaDescicaoCNFV(ndice 1497)
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: Varivel por referncia com o tamanho de 336 (trezentas e trinta e seis) posies para receber as
descries dos CNFV comprovantes no fiscais vinculados cadastrados, no 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 foi executado, 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 Descries dos Comprovantes No Fiscais Vinculados (CNFV) na seguinte
Ordem
16 Blocos composto de: 21 bytes para cada descrio.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(336)
Int_Retorno = Daruma_FI_RetornaDescricaoCNFV(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,336);
Int_Retorno := Daruma_FI_RetornaDescricaoCNFV(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.79 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 Operao - Geralmente quando se cadastra um Novo Usurio no ECF.
Parmetros do Mtodo:
String: Varivel por referncia com o tamanho de 4(quatro) posies para receber o CRO contador de re-
inico 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 foi executado, 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)
Daruma Framework 172
Daruma Automao
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.8.6.80 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: Varivel por referncia com o tamanho de 4(quatro) posies para receber o CRZ contador de
ReduesZ's emitidas.
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 foi executado, 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.8.6.81 Daruma_FI_RetornaCRZRestante(ndice 1459)
Definio do Mtodo:
Retorna a quantidade Reduo Z Restante.
CRZ - Contador de Reduo Z.
Parmetros do Mtodo:
String: Varivel por referncia com o tamanho de 4(quatro) posies para receber o CRZRestante
contador de ReduesZ's restantes.
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 foi executado, 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
Daruma 32 Framework 173
Daruma Automao
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.8.6.82 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: Varivel por referncia com o tamanho de 14(quatorze) posies para receber os
CancelamentosNF.
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 foi executado, 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_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.8.6.83 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: Varivel por referncia com o tamanho de 14(quatorze) posies para receber os DescontosNF.
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 foi executado, 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
Daruma Framework 174
Daruma Automao
SetLength (Str_Informacao,14);
Int_Retorno := Daruma_FI_RetornaDescontoNF(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.84 Daruma_FI_RetornaTempoLigado(ndice 1464)
Definio do Mtodo:
Retona o Tempo em que esteve Ligada (tempo em Minutos)
Parmetros do Mtodo:
String: Varivel por referncia com o tamanho de 4(quatro) posies para receber o tempo em que a
impressora permaneceu 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 foi executado, 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
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.8.6.85 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: Varivel por referncia com o tamanho de 6(seis) posies para receber os GNF's.
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 foi executado, 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_RetornaGNF(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
Daruma 32 Framework 175
Daruma Automao
SetLength (Str_Informacao,6);
Int_Retorno := Daruma_FI_RetornaGNF(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.86 Daruma_FI_RetornaTempoImprimindo(ndice 1463)
Definio do Mtodo:
Retona o Tempo em que esteve imprimindo documentos (tempo em Minutos)
Parmetros do Mtodo:
String: Varivel por referncia com o tamanho de 4(quatro) posies para receber o tempo em que a
impressora ficou imprimindo.
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 foi executado, 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.8.6.87 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: Varivel por referncia com o tamanho de 304(trezentas e quatro) posies para receber os totais
acumulados nas formas de pagamento que foram utlizadas no perodo.
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 foi executado, 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
Daruma Framework 176
Daruma Automao
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.8.6.88 Daruma_FI_RetornaTroco(ndice 1466)
Definio do Mtodo:
Retorna o Valor Acumulado no acumulador Troco da Impressora, com 14 dgitos.
Parmetros do Mtodo:
String: Varivel por referncia com o tamanho de 14(quatorze) posies para receber o valor do troco.
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 foi executado, 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 acumulador Troco incrementado ao longo do movimento do dia e zerado aps a emisso da
ReduoZ.
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(14)
Int_Retorno = Daruma_FI_RetornaTroco(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_RetornaTroco(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.89 Daruma_FI_RetornaRegistradoresNaoFiscais(ndice 1499)
Definio do Mtodo:
Retorna o Valor da CADA Registrador no Fiscal do ECF. Veja a descrio Abaixo
Parmetros do Mtodo:
String: com 950(novecantas e cinquenta) 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 foi executado, 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
caractere 'Separador' que voc escolher ou programa na dll (o Default ";") (caractere 'Separador'
conforme configurado no Registry com o Mtodo Daruma_Registry_Separador.)
Daruma 32 Framework 177
Daruma Automao
CAMPO Tamanho Separador Tamanho ToTal
COO Inicial 5 1 6 Pocies
COO Final 5 1 6 Posies
Contador Geral No Fiscal 6 1 7 Posies
Nmero de Cupons Fisca
Cancelado
4 1 5 Posies
Nmero de Cupom NFiscal
Cancelado
4 1 5 Posies
Contador de Leitura X Efetuada 4 1 5 Posies
Zeros Para Uso Futuro 4 1 5 Posies
Contador de Reinicio de Operao 4 1 5 Posies
Contador de Reduo Z 4 1 5 Posies
Reduo Z Restante 4 1 5 Posies
Total de Cada Forma de
Pagamento (16 Formas de
Pagamento com 14 Posies cada
uma, indicando o Valor
Acumulado at o momento)
16 * 14 1 225 Posies
Troco Acumulado 14 1 15 Posies
Contador de Uso e Valor
Acumulado dos Comprovantes
No Fiscais No Vinculado ( 16
Totalizadores, cada um deles com
14 Posies indicando o Valor
Acumulado + 4 Posies
indicando a Quantidade de Vezes
em que foi Utilizado)
16 *( 14 +
4 )
1 289 Posies
Valor de Desconto No Fiscal 14 1 15 Posies
Acrescimo No Fiscal 14 1 15 Posies
Cancelamento No Fiscal 14 1 15 Posies
Contador de Uso e Valor
Acumulado dos Comprovantes
No Fiscais Vinculado ( 16
Totalizadores, cada um deles com
14 Posies indicando o Valor
Acumulado + 4 Posies
indicando a Quantidade de Vezes
em que foi Utilizado)
16 *( 14 +
4 )
1 289 Posies
Tempo do ECF Ligada (em
Minutos)
4 1 5 Posies
Tempo do ECF Imprimindo 4 1 5 Posies
Zeros Para Uso Futuro 10 1 11 Posies
Zeros Para Uso Futuro 10 1 11 Posies
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 Framework 178
Daruma Automao
SetLength (Str_Informacao,950);
Int_Retorno := Daruma_FI_RetornaREgistradoresNaoFiscais( Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.6.90 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(quatrocentas) 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 foi executado, 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 caractere
'Separador' que voc escolher ou programa na dll (o Default ";") (caractere 'Separador' conforme
configurado no Registry com o Mtodo Daruma_Registry_Separador.)
CAMPO Tamanho Separador Tamanho ToTal
GT Inicial (Grande Total do
Comeo do DIA)
18 1 19 Pocies
Valor dos Descontos 14 1 15 Posies
Valor dos Cancelamentos 14 1 15 Posies
Valor dos Isentos ( II ) 14 1 15 Posies
Valor dos No Incidentes ( NN ) 14 1 15 Posies
Valor da Substituio ( FF ) 14 1 15 Posies
Valor de Cada Aliquota (16
Aloquotas com 14 Posies cada
uma indicando o Valor Acumulado
em Cada uma delas)
16*14 1 225 Posies
Acrescimo IOF (Imposto
Operao Financeira)
14 1 15 Posies
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.8.6.91 Daruma_FI_RetornaValorComprovanteNaoFiscal(ndice 1495)
Definio do Mtodo:
Retorna o Valor de um Comrpovante No Fiscal do ECF. Veja a descrio Abaixo
Daruma 32 Framework 179
Daruma Automao
Parmetros do Mtodo:
String: com o ndice do Comprovante No Fiscal, que se deseja saber o total acumulado.
String: com 14(quatroze) 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 foi executado, 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.8.6.92 Daruma_FI_RetornaIndiceComprovanteNaoFiscal(ndice 1496)
Definio do Mtodo:
Retorna o ndice de um Comprovante No Fiscal do ECF. Veja a descrio Abaixo
Parmetros do Mtodo:
String: com a descrio do Comprovante No Fiscal, que se deseja saber o seu ndice
String: com 2(duas) 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 foi executado, 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))
Exemplo em Delphi 7.0:
var
Str_Descricao_CNF: String;
str_Informacao: String;
begin
SetLength (Str_Informacao,2);
Str_Descricao_CNF:= InputBox('Entre com a Descricao do Comprovante Nao Fiscal para saber o
Indice:', 'Daruma Framework', 'Conta de Luz');
Int_Retorno := Daruma_FI_RetornaIndiceComprovanteNaoFiscal (Str_Descricao_CNF ,
Daruma Framework 180
Daruma Automao
Str_Informacao);
Edit1.Lines.Text :=(pchar(Str_Informacao));
end;
1.8.6.93 Daruma_FI_RetornarVersaoDLL(ndice 1502)
Definio do Mtodo:
Retorna a verso da DLL, vlido para o produto fiscal.
Parmetros do Mtodo:
String: com 8(oito) posies para receber a verso fiscal da 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 foi executado, 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_Informacao As String
Str_Informacao = Space(10)
Int_Retorno = Daruma_FI_RetornarVersaoDll( Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var Str_Informacao: String;
begin
SetLength (Str_Informacao,10);
Int_Retorno := Daruma_FI_RetornarVersaoDll(Str_Informacao);
Edit1.Lines.Text := Str_Informacao;
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.6.94 Daruma_FI_CupomMania(ndice 0000)
Definio do Mtodo:
Retorna o Total de ISS e ICMS contabilizado no ltimo cupom.
Parmetros do Mtodo:
String: Varivel por referncia com o tamanho de 13(treze) posies para receber o total de ISS
acumulados do ltimo cupom fiscal.
String: Varivel por referncia com o tamanho de 13(treze) posies para receber o total de ICMS
acumulados do ltimo cupom fiscal.
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 foi executado, 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 do total de ICMS e ISS referente ao ltimo cupom de a chave CupomMania
estiver habilitada.
- Para habilitar a chave CupomMania no Registry utilize o mtodo
Daruma_Registry_AlterarRegistry(Indice83).
Exemplos:
Exemplo em Visual Basic 6.0:
Str_Informacao = Space(304)
Daruma 32 Framework 181
Daruma Automao
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.8.7 Mtodos Exclusivos para a Impressora MFD
1.8.7.1 Daruma_FIMFD_DownloadDaMFD (ndice 6004)
Definio do Mtodo:
Este mtodo gera um arquivo com o nome de 'Retorno.txt' no path que estiver configurado no registry
Daruma_Registry_Path(ndice2), com a 2(segunda) via dos cupons que esto no 'range' informado
desde o COO inicial at o COO final ou Data Inicial at a Data Final.
Parmetros do Mtodo:
COO Inicial. String com o nmero do primeiro COO.
COO Final. String com o nmero do ltimo COO.
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 foi executado, 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 Download da MFD s ser possvel na FS600/FS2100T verso de firmware 1.01 ou superior.
- Nas verses 01.02.00 abaixo no possivel passar a DATA, somente COO (6 posies).
- 01.03.00 acima j possvel passar o COO e a DATA, diferenciando eles como: COO - 000000
/ Data 00/00/00
Exemplo de retorno:
No exemplo abaixo de um Suprimento(COO->004417). Como se pode ver fielmente a imagem do
cupom.
DARUMA TELEC. INFORMTICA S/A
DARUMA
AV. INDEPENDNCIA,3500
TAUBAT-SP CEP:12032-000
TEL:0800 770 3320
CNPJ: 45.170.289/0001-25 IE: 688.023.460.111
09/01/2008 08:28:02 COO:004417
REDUO Z
MOVIMENTO DO DIA: 08/01/2008
------------------ CONTADORES ------------------
Geral de Operao No-Fiscal: 001290
Contador de Reincio de Operao: 005
Contador de Redues Z: 0131
Contador de Cupom Fiscal: 002821
Contador de Fita-Detalhe: 000000
Comprovante de Crdito ou Dbito: 0000
Geral de Relatrio Gerencial: 000691
Geral Oper. No-Fiscal Canc.: 0000
Cupom Fiscal Cancelado: 0001
------------ TOTALIZADORES FISCAIS -------------
TOTALIZADOR GERAL: 44457,77
VENDA BRUTA DIRIA: 348,50
CANCELAMENTO ICMS: 174,00
DESCONTO ICMS: ***********,**
Daruma Framework 182
Daruma Automao
Total de ISSQN: ***********,**
CANCELAMENTO ISSQN: ***********,**
DESCONTO ISSQN: ***********,**
VENDA LQUIDA: 174,50
ACRSCIMO ICMS: ***********,**
ACRSCIMO ISSQN: ***********,**
--------------------- ICMS ---------------------
Totalizador Base Clculo( R$) Imposto( R$)
T25,00% 0,00 0,00
T18,00% 0,00 0,00
T12,00% 0,00 0,00
T07,00% 0,00 0,00
T05,00% 0,00 0,00
T17,00% 0,00 0,00
Total ICMS: 0,00 0,00
---------------- No Tributados ----------------
Totalizador Valor Acumulado( R$)
F1 = 0,00
F2 = 0,00
I1 = 174,50
I2 = 0,00
N1 = 0,00
N2 = 0,00
-------------------- ISSQN ---------------------
Totalizador Base Clculo( R$) Imposto( R$)
Total ISSQN: 0,00 0,00
---------------- No Tributados ----------------
Totalizador Valor Acumulado( R$)
FS1 = 0,00
FS2 = 0,00
IS1 = 0,00
IS2 = 0,00
NS1 = 0,00
NS2 = 0,00
---------- TOTALIZADORES NO FISCAIS -----------
No Operao CON Valor Acumulado( R$)
01 Sangria 0000 0,00
02 Suprimento 0000 0,00
03 Recebimento 0000 0,00
04 Conta de Agua 0000 0,00
Total Oper No-Fiscais R$ 0,00
ACRE NO-FISC 0,00
DESC NO-FISC 0,00
CANC NO-FISC 0,00
------------- RELATRIO GERENCIAL --------------
No Relatrio CER
01 Gerencial X 0000
02 Relatrio 0000
03 Bordero 0000
04 Troca F Pagto 0000
05 Fechamento Dia 0000
06 Cupom Adicional 0000
-------------- MEIOS DE PAGAMENTO --------------
No. Meio Pagamento Valor Acumulado( R$)
01 Dinheiro 174,80
02v Cheque 0,00
03v Carto 0,00
04v TEF 0,00
05v A Prazo 0,00
06v Cheque A Vista 0,00
07v Cheque PreDatad 0,00
08v Cartao 0,00
09v Convenio 0,00
10v Ticket 0,00
Daruma 32 Framework 183
Daruma Automao
11v sForma 0,00
12v VENDA A PRAZO 0,00
13v CARTAO DEBITO 0,00
14v Cheque Pre 0,00
15v Cartao Credito 0,00
16v Conta de Luz 0,00
TROCO 0,30
Comprovante No Emitido: 0000
Tempo Emitindo Doc.Fiscal: 00:02:14
Tempo Operacional: 08:38:54
Qtd. Redues Restantes: 1898
Nmero srie MFD: 60131282006110014677
02B 17FD4 35A4F 021000 6D 6AA056 00CC0 31669 B6A
DARUMA AUTOMAO FS600
ECF-IF VERSO:01.04.00 ECF:001 Lj:A-01
AAAAAAAAAAAEEEFHHH 09/01/2008 08:28:08
FAB:DR0206BR000000090239 BR
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Inicial As String
Dim Str_Final As String
Str_Inicial = (TX_Inicial.Text)
Str_Final = (TX_Final.Text)
Int_Retorno = Daruma_FIMFD_DownloadDaMFD(Str_Inicial, Str_Final)
Exemplo em Delphi 7.0:
var
Str_Inicial: String;
Str_Final: String;
begin
Str_Inicial := Trim(Tx_Inicial.Text);
Str_Final := Trim(Tx_Final.Text);
Int_Retorno := Daruma_FIMFD_DownloadDaMFD( pchar( Str_Inicial ), pchar( Str_Final ) );
end;
1.8.7.2 Daruma_FIMFD_RetornaInformacao (ndice 6000)
Definio do Mtodo:
Este mtodo possibilita retornar do ECF mais de 170 informaes diferentes. A idia deste mtodo que
ao invs de termos 170 mtodos, teremos apenas
um nico mtodo. Passamos o ndice da informao desejada e obtemos a informao.
Parmetros do Mtodo:
Indice: Varivel String contendo o valor do ndice com at 2 caracteres.Variveis String por referncia
para receber as informacoes solicitadas.
Tamanho: Varivel por referncai com o tamanho de espaos alocados para o retorno da informao.
Exemplo:
Status atual do Cupom Fiscal ou No Fiscal - Estado do CF / CNF, utilizar o ndice 57 - Tamanho 1, o
retorno do mtodo ser:
0 = fechado
1 = CF em registro de item
2 = CF em totalizao
3 = CF em pagamento
4 = CF em finalizao
5 = CNF em registro de item
6 = CNF em totalizao
Daruma Framework 184
Daruma Automao
7 = CNF em pagamento
8 = CNF em finalizao
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 foi executado, 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 As String
Dim Str_Valor As String
Dim Int_Tamanho As Integer
Str_Indice = TX_Indice.Text
Str_Valor = TX_Valor.Text
Str_Valor = Space(Int_Tamanho)
TX_Valor.Text = ""
TX_Valor.Text = Str_Valor
Int_Retorno = Daruma_FIMFD_RetornaInformacao(Str_Indice, Str_Valor)
Exemplo em Delphi 7.0:
var Str_Indice: String;
Str_Valor: String;
Int_Tamanho: Integer;
begin
Int_Tamanho := StrToInt(Tx_Tamanho.Text) + 1;
Str_Indice := Tx_Indice.Text;
setlength( Str_valor, Int_Tamanho);
Int_Retorno := Daruma_FIMFD_RetornaInformacao( Str_Indice, Str_Valor );
Memo_Valor.Lines.Clear;
Memo_Valor.Lines.Append(Str_Valor);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
Tabela das informaes que podem ser obtidas
Exemplo em Delphi 7.0:
Daruma 32 Framework 185
Daruma Automao
Daruma Framework 186
Daruma Automao
1.8.7.3 Daruma_FIMFD_ImprimeCodigoBarras (ndice 6001)
Definio do Mtodo:
Este mtodo permite a impresso dos cdigos de barras nas MFD's FS600 e FS2100T.
Esta impresso poder ser feita partir de qualquer documento no fiscal que esteja aberto, exemplos:
gerncial, no fiscal vinculado.
Parmetros do Mtodo: (5 Parmetros)
1. Cdigo: Varivel String com 2(dois) dgitos contendo o cdigo do tipo de cdigo de barras que voc
quer imprimir, conforme lista abaixo:
- EAN-13
- EAN- 8
- STANDARD 2 of 5
- INTERLEAVED 2 of 5
- CODE128
- CODE39
- CODE93
- UPC-A
- CODABAR
- MSI
- CODE11
2. Varivel String com o cdigo a ser impresso. Obs.: O tamando do cdigo e o tipo dos carcteres
que podero serem impressos dever respeitar a lista abaixo:
EAN-13 12 dgitos de 0 a 9
EAN-8 7 dgitos de 0 a 9
UPC-A 11 dgitos de 0 a 9
CODE 39 Tamanho varivel. 0-9, A-Z, '-', '.', '%', '/', '$', ' ', '+'
O caracter '*' de start/stop inserido automaticamente
CODE 93 Tamanho varivel. 0-9, A-Z, '-', '.', ' ', '$', '/', '+', '%'
O caracter '*' de start/stop inserido automaticamente
CODABAR tamanho varivel. 0 - 9, '$', '-', ':', '/', '.', '+'
Existem 4 diferentes caracteres de start/stop: A, B, C, and
D que so usados em pares e no podem aparecer em
nenhum outro lugar do cdigo.
CODE 11 Tamanho varivel. 0 a 9
As barras so geradas com checksum de dois caracteres
CODE 128 Tamanho varivel. Todos os caracteres ASCII
Interleaved 2 of 5 Tamanho sempre par. 0 a 9
Standard 2 of 5 Tamanho varivel. 0 a 9
MSI Tamanho varivel. 0 a 9
3. Largura da Barra: Varivel String 1(um) byte com a largura da barra a ser impressa, vov poder
usar uma medida entre 2 e 5. Se for utilizado zero ser considerado 2.
4. Altura da Barra: Varivel String com 3(trs) byte com a altura da barra a ser impressa, voc poder
usar uma altura entre 050 a 200. Se for utilizado 000(zero) ser considerado 050.
5. Imresso do Cdigo do Produto abaixo do da barra: Varivel String com 1(um) byte, 0(zero) no
imprime 1(um) imprime.
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 foi executado, 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_FI_RelatorioGerencial
("================================================")
Daruma_FI_RelatorioGerencial (Chr(13) + Chr(10) + "CODIGO DE BARRAS Code 11" + Chr(13) +
Chr(10))
Daruma 32 Framework 187
Daruma Automao
Daruma_FIMFD_ImprimeCodigoBarras "11", "01 09.04.2005 150,00", "0", "0", "0"
Daruma_FIMFD_ImprimeCodigoBarras "11", "7891037778910377", "3", "120", "0"
Daruma_FIMFD_ImprimeCodigoBarras "11", "78910377891037", "4", "150", "1"
Daruma_FIMFD_ImprimeCodigoBarras "11", "789103789103", "5", "170", "0"
Daruma_FIMFD_ImprimeCodigoBarras "11", "7891078910", "0", "200", "1"
Daruma_FI_RelatorioGerencial
("================================================")
Exemplo em Delphi 7.0:
begin
Daruma_FI_RelatorioGerencial
(pchar('================================================'));
Daruma_FI_RelatorioGerencial (Chr(13) + Chr(10) + 'CODIGO DE BARRAS Code MSI' + Chr(13) +
Chr(10));
Daruma_FIMFD_ImprimeCodigoBarras (pchar('10'), pchar('01 09.04.2005 150,00'), '0', '0', '0');
Daruma_FIMFD_ImprimeCodigoBarras (pchar('10'), pchar('7891037778910377'), '3', pchar('120'), '0');
Daruma_FIMFD_ImprimeCodigoBarras (pchar('10'), pchar('78910377891037'), '4', pchar('150'), '1');
Daruma_FIMFD_ImprimeCodigoBarras (pchar('10'), pchar('789103789103'), '5', pchar('170'), '0');
Daruma_FIMFD_ImprimeCodigoBarras (pchar('10'), pchar('7891078910'), '0', pchar('200'), '1');
Daruma_FI_RelatorioGerencial
(pchar('================================================'));
1.8.7.4 Daruma_FIMFD_ImprimeCodigoBarrasCupomAdicional
Definio do Mtodo:
Este mtodo permite a impresso de cdigo de barras no cupom Adicional nas MFD's FS600 e FS2100T.
Esta impresso s poder ser feita no cupom adicional.
Parmetros do Mtodo: (5 Parmetros)
1. Cdigo: Varivel String com 2(dois) dgitos contendo o cdigo do tipo de cdigo de barras que voc
quer imprimir, conforme lista abaixo:
- EAN-13 - (Tipo 1)
- EAN- 8 - (Tipo 2)
- INTERLEAVED 2 of 5 - (Tipo 4)
- CODE128 - (Tipo 5)
- CODE39 - (Tipo 6)
- CODE93 - (Tipo 7)
- UPC-A - (Tipo 8)
- CODABAR - (Tipo 9)
- MSI - (Tipo 10)
- CODE11 - (Tipo 1)
2. Varivel String com o cdigo a ser impresso. Obs.: O tamando do cdigo e o tipo dos carcteres
que podero serem impressos dever respeitar a lista abaixo:
EAN-13 12 dgitos de 0 a 9
EAN-8 7 dgitos de 0 a 9
UPC-A 11 dgitos de 0 a 9
CODE 39 Tamanho varivel. 0-9, A-Z, '-', '.', '%', '/', '$', ' ', '+'
O caracter '*' de start/stop inserido automaticamente
CODE 93 Tamanho varivel. 0-9, A-Z, '-', '.', ' ', '$', '/', '+', '%'
O caracter '*' de start/stop inserido automaticamente
CODABAR tamanho varivel. 0 - 9, '$', '-', ':', '/', '.', '+'
Existem 4 diferentes caracteres de start/stop: A, B, C, and
D que so usados em pares e no podem aparecer em
nenhum outro lugar do cdigo.
CODE 11 Tamanho varivel. 0 a 9
As barras so geradas com checksum de dois caracteres
CODE 128 Tamanho varivel. Todos os caracteres ASCII
Interleaved 2 of 5 Tamanho sempre par. 0 a 9
MSI Tamanho varivel. 0 a 9
3. Largura da Barra: Varivel String 1(um) byte com a largura da barra a ser impressa, vov poder
usar uma medida entre 2 e 5. Se for utilizado zero ser considerado 2.
Daruma Framework 188
Daruma Automao
4. Altura da Barra: Varivel String com 3(trs) byte com a altura da barra a ser impressa, voc poder
usar uma altura entre 050 a 200. Se for utilizado 000(zero) ser considerado 050.
5. Imresso do Cdigo do Produto abaixo do da barra: Varivel String com 1(um) byte, 0(zero) no
imprime 1(um) imprime.
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 foi executado, 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_FIMFD_ImprimeCodigoBarrasCupomAdicional "11", "01 09.04.2005 150,00", "0", "0", "0"
Daruma_FIMFD_ImprimeCodigoBarrasCupomAdicional "11", "7891037778910377", "3", "120", "0"
Daruma_FIMFD_ImprimeCodigoBarrasCupomAdicional "11", "78910377891037", "4", "150", "1"
Daruma_FIMFD_ImprimeCodigoBarrasCupomAdicional "11", "789103789103", "5", "170", "0"
Daruma_FIMFD_ImprimeCodigoBarrasCupomAdicional "11", "7891078910", "0", "200", "1"
Exemplo em Delphi 7.0:
begin
Daruma_FIMFD_ImprimeCodigoBarrasCupomAdicional (pchar('10'), pchar('01 09.04.2005 150,00'), '0',
'0', '0');
Daruma_FIMFD_ImprimeCodigoBarrasCupomAdicional (pchar('10'), pchar('7891037778910377'), '3',
pchar('120'), '0');
Daruma_FIMFD_ImprimeCodigoBarrasCupomAdicional (pchar('10'), pchar('78910377891037'), '4',
pchar('150'), '1');
Daruma_FIMFD_ImprimeCodigoBarrasCupomAdicional (pchar('10'), pchar('789103789103'), '5',
pchar('170'), '0');
Daruma_FIMFD_ImprimeCodigoBarrasCupomAdicional (pchar('10'), pchar('7891078910'), '0',
pchar('200'), '1');
1.8.7.5 Daruma_FIMFD_TerminaFechamentoCupomCodigoBarras (ndice 6005)
Definio do Mtodo:
Este mtodo permite que voc termine o fechamento do cupom e inclua o cdigo de barras, nos modelos
FS600 e tambm FS2100T.
Parmetros do Mtodo: (6 Partremos)
1. Mensagem: Varivel String com a mengasem promocional.
2. Cdigo: Varivel String com 2(dois) dgitos contendo o cdigo do tipo de cdigo de barras que voc
quer imprimir, conforme lista abaixo:
- EAN-13
- EAN- 8
- STANDARD 2 of 5
- INTERLEAVED 2 of 5
- CODE128
- CODE39
- CODE93
- UPC-A
- CODABAR
- MSI
- CODE11
3. Largura da Barra: Varivel String 1(um) byte com a largura da barra a ser impressa, vov poder usar
uma medida entre 2 e 5. Se for utilizado zero ser considerado 2.
4. Altura da Barra: Varivel String com 3(trs) byte com a altura da barra a ser impressa, voc poder
usar uma altura entre 050 a 200. Se for utilizado 000(zero) ser considerado 050.
5. Impresso do Cdigo do Produto abaixo do da barra: Varivel String com 1(um) byte, 0(zero) no
imprime 1(um) imprime.
Daruma 32 Framework 189
Daruma Automao
6. Varivel String com o cdigo a ser impresso.
Obs.: O tamando do cdigo e o tipo dos carcteres que podero serem impressos dever
respeitar a lista abaixo:
EAN-13 12 dgitos de 0 a 9
EAN-8 7 dgitos de 0 a 9
UPC-A 11 dgitos de 0 a 9
CODE 39 Tamanho varivel. 0-9, A-Z, '-', '.', '%', '/', '$', ' ', '+'
O caracter '*' de start/stop inserido automaticamente
CODE 93 Tamanho varivel. 0-9, A-Z, '-', '.', ' ', '$', '/', '+', '%'
O caracter '*' de start/stop inserido automaticamente
CODABAR tamanho varivel. 0 - 9, '$', '-', ':', '/', '.', '+'
Existem 4 diferentes caracteres de start/stop: A, B, C, and
D que so usados em pares e no podem aparecer em
nenhum outro lugar do cdigo.
CODE 11 Tamanho varivel. 0 a 9
As barras so geradas com checksum de dois caracteres
CODE 128 Tamanho varivel. Todos os caracteres ASCII
Interleaved 2 of 5 Tamanho sempre par. 0 a 9
Standard 2 of 5 Tamanho varivel. 0 a 9
MSI Tamanho varivel. 0 a 9
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Mensagem_Promocional As String
Dim Str_String_Codigo As String
Dim Str_Posicao As String
Dim Str_Tipo As String
Dim Str_Largura As String
Dim Str_Altura As String
Dim Str_Tipo_Codigo As String
Str_Mensagem_Promocional = "Obrigado Volte Sempre!!!"
Str_String_Codigo = "1234567890123"
Str_Altura = "3"
Str_Largura = "080"
Str_Tipo_Codigo = Tipo_Codigo_Barras.Text
Select Case Str_Tipo_Codigo
Case "EAN-13"
Str_Tipo = "1"
Case "EAN-8"
Str_Tipo = "2"
Case "STANDARD 2 OF 5"
Str_Tipo = "3"
Case "INTERLEAVED 2 OF 5"
Str_Tipo = "4"
Case "CODE128"
Str_Tipo = "5"
Case "CODE39"
Str_Tipo = "6"
Case "CODE93"
Str_Tipo = "7"
Case "UPC-A"
Str_Tipo = "8"
Case "CODEBAR"
Str_Tipo = "9"
Case "MSI"
Str_Tipo = "10"
Case "CODE11"
Str_Tipo = "11"
End Select
If Tipo_Sim.Value = True Then
Str_Posicao = "1"
Else
Str_Posicao = "0"
Daruma Framework 190
Daruma Automao
End If
Int_Retorno = Daruma_FIMFD_TerminaFechamentoCupomCodigoBarras(Str_Mensagem_Promocional,
Str_Tipo, Str_String_Codigo, Str_Largura, Str_Altura, Str_Posicao)
Exemplo em Delphi 7.0:
var
Str_Mensagem_Promocional: String;
Str_String_Codigo: String;
Str_Tipo: String;
Str_Posicao: String;
Str_Largura: String;
Str_Altura: String;
j: integer;
begin
j:=0;
Str_Mensagem_Promocional := Trim(Mensagem_Promocional.Text);
Str_String_Codigo := Trim(String_Codigo.Text);
for j := 0 to 15 do
if Altura.Text=Altura.Items[j] then
Case j of
0: Str_Altura:= '050';
1: Str_Altura:= '060';
2: Str_Altura:= '070';
3: Str_Altura:= '080';
4: Str_Altura:= '090';
5: Str_Altura:= '100';
6: Str_Altura:= '110';
7: Str_Altura:= '120';
8: Str_Altura:= '130';
9: Str_Altura:= '140';
10: Str_Altura:= '150';
11: Str_Altura:= '160';
12: Str_Altura:= '170';
13: Str_Altura:= '180';
14: Str_Altura:= '190';
15: Str_Altura:= '200';
end;
for j := 0 to 4 do
if Largura.Text=Largura.Items[j] then
Case j of
0: Str_Largura:='2';
1: Str_Largura:='3';
2: Str_Largura:='4';
3: Str_Largura:='5';
end;
for j := 0 to 11 do
if tipo_Codigo_Barras.Text=Tipo_Codigo_Barras.Items[j] then
Case j of
0: Str_Tipo:='1'; //'EAN-13'
1: Str_Tipo:='2'; //'EAN-8'
2: Str_Tipo:='3'; //'STANDARD 2 OF 5'
3: Str_Tipo:='4'; //'INTERLEAVED 2 OF 5'
4: Str_Tipo:='5'; //'CODE128'
5: Str_Tipo:='6'; //'CODE39'
6: Str_Tipo:='7'; //'CODE93'
7: Str_Tipo:='8'; //'UPC-A'
8: Str_Tipo:='9'; //'CODABAR'
9: Str_Tipo:='10'; //'MSI'
10: Str_Tipo:='11'; //'CODE11'
end;
if Tipo_Sim.Checked=True then
begin
Str_Posicao:='1';
end
else
begin
Daruma 32 Framework 191
Daruma Automao
Str_Posicao:='0';
end;
Int_Retorno:= Daruma_FIMFD_TerminaFechamentoCupomCodigoBarras( pchar(
Str_Mensagem_Promocional ), Str_Tipo, Str_String_Codigo, Str_Largura, Str_Altura, Str_Posicao );
1.8.7.6 Daruma_FIMFD_IndicePrimeiroVinculado (ndice 6003)
Definio do Mtodo:
Este mtodo permite que voc saiba qual a posio do primeiro vinculado.
Parmetros do Mtodo:
Varivel String por referncia com 2(dois) espaos alocados para receber a posio ndice.
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 foi executado, 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_FIMFD_IndicePrimeiroVinculado(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Exemplo em Delphi 7.0:
var Str_Indice: String;
begin
SetLength (Str_Indice,5);
Int_Retorno:= Daruma_FIMFD_IndicePrimeiroVinculado(Str_Indice);
Edit1.Lines.Text := pchar(Str_Indice);
end;
1.8.7.7 Daruma_FIMFD_CasasDecimaisProgramada (ndice 6002)
Definio do Mtodo:
Este mtodo permite que voc saiba qual o nmero de casas decimais que est programado para o
valor e tambm para a quantidade na FS600 e tambm FS2100T.
Parmetros do Mtodo:
Varivel String por referncia com 1(um) espaos alocados para receber o numero de decimais do valor.
Varivel String por referncia com 1(um) espaos alocados para receber o numero de decimais da
quantidade.
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 foi executado, 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_Decimais_Quantidade As String
Dim Str_Decimais_Valor As String
Str_Decimais_Quantidade = Space(1)
Str_Decimais_Valor = Space(1)
Int_Retorno = Daruma_FIMFD_CasasDecimaisProgramada(Str_Decimais_Quantidade,
Str_Decimais_Valor)
TX_Retorno.Text = "Quantidade:" + Str_Decimais_Quantidade + Chr(13) + Chr(10) + "Valor:" +
Str_Decimais_Valor
Daruma Framework 192
Daruma Automao
Exemplo em Delphi 7.0:
var Str_Quantidade: String;
Str_Valor: String;
begin
SetLength (Str_Valor,1);
SetLength (Str_Quantidade,1);
Int_Retorno:= Daruma_FIMFD_CasasDecimaisProgramada(Str_Quantidade, Str_Valor);
Edit1.Lines.Text := ('Quantidade:' + pchar(Str_Quantidade)+ #13+ 'Valor:' + pchar(Str_Valor));
FormPrincipal.Daruma_Analisa_Retorno();
end;
1.8.7.8 Daruma_FIMFD_StatusCupomFiscal (ndice 6008)
Definio do Mtodo:
Retorna o status atual do cupom fiscal na FS600 e tambm FS2100T.
Parmetros do Mtodo:
Varivel por referncia com 2(dois) espaos alocados para escrita do Status.
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 foi executado, 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 retornar um dos seguintes status:
0 Cupom Fiscal Fechado;
1 Cupom Fiscal Aberto;
2 Cupom Fiscal em Totalizao;
3 Cupom Fiscal em Fase de Pagamento;
4 Cupom em Finalizao (ou seja, j indicou as formas de pagamento e o valor j igual ou maior
que o cupom fiscal, no permite mais enviar formas de pagamento, apenas a mensagem promocional).
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Informacao as String
Str_Informacao = Space(1)
Int_Retorno = Daruma_FIMFD_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_FIMFD_StatusCupomFiscal(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
1.8.7.9 Daruma_FIMFD_SinalSonoro (ndice 53)
Definio do Mtodo:
Este mtodo permite que voc programe um aviso sonoro na FS600 e tambm FS2100T.
Parmetros do Mtodo:
Valor: Varivel String valor que equivale ao nmero de beeps (sinais) que voc que de ao final da
impresso, se configurado 0(zero) ento ser desabilitado.
Daruma 32 Framework 193
Daruma Automao
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 foi executado, 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 habilitar o sinal sonoro, quando passado 1 um beep, se for passado 2 ento ter dois
beeps ao trmino da impresso, se quizer trs beeps, ento passe 3.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Numero_Beeps As String
Str_Numero_Beeps = InputBox("Entre com o nmero de beeps desejado, que pode ser de 1 a 99
beeps:", "Daruma Framework", "1")
If (Str_Numero_Beeps = "") Then
Exit Sub
End If
Int_Retorno = Daruma_FIMFD_SinalSonoro(Str_Numero_Beeps)
Exemplo em Delphi 7.0:
var
Str_Numero_Beeps: String;
begin
Str_Numero_Beeps := InputBox('Daruma Framework', 'Entre com o nmero de beeps desejado, que
pode ser de 1 a 99 beeps:', '1');
if (Str_Numero_Beeps = '') then
Exit;
Int_Retorno := Daruma_FIMFD_SinalSonoro(Str_Numero_Beeps);
1.8.7.10 Daruma_FIMFD_ProgramaRelatoriosGerenciais (ndice 6013)
Definio do Mtodo:
Este mtodo permite que voc programe relatrios gerenciais nas impressoras Trmicas FS600 e tambm
FS2100T.
Parmetros do Mtodo:
Nome Relatrio: Varivel String contendo um nome para o relatrio com at 15 caracteres.
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 foi executado, 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 primeira posio voc sempre ter Gerencial X, que default.
- O nmero mximo de relatrios que podero ser programados de 20(vinte), sendo que a primeira
posio j vem programada de fbrica.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Nome_Relatorio As String
Str_Nome_Relatorio = TX_Nome_Relatorio.Text
Int_Retorno = Daruma_FIMFD_ProgramaRelatoriosGerenciais(Str_Nome_Relatorio)
Exemplo em Delphi 7.0:
var
Daruma Framework 194
Daruma Automao
Str_Nome_Relatorio:string;
begin
Str_Nome_Relatorio := Nome_Relatorio.Text;
Int_Retorno := Daruma_FIMFD_ProgramaRelatoriosGerenciais( pchar( Str_Nome_Relatorio ) );
end;
1.8.7.11 Daruma_FIMFD_AbreRelatorioGerencial (ndice 6014)
Definio do Mtodo:
Este mtodo permite que voc abra um relatrio gerencial, previamente programado.
Parmetros do Mtodo:
Nome Relatrio: Varivel String contendo o nome do relatrio com at 15 caracteres.
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 foi executado, 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 prefira antes de enviar o comando de abertura, verificar se o relatrio esta aberto utilize o
mtodo: Daruma_FI_StatusRelatorioGerencial(ndice1405).
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Nome_Relatorio As String
Str_Nome_Relatorio = TX_Nome_Relatorio.Text
Int_Retorno = Daruma_FIMFD_AbreRelatorioGerencial(Str_Nome_Relatorio)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
Var Str_Nome_Relatorio:string;
begin
Str_Nome_Relatorio:=Nome_Relatorio.Text;
Int_Retorno := Daruma_FIMFD_AbreRelatorioGerencial(Str_Nome_Relatorio);
end;
1.8.7.12 Daruma_FIMFD_VerificaRelatoriosGerenciais (ndice 6015)
Definio do Mtodo:
Este mtodo permite que voc verifique os relatrios gerenciais existentes em sua impressora.
Parmetros do Mtodo:
String: com 321(trezentos e vinte e um) posies onde a dll ir retornar as descries de cada relatrio
gerencial programado em sua impressora.
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 foi executado, 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(321)
Int_Retorno = Daruma_FIMFD_VerificaRelatoriosGerenciais(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
Daruma 32 Framework 195
Daruma Automao
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,321);
Int_Retorno := Daruma_FIMFD_VerificaRelatoriosGerenciais(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
end;
Daruma Framework 196
Daruma Automao
1.8.7.13 Daruma_FIMFD_EmitirCupomAdicional (ndice 6016)
Definio do Mtodo:
Este mtodo permite a impresso de um cupom adicional, que feito dentro de um gerencial somente
nas impressoras Trmicas FS600 e FS2100T. Portanto no compatvel com a FS345.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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 de um cupom adicional, recuperado da MFD:
28/09/2006 03:15:38 GNF:000046 COO:000234
GRG:000025 CER:0002
RELATRIO GERENCIAL
Cupom Adicional
1)28/09/2006 03:14:23 2)CCF:000130 3)COO:000233
4)Qt Itens Vend:002 5)Qt Itens Canc:000 6)Tempo:00068s
7)Valor:R$ 0,20 8)Aliquotas:18,00
9)Dinheiro:R$ 0,20
DARUMA32 FrameWork Mensagem No Programada
DARUMA32 FrameWork Mensagem No Programada
DARUMA AUTOMAO FS600
ECF-IF VERSO:01.03.00 ECF:001 Lj:
AAAAAAAAAAAAIBHBJC 28/09/2006 03:15:40
FAB:DR0206BR000000080835
Como pode ser visto no exemplo acima, as informaes contidas no cupom adicional so:
1. Data e Hora da Emisso;
2. CFF Contador Cupom Fiscal;
3. COO Contador Ordem Operao;
4. Qtde Itens Vendidos;
5. Qtde de Itens Cancelados;
6. Tempo de Impresso;
7. Valor Total do Cupom;
8. Alquotas usadas, menos Isento, No Tributado e Substituio Tributria;
9. Forma de Pagamento x Valor;
10. Reservado para uso futuro.
Observao:
- Para alterar a configurao dos tens que sero impressos, voc dever utilizar o mtodo:
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FIMFD_EmitirCupomAdicional()
Exemplo em Delphi 7.0:
Int_Retorno:= Daruma_FIMFD_EmitirCupomAdicional();
Daruma 32 Framework 197
Daruma Automao
1.8.7.14 Daruma_FIMFD_AcionarGuilhotina (ndice 6017)
Definio do Mtodo:
Este mtodo permite o acionamento da guilhotina nas impressoras FS600.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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:
- Este mtodo exclusivo para impressora trmica FS600.
- Verificar se o equipamento est habilitado com a Guilhotina.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FIMFD_AcionarGuilhotina()
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
Int_Retorno:= Daruma_FIMFD_AcionarGuilhotina();
Daruma_Analisa_Retorno();
1.8.7.15 Daruma_FIMFD_EqualizarVelocidade (ndice 6018)
Definio do Mtodo:
Este mtodo permite a reestabelecer a comunicao com a impressora MFD.
Este mtodo foi criado porque as MFD's FS600 e FS2100T permite trabalhar com um 'range' de
velocidade: 9600, 38400, 54700 e 115200.
Aonde no difcil de a impressora estar em uma velociade de comunicao e o nosso driver
Daruma32.dll estar tentando comunicar-se com a impressora a uma outra velocidade, ocorrendo erro de
comunicao (Erro Extendido: 999).
Se isso vier a ocorrer com voc, ento basta executar este mtodo a dll ir encontrar a velocidade em
que encontra-se a impressora e devolver em uma varivel passada por referncia.
Parmetros do Mtodo:(1 Parmetro)
Equaliza Velocidade. Varivel por referncia, com 6 espaos para receber a velocidade que esta a
impressora.
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 foi executado, 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:
- Este mtodo esclusivo para impressoras trmicas FS600 e FS2100T.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_EqualizaVelocidade As String
Str_EqualizaVelocidade = Space(6)
Int_Retorno = Daruma_FIMFD_EqualizarVelocidade(Str_EqualizaVelocidade)
Daruma Framework 198
Daruma Automao
MsgBox "Retorno do metodo = " + Str_EqualizaVelocidade
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_EqualizaVelocidade: String;
begin
SetLength (Str_EqualizaVelocidade,6);
Int_Retorno:= Daruma_FIMFD_EqualizarVelocidade(Str_EqualizaVelocidade);
Application.MessageBox(pchar('Retorno do metodo = ' + Str_EqualizaVelocidade), 'Daruma Framework
Retorno do Metodo', mb_ok);
Daruma_Analisa_Retorno();
end;
1.8.7.16 Daruma_FIMFD_AbreRecebimentoNaoFiscal(ndice 6009)
Definio do Mtodo:
Abre o recebimento no fiscal "CNFNV", nas impressoras MFD's FS600 e 2100T.
Parmetros do Mtodo: (3 Parmetros)
1. CPF: Neste parmetro voc deve passar o CPF cliente
2. Nome: Neste parmetro voc deve passar o nome do cliente
3. Endereo: Neste parmetro voc deve passar o nome do cliente
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 foi executado, 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 no poder ser aplicado para Sangria ou Suprimento.
- Este Mtodo abre o recebimento no fiscal que permanece aberto at que seja chamado o Mtodo
Daruma_FIMFD_RecebimentoNaoFiscal(ndice????),Daruma_FIMFD_IniciaFechamentoNaoFiscal(ndice??
??),Daruma_FIMFD_EfetuaFormaPagamentoNaoFiscal(ndice????),
Daruma_FIMFD_TerminaFechamentoNaoFiscal(ndice????).
Importante! verifique o status do recebimento antes de tentar abr-lo atravs do
Mtodo:Daruma_FI_StatusComprovanteNaoFiscalNaoVinculado(ndice1471).
- 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 Sangria, o Mtodo ser executado, porm o
cupom ser fechado automaticamente.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Nome As String
Dim Str_CPF As String
Dim Str_Endereco As String
Str_Nome = "Jose Ramalho de Souza e Silva"
Str_CPF = "111.111.111-11"
Str_Endereco = "Rua: Dos Jasmins, 123 - Jardim Primavera"
Int_Retorno = Daruma_FIMFD_AbreRecebimentoNaoFiscal(Str_Nome, Str_CPF, Str_Endereco)
Exemplo em Delphi 7.0:
var
Str_Nome : string;
Str_CPF : string;
Str_Endereco : string;
begin
Daruma 32 Framework 199
Daruma Automao
Str_Nome := 'Jose Ramalho de Souza e Silva';
Str_CPF := '111.111.111-11';
Str_Endereco := 'Rua: Dos Jasmins, 123 - Jardim Primavera';
Int_Retorno := Daruma_FIMFD_AbreRecebimentoNaoFiscal( pchar( Str_Nome ), pchar( Str_CPF ),
pchar( Str_Endereco ));
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.7.17 Daruma_FIMFD_RecebimentoNaoFiscal(ndice 6010)
Definio do Mtodo:
Imprime o comprovante no fiscal no vinculado, Recebimento No Fiscal, nas impressoras MFD's FS600 e
2100T).
Parmetros do Mtodo: (5 Parmetros)
1. ndice do Totalizador No Fiscal: Neste parmetro voc deve passar o ndice do totalizador com 2
dgitos.
2. Acrscimo Desconto: Indica se haver acrscimo ou desconto no cupom. 'A' para acrscimo e 'D' para
desconto.
3. Tipo Acrscimo Desconto: Indica se o acrscimo ou desconto por valor ou por percentual. '$' para
desconto por valor e '%' para percentual.
4. Valor Acrscimo Desconto: 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.
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 foi executado, 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 no poder ser aplicado para Sangria ou Suprimento.
- 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_FIMFD_AbreRecebimentoNaoFiscal(ndice????).
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Indice_do_Totalizador_Nao_Fiscal As String
Dim Str_Acresc_ou_Desc As String
Dim Str_Tipo_Acresc_Desc As String
Dim Str_Valor_Acresc_Desc As String
Dim Str_Valor_Recebimento As String
Str_Indice_do_Totalizador_Nao_Fiscal = "03"
Str_Acresc_ou_Desc = "A"
Str_Tipo_Acresc_Desc = "%"
Str_Valor_Acresc_Desc = "0,00"
Str_Valor_Recebimento = "1,00"
Int_Retorno = Daruma_FIMFD_RecebimentoNaoFiscal(Str_Indice_do_Totalizador_Nao_Fiscal,
Str_Acresc_ou_Desc, Str_Tipo_Acresc_Desc, Str_Valor_Acresc_Desc, Str_Valor_Recebimento)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_Indice_do_Totalizador_Nao_Fiscal : String;
Str_Acresc_ou_Desc : String;
Str_Tipo_Acresc_Desc : String;
Str_Valor_Acresc_Desc : String;
Daruma Framework 200
Daruma Automao
Str_Valor_Recebimento : String;
begin
Str_Indice_do_Totalizador_Nao_Fiscal:='03';
Str_Acresc_ou_Desc:='A';
Str_Tipo_Acresc_Desc:='%';
Str_Valor_Acresc_Desc:='0,0';
Str_Valor_Recebimento:='0,00';
Int_Retorno:=Daruma_FIMFD_RecebimentoNaoFiscal(pchar(Str_Indice_do_Totalizador_Nao_Fiscal),Str_
Acresc_ou_Desc,Str_Tipo_Acresc_Desc,pchar(Str_Valor_Acresc_Desc),pchar(Str_Valor_Recebimento));
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.7.18 Daruma_FIMFD_IniciaFechamentoNaoFiscal(ndice 6011)
Definio do Mtodo:
Inicia o fechamento do recebimento no fiscal com o uso das formas de pagamento, nas impressoras
MFD's FS600 e 2100T).
Parmetros do Mtodo: (3 Parmetros)
1. Acrscimo Desconto: Indica se haver acrscimo ou desconto no cupom. 'A' para acrscimo e 'D' para
desconto.
2. Tipo Acrscimo Desconto: Indica se o acrscimo ou desconto por valor ou por percentual. '$' para
desconto por valor e '%' para percentual.
3. Valor Acrscimo Desconto: String com no mximo 14 dgitos para acrscimo ou desconto por valor e
4 dgitos para acrscimo ou desconto por percentual (2 casas decimais).
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 foi executado, 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 desconto "nunca" poder ser igual ou maior do que o valor do cupom.
- Caso a venda seja de 1(um) ou mais itens, porm todos com alquota de servio e o ECF no esteja
habilitado para desconto em servio voc poder receber erro 24 ou 44, ento o desconto no ser
permitido. Importante para habilitar o desconto sobre servio preciso que seja feito por meio de
IT(interveo tcnica) e isso s pode ser feito por uma assistncia tcnica autorizada Daruma.
- Caso a venda seja 2(dois) ou mais itens, sendo que pelo menos 1(um) seja com alquota de servio e o
ECF no esteja habilitado para o desconto, ento o desconto incidir sobre os itens com alquota de ICMS.
- E caso o ECF esteja habilitado para desconto em servio ento para um cupom onde os itens sejam com
alquota de servio e tambm alquota de ICMS o desconto ser sobre todos os itens independentemente
da alquota.
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 = ""
Str_Tipo_do_Acrescimo_ou_Desconto = "%"
Str_Valor_do_Acrescimo_ou_Desconto = "0,00"
Int_Retorno = Daruma_FIMFD_IniciaFechamentoNaoFiscal(Str_Acrescimo_ou_Desconto,
Str_Tipo_do_Acrescimo_ou_Desconto, Str_Valor_do_Acrescimo_ou_Desconto)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Daruma 32 Framework 201
Daruma Automao
Str_Acrescimo_ou_Desconto: String;
Str_Tipo_do_Acrescimo_ou_Desconto: String;
Str_Valor_do_Acrescimo_ou_Desconto: String;
begin
Str_Acrescimo_ou_Desconto := 'A';
Str_Tipo_do_Acrescimo_ou_Desconto := '%';
Str_Valor_do_Acrescimo_ou_Desconto := '0,00';
Int_Retorno := Daruma_FIMFD_IniciaFechamentoNaoFiscal( pchar( Str_Acrescimo_ou_Desconto ),
pchar( Str_Tipo_do_Acrescimo_ou_Desconto ), pchar( Str_Valor_do_Acrescimo_ou_Desconto ) );
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.7.19 Daruma_FIMFD_EfetuaFormaPagamentoNaoFiscal(ndice 6012)
Definio do Mtodo:
Imprime a(s) forma(s) de pagamento e o(s) valor(es) pago(s) nessa forma, nas impressoras MFD's FS600
e 2100T).
Parmetros do Mtodo: (3 Parmetros)
1. Forma Pagamento: String com a forma de pagamento com no mximo 16 caracteres.
2. Valor Forma Pagamento: String com o valor da forma de pagamento com at 14 dgitos.
3. Observao Livre: String com at 48 caracteres, na FS345 e at 82 na FS600/FS2100T.
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 foi executado, 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_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 = "1,00"
Str_Texto_Livre = "Pagamento referente a primeira parcela."
Int_Retorno =
Daruma_FIMFD_EfetuaFormaPagamentoNaoFiscal(Str_Descricao_da_Forma_Pagamento,
Str_Valor_da_Forma_Pagamento, Str_Texto_Livre)
Daruma_MostrarRetorno
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 := '1,00';
Str_Texto_Livre := 'Pagamento referente a primeira parcela.';
Int_Retorno := Daruma_FIMFD_EfetuaFormaPagamentoNaoFiscal( pchar(
Daruma Framework 202
Daruma Automao
Str_Descricao_da_Forma_Pagamento ), pchar( Str_Valor_da_Forma_Pagamento ), pchar(
Str_Texto_Livre ) );
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.7.20 Daruma_FIMFD_TerminaFechamentoNaoFiscal(ndice 6020)
Definio do Mtodo:
Termina o fechamento do cupom com mensagem promocional, nas impressoras MFD's FS600 e 2100T).
Parmetros do Mtodo: (1 Parmetro)
Mensagem Promocional: String com a mensagem promocional com at 384 caracteres (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 foi executado, 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:
- Acentuao e/ou caracteres especiais, no so aceitos na mensagem promocional.
- 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_FIMFD_TerminaFechamentoNaoFiscal(Str_Mensagem_Promocional)
Daruma_MostrarRetorno
End Sub
Exemplo em Delphi 7.0:
var
Str_Mensagem_Promocional: String;
begin
Str_Mensagem_Promocional := 'Obrigado, volte sempre!';
Int_Retorno := Daruma_FIMFD_TerminaFechamentoNaoFiscal( pchar( Str_Mensagem_Promocional ) );
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.7.21 Daruma_FIMFD_ProgramarGuilhotina(ndice 6019)
Definio do Mtodo:
Este mtodo permite que seja programada a guilhotina, na FS600. Permite tambm que seja programado
o espaamento entre os documentos e tambm se o clich do proprietrio ser impressora de forma
antecipada.
Parmetros do Mtodo: (4 Parmetros)
Linhas entre os Documentos: String com o Nmero de Linhas que voc quer de separao entre os
documentos impressos.
Linhas para o Acionamento da Guilhotina: String com o nmero de Linhas para o Acionamento da
Guilhotina.
Status da Guilhotina: Byte para Habilitar ou Desabilitar a Guilhotina sendo que 1(um) habilita e 0(zero)
desabilita.
Impressao Antecipada do Cliche: Byte para imprir ou no imprimir o clich de forma antecipada. Sendo
que 0(zero) habilita e 1(um) desabilita.
Daruma 32 Framework 203
Daruma Automao
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 foi executado, 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:
- Verificar se o equipamento est habilitado com a Guilhotina.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Separacao_entre_Documentos As String
Dim Str_Linhas_para_Acionamento_Guilhotina As String
Dim Str_Status_da_Guilhotina As String
Dim Str_Impressao_Antecipada_Cliche As String
Str_Separacao_entre_Documentos = "05"
Str_Linhas_para_Acionamento_Guilhotina = "05"
Str_Status_da_Guilhotina = "0"
Str_Impressao_Antecipada_Cliche = "1"
Int_Retorno = Daruma_FIMFD_ProgramarGuilhotina(Str_Separacao_entre_Documentos,
Str_Linhas_para_Acionamento_Guilhotina, Str_Status_da_Guilhotina, Str_Impressao_Antecipada_Cliche)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_Separacao_entre_Documentos: String;
Str_Linhas_para_Acionamento_Guilhotina: String;
Str_Status_da_Guilhotina: String;
Str_Impressao_Antecipada_Cliche: String;
begin
Str_Separacao_entre_Documentos := '05';
Str_Linhas_para_Acionamento_Guilhotina := '05';
Str_Status_da_Guilhotina := '0';
Str_Impressao_Antecipada_Cliche := '1';
Int_Retorno := Daruma_FIMFD_ProgramarGuilhotina( pchar( Str_Separacao_entre_Documentos ),
pchar(Str_Linhas_para_Acionamento_Guilhotina),Str_Status_da_Guilhotina,Str_Impressao_Antecipada_Cl
iche);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.7.22 Daruma_FIMFD_DescontoAcrescimoItem (ndice 6031)
Definio do Mtodo:
Este mtodo permite que voc efetue um Desconto ou Acrescimo no item informado.
Parmetros do Mtodo: (4 parmetros)
1. Nmero do Item: Indica se haver acrscimo ou desconto no Item selecionado no cupom;
2. Desconto ou Ascrecimo: O Tipo A para Acrescimo ou D para Desconto;
3. Tipo do Desconto ou Acrescimo: Para Percentagem (%) ou Valor ($) no valor do item selecionado;
4. Valor do Desconto ou Acrescimo: String com no mximo 14 dgitos para acrscimo ou desconto por
valor e 4 dgitos para acrscimo ou desconto por percentual (2 casas decimais).
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
Daruma Framework 204
Daruma Automao
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo foi executado, 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_Desconto_ou_Acrescimo_Item as String
Dim Str_Tipo_do_Desconto_ou_Acrescimo_Item as String
Dim Str_Valor_do_Desconto_ou_Acrescimo_Item as String
Str_Numero_do_Item = "001"
Str_Desconto_ou_Acrescimo_Item = "A"
Str_Tipo_do_Desconto_ou_Acrescimo_Item = "$"
Str_Valor_do_Desconto_ou_Acrescimo_Item = "0,01"
Int_Retorno = Daruma_FIMFD_DescontoAcrescimoItem(Str_Numero_do_Item,
Str_Desconto_ou_Acrescimo_Item, Str_Tipo_do_Desconto_ou_Acrescimo_Item,
Str_Valor_do_Desconto_ou_Acrescimo_Item)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_Numero_do_Item: String;
Str_Desconto_ou_Acrescimo_Item: String;
Str_Tipo_do_Desconto_ou_Acrescimo_Item: String;
Str_Valor_do_Desconto_ou_Acrescimo_Item: String;
begin
Str_Numero_do_Item := '001';
Str_Desconto_ou_Acrescimo_Item := 'A';
Str_Tipo_do_Desconto_ou_Acrescimo_Item := '$';
Str_Valor_do_Desconto_ou_Acrescimo_Item := '0,01';
Int_Retorno := Daruma_FIMFD_DescontoAcrescimoItem(pchar(Str_Numero_do_Item), pchar(
Str_Desconto_ou_Acrescimo_Item ), pchar( Str_Tipo_do_Desconto_ou_Acrescimo_Item ), pchar(
Str_Valor_do_Desconto_ou_Acrescimo_Item ) );
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.7.23 Daruma_FIMFD_GTCodificado(ndice6083)
Definio do Mtodo:
Retorna o Grande Total da Impressora codificado.
Parmetros do Mtodo:
String: com 50(cinquenta) posies onde a dll ir retornar o GT(Grande Total) da impressora.a relatrio
gerencial programado em sua impressora.
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 foi executado, 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_Informacao as String
Str_Informacao = Space(50)
Int_Retorno = Daruma_FIMFD_GTCodificado(Str_Informacao);
Daruma 32 Framework 205
Daruma Automao
TX_Retorno.text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength(Str_Informacao,50);
Int_Retorno := Daruma_FIMFD_GTCodificado(Str_Informacao);
TX_Retorno.text := Str_Informacao;
end;
1.8.7.24 Daruma_FIMFD_Verifica_GTCodificado(ndice 6085)
Definio do Mtodo:
Esse mtodo faz a verificao do Grande Total Codificado da impressora.
Parmetros da Funo:
GTCodificado: Varivel String contendo o valor do GTCodificado atravs da funo
Daruma_FIMFD_GTCodificado com at 50 caracteres.
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 foi executado, 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_GTCodificado As String
Str_GTCodificado = "4A945762C23686CFEAEAC3A5E1FBCC3C3CCBE9"
Int_Retorno = Daruma_FIMFD_Verifica_GTCodificado(Str_GTCodificado)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_GTCodificado: String;
begin
Str_GTCodificado := '4A945762C23686CFEAEAC3A5E1FBCC3C3CCBE9';
Int_Retorno := Daruma_FIMFD_Verifica_GTCodificado(Str_GTCodificado);
Daruma_Analisa_Retorno();
1.8.7.25 Daruma_FIMFD_NumeroSerialCodificado(ndice6084)
Definio do Mtodo:
Retorna o Nmero de Srie da Impressora codificado.
Parmetros do Mtodo:
String: com 60(sessenta) posies onde a dll ir retornar o Nmero de Srie da impressora.
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 foi executado, 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 Framework 206
Daruma Automao
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Informacao as String
Str_Informacao = Space(60)
Int_Retorno = Daruma_FIMFD_NumeroSerialCodificado(Str_Informacao);
TX_Retorno.text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength(Str_Informacao,60);
Int_Retorno := Daruma_FIMFD_NumeroSerialCodificado(Str_Informacao);
TX_Retorno.text := Str_Informacao;
end;
1.8.7.26 Daruma_FIMFD_Verifica_NumeroSerialCodificado(ndice6086)
Definio do Mtodo:
Esse mtodo faz a verificao do Nmero de srie Codificado da impressora.
Parmetros da Funo:
NumeroSerial: Varivel String contendo o valor do Nmero de Srie atravs da funo
Daruma_FIMFD_NumeroSerialCoficado com at 60 caracteres.
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 foi executado, 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_NumeroSerialCodificado As String
Str_NumeroSerialCodificado =
"2269063124D0266FB2B7637DE8D6A4E1EB24FF9F09A48C2DE1B640C0ED9D"
Int_Retorno = Daruma_FIMFD_Verifica_NumeroSerialCodificado(Str_NumeroSerialCodificado)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_NumeroSerialCodificado: String;
begin
Str_NumeroSerialCodificado :=
'2269063124D0266FB2B7637DE8D6A4E1EB24FF9F09A48C2DE1B640C0ED9D';
Int_Retorno := Daruma_FIMFD_Verifica_NumeroSerialCodificado(Str_NumeroSerialCodificado);
Daruma_Analisa_Retorno();
1.8.7.27 Daruma_FIMFD_CodigoModeloFiscal
Definio do Mtodo:
Este mtodo permite que voc verifique o cdigo de identificao do ECF, conforme a tabela nacional
disponibilizada pela SEFAZ.
Daruma 32 Framework 207
Daruma Automao
Parmetros do Mtodo:
String: com 6(seis) posies onde a dll ir retornar o cdigo da impressora conectada.
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 foi executado, 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_FIMFD_CodigoModeloFiscal(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,6);
Int_Retorno := Daruma_FIMFD_CodigoModeloFiscal(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
end;
1.8.7.28 Daruma_FIMFD_GerarAtoCotepeData(6041)
Definio do Mtodo:
Este mtodo ir gerar os arquivos do perodo solicitado para atender a portaria Ato Cotepe 17/04(Nota
Fiscal Paulista, Nota Fiscal Legal, Alagoana e outras), com a nomenclatura DR1??????????.DMA
Ex: DR10000072090.PA9
Que traduzido seria:
Daruma Framework 208
Daruma Automao
Parmetros do Mtodo:
1. Data Inicial: String com a Data inicial no formato ddmmaaaa.
2. Data Final: String com a Data final no formato ddmmaaaa.
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 foi executado, 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:
- Mtodo compatvel somente para impressoras trmicas FS600, FS700 e FS2100T.
- Configurar o diretrio onde os arquivos sero gerados, basta utilizar o mtodo
Daruma_Registry_AlterarRegistry.
- Configurar sinal sonoro que ir avisar cada arquivo gerado, basta utilizar o mtodo
Daruma_Registry_AlterarRegistry.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_DataInicial As String
Dim Str_DataFinal As String
Str_DataInicial = "01092009"
Str_DataFinal = "30092009"
{Configura o diretrio onde sero gerados os arquivos}
Int_Retorno = Daruma_Registry_AlterarRegistry("AtoCotepe", "Path", "C:\Daruma\")
{Configura a gerao dos arquivos automtica diariamente aps a reduo Z}
Int_Retorno = Daruma_Registry_AlterarRegistry("AtoCotepe", "GerarAtoCotepe", "1")
{Configura sinal sonoro a cada arquivo gerado}
Int_Retorno = Daruma_Registry_AlterarRegistry("AtoCotepe", "Beep", "1")
{Executa o mtodo que ir gerar os arquivos}
Int_Retorno = Daruma_FIMFD_GerarAtoCotepeData(Str_DataInicial, Str_DataFinal)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_DataInicial, Str_DataFinal: String;
begin
Daruma 32 Framework 209
Daruma Automao
Str_DataInicial := Trim(01092009);
Str_DataFinal := Trim(30092009);
{Configura o diretrio onde sero gerados os arquivos}
Int_Retorno := Daruma_Registry_AlterarRegistry('AtoCotepe', 'Path', 'C:\Daruma\');
{Configura a gerao dos arquivos diariamente aps a reduo Z}
Int_Retorno := Daruma_Registry_AlterarRegistry('AtoCotepe', 'GerarAtoCotepe', '1');
{Configura sinal sonoro a cada arquivo gerado}
Int_Retorno := Daruma_Registry_AlterarRegistry('AtoCotepe', 'Beep', '1');
{Executa o mtodo que ir gerar os arquivos}
Int_Retorno:= Daruma_FIMFD_GerarAtoCotepeData(Str_DataInicial, Str_DataFinal);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.7.29 Daruma_FIMFD_GerarAtoCotepePafData(6042)
Definio do Mtodo:
Este mtodo ir gerar o Arq. MFD por intervalod de data conforme o leiaute estabelecido no Ato
COTEPE/ICMS 17/04 para atener ao requisito VII Item 6 do PAF-ECF, o arquivo ser gerado com a
nomenclatura ATOCOTEPE_DARUMA.TXT.
Parmetros do Mtodo:
1. Data Inicial: String com a Data inicial no formato ddmmaaaa.
2. Data Final: String com a Data final no formato ddmmaaaa.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-2: Parmetro Invlido. Ex.: Data Inicial maior que Data Final.
-100: Arquivo .MFD Corrompido.
-110: Perodo sem movimento.
-109: Data final maior que a data do movimento da ltima Reduo Z emitida.
-108: Data inicial e data final menor que o 1 documento emitido.
-27:(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo foi executado, 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:
- Mtodo compatvel somente para impressoras trmicas FS600, FS700 e FS2100T.
- Configurar o diretrio onde os arquivos sero gerados, basta utilizar o mtodo
Daruma_Registry_AlterarRegistry.
- Configurar sinal sonoro que ir avisar cada arquivo gerado, basta utilizar o mtodo
Daruma_Registry_AlterarRegistry.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_DataInicial As String
Dim Str_DataFinal As String
Str_DataInicial = "01092009"
Str_DataFinal = "30092009"
{Configura o diretrio onde sero gerados os arquivos}
Int_Retorno = Daruma_Registry_AlterarRegistry("AtoCotepe", "Path", "C:\Daruma\")
{Configura sinal sonoro a cada arquivo gerado}
Int_Retorno = Daruma_Registry_AlterarRegistry("AtoCotepe", "Beep", "1")
Daruma Framework 210
Daruma Automao
{Executa o mtodo que ir gerar os arquivos}
Int_Retorno = Daruma_FIMFD_GerarAtoCotepePAFData(Str_DataInicial, Str_DataFinal)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_DataInicial, Str_DataFinal: String;
begin
Str_DataInicial := Trim(01092009);
Str_DataFinal := Trim(30092009);
{Configura o diretrio onde sero gerados os arquivos}
Int_Retorno := Daruma_Registry_AlterarRegistry('AtoCotepe', 'Path', 'C:\Daruma\');
{Configura sinal sonoro a cada arquivo gerado}
Int_Retorno := Daruma_Registry_AlterarRegistry('AtoCotepe', 'Beep', '1');
{Executa o mtodo que ir gerar os arquivos}
Int_Retorno:= Daruma_FIMFD_GerarAtoCotepePAFData(Str_DataInicial, Str_DataFinal);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.7.30 Daruma_FIMFD_GerarAtoCotepePafCoo(6043)
Definio do Mtodo:
Este mtodo ir gerar o Arq. MFD por intervalo COO conforme o leiaute estabelecido no Ato COTEPE/ICMS
17/04 para atener ao requisito VII Item 6 do PAF-ECF, o arquivo ser gerado com a nomenclatura
ATOCOTEPE_DARUMA.TXT.
Parmetros do Mtodo:
1. COO Inicial: String com a COO inicial no formato 999999.
2. COO Final: String com a COO final no formato 999999.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
1: OK, Sucesso ao enviar o mtodo.
-2: Parmetro Invlido. Ex.: COO Inicial maior que COO Final.
-100: Arquivo .MFD Corrompido.
-110: Intervalo COO sem movimento.
-109: COO final maior que a COO do movimento da ltima Reduo Z emitida.
-108: COO inicial e COO final menor que o 1 documento emitido.
-27:(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo foi executado, 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:
- Mtodo compatvel somente para impressoras trmicas FS600, FS700 e FS2100T.
- Configurar o diretrio onde os arquivos sero gerados, basta utilizar o mtodo
Daruma_Registry_AlterarRegistry.
- Configurar sinal sonoro que ir avisar cada arquivo gerado, basta utilizar o mtodo
Daruma_Registry_AlterarRegistry.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_CooInicial As String
Dim Str_CooFinal As String
Daruma 32 Framework 211
Daruma Automao
Str_CooInicial = "999999"
Str_CooFinal = "999999"
{Configura o diretrio onde sero gerados os arquivos}
Int_Retorno = Daruma_Registry_AlterarRegistry("AtoCotepe", "Path", "C:\Daruma\")
{Configura sinal sonoro a cada arquivo gerado}
Int_Retorno = Daruma_Registry_AlterarRegistry("AtoCotepe", "Beep", "1")
{Executa o mtodo que ir gerar os arquivos}
Int_Retorno = Daruma_FIMFD_GerarAtoCotepePAFCoo(Str_CooInicial, Str_CooFinal)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_CooInicial, Str_CooFinal: String;
begin
Str_CooInicial := Trim(999999);
Str_CooFinal := Trim(999999);
{Configura o diretrio onde sero gerados os arquivos}
Int_Retorno := Daruma_Registry_AlterarRegistry('AtoCotepe', 'Path', 'C:\Daruma\');
{Configura sinal sonoro a cada arquivo gerado}
Int_Retorno := Daruma_Registry_AlterarRegistry('AtoCotepe', 'Beep', '1');
{Executa o mtodo que ir gerar os arquivos}
Int_Retorno:= Daruma_FIMFD_GerarAtoCotepePAFCoo(Str_CooInicial, Str_CooFinal);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.7.31 Daruma_FIMFD_CupomAdicionalCampoLivre
Definio do Mtodo:
Abre e Imprime Imprime o Relatrio Gerencial.
Parmetros do Mtodo: (1 Parmetro)
Texto: String com o Texto a ser impresso no relatrio com at 618 caracteres.
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 foi executado, 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 voc 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 relatrio aberto,
efetuar seu fechamento automaticamente.
- Uma vez aberto o Relatrio Gerencial, voc ter 10(dez) minutos para a impresso de Texto Livre.
- Caso voc se esquea de fechar o Relatrio Gerencial o mesmo ser fechado automaticamente aps
10(dez) minutos contando a partir de sua abertura.
- Nas Impressoras Trmicas FS600 e FS2000T o gerencial permanecer aberto por 2(dois) Minutos.
Exemplos:
Daruma Framework 212
Daruma Automao
Exemplo em Visual Basic 6.0:
Dim Str_Texto_Livre As String
Str_Texto_Livre = "Texto Livre com at 600 caracteres"
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 618 caracteres';
Int_Retorno := Daruma_FI_RelatorioGerencial( pchar( Str_Texto_Livre ) );
Exemplo em Java:
int retorno;
retorno = FISCAL.Daruma_FI_RelatorioGerencial("teste com o .JAR no exemplo java");
1.8.7.32 Daruma_Framework_DadosUltimaZ
Daruma 32 Framework 213
Daruma Automao
Daruma Framework 214
Daruma Automao
1.8.7.33 Consumo de MFD - Como trabalha a compactao dos Arquivos
Introduo
Desde de 2000 a Daruma se preocupa em demonstrar aos nossos clientes as
facilidades e as tecnologias que so usadas em nossos produtos de forma transparente,
sendo, assim aps estudos realizados por paceiros em potencial ligados a rea de
Desenvolvimento Daruma foi criado a nossa MFD que significa Memria Fita Detalhe.
A MFD, ou seja, Memria Fita Detalhe o local aonde ele armazena todas as
informaes Fiscais dentro de uma Memria de 128MB ou maior dependendo da
disponibilidade requisita, com Compactao de arquivos demonstrando ao usurio final
anos de recolhimento de informaes e por sua vez o resgate de informaes. Devido a
essa Tecnologia inovadora foi eliminada a segunda-via do cupom fiscal, reduzindo os
gastos com o armazenamento de bobinas e sendo registrados os dados e armazenado
de forma organizada as informaes dentro da MFD aonde em qualquer momento o
usurio pode obtar por resgatar as informaes.
Aps estudos realizados por um grupo de desenvolvedores, especialistas em
algortimos de compactao de dados e segurana de dados, foi desenvolvida a nossa
MFD aonde temos a melhor compactao de dados no mercado de forma simples,
'compacta' e segura garantindo a integridade das informaes armazendas na MFD.
Muitas pessoas perguntam como realizada a compactao nos arquivos enviados
para nossas impressoras trmicas com a tecnologia MFD e abaixo demonstrado como
realizar testes e como funciona a Ultra-Compactao das informaes dentro da MFD.
Quais Impressoras Daruma possuem a tecnologia MFD?
FS600;
FS2100T.
Como compactado os dados em nossa MFD?
A compactao das informaes so realizadas de 3 formas, aonde as
informaes gravadas so verificadas em NMERICO, LETRAS e
ALFANMERICO, desta forma a impressora verifica essas informaes e faz a
criptografia e a compactao das informaes.
A MFD possui uma tecnologia aonde foi desenvolvido um Dicionrio de
dados que reduz o consumo de MFD que passa para a impressora que essa
informao de dados j existe reduzindo o nmero de caracteres salvos na MFD,
conforme a explicao a seguir.
Exemplo de itens emitidos.:
Refrigerante Light;
Refrigerante Zero;
Refrigerante.
Exemplo do funcionamento da compactao.:
Refrigerante, Light, Zero.
Ou seja, no ir ter duplicidade de informao evitando o super-lotamento.
Para a realizao de teste de consumo de MFD, acesso o link.
Daruma 32 Framework 215
Daruma Automao
1.8.7.33.1 Daruma_Framework_Teste_Consumo_MFD (ndice 6031
Para realizar os testes no Framework, voc necessita ter a Daruma32.dll e algum
exemplo Framework desenvolvido na Linguagem desejada. Estaremos utilizando
abaixo o exemplo em Delphi segue as imagens abaixo:
Para a 'down-load' do aplicativo Daruma Framework, junto a ltima verso da
nossa DLL (Verso Delphi 7.0) voc necessita acessar o link:
http://www.desenvolvedoresdaruma.com.br/home/downloads/Daruma32_Delphi
_Executavel.exe
Impressoras Fiscais -> Metodos Exclusivos para MFD ->
Daruma_Framework_Teste_Consumo_MFD
Aps localizado a funo iremos iniciar os Testes, como segue a imagem abaixo:
Daruma Framework 216
Daruma Automao
Letras Aleatorias da Descrio do Item: Descreve utilizando a combinao de
A->Z as descries dos itens a serem utilizados na impressora fiscal trmica
realizando uma combinao entre as letras tendo como principal objetivo,
mostrar ao usurio que sempre que uma descrio se repetir no ir consumir o
mximo da MFD.
Codigo do Item Aleatorio: Cdigo do Item a ser passado, mesmo intuito da
'Descrio do Item', porm utilizando a combinao entre os nmeros de 0->9,
aonde os cdigos sero formados para o teste de forma a nunca repetir um
cdigo, exigindo dessa maneira o mximo da compactao da MFD.
Quantidade de Letras Aleatorias: Informa a quantidade de letras aleatrias a
serem utilizados no teste, para demonstrar ao usurio que mesmo utilizando
diversas quantidades haver de forma inteligente a compactao dos dados na
MFD.
Quantidade de Digitos no Codigo: Informa a quantidade de Cdigos a serem
utilizados no teste, para demonstrar ao usurio que mesmo utilizando diversas
quantidades haver de forma inteligente a compactao dos dados na MFD.
Quantos itens voc deseja em cada Cupom: Informa a quantidade de itens a
serem impressoras no Cupom Fiscal de teste.
Quantos cupons voc deseja: Informa a quantidade de cupons a serem
impressos na impressora trmica.
Perguntar Impressora Ligada(item): Pergunta se a impressora est ligada
para a execuo do teste.
Perguntar SubTotal(item): Pergunta o SubTotal dos itens a serem impressos
Perguntar GT(Cupom): Pergunta o GT(Grande Total) dos cupons a serem
impressos
Perguntar Status Cupom(Cupom): Pergunta o 'Status' do cupom a serem
impressos
Daruma 32 Framework 217
Daruma Automao
Imprimir Cupom(s): Boto inicial do teste, aonde sero realizados os
procedimentos descritos e configurados pelo usurio acima, esse processo pode
demorar dependendo do nmero de descrio passado pelo usurio.
Limpar List Box: Apaga os 'Status de Envio' registrado no processo de teste.
Limpar Logs: Apaga os Log's das operaes realizadas.
Reenviar Log: Realiza o re-envio do log solicitado pelas operaes, isso faz com
que repita os mesmos cupons impressos anteriormente.
Recalcular: Nessa opo importante, voc ir descobrir na real o quanto sua
MFD consumiu durante a realizao dos testes, demonstrando o sistema de
Compactao desenvolvido pela Daruma aonde o cliente final estar satisfeito ao
saber que no precisar realizar trocas de MFD durante um curto perodo de
tempo.
Ao Imprimir Cupom voc ir percebe que a impressora ir imprimir diversas
linhas testando as Strings passadas na tela acima, ao final dos testes uma
mensagem de sucesso ir aparecer. Para Cacular o quanto foi usado somente
apertar o boto Recalcular e voc ver o quanto em percentagem a MFD
consumiu no teste.
Qualquer dvida favor entrar em contato com o Suporte ao Desenvolvedor por
um de nossos canais listados a seguir:
Ligao gratuita via internet
Skype: suporte_daruma
Skype: suporte_desenvolvedores_daruma
Skype: desenvolvedores_suporte_daruma
Skype: daruma_suporte_alexandre
Skype: claudenir_andrade
Por email
suporte@daruma.com.br
suporte.desenvolvedores@daruma.com.br
desenvolvedores.suporte@daruma.com.br
suporte.alexandre@daruma.com.br
Por telefone
Desenvolvedores: 0800 770 3320
1.8.8 Mtodos Exclusivos para a Impressora MFD Bilhete de Passagem
1.8.8.1 Mtodo Daruma_FIB_AbreBilhetePassagem(ndice 2000)
Definio do Mtodo:
Abre o bilhete de passagem.
Parmetros do Mtodo: (12 Parretros).
1. Percurso: String at 39 caracteres com percurso da viagem.
Daruma Framework 218
Daruma Automao
2. Origem: String com at 34 caracteres, com a cidade de origem(localidade de embarque).
3. Destino: String com at 34 caracteres, com a cidade de destino(localidade de destino).
4. UF Destino: String com 2 caracteres, do estado de destino.
5. Categoria: String com 1 carctere. Sendo: (1->interestadual, 2->intermunicipal e 3->internacional).
6. Modalidade: String com 1 cartere. Sendo: (1->rodovirio, 2->ferrovirio e 3->hidrovirio).
7. Plataforma: String com at 4 carteres, com a descrio da plataforma.
8. Poltrona: String com at 4 carteres, com o nmero da poltrona.
Data Hora Embarque: String com 14 carteres, com a data seguida da hora de embarque.
Observao! no use separadores, o modelo a ser passado : DDMMAAAA hhmmss, tudo junto sem
espao.
9. Pretadora: String com at 48 caracteres, com o nome da empresa pratadora do servio.
10. RG Passegeiro: String com at 29 caracteres, com o nmero de identidade do passageiro (opcional).
11. Nome Passageiro: String com at 30 caracteres, com o nome do passageiro (opcional).
12. Endereo Passageiro: String com at 79 caracteres, com o endereo do passageiro (opcional).
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 foi executado, 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_Percurso As String
Dim Str_Origem As String
Dim Str_Destino As String
Dim Str_UF As String
Dim Str_Categoria As String
Dim Str_Modalidade As String
Dim Str_Plataforma As String
Dim Str_Poltrona As String
Dim Str_DataHora As String
Dim Str_Prestadora As String
Dim Str_RG_Passageiro As String
Dim Str_Nome_Passageiro As String
Dim Str_Endereco_Passageiro As String
Str_Percurso = "Taubate Foz do Iguacu"
Str_Origem = "Taubate"
Str_Destino = "Foz do Iguacu "
Str_UF = "PR"
Str_Categoria = "1"
Str_Modalidade = "2"
Str_Plataforma = "PT14"
Str_Poltrona = "13C"
Str_DataHora = "25112005190000"
Str_Prestadora = "Itapemirim"
Str_RG_Passageiro = ""
Str_Nome_Passageiro = ""
Str_Endereco_Passageiro = ""
Int_Retorno = Daruma_FIB_AbreBilhetePassagem(Str_Origem, Str_Destino, Str_UF, Str_Percurso,
Str_Prestadora, _
Str_Plataforma, Str_Poltrona, Str_Modalidade, Str_Categoria, _
Str_DataHora, Str_RG_Passageiro, Str_Nome_Passageiro,
Str_Endereco_Passageiro)
Exemplo em Delphi 7.0:
Var
Str_Percurso: String;
Str_Origem: String;
Str_Destino: String;
Str_UF:String;
Str_Categoria: String;
Daruma 32 Framework 219
Daruma Automao
Str_Modalidade: String;
Str_Plataforma: String;
Str_Poltrona: String;
Str_DataHora: String;
Str_Prestadora: String;
Str_RG_Passageiro: String;
Str_Nome_Passageiro: String;
Str_Endereco_Passageiro: String;
begin
Str_Percurso:= 'Taubate Foz do Iguacu';
Str_Origem:= 'Taubate';
Str_Destino:= 'Foz do Iguacu';
Str_UF:= 'PR';
Str_Categoria:= '1';
Str_Modalidade:= '2';
Str_Plataforma:= 'PT14';
Str_Poltrona:= '13C';
Str_DataHora:= '25112005190000';
Str_Prestadora:= 'Itapemirim';
Str_RG_Passageiro:= '';
Str_Nome_Passageiro:= '';
Str_Endereco_Passageiro:= '';
Int_Retorno:= Daruma_FIB_AbreBilhetePassagem (pchar(Str_Origem), pchar(Str_Destino),
pchar(Str_UF), pchar(Str_Percurso), pchar(Str_Prestadora), pchar(Str_Plataforma), pchar(Str_Poltrona),
pchar(Str_Modalidade), pchar(Str_Categoria), pchar(Str_DataHora), pchar(Str_RG_Passageiro),
pchar(Str_Nome_Passageiro), pchar(Str_Endereco_Passageiro));
1.8.8.2 Mtodo Daruma_FIB_VendeItem(ndice 2001)
Definio do Mtodo:
Vende bilhete de passagem .
Parmetros do Mtodo: (6 Parretros).
1. Descrio: String at 21 caracteres com a descrio do produto.
2. Alquota: 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).
3. ValorUnitrio: String at 8 dgitos para valor unitrio.
4. Acrscimo Desconto: Indica se haver acrscimo ou desconto no cupom. 'A' para acrscimo e 'D'
para desconto.
5. Tipo Acrscimo Desconto: Indica se o acrscimo ou desconto por valor ou por percentual. '$' para
desconto por valor e '%' para percentual.
6. Valor Acrscimo Desconto: String com no mximo 11 dgitos para acrscimo ou desconto por valor e
4 dgitos para acrscimo ou desconto por percentual.
Observaes:
- O valor do desconto nunca poder ser igual ou maior do que o valor do item.
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 foi executado, 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 As String
Dim Str_Situacao_Tributaria As String
Dim Str_Valor As String
Dim Str_Acrescimo_Desconto As String
Dim Str_Tipo_Acrescimo_Desconto As String
Daruma Framework 220
Daruma Automao
Dim Str_Valor_Acrescimo_Desconto As String
Str_Descricao = "Bagagem"
Str_Situacao_Tributaria = "II"
Str_Valor = "5,00"
Str_Acrescimo_Desconto = "D"
Str_Tipo_Acrescimo_Desconto = "$"
Str_Valor_Acrescimo_Desconto = "0,10"
Int_Retorno = Daruma_FIB_VendeItem(Str_Descricao, Str_Situacao_Tributaria, Str_Valor,
Str_Acrescimo_Desconto, _
Str_Tipo_Acrescimo_Desconto, Str_Valor_Acrescimo_Desconto)
Exemplo em Delphi 7.0:
Var
Str_Descricao: String;
Str_Situacao_Tributaria: String;
Str_Valor:String;
Str_Acrescimo_Desconto: String;
Str_Tipo_Acrescimo_Desconto: String;
Str_Valor_Acrescimo_Desconto: String;
begin
Str_Descricao:= 'Bagagem';
Str_Situacao_Tributaria:= 'II';
Str_Valor:= '5,00';
Str_Acrescimo_Desconto:= 'D';
Str_Tipo_Acrescimo_Desconto:= '$';
Str_Valor_Acrescimo_Desconto:= '0,10';
Int_Retorno:= Daruma_FIB_VendeItem(pchar(Str_Descricao), pchar(Str_Situacao_Tributaria),
pchar(Str_Valor), pchar(Str_Acrescimo_Desconto), pchar(Str_Tipo_Acrescimo_Desconto),
pchar(Str_Valor_Acrescimo_Desconto));
1.8.8.3 Mtodo Daruma_FIB_UfOrigem(ndice 0000)
Definio do Mtodo:
Programao da UF Origem do prximo Cupom Fiscal Bilhete de Passagem.
Parmetros do Mtodo: (1 Parmetro).
1. UFOrigem: String at 02 caracteres com o estado de origem da emisso do Bilhete passagem.
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 foi executado, 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 pode ser executado, antes da abertura do Bilhete.
- Este mtodo tem validade, somente para a impresso de um Bilhete, voltando ao default que a
impresso do estado que est gravado no ECF.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Uf_Origem As String
Str_Uf_Origem = "RJ"
Int_Retorno = Daruma_FIB_UfOrigem(Str_Uf_Origem)
Daruma 32 Framework 221
Daruma Automao
Exemplo em Delphi 7.0:
Var
Str_Uf_Origem: String;
begin
Str_Uf_Origem:= 'RJ';
Int_Retorno := Daruma_FIB_UfOrigem(pchar(Str_Uf_Origem));
Daruma_Analisa_Retorno();
1.8.9 Mtodos Exclusivos PAF
1.8.9.1 Menu Fiscal
O PAF-ECF deve, salvo quando da execuo de comando de impresso de documento, em todas as suas
telas, conter uma caixa de comando ou tecla de funo identificada "MENU FISCAL", sem recursos para
restrio de acesso, contendo categorias com as seguintes identificaes e funes, exceto se a funo no
for disponibilizada pelo software bsico do ECF, hiptese em que dever apresentar a mensagem "Funo
no suportada pelo modelo de ECF utilizado":
Daruma Framework 222
Daruma Automao
Daruma 32 Framework 223
Daruma Automao
1.8.9.2 Registro Tipo R01 R07
O conjunto de registros que compem o arquivo obedecer a ordem indicada no campo "Tipo de Registro"
da tabela abaixo, e sero classificados de acordo com o campo "Classificao" da referida tabela.
1.8.9.2.1 Registro Tipo R01
Daruma Framework 224
Daruma Automao
1.8.9.2.2 Registro Tipo R02
As Informaes para atender o Registro TIPO R02, necessrio capturar as informaes do ECF, logo aps a
emisso da ReduoZ utilizando o Mtodo Daruma_FIMFD_RetornaInformao com o ndice 140, tamanho
1164 (Verificartabela), aps obter as informaes armazenar os dados no Banco de Dados do Aplicativo PAF-
ECF. Ex: Para obter o Nmero do CRZ, ler da posio 928 a 931 a string de 1164 bytes retornada.
Daruma 32 Framework 225
Daruma Automao
1.8.9.2.3 Registro Tipo R03
Daruma Framework 226
Daruma Automao
Obs: Tabela de Cdigos de Totalizadores Parciais Item7 clique.
1.8.9.2.4 Registro Tipo R04
Daruma 32 Framework 227
Daruma Automao
Daruma Framework 228
Daruma Automao
1.8.9.2.5 Registro Tipo R05
Daruma 32 Framework 229
Daruma Automao
Daruma Framework 230
Daruma Automao
1.8.9.2.6 Registro Tipo R06
TABELA DE SMBOLOS DOS DEMAIS DOCUMENTOS EMITIDOS PELO ECF
Campo 10
Daruma 32 Framework 231
Daruma Automao
Daruma Framework 232
Daruma Automao
1.8.9.2.7 Registro Tipo R07
1.8.9.2.8 Registro Tipo EAD
Daruma 32 Framework 233
Daruma Automao
Para entender melhor como funciona a criao de sua chave privada, voc poder baixar o STK RSA
com a Daruma32.dll em nosso site exclusivo para o
desenvolvedor atravs do link: DesenvolvedoresDaruma
1.8.9.2.9 Tabela de Cdigos de Totalizadores Parciais
1.8.9.2.10 Siglas Documentos
Daruma Framework 234
Daruma Automao
Daruma 32 Framework 235
Daruma Automao
1.8.9.3 Daruma_RSA_CarregaChavePrivada_Arquivo
Definio do Mtodo:
Carrega a Chave Privada na Impressora MFD verso superior 01.05.00.
Para entender melhor como funciona a criao de sua chave privada, voc poder baixar o STK RSA com
a Daruma32.dll em nosso site exclusivo para o desenvolvedor atravs do link: DesenvolvedoresDaruma
Parmetros do Mtodo:
1. CaminhoArquivo: String com o caminho completo + nome do arquivo que contm a chave privada a
ser carregada na impressora. Ex: "c:\daruma\rsa\chaveprivada.key"
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 foi executado, 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_PathArquivo as string
Str_PathArquivo = "c:\daruma\rsa\chaveprivada.key"
Int_Retorno = Daruma_RSA_CarregaChavePrivada_Arquivo(Str_PathArquivo)
Exemplo em Delphi 7.0:
var
Str_PathArquivo: String;
begin
Str_PathArquivo:= 'c:\daruma\rsa\chaveprivada.key';
Int_Retorno := Daruma_RSA_CarregaChavePrivada_Arquivo(Str_PathArquivo);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
1.8.9.4 Daruma_RSA_RetornaChavePublica
Definio do Mtodo:
Retorna a Chave Pblica, atravs de 2(duas) variveis por referncia, uma para obter o valor de .n.
(Mdulo pblico) e outra para armazenar o valor de .e. (Expoente Pblico).
Parmetros do Mtodo:
String: com 257(duzento e cinquenta e sete) posies onde a dll ir retornar o .e. (Expoente Pblico).
String: com 257(duzento e cinquenta e sete) posies onde a dll ir retornar o .n. (Mdulo Pblico).
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 foi executado, 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_N As String
Dim Str_E As String
Str_N = Space(257)
Str_E = Space(257)
Int_Retorno = Daruma_RSA_RetornaChavePublica(Str_N,Str_E)
TX_E.Text = Str_E
Daruma Framework 236
Daruma Automao
TX_N.Text = Str_N
Exemplo em Delphi 7.0:
var Str_N: String;
Str_E: String;
begin
SetLength (Str_N,257);
SetLength (Str_E,257);
Int_Retorno := Daruma_RSA_RetornaChavePublica(Str_N,Str_E);
TX_E.Text := Str_E;
TX_N.Text := Str_N;
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.9.5 Daruma_RSA_CodificaInformacao
Definio do Mtodo:
Este mtodo codifica Texto com chave dinmica.
Parmetros do Mtodo:
1. Texto: String com 256 caracteres a ser codificada.
2. Varivel String por referncia com 260 espaos alocados para receber o texto codificado.
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 foi executado, 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_Informao as String
Dim Str_Resultado as String
Str_Informacao = "DARUMA DEVELOPERS COMMUNITY
Str_Resultado = Space(260)
Int_Retorno = Daruma_RSA_CodificaInformacao(Str_Informacao, Str_Resultado);
TX_Resultado.Text = Str_Resultado
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
Str_Resultado : String;
begin
Str_Informacao:= 'DARUMA DEVELOPERS COMMUNITY';
SetLength(Str_Resultado,260);
Int_Retorno := Daruma_RSA_CodificaInformacao(Str_Informacao, Str_Resultado);
TX_Resultado := Str_Resultado;
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
Daruma 32 Framework 237
Daruma Automao
1.8.9.6 Daruma_RSA_DecodificaInformacao
Definio do Mtodo:
Este mtodo decodifica Texto, codificado atravs do mtodo Daruma_RSA_CodificaInformacao.
Parmetros do Mtodo:
1. Texto: String com 256 caracteres a ser decodificada.
2. Varivel String por referncia com 260 espaos alocados para receber o texto codificado.
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 foi executado, 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_Informao as String
Dim Str_Resultado as String
Str_Informacao =
"7F4A495716221CA7E5A93EF074BDB69C0F7A8B0FB978A15896997EA1E8579A464043E315391C3CD7E5
6A2205C8A4AAA338129D876BE0920C73B6D2EB0C660A445661AB9353ABF953024739B24F18CD6CDD9
A54DE2FEDAA12D09B25A2326E29C98EB0C88C13E690D5306FEC3C814D1F32FC48E8BF17EE2EF98E9EE
F159ED778FD"
Str_Resultado = Space(260)
Int_Retorno = Daruma_RSA_DecodificaInformacao(Str_Informacao, Str_Resultado);
TX_Resultado.Text = Str_Resultado
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
Str_Resultado : String;
begin
Str_Informacao:=
'7F4A495716221CA7E5A93EF074BDB69C0F7A8B0FB978A15896997EA1E8579A464043E315391C3CD7E5
6A2205C8A4AAA338129D876BE0920C73B6D2EB0C660A445661AB9353
ABF953024739B24F18CD6CDD9A54DE2FEDAA12D09B25A2326E29C98EB0C88C13E690D5306FEC3C814
D1F32FC48E8BF17EE2EF98E9EEF159ED778FD';
SetLength(Str_Resultado,260);
Int_Retorno := Daruma_RSA_DecodificaInformacao(Str_Informacao, Str_Resultado);
TX_Resultado := Str_Resultado;
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.9.7 Daruma_RSA_CriarAssinatura
Definio do Mtodo:
Este mtodo l o documento informado e retorna o MD5 e a Assinatura Digital.
Parmetros do Mtodo:
1. CaminhoArquivo: String com o caminho completo + nome do arquivo a ser assinado. Ex:
"c:\daruma\rsa\daruma.txt"
2. Varivel String por referncia com 260 espaos alocados para receber o MD5.
3. Varivel String por referncia com 260 espaos alocados para receber Assinatura Digital.
Retornos do Mtodo:
0: Erro de comunicao, no foi possvel enviar o mtodo.
Daruma Framework 238
Daruma Automao
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo foi executado, 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_PathArquivo as String
Dim Str_Retorna_MD5 as String
Dim Str_Retorna_AssinaturaDigital
Str_PathArquivo = "c:\daruma\rsa\daruma.txt"
Str_Retorna_MD5 = Space(260)
Str_Retorna_AssinaturaDigital = Space(260)
Int_Retorno = Daruma_RSA_CriarAssinatura(Str_PathArquivo, Str_Retorna_MD5,
Str_Retorna_AssinaturaDigital)
TX_MD5.Text = Str_Retorna_MD5
TX_AssinaturaDigital = Str_Retorna_AssinaturaDigital
Exemplo em Delphi 7.0:
var
Str_PathArquivo: String;
Str_Retorna_MD5 : String;
Str_Retorna_AssinaturaDigital: String;
begin
Str_PathArquivo:= 'c:\daruma\rsa\daruma.txt';
SetLength(Str_Retorna_MD5,260);
SetLength(Str_Retorna_AssinaturaDigital,260);
Int_Retorno := Daruma_RSA_CriarAssinatura(Str_PathArquivo, Str_Retorna_MD5,
Str_Retorna_AssinaturaDigital);
TX_MD5.text := Str_Retorna_MD5;
TX_AssinaturaDigital := Str_Retorna_AssinaturaDigital;
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.9.8 Daruma_RSA_CriarAssinaturaOnline
Definio do Mtodo:
Este mtodo l o documento informado e retorna a Assinatura Digital, sem a necessidade da Chave
Privada estar carregada na impressora.
Parmetros do Mtodo:
1. CaminhoArquivo: String com o caminho completo + nome do arquivo a ser assinado. Ex:
"c:\daruma\rsa\daruma.txt"xt"
2. CaminhoArquivoChave: String com o caminho completo + nome do arquivo que contm a chave
privada a ser carregada na impressora. Ex: "c:\daruma\rsa\ChavePrivada.txt"
3. Varivel String por referncia com 260 espaos alocados para receber Assinatura Digital.
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 foi executado, 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:
Mtodo Compatvel somente para impressoras FS700M e FS700H.
Exemplos:
Exemplo em Visual Basic 6.0:
Daruma 32 Framework 239
Daruma Automao
Dim Str_PathArquivo as String
Dim Str_PathChave as String
Dim Str_Retorna_AssinaturaDigital
Str_PathArquivo = "c:\daruma\rsa\daruma.txt"
Str_PathAChave = "c:\daruma\rsa\ChavePrivada.txt"
Str_Retorna_AssinaturaDigital = Space(260)
Int_Retorno = Daruma_RSA_CriarAssinaturaOnline(Str_PathArquivo, Str_PathChave,
Str_Retorna_AssinaturaDigital)
TX_AssinaturaDigital = Str_Retorna_AssinaturaDigital
Exemplo em Delphi 7.0:
var
Str_PathArquivo: String;
Str_PathChave : String;
Str_Retorna_AssinaturaDigital: String;
begin
Str_PathArquivo:= 'c:\daruma\rsa\daruma.txt';
Str_PathChave:= 'c:\daruma\rsa\ChavePrivada.txt';
SetLength(Str_Retorna_AssinaturaDigital,260);
Int_Retorno := Daruma_RSA_CriarAssinaturaOnline(Str_PathArquivo, Str_PathChave,
Str_Retorna_AssinaturaDigital);
TX_AssinaturaDigital := Str_Retorna_AssinaturaDigital;
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.9.9 Daruma_FIMFD_RetornaInformacao (ndice 6000)
Definio do Mtodo:
Este mtodo possibilita retornar do ECF mais de 170 informaes diferentes. A idia deste mtodo que
ao invs de termos 170 mtodos, teremos apenas
um nico mtodo. Passamos o ndice da informao desejada e obtemos a informao.
Parmetros do Mtodo:
Indice: Varivel String contendo o valor do ndice com at 2 caracteres.Variveis String por referncia
para receber as informacoes solicitadas.
Tamanho: Varivel por referncai com o tamanho de espaos alocados para o retorno da informao.
Exemplo:
Status atual do Cupom Fiscal ou No Fiscal - Estado do CF / CNF, utilizar o ndice 57 - Tamanho 1, o
retorno do mtodo ser:
0 = fechado
1 = CF em registro de item
2 = CF em totalizao
3 = CF em pagamento
4 = CF em finalizao
5 = CNF em registro de item
6 = CNF em totalizao
7 = CNF em pagamento
8 = CNF em finalizao
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 foi executado, 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 Framework 240
Daruma Automao
Dim Str_Indice As String
Dim Str_Valor As String
Dim Int_Tamanho As Integer
Str_Indice = TX_Indice.Text
Str_Valor = TX_Valor.Text
Str_Valor = Space(Int_Tamanho)
TX_Valor.Text = ""
TX_Valor.Text = Str_Valor
Int_Retorno = Daruma_FIMFD_RetornaInformacao(Str_Indice, Str_Valor)
Exemplo em Delphi 7.0:
var Str_Indice: String;
Str_Valor: String;
Int_Tamanho: Integer;
begin
Int_Tamanho := StrToInt(Tx_Tamanho.Text) + 1;
Str_Indice := Tx_Indice.Text;
setlength( Str_valor, Int_Tamanho);
Int_Retorno := Daruma_FIMFD_RetornaInformacao( Str_Indice, Str_Valor );
Memo_Valor.Lines.Clear;
Memo_Valor.Lines.Append(Str_Valor);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
Daruma 32 Framework 241
Daruma Automao
Daruma Framework 242
Daruma Automao
1.8.9.10 Daruma_FIMFD_GTCodificado(ndice6083)
Definio do Mtodo:
Retorna o Grande Total da Impressora codificado.
Parmetros do Mtodo:
String: com 50(cinquenta) posies onde a dll ir retornar o GT(Grande Total) da impressora.a relatrio
gerencial programado em sua impressora.
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 foi executado, 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_Informacao as String
Str_Informacao = Space(50)
Int_Retorno = Daruma_FIMFD_GTCodificado(Str_Informacao);
TX_Retorno.text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength(Str_Informacao,50);
Int_Retorno := Daruma_FIMFD_GTCodificado(Str_Informacao);
TX_Retorno.text := Str_Informacao;
end;
1.8.9.11 Daruma_FIMFD_Verifica_GTCodificado(ndice 6085)
Definio do Mtodo:
Esse mtodo faz a verificao do Grande Total Codificado da impressora.
Parmetros da Funo:
GTCodificado: Varivel String contendo o valor do GTCodificado atravs da funo
Daruma_FIMFD_GTCodificado com at 50 caracteres.
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 foi executado, 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_GTCodificado As String
Str_GTCodificado = "4A945762C23686CFEAEAC3A5E1FBCC3C3CCBE9"
Int_Retorno = Daruma_FIMFD_Verifica_GTCodificado(Str_GTCodificado)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
Daruma 32 Framework 243
Daruma Automao
var
Str_GTCodificado: String;
begin
Str_GTCodificado := '4A945762C23686CFEAEAC3A5E1FBCC3C3CCBE9';
Int_Retorno := Daruma_FIMFD_Verifica_GTCodificado(Str_GTCodificado);
Daruma_Analisa_Retorno();
1.8.9.12 Daruma_FIMFD_NumeroSerialCodificado(ndice6084)
Definio do Mtodo:
Retorna o Nmero de Srie da Impressora codificado.
Parmetros do Mtodo:
String: com 60(sessenta) posies onde a dll ir retornar o Nmero de Srie da impressora.
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 foi executado, 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_Informacao as String
Str_Informacao = Space(60)
Int_Retorno = Daruma_FIMFD_NumeroSerialCodificado(Str_Informacao);
TX_Retorno.text = Str_Informacao
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength(Str_Informacao,60);
Int_Retorno := Daruma_FIMFD_NumeroSerialCodificado(Str_Informacao);
TX_Retorno.text := Str_Informacao;
end;
1.8.9.13 Daruma_FIMFD_Verifica_NumeroSerialCodificado(ndice6086)
Definio do Mtodo:
Esse mtodo faz a verificao do Nmero de srie Codificado da impressora.
Parmetros da Funo:
NumeroSerial: Varivel String contendo o valor do Nmero de Srie atravs da funo
Daruma_FIMFD_NumeroSerialCoficado com at 60 caracteres.
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 foi executado, 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_NumeroSerialCodificado As String
Daruma Framework 244
Daruma Automao
Str_NumeroSerialCodificado =
"2269063124D0266FB2B7637DE8D6A4E1EB24FF9F09A48C2DE1B640C0ED9D"
Int_Retorno = Daruma_FIMFD_Verifica_NumeroSerialCodificado(Str_NumeroSerialCodificado)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_NumeroSerialCodificado: String;
begin
Str_NumeroSerialCodificado :=
'2269063124D0266FB2B7637DE8D6A4E1EB24FF9F09A48C2DE1B640C0ED9D';
Int_Retorno := Daruma_FIMFD_Verifica_NumeroSerialCodificado(Str_NumeroSerialCodificado);
Daruma_Analisa_Retorno();
1.8.9.14 Daruma_FIMFD_CodigoModeloFiscal
Definio do Mtodo:
Este mtodo permite que voc verifique o cdigo de identificao do ECF, conforme a tabela nacional
disponibilizada pela SEFAZ.
Parmetros do Mtodo:
String: com 6(seis) posies onde a dll ir retornar o cdigo da impressora conectada.
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 foi executado, 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_FIMFD_CodigoModeloFiscal(Str_Informacao)
TX_Retorno.Text = Str_Informacao
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_Informacao: String;
begin
SetLength (Str_Informacao,6);
Int_Retorno := Daruma_FIMFD_CodigoModeloFiscal(Str_Informacao);
Edit1.Lines.Text := (Str_Informacao);
end;
Daruma 32 Framework 245
Daruma Automao
1.8.9.15 Daruma_FIMFD_GerarAtoCotepePafData(6042)
Definio do Mtodo:
Este mtodo ir gerar o Arq. MFD por intervalod de data conforme o leiaute estabelecido no Ato
COTEPE/ICMS 17/04 para atener ao requisito VII Item 6 do PAF-ECF, o arquivo ser gerado com a
nomenclatura ATOCOTEPE_DARUMA.TXT.
Parmetros do Mtodo:
1. Data Inicial: String com a Data inicial no formato ddmmaaaa.
2. Data Final: String com a Data final no formato ddmmaaaa.
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 foi executado, 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:
- Mtodo compatvel somente para impressoras trmicas FS600, FS700 e FS2100T.
- Configurar o diretrio onde os arquivos sero gerados, basta utilizar o mtodo
Daruma_Registry_AlterarRegistry.
- Configurar sinal sonoro que ir avisar cada arquivo gerado, basta utilizar o mtodo
Daruma_Registry_AlterarRegistry.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_DataInicial As String
Dim Str_DataFinal As String
Str_DataInicial = "01092009"
Str_DataFinal = "30092009"
{Configura o diretrio onde sero gerados os arquivos}
Daruma Framework 246
Daruma Automao
Int_Retorno = Daruma_Registry_AlterarRegistry("AtoCotepe", "Path", "C:\Daruma\")
{Configura sinal sonoro a cada arquivo gerado}
Int_Retorno = Daruma_Registry_AlterarRegistry("AtoCotepe", "Beep", "1")
{Executa o mtodo que ir gerar os arquivos}
Int_Retorno = Daruma_FIMFD_GerarAtoCotepePAFData(Str_DataInicial, Str_DataFinal)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_DataInicial, Str_DataFinal: String;
begin
Str_DataInicial := Trim(01092009);
Str_DataFinal := Trim(30092009);
{Configura o diretrio onde sero gerados os arquivos}
Int_Retorno := Daruma_Registry_AlterarRegistry('AtoCotepe', 'Path', 'C:\Daruma\');
{Configura sinal sonoro a cada arquivo gerado}
Int_Retorno := Daruma_Registry_AlterarRegistry('AtoCotepe', 'Beep', '1');
{Executa o mtodo que ir gerar os arquivos}
Int_Retorno:= Daruma_FIMFD_GerarAtoCotepePAFData(Str_DataInicial, Str_DataFinal);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.8.9.16 Daruma_FIMFD_GerarAtoCotepePafCoo(6043)
Definio do Mtodo:
Este mtodo ir gerar o Arq. MFD por intervalo COO conforme o leiaute estabelecido no Ato COTEPE/ICMS
17/04 para atener ao requisito VII Item 6 do PAF-ECF, o arquivo ser gerado com a nomenclatura
ATOCOTEPE_DARUMA.TXT.
Parmetros do Mtodo:
1. COO Inicial: String com a COO inicial no formato 999999.
2. COO Final: String com a COO final no formato 999999.
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 foi executado, 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:
- Mtodo compatvel somente para impressoras trmicas FS600, FS700 e FS2100T.
- Configurar o diretrio onde os arquivos sero gerados, basta utilizar o mtodo
Daruma_Registry_AlterarRegistry.
- Configurar sinal sonoro que ir avisar cada arquivo gerado, basta utilizar o mtodo
Daruma_Registry_AlterarRegistry.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_CooInicial As String
Dim Str_CooFinal As String
Daruma 32 Framework 247
Daruma Automao
Str_CooInicial = "999999"
Str_CooFinal = "999999"
{Configura o diretrio onde sero gerados os arquivos}
Int_Retorno = Daruma_Registry_AlterarRegistry("AtoCotepe", "Path", "C:\Daruma\")
{Configura sinal sonoro a cada arquivo gerado}
Int_Retorno = Daruma_Registry_AlterarRegistry("AtoCotepe", "Beep", "1")
{Executa o mtodo que ir gerar os arquivos}
Int_Retorno = Daruma_FIMFD_GerarAtoCotepePAFCoo(Str_CooInicial, Str_CooFinal)
Daruma_MostrarRetorno
Exemplo em Delphi 7.0:
var
Str_CooInicial, Str_CooFinal: String;
begin
Str_CooInicial := Trim(999999);
Str_CooFinal := Trim(999999);
{Configura o diretrio onde sero gerados os arquivos}
Int_Retorno := Daruma_Registry_AlterarRegistry('AtoCotepe', 'Path', 'C:\Daruma\');
{Configura sinal sonoro a cada arquivo gerado}
Int_Retorno := Daruma_Registry_AlterarRegistry('AtoCotepe', 'Beep', '1');
{Executa o mtodo que ir gerar os arquivos}
Int_Retorno:= Daruma_FIMFD_GerarAtoCotepePAFCoo(Str_CooInicial, Str_CooFinal);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.9 Mtodos Exclusivos para a Impressora FS2000
1.9.1 Daruma_Registry_FS2000_CupomAdicional(ndice 35)
Definio do Mtodo:
Programa a Impressora FS2000 para poder emitir um Cupom Adicional
Parmetros do Mtodo: (1 Parmetro)
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 foi executado, 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 sempre 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:
Daruma Framework 248
Daruma Automao
begin
Int_Retorno := Daruma_Registry_FS2000_CupomAdicional('1');
1.9.2 Daruma_Registry_FS2000_TempoEsperaCheque(ndice 45)
Definio do Mtodo:
Ajusta o tempo de espera para o posicionamento impresso do cheque para a impresso.
Parmetros do Mtodo: (1 Parmetro)
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 foi executado, 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 cheque 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;
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.9.3 Daruma_FI2000_StatusCheque(ndice 5015)
Definio do Mtodo:
Retorna o status Cheque, se o mesmo posicionado para impresso ou no.
Parmetros do Mtodo: (1 Parmetro)
Varivel por refrencia : com 2(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 foi executado, 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)
Daruma 32 Framework 249
Daruma Automao
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.9.4 Daruma_FI2000_ImprimirCheque(ndice 5016)
Definio do Mtodo:
Imprime Cheque na FS2000.
Parmetros do Mtodo: (6 Parmetros)
1. Nmero do Banco: String com 03 caracteres 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, no seguinte formato dd/mm/aaaa.
4. Nome do Favorecido: String com o nome 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 foi executado, 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
Dim Str_Data_de_Emissao As String
Dim Str_Favorecido As String
Dim Str_Valor As String
Dim 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';
Daruma Framework 250
Daruma Automao
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.9.5 Daruma_FI2000_ImprimirVersoCheque(ndice 5017)
Definio do Mtodo:
Imprime Texto no Verso do Cheque na FS2000.
Parmetros do Mtodo: (1 Parmetro)
String: com at (80) caracteres 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 foi executado, 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;
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.9.6 Daruma_FI2000_LiberarCheque(ndice 5008)
Definio do Mtodo:
Libera o Cheque na FS2000.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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:
Daruma 32 Framework 251
Daruma Automao
begin
Int_Retorno := Daruma_FI2000_LiberarCheque();
1.9.7 Daruma_FI2000_LeituraCodigoMICR(ndice 5007)
Definio do Mtodo:
L o MICR(codigo CMC7) na FS2000.
Parmetros do Mtodo:
Leitura MICR: Varivel por refrencia 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 foi executado, 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 a leitura do CMC7 seja possvel h 3(trs) condies:
1)A impressora tem de ter o leitor que opcional.
2)A leitura s possvel ser feita com o cheque posicionado na vertical e com o cdigo de barras
voltado para o lado externo, ou seja para a para o lado direito.
3)Posicione o cheque somente aps o envio do mtodo.
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 mtodo 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));
1.9.8 Daruma_FI2000_CancelarCheque(ndice 5026)
Definio do Mtodo:
Cancela o Mdoto de impresso de cheque na FS2000.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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
Daruma Framework 252
Daruma Automao
Int_Retorno := Daruma_FI2000_CancelarCheque();
1.9.9 Daruma_FI2000_LeituraTabelaCheque(ndice 5011)
Definio do Mtodo:
L a Tabela de cheques armazenada na Impressora.
Parmetros do Mtodo:
Leitura Tabela Cheque: Varivel por referncia 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 foi executado, 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.9.10 Daruma_FI2000_CarregarCheque(ndice 5009)
Definio do Mtodo:
Carrega o Cheque na impressora FS2000 e FS2100T.
Parmetros do Mtodo: (1 Parmetro)
- Arquivo que contm a tabela, fornecido pelo fabricante.
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 foi executado, 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 tabela de cheques j veem carregada de fbrica na impressora.
Observe o modelo da impressora, pois o arquivo com a tabela definido por modelo.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_FI2000_CarregarCheque()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_FI2000_CarregarCheque();
Daruma 32 Framework 253
Daruma Automao
1.9.11 Daruma_FI2000_CorrigirGeometriaCheque(ndice 5010)
Definio do Mtodo:
Corrige a Geometria do Cheque FS2000.
Parmetros do Mtodo: (2 Parmetros)
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 foi executado, 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:
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.9.12 Daruma_FI2000_DescontoSobreItemVendido(ndice 5018)
Definio do Mtodo:
Permite um desconto sobre um item vendido.
Parmetros do Mtodo: (3 Parmetros)
Daruma Framework 254
Daruma Automao
1. Nmero Item: String com o nmero do item a ser concedido o desconto, com no mximo 3 dgitos.
2. Tipo Desconto: 1 (um) carctere indicando a forma do desconto. '$' desconto por valor e '%'
desconto percentual.
3. Valor Desconto: 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 foi executado, 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';
Int_Retorno := Daruma_FI2000_DescontoSobreItemVendido(pchar( Str_Numero_do_Item ), pchar(
Str_Tipo_do_Desconto ), pchar( Str_Valor_do_Desconto ));
1.9.13 Daruma_FI2000_AcrescimosICMSISS(ndice 5021)
Definio do Mtodo:
L da memria da impressora o total de acrscimos ICMS/ISS.
Parmetros do Mtodo:
Acrscimos ICMS: Varivel por referncia com o tamanho de 14 posies para receber os acrscimos em
ICMS.
Acrscimos ISS: Varivel por referncia 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 foi executado, 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
Daruma 32 Framework 255
Daruma Automao
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.9.14 Daruma_FI2000_CancelamentosICMSISS(ndice 5022)
Definio do Mtodo:
L da memria da impressora o total de cancelamentos ICMS/ISS.
Parmetros do Mtodo:
Cancelamentos ICMS: Varivel por referncia com o tamanho de 14 posies para receber os
cancelamentos em ICMS.
Cancelamentos ISS: Varivel por referncia 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 foi executado, 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)
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.9.15 Daruma_FI2000_DescontosICMSISS(ndice 5023)
Definio do Mtodo:
L da memria da impressora o total de descontos ICMS/ISS.
Parmetros do Mtodo:
Descontos ICMS: Varivel por referncia com o tamanho de 14 posies para receber os descontos em
ICMS.
Descontos ISS: Varivel por referncia com o tamanho de 14 posies para receber os descontos em
ISS.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
Daruma Framework 256
Daruma Automao
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo foi executado, 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.9.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 por referncia com 10 posies para receber o tipo do ltimo documento
emitido.
Valor ltimo DOC: Varivel por referncia 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.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo foi executado, 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));
Daruma 32 Framework 257
Daruma Automao
1.9.17 Daruma_FI2000_LeituraIformacaoUltimosCNF(ndice 5025)
Definio do Mtodo:
Retorna o total acumulado dos ltimos CNF programados na impressora.
Parmetros do Mtodo:
Relatrio Gerncial: Varivel por referncia 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 foi executado, 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.9.18 Daruma_FI2000_AbreRelatorioGerencial(ndice 5012)
Definio do Mtodo:
Abre um relatrio gerencial previamente programado na impressora.
Parmetros do Mtodo: (1 Parmetro)
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 foi executado, 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
Daruma Framework 258
Daruma Automao
Exit;
Int_Retorno := Daruma_FI2000_AbreRelatorioGerencial(pchar(Str_Indice_Gerencial));
1.9.19 Daruma_FI2000_CriaRelatorioGerencial(ndice 5013)
Definio do Mtodo:
Permite programar na impressora relatrios gerenciais.
Parmetros do Mtodo: (1 Parmetro)
Cria Relatrio Gerncial: Varivel String com descrio do relatrio gerencial com at (16) caracteres.
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 foi executado, 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');
if Str_Nome_Gerencial = '' Then
Exit;
Int_Retorno := Daruma_FI2000_CriaRelatorioGerencial(Str_Nome_Gerencial);
TX_Retornos_FS2000.Lines.Text := pchar(Str_Nome_Gerencial);
1.9.20 Daruma_FI2000_VerificaRelatorioGerencial(ndice 5014)
Definio do Mtodo:
Retorna as descries dos relatrios programados na impressora.
Parmetros do Mtodo:
Relatrio Gerncial: Varivel por referncia 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 foi executado, 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)
Daruma 32 Framework 259
Daruma Automao
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.9.21 Daruma_FI2000_SegundaViaCNFV(ndice 5019)
Definio do Mtodo:
Permite emitir uma segunda via de um CNFV.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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();
1.9.22 Daruma_FI2000_CancelamentoCNFV(ndice 5020)
Definio do Mtodo:
Permite cancelar um CNFV.
Parmetros do Mtodo: (1 Parmetro)
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 foi executado, 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',
Daruma Framework 260
Daruma Automao
'001');
if Str_COO_CNFV = '' Then
Exit;
Int_Retorno := Daruma_FI2000_CancelamentoCNFV(pchar(Str_COO_CNFV));
1.10 Mtodos Exclusivos para Impressora DUAL
1.10.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: (2 Parmetros)
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.
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.
Se desejar Tabular o Texto utilize a combinao
iRetorno =
Daruma_DUAL_ImprimirTexto("<tb>col1</tb><tb>col2</tb><tb>col3</tb><tb>col4</tb><tb>col5
</tb><tb>col6</tb>","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> Para sinalizar Negrito
<i></i> Para sinalizar Itlico
<s></s> Para sinalizar Sublinhado
<e></e> Para sinalizar Expandido
<c></c> Para sinalizar Condensado
<n></n> Para sinalizar Normal
<l></l> Para Saltar Uma Linha
<sl>NN</sl> Para Saltar Vrias Linhas
<tc>C</tc> Riscar Linha com um carctere Especifico
<ce></ce> Para Centralizar
<dt></dt> Para Imprimir Data Atual
<hr></hr> Para Imprimir Hora Atual
<sp>NN</sp> Inserir NN Espaos em Branco
<sn></sn> Sinal Sonoro, Apitar
<g></g> Abre a Gaveta
<a> Aguardar at o Trmino da Impresso
</a> No Aguardar at o Trmino da Impresso
<tb></tb> Tabulao
<bmp></bmp> Para fazer o UPLoad do Bitmap na Impressora
<< Quando desejar imprimir o carctere "<"
>> Quando desenar imprimir o carctere ">"
<gui></gui> Para acionamento da guilhotina, exclusivo impressora no fiscal trmica
<da></da> Para duplicar a altura do caractere
Daruma 32 Framework 261
Daruma Automao
Tags para Cdigo de Barras:
<ean13>123456789012</ean13>
<ean8>1234567</ean8>
<upc-a>12345678901</upc-a>
<code39>CODE 39</code39>
<code93>CODE 93</code93>
<codabar>CODABAR</codabar>
<msi>123456789</msi>
<code11>12345678901</code11>
<pdf>12345</pdf> Para imprimir o Cdigo de Barraas PDF417
Clique aqui para mais informaes:Daruma_DUAL_ImprimimindoCodigosdeBarras
VejaAquiAlgunsExemplosdeUtilizao
Parmetros
String: com texto que voc 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 default da Chave = "0"
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Texto_Livre As String
Dim Str_Tamanho_Texto As String
If (TX_Texto_Livre = "") Then
MsgBox "Digite um Texto!!"
Exit Sub
End If
Str_Texto_Livre = TX_Texto_Livre.Text
Int_Retorno = Daruma_DUAL_ImprimirTexto(Str_Texto_Livre, "0") 'O segundo parametro ficou = 0,
dessa forma a dll calcula o tamanho do texto
If Int_Retorno = 1 Then
MsgBox "Impressao Concluida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If
End Sub
Exemplo em Delphi 7.0:
var
Str_Texto_Livre: String;
Memo: String;
begin
Memo:= TX_Texto_Livre.Text;
if Memo = '' then //Verifica Existncia de Texto no (Memo)
begin
Application.MessageBox('Digite um Texto...!', 'Daruma Framework', mb_ok + 16);
exit
end;
Str_Texto_Livre:= TX_Texto_Livre.Lines.Text;
Int_Retorno:= Daruma_Dual_ImprimirTexto(Str_Texto_Livre, 0); // 0 Segundo parametro ficou =0,
Daruma Framework 262
Daruma Automao
dessa forma a dll calcula o tamanho do texto
if Int_Retorno = 1 then
Application.MessageBox('Impressao Concluida!!!', 'Daruma Framework', mb_ok + 32)
else
Application.MessageBox('Erro!', 'Daruma Framework', mb_ok + 16);
end;
1.10.2 Daruma_DUAL_ImprimirArquivo (ndice 4008)
Definio do Mtodo:
Imprime arquivo de texto, com at 3000 bytes.
Parmetros do Mtodo: (1 Parmetro)
String: Com o nome e o path de onde est o arquivo.
Retornos do mtodo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
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> Para sinalizar Negrito
<i></i> Para sinalizar Itlico
<s></s> Para sinalizar Sublinhado
<e></e> Para sinalizar Expandido
<c></e> Para sinalizar Condensado
<n></n> Para sinalizar Normal
<l></l> Para Saltar Uma Linha
<sl>NN</sl> Para Saltar Vrias Linhas
<tc>C</tc> Riscar Linha com um carctere Especifico
<ce></ce> Para Centralizar
<dt></dt> Para Imprimir Data Atual
<hr></hr> Para Imprimir Hora Atual
<sp>NN</sp> Inserir NN Espaos em Branco
<sn></sn> Sinal Sonoro, Apitar
<g></g> Abre a Gaveta
<a> Aguardar at o Trmino da Impresso
</a> No Aguardar at o Trmino da Impresso
<tb></tb> Tabulao
<bmp></bmp> Para fazer o UPLoad do Bitmap na Impressora
<< Quando desejar imprimir o carctere "<"
>> Quando desenar imprimir o carctere ">"
<gui></gui> Para acionamento da guilhotina, exclusivo impressora no fiscal trmica
<da></da> Para duplicar a altura do caractere
<pdf></pdf> Para imprimir o Cdigo de Barraas PDF417
VejaAquiAlgunsExemplosdeUtilizao
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 default da Chave = "0"
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
Daruma 32 Framework 263
Daruma Automao
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:
Int_Retorno = Daruma_DUAL_ImprimirArquivo("C:\DarumaFramework.txt")
Exemplo em Delphi 7.0:
var
Str_Path: String;
begin
Str_Path:= InputBox('Daruma Framework','Entre com o Nome do Arquivo a ser
Impresso','C:\DarumaFramework.txt');
If (Str_Path = '') Then
Exit;
Int_Retorno:= Daruma_DUAL_ImprimirArquivo(Str_Path);
if Int_Retorno = 1 then
begin
Application.MessageBox('Configurao Feita com Sucesso!', 'Daruma Framework', mb_ok + 32);
end
else
begin
Application.MessageBox(' Erro!', 'Daruma Framework', mb_ok + 16);
end;
end;
end.
1.10.3 Daruma_DUAL_VerificaSatus (ndice 4002)
Definio do Mtodo
Retorna um Valor Inteiro com o Status da Impressora DUAL
Parmetros do Mtodo:
Nenhum.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
Observaes:
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.
Daruma Framework 264
Daruma Automao
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
Exemplo em Delphi 7.0:
begin
daruma_Retorno:= Daruma_DUAL_VerificaStatus();
if daruma_Retorno = 1 then
TX_Status.Text:= '1(um) - Impressora OK!';
if daruma_Retorno = (-50) then
TX_Status.Text:= '(-50) - Impressora OFF Line!';
if Daruma_Retorno = (-51) then
TX_Status.Text:= '(-51) - Impressora Sem Papel!';
if Daruma_retorno = (-27) then
TX_Status.Text:= '(-27) - Erro Generico!!';
if Daruma_Retorno = (0) then
TX_Status.Text:= '(0) - Impressora Desligada!!';
end;
1.10.4 Daruma_DUAL_VerificaDocumento (ndice 4003)
Definiod do Mtodo:
Retorna um Valor Inteiro que indica se o Documento est posicionado para Autenticar ou no.
Parmetros do Mtodo:
Nenhum.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
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:
Daruma 32 Framework 265
Daruma Automao
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.10.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_DUAL_Autenticar("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_DUAL_Autenticar("1","<dt><hr>Texto","10")
VejaAquiAlgunsExemplosdeUtilizao
Parmetros do Mtodo: (3 Parmetros)
1. Local: 1(um) s no Documento, 0(zero) no Documento e na Bobina.
2. String com 48 caracteres com a Autenticao desejada.
3. Quantos Segundos deseja esperar que o Usuario coloque o Documento.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
Observaes
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.
Daruma Framework 266
Daruma Automao
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.10.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 do Mtodo:
Nenhum.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_DUAL_AcionaGaveta()
Exemplo em Delphi 7.0:
begin
Int_Retorno:= Daruma_DUAL_AcionaGaveta()
end;
1.10.7 Daruma_DUAL_StatusGaveta (ndice 4009)
Definio do Mtodo:
Devolve o status da gaveta de dinheiro na impressora DUAL no fiscal. Sendo 1(um) para gaveta aberta e
0(zero) para gaveta fechada.
Daruma 32 Framework 267
Daruma Automao
Parmetros do Mtodo:
Nenhum.
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.
Observaes:
- Caso voc esteja trabalhando com windows verso: ME, 2000, XP, NT e Sistemas Protegidos e
comunicando-se com a impressora pela porta LPT. Ento dever seguir os passos descritos no link a
seguir: TrabalhandocomaDUALNAPARALELA(LPT1,LPT2). Do contrrio no ser possvel apanhar o
status.
- Se o sinal estiver invertido. Ou seja, se ao invz de retornar 1(um) para gaveta aberta, estiver
retornando 1, enquanta fechada, realize o procedimento abaixo:
a)Start o editor de registro do windows REGEDIT;
b)No path: HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF, altere a chave
ModoGaveta, que se estiver pra 1(um) mude pra 0(zero) ou ento vice-versa.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Int_Status_Gaveta As Integer
Int_Estado_Gaveta = 0
Int_Status_Gaveta = Daruma_DUAL_StatusGaveta()
If Int_Status_Gaveta = 1 Then
MsgBox "1 = Gaveta Aberta!"
Else
MsgBox "0 = Gaveta Fechada!"
End If
Exemplo em Delphi 7.0:
begin
Int_Retorno:= Daruma_DUAL_StatusGaveta();
if Int_Retorno = 1 then
Application.MessageBox('1 (um) Gaveta Aberta!', 'Daruma Framework', mb_ok + 32)
else
Application.MessageBox('0 (zero) Gaveta Fechada!', 'Daruma Framework', mb_ok + 16);
end;
1.10.8 Daruma_DUAL_EnviarBMP (ndice 4013)
Definio do Mtodo:
Envia um arquivo com o logotipo da empresa, no formato BMP, dentro dos padres exigidos.
Parmetros do Mtodo:(1Parmetro)
Path: O caminho e o nome do arquipo bitmap, exemplo:c:\nomedoarquivo.bmp.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o BMP
0: Erro de comunicao, Impressora Desligada
-1: Erro, arquivo BMP inexistente
-2: Erro na estrutura do arquivo
-3: Arquivo BMP no est em preto e branco
-4: arquivo no pode ser compactado
-5: Altura invlida, verifique se esta na medida exigida
-6: Largura invlida, verifique se esta na medida exigida
-7: Arvivo foi gerado em um formato no compatvel
-8: Arvivo de origem invlido
-9: Problema no arquivo de destino
Daruma Framework 268
Daruma Automao
Observaes:
- Formato do logotipo: tem que ser em formato BMP(bitmap)
- Dimenses: 576 largura X 200 altura ou 200 x 200, pixel's
- Cor: em preto e branco, somente.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Path As String
Str_Path = InputBox("Entre com o Path de onde est o Logotipo e o Nome do Arquivo:", "Daruma
Framework", "C:\")
If (Str_Path = "") Then
Exit Sub
End If
Int_Retorno = Daruma_DUAL_EnviarBMP(Str_Path)
If Int_Retorno = 1 Then
MsgBox "Logotipo enviado com Sucesso!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro ao enviar o Logotipo!", vbCritical, "Daruma Framework"
End If
Exemplo em Delphi 7.0:
var
Str_Path: String;
begin
Str_Path:= InputBox('Daruma Framework','Entre com o Path de onde est o Logotipo e o Nome do
Arquivo:','C:\DigiteAquiNomeArquivo.bmp');
If (Str_Path = '') then
Exit;
Int_Retorno:= Daruma_DUAL_EnviarBMP(Str_Path);
if Int_Retorno = 1 then
Application.MessageBox('Logotipo enviado com Sucesso!', 'Daruma Framework', mb_ok + 32)
else
Application.MessageBox('Erro ao enviar o Logotipo!', 'Daruma Framework', mb_ok + 16);
end;
1.10.9 Daruma_DUAL_VerificarGuilhotina (ndice 4014)
Definio do Mtodo:
Este mtodo verifica se a guilhotina (quando houver), esta habilitada. Sendo que devolver 1(um) para
guilhotina habilitada e 0(zero) para guilhotina no habilitada.
Parmetros do Mtodo:
Nenhum.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o BMP
0: Erro de comunicao, Impressora Desligada
Observaes:
- Quando nao houver Guilhotina na impressora, o valor retornado ser sempre (0)zero.
- Verificar se o Equipamente tem Guilhotina.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_DUAL_VerificarGuilhotina()
if Int_Retorno = 1 then
MsgBox "1(um) - Guilhotina Presente Habilitada!", vbInformation, "Daruma Framework"
else
MsgBox "0(zero) - Guilhotina Desabilitada ou Sem Guilhotina !!", vbCritical, "Daruma Framework"
end if
Daruma 32 Framework 269
Daruma Automao
Exemplo em Delphi 7.0:
begin
Int_Retorno:= Daruma_DUAL_VerificarGuilhotina();
if Int_Retorno = 1 then
Application.MessageBox('1 (um) Guilhotina Presente Habilitada!', 'Daruma Framework', mb_ok + 32)
else
Application.MessageBox('0 (zero) Guilhotina Desabilitada ou Sem Guilhotina !!', 'Daruma Framework',
mb_ok + 16);
end;
1.10.10 Daruma_DUAL_ConfigurarGuilhotina (ndice 4015)
Definio do Mtodo:
Este mtodo programa a Guilhotina na impressora DUAL.
Parmetros do Mtodo: (2 Parmetros)
Flag: Inteiro 1(um) para programar 0(zero) para desprogramar.
LinhasAvanco: Inteiro de 0 a 20 linhas para o acionamento da guilhotina.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o BMP
0: Erro de comunicao, Impressora Desligada
Observaes:
- Verificar se o Equipamente tem Guilhotina.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Int_Flag As Short
Dim Int_LinhasAcionamento As Short
Dim Str_Flag As String
Dim Str_LinhasAcionamento As String
Str_Flag = InputBox("Digite 1(um) para Habilitar a Gilhotina ou 0(zero) para Desabilitar:",
"Daruma Framework", "1")
If Str_Flag = "" Then
Exit Sub
End If
Str_LinhasAcionamento = InputBox("Entre com a quantidade de linhas para o Acionamento
da Guilhotina ex: 0 a 20:", "Daruma Framework", "5")
If Str_LinhasAcionamento = "" Then
Exit Sub
End If
Int_Flag = CShort(Str_Flag)
Int_LinhasAcionamento = CShort(Str_LinhasAcionamento)
Int_Retorno = Daruma_DUAL_ConfigurarGuilhotina(Int_Flag, Int_LinhasAcionamento)
If Int_Retorno = 1 Then
MsgBox("Programacao feita com Sucesso!", MsgBoxStyle.Information, "Daruma
Framework")
Else
MsgBox("Erro!", MsgBoxStyle.Critical, "Daruma Framework")
Exit Sub
End If
Exemplo em Delphi 7.0:
1.10.11 Daruma_DUAL_Imprimimindo_Codigos_de_Barras (ndice 4007)
Definio:
Imprime cdigo de barras na DUAL atravs de Tags. DHTML
Daruma Framework 270
Daruma Automao
Com o lanamento da Impressora Trmica, a Daruma passou a disponibilizar em seus modelos, fiscal e
no fical (trmicos), a impresso de cdigo de barras, que muito til para a identificao de produtos.
A seguir voc ir saber alm dos modelos de cdigos de barras que fazem parte do 'set de comandos' da
DR600, como a Daruma32.dll atravs da tags DHTML, facilita na hora da impresso dos coigos de barras.
Vejamos ento os parmetros que compe os cdigos:
1. Tipo do Cdigo de barra a ser impresso (Obrigatrio)
Contedo: <ean13> <ean8> <s2of5> <i2of5> <code128> <code39> <code93> <upc-a>
<codabar> <msi> <code11>
2. Largura do cdigo de barra: (Ateno este parmetro opcional)
Contedo: <wx>
Possveis valores para a largura do cdigo de barras (x): 2 a 5
Default: 2
3. Altura do cdigo de barra: (Ateno este parmetro opcional)
Contedo: <hx>
Possveis valores para a altura do cdigo de barras (x): 50 a 200
Default: 50
4. Imprime o cdigo abaixo das barras: (Ateno este parmetro opcional)
Contedo do cdigo: <txt>
Default: No imprimir o cdigo abaixo das barras.
O tamando do cdigo e o tipo dos carcteres que podero serem impressos dever respeitar
a lista abaixo:
EAN-13 12 dgitos de 0 a 9
EAN-8 7 dgitos de 0 a 9
UPC-A 11 dgitos de 0 a 9
CODE 39 Tamanho varivel. 0-9, A-Z, '-', '.', '%', '/', '$', ' ', '+'
O caracter '*' de start/stop inserido automaticamente
CODE 93 Tamanho varivel. 0-9, A-Z, '-', '.', ' ', '$', '/', '+', '%'
O caracter '*' de start/stop inserido automaticamente
CODABAR tamanho varivel. 0 - 9, '$', '-', ':', '/', '.', '+'
Existem 4 diferentes caracteres de start/stop: A, B, C, and D que so usados em pares e no podem
aparecer em nenhum outro lugar do cdigo.
CODE 11 Tamanho varivel. 0 a 9
As barras so geradas com checksum de dois caracteres
CODE 128 Tamanho varivel. Todos os caracteres ASCII
Interleaved 2 of 5 Tamanho sempre par. 0 a 9
Standard 2 of 5 Tamanho varivel. 0 a 9
MSI Tamanho varivel. 0 a 9
PDF417 Tamanho varivel. 0 a 9
Alguns exemplos de strings para impresso de cdigos de barras:
Em todos os exemplos a seguir, o 4 parmetro, que o cdigo de barras em sim, ser
Daruma 32 Framework 271
Daruma Automao
impresso.
No exemplo a seguir, os parmetros largura, altura e se imrpime o cdgo ou no (opcionais) no
foram passados, sendo assim permanece o default.
1) <ean13>123456789012</ean13>
Imprime o cdigo ean13 com o contedo "123456789012", sendo a largura = 3 e a altura default
2) <ean13><w3>123456789012</w3></ean13>
Imprime o cdigo ean13 com o contedo "123456789012", sendo a largura = 3 e a altura = 150
3) <ean13><w3><h150>123456789012</h150></w3></ean13>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ean13>123456789012</ean13>" + _
"<ean8>1234567</ean8><upc-a>12345678901</upc-a><code39>CODE 39</code39>" + _
"<code93>CODE 93</code93><codabar>CODABAR</codabar><msi>123456789</msi>" + _
"<code11>12345678901</code11><pdf>1234</pdf>", 0)
Exemplo em Delphi 7.0:
begin
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ean13>123456789012</ean13>' +
'<ean8>1234567</ean8><upc-a>12345678901</upc-a><code39>CODE 39</code39>' +
'<code93>CODE 93</code93><codabar>CODABAR</codabar><msi>123456789</msi>' +
'<code11>12345678901</code11><pdf>1234</pdf>'),0);
end;
1.10.12 Mtodos Alternativos para Impressoras DUAL
1.10.12.1 Trabalhando com a DUAL NA PARALELA (LPT1, LPT2)
- O PROCESSO ABAIXO NO NECESSRIO CASO VOC ESTEJA UTILIZANDO A PORTA SERIAL
PARA SE COMUNICAR OU SISTEMAS OPERACIONAIS 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.
- Para evitar conflitos/sujeita dentro da porta de comunico necessrio alterar a chave dentro
de HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF: Produto = 'DS300' para evitar sujeira na
comunicao com a impressora.
- Para maior velocidade na impressora no-fiscal recomendamos o uso da porta PARALELA.
Devido a Existncia do HAL (Hardware Abstract Layer), existe a necessidade de se Burlar sta "Camada"
de comunicao para que Status como FINAL de PAPEL, Operaes como Autenticao e Verificao de
papel presente para ser autenticado ou no, sejam utilizados e aceitos pelo HAL.
Por isso a dll fez uso de um servio que fornece um endereo protegido de comunicao com a PARALELA,
Daruma Framework 272
Daruma Automao
chamado HWINTERFACE.SYS.
Passos Para a INSTALAO DA DS300 na PARALELA para Uso da DARUMA32.Dll:
(Devem ser Executados nesta Ordem)
1. Copie o Arquivo HWINTERFACE.SYS para o Diretrio WINDOWS\SYSTEM32\DRIVERS.
2. Aps a Instalao Faa 2(dois) Cliques no Arquivo DARUMA.REG que ir Registrar este servio do
Windows.
3. Reinicie o Computador (Vlido somente para WIN2000).
4. 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.
1.10.12.2 Resolvendo Problemas de Comunicao com a PARALELA
Problema: J realizei a Copia do HWINTERFACE.SYS, Fiz 2(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 reiniciar) e verifique em que modo esta a Porta Paralela,
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 Boto 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:
Daruma 32 Framework 273
Daruma Automao
Pressione OK: Reinicie o Computador, efetue os testes normalmente.
1.10.12.3 Utilizando as Tags de Impresso de Texto e Formatao
Definio do Mtodo:
Permite trabalhar com as Tags de Formatao.
Parmetros do Mtodo: (1 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> Para sinalizar Negrito
<i></i> Para sinalizar Itlico - Nas impressoras trmicas DR600, FS600 e FS2100T, no
possvel utilizar esta tag, pois o texto no pode ser formatado para itlico.
<s></s> Para sinalizar Sublinhado
<e></e> Para sinalizar Expandido
<c></c> Para sinalizar Condensado
<n></n> Para sinalizar Normal
<l></l> Para Saltar Uma Linha
<sl>NN</sl> Para Saltar Vrias Linhas
<tc>C</tc> Riscar Linha com um carctere Especifico
<ce></ce> Para Centralizar
<ad></ad> Para alinhar o texto Direita
<da></da> Para duplicar a altura do caracter
<dt></dt> Para Imprimir Data Atual, formato que estiver definido no sistema operacional do micro.
<hr></hr> Para Imprimir Hora Atual,formato que estiver definido no sistema operacional do micro.
<sp>NN</sp> Inserir NN Espaos em Branco
<sn></sn> Sinal Sonoro, Apitar
<g></g> Abre a Gaveta
<a> Aguardar at o Trmino da Impresso
</a> No Aguardar at o Trmino da Impresso
<tb></tb> Tabulao - Acesse o link a seguir para saber mais: Daruma_Registry_DUAL_Tabulacao
<bmp></bmp> Para fazer o UPLoad do Bitmap na Impressora
<< Quando desejar imprimir o carctere "<"
>> Quando desenar imprimir o carctere ">"
<gui></gui> Para acionamento da guilhotina, exclusivo impressora no fiscal trmica
Para impresso dos cdigos de barras acesse o seguinte link:
Daruma_DUAL_ImprimimindoCodigosdeBarras
Private Sub Command1_Click()
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<sn><e><b>Teste Formatao DHTM</b></e></sn>"),
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)
Daruma Framework 274
Daruma Automao
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 Carcter 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(("<<tc>>_<</tc>> Gerar uma linha tachada"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<sl>01</sl>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<tb>TABULAO</tb>"), 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>Veiculo<tb>Cor<tb>Placa<tb>Hora"), 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto(("<dt></dt><tb>Golf<tb>Branca<tb>AJY5231<tb>10:15</tb>"), 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto(("<dt></dt><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><
/tb>20:40"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<l><tc>_</tc>"), 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto(("<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</l><sp>10</sp>10 espaos em Branco"),
0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<ce>Formatao Normal</ce>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<l><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)
Daruma 32 Framework 275
Daruma Automao
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<c>CONDENSADO</c>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<ce>DARUMA AUTOMAO!!</ce>"), 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></l>"), 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(("<ce>ALINHADO A DIREITA</ce>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<ad>DARUMA AUTOMAO!!</ad><l>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<ce>ALINHADO A DIREITA + EXPANDIDO</ce>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<e><ad>DARUMA AUTOMAO!!</ad></e><l>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<ce>ALINHADO A DIREITA + SUBLINHADO</ce>"), 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(("<tb>TABULADO NA COLUNA 10</tb>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<tb></tb><tb></tb>DARUMA"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<tb>TABULADO NA COLUNA 30</tb>"), 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto(("<tb></tb><tb></tb><tb></tb><tb></tb><tb></tb>DARUMA"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<n><e>Cdigos de Barras</e></n>"), 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto(("<ean13>123456789012</ean13><ean8>1234567</ean8>" + _
"<upc-a>12345678901</upc-a><code39>CODE 39</code39><code93>CODE 93</code93>" + _
"<codabar>CODABAR</codabar><msi>123456789</msi><code11>12345678901</code11><pdf>123
4</pdf>"), 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:<<h
r>><</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
Daruma Framework 276
Daruma Automao
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>>" +
_
"<<ean13>>123456789012<</ean13>><<ean8>>1234567<</ean8>><<upc-
a>>12345678901<</upc-a>><<code39>>CODE 39<</code39>><<code93>>CODE
93<</code93>>" + _
"<<codabar>>CODABAR<</codabar>><<msi>>123456789<</msi>><<code11>>12345678901<</c
ode11>>1234<</pdf>>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<l><e><b>FIM BUFFER COMPLETO</e></b>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<sl>03</sl>"), 0)
If Int_Retorno = 1 Then
MsgBox "Impressao Concluida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If
End Sub
Exemplo em Delphi 7.0:
<b></b> Para sinalizar Negrito
<i></i> Para sinalizar Itlico
<s></s> Para sinalizar Sublinhado
<e></e> Para sinalizar E x p a n d i d o
<c></c> Para sinalizar Condensado
<n></n> Para sinalizar Normal
<l></l> Para Saltar Uma Linha
<ce></ce> Para Centralizar o Texto
<ad></ad> Para Alinhar a Direita
<da></da> Para duplicar a altura do caracter
<cr></cr> Retornar o Carro de Impressao para o Comeo.
<sl>NN</sl> Para Saltar Vrias Linhas
<tc>C</tc> Riscar Linha com um carctere Especifico
<ce></ce> Para Centralizar
<dt></dt> Para Imprimir Data Atual
<hr></hr> Para Imprimir Hora Atual
<sp>NN</sp> Inserir NN Espaos em Branco
<sn></sn> Sinal Sonoro, Apitar
<g></g> Abre a Gaveta
<tb></tb> Tabulao
<a> Aguardar at o Trmino da Impresso
</a> No Aguardar at o Trmino da Impresso
<< Quando desejar imprimir o carctere "<"
>> Quando desenar imprimir o carctere ">"
procedure TFramework_DUAL_ImprimirTexto.Button1Click(
Sender: TObject);
begin
Daruma 32 Framework 277
Daruma Automao
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<sn><e><b>Teste Formatao
DHTM</b></e></sn>'), 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('<<tc>>_<</tc>> Gerar uma linha tachada'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<sl>01</sl>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<e>TABULAO</e>'), 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>Veiculo<tb>Cor<tb>Placa<tb>Hora'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<dt></dt><tb>Golf<tb>Branca<tb>AJY5231<tb>10:15</tb>'),
0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<dt></dt><tb>Focus<tb></tb>Vermelha<tb></tb>APG2013<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<t
b></tb>20:40'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<l><tc>_</tc>'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<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</l><sp>10</sp>10 espaos em
Branco'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>Formatao Normal</ce>'), 0);
Daruma Framework 278
Daruma Automao
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<l><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>CONDENSADO</c>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>DARUMA AUTOMAO!!</ce>'), 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></l>'),
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);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<n><e>Cdigos de Barras</e></n>'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<ean13>123456789012</ean13><ean8>1234567</ean8>' +
'<upc-a>12345678901</upc-a><code39>CODE 39</code39><code93>CODE 93</code93>' +
'<codabar>CODABAR</codabar><msi>123456789</msi><code11>12345678901</code11><pdf>123
4</pdf>'),0);
//Enviando todos Juntos
Int_Retorno:= Daruma_DUAL_ImprimirTexto(Pchar('<l><e><b>BUFFER COMPLETO</e></b>'), 0);
Int_Retorno:=
Daruma 32 Framework 279
Daruma Automao
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>>' +
'<<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>>' +
'<<ean13>>123456789012<</ean13>><<ean8>>1234567<</ean8>><<upc-
a>>12345678901<</upc-a>><<code39>>CODE 39<</code39>><<code93>>CODE 93<</code93>>'
+
'<<codabar>>CODABAR<</codabar>><<msi>>123456789<</msi>><<code11>>12345678901<</co
de11>><<pdf>>1234<</pdf>>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(Pchar('<l><e><b>FIM BUFFER COMPLETO</e></b>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<sl>03</sl>'), 0);
if Int_Retorno = 1 Then
Application.MessageBox('Impressao Concluida!!!', 'Daruma Framework', mb_ok + 32)
else
Application.MessageBox('Erro!', 'Daruma Framework', mb_ok + 16);
end;
1.10.12.4 Teste Completo com as Tags de Impresso de Texto
Definio do Mtodo:
Permite trabalhar com as Tags de Formatao.
Parmetros do Mtodo: (1 Parmetro)
String: com as tags de formatao:ex:<ce>CENTRALIZADO</ce>
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
Daruma Framework 280
Daruma Automao
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><e><b>Teste Formatao DHTM</b></e></sn>"),
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 Carcter 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(("<<tc>>_<</tc>> Gerar uma linha tachada"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<sl>01</sl>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<e>TABULAO</e>"), 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>Veiculo<tb>Cor<tb>Placa<tb>Hora"), 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto(("<dt></dt><tb>Golf<tb>Branca<tb>AJY5231<tb>10:15</tb>"), 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto(("<dt></dt><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><
/tb>20:40"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<l><tc>_</tc>"), 0)
Daruma 32 Framework 281
Daruma Automao
Int_Retorno =
Daruma_DUAL_ImprimirTexto(("<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</l><sp>10</sp>10 espaos em Branco"),
0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<ce>Formatao Normal</ce>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<l><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>CONDENSADO</c>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<ce>DARUMA AUTOMAO!!</ce>"), 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></l>"), 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(("<ce>ALINHADO A DIREITA</ce>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<ad>DARUMA AUTOMAO!!</ad><l>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<ce>ALINHADO A DIREITA + EXPANDIDO</ce>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<e><ad>DARUMA AUTOMAO!!</ad></e><l>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<ce>ALINHADO A DIREITA + SUBLINHADO</ce>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<ad><s>DARUMA AUTOMAO!!</s></ad><l>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>DUPLA ALTURA</ce><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<da>DARUMA AUTOMAO!!</da><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>DUPLA ALTURA + EXPANDIDO</ce><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<da><e>DARUMA AUTOMAO!!</da></e><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>DUPLA ALTURA + SUBLINHADO</ce><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<da><s>DARUMA AUTOMAO!!</s></da><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>DUPLA ALT + CENT + NEGRITO</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<da><ce><b>DARUMA
AUTOMAO!!</da></ce></b><l>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<ce>DUPLA ALT + ALIN DIR. + NEGR</ce>", 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto("<da><ad><b>DARUMA
AUTOMAO!!</da></ad></b><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 Framework 282
Daruma Automao
Daruma_DUAL_ImprimirTexto(("<tb></tb><tb></tb><tb></tb><tb></tb><tb></tb>DARUMA"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<n><e>Cdigos de Barras</e></n>"), 0)
Int_Retorno =
Daruma_DUAL_ImprimirTexto(("<ean13>123456789012</ean13><ean8>1234567</ean8>" + _
"<upc-a>12345678901</upc-a><code39>CODE 39</code39><code93>CODE 93</code93>" + _
"<codabar>CODABAR</codabar><msi>123456789</msi><code11>12345678901</code11><pdf>123
4</pdf>"), 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:<<h
r>><</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>>" +
_
"<<ean13>>123456789012<</ean13>><<ean8>>1234567<</ean8>><<upc-
a>>12345678901<</upc-a>><<code39>>CODE 39<</code39>><<code93>>CODE
93<</code93>>" + _
"<<codabar>>CODABAR<</codabar>><<msi>>123456789<</msi>><<code11>>12345678901<</c
ode11>><<pdf>>pdf<</pdf>>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<l><e><b>FIM BUFFER COMPLETO</e></b>"), 0)
Int_Retorno = Daruma_DUAL_ImprimirTexto(("<sl>03</sl>"), 0)
If Int_Retorno = 1 Then
MsgBox "Impressao Concluida!", vbInformation, "Daruma Framework"
Else
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If
Daruma 32 Framework 283
Daruma Automao
Exemplo em Delphi 7.0:
begin
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<sn><e><b>Teste Formatao
DHTM</b></e></sn>'), 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('<<da>><</da>> Para duplicar a altura do
caracter'), 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('<<tc>>_<</tc>> Gerar uma linha tachada'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<sl>01</sl>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<e>TABULAO</e>'), 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>Veiculo<tb>Cor<tb>Placa<tb>Hora'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<dt></dt><tb>Golf<tb>Branca<tb>AJY5231<tb>10:15</tb>'),
0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<dt></dt><tb>Focus<tb></tb>Vermelha<tb></tb>APG2013<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<t
b></tb>20:40'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<l><tc>_</tc>'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<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);
Daruma Framework 284
Daruma Automao
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>Anvanando 1 Linha</ce><sl>1</sl>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<l>Inserindo</l><sp>10</sp>10 espaos em
Branco'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>Formatao Normal</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<l><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>CONDENSADO</c>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>DARUMA AUTOMAO!!</ce>'), 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></l>'),
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>DUPLA ALTURA</ce><l>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<da>DARUMA AUTOMAO!!</da><l>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>DUPLA ALTURA + EXPANDIDO</ce><l>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<da><e>DARUMA AUTOMAO!!</da></e><l>'),
0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>DUPLA ALTURA + SUBLINHADO</ce><l>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<da><s>DARUMA AUTOMAO!!</s></da><l>'),
0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>DUPLA ALT + CENT + NEGRITO</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<da><ce><b>DARUMA
AUTOMAO!!</da></ce></b><l>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<ce>DUPLA ALT + ALIN DIR. + NEGR</ce>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<da><ad><b>DARUMA
AUTOMAO!!</da></ad></b><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);
Daruma 32 Framework 285
Daruma Automao
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);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<n><e>Cdigos de Barras</e></n>'), 0);
Int_Retorno:=
Daruma_DUAL_ImprimirTexto(pchar('<ean13>123456789012</ean13><ean8>1234567</ean8>' +
'<upc-a>12345678901</upc-a><code39>CODE 39</code39><code93>CODE 93</code93>' +
'<codabar>CODABAR</codabar><msi>123456789</msi><code11>12345678901</code11><pdf>123
4</pdf>'),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>>' +
'<<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>>' +
'<<ean13>>123456789012<</ean13>><<ean8>>1234567<</ean8>><<upc-
a>>12345678901<</upc-a>><<code39>>CODE 39<</code39>><<code93>>CODE 93<</code93>>'
+
'<<codabar>>CODABAR<</codabar>><<msi>>123456789<</msi>><<code11>>12345678901<</co
de11>><<pdf>>1234<</pdf>>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(Pchar('<l><e><b>FIM BUFFER COMPLETO</e></b>'), 0);
Int_Retorno:= Daruma_DUAL_ImprimirTexto(pchar('<sl>03</sl>'), 0);
if Int_Retorno = 1 Then
Application.MessageBox('Impressao Concluida!!!', 'Daruma Framework', mb_ok + 32)
else
Application.MessageBox('Erro!', 'Daruma Framework', mb_ok + 16);
end;
Daruma Framework 286
Daruma Automao
procedure TFramework_DUAL_ImprimirTexto.BT_EnviarClick(
Sender: TObject);
var
Str_Texto_Livre: String;
Memo: String;
begin
Memo:= TX_Texto_Livre.Text;
if Memo = '' then //Verifica Existncia de Texto no (Memo)
begin
Application.MessageBox('Digite um Texto...!', 'Daruma Framework', mb_ok + 16);
exit
end;
Str_Texto_Livre:= TX_Texto_Livre.Lines.Text;
Int_Retorno:= Daruma_Dual_ImprimirTexto(Str_Texto_Livre, 0); // 0 Segundo parametro ficou =0,
dessa forma a dll calcula o tamanho do texto
if Int_Retorno = 1 then
Application.MessageBox('Impressao Concluida!!!', 'Daruma Framework', mb_ok + 32)
else
Application.MessageBox('Erro!', 'Daruma Framework', mb_ok + 16);
end;
1.10.13 Mtodos para a DUAL de Configurao do Registry
1.10.13.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.
Parmetros do Mtodo: (1 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 default da Chave = "1"
Para evitar conflitos/sujeita dentro da porta de comunico necessrio alterar a chave dentro de
HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF: Produto = 'DS300' para evitar sujeira na comunicao
com a impressora.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_DUAL_Enter("1")
Exemplo em Delphi 7.0:
Int_Retorno:= Daruma_Registry_DUAL_Enter('1');
1.10.13.2 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 32 Framework 287
Daruma Automao
Parmetros do Mtodo: (1 Parmetro)
1: Espera Impressao Terminar para receber o Valor de Retorno da Funcao de Impressao da DLL
0: No espera
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 default da Chave = "0"
Para evitar conflitos/sujeita dentro da porta de comunico necessrio alterar a chave dentro de
HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF: Produto = 'DS300' para evitar sujeira na comunicao
com a impressora.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_DUAL_Espera("1")
Exemplo em Delphi 7.0:
Int_Retorno:= Daruma_Registry_DUAL_Espera('1');
1.10.13.3 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.
Parmetros do Mtodo: (1 Parmetro)
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:
TrabalhandocomaDUALNAPARALELA(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 default da Chave = "0"
Para evitar conflitos/sujeita dentro da porta de comunico necessrio alterar a chave dentro de
HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF: Produto = 'DS300' para evitar sujeira na comunicao
com a impressora.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_DUAL_ModoEscrita("1")
Daruma Framework 288
Daruma Automao
Exemplo em Delphi 7.0:
Int_Retorno:= Daruma_Registry_DUAL_ModoEscrita('1');
1.10.13.4 Daruma_Registry_DUAL_Porta (ndice 31)
Definio do Mtodo:
Configura a porta de Comunicao que a DUAL ir Utilizar para se Comunicar.
Parmetros do Mtodo: (1 Parmetro)
String com o Valor da Porta
"LPT1"
"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 default da Chave = "LPT1"
Para evitar conflitos/sujeita dentro da porta de comunico necessrio alterar a chave dentro de
HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF: Produto = 'DS300' para evitar sujeira na comunicao
com a impressora.
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)
Exemplo em Delphi 7.0:
var
Str_Porta: string;
ClickedOK: Boolean;
begin
Str_Porta:='LPT1';
ClickedOK:=InputQuery('Entre com a Porta onde esta a Impressora:', 'Daruma Framework', Str_Porta);
if (ClickedOK = False) or (Str_Porta='') then
exit;
Int_Retorno:= Daruma_Registry_DUAL_Porta(Str_Porta);
if Int_Retorno = 1 then
Application.MessageBox('Configurao Feita com Sucesso!', 'Daruma Framework', mb_ok + 32)
else
Application.MessageBox(' Erro!', 'Daruma Framework', mb_ok + 16);
end;
1.10.13.5 Daruma_Registry_DUAL_Tabulacao (ndice 34)
Definio do Mtodo:
Formata as tabulaes que sero utilizadas na DUAL.
As tabulaes em nossa impressora, funcionam exatamente como em uma mquina de escrever, ou seja,
primeiro voc define as tabulaes que sero usadas, depois voc utiliza.
Daruma 32 Framework 289
Daruma Automao
Parmetros do Mtodo: (1 Parmetro)
String com as tabulaes: 05,10,15,20,25,35
Na sugesto passada como parmetro anteriormente, a primeira tabulao definida para a impresso
comear na quinta coluna, depois na dcima, dcima-quinta, vigsima, vigsima-quinta e por ltimo na
trigsima-quinta.
Importante: da mesma forma que acontece em uma mquina de escrever, que se o texto que escrito
for maior que o intervalo da tabulao pr-configurado, ento perde-se a tabulao, na impressora
igual. Exemplificando melhor seria o seguinte:
1)Temos a tabulao DEFAULT, que 05,10,15,20,25,35.
2)Supondo que voc coloque o texto "QUANTIDADE", na primeira tabulao;
2.1)Como a palavra quantidade que tm 10(dez) caracteres, e maior que o intervalo da at a
prxima tabulao que de apenas 5(cinco) colunas, ento a segunda tabulao 10(dez)colunas de
tamanho ser perdida, nesta linha.
3)Uma dica seria, limitar-se sempre a trabalhar com um texto que nunca ultrapasse o intervalo
programado, dessa forma o layout da tabela, que o objetivo maior por se estar utilizando tabulao,
ficar perfeito, como no exemplo abaixo:
QTD. TAM. COR
01 50 AZUL
02 78 VERDE
03 40 CINZA
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
Exemplo em Delphi 7.0:
var
Str_Tabulacao: String;
begin
Str_Tabulacao:= InputBox('Entre com o Desejada:', 'Daruma Framework', '05,10,15,20,25,35');
if Str_Tabulacao = '' then
begin
exit
end;
Int_Retorno:= Daruma_Registry_DUAL_Tabulacao(Str_Tabulacao);
if Int_Retorno = 1 then
begin
Application.MessageBox('Configurao Feita com Sucesso!', 'Daruma Framework', mb_ok + 32);
end
else
begin
Application.MessageBox(' Erro!', 'Daruma Framework', mb_ok + 16);
end;
end;
Daruma Framework 290
Daruma Automao
1.10.13.6 Daruma_Registry_DUAL_Velocidade (ndice 46)
Definio do Mtodo:
Permite configurar a velocidade a impressora DUAL Trmica DR600.
Parmetros do Mtodo: (1 Parmetro)
String com a Velocidade de comunicao
"9600"
"38400"
"57600"
"115200"
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 default da Chave = "9600"
Para evitar conflitos/sujeita dentro da porta de comunico necessrio alterar a chave dentro de
HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF: Produto = 'DS300' para evitar sujeira na comunicao
com a impressora.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_Dual_Velocidade("9600")
Exemplo em Delphi 7.0:
Int_Retorno:= Daruma_Registry_Dual_Velocidade('9600');
1.10.13.7 Daruma_Registry_DUAL_Termica (ndice 48)
Definio do Mtodo:
Permite configurar para trabalhar com a impressora DUAL Trmica DR600.
Parmetros do Mtodo: (1 Parmetro)
0 - Impressora DUAL Matricial
1 - Impressora DUAL Trmica DR600.
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 default da Chave = "1"
Para evitar conflitos/sujeita dentro da porta de comunico necessrio alterar a chave dentro de
HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF: Produto = 'DS300' para evitar sujeira na comunicao
com a impressora.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_Registry_DUAL_Termica("1")
Exemplo em Delphi 7.0:
Int_Retorno:= Daruma_Registry_DUAL_Termica('1');
Daruma 32 Framework 291
Daruma Automao
1.10.14 10 Exemplos utilizando as TAG's de formatao
1.10.14.1 Exemplo DUAL 01
Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetros do Mtodo: (2 Parmetros)
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.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
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
Dim Str_Tema_Mensagem As String
Dim Str_Titulo_Mensagem As String
Dim Str_Valor_Mensagem As String
Dim Str_Forma_Cobranca As String
Dim Str_Cliente As String
Dim Str_Fone_Res As String
Dim Str_Fone_Celular As String
Dim Str_Fone_Com As String
Dim Str_Mensagem_Promo As String
Dim Str_Hora As String
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>" +
Daruma Framework 292
Daruma Automao
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)
'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.10.14.2 Exemplo DUAL 02
Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetros do Mtodo: (2 Parmetros)
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.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
Daruma 32 Framework 293
Daruma Automao
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>",
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:
Daruma Framework 294
Daruma Automao
1.10.14.3 Exemplo DUAL 03 (Tabulaes)
Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetros do Mtodo: (2 Parmetros)
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.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
Observaes:
- As tabulaes podem ser definidas da seguinte maneira:
Daruma_DUAL_ImprimirTexto("tf""0");
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",
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:
Daruma 32 Framework 295
Daruma Automao
1.10.14.4 Exemplo DUAL 04
Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetros do Mtodo: (2 Parmetros)
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.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
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)
'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"
Daruma Framework 296
Daruma Automao
End If
Exemplo em Delphi 7.0:
1.10.14.5 Exemplo DUAL 05
Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetros do Mtodo: (2 Parmetros)
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.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
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
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
Daruma 32 Framework 297
Daruma Automao
MsgBox "Erro!", vbCritical, "Daruma Framework"
End If
Exemplo em Delphi 7.0:
1.10.14.6 Exemplo DUAL 06
Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetros do Mtodo: (2 Parmetros)
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.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
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>",
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
Daruma Framework 298
Daruma Automao
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.10.14.7 Exemplo DUAL 07
Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetros do Mtodo: (2 Parmetros)
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.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
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>234-
5678<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
Daruma 32 Framework 299
Daruma Automao
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.10.14.8 Exemplo DUAL 08
Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetros do Mtodo: (2 Parmetros)
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.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
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
Daruma Framework 300
Daruma Automao
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 PANA-
LS345<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
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.10.14.9 Exemplo DUAL 09
Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetros do Mtodo: (2 Parmetros)
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.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
Daruma 32 Framework 301
Daruma Automao
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
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>
</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.10.14.10Exemplo DUAL 10
Definio do Mtodo:
Permite a Impresso de Texto com as TAGS de formatao.
Parmetros do Mtodo: (2 Parmetros)
Daruma Framework 302
Daruma Automao
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.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: OK, Sucesso ao enviar o mtodo
0: Erro de comunicao, Impressora Desligada
-27: Erro Genrico
-50: Impressora OFF-Line
-51: Impressora Sem Papel
-52: Impressora Inicializando
-60: Erro de Tag (tag invlida)
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)
'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"
Daruma 32 Framework 303
Daruma Automao
End If
Exemplo em Delphi 7.0:
1.11 Mtodos Exclusivos para o TA1000
1.11.1 Mtodos para Produtos
1.11.1.1 Daruma_TA1000_CadastrarProdutos(ndice 5420)
Definio do Mtodo:
Permite cadastrar produtos no TA1000.
Parmetros do Mtodo So: (12 Parmetros)
1. Descrio: String at 25 caracteres com a descrio do produto.
2. Cdigo: String com at 13 caracteres com cdigo numrico ou 7 alfa-numricos do produto.
3. Casas Decimais do Preo: String com apenas o carctere.
4. Casas Decimais da Quantidade: Strig com 2(dois) caracteres.
5. Preo do Produto: String com at 8 dgitos para o preo do item.
6. Acrscimo Desconto: String "A" para Acrscimo e "D" para Desconto.
7. Valor Desconto 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. Prximo 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 foi executado, 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 parmetro alquota, especificamente para o TA1000 voc dever passar por ndice TA, TB...TP.
Caso queira cadastrar tem como isendo, utilize a sigla II, substituio FF e no tributado NN.
Onde cada ndice representa uma alquota em uma determinada posio de memria na impressora.
Para ler as alquotas exitentes na impressora use a
funo:Daruma_FI_LerAliquotasComIndice(ndice1483).
- Para que esse mtodo seja validado no TA1000, voc precisa chamar o mtodo
Daruma_TA1000_EnviarBancoProdutos.
- O ideal que o seu aplicativo gere todo o banco de produtos, para somente aps voc envi-los para o
TA1000. Enquanto isso os itens permanecero em memria.
- O valor do desconto nunca poder ser igual ou maior do que o valor do item.
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_Acrescimo_Desconto As String
Dim Str_Valor_Acrescimo_Desconto 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"
Daruma Framework 304
Daruma Automao
Str_Codigo = "0001"
Str_Decimais_Preco = "02"
Str_Decimais_Quantidade = "02"
Str_Preco = "1,00"
Str_Acrescimo_Desconto = "A"
Str_Valor_Acrescimo_Desconto = "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(Str_Descricao, Str_Codigo, Str_Decimais_Preco, _
Str_Decimais_Quantidade, Str_Preco, Str_Acrescimo_Desconto, Str_Valor_Acrescimo_Desconto, _
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_Acrescimo_Desconto: String;
Str_Valor_Acrescimo_Desconto: 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_Acrescimo_Desconto:= 'A';
Str_Valor_Acrescimo_Desconto:= '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_Acrescimo_Desconto), pchar(Str_Valor_Acrescimo_Desconto), pchar(Str_Unidade_Medida),
pchar(Str_Aliquota), pchar(Str_Proximo_Produto), pchar(Str_Produto_Anterior), pchar(Str_Estoque));
end;
1.11.1.2 Daruma_TA1000_LerProdutos(ndice 5460)
Definio do Mtodo:
Permite ler os produtos no TA1000.
Parmetros do Mtodo: (13 Parmetros)
1. Indice: Inteiro com o ndice do produto.
2. Cdigo: String com at 13 caracteres com cdigo numrico ou 7 alfa-numricos do produto.
3. Descrio: String com at 25 espaos para receber a descrio.
4. Decimais Preo:String com at 8 espaos para receber do item.
5. Decimais Quantidade: String com at 25 espaos para receber a descrio.
6. Preo: String com at 25 espaos para receber a descrio.
Daruma 32 Framework 305
Daruma Automao
7. Acrscimo Desconto: String com at 2 espaos para receber o byte indicador para acrscimo ou
desconto.
8. Valor Acrscimo Desconto: String com 5 espaos para receber o valor do acrscimo ou desconto.
9. Unidade de Medida: String com 2 espaos para receber a unidade de medida.
10. Alquota: String com 3 para receber a alquota.
11. Prximo Produto: String com 5 espaos para receber o prximo produto.
12. Produto Anterior: String com 5 espaos para receber o cdigo do produto anterior.
13. Estoque: String com 8 espaos para receber a quantidade de produtos em 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 foi executado, 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:
- Basta voc passar o indice do produto a ser lido e no mais alocar espaos para receber os dados do
produto. Lembrando que se for passado zero, ento a Daruma32.dll ir varrer desde o primeiro tem.
- Este mtodo dispensa o uso do mtodo Daruma_TA1000_ConsultarProdutos. Pois com este mtodo voc
no ter o trabalho de ler campo-a-campo tem-a-tem, este trabalho fica por conta da Daruma342.dll.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Int_Indice As Integer
Dim Str_Codigo As String
Dim Str_Descricao As String
Dim Str_Decimais_Preco As String
Dim Str_Decimais_Quantidade As String
Dim Str_Preco As String
Dim Str_Acrescimo_Desconto As String
Dim Str_Valor_Acrescimo_Desconto 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_Indice = TX_Indice.Text
Str_Descricao = Space(26)
Str_Codigo = Space(14)
Str_Decimais_Preco = Space(2)
Str_Decimais_Quantidade = Space(2)
Str_Preco = Space(9)
Str_Acrescimo_Desconto = Space(2)
Str_Valor_Acrescimo_Desconto = Space(6)
Str_Unidade_Medida = Space(3)
Str_Aliquota = Space(3)
Str_Proximo_Produto = Space(6)
Str_Produto_Anterior = Space(6)
Str_Estoque = Space(10)
Int_Retorno = Daruma_TA1000_LerProdutos(CInt(Str_Indice), Str_Descricao, Str_Codigo,
Str_Decimais_Preco, _
Str_Decimais_Quantidade, Str_Preco, Str_Acrescimo_Desconto, _
Str_Valor_Acrescimo_Desconto, Str_Unidade_Medida, Str_Aliquota, _
Str_Proximo_Produto, Str_Produto_Anterior, Str_Estoque)
TX_Descricao.Text = Str_Descricao
TX_Codigo.Text = Str_Codigo
TX_Decimais_Preco.Text = Str_Decimais_Preco
TX_Decimais_Quantidade.Text = Str_Decimais_Quantidade
TX_Preco.Text = Str_Preco
TX_Acrescimo_Desconto.Text = Str_Acrescimo_Desconto
TX_Valor_Acrescimo_Desconto.Text = Str_Valor_Acrescimo_Desconto
TX_Unidade_Medida.Text = Str_Unidade_Medida
Daruma Framework 306
Daruma Automao
TX_Aliquota.Text = Str_Aliquota
TX_Proximo_Produto.Text = Str_Proximo_Produto
TX_Produto_Anterior.Text = Str_Produto_Anterior
TX_Estoque.Text = Str_Estoque
End Sub
Exemplo em Delphi 7.0:
var
Str_Indice: String;
Str_Descricao: String;
Str_Codigo: String;
Str_Decimais_Preco: String;
Str_Decimais_Quantidade: String;
Str_Preco: String;
Str_Acrescimo_Desconto: String;
Str_Valor_Acrescimo_Desconto: String;
Str_Unidade_Medida: String;
Str_Aliquota: String;
Str_Proximo_Produto: String;
Str_Produto_Anterior: String;
Str_Estoque: String;
begin
Str_Indice:= TX_Indice.Text;
SetLength (Str_Descricao,26);
SetLength (Str_Codigo,14);
SetLength (Str_Decimais_Preco,2);
SetLength (Str_Decimais_Quantidade,2);
SetLength (Str_Preco,9);
SetLength (Str_Acrescimo_Desconto,2);
SetLength (Str_Valor_Acrescimo_Desconto,6);
SetLength (Str_Unidade_Medida,3);
SetLength (Str_Aliquota,3);
SetLength (Str_Proximo_Produto,6);
SetLength (Str_Produto_Anterior,6);
SetLength (Str_Estoque,10);
Int_Retorno:= Daruma_TA1000_LerProdutos(StrToInt(Str_Indice), Str_Descricao,Str_Codigo,
Str_Decimais_Preco, Str_Decimais_Quantidade, Str_Preco, Str_Acrescimo_Desconto,
Str_Valor_Acrescimo_Desconto, Str_Unidade_Medida, Str_Aliquota, Str_Proximo_Produto,
Str_Produto_Anterior, Str_Estoque);
TX_Codigo.Text:= pchar(Str_Codigo);
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_Acrescimo_Desconto.Text:= pchar(Str_Acrescimo_Desconto);
TX_Valor_Acrescimo_Desconto.Text:= pchar(Str_Valor_Acrescimo_Desconto);
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.11.1.3 Daruma_TA1000_ConsultarProdutos(ndice 5440)
Definio do Mtodo:
Permite consultar produtos no TA1000.
Parmetros do Mtodo: (12 Parmetros)
1. Cdigo: String com at 13 caracteres com cdigo numrico ou 7 alfa-numricos do produto.
2. Descrio: String com at 25 espaos para receber a descrio.
Daruma 32 Framework 307
Daruma Automao
3. Decimais Preo:String com at 8 espaos para receber do item.
4. Decimais Quantidade: String com at 25 espaos para receber a descrio.
5. Preo: String com at 25 espaos para receber a descrio.
6. Acrscimo Desconto: String com at 2 espaos para receber o byte indicador para acrscimo ou
desconto.
7. Valor Acrscimo Desconto: String com 5 espaos para receber o valor do acrscimo ou desconto.
8. Unidade de Medida: String com 2 espaos para receber a unidade de medida.
9. Alquota: String com 3 para receber a alquota.
10. Prximo Produto: String com 5 espaos para receber o prximo produto.
11. Produto Anterior: String com 5 espaos para receber o cdigo do produto anterior.
12. Estoque: String com 8 espaos para receber a quantidade de produtos em 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 foi executado, 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:
- 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
Dim Str_Preco As String
Dim Str_Acrescimo_Desconto As String
Dim Str_Valor_Acrescimo_Desconto 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 = "0001"
Str_Descricao = Space(25)
Str_Decimais_Preco = Space(1)
Str_Decimais_Quantidade = Space(2)
Str_Preco = Space(8)
Str_Acrescimo_Desconto = Space(2)
Str_Valor_Acrescimo_Desconto = 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_Acrescimo_Desconto, _
Str_Valor_Acrescimo_Desconto, 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_Acrescimo_Desconto: String;
Str_Valor_Acrescimo_Desconto: String;
Str_Unidade_Medida: String;
Daruma Framework 308
Daruma Automao
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_Acrescimo_Desconto,2);
SetLength (Str_Valor_Acrescimo_Desconto,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_Acrescimo_Desconto,
Str_Valor_Acrescimo_Desconto, 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_Acrescimo_Desconto.Text:= pchar(Str_Acrescimo_Desconto);
TX_Valor_Acrescimo_Desconto.Text:= pchar(Str_Valor_Acrescimo_Desconto);
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.11.1.4 Daruma_TA1000_AlterarProdutos(ndice 5410)
Definio do Mtodo:
Permite alterar um determinado produto no TA1000.
Parmetros do Mtodo: (13 Parmetros)
1. Cdigo: String com at 13 caracteres com cdigo numrico ou 7 alfa-numricos do produto.
2. Descrio: String at 25 caracteres com a descrio do produto.
3. Cdigo: String com at 13 caracteres contendo o cdigo do produto.
4. Casas Decimais do Preo: Strig com apenas o carctere.
5. Casas Decimais da Quantidade: Strig com 2(dois) caracteres.
6. Preo do Produto: String com at 8 dgitos para o preo do item.
7. Acrscimo Desconto: String "A" para Acrscimo e "D" para Desconto.
8. Valor Acrscimo Desconto: String com 5 dgitos para Acrscimo ou Acrscimo.
9. Unidade de Medida: String com 2 dgitos.
10. Alquota: String com o ndice da alquota.
11. Prximo 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 foi executado, 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 32 Framework 309
Daruma Automao
Para que esse mtodo seja validado no TA1000, voc precisa chamar o mtodo
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_Acrescimo_Desconto As String
Dim Str_Valor_Acrescimo_Desconto 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_Acrescimo_Desconto = "A"
Str_Valor_Acrescimo_Desconto = "0,10"
Str_Unidade_Medida = "UN"
Str_Aliquota = "TA"
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_Acrescimo_Desconto, Str_Valor_Acrescimo_Desconto, _
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_Acrescimo_Desconto: String;
Str_Valor_Acrescimo_Desconto: 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_Acrescimo_Desconto:= TX_Acrescimo_Desconto.Text;
Str_Valor_Acrescimo_Desconto:= TX_Valor_Acrescimo_Desconto.Text;
Str_Unidade_Medida:= TX_Unidade_Medida.Text;
Str_Aliquota:= TX_Aliquota.Text;
Daruma Framework 310
Daruma Automao
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_Acrescimo_Desconto), pchar(Str_Valor_Acrescimo_Desconto), pchar(Str_Unidade_Medida),
pchar(Str_Aliquota), pchar(Str_Proximo_Produto), pchar(Str_Produto_Anterior), pchar(Str_Estoque));
end;
1.11.1.5 Daruma_TA1000_EliminarProdutos(ndice 5430)
Definio do Mtodo:
Permite eliminar um determinado produto no TA1000.
Parmetros do Mtodo: (1 Parmetro)
1. Cdigo: String com at 13 caracteres com cdigo numrico ou 7 alfa-numricos 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 foi executado, 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 mtodo seja validado no TA1000, voce precisa chamar o mtodo
Daruma_TA1000_EnviarBancoProdutos.
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.11.1.6 Daruma_TA1000_EnviarBancoProdutos(ndice 5350)
Definio do Mtodo:
Permite enviar os produtos para o TA1000.
Parmetros do Mtodo:
Nenhum.
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 foi executado, porm o ECF
sinalizou Erro, chame o Mtodo Daruma_FI_RetornoImpressora para identificar o Erro.
Daruma 32 Framework 311
Daruma Automao
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;
Framework_TA1000_Progress.Close;
end;
1.11.1.7 Daruma_TA1000_ReceberBancoProdutos(ndice 5360)
Definio do Mtodo:
Permite receber os produtos cadastrados no TA1000.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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 retornara os produtos em um arquivo TXT com o 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
Daruma Framework 312
Daruma Automao
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;
1.11.1.8 Daruma_TA1000_ReceberProdutosVendidos(ndice 5363)
Definio do Mtodo:
Permite receber os produtos vendidos no TA1000.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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 mtodo retornara os produtos em um arquivo TXT com o 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;
Daruma 32 Framework 313
Daruma Automao
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;
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.11.1.9 Daruma_TA1000_ZerarProdutos(ndice 5450)
Definio do Mtodo:
Permite zerar os produtos no TA1000.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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 mtodo seja validado no TA1000, voc precisa chamar o mtodo
Daruma_TA1000_EnviarBancoProdutos.
Exemplos:
Exemplo em Visual Basic 6.0:
Daruma Framework 314
Daruma Automao
Int_Retorno = Daruma_TA1000_ZerarProdutos()
Exemplo em Delphi 7.0:
begin
Int_Retorno:= Daruma_TA1000_ZerarProdutos();
end;
1.11.1.10 Daruma_TA1000_ZerarProdutosVendidos(ndice 5456)
Definio do Mtodo:
Permite zerar os produtos vendidos no TA1000.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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 mtodo seja validado no TA1000, voc precisa chamar o mtodo
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();
end;
1.11.2 Mtodos para Usurios
1.11.2.1 Daruma_TA1000_CadastrarUsuarios(ndice 5422)
Definio do Mtodo:
Permite cadastrar usuros no TA1000.
Parmetros do Mtodo: (6 Parmetros)
1. Nome: String at 26 caracteres com o nome do usurio.
2. CPF: String com at 13 caracteres 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. Prximo 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 foi executado, 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 mtodo seja validado no TA1000, voc precisa chamar o mtodo
Daruma_TA1000_EnviarBancoUsuarios.
Exemplos:
Daruma 32 Framework 315
Daruma Automao
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));
Framework_TA1000.Retorno_TA1000();
1.11.2.2 Daruma_TA1000_ConsultarUsuarios(ndice 5443)
Definio do Mtodo:
Permite consultar usuarios no TA1000.
Parmetros do Mtodo: (1 Parmetro)
Cdigo: String com at 6 caracteres 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 foi executado, 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:
Basta voc passar o cdigo do usurio a ser consultado e 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
Daruma Framework 316
Daruma Automao
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);
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.11.2.3 Daruma_TA1000_AlterarUsuarios(ndice 5412)
Definio do Mtodo:
Permite alterar um determinado produto no TA1000.
Parmetros do Mtodo: (1 Parmetro)
Cdigo do usurio alterado: String com at 6 caracteres 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 foi executado, 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 mtodo seja validado no TA1000, voc precisa chamar o mtodo
Daruma_TA1000_EnviarBancoUsuarios.
Exemplos:
Exemplo em Visual Basic 6.0:
Dim Str_Codigo_Consultar As String
Daruma 32 Framework 317
Daruma Automao
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;
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.11.2.4 Daruma_TA1000_EliminarUsuarios(ndice 5432)
Definio do Mtodo:
Permite eliminar um determinado produto no TA1000.
Parmetros do Mtodo: (1 Parmetro)
Cdigo: String com at 13 caracteres 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 foi executado, 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 mtodo seja validado no TA1000, voc precisa chamar o mtodo
Daruma_TA1000_EnviarBancoUsuarios.
Exemplos:
Daruma Framework 318
Daruma Automao
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.11.2.5 Daruma_TA1000_EnviarBancoUsuarios(ndice 5351)
Definio do Mtodo:
Permite enviar os produtos para o TA1000.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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_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;
Daruma 32 Framework 319
Daruma Automao
1.11.2.6 Daruma_TA1000_ReceberBancoUsuarios(ndice 5361)
Definio do Mtodo:
Permite receber os produtos vendidos.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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 retornara os produtos em um arquivo TXT com o 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
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;
Daruma Framework 320
Daruma Automao
1.11.2.7 Daruma_TA1000_ZerarUsuarios(ndice 5452)
Definio do Mtodo:
Permite zerar os produtos no TA1000.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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 mtodo seja validado no TA1000, voc precisa chamar o mtodo
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.11.3 Teste Completo Gerando Banco de Produtos e Usuarios
1.11.3.1 Daruma TA1000 Gerar Banco com Produtos
Definio do Mtodo:
Algoritimo para gerar um banco contendo Produtos
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 foi executado, 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_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)
Daruma 32 Framework 321
Daruma Automao
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 = String(5 - Len(CStr(Int_Quantidade_Produtos)), "0")
Str_Produto_Anterior = Str_Produto_Anterior + CStr(Int_Quantidade_Produtos)
Else
Str_Produto_Anterior = String(5 - Len(CStr(Int_Contador)), "0")
Str_Produto_Anterior = Str_Produto_Anterior + CStr(Int_Contador - 1)
End If
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:
var
Int_Contador: Integer;
Str_Codigo: String;
Str_Descricao: String;
Str_Valor: String;
Str_Estoque: String;
Str_Proximo_Produto: String;
Str_Produto_Anterior: String;
Int_Quantidade_Produtos: Integer;
Int_Casas: Integer;
begin
Int_Quantidade_Produtos:= StrToInt(TX_Quantidade_Produtos.Text);
Int_Contador:= 1;
Int_Retorno:= Daruma_TA1000_ZerarProdutos();
While (Int_Contador <= Int_Quantidade_Produtos) DO
begin
If Int_Contador < 10 then
begin
Str_Codigo:= StringOfChar('0',4 - 1 );
end
Else
If Int_Contador < 100 then
begin
Str_Codigo:= StringOfChar('0',4 - 2 );
end
Else
If Int_Contador < 1000 then
begin
Str_Codigo:= StringOfChar('0',4 - 3 );
end
else
If Int_Contador >= 1000 then
Str_Codigo:= '';
Daruma Framework 322
Daruma Automao
Str_Codigo:= Str_Codigo + IntToStr(Int_Contador);
Str_Descricao:= ('Produto Numero' + IntToStr(Int_Contador));
Str_Valor:= StringOfChar('0',6 - Int_Contador);
Str_Valor:= (Str_Valor + IntToStr(Int_Contador) + '00');
Str_Estoque:= ('00010000');
If Int_Contador = 1 Then
begin
Str_Produto_Anterior:= StringOfChar('0',5 - Int_Quantidade_Produtos);
Str_Produto_Anterior:= Str_Produto_Anterior + IntToStr(Int_Quantidade_Produtos);
end
Else
begin
Str_Produto_Anterior:= StringOfChar('0',5 - Int_Contador);
Str_Produto_Anterior:= Str_Produto_Anterior + IntToStr(Int_Contador - 1);
End;
If Int_Contador = Int_Quantidade_Produtos Then
begin
Str_Proximo_Produto:= '00001';
end
Else
begin
Str_Proximo_Produto:= StringOfChar('0',5 - Int_Contador + 1);
Str_Proximo_Produto:= Str_Proximo_Produto + IntToStr(Int_Contador + 1);
End;
Int_Retorno:= Daruma_TA1000_CadastrarProdutos(pchar(Str_Descricao), pchar(Str_Codigo), '2',
'2', pchar(Str_Valor), 'D', pchar('0,00'), pchar('UN'), pchar('TA'), pchar(Str_Proximo_Produto),
pchar(Str_Produto_Anterior), pchar(Str_Estoque));
Int_Contador:= Int_Contador + 1;
end;
1.11.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:
1: OK, Sucesso ao enviar o mtodo.
-27(Somente se o Flag Status Funo estiver setado pra 1(um): O Mtodo foi executado, 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_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)
Daruma 32 Framework 323
Daruma Automao
If Int_Contador = 1 Then
Str_Usuario_Anterior = String(5 - Len(CStr(Int_Quantidade_Usuarios)), "0")
Str_Usuario_Anterior = Str_Usuario_Anterior + CStr(Int_Quantidade_Usuarios)
Else
Str_Usuario_Anterior = String(5 - Len(CStr(Int_Contador)), "0")
Str_Usuario_Anterior = Str_Usuario_Anterior + CStr(Int_Contador - 1)
End If
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:
var
Int_Contador: Integer;
Str_Codigo_Convenio: String;
Str_Codigo_Usuario: String;
Str_Nome: String;
Str_Valor: String;
Str_Estoque: String;
Str_Proximo_Usuario: String;
Str_Usuario_Anterior: String;
Int_Quantidade_Usuarios: Integer;
begin
Int_Quantidade_Usuarios:= StrToInt(TX_Quantidade_Usuarios.Text);
Int_Contador:= 1;
Int_Retorno:= Daruma_TA1000_ZerarUsuarios();
While (Int_Contador <= Int_Quantidade_Usuarios) Do
begin
If Int_Contador < 10 then
begin
Str_Codigo_Usuario:= StringOfChar('0',5 - 1 );
end
Else
If Int_Contador < 100 then
begin
Str_Codigo_Usuario:= StringOfChar('0',5 - 2 );
end
Else
If Int_Contador < 1000 then
begin
Str_Codigo_Usuario:= StringOfChar('0',5 - 3 );
end
else
If Int_Contador < 10000 then
begin
Str_Codigo_Usuario:= StringOfChar('0',5 - 4 );
end
else
If Int_Contador >= 10000 then
Str_Codigo_Usuario:= '';
Daruma Framework 324
Daruma Automao
Str_Codigo_Usuario:= Str_Codigo_Usuario + IntToStr(Int_Contador);
Str_Nome:= 'Usuario Numero' + IntToStr(Int_Contador);
Str_Codigo_Convenio:=Str_Codigo_Usuario;
If Int_Contador = 1 Then
begin
Str_Usuario_Anterior:= StringOfChar('0',5 - Int_Quantidade_Usuarios);
Str_Usuario_Anterior:= Str_Usuario_Anterior + IntToStr(Int_Quantidade_Usuarios);
end
Else
begin
Str_Usuario_Anterior:= StringOfChar('0', 5 - Int_Contador);
Str_Usuario_Anterior:= Str_Usuario_Anterior + IntToStr(Int_Contador - 1);
End;
If Int_Contador = Int_Quantidade_Usuarios Then
begin
Str_Proximo_Usuario:= '00001';
End
Else
begin
Str_Proximo_Usuario:= StringOfChar('0',5 - Int_Contador + 1);
Str_Proximo_Usuario:= Str_Proximo_Usuario + IntToStr(Int_Contador + 1);
End;
Int_Retorno:= Daruma_TA1000_CadastrarUsuarios(pchar(Str_Nome), pchar('877.774.145-87'),
pchar(Str_Codigo_Convenio), pchar(Str_Codigo_Usuario), pchar(Str_Usuario_Anterior),
pchar(Str_Proximo_Usuario));
Int_Contador:= Int_Contador + 1;
end;
1.12 Mtodos Exclusivos para TEF
1.12.1 Implementando TEF com a Daruma32.dll
Definio do Mtodo:
Para realizar o TEF, existe operaes que infelizmente so complicadas para determinadas linguagens de
programao ao 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) Esperar o Arquivo de Resposta.
2) Imprimir Resposta controlando o Arquivo no ECF se foi desligado ou no e re-imprimindo no Gerencial.
3) Configurar o Foco na Janela de seu aplicativo de Automao.
4) Fechar o Relatorio Seja ele Vinculado ou no.
Veja em Modo Grfico como e quando usar as Funes Auxiliares de TEF: clique aqui
Daruma_TEF_TratandoosErros para ver passo-a-passo, como fazer o tratamentos dos erros como:
Impressora com pouco papel, sem papel, off-line ou desligada.
Daruma 32 Framework 325
Daruma Automao
Daruma Framework 326
Daruma Automao
1.12.2 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: (1 Parmetro)
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 configurado pra 1(um): O Mtodo foi executado, 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.12.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 Comprovante No Fiscal No Vinculado, apenas chame esta Mtodo que possui
inteligncia para Identificar qual o relatrio que est aberto e fech-lo.
Parmetros do Mtodo:
Nenhum.
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 foi executado, 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 ser fechado.
Exemplos:
Exemplo em Visual Basic 6.0:
Int_Retorno = Daruma_TEF_FechaRelatorio()
Exemplo em Delphi 7.0:
begin
Int_Retorno := Daruma_TEF_FechaRelatorio();
Daruma 32 Framework 327
Daruma Automao
1.12.4 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. CliqueAqui para visualizar como
tratar os possveis erros de impresso.
Parmetros do Mtodo: (3 Parmetros)
1. Arquivo: String com o Caminho completo + nome do arquivo que voc deseja imprimir:
"C:\TEF_DIAL\RESP\INTPOS.001"
2. Forma: A Forma Pagamento que voc deseja Abrir o Comprovante no fiscal Vinculado, caso voc
deseje imprimir o Arquivo no Relatrio Gerncial, passe este parmetro VAZIO, NULO sem contedo.
E o Arquivo ser impresso em um relatrio Gerencial.
3. Travar Teclado. O terceiro e ltimo paramtro Travar Teclado, esta setado internamente para
"nunca" travar o teclado, j que as homologadoras de TEF, no exigem que durante a espera pelo
arquivo, seja travado o teclado.
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 foi executado, 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_de_Pagamento As String
Dim Str_Travar_Teclado As String
Str_Path_Arquivo_Resp_TEF = TX_Path_Arquivo_Resp_TEF.Text
Str_Forma_de_Pagamento = TX_Forma_de_Pagamento.Text
Str_Travar_Teclado = TX_Teclado.Text
Int_Retorno = Daruma_TEF_ImprimirResposta(Str_Path_Arquivo_Resp_TEF, Str_Forma_de_Pagamento,
Str_Travar_Teclado)
Exemplo em Delphi 7.0:
var
Str_Path_Arquivo_Resp_TEF: String;
Str_Forma_de_Pagamento: String;
Str_Travar_Teclado: String;
Daruma Framework 328
Daruma Automao
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_TEF_ImprimirResposta(pchar( Str_Path_Arquivo_Resp_TEF ), pchar(
Str_Forma_de_Pagamento ), pchar( Str_Travar_Teclado ) );
1.12.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 e assim por diante.
Parmetros do Mtodo: (4 Parmetros)
1. Arquivo: String com o Caminho completo + nome do arquivo que voc deseja imprimir:
"C:\TEF_DIAL\RESP\INTPOS.001"
2. Forma: A Forma Pagamento que voc deseja Abrir o Comprovante no fiscal Vinculado, caso voc
deseje imprimir o Arquivo no Relatrio Gerncial, passe este parmetro com apenas um ESPAO EM
BRANCO. E o Arquivo ser impresso em um relatrio Gerencial.
3. Travar Teclado: String com "0" ou "1" para travar o teclado durante a Impresso do Arquivo. "0" -
No Trava, "1" - Trava.
4. ValorForma: String como valor da forma de pagamento.
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 foi executado, 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.
Observaes:
- Aplica-se este mtodo 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 = Daruma_FI_VendeItem("7000", "Chinelo", "NN", "I", "1", "2", "2,50", "%", "0,00")
Int_Retorno = Daruma_FI_IniciaFechamentoCupom("A", "%", "0,00")
Daruma 32 Framework 329
Daruma Automao
Int_Retorno = Daruma_FI_EfetuaFormaPagamento("Dinheiro", "1,50")
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 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
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();
Daruma Framework 330
Daruma Automao
1.12.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: (3 Parmetros)
1. Arquivo: String com o Caminho completo + nome do arquivo que voc deseja esperar, EX:
"C:\TEF_DIAL\RESP\INTPOS.001"
2. Tempo: 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".
3. 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 foi executado, 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:
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
Daruma 32 Framework 331
Daruma Automao
begin
Application.MessageBox('O Arquivo de Resposta no foi localizdo, Tempo esgotado !!!', 'Daruma
Framework', mb_ok + 16);
end;
1.12.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: (1 Parmetro)
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 foi executado, 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);
1.12.8 Daruma_TEF_Tratando_os_Erros (ndice 1900)
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
Daruma Framework 332
Daruma Automao
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
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")
Daruma 32 Framework 333
Daruma Automao
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
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
Daruma Framework 334
Daruma Automao
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:
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;
Daruma 32 Framework 335
Daruma Automao
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);
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
Daruma Framework 336
Daruma Automao
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);
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
Daruma 32 Framework 337
Daruma Automao
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
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);
Daruma Framework 338
Daruma Automao
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.13 Mtodos Exclusivos para Gerar o Sintegra (MFD)
1.13.1 Informaes sobre Sintegra
ALGUMAS INFORMAES IMPORTANTES
O QUE O SINTEGRA ?
Sistema Integrado de Informaes sobre Operaes Interestaduais com Mercadorias e Servios um
conjunto de procedimentos administrativos e de sistemas computacionais de apoio, que est implantado
em todo o pas, com a finalidade de facilitar o fornecimento de informaes dos contribuintes aos fiscos
estaduais e de aprimorar o fluxo de dados nas Administraes Tributrias e entre as mesmas.
Observaes:
- Sintegra deve ser realizado imediatamente aps a Reduo Z.
- As informaes so armazenadas pela DLL, registrando os registro no REGISTRY do Windows, sendo
assim caso o usurio realize alguma manuteno em sua mquina antes de gerar o SINTEGRA pode
ocasionar perda de comunicao (Retorno -1).
DE ONDE SO EXTRADAS AS INFORMES QUE FORMAM O SINTEGRA ?
So extradas de duas fontes de dados o ECF (MFD) a outra so as Notas Fiscais de Entrada.
Neste manual, voc encontra somente os Mtodos que extraem as informaes do ECF
(Smente Impressora MFD)
Daruma 32 Framework 339
Daruma Automao
QUAIS OS RELATRIOS QUE SO GERADOS PARTIR DO ECF (MFD)?
Sero gerados os seguintes relatrios:
- Tipo 10.
- Tipo 11.
- Todos os Tipos 60 (quando existir vendas).
- Tipo 90 Sempre.
PREMISSAS PARA QUE SEJA GERADO CORRETAMENTE O SINTEGRA
1. O ms tem de estar fechado. Ou seja, a Reduo Z do ltimo dia fiscal do ms dever ter sido
emitida. Exemplo: se o ltimo dia fiscal foi 27, mas voc vai gerar o Sintegra somente no dia 01 do
ms seguinte e a Reduo Z do movimento do dia 27 esta pendente, ento ter que emiti-la primeiro
e aps isso gerar o Sintegra.
2. A data final paera gerar o Sintegra dever ser a ltima data que teve movimento.
3. O arquivo que ser gerado, pelos mtodos, ser gravado no path configurado no flag Path no
registry: HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF. Para alterar o path, use o mtodo:
Daruma_Registry_Path(ndice2)
Porm o objetivo maior deste help no falar sobre o Sintegra em sim, mais expor alguns
mtodos que iro facilitar voc na gerao do mesmo.
O que de fato voc encontrar disponvel para trabalhar neste help?
Voc encontrar um mtodo de alto nvel. Chamamos de alto nvel, pois em um nico mtodo, foram
renidos todos os registros, que podem ser gerados atravs do ECF.
Temos tambm as mesmas informaes em mtodos avulsos de mdio nvel, ou seja, por exemplo, o
Relatrio que contm o clich do estabelecimento Tipo 10, pode ser obtido atravs do mtodo
Daruma_Sintegra_GerarResgitro10:Daruma_Sintegra_GerarRegistro10(ndice6023).
Alm de termos os mtodos de mdio nvel, temos tambm outros 2(dois) mtodos de baixo nvel, que
permitiro a voc extrair qualquer informao do ECF, bastando para isso informar um ndice, e sta
informao poder ser obtida em uma varivel, ou em arquivo txt.
Abaixo temos um exemplo de uma informao extrada atrves do mtodo
Daruma_FIMFD_RetornornarInfoDownloadMFD:
Daruma_FIMFD_RetornarInfoDownloadMFD(ndice6020).
ndice: "ECFHW" ECF HardWare
Descricao Tamanho
------------------------ -------
Modelo da impressora 6
NOS (Numero do ECF) 6
Versao do SB 6
Numero de serie da MFDE 21
Numero de serie da MF 21
1.13.2 Daruma_Sintegra_GerarRegistrosArq (ndice 6022)
Definio do Mtodo:
Este um mtodo de alto nvel, que aloja em um nico arquivo, todos os registros gerados pelo ECF, se
preferir usar mtodos que contm, informaes de forma avulsa, favor utilizar os mtodos de mdio nvel
ou at mesmo o mtodo de baixo nvel, que voc encontra aqui mesmo neste help.
Daruma Framework 340
Daruma Automao
Gera o arquivo Sintegra.txt no path configurado no flag Path no registry:
HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\SINTEGRA. Para alterar o path, use o mtodo:
Daruma_Registry_SintegraPath(ndice71).
Abaixo temos um exemplo do arquivo que gerado, note que primeiramente temos o Tipo 10 (clich), na
segunda linha temos o Tipo 11 (endereo), aps temos os relatrios Tipo 60, conforme o movimento que
teve o PDV e na ltima posio, temos o Tipo 90.
10076947150001309035904830 Suporte ao Desenvolvedor Curitiba
00000000002006120120061231331
11Av. Comendador Franco 01341Bloco B Jardim Botnico00080215Joo
000000000000
60M20061201DR0205BR0000000687570012D00105900106500005201800000000000003270000000000
778436
60A20061201DR0205BR0000000687571800000000000027
60D20061201DR0205BR00000006875700001
00000000000010000000000000005000000000000000118000000000000000
60I20061201DR0205BR0000000687572D00105900100001
000000000000100000000050000000000000011800000000000000
60R12200600001 0000000000001000000000000000500000000000000011800
90076947150001309035904830 60000003429900000345
1
Para saber mais sobre o layout dos relatrios, acesse o site oficial do sintegra, www.sintegra.gov.br
Este arquivo ra conter o seguinte contedo:
- Este mtodo exclusivo para impressora MFD.
- Relatrio Tipo10 e 11
- Todos os relatrios do Tipo60
- Relatrio Tipo90
Parmetros: (14 parmetros)
1. DataInicio: String com a Data de inicio do download. Esta data a data do primeiro dia do ms.
2. DataFim: String com a Data de fim do download. Esta data a ltima data que teve movimento no
ms.
3. Municipio: String com o Municpio do informante.
4. Fax: String com o nmero do Fax do estabelecimento do informante.
5. CodIdConvenio: String com o Codigo da identificacao do convenio utilizado.
6. CodIdNatureza: String com o Codigo da identificacao da natureza das operaes informadas.
7. CodFinalid: String com o Codigo da finalidade utilizada no arquivo magntico.
8. Logradouro: String com o Logradouro.
9. Numero: String com o Nmero.
10. Complemento: String com o Complemento.
11. Bairro: String com o Bairro.
12. CEP: String com o Cdigo de Endereamento Postal.
13. NomeContato: String com o Pessoa responsvel para contato.
14. Telefone: String com o Nmero do telefone para contato.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: Execuo OK
0: Erro em arquivos binarios
-2: Datas invalidas
-52: Erro de abertura de arquivos
-11: Comando incompativel
Observao:
- Se voc no sabe qual informao que deve ser colocada no parmetros: 5, 6 ou 7, acesse o site do
Sintegra para saber: www.sintegra.com.br ou ainda www.sintegra.gov.br
Exemplo em Delphi:
var
Str_Data_Inicio_Movimento: string;
Str_Data_Fim_Movimento: string;
Str_Municipio: string;
Str_Fax: string;
Str_Cod_Convenio: string;
Daruma 32 Framework 341
Daruma Automao
Str_Cod_Natureza: string;
Str_Cod_Finalidade: string;
Str_Logradouro: string;
Str_Numero: string;
Str_Complemento: string;
Str_Bairro: string;
Str_CEP: string;
Str_Nome_Contato: string;
Str_Telefone: string;
begin
Str_Data_Inicio_Movimento:= Trim('011206');
Str_Data_Fim_Movimento:= Trim('040107');
Str_Municipio:= Trim('Curitiba');
Str_Fax:= Trim('(xx41) 3361-6945');
Str_Cod_Convenio:= Trim('3');
Str_Cod_Natureza:= Trim('3');
Str_Cod_Finalidade:= Trim('1');
Str_Logradouro:= Trim(Av. Comendador Franco);
Str_Numero:= Trim('1341');
Str_Complemento:= Trim('Bloco B');
Str_Bairro:= Trim('Jardim Botnico');
Str_CEP:= Trim('80215-090');
Str_Nome_Contato:= Trim('Joo');
Str_Telefone:= Trim('(0XX41) 3361-6005');
Int_Retorno:= Daruma_Sintegra_GerarRegistrosArq(Str_Data_Inicio_Movimento,
Str_Data_Fim_Movimento, Str_Municipio, Str_Fax, Str_Cod_Convenio, Str_Cod_Natureza,
Str_Cod_Finalidade, Str_Logradouro, Str_Numero, Str_Complemento, Str_Bairro,Str_CEP,
Str_Nome_Contato, Str_Telefone);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.13.3 Mtodos de Mdio Nvel para Gerar o Sintegra (Mtodos Exclusivos para
MFD's)
1.13.3.1 Daruma_Sintegra_GerarRegistro10 (ndice 6023)
Definio do Mtodo:
Executa o download bruto da MFD, no intervalo das datas definidas nos parmetros. Em seguida devolve
um registro do Tipo 10.
Exemplo de retorno:
10076947150001309035904830 Suporte ao Desenvolvedor Curitiba
00000000002006120120061231313
N
o
Denominao do Campo Tamanho Contedo
01 Tipo 02 10
02 CGC/MFCGC/MF do estabelecimento 14 07694715000130
03 Inscrio
Estadual 14 9035904830
04 Nome do Contribuinte Nome comercial
(razo Social/denominao) do contribuinte 35 Suporte ao Desenvolvedor
05 Municpio Municpio onde est domiciliado o
estabelecimento informante 30 Curitiba
06 Unidade da Federao 2 PR
07 Fax Nmero do fax 10 4133616945
08 Data Inicial 8 01012007
09 Data Final 8 01022007
10 Cdigo da identificao do Convnio 1
11 Cdigo da identificao da natureza das operaes
informadas 1 1
Daruma Framework 342
Daruma Automao
12 Cdigo da finalidade do arquivo magntico
Cdigo da finalidade utilizado no arquivo magntico 1 3
Parmetros: (8 parmetros)
1. DataInicio: String com a Data de inicio do download. Esta data a data do primeiro dia do ms.
2. DataFim: String com a Data de fim do download. Esta data a ltima data que teve movimento no
ms.
3. Municipio: String com o Municipio do informante.
4. Fax: String com o nmero do Fax do estabelecimento do informante.
5. CodIdConvenio: Codigo da identificacao do convenio utilizado.
6. CodIdNatureza: Codigo da identificacao da natureza das operaes informadas.
7. CodFinalid: Codigo da finalidade utilizada no arquivo magnetico.
8. Retorno: Varivel por referncia com 127 espaos para receber o retorno contendo o registro tipo 10.
Observaes:
- Este mtodo exclusivo para impressora MFD.
- Se voc no sabe qual informao que deve ser colocada no parmetros: 5, 6 ou 7, acesse o site do
Sintegra para saber: www.sintegra.gov.br
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: Execuo OK
0: Erro em arquivos binarios
-2: Datas invalidas
-52: Erro de abertura de arquivos
-11: Comando incompativel
Exemplo em Delphi:
var
Str_Data_Inicio_Movimento: string;
Str_Data_Fim_Movimento: string;
Str_Municipio: string;
Str_Fax: string;
Str_Cod_Convenio: string;
Str_Cod_Natureza: string;
Str_Cod_Finalidade: string;
Str_Retorno: String;
begin
Str_Data_Inicio_Movimento:= Trim('011206');
Str_Data_Fim_Movimento:= Trim('040107');
Str_Municipio:= Trim('Curitiba');
Str_Fax:= Trim('(xx41) 3361-6945');
Str_Cod_Convenio:= Trim('3');
Str_Cod_Natureza:= Trim('3');
Str_Cod_Finalidade:= Trim('1');
SetLength(Str_Retorno, 127);
Int_Retorno:=Daruma_Sintegra_GerarRegistro10(Str_Data_Inicio_Movimento,
Str_Data_Fim_Movimento, Str_Municipio, Str_Fax, Str_Cod_Convenio, Str_Cod_Finalidade,
Str_Cod_Natureza, Str_Retorno);
Retorno_Registro10.Lines.Text:= (Str_Retorno);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.13.3.2 Daruma_Sintegra_GerarRegistro11(ndice 6024)
Definio do Mtodo:
Executa o 'download' bruto da MFD, no intervalo das datas definidas nos parmetros. Em seguida devolve
um registro do Tipo 11.
Exemplo de retorno:
11Av. Comendador Franco 01341Bloco B Jardim Botnico00080215Joo
000000000000
Daruma 32 Framework 343
Daruma Automao
Parmetros: (8 parmetros)
1. Logradouro: String com o Logradouro.
2. Numero: String com o Numero.
3. Complemento: String com o Complemento.
4. Bairro: String com o Bairro.
5. CEP: String com o Codigo de Enderecamento Postal.
6. NomeContato: String com o Pessoa responsavel para contato.
7. Telefone: String com o Numero do telefone para contatos.
8. Retorno: Varivel por referncia para receber o retorno contendo o registro tipo 11 com 127
espaos.
Observaes:
- Este mtodo exclusivo para impressora MFD.
- Se preferir, poder acessar o site: www.sintegra.gov.br.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: Execuo OK
0: Erro em arquivos binarios
-2: Datas invalidas
-52: Erro de abertura de arquivos
-11: Comando incompativel
Exemplo em Delphi:
var
Str_Logradouro: string;
Str_Numero: string;
Str_Complemento: string;
Str_Bairro: string;
Str_CEP: string;
Str_Nome_Contato: string;
Str_Telefone: string;
Str_Retorno: String;
begin
Str_Logradouro:= Trim('Av. Comendador Franco');
Str_Numero:= Trim('1341');
Str_Complemento:= Trim('Bloco B');
Str_Bairro:= Trim('Jardim Botnico');
Str_CEP:= Trim('80215-090');
Str_Numero:= Trim('1341');
Str_Nome_Contato:= Trim('Jao');
Str_Telefone:= Trim('(XX41) 3361-6005');
SetLength(Str_Retorno, 127);
Int_Retorno:= Daruma_Sintegra_GerarRegistro11(Str_Logradouro, Str_Numero, Str_Complemento,
Str_Bairro,Str_CEP, Str_Nome_Contato, Str_Telefone, Str_Retorno);
Retorno_Registro11.Lines.Text:= (Str_Retorno);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.13.3.3 Daruma_Sintegra_GerarRegistro60M (ndice 6025)
Definio do Mtodo:
Executa o 'download' bruto da MFD, no intervalo das datas definidas nos parmetros. Em seguida gera um
registro do tipo 60M (Mestre).
Exemplo de retorno:
60M20061201DR0205BR0000000687570012D00105900106500005201800000000000003270000000000
778436
Parmetros: (3 parmetros)
1. DataInicio: String com a Data de inicio do download. Esta data a data do primeiro dia do ms.
Daruma Framework 344
Daruma Automao
2. DataFim: String com a Data de fim do download. Esta data a ltima data que teve movimento no
ms.
3. Retorno: Varivel por referncia para receber o retorno contendo o registro tipo 60M.
Observaes:
- Este mtodo exclusivo para impressora MFD.
- A cada execuo desse mtodo, ser escrito na varivel, o movimento de um dia.
- O mtodo pode ser executado vrias vezes em um loop, at que o retorno seja uma string contendo
FIM DOS DADOS.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: Execuo OK
0: Erro em arquivos binarios
-2: Datas invalidas
-52: Erro de abertura de arquivos
-11: Comando incompativel
Exemplo em Delphi:
var
Str_Data_Inicio_Movimento: string;
Str_Data_Fim_Movimento: string;
Str_Retorno: String;
begin
Str_Data_Inicio_Movimento:= Trim('011206');
Str_Data_Fim_Movimento:= Trim('040107');
SetLength(Str_Retorno, 127);
Int_Retorno:= Daruma_Sintegra_GerarRegistro60M(Str_Data_Inicio_Movimento,
Str_Data_Fim_Movimento,Str_Retorno);
Retorno_Registro60M.Lines.Text:= (Str_Retorno);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
1.13.3.4 Daruma_Sintegra_GerarRegistro60A (ndice 6026)
Definio do Mtodo:
Executa o 'download' bruto da MFD, no intervalo das datas definidas nos parmetros. Em seguida gera um
registro do tipo 60A (Analtico).
Exemplo de retorno:
60A20061201DR0205BR0000000687571800000000000027
60A20061201DR0205BR0000000687571200000000000000
60A20061201DR0205BR0000000687570700000000000000
60A20061201DR0205BR000000068757F 000000000300
60A20061201DR0205BR000000068757I 000000000000
60A20061201DR0205BR000000068757N 000000000000
60A20061201DR0205BR000000068757CANC000000000000
60A20061201DR0205BR000000068757DESC000000000000
60A20061201DR0205BR000000068757ISS 000000000000
Parmetros: (3 parmetros)
1. DataInicio: String com a Data de inicio do download. Esta data a data do primeiro dia do ms
2. DataFim: String com a Data de fim do download. Esta data a ltima data que teve movimento no
ms
3. Retorno: Varivel por referncia para receber o retorno contendo o registro tipo 60A
Observaes:
- Este mtodo exclusivo para impressora MFD.
- A cada execuo desse mtodo, ser escrito na varivel, o movimento de um dia, de acordo com as
alquotas programadas no ECF.
Daruma 32 Framework 345
Daruma Automao
- O mtodo pode ser executado vrias vezes em um loop, at que o retorno seja uma string contendo
FIM DOS DADOS.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: Execuo OK
0: Erro em arquivos binarios
-2: Datas invalidas
-52: Erro de abertura de arquivos
-11: Comando incompativel
Exemplo em Delphi:
var
Str_Data_Inicio_Movimento: string;
Str_Data_Fim_Movimento: string;
Str_Retorno: String;
begin
Str_Data_Inicio_Movimento:= Trim(Data_Inicio_Movimento.Text);
Str_Data_Fim_Movimento:= Trim(Data_Fim_Movimento.Text);
SetLength(Str_Retorno, 2800);
Int_Retorno:= Daruma_Sintegra_GerarRegistro60A(Str_Data_Inicio_Movimento,
Str_Data_Fim_Movimento,Str_Retorno);
Retorno_Registro60A.Lines.Text:= (Str_Retorno);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.13.3.5 Daruma_Sintegra_GerarRegistro60D (ndice 6027)
Definio do Mtodo:
Executa o 'download' bruto da MFD, no intervalo das datas definidas nos parmetros. Em seguida gera um
registro do tipo 60D (Resumo Dirio)
`
Exemplo de retorno:
60D20061201DR0205BR00000006875700001
00000000000010000000000000005000000000000000118000000000000000
Parmetros: (3 parmetros)
1. DataInicio: String com a Data de inicio do download. Esta data a data do primeiro dia do ms.
2. DataFim: String com a Data de fim do download. Esta data a ltima data que teve movimento no
ms.
3. Retorno: Varivel por referncia para receber o retorno contendo o registro tipo 60D.
Observaes:
- Este mtodo exclusivo para impressora MFD.
- A cada execuo desse mtodo, ser escrito na varivel, o movimento de um dia.
- O mtodo pode ser executado vrias vezes em um loop, at que o retorno seja uma string contendo
FIM DOS DADOS.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: Execuo OK
0: Erro em arquivos binarios
-2: Datas invalidas
-52: Erro de abertura de arquivos
-11: Comando incompativel
Exemplo em Delphi:
var
Str_Data_Inicio_Movimento: string;
Daruma Framework 346
Daruma Automao
Str_Data_Fim_Movimento: string;
Str_Retorno: String;
begin
Str_Data_Inicio_Movimento:= Trim(Data_Inicio_Movimento.Text);
Str_Data_Fim_Movimento:= Trim(Data_Fim_Movimento.Text);
SetLength(Str_Retorno, 200);
Int_Retorno:= Daruma_Sintegra_GerarRegistro60D(Str_Data_Inicio_Movimento,
Str_Data_Fim_Movimento,Str_Retorno);
Retorno_Registro60D.Lines.Text:= (Str_Retorno);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.13.3.6 Daruma_Sintegra_GerarRegistro60I (ndice 6028)
Definio do Mtodo:
Executa o 'download' bruto da MFD, no intervalo das datas definidas nos parmetros. Em seguida gera um
registro do tipo 60I (tem).
Exemplo de retorno:
60I20061201DR0205BR0000000687572D00105900100001
000000000000100000000050000000000000011800000000000000
Parmetros: (3 parmetros)
1. DataInicio: String com a Data de inicio do download. Esta data a data do primeiro dia do ms.
2. DataFim: String com a Data de fim do download. Esta data a ltima data que teve movimento no
ms.
3. Retorno: Varivel por referncia para receber o retorno contendo o registro tipo 60I.
Observaes:
- Este mtodo exclusivo para impressora MFD.
- A cada execuo desse mtodo, ser escrito na varivel, 01(um) tem.
- O mtodo pode ser executado vrias vezes em um loop, at que o retorno seja uma string contendo
FIM DOS DADOS.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: Execuo OK
0: Erro em arquivos binarios
-2: Datas invalidas
-52: Erro de abertura de arquivos
-11: Comando incompativel
Exemplo em Delphi:
var
Str_Data_Inicio_Movimento: string;
Str_Data_Fim_Movimento: string;
Str_Retorno: string;
Str_Buffer: string;
begin
Str_Data_Inicio_Movimento:= Trim('011206');
Str_Data_Fim_Movimento:= Trim('041207');
SetLength(Str_Retorno, 127);
Int_Retorno:= Daruma_Sintegra_GerarRegistro60I(Str_Data_Inicio_Movimento,
Str_Data_Fim_Movimento,Str_Retorno);
Str_Buffer:= Str_Buffer + Str_Retorno;
Retorno_Registro60I.Lines.Text:= (Str_Buffer);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
Daruma 32 Framework 347
Daruma Automao
1.13.3.7 Daruma_Sintegra_GerarRegistro60R (ndice 6029)
Definio do Mtodo:
Executa o download bruto da MFD, no intervalo das datas definidas nos parmetros. Em seguida gera um
registro do tipo 60R (Resumo Mensal).
Exemplo de retorno:
60R12200600001 0000000000001000000000000000500000000000000011800
Parmetros: (3 parmetros)
1. DataInicio: String com a Data de inicio do download. Esta data a data do primeiro dia do ms.
2. DataFim: String com a Data de fim do download. Esta data a ltima data que teve movimento no
ms.
3. Retorno: Varivel por referncia para receber o retorno contendo o registro tipo 60R.
Observaes:
- Este mtodo exclusivo para impressora MFD.
- A cada execuo desse mtodo, ser escrito na varivel, o movimento de um dia.
- O mtodo pode ser executado vrias vezes em um loop, at que o retorno seja uma string contendo
FIM DOS DADOS.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: Execuo OK
0: Erro em arquivos binarios
-2: Datas invalidas
-52: Erro de abertura de arquivos
-11: Comando incompativel
Exemplo em Delphi:
var
Str_Data_Inicio_Movimento: string;
Str_Data_Fim_Movimento: string;
Str_Retorno: String;
begin
Str_Data_Inicio_Movimento:= Trim('011206');
Str_Data_Fim_Movimento:= Trim('041207');
SetLength(Str_Retorno, 127);
Int_Retorno:= Daruma_Sintegra_GerarRegistro60A(Str_Data_Inicio_Movimento,
Str_Data_Fim_Movimento,Str_Retorno);
Retorno_Registro60R.Lines.Text:= (Str_Retorno);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.13.3.8 Daruma_Sintegra_GerarRegistro90 (ndice 6030)
Definio do Mtodo:
Gera o registro do tipo 90. Deve existir previamente um arquivo contendo os registros 10, 11, 60M, 60D,
60I e 60R. O registro tipo 90 ser retornado em varivel.
Parmetro:
1. Retorno: Varivel por referncia para receber o retorno contendo o registro tipo 90 com 127 espaos.
Observaes:
- Nunca execute este mtodo antes de gerar os registros Tipo 10, Tipo 11, Todos os Tipos 60, pois este
mtodo depende da execuo antecipada desses mtodos.
- Este mtodo exclusivo para impressora MFD.
- Para saber mais sobre o layout dos relatrios, acesse o site oficial do sintegra, www.sintegra.gov.br
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
Daruma Framework 348
Daruma Automao
1: Execuo OK
0: Erro em arquivos binarios
-2: Datas invalidas
-52: Erro de abertura de arquivos
-11: Comando incompativel
Exemplo em Delphi:
var
Str_Retorno: String;
begin
SetLength(Str_Retorno, 127);
Int_Retorno:= Daruma_Sintegra_GerarRegistro90(Str_Retorno);
Retorno_Registro90.Lines.Text:= (Str_Retorno);
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
end;
1.13.4 Mtodos de Baixo Nvel para Gerar o Sintegra
1.13.4.1 Daruma_FIMFD_RetornarInfoDownloadMFD (ndice 6020)
Definio do Mtodo:
Executa o 'download' bruto da MFD, em um intervalo de datas ou de COO's, dependendo do parmetro
TipoDL (tipode down-load).
Em seguida, seleciona os dados retornados, de acordo com o parmetro ndice.
O mtodo pode ser executado vrias vezes, em um loop, para consumir todos os dados referentes ao
ndice requerido.
Ao final dos dados, retornada uma string contendo o FIM DOS DADOS. Este procedimento dever ser
seguido, quando tratar-se de ndices que retornam informacoes variveis, como por exemplo, os tens que
foram vendidos.
Parmetros: (5 parmetros)
1. TipoDL: String com tipo do down-load, sendo 1(um) Intervado de datas e 2(dois)Intervalo de COO
2. Data/COO Incio: String com a Data / COO com o nicio do down-load.
3. Data/COO Fim: String com a Data / COO com o fim do down-load.
4. ndice Dados: String com o ndice dos dados, que pode ser um dos que so listados mais abaixo
nesta pgina.
5. Retorno: Varivel por referncia para receber os dados.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: Execuo OK
0: Erro em arquivos binarios
-2: Parametros invalidos (se algum dos 4 parametros iniciais for nulo ou se o indice for invalido)
-52: Erro de abertura de arquivos
-11: Comando incompativel
Para saber mais sobre os ndices e as informao que sero retornadas, acesse os links
abaixo:
Sobre o Hardware da Impressora:
ndice ECFHW - Este ndice retorna informaes sobre o hardware da impressora fiscal.
ndice ECFCFG - Este ndice retorna informaes sobre as configuraes da impressora fiscal.
ndice CADFPG - Este ndice retorna as formas de pagamentos cadastradas na impressora fiscal.
ndice CADALQ - Este ndice retorna as alquotas cadastradas na impressora fiscal.
ndice CADCNF - Este ndice retorna totalizadores cadastradas na impressora fiscal.
Daruma 32 Framework 349
Daruma Automao
ndice CADGER - Este ndice retorna relatrios gerenciais cadastradas na impressora fiscal.
ndice LMF - Este ndice retorna as informaes referentes as leituras da memria fiscal tiradas na
impressa.
ndice LX - Este ndice retorna as informaes referentes as leituras x impressas.
ndice RZABE - Este ndice retorna as informaes referentes a abertura das redues z impressas.
Sobre os cupons fiscais:
ndice CFABE - Este ndice retorna informaes referentes a abertura do cupom fiscal.
ndice CFITV - Este ndice retorna os ntens vindidos nos cupons fiscais.
ndice CFDES - Este ndice retorna os descontos nos tens dos cupons fiscais.
ndice CFCDI - Este ndice retorna os cancelamentos dos descontos nos tens dos cupons fiscais.
ndice CFCPI - Este ndice retorna os cancelamentos parciais nos tens dos cupons fiscais.
ndice CFCTI - Este ndice retorna os cancelamentos nos totais dos tens dos cupons fiscais.
ndice CFTOT - Este ndice retorna os cupons fiscais em totalizao.
ndice CFCDS - Este ndice retorna os cancelamentos dos descontos no subtotal dos cupons fiscais.
ndice CFFPG - Este ndice retorna as formas de pagamentos usadas nos cupons fiscais.
ndice CFCAN - Este ndice retorna os cupons fiscais cancelados.
ndice CFENC - Este ndice retorna informaes do encerramento dos cupons fiscais.
ndice CFEST - Este ndice retorna informaes referente aos estornos nos cupons fiscais.
Sobre os cupons adicionais:
ndice CUADC - Este ndice retorna os cupons adicionais emitidos.
Sobre os comprovantes de crdito/dbito. (no fiscais vinculados):
ndice CCDABE - Este ndice retorna os dados de abertura dos comprovantes de crdito/dbito.
ndice CCDTXL - Este ndice retorna texto livre dos comprovantes de crdito/dbito.
ndice CCDVADABE - Este ndice retorna os dados de abertura da via adicional dos comprovantes de
crdito/dbito.
ndice CCDTXL - Este ndice retorna os textos livres dos comprovantes de crdito/dbito.
ndice CCDVADTXL - Este ndice retorna os textos livres da via adicional dos comprovantes de
crdito/dbito.
ndice CCD2VIA - Este ndice retorna a segunda via dos comprovantes de crdito/dbito.
ndice CCDREI - Este ndice retorna a reimpresso dos comprovantes de crdito/dbito.
ndice CCDESTABE - Este ndice retorna os comprovantes de crdito/dbito que foram estornados.
ndice CCDESTTXL - Este ndice retorna os textos livres impressos noa comprovantes de crdito/dbitos
estornados.
Daruma Framework 350
Daruma Automao
Sobre os comprovantes no fiscais (recebimentos no fiscais):
ndice CNFABE - Este ndice retorna os comprovantes no fiscais que foram abertos.
ndice CNFRNF - Este ndice retorna os recebimentos no fiscais.
ndice CNFCDI - Este ndice retorna os cancelamentos de descontos dos comprovantes no fiscais.
ndice CNFCTI - Este ndice retorna os cancelamentos no total dos tens dos comprovantes no fiscais.
ndice CNFTOT - Este ndice retorna os comprovantes no fiscais em totalizao.
ndice CNFCDS - Este ndice retorna os cancelamentos de descontos no subtotal dos comprovantes no
fiscais.
ndice CNFFPG - Este ndice retorna as formas de pagamento usadas nos comprovantes no fiscais.
ndice CNFCEM - Este ndice retorna os cancelamentos dos comprovantes no fiscais em emisso.
ndice CNFENC - Este ndice retorna os comprovantes no fiscais em encerramento.
ndice CNFINTEST - Este ndice retorna o interior dos estornos das formas de pagamento dos
comprovantes no fiscais.
ndice CNFCAN - Este ndice retorna os comprovantes no fiscais cancelados.
ndice CNFSAN - Este ndice retorna comprovante no fiscal sangria.
ndice CNFSUP - Este ndice retorna comprovante no fiscal suprimento.
ndice CNFEST - Este ndice retorna os comprovantes no fiscais estornados.
ndice GERABE - Este ndice informaes referente a abertura dos relatrios gerenciais.
ndice GERTXL - Este ndice retorna os textos livres que foram impressos nos relatrios gerenciais.
Sobre os cupons fiscais bilhete de passagem:
ndice CFBPABE - Este ndice retorna os dados de abertura dos cupons fiscas bilhete de passagem.
ndice CFBPITV - Este ndice retorna os tens vendidos nos cupons fiscais bilhete de passagem.
ndice CFBPDES - Este ndice retorna desconto no tens dos bilhetes de passagem.
ndiece CFBPCDI - Este ndice retorna os cancelamentos nos tens dos bilhetes de passagem.
ndice CFBPCTI - Este ndice retorna o total em cancelamentos nos tens dos bilhetes de passagem.
ndice CFBPTOT - Este ndice retorna os cupons fiscais bilhete de passagem em totalizao.
ndice CFBPCDS - Este ndice retorna os cancelamentos de desconto no subtotal dos bilhetes de
passagem.
ndice CFBPFPG - Este ndice retorna as formas de pagamento usadas nos cupons fiscais bilhetes de
passagem.
ndice CFBPCEM - Este indice retorna os cancelamentos dos bilhetes de passagem em emisso.
ndice CFBPENC - Este ndice retorna informaes dos bilhetes de passagem em encerramento.
ndice CFBPINTEST - Este ndice retorna o interior dos estornos nos bilhetes de passagem.
Observaes:
- Se desejar saber mais sobre o Sintegra, acesse o site do Sintegra para saber: www.sintegra.gov.br
Daruma 32 Framework 351
Daruma Automao
1.13.4.2 Daruma_FIMFD_RetornarInfoDownloadMFDArquivo (ndice 6021)
Definio do Mtodo:
Executa o 'download bruto' da MFD, em um intervalo de datas ou de COO's, dependendo do parmetro
TipoDL (tipo do down-load).
Em seguida, seleciona os dados retornados, de acordo com o parmetro ndice e os grava no arquivo
Sintegra_INDICE.txt, onde NDICE o contedo do parmetro ndice.
O arquivo gerado no path configurado no registro por DEFAULT no C:\ - porm pode ser alterado
atravs do mtodo:Daruma_Registry_SintegraPath(ndice71).
Parmetros: (5 parmetros)
1. TipoDL: String com tipo do down-load, sendo 1(um) Intervado de datas e 2(dois)Intervalo de COO.
2. Data/COO Incio: String com a Data / COO com o nicio do down-load.
3. Data/COO Fim: String com a Data / COO com o fim do down-load.
4 ndice Dados: String com o ndice dos dados, que pode ser um dos que so listados mais abaixo nesta
pgina.
Este Mtodo retornar um dos Valores Inteiros listados Abaixo:
1: Execuo OK
0: Erro em arquivos binarios
-2: Parametros invalidos (se algum dos 4 parametros iniciais for nulo ou se o indice for invalido)
-52: Erro de abertura de arquivos
-11: Comando incompativel
Para saber mais sobre os ndices e as informao que sero retornadas, acesse os links
abaixo:
Sobre o Hardware da Impressora:
ndice ECFHW - Este ndice retorna informaes sobre o hardware da impressora fiscal.
ndice ECFCFG - Este ndice retorna informaes sobre as configuraes da impressora fiscal.
ndice CADFPG - Este ndice retorna as formas de pagamentos cadastradas na impressora fiscal.
ndice CADALQ - Este ndice retorna as alquotas cadastradas na impressora fiscal.
ndice CADCNF - Este ndice retorna totalizadores cadastradas na impressora fiscal.
ndice CADGER - Este ndice retorna relatrios gerenciais cadastradas na impressora fiscal.
ndice LMF - Este ndice retorna as informaes referentes as leituras da memria fiscal tiradas na
impressa.
ndice LX - Este ndice retorna as informaes referentes as leituras x impressas.
ndice RZABE - Este ndice retorna as informaes referentes a abertura das redues z impressas.
Sobre os cupons fiscais:
ndice CFABE - Este ndice retorna informaes referentes a abertura do cupom fiscal.
ndice CFITV - Este ndice retorna os ntens vindidos nos cupons fiscais.
ndice CFDES - Este ndice retorna os descontos nos tens dos cupons fiscais.
ndice CFCDI - Este ndice retorna os cancelamentos dos descontos nos tens dos cupons fiscais.
ndice CFCPI - Este ndice retorna os cancelamentos parciais nos tens dos cupons fiscais.
ndice CFCTI - Este ndice retorna os cancelamentos nos totais dos tens dos cupons fiscais.
Daruma Framework 352
Daruma Automao
ndice CFTOT - Este ndice retorna os cupons fiscais em totalizao.
ndice CFCDS - Este ndice retorna os cancelamentos dos descontos no subtotal dos cupons fiscais.
ndice CFFPG - Este ndice retorna as formas de pagamentos usadas nos cupons fiscais.
ndice CFCAN - Este ndice retorna os cupons fiscais cancelados.
ndice CFENC - Este ndice retorna informaes do encerramento dos cupons fiscais.
ndice CFEST - Este ndice retorna informaes referente aos estornos nos cupons fiscais.
Sobre os cupons adicionais:
ndice CUADC - Este ndice retorna os cupons adicionais emitidos.
Sobre os comprovantes de crdito/dbito. (no fiscais vinculados):
ndice CCDABE - Este ndice retorna os dados de abertura dos comprovantes de crdito/dbito.
ndice CCDTXL - Este ndice retorna texto livre dos comprovantes de crdito/dbito.
ndice CCDVADABE - Este ndice retorna os dados de abertura da via adicional dos comprovantes de
crdito/dbito.
ndice CCDTXL - Este ndice retorna os textos livres dos comprovantes de crdito/dbito.
ndice CCDVADTXL - Este ndice retorna os textos livres da via adicional dos comprovantes de
crdito/dbito.
ndice CCD2VIA - Este ndice retorna a segunda via dos comprovantes de crdito/dbito.
ndice CCDREI - Este ndice retorna a reimpresso dos comprovantes de crdito/dbito.
ndice CCDESTABE - Este ndice retorna os comprovantes de crdito/dbito que foram estornados.
ndice CCDESTTXL - Este ndice retorna os textos livres impressos noa comprovantes de crdito/dbitos
estornados.
Sobre os comprovantes no fiscais (recebimentos no fiscais):
ndice CNFABE - Este ndice retorna os comprovantes no fiscais que foram abertos.
ndice CNFRNF - Este ndice retorna os recebimentos no fiscais.
ndice CNFCDI - Este ndice retorna os cancelamentos de descontos dos comprovantes no fiscais.
ndice CNFCTI - Este ndice retorna os cancelamentos no total dos tens dos comprovantes no fiscais.
ndice CNFTOT - Este ndice retorna os comprovantes no fiscais em totalizao.
ndice CNFCDS - Este ndice retorna os cancelamentos de descontos no subtotal dos comprovantes no
fiscais.
ndice CNFFPG - Este ndice retorna as formas de pagamento usadas nos comprovantes no fiscais.
ndice CNFCEM - Este ndice retorna os cancelamentos dos comprovantes no fiscais em emisso.
ndice CNFENC - Este ndice retorna os comprovantes no fiscais em encerramento.
ndice CNFINTEST - Este ndice retorna o interior dos estornos das formas de pagamento dos
comprovantes no fiscais.
Daruma 32 Framework 353
Daruma Automao
ndice CNFCAN - Este ndice retorna os comprovantes no fiscais cancelados.
ndice CNFSAN - Este ndice retorna comprovante no fiscal sangria.
ndice CNFSUP - Este ndice retorna comprovante no fiscal suprimento.
ndice CNFEST - Este ndice retorna os comprovantes no fiscais estornados.
ndice GERABE - Este ndice informaes referente a abertura dos relatrios gerenciais.
ndice GERTXL - Este ndice retorna os textos livres que foram impressos nos relatrios gerenciais.
Sobre os cupons fiscais bilhete de passagem:
ndice CFBPABE - Este ndice retorna os dados de abertura dos cupons fiscas bilhete de passagem.
ndice CFBPITV - Este ndice retorna os tens vendidos nos cupons fiscais bilhete de passagem.
ndice CFBPDES - Este ndice retorna desconto no tens dos bilhetes de passagem.
ndiece CFBPCDI - Este ndice retorna os cancelamentos nos tens dos bilhetes de passagem.
ndice CFBPCTI - Este ndice retorna o total em cancelamentos nos tens dos bilhetes de passagem.
ndice CFBPTOT - Este ndice retorna os cupons fiscais bilhete de passagem em totalizao.
ndice CFBPCDS - Este ndice retorna os cancelamentos de desconto no subtotal dos bilhetes de
passagem.
ndice CFBPFPG - Este ndice retorna as formas de pagamento usadas nos cupons fiscais bilhetes de
passagem.
ndice CFBPCEM - Este indice retorna os cancelamentos dos bilhetes de passagem em emisso.
ndice CFBPENC - Este ndice retorna informaes dos bilhetes de passagem em encerramento.
ndice CFBPINTEST - Este ndice retorna o interior dos estornos nos bilhetes de passagem.
Observaes:
- Se desejar saber mais sobre o Sintegra, acesse o site do Sintegra para saber: www.sintegra.gov.br
1.14 Consumo de MFD - Trabalhando com a Compacto dos
Arquivos
Introduo
Desde de 2000 a Daruma se preocupa em demonstrar aos nossos clientes as
facilidades e as tecnologias que so usadas em nossos produtos de forma transparente,
sendo, assim aps estudos realizados por paceiros em potencial ligados a rea de
Desenvolvimento Daruma foi criado a nossa MFD que significa Memria Fita Detalhe.
A MFD, ou seja, Memria Fita Detalhe o local aonde ele armazena todas as
informaes Fiscais dentro de uma Memria de 128MB ou maior dependendo da
disponibilidade requisita, com Compactao de arquivos demonstrando ao usurio final
anos de recolhimento de informaes e por sua vez o resgate de informaes. Devido a
essa Tecnologia inovadora foi eliminada a segunda-via do cupom fiscal, reduzindo os
gastos com o armazenamento de bobinas e sendo registrados os dados e armazenado
de forma organizada as informaes dentro da MFD aonde em qualquer momento o
usurio pode obtar por resgatar as informaes.
Aps estudos realizados por um grupo de desenvolvedores, especialistas em
Daruma Framework 354
Daruma Automao
algortimos de compactao de dados e segurana de dados, foi desenvolvida a nossa
MFD aonde temos a melhor compactao de dados no mercado de forma simples,
'compacta' e segura garantindo a integridade das informaes armazendas na MFD.
Muitas pessoas perguntam como realizada a compactao nos arquivos enviados
para nossas impressoras trmicas com a tecnologia MFD e abaixo demonstrado como
realizar testes e como funciona a Ultra-Compactao das informaes dentro da MFD.
Quais Impressoras Daruma possuem a tecnologia MFD?
FS600;
FS2100T.
Como compactado os dados em nossa MFD?
A compactao das informaes so realizadas de 3 formas, aonde as
informaes gravadas so verificadas em NMERICO, LETRAS e
ALFANMERICO, desta forma a impressora verifica essas informaes e faz a
criptografia e a compactao das informaes.
A MFD possui uma tecnologia aonde foi desenvolvido um Dicionrio de
dados que reduz o consumo de MFD que passa para a impressora que essa
informao de dados j existe reduzindo o nmero de caracteres salvos na MFD,
conforme a explicao a seguir.
Exemplo de itens emitidos.:
Refrigerante Light;
Refrigerante Zero;
Refrigerante.
Exemplo do funcionamento da compactao.:
Refrigerante, Light, Zero.
Ou seja, no ir ter duplicidade de informao evitando o super-lotamento.
Para a realizao de teste de consumo de MFD, acesso o link.
1.14.1 Daruma_Framework_Teste_Consumo_MFD (ndice 6031
Para realizar os testes no Framework, voc necessita ter a Daruma32.dll e algum
exemplo Framework desenvolvido na Linguagem desejada. Estaremos utilizando
abaixo o exemplo em Delphi segue as imagens abaixo:
Para a 'down-load' do aplicativo Daruma Framework, junto a ltima verso da
nossa DLL (Verso Delphi 7.0) voc necessita acessar o link:
http://www.desenvolvedoresdaruma.com.br/home/downloads/Daruma32_Delphi
_Executavel.exe
Daruma 32 Framework 355
Daruma Automao
Impressoras Fiscais -> Metodos Exclusivos para MFD ->
Daruma_Framework_Teste_Consumo_MFD
Aps localizado a funo iremos iniciar os Testes, como segue a imagem abaixo:
Daruma Framework 356
Daruma Automao
Letras Aleatorias da Descrio do Item: Descreve utilizando a combinao de
A->Z as descries dos itens a serem utilizados na impressora fiscal trmica
realizando uma combinao entre as letras tendo como principal objetivo,
mostrar ao usurio que sempre que uma descrio se repetir no ir consumir o
mximo da MFD.
Codigo do Item Aleatorio: Cdigo do Item a ser passado, mesmo intuito da
'Descrio do Item', porm utilizando a combinao entre os nmeros de 0->9,
aonde os cdigos sero formados para o teste de forma a nunca repetir um
cdigo, exigindo dessa maneira o mximo da compactao da MFD.
Quantidade de Letras Aleatorias: Informa a quantidade de letras aleatrias a
serem utilizados no teste, para demonstrar ao usurio que mesmo utilizando
diversas quantidades haver de forma inteligente a compactao dos dados na
MFD.
Quantidade de Digitos no Codigo: Informa a quantidade de Cdigos a serem
utilizados no teste, para demonstrar ao usurio que mesmo utilizando diversas
quantidades haver de forma inteligente a compactao dos dados na MFD.
Quantos itens voc deseja em cada Cupom: Informa a quantidade de itens a
serem impressoras no Cupom Fiscal de teste.
Quantos cupons voc deseja: Informa a quantidade de cupons a serem
impressos na impressora trmica.
Perguntar Impressora Ligada(item): Pergunta se a impressora est ligada
para a execuo do teste.
Perguntar SubTotal(item): Pergunta o SubTotal dos itens a serem impressos
Perguntar GT(Cupom): Pergunta o GT(Grande Total) dos cupons a serem
impressos
Perguntar Status Cupom(Cupom): Pergunta o 'Status' do cupom a serem
impressos
Daruma 32 Framework 357
Daruma Automao
Imprimir Cupom(s): Boto inicial do teste, aonde sero realizados os
procedimentos descritos e configurados pelo usurio acima, esse processo pode
demorar dependendo do nmero de descrio passado pelo usurio.
Limpar List Box: Apaga os 'Status de Envio' registrado no processo de teste.
Limpar Logs: Apaga os Log's das operaes realizadas.
Reenviar Log: Realiza o re-envio do log solicitado pelas operaes, isso faz com
que repita os mesmos cupons impressos anteriormente.
Recalcular: Nessa opo importante, voc ir descobrir na real o quanto sua
MFD consumiu durante a realizao dos testes, demonstrando o sistema de
Compactao desenvolvido pela Daruma aonde o cliente final estar satisfeito ao
saber que no precisar realizar trocas de MFD durante um curto perodo de
tempo.
Ao Imprimir Cupom voc ir percebe que a impressora ir imprimir diversas
linhas testando as Strings passadas na tela acima, ao final dos testes uma
mensagem de sucesso ir aparecer. Para Cacular o quanto foi usado somente
apertar o boto Recalcular e voc ver o quanto em percentagem a MFD
consumiu no teste.
Qualquer dvida favor entrar em contato com o Suporte ao Desenvolvedor por
um de nossos canais listados a seguir:
Ligao gratuita via internet
Skype: suporte_daruma
Skype: suporte_desenvolvedores_daruma
Skype: desenvolvedores_suporte_daruma
Skype: daruma_suporte_alexandre
Skype: claudenir_andrade
Por email
suporte@daruma.com.br
suporte.desenvolvedores@daruma.com.br
desenvolvedores.suporte@daruma.com.br
suporte.alexandre@daruma.com.br
Por telefone
Desenvolvedores: 0800 770 3320
1.15 Nota Alagoana (AL)
1.15.1 Configurando a DLL para FS600/FS700 Trmica
Enter topic text here.
Daruma Framework 358
Daruma Automao
1.15.2 Configurando a DLL para FS345 Matricial
Configurando a Daruma32.dll para Gerao da NFP na Impressora FS345 (matricial)
Abaixo ser descrito como deve ser feita a configurao para que seja gerada a NFP nas
impressoras FS345.
Primeiro voc ir pegar o Daruma_NFP.zip em anexo a este documento Descompactar em uma
pasta de testes:
Ao descompactar voc encontrar os seguintes arquivos:
darumarfd.reg Exemplo das configuraes a serem feitas no registry;
darumarfdwin98.reg Exemplo das configuraes a serem feitas no registry Win98;
Daruma_Framework_Delphi7.exe Aplicativo de testes para realizao de testes;
Daruma32.dll Driver que integra o Seu Software Aplicativo com o ECF.
O que fazer com estes arquivos?
1. Abra num editor de sua preferncia o arquivo darumarfd e ver o seguinte contedo:
"RFD"="1"
"DataMovimento"="XXXXXX"
"ClicheUsuario"="XXXXXX"
"SwHouse_CNPJ"="1234567890" Obs.: Deve contm at 14 caracteres.
"SwHouse_IE"="123456" Obs.: Caso seja ISENTO, preencha com 000000.
"SwHouse_IM"="123456" Obs.: Caso no tenha preencher com 000000.
"SwHouse_NomeAplicativo"="Aplicativo de testes" Obs.: Deve contm at 40 caracteres
"SwHouse_RazaoSocial"="Aplicativo de testes" Obs.: Deve contm at 40 caracteres.
"SwHouse_VersaoAplicativo"="1.8.1.5" Obs.: Deve contm at 10 caracteres.
"ArquivoMovimento"="XXXXXX"
"HeaderRFD"="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
"DiretorioBackUp"="c:\\BKP_RFD_Daruma\\"
"DiretorioTrabalho"="c:\\RFD_Daruma\\"
2. Altere todas as chaves que comeam com SwHouse pelos dados de sua Sfotware House,
como por exemplo a chave SwHouse_CNPJ="seu cnpj", SwHouse_IE="sua inscrio social", e
assim por diante.
a. Observao: No use barras, ou pontos no CNPJ, IE, IM.
b. Caso no tenha IE ou IM, seja Isento, preencha os campos com 000000 ou ISENTO.
3. Salve as modificaes e saia do editor;
4. V no, diretrio que voc colocou o arquivo darumarfd.reg, agora j alterado e d um duplo
clique, com isso voc estar registrando a dll no windows.
5. Entre no regedit, v no diretrio (path)
HKEY_LOCAL_MACHINE\SOFTWARE\DARUMA\ECF\RFD, e confirme se alteraes com os
dados de sua Software House foram inseridos com sucesso.
6. Concluda esta etapa, hora de voc criar as pastas de trabalho e backup.
a. partir do C:\ crie uma pasta com o nome BKP_RFD_Daruma;
b. partir crie outra com o nome RFD_Daruma;
7. Agora hora de abrir o programa Daruma_Framerowrk_Delphi7.exe
a. Clique no boto Impressoras Fiscais;
b. Clique no segundo Menu partir da esquerda Mtodos para Recebimentos e Relatrios;
c. V l embaixo quase ao final e clique em Daruma_FI_LeituraX.
*Ateno se neste momento a ECF comear a apitar, ento fique tranqilo, pois deu certo a
configurao e agora s aguardar at que pare, isso poder levar vrios minutos. Portanto
Daruma 32 Framework 359
Daruma Automao
no desligue a impressora, nem saia do aplicativo at que pare de apitar e emita a LeituraX,
aps emitida a LeituraX verifiquei se foi gerado o arquivo MF.bin no diretrio de trabalho.
8. Se o procedimento anterior foi 100% ok, ento saia do Daruma_Framework_Delphi7.exe
Copie a Daruma32.dll da pasta de testes, para junto de seu aplicativo, substituindo todas as
verses ANTIGAS da Daruma32.dll entre em seu software e comece a trabalhar
normalmente.
*Deste momento em diante as suas vendas passaram a ser logadas no HD, na pasta
RFD_Daruma. Ao final do perodo, ser gerado o arquivo, que estar no diretrio de Backup
e que deve ser enviado para a SEFAZ/SP.
9. No final do dia, aps realizar a ReduoZ, procure no diretrio BKP_RFD_Daruma, pelo arquivo
com o seguinte nome.
DR4?????Q18, que traduzindo seria.
DR Iniciais do fabricante, que neste caso DR para Daruma;
4 Refere-se ao modelo do ECF, que neste caso para a FS345 sempre ser 4 (quatro);
????? Seria o nmero de srie do ECF, que pode ser qualquer combinao;
Q Letra que representa a data em que foi criado este documento, portando dia 17, se fosse 18
seria letra R, e assim por diante;
1 Referente ao ms de janeiro;
8 Refere-se ao 2008.
10. Se voc encontrar o arquivo com o nome, conforme explicado anteriormente, ento s envi-
lo atravs do SITE da SEFAZ/SP, que pode ser acessado pela URL a seguir:
http://www.nfp.fazenda.sp.gov.br
FAQ
Quando efetivamente gerado o arquivo que eu devo mandar atravs do SITE da SEFAZ?
R: No momento que executada a ReduoZ.
Posso executar o procedimento acima com o movimento aberto?
R: Sem problemas, porque o arquivo passar a ser gerado, somente no prximo movimento.
E se eu realizar o procedimento acima e no gerar o arquivo?
R: Procurar no diretrio de trabalho RFD_Daruma, pelo arquivo MF.BIN e apag-lo. Depois repita o
procedimento:
1. Entrar no Regedit;
2. Apagar a pasta RFD;
3. Registrar a dll novamente;
4. Preencher novamente todas as chaves que comeam em SW com os dados de sua Software
House.
5. Startar seu aplicativo e enviar uma LeituraX, se a ECF no apitar, como se fosse um grilo,
ento, verifique que ela esta com o clich correto e tambm tem usurio cadastrado, caso no
tenha umas das duas informaes descrita anteriormente, favor providenciar para que tenha e
repita o teste.
E se site na SEFAZ recusar o arquivo, com a mensagem de ECF invlido?
R: Verifique se voc no tem nenhuma outra dll mais antiga, que a que esta neste pacote. Pois as
verses anteriores a 2.21.19 estavam de fato com problemas.
Como fao para saber a verso da Daruma32.dll?
R: Start o Daruma_Framework_Delphi7.exe Impressoras Fiscais Mtodos de Informaes e
Status Mtodos de Informao do Ecf e Contadores Mtodo Daruma_FI_RetornarVersaoDLL.
O que eu fao com os arquivos gerados com dll's anteriores a 2.21.19 e que o validador no
aceita?
R: Armazene todos os arquivos e um CD e mantenha-os guardados, para que quando o FISCO
pedir voc os tenha em mos.
Daruma Framework 360
Daruma Automao
Se tiver alguma dvida e/ou dificuldade, entre em contato com a nossa equipe de suporte ao
desenvolvedor.
E-mails:
desenvolvedores.suporte@daruma.com.br, suporte.desenvolvedores@daruma.com.br,
desenvolvedores.daruma@daruma.com.br, suporte@daruma.com.br, ddc.suporte@daruma.com.br,
suporte.ddc@daruma.com.br, suporte.alexandre@daruma.com.br, claudenir@daruma.com.br
Skypes:
desenvolvedores_suporte_daruma, suporte_desenvolvedores_daruma, desenvolvedores_daruma,
suporte_daruma, ddc_suporte_daruma, suporte_ddc_daruma, suporte_alexandre_daruma, claudenir_andrade
Telefone Gratuito: 0800 770 3320
De segunda a sexta das 08:00 as 12:00 e das 13:30 as 18:00
1.16 Cupom Mania - RJ
1.16.1 Configurando Cupom Mania
1. Introduo
Como de conhecimento, foi lanado no Rio de Janeiro o Projeto "Cupom Mania". Este
proejto traz como exigncia que seja impresso no Cupom Fiscal a frase "Vlido para o
Cupom Mania" e tambm o total de Imposto devido na operao de todo o cupom fiscal,
envolvendo todos os itens vendidos, independente da alquota utilizada.
Transcrevo abaixo uma parte deste decreto onde constam duas destas exigncias acima
explicadas:
XI - informaes suplementares, se for o caso, impressas no mximo em 8 (oito) linhas,
onde dever constar:
1 - o valor total do ICMS devido na operao ou prestao, isto , o somatrio dos
valores do imposto incidente em cada item do Cupom Fiscal; 2 - a expresso: "
VLIDO PARA O CUPOM MANIA ".
Fonte:
http://www.fazenda.rj.gov.br/portal/index.portal?_nfpb=true&_pageLabel=tributaria&file
=/legislacao/tributaria/decretos/2009/42084.shtml
2. Configurao
1 - Atualize a verso da Dll Daruma para 2.27.11 ou superior atravs do link:
SiteDesenvolvedoresDaruma.
2 - Habilite a chave CupomMania no Registry para isso voc pode utilizar o mtodo
Daruma_Registry_AlterarRegistry(Indice83).
Daruma 32 Framework 361
Daruma Automao
3. Opes Cupom Mania
Cupom Mania = 1 - "Vlido para Cupom Mania" na primeira linha da mensagem do aplicativo e
"Total ICMS" na primeira linha da mensagem promocional;

Cupom Mania = 2 - "Vlido para Cupom Mania" na primeira linha da mensagem promocional e
"Total ICMS" na segunda linha da mensagem promocional;
Daruma Framework 362
Daruma Automao
Cupom Mania = 3 - "Vlido para Cupom Mania" na primeira linha da mensagem do aplicativo e
"Total ICMS" na ultima linha da mensagem promocional;
Cupom Mania = 4 - "Vlido para Cupom Mania" na penltima linha da mensagem promocional e
"Total ICMS" na ultima linha da mensagem promocional;
Daruma 32 Framework 363
Daruma Automao
Observao: Se for utilizar as configuraes 2 e 4, no passar mais que 6 linhas na
mensagem promocional, pois 2 linhas sero utilizadas exclusivamente pelo cupom
mania. Somente as opes 2 e 4 atendem ao modelo de impressora fiscal
FS345(Matricial).
Temos tambm o mtodo Daruma_FI_CupomMania que retorna o Total de ICMS e ISS sempre do
ltimo cupom. E somente e exclusivamente de a chave cupom mania estiver ligada.
Dvidas entre em contato com nossa equipe de suporte atravs dos nossos canais de contato:
Por Skype
Skype: suporte_daruma
Skype: suporte_desenvolvedores_daruma
Skype: desenvolvedores_suporte_daruma
Skype: daruma_suporte_alexandre
Skype: claudenir_andrade
Skype: suporte_ddc_daruma
Skype: ddc_suporte_daruma
Skype: suporte.daruma (suporte CPU)
Por email
suporte@daruma.com.br
suporte.desenvolvedores@daruma.com.br
desenvolvedores.suporte@daruma.com.br
desenvolvedores.daruma@daruma.com.br
desenvolvedores@daruma.com.br
Daruma Framework 364
Daruma Automao
suporte.alexandre@daruma.com.br
ddc.suporte@daruma.com.br
suporte.ddc@daruma.com.br
suporte.daruma@daruma.com.br (suporte CPU)
Ligao Gratuita: 0800 770 3320
1.16.2 Daruma_FI_CupomMania(ndice 0000)
Definio do Mtodo:
Retorna o Total de ISS e ICMS contabilizado no ltimo cupom.
Parmetros do Mtodo:
String: Varivel por referncia com o tamanho de 13(treze) posies para receber o total de ISS
acumulados do ltimo cupom fiscal.
String: Varivel por referncia com o tamanho de 13(treze) posies para receber o total de ICMS
acumulados do ltimo cupom fiscal.
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 foi executado, 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 do total de ICMS e ISS referente ao ltimo cupom de a chave CupomMania
estiver habilitada.
- Para habilitar a chave CupomMania no Registry utilize o mtodo
Daruma_Registry_AlterarRegistry(Indice83).
Exemplos:
Exemplo em Visual Basic 6.0:
Str_ICMS= Space(13)
Str_ISS= Space(13)
Int_Retorno = Daruma_FI_CupomMania(Str_ISS, Str_ICMS)
TX_Retorno.Text = Str_ISS
Exemplo em Delphi 7.0:
var
Str_ICMS, Str_ISS: String;
begin
SetLength (Str_ICMS,13);
SetLength (Str_ISS,13);
Int_Retorno := Daruma_FI_CupomMania(Str_ISS, Str_ICMS);
Edit1.Lines.Text := Pchar(' Cupom Mania Total ISS: ' + Str_ISS );
Edit1.Lines.Text := Edit1.Lines.Text + ' Total ICMS: ' + Str_ICMS;
Daruma 32 Framework 365
Daruma Automao
Framework_Impressoras_Fiscais.Daruma_Analisa_Retorno();
1.17 Retornos
1.17.1 Retorna Erro Extendido
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 foi executado, 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
07 Metodo permitido apenas em modo fiscal (IF sem jmper)
08 Relatrio Gerncial no aberto
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
14 No h mais memria disponvel para esta operao/No h nenhuma posio de mria disponvel.
15 Item a cancelar no foi encontrado
16 Erro de sintaxe no mtodo
17 "Estouro" de capacidade numrica (overflow)
18 Selecionado totalizador tributado com alquota de imposto no definida
19 Memria Fiscal vazia
20 No existem campos que requerem atualizao
21 Detectado proximidade do final da bobina de papel
22 Cupom de Reduo Z j foi emitido. IF inoperante at 0:00h do prximo dia
23 Reduo Z do perodo anterior ainda pendente. IF inoperante
24 Valor de desconto ou acrscimo invlido (limitado a 100%)
25 Carctere invlido foi encontrado nos Parmetros do Mtodos
26 Mdoto no pode ser executado
27 Impressora fora de Linha/Nenhum perifrico conectado a interface auxiliar
28 Foi encontrado um campo em zero
29 Documento anterior no foi Cupom Fiscal. No pode emitir Cupom Adicional
30 Acumulador No Fiscal selecionado no vlido ou no est disponvel
31 No pode autenticar. Excedeu 4 repeties ou no permitida nesta fase
32 Cupom adicional inibido por configurao
35 Relgio Interno Inoperante
36 Verso do firmware gravada na Memria Fiscal no a esperada
37 Alquota de imposto informada j est carregada na memria
38 Forma de pagamento selecionada no vlida
39 Erro na seqncia de fechamento do Cupom Fiscal
40 IF em Jornada Fiscal. Alterao da configurao no permitida
41 Data invlida. Data fornecida inferior ltima gravada na Memria Fiscal
42 Leitura X inicial ainda no foi emitida
43 No pode emitir Comprovante Vinculado
Daruma Framework 366
Daruma Automao
44 Cupom de Oramento no permitido para este estabelecimento(Mensagem do Aplicativo No
Programada)
45 Campo obrigatrio em branco
48 No pode estornar
49 Forma de pagamento indicada no encontrada
50 Fim da bobina de papel
51 Nenhum usurio cadastrado na MF
52 MF no instalada ou no inicializada
56 Documento j aberto
61 Queda de energia durante a emisso de Cupom Fiscal
75 Operao com ISS no permitida (se a sua impressora for uma FS600 ou FS2100T, ento ser
preciso ter uma inscrio municipal gravada em sua impressora para que seja possvel programar/utilizar
alquota de servio).
76 Desconto em ISS no permitido neste ECF (a programao dever ser feita por meio de interveno
tcnica e caso o Estado permita)
77 Acrscimo em IOF inibido
80 Perifrico na interface auxiliar no pode ser reconhecido
81 Solicitado preenchimento de cheque de banco desconhecido
82 Solicitado transmisso de mensagem nula pela interface auxiliar
83 Extenso do cheque no cabe no espao disponvel
84 Erro na comunicao com a interface auxiliar
85 Erro no dgito verificador durante comunicao com a PertoCheck
86 Falha na carga de geometria de folha de cheque
87 Parmetros do Mtodo: invllido para o campo de data do cheque
90 Sequncia de validao de nmero de srie invlida
180 Mensagem do aplicativo no programada. (Esta mensagem no opcional e sim uma exigncia da
legislao e dever ser programada para que o ECF seja liberado para a emisso de documentos fiscais.
Para programar a mensagem use os mtodos:Daruma_Registry_AplMensagem1(ndice36) e
mtodo:Daruma_Registry_AplMensagem2(ndice37).
181 No possivel realizar Reduo Z entre 00:00am e 02:00am (Meia Noite e Duas da Manh) nesta
verso de firmware da FS600 (est limitao existe nas verses 1.1 pra baixo.
182 Tampa aberta.
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);
1.17.2 Daruma FrameworkTabela de Retornos ST1 e ST2
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:
Daruma 32 Framework 367
Daruma Automao
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
"configurados":
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
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"
Daruma Framework 368
Daruma Automao
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.17.3 Possveis valores Retornados
Retornos:
0: Mtodo no executado.
1: Ok mtodo enviado com sucesso.
-1: Erro de comunicao.
-2: Parmetro invlido passado no mtodo.
-3: Alquota no programada no ECF.
-4: A Chave ou Valor no Registry No foi encontrado.
-5: Erro ao abrir a porta de comunicao.
-6: Impressora desligada ou cabo de comunicao desconectado.
-8: Erro ao criar ou gravar no arquivo STATUS.TXT ou RETORNO.TXT.
-11: Mtodo no pode ser executado, impressora conectada no uma MFD.
-24: Forma de pagamento no programada.
-25: Totalizador No Fiscal No Programado.
-27: A Funo Executou o Comando porm o ECF sinalizou Erro, chame a
DARUMA_FI_RETORNOIMPRESSORA para identificar o Erro.
-28: Time-Out, o Tempo esgotou e o Arquivo no foiu encontrado no Path passado como Parmetro
-31: Forma de pagamento no finalizada.
Daruma 32 Framework 369
Daruma Automao
-52: Erro de abertura de arquivos.
-108: Perodo solicitado menor que o 1 documento emitido.
-109: Perodo Data final maior que a data do movimento da ltima Reduo Z emitida.
-110: Perodo sem movimento.
Index
- . -
.log 102
- < -
</a> No Aguardar at o Trmino da Impresso
273, 279
<a> Aguardar at o Trmino da Impresso 273,
279
<b></b> Para sinalizar Negrito 273, 279
<c></e> Para sinalizar Condensado 273, 279
<ce></ce> Para Centralizar 273, 279
<dt></dt> Para Imprimir Data Atual 273, 279
<e></e> Para sinalizar Expandido 273, 279
<g></g> Abre a Gaveta 273, 279
<hr></hr> Para Imprimir Hora Atual 273, 279
<i></i> Para sinalizar iTlico 273, 279
<l></l> Para Saltar Uma Linha 273, 279
<n></n> Para sinalizar Normal 273, 279
<s></s> Para sinalizar Sublinhado 273, 279
<sl>NN</sl> Para Saltar Vrias Linhas 273, 279
<sn></sn> Sinal Sonoro 273, 279
<sp>NN</sp> Inserir NN Espaos em Branco 273,
279
<tc>C</tc> Riscar Linha com um Caracter Especifico
273, 279
- 0 -
00 IF em modo Manuteno. Foi ligada sem o
Jumper de Operao 166, 365
0000 235, 236, 237
01 291
01 Mtodo disponvel somente em modo
Manuteno 166, 365
02 292
02 Erro durante a gravao da Memria Fiscal
166, 365
03 294
03 Memria Fiscal esgotada 166, 365
04 295
04 Erro no relgio interno da IF 166, 365
05 296
05 Falha mecnica na IF 166, 365
06 297
06 Erro durante a leitura da Memria Fiscal 166,
365
07 298
07 Metodo permitido apenas em modo fiscal (IF sem
jmper) 166, 365
08 299
09 300
- 1 -
1 98
- - -
-1 368
- 1 -
10 102, 301
10 Documento sendo emitido 166, 365
1000 44
1001 44
1005 47
1006 48
1007 48
1008 50
1009 51
1010 54
1011 53
1012 52
1013 55
1014 47
1015 58
1016 57
1017 55
1018 56
11 103
- - -
-11 368
Daruma Framework 370
Daruma Automao
- 1 -
11 Documento no foi aberto 166, 365
1100 69
1101 67
1102 64
1103 65
1104 65
1105 66
1106 70
12 103
12 No existe documento a cancelar 166, 365
1200 71
1201 61
1202 68
1203 58
1204 59
1205 60
1206 71
1207 72
1208 60
1210 61
1211 63
13 104
foi encontrado nos Parmetros do Mtodo
166, 365
1300 73
1301 73
1302 74
1310 76
1311 75
1312 75
14 104
14 No h mais memria disponvel para esta
operao/No h nenhuma posio de mria
disponvel. 166, 365
1400 123
1401 129
1402 165
1403 122
1404 121
1405 122
1406 153
1407 134
1408 152
1410 151
1411 137
1412 139
1413 139
1414 148
1415 149
1416 150
1417 140
1418 144
1419 143
1420 143
1421 142
1422 142
1423 156
1425 135
1426 136
1427 164
1428 161
1429 141
1430 141
1431 134
1432 131
1433 154
1434 144
1435 146
1437 145
1438 146
1439 133
1440 130
1441 149
1443 132
1444 127
1445 130
1446 155
1447 155
1448 128
1449 153
1450 152
1451 167
1452 168
1453 168
1454 169
1455 169
1456 170
1457 171
1458 172
1459 172
1460 173
Index
371
Daruma Automao
1461 173
1462 174
1463 175
1464 174
1465 175
1466 176
1467 135
1468 140
1469 124
1470 127
1471 123
1472 166, 365
1473 154
1479 164
1481 161
1483 147
1484 125
1485 178
1486 131
1488 126
1489 126
1490 138, 147
1491 137
1492 138
1493 157
1495 178
1496 179
1497 171
1498 148
1499 176
15 105
15 Item a cancelar no foi encontrado 166, 365
1500 124
1502 180
16 Erro de sintaxe no mtodo 166, 365
17 97
17 "Estouro" de capacidade numrica (overflow)
166, 365
18 107
18 Selecionado totalizador tributado com alquota de
imposto no definida 166, 365
180 Mensagem do aplicativo no programada. (Esta
mensagem no opcional e sim uma exigncia da
legislao e dever ser programada para que o ECF
seja liberado para a emisso de documentos fiscais.
Para programar a mensagem use os
mtodos:Daruma_Registry_AplMensagem1(ndice
36) e
mtodo:Daruma_Registry_AplMensagem2(ndice
37). 166, 365
181 No possivel realizar Reduo Z entre
00:00am e 02:00am (Meia Noite e Duas da Manh)
nesta verso de firmware da FS600 (est limitao
existe nas verses 1.1 pra baixo. 166, 365
182 Tampa Aberta 166
19 98
19 Memria Fiscal vazia 166, 365
1900 330
19000 331
1901 327
1902 326
1903 331
1904 326
1905 328
1Linha 44, 104
- 2 -
2 99
- - -
-2 368
- 2 -
2.45 3
20 107
20 No existem campos que requerem atualizao
166, 365
2000 217
2001 219
2003 14
21 105
21 Detectado proximidade do final da bobina de
papel 166, 365
22 108
22 Cupom de Reduo Z j foi emitido. IF inoperante
at 0:00h do prximo dia 166, 365
225 180, 364
Daruma Framework 372
Daruma Automao
23 106
23 Reduo Z do perodo anterior ainda pendente. IF
inoperante 166, 365
24 106
- - -
-24 368
- 2 -
24 Valor de desconto ou acrscimo invlido (limitado
a 100%) 166, 365
- - -
-25 368
- 2 -
25 Carctere invlido foi encontrado nos Parmetros
do Mtodos 166, 365
26 Mdoto no pode ser executado 166, 365
- - -
-27 368
- 2 -
27 Impressora fora de Linha/Nenhum perifrico
conectado a interface auxiliar 166, 365
28 108
- - -
-28 368
- 2 -
28 Foi encontrado um campo em zero 166, 365
29 Documento anterior no foi Cupom Fiscal. No
pode emitir Cupom Adicional 166, 365
- 3 -
3 100
- - -
-3 368
- 3 -
30 286
30 Acumulador No Fiscal selecionado no vlido
ou no est disponvel 166, 365
301 80
302 79
303 84
304 80
305 82
306 82
307 83
308 83
31 288
- - -
-31 368
- 3 -
31 No pode autenticar. Excedeu 4 repeties ou
no permitida nesta fase 166, 365
310 81
312 85
313 86
314 43
32 286
32 Cupom adicional inibido por configurao 166,
365
33 287
34 288
35 109, 247
35 Relgio Interno Inoperante 166, 365
36 109
36 Verso do firmware gravada na Memria Fiscal
no a esperada 166, 365
Index
373
Daruma Automao
37 110
37 Alquota de imposto informada j est carregada
na memria 166, 365
38 110, 111
38 Forma de pagamento selecionada no vlida
166, 365
38400 108
39 Erro na seqncia de fechamento do Cupom
Fiscal 166, 365
- 4 -
4 100
- - -
-4 368
- 4 -
40 IF em Jornada Fiscal. Alterao da configurao
no permitida 166, 365
400 87
4001 260
4002 263
4003 264
4004 265
4005 266
4007 269
4008 262
4009 266
4013 267
4014 268
4015 269
403 88
404 88
405 89
407 90
409 91
41 Data invlida. Data fornecida inferior ltima
gravada na Memria Fiscal 166, 365
410 91
411 87
412 90
42 111
42 Leitura X inicial ainda no foi emitida 166, 365
43 No pode emitir Comprovante Vinculado 166,
365
44 Cupom de Oramento no permitido para este
estabelecimento(Mensagem do Aplicativo No
Programada) 166, 365
45 248
45 Campo obrigatrio em branco 166, 365
46 290
48 290
48 No pode estornar 166, 365
49 113
49 Forma de pagamento indicada no encontrada
166, 365
- 5 -
5 101
- - -
-5 368
- 5 -
50 Fim da bobina de papel 166, 365
5007 251
5008 250
5009 252
5010 253
5011 252
5012 257
5013 258
5014 258
5015 248
5016 249
5017 250
5018 253
5019 259
5020 259
5021 254
5022 255
5023 255
5024 256
5025 257
5026 251
51 Nenhum usurio cadastrado na MF 166, 365
52 112
Daruma Framework 374
Daruma Automao
52 MF no instalada ou no inicializada 166, 365
53 41, 192
5350 310
5351 318
5360 311
5361 319
5363 312
5410 308
5412 316
5420 303
5422 314
5430 310
5432 317
5440 306
5443 315
5450 313, 320
5456 314
5460 304
55 42
56 113
56 Documento j aberto 166, 365
57 114
58 41, 115
59 41, 116
- 6 -
6 101
- - -
-6 368
- 6 -
60 42, 116, 160
6000 183, 239
6001 186
6002 191
6003 191
6004 181
6005 188
6008 192
6009 198
6010 199
6011 200
6012 201
6013 193
6014 194
6015 194
6016 196
6017 197
6018 197, 214, 353
6019 202
602 157
6020 202, 348
6021 351
6022 339
6023 341
6024 342
6025 343, 344
6026 345
6028 346
6029 347
603 76
6030 347
6031 215, 354
604 77
6041 207
6042 209, 245
6043 210, 246
605 158
606 160
607 77
6083 204, 242
6084 205, 243
6085 205, 242
6086 206, 243
6087 238
60A 158
61 43
61 Queda de energia durante a emisso de Cupom
Fiscal 166, 365
63 116
66 117
69 118
- 7 -
7 101
70 119
71 120
Index
375
Daruma Automao
76 Desconto em ISS no permitido neste ECF (a
programao dever ser feita por meio de
interveno tcnica e caso o Estado permita) 166,
365
77 Acrscimo em IOF inibido 166, 365
- - -
-8 368
- 8 -
80 Perifrico na interface auxiliar no pode ser
reconhecido 166, 365
81 Solicitado preenchimento de cheque de banco
desconhecido 166, 365
82 Solicitado transmisso de mensagem nula pela
interface auxiliar 166, 365
83 96
83 Extenso do cheque no cabe no espao
disponvel 166, 365
84 Erro na comunicao com a interface auxiliar
166, 365
85 Erro no dgito verificador durante comunicao
com a PertoCheck 166, 365
86 Falha na carga de geometria de folha de cheque
166, 365
87 Parmetros do Mtodo: invllido para o campo de
data do cheque 166, 365
- 9 -
9 102
90 Sequncia de validao de nmero de srie
invlida 166, 365
9600 108
- A -
Abertura 76
Abre 58, 60, 61, 76, 194, 198, 217, 257
AbreCupom 44
Abrir 106
AbrirdiaAuto 106
Aciona 76, 197
Acresc 149
Acrescimo 167, 203
Acrescimo - Retorno 167
Acrescimos 149, 254
Acumulada 148
Acumulado 176
Adicional 56, 90, 113, 114, 196, 211, 247
Ajusta 70
Alagoana 207
Aliquota 79, 130
Aliquota Valores 178
Aliquotas 130, 147, 153
Altera 99
Alterando o Registry 97
Alterar 308, 316
Alterar Chave 96
Analitico 158
Anterior 47
Aplicativo 35, 109, 110
Arquivo 65, 66, 68, 262, 330
Arquivo de Comando 42
Arredondamento 82, 88, 117
Assinar 237, 238
Assinatura Digital 237, 238
Ato Cotepe 17/04 207, 209, 210, 245, 246
Aumenta 54, 58
Autentica 73, 74
Autenticacao 264, 265, 266
Autenticao 73, 74, 89
Autenticar na Bobina 265, 266
Autenticar no Documento 265, 266
Automatica 104, 105
Automatico 87
Automtico 43
- B -
Balana 117
Banco 320, 322
Barras 186, 187, 188, 269
Bilhete 217, 220
Bilhete de Passagem 211
Bilhete Passagem 187
Bipmap 267
Bomba 117
Bruta 147, 148
Bufferizando 38
Daruma Framework 376
Daruma Automao
- C -
Cadastrar 303, 314
Caixa 135
Calculos 88
Caminho 99
Campo Livre 211
Cancel 150
Cancela 47, 48
Cancelados 143, 150, 168
Cancelamento 259
Cancelamentos 150, 255
Valor Acumulado 178
Cancelar 251
Canlelamentos 168
CarregaChavePrivada 235
Carregar 252
CGC 139
CGC proprietario do ECF 135
Chave 98, 235
Cheque 248, 249, 250, 251, 252, 253
Cliche 135
CMC7 251
CNF 168, 257
CNFNV 123
CNFV 122, 259
CNPJ do ECF 135
Codificada 236
Codificado 204, 205, 206, 242, 243
CodificaInformacao 236
Codigo 186, 187, 188, 251, 269
Cdigo 233
Comandos 38, 115, 116
Comandos em Lote 38
Combutvel 117
ComIndice 147
Como Vender Itens 44
Compactao 214, 215
Completa 64, 65, 66
Comprovante 58, 59, 60, 122, 123, 178, 179
COMX 98
Conectada 131
Config 114
Configura 43
Configuraes 77
Configuracoes do ECF 87, 88, 89, 90, 91
Configurando 40, 87, 88
Configurando a Daruma32.dll para trabalhar com
Terminal Service 11
Configurando a Daruma32.SO 10
Configurando a DLL 6, 19, 119, 120, 121
Configurando Impressora DUAL 286, 290
Configurando NFS 39
Configurando o Registry 119, 120, 121
Consulta 181
Consulta decimais 191
Consultar 304, 306, 315
Consumidor 55
Consumo 215
Consumo MFD 214, 215, 353, 354
Contador 146
Contador de LeituraX 169, 176
Contador de Nao Fiscal Nao Vinculado 176
Contador de Nao Fiscal Vinculado 176
Contador de Reduo Z 172
Contador de Reducao Z Restante 172
Contador de Reinicio 171
Contador Geral Nao Fiscal 174
Contador Nao Fiscal 176
Contadores 146
Controle 101
COO 140, 210, 246
COO FINAL 140
COO INICIAL 140
COOFinal 176
COOInicial 176
Corrigir 253
Cria 258
CriarAssinatura 237, 238
Criptografado 138
Criptografia 137, 138
Cumpons 143
Cupom 44, 47, 48, 53, 56, 87, 90, 113, 114, 121,
140, 192, 196, 247
Cupom Adicional 211
Cupom Fiscal 24
Cupom Mania 180, 360, 364
Cupom Nao Fiscal Nao Vinculado 169, 170, 171
CupomNFNV 170, 171
Cupons 83, 90
Index
377
Daruma Automao
- D -
Dados 151, 212
Daruma 25
Daruma Framework 11
Daruma TA1000 Gerar Banco com Produtos 320
Daruma TA1000 Gerar Banco com Usuarios 322
Daruma_DUAL_Autenticar 265, 266
Daruma_DUAL_EnviarBMP 267
Daruma_DUAL_Imprimimindo_Codigos_de_Barras
269
Daruma_DUAL_ImprimirArquivo 262
Daruma_DUAL_ImprimirTexto 260
Daruma_DUAL_ProgramarGuilhotina 269
Daruma_DUAL_StatusGaveta 266
Daruma_DUAL_VerificaDocumento 264
Daruma_DUAL_VerificarGuilhotina 268
Daruma_DUAL_VerificaStatus 263
Daruma_FI_AberturaDoDia 76
Daruma_FI_AbreComprovanteNaoFiscalVinculado
58
Daruma_FI_AbreCupom 44
Daruma_FI_AbreRecebimentoNaoFiscal 61
Daruma_FI_AbreRelatorioGerencial 60
Daruma_FI_AcionaGaveta 76
Daruma_FI_Acrescimos 149
Daruma_FI_AumentaDescricaoItem 58
Daruma_FI_Autenticacao 73
Daruma_FI_AutenticacaoStr 74
Daruma_FI_CancelaCupom 47
Daruma_FI_CancelaItemAnterior 47
Daruma_FI_CancelaItemGenerico 48
Daruma_FI_Cancelamentos 150
Daruma_FI_CfgCalcArredondamento 88
Daruma_FI_CfgCupomAdicional 90
Daruma_FI_CfgEspacamentoCupons 90
Daruma_FI_CfgFechaAutomaticoCupom 87
Daruma_FI_CfgHorarioVerao 88
Daruma_FI_CfgImpEstGavVendas 87
Daruma_FI_CfgLimiarNearEnd 91
Daruma_FI_CfgPermMensPromCNF 91
Daruma_FI_CfgSensorAut 89
Daruma_FI_CGC_IE 139
Daruma_FI_ClicheProprietarioEx 135
Daruma_FI_ContadoresTotalizadoresNaoFiscais
146
Daruma_FI_COO 140
Daruma_FI_CupomMania 180, 364
Daruma_FI_DadosUltimaReducao 151
Daruma_FI_DataHoraImpressora 144
Daruma_FI_DataHoraReducao 145
Daruma_FI_DataMovimento 146
Daruma_FI_Descontos 149
Daruma_FI_EfetuaFormaPagamento 50
Daruma_FI_EfetuaFormaPagamentoDescricaoForm
a 51
Daruma_FI_EfetuaFormaPagamentoNaoFiscal 63
Daruma_FI_EmitirCupomAdicional 56
Daruma_FI_EqualizaFormasPgto 85
Daruma_FI_EspacoEntreLinhas 83
Daruma_FI_EstornoFormasPagamento 55
Daruma_FI_FechaComprovanteNaoFiscalVinculado
60
Daruma_FI_FechaCupom 53
Daruma_FI_FechaCupomResumido 52
Daruma_FI_FechamentoDoDia 77
Daruma_FI_FechaRelatorioGerencial 61
Daruma_FI_FlagsFiscais 161
Daruma_FI_FlagsFiscaisStr 164
Daruma_FI_GrandeTotal 148
Daruma_FI_IdentificaConsumidor 55
Daruma_FI_ImprimeConfiguracoesImpressora 77
Daruma_FI_IniciaFechamentoCupom 48
Daruma_FI_LeituraMemoriaFiscalData 64
Daruma_FI_LeituraMemoriaFiscalReducao 65
Daruma_FI_LeituraMemoriaFiscalSerialData 65
Daruma_FI_LeituraMemoriaFiscalSerialReducao
66
Daruma_FI_LeituraX 67
Daruma_FI_LeituraXSerial 68
Daruma_FI_LerAliquotasComIndice 147
Daruma_FI_LinhasEntreCupons 83
Daruma_FI_MapaResumo 157
Daruma_FI_MinutosImprimindo 141
Daruma_FI_MinutosLigadas 141
Daruma_FI_NomeiaTotalizadorNaoSujeitoIcms 80
Daruma_FI_NumeroCaixa 135
Daruma_FI_NumeroCupom 140
Daruma_FI_NumeroCuponsCancelados 143
Daruma_FI_NumeroIntervencoes 142
Daruma_FI_NumeroLoja 136
Daruma_FI_NumeroOperacoesNaoFiscais 144
Daruma_FI_NumeroReducoes 143
Daruma Framework 378
Daruma Automao
Daruma_FI_NumeroSerie 137
Daruma_FI_NumeroSubstituicoesProprietario 142
Daruma_FI_PalavraStatus 161
Daruma_FI_ProgramaAliquota 79
Daruma_FI_ProgramaArredondamento 82
Daruma_FI_ProgramaFormasPagamento 80
Daruma_FI_ProgramaFormasPgtoSemVincular 86
Daruma_FI_ProgramaHorarioVerao 84
Daruma_FI_ProgramaOperador 81
Daruma_FI_ProgramaTruncamento 82
Daruma_FI_ProgramaViculados 85
Daruma_FI_RecebimentoNaoFiscal 68
Daruma_FI_ReducaoZ 69
Daruma_FI_ReducaoZAjustaDataHora 70
Daruma_FI_RegistraNumeroSerie 137
Daruma_FI_RelatorioGerencial 71
Daruma_FI_RelatorioTipo60Analitico 158
Daruma_FI_RelatorioTipo60Mestre 160
Daruma_FI_RetornaAcrescimoNF 167
Daruma_FI_RetornaCancelamento 173
Daruma_FI_RetornaCFCancelados 168
Daruma_FI_RetornaCLX 169
Daruma_FI_RetornaCNFCancelados 168
Daruma_FI_RetornaCNFNV 169
Daruma_FI_RetornaCNFV 170
Daruma_FI_RetornaCRO 171
Daruma_FI_RetornaCRZ 172
Daruma_FI_RetornaCRZRestante 172
Daruma_FI_RetornaDescontoNF 173
Daruma_FI_RetornaDescricaoCNFV 171
Daruma_FI_RetornaErroExtendido 166, 365
Daruma_FI_RetornaGNF 174
Daruma_FI_RetornaIndiceComprovanteNaoFiscal
179
Daruma_FI_RetornaRegistradoresFiscais 178
Daruma_FI_RetornaRegistradoresNaoFiscais 176
Daruma_FI_RetornarVersaoDLL 180
Daruma_FI_RetornaSerialCriptografado 138
Daruma_FI_RetornaTempoImprimindo 175
Daruma_FI_RetornaTempoLigado 174
Daruma_FI_RetornaTotalPagamentos 175
Daruma_FI_RetornaTroco 176
Daruma_FI_RetornaValorComprovanteNaoFiscal
178
Daruma_FI_RetornoAliquotas 153
Daruma_FI_RetornoImpressora 165
Daruma_FI_SaldoAPagar 153
Daruma_FI_Sangria 71
Daruma_FI_SimboloMoeda 164
Daruma_FI_StatusComprovanteNaoFiscalNaoVincul
ado 123
Daruma_FI_StatusComprovanteNaoFiscalVinculado
122
Daruma_FI_StatusCupomFiscal 121
Daruma_FI_StatusRelatorioGerencial 122
Daruma_FI_SubTotal 152
Daruma_FI_Suprimento 72
Daruma_FI_TerminaFechamentoCupom 54
Daruma_FI_TipoUltimoDocumento 157
Daruma_FI_Troco 152
Daruma_FI_UltimaFormaPagamento 154
Daruma_FI_UltimoItemVendido 156
Daruma_FI_UsaComprovanteNaoFiscalVinculado
59
Daruma_FI_UsaUnidadeMedida 57
Daruma_FI_ValorFormaPagamento 155
Daruma_FI_ValorPagoUltimoCupom 154
Daruma_FI_ValorTotalizadorNaoFiscal 155
Daruma_FI_VendaBruta 147
Daruma_FI_VendaBrutaAcumulada 148
Daruma_FI_VendeItem 44
Daruma_FI_VerificaAliquotasIss 130
Daruma_FI_VerificaDescricaoFormasPagamento
127
Daruma_FI_VerificaDiaAberto 125
Daruma_FI_VerificaDocAutenticacao 73
Daruma_FI_VerificaEpromConectada 131
Daruma_FI_VerificaEstadoGaveta 75
Daruma_FI_VerificaEstadoGavetaStr 75
Daruma_FI_VerificaEstadoImpressora 129
Daruma_FI_VerificaFormasPagamentoEx 128
Daruma_FI_VerificaHorarioVerao 124
Daruma_FI_VerificaImpressoraLigada 123
Daruma_FI_VerificaIndiceAliquotasIss 130
Daruma_FI_VerificaModeloECF 124
Daruma_FI_VerificaModoOperacao 134
Daruma_FI_VerificaNumeroSerie 138
Daruma_FI_VerificaRecebimentosNaoFiscal 132
Daruma_FI_VerificaTipoImpressora 127
Daruma_FI_VerificaTotalizadoresNaoFiscaisEx
131
Daruma_FI_VerificaTotalizadoresParciais 134
Daruma_FI_VerificaTruncamento 133
Daruma_FI_VerificaXPendente 126
Index
379
Daruma Automao
Daruma_FI_VerificaZPendente 126
Daruma_FI_VersaoFirmware 139
Daruma_FI2000_AbreRelatorioGerencial 257
Daruma_FI2000_AcrescimosICMSISS 254
Daruma_FI2000_CancelamentoCNFV 259
Daruma_FI2000_CancelamentosICMSISS 255
Daruma_FI2000_CancelarCheque 251
Daruma_FI2000_CarregarCheque 252
Daruma_FI2000_CorrigirGeometriaCheque 253
Daruma_FI2000_CriaRelatorioGerencial 258
Daruma_FI2000_DescontosICMSISS 255
Daruma_FI2000_DescontoSobreItemVendido 253
Daruma_FI2000_ImprimirCheque 249
Daruma_FI2000_ImprimirVersoCheque 250
Daruma_FI2000_LeituraCodigoMICR 251
Daruma_FI2000_LeituraInformacaoUltimoDOC
256
Daruma_FI2000_LeituraInformacaoUltimosCNF
257
Daruma_FI2000_LeituraTabelaCheque 252
Daruma_FI2000_LiberarCheque 250
Daruma_FI2000_SegundaViaCNFV 259
Daruma_FI2000_StatusChque 248
Daruma_FI2000_VerificaRelatorioGerencial 258
Daruma_FIB_AbreBilhetePassagem 217
Daruma_FIB_UfOrigem 220
Daruma_FIB_VendeItem 219
Daruma_FIMFD_AbreRecebimentoNaoFiscal 198
Daruma_FIMFD_AbreRelatorioGerencial 194
Daruma_FIMFD_AcionarGuilhotina 197
Daruma_FIMFD_CodigoModeloFiscal 206, 244
Daruma_FIMFD_CupomAdicionalCampoLivre 211
Daruma_FIMFD_DownLoadDaMFD 181
Daruma_FIMFD_EfetuaFormaPagamentoNaoFiscal
201
Daruma_FIMFD_EmitirCupomAdicional 196
Daruma_FIMFD_EqualizarVelocidade 197
Daruma_FIMFD_GerarAtoCotepeData 207
Daruma_FIMFD_GerarAtoCotepePafCoo 210, 246
Daruma_FIMFD_GerarAtoCotepePafData 209,
245
Daruma_FIMFD_GTCodificado 204, 242
Daruma_FIMFD_ImpremeCodigoBarrasCupomAdici
onal 187
Daruma_FIMFD_IniciaFechamentoNaoFiscal 200
Daruma_FIMFD_NumeroSerialCodificado 205,
243
Daruma_FIMFD_ProgramaRelatoriosGerenciais
193
Daruma_FIMFD_ProgramarGuilhotina 202
Daruma_FIMFD_RecebimentoNaoFiscal 199
Daruma_FIMFD_RetornaInformacao 183, 239
Daruma_FIMFD_RetornarInfoDownloadMFD 348
Daruma_FIMFD_RetornarInfoDownloadMFDArquivo
351
Daruma_FIMFD_SinalSonoro 192
Daruma_FIMFD_StatusCupomFiscal 192
Daruma_FIMFD_TerminaFechamentoCupomCodigo
Barras 188
Daruma_FIMFD_TerminaFechamentoNaoFiscal
202
Daruma_FIMFD_Verifica_GTCodificado 205, 242
Daruma_FIMFD_Verifica_NumeroSerialCodificado
206, 243
Daruma_FIMFD_VerificaRelatoriosGerenciais 194
Daruma_Framework_Teste_Consumo_MFD 214,
215, 353, 354
Daruma_MFD_CasasDecimaisProgramada 191
Daruma_MFD_ImprimeCodigoBarras 186
Daruma_MFD_IndicePrimeiroVinculado 191
Daruma_Observer_Registry_Entrada 42
Daruma_Observer_Registry_Execucao 41
Daruma_Observer_Registry_Log 41
Daruma_Observer_Registry_Log_Path 41
Daruma_Observer_Registry_Produto 43
Daruma_Observer_Registry_Saida 42
Daruma_Registry_AbrirDiaFiscal 106
Daruma_Registry_AlteraRegistry 97
Daruma_Registry_AlterarRegistro 96
Daruma_Registry_AplMensagem1 109
Daruma_Registry_AplMensagem2 110
Daruma_Registry_ComandosEmLote 115
Daruma_Registry_ControlePorta 101
Daruma_Registry_CupomAdicionalDll 113
Daruma_Registry_CupomAdicionalDllConfig 114
Daruma_Registry_Default 107
Daruma_Registry_DUAL_Enter 286
Daruma_Registry_DUAL_Espera 286
Daruma_Registry_DUAL_ModoEscrita 287
Daruma_Registry_DUAL_Porta 288
Daruma_Registry_DUAL_Tabulacao 288
Daruma_Registry_DUAL_Termica 290
Daruma_Registry_DUAL_Velocidade 290
Daruma_Registry_ErroExtendidoOk 108
Daruma Framework 380
Daruma Automao
Daruma_Registry_FinalLote 116
Daruma_Registry_FS2000_CupoamAdicional 247
Daruma_Registry_FS2000_TempoEsperaCheque
248
Daruma_Registry_IgnorarPoucoPapel 106
Daruma_Registry_ImprimeRegistry 107
Daruma_Registry_Log 102
Daruma_Registry_LogTamMaxMB 118
Daruma_Registry_MFD_LeituraMFCompleta 113
Daruma_Registry_MFD_ProgramarSinalSonoro
112
Daruma_Registry_MFDValorFinal 117
Daruma_Registry_ModoGaveta 101
Daruma_Registry_NomeLog 102
Daruma_Registry_NumeroLinhasImpressao 111
Daruma_Registry_NumeroSerieNaoFormatado
111
Daruma_Registry_Path 99
Daruma_Registry_PathLote 116
Daruma_Registry_PCExpanionLogin 116
Daruma_Registry_Porta 98
Daruma_Registry_Produto 109
Daruma_Registry_RetornaValor 98
Daruma_Registry_Retorno 101
Daruma_Registry_Separador 103
Daruma_Registry_SeparaMsgPromo 103
Daruma_Registry_SintegraPath 120
Daruma_Registry_SintegraSeparador 119
Daruma_Registry_SintegraUF 121
Daruma_Registry_Status 100
Daruma_Registry_StatusFuncao 100
Daruma_Registry_TEF_NumeroLinhasImpressao
110
Daruma_Registry_TerminalServer 105
Daruma_Registry_Velocidade 108
Daruma_Registry_Vende1Linha 104
Daruma_Registry_XAutomatica 104
Daruma_Registry_ZAutomatica 105
Daruma_RSA_CarregaChavePrivada 235
Daruma_RSA_CodificaInformacao 236
Daruma_RSA_CriarAssinatura 237
Daruma_RSA_CriarAssinaturaOnline 238
Daruma_RSA_DecodificaInformacao 237
Daruma_RSA_RetornaChavePublica 235
Daruma_Sintegra_GerarRegistro60I 346
Daruma_Sintegra_GerarRegistro60R 347
Daruma_Sintegra_GerarRegistro90 347
Daruma_Sintegra_GerarRegistrosArq 339, 341,
342, 343, 344, 345
Daruma_TA1000_AlterarProdutos 308
Daruma_TA1000_AlterarUsuarios 316
Daruma_TA1000_CadastrarProdutos 303
Daruma_TA1000_CadastrarUsuarios 314
Daruma_TA1000_ConsultarProdutos 306
Daruma_TA1000_ConsultarUsuarios 315
Daruma_TA1000_EliminarProdutos 310, 317
Daruma_TA1000_EnviarBancoProdutos 310, 318
Daruma_TA1000_LerProdutos 304
Daruma_TA1000_ReceberBancoProdutos 311,
319
Daruma_TA1000_ReceberProdutosVendidos 312
Daruma_TA1000_ZerarProdutos 313, 314, 320
Daruma_TEF_EsperarArquivo 330
Daruma_TEF_FechaRelatorio 326
Daruma_TEF_ImprimirResposta 327
Daruma_TEF_ImprimirRespostaCartao 328
Daruma_TEF_SetFocus 326
Daruma_TEF_Tratando_os_Erros 331
Daruma_TEF_TravarTeclado 331
Daruma32.dll 180
Daruma32.DLL para trabalhar com W.T.S. 14
Daruma32.log 102
Data 64, 65, 70, 144, 145, 146, 209, 245
Deciamais da MFD 191
Decimais quantidade 191
Decimais valor 191
Decodificacao do Erro do ECF 166, 365
Decodificada 237
DecodificaInformacao 237
Default 107, 109
Desconto 203, 253
Descontos 149, 255
Valor Acumulado 178
Descricao 51
Descrio 54, 58
Descrio Formas Pagamento 127
DHTML 273, 279
Dia 76, 77, 106
DiaAberto 125
Dicionario 214, 215, 353, 354
Dicionario de Dados 214, 215, 353, 354
Digital 237, 238
Do 76, 77
DOC 256
Index
381
Daruma Automao
Documento 73, 157, 264, 265, 266
Documento Posicionado 264, 265, 266
DownLoad 181
Driver 27
DUAL 286, 288
Porta de Comunicao 286, 288
Status 263
Termica 290
DUAL Impressora Dual 286, 290
DXML 273, 279
- E -
EAD 232, 237, 238
ECF 96, 206, 211, 244
ECF Verificar Modelo do ECF 124
Efetua 50, 51, 63, 201
Eliminar 310, 317
Emitido 157
Emitir 56, 196
End 91
Entre 83, 90
Enviar 267
EnviarLogo 267
Envirar 310, 318
Eprom 131
Equaliza 85
Equalizar 197
Erro 108
Erro do ECF 166, 365
Erro Extendido do ECF 166, 365
erros 368
Espaamento 90
Espaco 83
Espelho MFD 181
Espera 248
esperar 330
Esperar Impressao 286
Est 87
Estado 75, 129
Estorno 55
Exemplo_DUAL_01 291
Exemplo_DUAL_02 292
Exemplo_DUAL_03 294
Exemplo_DUAL_04 295
Exemplo_DUAL_05 296
Exemplo_DUAL_06 297
Exemplo_DUAL_07 298
Exemplo_DUAL_08 299
Exemplo_DUAL_09 300
Exemplo_DUAL_10 301
Extendida 58
ExtendidoOk 108
- F -
Fecha 52, 53, 60, 61, 87
Fechamento 48, 77, 188, 200, 202
FI2000 248
FIB 220
FIMFD_ 203
Final 116
Firmeware 139
Fiscais 146, 161
FiscaisStr 164
Fiscal 58, 59, 60, 61, 64, 65, 66, 68, 71, 72, 80,
106, 121, 155, 169, 178, 179, 192, 198, 199
Flags 161, 164
FlagShip 24
Forma 51, 63, 154, 155, 201
Formas 55, 80, 85, 127, 128
Formas de Pagamento - total acumulado 175
Formas Pagamento 127
Formatado 111
Funcao 101
Funes de Configurao do Observer 40
- G -
Gande Total - Ler Total 134
Gav 87
Gaveta 75, 76, 101
Generico 48
Geometria 253
Gerar 320, 322
Gerar Sintegra 339, 341, 342, 343, 344, 345, 346,
347, 348, 351
Gerenciais 193, 194
Gerencial 60, 61, 71, 122, 194, 257, 258
Graficamente como Funciona o OBSERVER 26
Grafico 26
Grande 148
Grande Total Contador 178
GT 148, 204, 205, 242
Daruma Framework 382
Daruma Automao
GT Inicial 178
Guilhotina 197, 202, 268, 269
- H -
Hibernar - Log 41
Hibernar Local de Execucao 41
Hibernar Log Path e Nome do Log 41
Hibernar Observer 42
Hora 70, 144, 145
Horario 84, 88
Horrio 43
- I -
ICMS 254, 255
Identifica 55
Identificao 206, 244
identificao 206, 244
Identificao Nacional 206, 244
IE 139
Ignora 106
Imp 87
Implementando TEF com a Daruma32.dll 324
Impressao 111
Impresso 67
Impressora 77, 123, 127, 129, 144, 165
Imprime 77, 186, 187
Imprimindo 107, 141
Imprimindo na Impressora DUAL 288
Imprimindo o Registry 107
Imprimindo o TEF 327, 328
Imprimir 77, 249, 260, 262, 269
ImprimirCodigoBarras 269
Indice 130, 179, 191
Indices 6
Informacao 236, 237, 256, 257
Informao Complementarres 109, 110
Informaes 338, 348, 351
Inicia 48, 200
Inmetro 120
Instalando o Driver Observer 27, 33
Int 142
Inter 142
Intervencoes 142
Introduo 3
IOF Valor Acumulado 178
Isento 130
Valor Acumulado 178
Iss 130, 254, 255
Item 44, 47, 54, 104, 156, 203, 219, 253
Item 11 193, 194
Item 2 67, 68
Item 3 64, 65, 66, 113
Item 4 64, 65, 66, 113
Item 5 181
Item 6 209, 210, 245, 246
Item 9 183, 239
- K -
Key 235
- L -
Legenda 120
Leitura 64, 67, 252, 256, 257
Leitura Completa 64, 65, 66
Leitura Simplificada 64, 65, 66
LeituraX 68, 104
LeituraX Contador 169
Ler 147
Ler Status na DUAL 263
Ler Total de - Sangria 134
Ler Total de - Suprimento 134
Liberar 250
Ligada 123
Ligadas 141
Ligando o Log 102
Limiar 91
Linhas 83, 111
Linux 33, 39
Lista de Retornos - ECF 366
Lista dos Metodos 6
LJ 136
LMFC 64, 65, 113
LMFC 65, 66
LMFC Arquivo 65, 66
LMFS 64, 65
LMFS 65, 66
LMFS Arquivo 65, 66
Log 102, 118
Index
383
Daruma Automao
Login 116
Logo 267
Loja 136
Lote 38, 115, 116
LPT1 271, 288
LX 67, 68
- M -
Mais de um ECF 116
Manual Eletronico 3
Mapa 157
Mapeamento 38
Maximo 118
MB 118
MD5 237, 238
Medida 57
Memoria 64, 66
Memoria Fiscal Impresso 64
Memoria Fiscal Leitura pela Serial 65
Mensagem 91, 103, 109, 110
Menu Fiscal 64, 65, 66, 67, 68, 113, 193, 194, 209,
210, 221, 245, 246
Mestre 160
Mtodo Daruma_FI_ConfiguraHoraioVerao 43
MFD 113, 114, 120, 181, 183, 186, 187, 188, 191,
192, 193, 194, 196, 197, 198, 199, 200, 201, 202,
203, 204, 205, 206, 207, 209, 210, 211, 214, 215,
239, 242, 243, 244, 245, 246, 348, 351, 353, 354
MICR 251
Minutos 141
Modelo do ECF 124
Modificando o Registry 97
Modo 101, 134
Modo de Escrita na Paralela 287
Moeda 164
Movimento 146
Movimento por ECF 183, 239
Mudando o Registry 97
Munitos 141
- N -
Nacional 206, 244
Nao 58, 59, 60, 61, 68, 71, 72, 80, 111, 146, 155,
169, 178, 179, 198, 199
No Fiscais 131
Nao Fiscal 176
Nao Fiscal - Contador Geral 174
Nao fiscal - total cancelado 173
No Incidente 178
Valor Acumulado 178
No Incidente - Ler Total de 134
No tributado 130
Nao Vinculado Valor Acumulado 176
NaoFical 122
NaoFisca 132
NaoFiscais 144
NaoFiscal 63, 123, 200, 201, 202
NaoVinculado 123
Near 91
Network 39
NF 167
NFP 207
NFS 39
Nota Fiscal Legal 207
Nota Fiscal Paulista 207
Numero 111, 135, 136, 137, 138, 140, 142, 143,
144, 205, 243
Nmero 111
Numero de Reducoes Z Restante 172
Numero do COO Final 140
Numero do COO Inicial 140
NumeroSerial 206, 243
NumeroSerialCodificado 206, 243
- O -
O Qu o Driver Daruma Observer? 25
O que Sintegra 338
Observer 25, 26, 27, 35
Observer - Arquivo de Comando 42
Observer - Configurando 40
Observer - Hibernar 42
Observer - Local de Execucao 41
Observer - Log 41
Observer - Log Path e Nome do Log 41
Observer - Produto 43
Observer Configurar Arquivo de Comando 42
Observer Configurar Hibernacao 42
Observer Configurar Local de Execucao 41
Observer Configurar Log 41
Observer Configurar Path e Nome do Log 41
Observer Configurar Produto 43
Daruma Framework 384
Daruma Automao
Observer Linux 33
Operacao 134
Operacoes 144
Operador 81
- P -
PAF 64, 65, 66, 67, 68, 71, 96, 98, 105, 109, 110,
113, 181, 183, 193, 194, 203, 204, 205, 206, 209,
210, 221, 223, 224, 225, 226, 228, 230, 232, 233,
235, 236, 237, 238, 239, 242, 243, 244, 245, 246
Pagamento 50, 55, 63, 80, 201
Pagamento Descrio 127
Pago 154
Palavra 161
Palavra de Status do ECF 161
Papel 106
Paralela 271, 272
Passagem 217, 219, 220
Path 99, 116, 120
PathLote 116
PCExpanion 116
PCExpanionLogin 116
Permite 91
Pgto 85, 128, 154, 155
Porta de Comunicao 101
Porta Serial 98
Posio do primeiro vinculado 191
Pouco 106
Preparando seu Aplicativo para o Observer 35
Presente 73
Primeiro 191
Privada 235
Problemas na Paralela 271, 272
Produto 109
Produto Observer 43
Produtos 303, 304, 306, 308, 310, 311, 312, 313,
317, 318, 319, 320
ProdutosVendidos 314
Progama 84
Programa 79, 80, 81, 82, 85, 86, 193
Programar 112, 202, 269
Promo 103
Promocional 91
Proprietario 135, 142
- Q -
Qual a verso da DLL? 180
- R -
R01 223
R02 224
R03 225
R04 226
R05 228
R06 230, 232
Rec 132
Receber 311, 312, 319
Recebi 132
Recebimento 61, 68, 123, 198, 199
RecebimentoNaoFiscal 123
Recebimentos 132
Recucoes 143
Red 143
Rede 39
Reducao 151
Reduo 65
Reduo Z 212
Reduo Z Contador 172
Reducao Z Restante 172
Reduo Z Restante 176
ReducaoZ 69, 145
ReduoZ 105
Registra 137
Registradores Nao Fiscais 176
Registro 96, 223, 224, 225, 226, 228, 230, 232
Registro Tipo 10 341
Registro Tipo 11 342
Registro Tipo 60A 344
Registro Tipo 60D 345
Registro Tipo 60I 346
Registro Tipo 60M 343
Registro Tipo 60R 347
Registro Tipo 90 347
Registry 92, 93, 96, 97, 98, 99, 100, 101, 102, 103,
104, 105, 106, 107, 108, 109, 119, 120, 247, 248
RegistryMFDLeituraMFCompleta 113
Regra de Configurao do Registry 92
Reinicio Contador 171
Reinicio de Operao 171
Index
385
Daruma Automao
Relatorio 60, 61, 67, 71, 122, 194, 257, 258
Relatorios 193, 194
Relatrios 223, 224, 225, 226, 228, 230, 232
Remotamente 11
Remoto 105
Requisito VII 64, 65, 66, 67, 68, 113, 183, 193,
194, 209, 210, 239, 245, 246
Requisito VII 181
Resolvendo Problemas de Comunicao com a
PARALELA 272
Resumido 52
Resumo 157
Retorna 98, 138, 167, 168, 170, 171, 178, 179,
180, 183, 239, 348, 351
Retorna Erro Extendido 166, 365
Retorna Informao 212
Retorna Informaes da MFD 348, 351
Retorno 101, 153, 165
Retorno da 101
retornos 366, 368
Retornos da MFD 183, 239
Rio de Janeiro 180, 360, 364
RSA 235, 236, 237, 238
- S -
Saldo a Pargar 153
Saldo Devedor 153
Sangria 71
Sangria - Ler Total de 134
Sangria - Ler Total de 134
Sangria - No Incidente 134
Satatus 122
Segunda 259
Sem Vincular 86
Sensor 89
Separador 103
Serial 65, 66, 68, 138, 205, 243
Serie 111, 137, 138
Srie 206, 243
Server 14, 105
Servidores Windows 2003 Server 14
Siglas 233
Simbolo 164
Simplificada 64, 65, 66
Sinal 112, 192
Sincronizar Impressao 286
Sintegra 338, 339, 341, 342, 343, 344, 345, 346,
347, 348, 351
Sobre 253
sonoro 112, 192
ST1 366
ST2 366
Status 100, 121, 122, 123, 192, 248
Status DUAL 263
Status ECF - Retorno ST1-ST2 366
StatusF 100
StatusFuncao 100
StatusGaveta 266
Str 74
Sub 152
Subs 142
Substituio 130
Valor Acumulado 178
Substituio Tributaria - Ler Total de 134
Substituicoes 142
Sujeito 80
Suprimento 72
Suprimento - Ler Total de 134
- T -
TA1000 303, 304, 306, 308, 310, 311, 312, 313,
314, 315, 316, 317, 318, 319, 320, 322
Tab 294
Tabela 206, 233, 244, 252, 366
Tabela Nacional identificao do ECF 206, 244
Tabulacao 288
Tabulacoes 294
Tags Daruma 273, 279
Tamanho 118
Tarantella 115, 116
teclado 331
TEF 111, 324
TEF - Esperando Arquivo 330
TEF - Fechando o Relatorio 326
TEF - Funes que Facilitam o TEF 324
TEF - Imprimindo 327, 328
TEF - Setando o Foco na Janela 326
TEF - Travando o Teclado 331
Tempo 248
Tempo Imprimindo 175, 176
Tempo Ligada 176
Tempo Ligado 174
Daruma Framework 386
Daruma Automao
Termina 188, 202
Terminal 105
Teste 279
Teste Consumo 214, 215, 353, 354
Texto 260
Tipo 127, 157
Tipo 10 341
Tipo 11 342
Tipo 60D 345
Tipo 60I 346
Tipo 60M 343, 344
Tipo 60R 347
Tipo 90 347
Tipo60 160
Tipo60A 158
Total 148, 152
Total Acumulado nos Pagamentos 175
Total ICMS 180, 364
Totalizador 80, 155
Totalizador Nao Sujeito ao ICMS - Ler Total de 134
Totalizadores 131, 146, 233
Trabalhando 38
Trabalhando com a Daruma32.DLL para trabalhar
com W.T.S. 14
Trabalhando com a DUAL em XP 271
NT e Sistemas Protegidos 271
Trabalhando com Comandos em Lote 38
usando o Mapeamento de Unidade 38
Trabalhando com o Observer linux em rede 39
Trace 118
Tratamento de Retornos 366
Tratando_os_Erros 331
travar 331
Troco 152, 176
Troco - total acumulado 176
Truncamento 82, 117, 133
- U -
UF 121, 220
UfOrigem 220
Ultima 151, 154
ltima Z 212
Ultimo 157, 256
Ultimos 257
Unidade 57
Unidade 38
Usa 57, 59
Usuarios 314, 315, 316, 322
- V -
Valor 154, 155, 178
Valor 16 Totalizadores No Fiscais 131
Valor Acumulado em Totalizadoes No Fiscais 131
Valor Acumulado Nao Fiscal Nao Vinculado 176
Valor Acumulado Nao Fiscal Vinculado 176
Valor de Cada Alquota 178
Valor de Cancelamento nao fiscal 173
Valor dos Erros do ECF 166, 365
Valor Isento 178
Valor No Incedente 178
Valor Substiruio Tributaria 178
Valor Total de Descontos Nao Fiscais 173
Valores 93, 98, 368
Valores do Registry para o ECF 93
Varias impressoras 116
Velocidade 108, 197
Venda 44, 147, 148
Vendas 87
Vende 44, 104, 219
VendeItem 44
Vendido 156, 253
Verao 84, 88
Vero 43
Vero do Produto 180
Verifica 73, 75, 123, 125, 126, 127, 128, 129, 130,
131, 132, 133, 134, 138, 144, 194, 205, 206, 242,
243, 258
Verifica Modelo do ECF 124
VerificaHorario 124
Verificar 268
Verificar Autenticacao 264, 265, 266
Verificar Documento 264, 265, 266
Verificar Satus na DUAL 263
Versao 139, 180
VersoDLL 180
Verso 250
Via 259
Vinculada 191
Vinculado 122, 169, 191
Vinculado Valor Acumulado 176
Vinculados 85
Vincular 86
Index
387
Daruma Automao
- W -
W.T.S 11
Win2003 14
Win2k3 14
Windows 14
WTS 11, 14
WTS com a dll 14
- X -
XPendente 126
- Z -
Z 143, 212
Zerando o Registry 107
Zerar 313, 314, 320
ZPendente 126
Daruma Framework 388
Daruma Automao
Endnotes 2... (after index)
389
Daruma Automao
Back Cover

You might also like