Ir para conteúdo
  • Cadastre-se

OldProgramer

Membros
  • Total de ítens

    88
  • Registro em

  • Última visita

Tudo que OldProgramer postou

  1. Para registrar, adicionei: vFile := TFileStream.Create('NF16335.pdf', fmOpenRead); // e adicionei no stringlist de envio stEnvio.Add(EncodeBase64(ReadStrFromStream(vFile, vFile.Size))); stEnvio.Add(',"anexoFileName":"NF16335.pdf"'); stEnvio.Add(',"anexoType":"application/octet-stream;base64"'); stEnvio.Add(',"anexoContent":"'+Memo3.Lines.Text+'"'); E o anexo seguiu normalmente.
  2. Aliás, com esse código aí agora enviou, mas complica pra enviar anexos. No guia da API apenas informam: anexoContent - arquivo codificado em base64 (Data URI) - Opcional anexoFileName - nome do arquivo a ser enviado - Opcional anexoType tipo Mime - do arquivo a ser anexado (ex: image/jpeg) - Opcional
  3. Opa Juliomar, blz? Já sim. Foi Ok. Por isso mandei com Indy inicialmente pra gerar o json por um memo a título de teste. Agora tentei assim e tbm deu 'faltam parâmetros'. procedure TForm2.SpeedButton3Click(Sender: TObject); var Json: string; sResponse: string; JsonToSend: TStringStream; _idHttp : TIdHTTP; _SSLHandler : TIdSSLIOHandlerSocketOpenSSL; aBody: TStringList; aResponse: TMemoryStream; begin try try _idHttp := TIdHTTP.Create; aResponse := TMemoryStream.Create; aBody := TStringList.Create; _SSLHandler := TIdSSLIOHandlerSocketOpenSSL.Create(nil); _SSLHandler.SSLOptions.SSLVersions := [sslvTLSv1_2]; _idHttp.IOHandler := _SSLHandler; _idHttp.HandleRedirects := True; _idHttp.Request.Clear; _idHttp.ProtocolVersion := pv1_1; _idHttp.ConnectTimeout := 15000; _idHttp.HandleRedirects := True; _idHttp.Request.AcceptEncoding := 'application/json,text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'; _idHttp.Request.Connection := 'keep-alive'; _idHttp.Request.Accept := '*/*'; _idHttp.Request.ContentType := 'application/json'; Json := AnsiReplaceText(Memo1.Lines.Text, #13#10, ''); JsonToSend := TStringStream.Create(Json, TEncoding.UTF8); _idHttp.Request.CustomHeaders.Add('Content-Type: application/json'); sResponse := _idHttp.Post('https://painel.mailgrid.com.br/api', JsonToSend); except on e: Exception do begin ShowMessage(E.Message); end; end; finally JsonToSend.Free; aBody.Free; aResponse.Free; _SSLHandler.Free; _idHttp.Free; end; Memo2.Lines.Clear; Memo2.Lines.Text := sResponse; end;
  4. Olá pessoal. Estou tentando usar essa API : https://painel.mailgrid.com.br/api/api_smtp.pdf Tentei de várias maneiras, todas recebo que falta algum parâmetro. Com o Indy: procedure TForm2.SpeedButton4Click(Sender: TObject); var sResponse: string; JsonToSend: TStringStream; _idHttp : TIdHTTP; _SSLHandler : TIdSSLIOHandlerSocketOpenSSL; Params: TIdMultipartFormDataStream; begin try try _idHttp := TIdHTTP.Create; _SSLHandler := TIdSSLIOHandlerSocketOpenSSL.Create(nil); _SSLHandler.SSLOptions.SSLVersions := [sslvTLSv1_2]; _idHttp.IOHandler := _SSLHandler; _idHttp.HandleRedirects := True; _idHttp.Request.Clear; _idHttp.ProtocolVersion := pv1_1; _idHttp.ConnectTimeout := 15000; _idHttp.HandleRedirects := True; _idHttp.Request.AcceptEncoding := 'application/json,text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'; _idHttp.Request.Connection := 'keep-alive'; _idHttp.Request.Accept := '*/*'; _idHttp.Request.ContentType := 'application/json'; Params := TIdMultipartFormDataStream.Create; Params.AddFormField('host_smtp',vHost.Text); Params.AddFormField('usuario_smtp',vUser.Text); Params.AddFormField('senha_smtp',vSenhaSMTP.Text); Params.AddFormField('emailRemetente', vEmailRemet.Text); Params.AddFormField('emailDestino', '['+vEmailDest.Text+']'); Params.AddFormField('assunto', vAssunto.Text); Params.AddFormField('mensagem', mMsg.Lines.Text); _idHttp.Request.CustomHeaders.Add('Content-Type: application/json'); sResponse := _idHttp.Post('https://painel.mailgrid.com.br/api', Params); except on e: Exception do begin ShowMessage(E.Message); end; end; finally Params.Free; _SSLHandler.Free; _idHttp.Free; end; Memo2.Lines.Clear; Memo2.Lines.Text := sResponse; end; E com o REST: function TForm2.ExecuteWSTokenExemplo02: WideString; var Json: string; restClient: TRESTClient; restRequest: TRESTRequest; restResponse: TRESTResponse; JsonToSend: TStringStream; begin restClient := TRESTClient.Create('https://painel.mailgrid.com.br/api/'); restRequest := TRESTRequest.Create(restClient); restResponse := TRESTResponse.Create(restClient); Json := AnsiReplaceText(Memo1.Lines.Text, #13#10, ''); JsonToSend := TStringStream.Create(Json, TEncoding.UTF8); Memo2.Lines.Clear; Memo2.Lines.Add(JsonToSend.ToString); Memo2.Lines.Add(' '); Memo2.Lines.Add(' '); try try restClient.BaseURL := 'https://painel.mailgrid.com.br/api/'; restClient.AcceptCharset := 'UTF-8'; restClient.ContentType := 'application/json'; restResponse.ContentType := 'application/json'; restRequest.Client := restClient; restRequest.Method := rmPOST; restRequest.AcceptCharset := 'UTF-8'; restRequest.Response := restResponse; restRequest.Params.Clear; restRequest.AddParameter('Content-Type','application/json',pkHTTPHEADER); restRequest.AddBody(JsonToSend); restRequest.Execute; result := restResponse.Content; except on e: Exception do begin result := 'Erro: ' + e.Message + ' JSON/TEXT: ' + restResponse.Content; end end; finally restRequest.Free; restResponse.Free; restClient.Free; JsonToSend.Free; end; end; Alguém pode dar uma luz? Desde já agradeço.
  5. Dá uma olhada aqui que tem: https://github.com/tecnospeedti/plugnotas-delphi
  6. Sim, seria até mais interessante do zero pois o emissor está muito "remendado". Como é industria, é cheio detalhes. Tem estado como o MT e CE que o cálculo é completamente diferente. E tem até cliente que por causa de liminar conseguem tratamento diferenciado. Pode variar ambas.
  7. Conecta, puxa o(s) registro(s), pra um componente de edição não db, desconecta e qdo a alteração for executada faz a conexão e o update.
  8. Algum colega tem algum fonte pra vender onde o próprio usuário pode criar suas templates pro modelamento de seu negócio? Ex: pra uma nota de remessa X o CST fica Y, desta ICMS mas não totaliza; é uma nota pra ZF cst Y, NCM Z, desconta ICMS do produto, etc; é nota com CFOP W, triangulada, recupera ST da entrada e desconta da saída, etc. Reforçando, modelamento pelo usuário final.
  9. Bom dia Juliomar. Realmente tinha na pasta de output. Apaguei todas pastas outputs. Eliminei todos os search paths do projeto e fiz uma limpa nas lib search's tbm. Re-instalei o ACBr novamente limpando arquivos antigos novamente e deixando apenas a libxx. Ao dar um build no meu projeto tive esse problema "[dcc32 Fatal Error] frxClass.pas(12063): F2051 Unit ACBrNFeDANFEFR was compiled with a different version of frxClass.TfrxReport". Não tenho nenhuma versão do FastReport a mais, só a 5.6.2. A título de teste, troquei pelo DanfeFortes e funcionou. Agora consegui recompilar meu projeto, porém sem os componentes ACBr Fastreport. Não tenho problemas em usar os do Fortes e aparentemente está funcionando tudo normal. De qualquer jeito agradeço a atenção e a ajuda.
  10. SSD zerado, instalação Win e ACBr nova. Até apaguei a ACBr_WinCrypt.dcu pra ver se ia acusar falta ou tava pegando de algum local que esqueci. Mas nada, acusou falta normalmente.
  11. Opa Juliomar, segue. Grato pela atenção. log_Delphi_XE8_Win32.txt
  12. Olá pessoal. Troquei meu SSD, instalei um Windows 10 e suas atualizações, instalei o meu XE8 e atualizei o ACBr. Executei a instalação pelo instalador, por via das duvidas apagando arquivos antigos e instalou normalmente. O que o corre é que ao dar um build na minha aplicação aparece: [dcc32 Fatal Error] ACBr_WinCrypt.pas(21489): F2051 Unit ACBrDFeWinCrypt was compiled with a different version of ACBr_WinCrypt.PCCERT_CONTEXT No meu note está normal e as minhas fontes vieram dele. Alguém pode me dar uma dica? Grato.
  13. Um cliente acaba de reclamar isso, dizendo que no portal sai o nome do município e não o código.
  14. Procuro desenvolvedor Deplphi para integração Pluug.to. Basicamente integrar o plugg.to (todas as suas funcionalidades) com uma base MySQL. Documentação da API: https://documenter.getpostman.com/view/249752/T1DpAwbJ?version=latest Interessados já enviem cotação e prazo em privado. Grato.
  15. Pra complementar: - incluindo a unit "frxGradient" no meu emissor não deu mais crash. Não sei porque pois nunca declarei manualmente antes essa unit e sempre usei normalmente tanto relatórios do fast como a própria DANFE. - retirei o raise do retorno no caso de rejeição e continuo o processamento pelo retorno e passe a usar assim aparentemente sem maiores problemas.
  16. Obrigado pela atenção Juliomar e Daniel. Separei o módulo de emissão de NFe do resto do meu sistema pra facilitar. Passou a assinar, enviar e receber normalmente, mas qdo há rejeição, ao ser gerado há exceção (raise EACBrDFeException.CreateDef(MsgErro)) ele apresenta "Invalid class type cast" e eu não consigo prosseguir para fazer o tratamento dessa rejeição. Tentei trocar a classe pela padrão do SysUtil mas nada.
  17. Outro coisa: como a demo funciona corretamente, a título de teste, incorporei a demo no meu sistema sem alterar absolutamente nada e caput! Erro no mesmo local.
  18. Debugando, foi no módulo 'assinatura', nesta chamada: Aí cai no 'finally' a seguir: E derruba a aplicação em:
  19. Obrigado BigWings e Elton. No meu desktop (exatamente a mesma versão e configuração do Delphi, exceto que está sob Win 8.1, ambas com o IDE FixPack) fiz agora a instalação e instalou normal. Eu estava fazendo no meu note. Realmente li sobre o erro interno e tal, mas realmente não acho nenhuma diferença nas duas instalações nem no procedimento que fiz pra atualizar ambos. Talvez algum corrompimento na instalação do Delphi já que o note é novo descartei problemas de hardware (q seria um estranhamento só dar problema nisso). Só de pensar em instalar tudo de novo no note já me dá arrepios...
  20. Fiz uma atualização dia 9/4 (apenas para atualização pois fazia uns 2 meses que não atualizava mas estava tudo funcionando 100%) e dei um build no meu sistema, a partir daí comecei a ter problemas com a NFe. Então desinstalei todos os componentes, apaguei a pasta toda de fontes do ACBr, baixei tudo novamente, apaguei os arquivos atigos como administrador e rodei o instalador (ver 1.5.0.3). Instala tudo normal menos os componentes do Fastreport e do Fortes. Compiling package C:\Fontes\ACBrwc\Pacotes\Delphi\ACBrDFe\ACBrNFe\DANFE\NFe\Fast\ACBr_NFeDanfeFR.dpk "C:\Program Files (x86)\Embarcadero\Studio\16.0\bin\dcc32.exe" "C:\Fontes\ACBrwc\Pacotes\Delphi\ACBrDFe\ACBrNFe\DANFE\NFe\Fast\ACBr_NFeDanfeFR.dpk" Embarcadero Delphi for Win32 compiler version 29.0 Copyright (c) 1983,2015 Embarcadero Technologies, Inc. C:\Fontes\ACBrwc\Fontes\ACBrDFe\ACBrNFe\DANFE\NFe\Fast\ACBrNFeDANFEFRDM.pas(42) Fatal: F2084 Internal Error: AV0050CF4B-W00400000-1 Compilation failure Erro ao compilar o pacote "ACBr_NFeDanfeFR.dpk". Abortando... Ocorreram erros na compilação dos pacotes. Compiling package C:\Fontes\ACBrwc\Pacotes\Delphi\ACBrDFe\ACBrNFSe\DANFSE\Fortes\ACBr_NFSeDanfseRL.dpk "C:\Program Files (x86)\Embarcadero\Studio\16.0\bin\dcc32.exe" "C:\Fontes\ACBrwc\Pacotes\Delphi\ACBrDFe\ACBrNFSe\DANFSE\Fortes\ACBr_NFSeDanfseRL.dpk" Embarcadero Delphi for Win32 compiler version 29.0 Copyright (c) 1983,2015 Embarcadero Technologies, Inc. C:\Fontes\ACBrwc\Fontes\ACBrDFe\ACBrNFSe\DANFSE\Fortes\ACBrNFSeDANFSeRL.pas(47) Fatal: F2084 Internal Error: AV00496D8E-W04B80000-1 Compilation failure Erro ao compilar o pacote "ACBr_NFSeDanfseRL.dpk". Abortando... Ocorreram erros na compilação dos pacotes. Alguém pode me dar uma dica? Uso Win10 e Delphi XE8, Fastreport 5 e Fortes atualizado. Manualmente tbm não instalam esses componentes. Grato a todos.
  21. Obrigado pela atenção Daniel. No momento do envio. Não mudei nada no processo, quer dizer, alimento o componente e depois uso o método "Enviar" com apenas o número do lote. Não uso o "Assinar". Se mando apenas gravar o XML sem assinar faz normalmente.
  22. Bom dia a todos. Estava emitindo NFe, manifestando, etc normalmente, mas depois de atualizar semana passada comecei a receber "Access violation" na hora de emitir a NFe ou manifestar. Atualizei os fontes, desinstalei os componentes do XE8, usei o instalador apagando o conteúdo anterior e dei um build geral mas o erro persiste. Uso WinCrypt, mas mesmo com OpenSSL (copiei as DLL's da versão 1.1.x e apaguei as enteriores) dá o mesmo erro. Alguém teve o mesmo problema ou pode me dar uma dica? Nem que for voltar a uma versão anterior dos fontes?
  23. Vi que o software gratuito mantém o controle local, ou seja, realmente não atualiza se foi manifestada por outro prg, no máximo aparece como "download feito". É que essa argumentação de que o controle do manifesto deve ser exclusivamente pela aplicação é bizarra. Numa empresa grande mais de uma pessoa pode fazer este tipo de trabalho, e até mesmo um computador/servidor pode falhar e a aplicação deve ser reiniciada em algum outro equipamento, logo, é patético não existir mais uma consulta direta sobre o estado (manifesto, etc) de uma NFe.
  24. Opa BigWings obrigado pela atenção. Aparece como não manifestada, aí que tá. Recebo que a operação foi aceita e tal, mas se consulto no software gratuito aparece como não manifestada. Não sei se no outro dia ou sei lá qual o tempo depois vai aparecer como manifestada, mas pro cliente isso parece estranho.
  25. Pessoal, qdo manifesto pelo meu sistema usando o ACBr (modo produção evidentemente), recebo normal o retorno 135, porém se abro o programa gratuito e puxo as notas, ela aparece como não manifestada. Os servidores são diferentes? É um atraso normal? Chefe ficou reclamando disso...
×
×
  • 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...