Ir para conteúdo
  • Cadastre-se

Painel de líderes

Conteúdo popular

Showing content with the highest reputation on 19-10-2016 em Posts

  1. Nota: se você usar EscPos (ACBrPosPrinter), isso não será necessário... pois a impressão não dependerá de driver do Windows, pois é enviada diretamente para a porta da impressora
    2 pontos
  2. Bom dia a todos, Vocês chegaram a notar que existe um arquivo chamado DistribuicaoDFe.txt dentro da pasta: ...\Exemplos\ACBrDFe\ACBrNFe ? Vocês leram a NT que mencionei em postagens anteriores? Você entenderam que ao executar pela primeira vez o DistribuicaoDFe o que se obtêm são os resumos das notas (semelhante ao ConsultarNFeDest)? E que ao executar o DistribuicaoDFe pela segunda (ou terceira) vez o que se obtêm são os XML completos das notas manifestadas (semelhante ao Download)? Exemplo pratico: Suponha que foram emitidas 70 notas contra o seu CNPJ. UltNSU = 0 DistribuicaoDFe( cUF, CNPJ, UltNSU, '' ); // onde cUF e CNPJ são do destinatário da mercadoria Teremos como resposta 50 resumos de notas UltSU = ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU; DistribuicaoDFe( cUF, CNPJ, UltNSU, '' ); Teremos como resposta os 20 resumos de notas restantes, uma vez que foram emitidas 70 notas contra o seu CNPJ, lembra? UltSU = ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU; Note que toda vez que executamos o DitribuicaoDFe devemos ler o valor de UltNSU pois sempre vamos usar essa informação na próxima vez que ele for executado. Como eu sei que não tem mais resumos de notas, simples: if ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.cStat = 137 then sTemMais := 'N' else sTemMais := 'S'; Se o Status for 137 significa que não tem mais documentos a serem lidos, logo devemos esperar por 1 hora para executar novamente o DistribuicaoDFe. Bom, agora você deve realizar a manifestação das 70 notas cujos resumos foram retornados pelo DistribuicaoDFe. Manifestado todas eles devemos executar: DistribuicaoDFe( cUF, CNPJ, UltNSU, '' ); // lembre-se o valor de UltNSU se refere a última execução do DistribuicaoDFe, pois este sempre retorna o um novo valor para UltNSU, veja a linha abaixo. UltSU = ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU; As duas linhas acima deve-se serem executadas até que o Status seja 137. Depois de manifestar as 70 notas (segundo o nosso exemplo) nessas ultimas execuções do DistribuicaoDFe podemos obter os XMLs completos dessas notas, bem como novos resumos de mais notas, resumos de eventos e até o XML completo de Eventos dessas notas manifestadas. Os XML completos das notas, serão salvos em disco desde que a propriedade: Configuracoes.Arquivos.Salvar tenha o valor True e esses XML serão salvos na pasta pré definida em PathDownload. Bom agora é com vocês, arregace as mangas e bom trabalho.
    2 pontos
  3. Olá pessoal, Acabo de enviar para o SVN, modificações em ACBrDevice, para permitir que os componentes que fazem uso dele, possam Imprimir em modo "Raw", usando as Impressoras instaladas no Sistema Operacional. Isso na prática, permite definir ACBrPosPrinter.Porta como o exemplo abaixo... Exemplo: Supondo que no Sistema Operacional, exista uma impressora instalada com o nome "SWEDA SI-300S"... então poderíamos imprimir na mesma usando. ACBrPosPrinter1.Porta := 'SWEDA SI-300S'; ou ACBrPosPrinter1.Porta := 'RAW:SWEDA SI-300S'; // O Prefixo "RAW:", ajuda o ACBrDevice a detectar o tipo de porta Com isso o ACBrPosPrinter irá enviar sua saída contendo comandos "EscPos", diretamente para a porta da Impressora (modo Raw), usando o Driver da mesma. A principal vantagem desse novo método, é permitir um melhor suporte a Impressoras USB e cujos drivers, não criam uma COM virtual.. Lembrando que a melhor maneira de se comunicar com uma impressora PosPrinter é usando portas Seriais... pois este é o único modo de lermos os Status da Impressora, suportado pelo "ACBrPosPrinter". Também fique atento ao fato, de que isso NÃO significa, que você poderá usar o PosPrinter em qualquer Impressora que não suporte EscPos... como por exemplo, uma impressora Lazer ou uma impressora que crie PDFs... O ACBrPosPrinter, apenas transforma as tags de impressão, em comandos EscPos. É a impressora EscPos, quem faz a "mágica" de transformar os comandos EscPos em QRCode, BarCode, etc.... Ou seja, se a impressora destino, não compreender "EscPos", ela apenas imprimirá lixo, quando receber os comandos... Segue abaixo o "Change-Log.txt" Atualizei o Demo do PosPrinter (Lazarus e Delphi), para melhor demonstrar e testar o suporte a portas "RAW" O executável já compilado, pode ser baixado em:
    1 ponto
  4. Amigos, eu realizei alguns ajustes no ACBr/ACBrMonitor relacionados a alguns comandos referente a NF-e, pois em alguns casos eu não estava obtendo informações do nome do arquivo e conteúdo do XML. Coloquei abaixo os detalhes das alterações realizadas bem como os arquivos já modificados para que sejam analisados e assim seja avaliada a inclusão destes ao projeto. * ACBrNFeWebServices.pas - Adicionado propriedade NomeArquivo a classe TNFeInutilizacao para armazenar o nome e caminho do arquivo gerado (Linhas 333, 369 e 2409); * DoACBrNFeUnit.pas - Em 'imprimirinutilizacaopdf', corrigido o retorno do nome do arquivo gerado (PDF) armazenado na variável ArqPDF, estava ArqPDF := PathWithDelim(ACBrNFe1.DANFE.PathPDF)+ArqPDF+'-inu.pdf' e o correto é ArqPDF := PathWithDelim(ACBrNFe1.DANFE.PathPDF)+ArqPDF+'-procInutNFe.pdf' (Linha 639); - No retorno do evento de Cancelamento ("cancelarnfe") foi adicionado o valor "Arquivo=" contendo o caminho e nome do arquivo gerado (Linha 332); - No retorno do evento de Cartão de correção ("enviarevento") foram adicionados os valores "Arquivo=" contendo o caminho e o nome do arquivo gerado (Linha 572) e "XML=" contendo o conteúdo do XML gerado (Linha 573); - Criado "enviaremailinutilizacao" para envio de e-mail de inutilização permitindo o envio do XML e do PDF (a partir da linha 1597); []´s Fabio Souza DoACBrNFeUnit.pas ACBrNFeWebServices.pas
    1 ponto
  5. - Marcelo coloque a dll da Elgin na pasta do Acbrmonitor se não utilizar monitor coloque na pasta do seus executável, ok. HASA
    1 ponto
  6. O problema está na construção da URL de consulta, essa URL já foi corrigida, você pode estar com uma versão desatualizada do ACBRMonitor Plus ou um arquivo ACBrNFeServicos.ini desatualizado na pasta do aplicativo.
    1 ponto
  7. Boa tarde! Não informe a data hora desta forma: Correto: Ao gerar o XML o ACBrMonitorPLUS estará convertendo a data no padrão exigido. Faça a correção e reenvie.
    1 ponto
  8. Acredito que o driver da Epson não crie uma COM virtual... para isso eles tem uma aplicação chamada TMVirtualPort (+- isso) o ACBrPosPrinter suporta a impressão RAW... Veja exemplos do Demo: PosPrinterTeste. Exemplo: Porta := "RAW:Nome da Sua impressora";
    1 ponto
  9. Bom dia, O que o ACBr chama de provedor é o nome do software ou da empresa desenvolvedora do software que controla a emissão das NFS-e. Acessando a página indica que o provedor é o Pronim, e o layout é o ABRASF v. 2.02. Substitua os arquivos em anexo e faça o teste. Cidades.ini Pronimv2.ini
    1 ponto
  10. A maioria de nossos clientes utilizam Sweda! Todos utilizam sem problema algum!
    1 ponto
  11. Bom dia a todos, Vamos a uma explicação para essa questão de imprimir no DANFE "Destinatário/Remetente" no campo Frete por Conta de: 1. Note que o DANFE visa atender tanto a nota de entrada quanto de saída. Se a nota é de Saída o frete é por conta do destinatário da mercadoria, se for de entrada o frete é por conta do remetente da mercadoria. 2. No quandro destinado aos dados do Destinatário também temos o titulo: "Destinatário/Remetente". Pelo mesmo motivo, ou seja, se a nota for de Saída os dados se referem ao Destinatário, caso contrario se referem ao Remetente da mercadoria. E na página 139 da versão 6.0 do Manual da NF-e - item 7.1.8 deixa claro o que devemos imprimir
    1 ponto
  12. Já temos, VLW. http://delphitotalweb.blogspot.com.br/
    1 ponto
  13. - Não. Mas você como um dos moderadores poderia levantar uma resposta menos irônica junto aos fundadores do projeto. HASA
    1 ponto
  14. Obrigado mais uma vez Waldir, Acabei de enviar para o SVN, modificações baseadas em sua sugestão... Achei melhor introduzir um novo tipo em "TACBrDeviceType", dtParallel
    1 ponto
  15. @Andrade. Pode testar com essa versão? Fiz mais alguns ajustes. ACBrDevice.pas
    1 ponto
  16. Boa noite Valdir, Qual é o provedor que atende a cidade de São Lourenço do Sul?
    1 ponto
  17. Achei o erro, alguém do ACBr pode ajustar o Boleto.fr3 e o BoletoCarne.fr3 e subir a correção no SVN ou sobe o que eu alterei. Boleto.fr3 BoletoCarne.fr3 É só abrir os dois relatórios e nos campo Titulo.LocalPagamento e Cedente.Nome e colocar o Format como Text, eles estão como Date/Time por isso ocorre o erro, é só mudar em todos os campos Titulo.LocalPagamento e Cedente.Nome
    1 ponto
  18. Mais um ponto de preocupação (além do Switch e cabos de rede)... se a máquina do Servidor SAT para... TODOS os caixas morrem... Sei que não é simples desenvolver um servidor desse nível...e deve ser muito bacana ver ele funcionando... mas sinceramente... acho que isso é "economia a base da porcaria"... eu não entro nessa conversa do Cliente... Seu cliente pode achar que está economizando... mas no dia que der um problema em um dos componentes cruciais...e ele ter prejuízos e reclamações, ele vai querer achar um culpado... mesmo que o motivo seja a queima dos equipamentos por descarga elétrica... Bom... acho que já deixei claro meu ponto de vista... vou parar de monitorar esse tópico...
    1 ponto
  19. Boa noite! Denilson não tem item nesta tua nota. Provavelmente é um erro na tua rotina no momento de adicionar os produtos.
    1 ponto
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...