Ir para conteúdo
  • Cadastre-se

Rosemir

Membros
  • Total de ítens

    36
  • Registro em

  • Última visita

Tudo que Rosemir postou

  1. @hleorj Segue PDF e um print mostrando a duplicidade da informação. No caso dessa nota é apenas o endereço de entrega, mas o mesmo se aplica ao endereço de retirada. A primeira informação de entrega que aparece é colocada automaticamente pelo componente ACBr. A segunda informação de entrega é montada pelo meu sistema e enviada junto no arquivo xml na TAG infCpl. Att. Rosemir 42180876344407000106550020000215641000215640-nfe.pdf
  2. Bom dia a todos... Sempre utilizei o fortes no formato retrato para impressão do DANFe, porém, agora um cliente solicitou que fosse impresso no formato paisagem. Fácil configurar, porém me deparei com uma dificuldade. Meu sistema controla a geração do endereço de retirada e de entrega nas informações complementares da nota fiscal, ou seja, o sistema gera a informação na TAG "InfAdic.infCpl". Para o formato "Retrato" funciona certinho pois é impresso apenas o que está no XML, mas no formato paisagem, há uma implementação que verifica se no arquivo xml tem o endereço de retirada e de entrega preenchido nos campos próprios e preenche novamente o endereço no momento que está gerando o DANFe. Ou seja, imprime as informações complementares diferente do que está no arquivo XML. Eu poderia implementar um parâmetro para isso no componente, mas antes de qualquer coisa gostaria da opinião dos demais colegas do fórum: 1) Remover esta funcionalidade do layout paisagem, sendo que esta informação não foi para o arquivo xml (o que pode ter um agravante pois deve ter alguém que utiliza dessa forma). Aqui ainda fica a dúvida, se alguém utiliza dessa forma, utiliza somente no formato paisagem? 2) Criar um parâmetro de configuração para o endereço de entrega e de retirada e implementar também no layout retrato para que fique padrão (o que também poderia ter alguns agravantes, pois quem utiliza no formato retrato, talvez já faça como eu, enviar as informações de retirada e de entrega já no arquivo xml, onde a impressão ocorre normalmente e se implementada dessa forma irá duplicar as informações). Implementação na unit "ACBrNFeDANFeRLPaisagem.pas" no método "procedure TfrlDANFeRLPaisagem.DadosAdicionais;" onde é chamado os métodos a seguir: InsereLinhas(EnderecoRetirada, iLimiteCaracteresLinha, rlmDadosAdicionaisAuxiliar); InsereLinhas(EnderecoEntrega, iLimiteCaracteresLinha, rlmDadosAdicionaisAuxiliar); Fico no aguardo da opinião de mais alguém. Grato!
  3. No aguardo... Será que algum moderador poderia dar uma olhadinha nas minhas alterações. As alterações consistem em uma opção para configurar o componente ACBr para imprimir as várias cópias de forma agrupado, como citado acima. Grato.
  4. Fiz algumas alterações nas units "ACBrNFeDANFEClass.pas" e "ACBrNFeDANFeRLClass.pas", (por enquanto somente no Fortes), para resolver a questão 1. Minha sugestão seria criar uma propriedade no componente, para configurar se deseja imprimir agrupado ou não. Por padrão, viria "False", para não alterar o comportamento já existente hoje. Agradeceria muito se algum dos moderadores pudessem analisar minhas alterações e sugerir alguma melhoria ou até uma outra forma caso seja necessário. Segue em anexo os arquivos alterados. Fico no aguardo e espero ter ajudado. ACBrNFeDANFEClass.pas ACBrNFeDANFeRLClass.pas
  5. Quando realiza a impressão de um lote de NFes, vou adicionando as notas desejadas no componente e executo ACBrNFe.NotasFiscais.Imprimir; ou ACBrNFe.NotasFiscais.ImprimirPDF; Dúvidas: 1) No método "Imprimir", quando é apenas uma cópia, tudo certo, imprime todas as notas na sequencia que adicionei. Quando é 3 copias, por exemplo, as notas são impressas na sequência e se repete quantas cópias foram solicitadas. Veja no exemplo a sequência das notas imprimindo 3 cópias (seria o número delas): 1001, 1002, 1003, 1004... 1001, 1002, 1003, 1004... 1001, 1002, 1003, 1004. Gostaria de saber se tem como imprimir agrupada como no exemplo a seguir: 1001, 1001, 1001... 1002, 1002, 1002... 1003, 1003, 1003... 1004, 1004, 1004. 2) Outra questão sobre a impressão, é quando utilizo o método "ImprimirPDF", se tem como imprimir várias notas em um mesmo arquivo PDF, pois mesmo adicionando várias notas, são gerados arquivos diferentes. Para a maioria dos meus clientes, da forma que está atente perfeitamente, mas se fosse possível configurar diferente para essa minoria de clientes, seria interessante. Caso alguém saiba como ajudar agradeço.
  6. Muito obrigado Fernando e Ricardo Realmente funcionou, o problema é que eu estava jogando a diferença no campo vPag.
  7. Voltei a fazer o teste com o a opção 90 - Sem Pagamentos, mas não autorizou, a rejeição é a "904 - Informado indevidamente campo valor de pagamento". Só estou conseguindo autorizar se informar a opção 99 - Outros. Só testei em ambiente de homologação, alguém mais conseguiu autorizar utilizando o 90?
  8. Estava acompanhando este tópico e havia resolvido por uns dias, até que hoje me deparei com uma nova dificuldade: 904 - Rejeição: Informado indevidamente campo valor de pagamento "Informado o campo Meio de Pagamento igual a sem pagamento (tag:tPag=90, id:YA02) e informado campo Valor do Pagamento diferente de zero (tag:vPag<>0, id:YA03)." O cenário é o seguinte: tenho uma nota fiscal com 2 itens, um deles cfop 5902 (remessa industrializado) e o outro 5124 (cobrança). Já a dias atrás tentei sugerir ao nosso cliente a emissão de notas fiscais separadas, mas não aceitou (acho que deve ser muito pesado pro caminhão levar 2 notas, rsssss). A rejeição 904 está ocorrendo devido a uma alternativa sugerida aqui mesmo neste tópico: acrescentar a forma de pagamento "90 - Sem Pagamentos" com o valor da diferença entre o total da nota fiscal e o valor do item de cobrança (cfop 5124). Resolveu por uns dias, mas agora estou em busca de uma outra alternativa. Para resolver de imediato e poder liberar o caminhão, alterei para ao invés de utilizar o "90 - Sem Pagamentos", utilizar então o "99 - Outros" para jogar no xml a diferença e não ocorrer a rejeição "865 - Rejeicao: Total dos pagamentos menor que o valor total da nota". Alguém dos colegas está tendo esta mesma dificuldade? Alguma outra sugestão que não seja emitir 2 notas?
  9. Sim, na verdade eles estavam desatualizados... O que aconteceu foi que eu atualizei e não testei antes de fazer a minha alteração, achei que a minha alteração é que havia resolvido o problema. Está correto, realmente não precisa alterar nada. Desculpa pelo transtorno e agradeço pela explicação @Italo Jurisato Junior
  10. Bom dia @Italo Jurisato Junior Sim, sem problemas fazer isso quando estiver gerando o XML, mas quando faz o LoadFromFile ou LoadFromStream, "CTe.ide.Toma03.Toma" acaba ficando sempre como "tmRemetente", pois no xml não tem a TAG "Toma3" e não há tratamento quando não encontra. A minha sugestão seria nesse caso, apenas atribuir "tmOutros" quando não encontrada a TAG "Toma3". Eu entendo que referente ao problema desse post, apenas passando True no segundo parâmetro resolve, mas a propriedade fica como "tmRemetente" e no XML é "tmOutros". A correção seria referente ao método " LerXml";
  11. Estou com o mesmo problema, tentando autorizar um CTe onde o tomador é um terceiro (tmOutros). Estou gerando o xml, assinando e na hora de transmitir o arquivo, utilizo o "ACBrCTe.Conhecimentos.LoadFromFile()" sem colocar como False no segundo parâmetro. Quando gero o XML a TAG <IE> do remetente está no arquivo, quando faço o LoadFromFile a TAG some. Isto acontece porque na hora de gerar o arquivo novamente existe uma verificação lá na unit "pcteCTeW", no método "GerarRem" verificando o seguinte: if (Trim(CTe.Rem.IE) <> '') then begin if (CTe.infCTe.versao >= 3) then begin if (CTe.ide.Toma03.Toma = tmRemetente) then begin if (CTe.ide.indIEToma <> inNaoContribuinte) then GeraIE; end else GeraIE; end else GeraIE; end; O problema é que "CTe.ide.Toma03.Toma" está igual a "tmRemetente" e no meu ponto de vista deveria estar "tmOutros". No momento que gera o XML tem como atribuir "tmOutros" para "Toma03.Toma", mas no LoadFromFile não tem como. Minha sugestão é alterar a leitura do arquivo XML. Unit -> pcteCTeR Método -> function TCTeR.LerXml: Boolean; De (* Grupo da TAG <ide><toma03> ***********************************************) if Leitor.rExtrai(1, 'ide') <> '' then begin if (Leitor.rExtrai(2, 'toma03') <> '') or (Leitor.rExtrai(2, 'toma3') <> '') then begin (*B29*)CTe.Ide.Toma03.Toma := StrToTpTomador(ok, Leitor.rCampo(tcStr, 'toma')); end; end; Para (* Grupo da TAG <ide><toma03> ***********************************************) if Leitor.rExtrai(1, 'ide') <> '' then begin if (Leitor.rExtrai(2, 'toma03') <> '') or (Leitor.rExtrai(2, 'toma3') <> '') then begin (*B29*)CTe.Ide.Toma03.Toma := StrToTpTomador(ok, Leitor.rCampo(tcStr, 'toma')); end else begin (*B29*)CTe.Ide.Toma03.Toma := tmOutros; end; end; Ou seja, se não encontrou a TAG "Toma3" então define "Toma3.Toma" como "tmOutros". Isto poderia evitar outros problemas do gênero, pois se existe a TAG "Toma4", ou ainda, se não encontrou a TAG "Toma3", então "Toma3.Toma" também poderia estar como "tmOutros" e não como "tmRemetente" que é o valor default. Nesse caso poderia fazer o LoadFromFile gerando novamente o arquivo XML sem nenhum problema. Claro que aguardo uma opinião dos moderadores, caso tenham um ponto de vista diferente.
×
×
  • 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...