jhmontoia
Membros-
Total de ítens
22 -
Registro em
-
Última visita
-
Days Won
1
jhmontoia last won the day on 3 Outubro 2020
jhmontoia had the most liked content!
Últimos Visitantes
925 visualizações
jhmontoia's Achievements
-
Boa tarde Ítalo, Conforme o nosso amigo Dangelo informou acima a consulta não está funcionando. Comparando o XML gerado pelo componente e o disponibilizado pela prefeitura (no início desse post) verifiquei que a tag <ConsultarNfseRps> deve ser <ConsultarNfseRpsEnvio> Fiz a alteração e recebi um XML identico ao que eu recebi no envio (ainda estou em modo teste), porém deu um "erro desconhecido ao consultar por RPS". Debugando encontrei um problema na unit pnfsConsNfseporRpsResposta.pas. A propriedade "ItemListaServico" não existe para esse provedor (pelo menos no XML de modelo), retornando um valor em branco. Na linha 357 dessa mesma unit tem um StrToInt nessa propriedade que retorna um erro. Mudei pra StrToIntDef com Default 0 e não deu mais erro, lendo corretamente o XML. Uma coisa que eu Observei é que esse servidor as vezes demora muito pra responder, dando TimeOut na chamada "ReqResp.Execute(Acao.Text, Stream);" Existe uma forma de aumentar o TimeOut? Segue as Units alteradas. Jonas H. Montoia ACBrProvedorGoiania.pas pnfsConsNfseporRpsResposta.pas
-
Bom Dia Ítalo, Está funcionando perfeitamente... Obrigado, Jonas H. Montoia
-
Boa tarde Ítalo Verificando esse erro vi que a correção que eu efetuei nesse post esse problema também. O erro era causado por uma varável criada na função Gera_TagI (xmlns: String), que continha o namespace "xmlns". Comentando essa linha o NamespaceDad chega na função em branco e o erro de Schema deixa de ocorrer. No meu ver o correto seria remover a variável xmlns ao invés de comentar essa linha. Att, Jonas H. Montoia
-
Boa tarde Ítalo, Meu cliente reclamou do mesmo erro informado acima. Tentei abrir o arquivo *-ger-nfse-soap.xml no Chrome e o mesmpo informou que o namespace "xmlns" estava duplicado. Realmente esse namespace estava duplicado no arquivo, efetuei a correção e voltou a funcionar. Segue anexa a unit alterada. ACBrProvedorGoiania.pas
-
Bom Dia Ítalo, Estou com o mesmo problema do Cesar e do ncc.star. Primeiramente, mesmo modificando a opção Configuracoes.Geral.RetirarAcentos := False; quando eu faço um debug na função Gerador.wCampo essa opção sempre chega "True". Para um teste eu modifiquei a propriedade na unit pcnGerador no TGerador.Create para False e essa propriedade chegou false, mas não consegui encontrar onde essa propriedade deveria ser carregada com o conteúdo da propriedade "Configuracoes.Geral.RetirarAcentos". O erro todo ocorre por causa da Tag "retConsMDFeNaoEnc" que no componente está "RetConsMDFeNaoEnc". Alterei para o que consta no manual ( com "r" minusculo e tudo funcionou corretamente. Um possível problema seria essa linha, InfMDFe := TRetInfMDFeCollection.Create(Self); Ela somente é criada se retornar a tag retConsMDFeNaoEnc, por esse motivo deu o erro. Não seria o caso de criar no TRetConsMDFeNaoEnc.Create ou no início da function LerXML? Segue anexa a Unit alterada. pmdfeRetConsMDFeNaoEnc.pas
-
Bom dia Pessoal, Estou com o mesmo problema e verifiquei que o erro ocorre somente se a NFe retornar rejeição. Nesse caso, a propriedade DigVal não é retornada, conforme o XML anexo. Fiz uma alteração na unit para que valide o DigestValue somente se a NF estiver confirmada. Segue a unit alterada. Att, Jonas H. Montoia PS: Somente um comentário. Essa validação utilizando uma exception pode causar problemas no caso do envio em lote. Caso uma nota retorne um DigestValue Inválido, o processo será parado e as outras notas serão prejudicadas, mesmo estando corretas. 351000085512044-pro-rec.xml ACBrNFeWebServices.pas
-
Bom dia Pessoal, Efetuei a implementação da NFSe para a cidade de Indiana/SP. Adicionei a cidade na procedure CodCidadeToProvedor da unit pnfsConversao e fiz as alterações na unit ACBrProvedorSimplISS. Seguem os arquivos para análise. Att, Jonas NFSe Indiana.rar
-
Bom dia Juliomar. Meus fontes estão atualizados sim. Na dúvida exclui todos os arquivos da pasta acbr\Fontes\ACBrNFe2 e dei um update. O problema somente ocorre ao enviar o email com a opção EnviaPDF = True. Na Unit ACBrNFe a procedure EnviarEmailEvento está assim: if (EnviaPDF) then begin if DANFE <> nil then begin ImprimirEventoPDF; // NomeArq := StringReplace(EventoNFe.Evento[0].InfEvento.id,'ID', '', [rfIgnoreCase]); NomeArq := Copy(EventoNFe.Evento[0].InfEvento.id, 09, 44) + Copy(EventoNFe.Evento[0].InfEvento.id, 03, 06) + Copy(EventoNFe.Evento[0].InfEvento.id, 53, 02); // Aqui tenta ler como IDNFe+TipoEvento+CodEvento NomeArq := PathWithDelim(DANFE.PathPDF)+NomeArq+'evento.pdf'; AnexosEmail.Add(NomeArq); end; end; EnviaEmail(sSmtpHost, Na procedure ImprimirEVENTOPDF da Unit ACBrNFeDANFEFR.pas está da seguinte forma: if PrepareReportEvento then begin dmDanfe.frxPDFExport.Author := Sistema; dmDanfe.frxPDFExport.Creator := Sistema; dmDanfe.frxPDFExport.Producer := Sistema; dmDanfe.frxPDFExport.Title := TITULO_PDF; dmDanfe.frxPDFExport.Subject := TITULO_PDF; dmDanfe.frxPDFExport.Keywords := TITULO_PDF; dmDanfe.frxPDFExport.ShowDialog := False; { NomeArq := TACBrNFe(ACBrNFe).EventoNFe.Evento[0].InfEvento.chNFe; NomeArq := NomeArq + '-' + TACBrNFe(ACBrNFe).EventoNFe.Evento[0].InfEvento.TipoEvento; NomeArq := NomeArq + '-' + IntToStr(TACBrNFe(ACBrNFe).EventoNFe.Evento[0].InfEvento.nSeqEvento); } { NomeArq := TACBrNFe(ACBrNFe).EventoNFe.Evento[0].InfEvento.TipoEvento; NomeArq := NomeArq + TACBrNFe(ACBrNFe).EventoNFe.Evento[0].InfEvento.chNFe; } NomeArq := Copy(TACBrNFe(ACBrNFe).EventoNFe.Evento.Items[0].InfEvento.id, 3, 52); // Aqui salva como TipoEvento+IDNFe+CódigoEvento dmDanfe.frxPDFExport.FileName := PathWithDelim(Self.PathPDF) + NomeArq + 'evento.pdf'; dmDanfe.frxReport.Export(dmDanfe.frxPDFExport); end; Observe que essa procedure é chamada antes de ler o PDF. Como os nomes de arquivo estão diferentes o sistema dá esse erro. Só tenho como testar os relatórios em Fast e em RaveCB, que são os que eu uso e nos dois casos o problema continua. Att, Jonas
-
Boa tarde pessoal, Estou com um problema no envio do evento por email. Ao enviar o email de um evento pelo comando ACBrNFe1.EnviarEmailEvento com o parâmetro EnviaPDF = True está dando um erro que o sistema não encontra o PDF do evento. Ocorre que na revision 7487 a unit ACBrNFe.pas foi alterada, na linha 804 de: NomeArq := StringReplace(EventoNFe.Evento[0].InfEvento.id,'ID', '', [rfIgnoreCase]); para: NomeArq := Copy(EventoNFe.Evento[0].InfEvento.id, 09, 44) + Copy(EventoNFe.Evento[0].InfEvento.id, 03, 06) + Copy(EventoNFe.Evento[0].InfEvento.id, 53, 02); Ocorre que nas units que geram o PDF (Utilizo o Rave Codebase e o Fast Report) o nome do arquivo não foi alterado. Não sei como posso resolver esse problema, pois a alteração envolve muitas units, inclusive algumas que eu não utilizo e não tenho como testar. No Aguardo, Jonas Henrique Montoia
-
Boa tarde Juliomar. Conforme solicitado, segue a Unit alterada. Para quem trabalha com diversos sistemas como eu o melhor é editar o arquivo na pasta do Delphi. Agora pra quem trabalha com um único sistema basta adicionar as duas units ( a alteração é somente na Soap.SoapHTTPTrans.pas) na pasta do sistema e adicionar as units ao projeto. Atenciosamente, Jonas Soap.SOAPHTTPTrans.pas Soap.SOAPHTTPClient.pas
-
Oneide, Da uma olhada nesse post... parece ser o mesmo erro... Jonas
-
Bom dia Pessoal. Segundo a Embarcadero o Delphi XE6 não é compatível com Windows XP. Porém encontrei uma solução no fórum da embarcadero que resolve o problema. http://qc.embarcadero.com/wc/qcmain.aspx?d=124627 No meu caso somente adicionei a pasta {Diretorio de Inspalação do Delphi XE6}/Source/Soap/ no meu LibraryPath editei o arquivo Soap.SoapHTTPTrans.pas substituindo o código: {$IFDEF UNICODE} HttpSendRequest(Request, nil, 0, DatStr.Bytes, DatStr.Size); {$ELSE} HttpSendRequest(Request, nil, 0, @DatStr.DataString[1], Length(DatStr.DataString)); {$ENDIF} RetVal := HandleWinInetError(GetLastError, Request, True); Por: {$IFDEF UNICODE} WinInetResult := HttpSendRequest(Request, nil, 0, DatStr.Bytes, DatStr.Size); {$ELSE} WinInetResult := HttpSendRequest(Request, nil, 0, @DatStr.DataString[1], Length(DatStr.DataString)); {$ENDIF} if not WinInetResult then RetVal := HandleWinInetError(GetLastError, Request, True); Lembrando de Criar a variável local WinInetResul : Boolean; Basta dar um Build e o executável volta a funcionar normalmente. Esta solução foi postada pra Windows 7 com instalação Original (I.E. 9) mas no meu caso (Windows XP com IE 8) o sistema funcionou normalmente. Se alguém quiser testar e compartilhar o resultado seria de grande ajuda. Att, Jonas
-
Erro Na Impressão Em Fortes - Txtsacadoravalista3
jhmontoia replied to jhmontoia's tópico in ACBrBoleto
Juliomar, Desculpe pelo flood mas eu li sim as regras do Forum... imaginei que fazer um único Bump após 7 horas que o meu post estava sem nenhuma resposta e já estava no final da página não seria de forma excessiva. ( e é normal em qualquer fórum...) Agradeço pela atenção e digo que não farei novamente. Jonas -
Erro Na Impressão Em Fortes - Txtsacadoravalista3
jhmontoia replied to jhmontoia's tópico in ACBrBoleto
up -
Bom dia, Após a última atualização dos boletos (Revision 7340) meu sistema começou a apresentar a seguinte mensagem de erro na impressão em Fortes: LayoutBoleto: Erro durante a preparação do relatório EAccessViolation(Access violation at address 0040BEB2 in module ''. Write of address 00000298) Voltando para uma versão anterior o erro não ocorre. Compilando verifiquei que o problema ocorre na linha 705 (RLBand2BeforePrint): txtSacadorAvalista3.Caption := txtSacadorAvalista2.Caption; Verifiquei então que esse componente (txtSacadorAvalista3) estava declarado no .pas, porém o mesmo não está declarado no .dfm, o que deixava compilar dando o access violation ao imprimir. Incluí o componente após no final da declaração da RLBand2 e o erro deixou de ocorrer. Segue a dfm alterada. Jonas H. Montoia ACBrBoletoFCFortesFr.rar