terça-feira, 29 de junho de 2010

DACTE EM VB.NET e CRYSTAL REPORTS

Salve, salve, turma dos bytes!!

Bem, pessoal, para os que desejam curtir algumas fotos de meu
passeio em Fortaleza, ai vai o link do meu orkut:

http://www.orkut.com.br/Main#Profile?rl=mp&uid=12247594032911620490

E sim, eu sou moreno!

No mais, vamos tratar de desenvolvimento!!

Estou cumprindo o prometido e postando as informações referentes ao DACTE para salvar talvez a vida de alguns desenvoldores em empresas de transporte.

Vamos ao que interessa:



Nesse meu pequeno exemplo - que está funcional, acreditem! - simplesmente criei o DACTE em Crystal Reports e um table Adapter para associar ao mesmo.










O Table Adapter contêm todos os campos informado no Manual do CT-e, versão 1.03.

Separei os campos em tags criando uma notação com o uso do " _ " como separador.
Assim, os campos da tag toma04 são identificados desse modo:

toma04_toma
toma04_CNPJ

...

O importante de se ter todos os campos presentes é a possível necessidade de codificação
extra caso ocorra no futuro a criação de um CTe com campos a mais a informar, e
conforme minhas experiências com a DANFE isso com certeza sempre irá acontecer:



Note na figura ao lado como estes dados foram dispostos de modo coerente. O tableAdapter deve fazer parte de seu projeto a fim de que o relatório em Crystal Reports do DACTE possa ser linkado com sucesso.








Para desenvolver o Dacte em VB.NET 2008 você precisará criar um Table Adapter para que o Crystal Reportes possa ler os dados do CT-e que será fornecido para a impressão do DACTe.

Os dados do arquivo XML do CT-e fornecidos deverão ser lidos e repassados para o Table
Adapter, que será associado via código ao relatório em Crystal Reports - e isso você
deverá criar arrastando e soltando conforme mostrado na figura abaixo.




Veja que os campos do TableAdapater criado se encontram no painel à esquerda. Basta clicar sobre o campo que se deseja e arrastar até o relatório em Crystal para a posição deseja, associando assim cada campo criado com o seu respectivo local de impressão no DACTE.





Eis aqui os quitutes do post de hoje:

http://www.4shared.com/file/GGE9Zpf4/Dacte_free.html


Aproveitem, pois o link estará disponível por poucos dias.

No pacote a baixar vocês encontram o Dacte.rpt e um dsXML1, que na verdade é um Table Adapter com todos os dados do CT-e para uso em conjunto com o relatório em Crystal Reports.


Vejam que este é o mesmo caminho que seguimos para o desenvolvimento da DANFE em VB.NET 2008.

Este fontes também estarão à disposição para aquisição, nos mesmos termos da DANFE a todos os interessados.



Boa sorte e bom projeto a todos!!

6 comentários:

Unknown disse...

Valeu cara... Me poupou de um grande trabalho...

Obs: No DACTe em crystal, vi que você não colocou os dados do expedidor e nem do recebedor... Será que não é obrigatório?

Abraço

Anônimo disse...

Olá, Claudiney!

Sugiro que você consulte o Manual de Integração da Nfe. Geralmente, os dados mais importantes são realmente marcados como obrigatórios. Se o expedidor e o recebedor não estiverem marcados como obrigatórios no manual, você poderá deixá-los de fora. A DANFE em questão está baseada no Manual de Agosto de 2010. Abraço!

Anônimo disse...

Perdão, Claudiney!!

Confundi DACTE com DANFE!!

Você está realmente correto. MAs note que o recebedor/expedidor estão dentro do campo toma03 que está indicando dentro do XML e no próprio DACTE. O campo é realmente obrigatório.

By
Leonardo Metelys

Unknown disse...

Tem como passar teu e-mail para trocarmos algumas idéias? Na verdade tenho essa semana para entregar o CTe funcionando para meu cliente mas aida tenho algumas dúvidas e como vi que você está dentro do assunto...
Se puder me dar uma mão te agradeço..

abraço

Arthur Metz disse...

reptiGrande exemplo....

Só uma dúvida, criei um DataSet com as respectivas DataTable.
No 'Datasource Location' somente consigo definir o caminho do arquivo Xsd, e vi no seu exemplo que voce definiu uma classe, tens como voce explicar mais detalhadamente isto ??

Anônimo disse...

Perdão, Arthur!

Não vi seu post!

Veja os outros posts que pus aqui que você verá bons exemplos do uso do dataset como uma classe!!

UM APLICATIVO PARA LEITURA DEVOCIONAL ANUAL DA BIBLIA EM ANDROID

Olá, pessoal!  Este novo projeto foi criado em Visual Studio 2019 em C#.Net com o Xamarin. Já está disponível no Google Play para vocês baix...