Ir para conteúdo
  • Cadastre-se

Italo Giurizzato Junior

Consultores
  • Total de ítens

    39.488
  • Registro em

  • Última visita

  • Days Won

    1.143

Tudo que Italo Giurizzato Junior postou

  1. Boa tarde Carlos, Fica dificil resolver o seu problema sem saber qual é o erro que esta ocorrendo quando você tenta imprimir o DACTE. Seja mais claro, por favor.
  2. Luiz, A mensagem de erro retornada é: Nao foi possivel localizar o Certificado Digital, configurado para assinar os arquivos gerados pela prefeitura. Observe se os parametros estao corretamente configurados na tela de parametros ou contate o administrador do Sistema! Acredito, que o problema esta no webservice do provedor. Note que na primeira linha da mensagem se refere aos arquivos gerados pela prefeitura. Entre em contato com o provedor e passe essa mensagem de erro.
  3. Boa tarde Graça, No grupo <prop> deixe somente a tag RNTRC. Tanto do veiculo tração quando do reboque.
  4. Carlos, Você já questionou sobre esse assunto em outro tópico. Se atente as regras do fórum.
  5. Boa tarde Carlos, Se não me falha a memória esse método foi criado para o provedor IssDSF, logo ele não funciona para os demais provedores.
  6. Luiz, Todos os fontes estão atualizados?
  7. Leandro, Se não me falha a memória devo ter pego esse trecho de código de um exemplo que há um bom tempo foi postado no antigo fórum. A rotina por sinal se referia a NF-e, como os comandos são os mesmos acabei fazendo igual. A minha aplicação para emissão de CTe foi feita a mais de 2 anos, tem coisas que preciso parar analisar o porque eu coloquei. Não me recordo de tudo. Mas essas 2 linhas são para realizar uma consulta na SEFAZ utilizando o numero do recibo de entrega de lote. O componente possui duas formas de ser utilizado, principalmente os comandos que estabelecem a conexão com os webservices. As linhas que você postou é a segunda forma, que nos permite ter um controle maior, ou seja tratar de forma mais eficiente os retornos, evitando assim as telas exceções que os comandos ( primeira forma) do componente gera quando algo esta errado.
  8. Boa tarde a todos, O problema é que vocês estão incluindo no XML o grupo <infUnidTransp> e seus respectivos campos e sub-grupos. Esse novo grupo só vai ser aceito em ambiente de homologação a partir de 01/11/2013 e em produção: 01/12/2013. Portanto os ambientes de homologação e produção não estão preparados para receber um XML contendo esse grupo. Gere novamente um novo XML sem o grupo <infUnidTransp> e testa novamente.
  9. Boa tarde Luiz, Você configurou o componente corretamente? Pois esse arquivo que você chamou de envio só tem a assinatura.
  10. Boa tarde Leandro, Algumas coisas você tem razão, o comando Enviar, se encarrega de gerar o XML, assinar e validar antes de enviar e finalmente imprimir o DACTE. Portanto você remover as linhas que contem o comando que assina e valida sem nenhum problema. Essa rotina faz parte da minha aplicação. Coloquei o Assinar e o valida, pois na época que iniciei a implementação não possuia um certificado valido para acessar os webservices da SEFAZ. Usei como um quebra galho um certificado disponibilizado pela SEFAZ-RS que permite apenas assinar. Desta forma tive condições de testar a minha aplicação e o componente no que diz respeito a Gerar o XML, Assinar e validar. Note que existe um if DM_CTA.EnviaSefaz Essa variavel EnviaSefaz é boolean e atribui inicialmente o valor False, pelo simples fato de não possuir o certificado. Desta forma após gerar o XML, assinar e validar ocorria a impressão do DACTE. if DM_CTA.EnviaSefaz then begin (...) end else begin MemoStatus.Lines.Add(' Aguarde Imprimindo...'); // Somente imprime o CTe DMCTE.CTe.Conhecimentos.Imprimir; (...) end; Portanto essa rotina é apenas um exemplo, para que você possa a partir dela desenvolver a sua.
  11. Boa tarde Udenilson, Eu removi a função que retira os prefixos das TAGs da NFS-e ao salva-la em disco. Favor verificar o numero da Revision na aba Subversion em propriedades do arquivo ACBrNFSeWebServices que encontra-se dentro da pasta: ...\Fontes\ACBrNFSe O meu é 5727 e o Last commit é 5718.
  12. Bom dia, No meu entendimento, não. Uma vez que o problema existe e ainda não temos uma solução definitiva para ele.
  13. Bom dia Arce, Muito obrigado pela colaboração. Já esta disponivel, por favor atualize os fontes.
  14. Bom dia Daniel, Já encontra-se disponivel as alterações no DACTE - Quick Report, para que o mesmo formate o CNPJ/CPF de forma correta. Fica ainda a pendencia para a solução do problema que você apresentou.
  15. Bom dia Mauro, Caso você encontre alguma dificuldade, post aqui, vamos ajuda-lo.
  16. Bom dia a todos, O que o Alexandre escreveu esta correto. Na minha aplicação inclui um DataModule com o nome DMCTE. Dentro dele coloquei os componentes ACBrCTe e o ACBrCTeDACTeQR. Alterei o nome de ambos para CTe e DACTe respectivamente. Logo para utilizar o componente ACBrCTe tenho que informar primeiramente o DataModule antes do nome do componente, isso explica a linha abaixo: with DMCTE.CTe.Conhecimentos.Add.CTe do Caso você inclua o componente diretamente no forme e não altere o nome dele a linha acima ficaria da seguinte forma: with ACBrCTe1.Conhecimentos.Add.CTe do Outra coisa DMCNT é um DataModule que contem as tabelas utilizadas na minha aplicação: Controle de Conhecimentos - CNT. Espero ter esclarecido as dúvidas.
  17. Bom dia Medreis, Quem tem as informações no RPS é quem o emite, algumas ou praticamente todas são utilizadas pelo webservice para gerar o XML da NFS-e. Portanto ao realizar uma consulta de NFS-e por RPS por exemplo vamos ter o XML da NFS-e e neste XML temos as informações do RPS. Ao carregar o componente com o XML da NFS-e você consegue todas as informações, lendo as propriedades.
  18. Boa tarde Mauro, Eu que peço desculpa, o problema é que tem alguns usuários que parece que não gosta muito de ler, que não é o seu caso. O EPEC é um evento, caso você já tenha feito a CC-e ou o Cancelamento por evento para NF-e, não vai ter dificuldades com o EPEC do CT-e. Eu não implementei o EPEC na minha aplicação, caso contrario postaria a rotina. Tente implementar e post as duvidas.
  19. Bom dia Mauro, Já deu uma olha na Nota Técnica que se refere ao EPEC?
  20. Bom dia Marcos, Você não informou qual é o identificador não declarado que encontra-se na unit: pcteProcCte.pas.
  21. Bom dia Andreas, Essa alteração e outras como as novas TAGs já foram realizadas por mim, e o André já esta fazendo uma analise de todas as alterações, acredito que vai estar disponivel para que todos possam atulizar os seus fontes ainda esta semana ou semana que vem. Vamos aguardar.
  22. Daniel, Você entendeu exatamente o meu post anterior, só ficou faltando informar se a TAGparada for vazia, a rotina procederia como ela é hoje, desta forma não teriamos nenhum problema quanto aos demais componentes. Com relação a mascara na impressão do CNPJ / CPF no DACTE vou providenciar a alteração. Já a alteração nas funções relatadas no post anterior, fica ai a minha sugestão para resolver o problema, posso até implementar a solução, mas preciso do aval dos nossos mestres.
  23. Bom dia Neo, Primeiramente, você não vai alterar nada. Segundo, pelo schema que possuo e esta disponivel dentro da pasta ...\Exemplos\ACBrNFSe\Delphi\Schemas\Abaco não existe o GerarNfse somente o EnviarLoteRpsEnvio. Isso explica o porque a função Gera_DadosMsgGerarNFSe() retorna vazio para o provedor Abaco. O dia que o provedor implementar essa funcionalidade em seus WebServices e trocar o schema, ai sim para que o componente possa utilizar essa funcionalidade, vai ser necessário apenas remover da lista do IF o proAbaco. Agora se o provedor já possui essa funcionalidade GerarNFSe, então precisamos do novo schema, neste caso por favor entre em contato com o provedor e solicite o schema mais atual uitilizado para validar o lote a ser enviado para o WebService. Se esse novo schema consta o GerarNfse ai sim, com o schema atualizado podemos remover o proAbaco da lista do IF. Esta me esquecendo alem de remover o proAbaco do IF há necessidade de realizar algumas alterações na unit ACBrProvedorAbaco para atender a funcionalidade GerarNFSe. Portanto antes de remover algo, comentar alguma linha, procure saber se o provedor possui a funcionalidade desejada. Volto a lhe dizer se o componente retorna a mensagem informado que a funcionalidade não foi implementada, não é porque eu não quiz ou não tive tempo de implementar, é por que o provedor não possui ela.
  24. Bom dia a todos, Acredito ter encontrado uma solução para o problema acima, vamos a um estudo de caso. Layout do CT-e temos: <rem> nivel 1 <CNPJ> ou <CPF> nivel 2 (...) <enderReme> nivel 2 <xCpl> nivel 3 - opcional (...) <infNF> nivel 2 (...) <locRet> nivel 3 - opcional <CNPJ> ou <CPF> nivel 4 <xCpl> nivel 4 - opcional <infNFe> nivel 2 (...) <infOutros> nivel 2 (...) Não sei se ficou claro mas vamos ao estudo. if Leitor.rExtrai(2, 'enderReme') <> '' then begin CTe.Rem.enderReme.xCpl := Leitor.rCampo(tcStr, 'xCpl'); A linha em negrito acima le o conteudo da tag xCpl e armazena o seu valor na propriedade xCpl, que neste caso se refere ao complemento de endereço do remetente. Muito bem, essa tag é opcional e vamos supor que ela não foi informada, mas foi informado o local de retirada e este possui o complemento. Estudando a lógica da funcion rCampo que encontra-se na unit pcnLeitor ao ser executado a linha acima o rCampo não vai encontrar a tag xCpl do endereço do rememente por não ter sido informada, mas vai encontrar a tag de mesmo nome dentro do grupo <locRet> uma vez que este grupo esta contido dentro do grupo <rem>. No final tanto o complemento de endereço do remetente quanto o do local de retirada vão possuir a mesma informação. Problema semelhante apontado pelo nosso amigo Daniel F. Dixini, com relação ao CNPJ/CPF. Solução proposta por mim: Incluir na function rCampo um terceiro parametro chamado TAGparada. Esse paramentro tem por finalidade de abortar a busca pela TAG quando for encontrada a TAGparada, vamos ao exemplo: if Leitor.rExtrai(2, 'enderReme') <> '' then begin CTe.Rem.enderReme.xCpl := Leitor.rCampo(tcStr, 'xCpl', 'locRet'); Na linha acima em negrito, quando o rCampo for buscar pela tag xCpl para ler o seu conteudo, se localizar primeiro a tag locRet retorna vazio, caso contrario retorna o conteudo da tag xCpl. Algo semelhante poderiamos ter na função rCampoCNPJCPF, ela passaria a ter o parametro TAGparada, exemplo. if Leitor.rExtrai(1, 'rem') <> '' then begin CTe.Rem.CNPJCPF := Leitor.rCampoCNPJCPF('locRet'); Na linha acima em negrito, quando o rCampoCNPJCPF for buscar pela tag CNPJ ou CPF para ler o seu conteudo, se localizar a tag locRet retorna vazio, caso contrario retorna o conteudo. Acredito que desta forma vamos ler a tag correta.
  25. Boa tarde Akai, Atualiza os fontes e tente novamente.
×
×
  • 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.