|
 |
 |
Olá pessoal,
Esta é a continuação 02/03 de uma série com três Escovando Bits especiais, sobre os Recursos de Destaques na DarumaFramework.dll.
4º Recurso: Geração de Relatórios do PAF-ECF
Com a DarumFramework.dll você consegue gerar os arquivos do PAF-ECF de maneira rápida e fácil. Para isto desenvolvemos funções para a geração dos relatórios, contendo estes dados do ECF.
Confira a lista de funções separadas:
rGerarMF_ECF_Daruma
Registros: E01, E02, E03, E04, E05, E06, E07, E08, E09, E10, E11, E12 e E13.
rGerarMFD_ECF_Daruma
Registros: E01, E02, E14, E15, E16, E17, E18, E19, E20 e E21.
rGerarTDM_ECF_Daruma
Registros: E01, E02, E03, E04, E05, E06, E07, E08, E09, E10, E11, E12,E13, E14, E15, E16, E17, E18, E19, 20 E21.
rGerarSPED_ECF_Daruma
Registros: Algumas informações somente do Bloco C, que serão os registros 0220, C400, C405, C420, C425, C460, C470, C490 E C495(apenas para Bahia)
rGerarSINTEGRA_ECF_Daruma
Registros: 10, 11, 60A, 60D, 60M, 60I, 60R, 75 E 90
rGerarNFP_ECF_Daruma
Registros: E01, E02, E14, E15, E16, E17, E18, E19, E20 e E21.
Porém você pode optar também por gerar vários relatórios de uma só vez, como o método:
rGerarRelatorio_ECF_Daruma
Onde os parâmetros são:
•Tipo do relatório a ser gerado
•Tipo de Intervalo (DATA, DATAM, COO ou CRZ)
•Intervalo(Inicial)
•Intervalo(Final)
Vejamos na pratica:
C#:
[DllImport("DarumaFrameWork.dll")]
public static extern int rGerarRelatorio_ECF_Daruma(string pszRelatorio, string pszTipo,
string pszInicial, string pszFinal);
DarumaFramework_DLL.DarumaFramework_DeclaracFramework_Declaracoes_CSharp.
rGerarRelatorio_ECF_Daruma ("NFP", "DATAM", "010911", "150911");
VB6:
Public Declare Function rGerarRelatorio_ECF_Daruma Lib "DarumaFramework.dll"
(ByVal pszRelatorio As String, ByVal pszTipo As String, ByVal pszInicial As String,
ByVal pszFinal As String) As Integer
iRetorno = rGerarRelatorio_ECF_Daruma("NFP", "DATAM", "070911", "150911")
DELPHI:
function rGerarRelatorio_ECF_Daruma(szRelatorio:string; szTipo:string; szInicial:string;
szFinal:string): Integer; StdCall; External 'DarumaFramework.dll';
Int_Retorno:= rGerarRelatorio_ECF_Daruma('NFP', 'DATAM', '070911', '150911');
Bacana né?
Agora só faltava um programa para gerar estes relatórios com interface gráfica simples, de fácil manipulação e que consiga gerar com a rapidez e eficácia da DarumaFramework.dll...
Não falta mais! O GAD(Gerador de Arquivos Daruma), pessoal.
|
Faça download do GAD(Executável): http://bit.ly/tPXRS1
Faça download do GAD(Com Fontes): http://bit.ly/rANgS2 |
 | |
5º Recurso: Arredondamento e Truncamento de Itens.
Já imaginou trabalhar com arredondamento e truncamento no mesmo Cupom Fiscal?
Com a DarumaFramework.dll esta tarefa é possível! E de maneira muito simples de ser feita.
No DarumaFramework.XML, existe uma chave chamada <ArredondarTruncar>.
Arredondar
Para Arredondarmos o valor do item devemos manter a chave com a seguinte configuração: <ArredondarTruncar>A</ArredondarTruncar>
A letra “A” presente na chave, indica que o item deve ser arredondado.
Truncar
Para Truncarmos o valor do item devemos manter a chave com a seguinte configuração: <ArredondarTruncar>T</ArredondarTruncar>
A letra “T” presente na chave, indica que o item deve ser truncado.
Esta alteração na chave pode ser feita pela função: regAlterarValor_Daruma, explicada na edição anterior do Escovando Bits.
Vamos fazer o teste pratico agora!
Fonte em C (Sharp):
private void button1_Click(object sender, EventArgs e)
{
DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iCFAbrir_ECF_Daruma
("123.456.789-00", "João da Silva", "");
DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regAlterarValor_Daruma
("ECF\\ArredondarTruncar", "T");
DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iCFVender_ECF_Daruma
("F1", "3", "1,50", "D%", "0,00", "98765432109876", "UN", "REFRI COCA 600ML");
DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.regAlterarValor_Daruma
("ECF\\ArredondarTruncar", "A");
DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iCFVender_ECF_Daruma
("I1", "0,676", "5,99", "D%", "0,00", "12345678901098", "KG", "CARNE MOIDA");
DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iCFTotalizarCupomPadrao_ECF_Daruma();
DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iCFEfetuarPagamento_ECF_Daruma
("Dinheiro", "10,00", "");
DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iCFEncerrar_ECF_Daruma
("0", "<bmp>1</bmp> Obrigada e Volte Sempre!");
}
Veja o Cupom Fiscal:
O Arredondamento e Truncamento, são mais alguns exemplos de procedimentos fáceis de serem manipulados na DarumaFramework.dll.
6º Recurso: Logotipo na mensagem promocionals
No exemplo acima você deve ter notado o logo de nossa equipe na mensagem promocional. O logotipo na mensagem promocional é mais um recurso que só a DarumaFramework.dll disponibiliza para você.
 |
Para carregar o logotipo na impressora, não é necessário ser apenas na inicialização do ECF, e nem tampouco por intervenção técnica.
O logotipo é carregado via comando, por comunicação direta ou via DarumaFramework.dll pela função: eCarregarBitmapPromocional_ECF_Daruma.
Este método nos permite a carga de bitmap promocional na impressora fiscal.
Parâmetros
pszPathLogotipo - Path com o caminho onde se encontra a imagem monocromática no formato .bmp que será carregada na Impressora.
pszNumBitmap - Índice que será inserido a imagem (pode ser de 1 até 5)
pszOrientacao - Orientação da imagem, o valor padrão deve ser colocado como "000"
Na prática:
C (Sharp):
[DllImport("DarumaFrameWork.dll")]
public static extern int eCarregarBitmapPromocional_ECF_Daruma
(string pszPathLogotipo, string pszNumBitmap, string pszOrientacao);
private void bt_CarregarBitmap_Click(object sender, EventArgs e)
{
DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.eCarregarBitmapPromocional_ECF_Daruma("C:\\logo.bmp", "1", "000");
} No comando de finalização do Cupom Fiscal, no parâmetro da mensagem promocional indique a tag: índice da imagem e insira a imagem carregada!
7º Recurso: Identificação do consumidor no Começo ou no Final do Cupom Fiscal.
Na DarumaFramework.dll, você tem duas maneiras para identificar o consumidor, na abertura e em qualquer parte do Cupom Fiscal! Por quê?
Porque, caso seu cliente mude de ideia, e queira o CPF no Cupom Fiscal mesmo depois de aberto, você ainda pode inserir sem ter que cancelar o cupom fiscal e iniciar novamente.
Na Abertura:
Para identificarmos o consumidor na abertura do Cupom Fiscal utilizaremos o método: iCFAbrir_ECF_Daruma
Este método possui 3 parâmetros: CPF, NOME, ENDEREÇO.
Na prática:
[DllImport("DarumaFrameWork.dll")]
public static extern int iCFAbrir_ECF_Daruma(string pszCPF, string pszNome, string pszEndereco);
DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iCFAbrir_ECF_Daruma("064.032.048-00",
"Daruma Developer Community", "Av. Shishima Hifumi - Urbanova");
No cupom acima podemos observar que a passagem do CPF foi feita na abertura do Cupom Fiscal, porém com a DarumaFramework.dll você pode passar em qualquer momento, entre a abertura e a finalização do Cupom Fiscal, com a função: iCFIdentificarConsumidor_ECF_Daruma
Estes método possui 3 parâmetros como no iCFAbrir_ECF_Daruma, só que ordenados da seguinte maneira: CPF, NOME, ENDEREÇO.
Na prática:
[DllImport("DarumaFrameWork.dll")]
public static extern int iCFIdentificarConsumidor_ECF_Daruma
(string pszNome, string pszEndereco, string pszDoc);
DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_DLL.DarumaFramework_Declaracoes_CSharp. iCFIdentificarConsumidor_ECF_Daruma(“Daruma Developers Community”, “São José dos Campos”, ”45170289000125”);
Um abraço!
|
E-mails:
ddc.suporte@daruma.com.br
suporte.ddc@daruma.com.br
desenvolvedores.suporte@daruma.com.br
suporte.desenvolvedores@daruma.com.br
desenvolvedores.daruma@daruma.com.br
suporte@daruma.com.br
suporte.alexandre@daruma.com.br
claudenir@daruma.com.br |
Skypes:
ddc_suporte_daruma
suporte_ddc_daruma
desenvolvedores_suporte_daruma
suporte_desenvolvedores_daruma
desenvolvedores_daruma
suporte_daruma
suporte_alexandre_daruma
claudenir_andrade |
|
| |