Ir para conteúdo
  • Cadastre-se

Fernando Rodrigo

Membros
  • Total de ítens

    514
  • Registro em

  • Última visita

  • Days Won

    3

Tudo que Fernando Rodrigo postou

  1. como faço para pegar esse retorno na função ProcessarRespostaOAuth
  2. -registro_boleto.xml10000000-registro_boleto.xml Só é gerado 2 arquivos em anexo, eu falei com outro programador em java ele disse que é gerado um json para enviar para o banco, so que no acbr so gera xml
  3. como faço para pegar o json gerado no envio
  4. eu peguei a chave J com o cliente e mesmo assim continua o erro, estranho pq no DEMO com os dados de testes roda normal, gera o log e alguns arquivos xml, mas se colocar as minhas credenciais que foi cadatrado na api do banco não roda da erro
  5. esse campo ACBrBoleto1.Cedente.CedenteWS.KeyUser onde consigo ele pq no site do banco so tem 3 campos developer_application_key Credenciais OAuth client_id client_secret Quando uso as credenciais conforme arquivo de teste passa normal, mas quando coloco minhas credenciais da o erro acima
  6. fiz conforme o arquivo configWebService.txt e não passa de jeito nenhum, da erro no envio e não gera nenhum log para ver o que é
  7. passei como pNenhum e deu certo, valeu
  8. pessoal , no acbr foi implementado para checagem das placas no padrão Mercosul, alguém tem algum função para fazer essa conversão pegar do padrão atual e converter para o Mercosul ou vise-versa tenho uma base de dados e as placas estão todas antigas e preciso fazer essa conversar
  9. Dercide tem que informar conforme abaixo pq la na função que retorna o campo esta conforme abaixo, se eu informar pOutras, ele irá gerar o codgio 9 e o banco disse que tem que ser 0, então tem que ser pNenhum function TACBrBancoClass.DefineTipoSacadoAvalista(const ACBrTitulo: TACBrTitulo String; begin with ACBrTitulo do begin case Sacado.SacadoAvalista.Pessoa of pFisica : Result := '1'; pJuridica : Result := '2'; pOutras : Result := '9'; else Result := '0'; end; end; end; Sacado.SacadoAvalista.Pessoa := pNenhum;
  10. estou começando a implementar o boleto on-line no banco do brasil, e esta dando erro no envio, se alguem conseguiu fazer favor me de um help
  11. estou fazendo a validação para o santander cnab 240 e o banco me retornou uma instrução que devera ser alterado, so que olhando os fontes não tem como fazer igual ao banco precisa REGISTRO DETALHE-SEGMENTO Q REMESSA 154-154 Tipode inscrição sacador/avalista: . . SE A INSCRIÇÃO DO CEDENTE FOR CNPJ, O MESMO NÃO NECESSITA DE SACADOR AVALISTA, LOGO, ESTE CAMPO DEVE INFORMA '0', LINHA 4 Para preencher esses campo é feito 2 checagem essa abaixo na unit do banco, so que no componente so aceita pFisica e pJuridica, conforme validação abaixo, como irei informar codigo 0, sendo que so existe esses 2 tipos de inscrição ? {Pegando tipo de pessoa do Sacado} sTipoInscricao := Copy( DefineTipoSacado(ACBrTitulo), 2, 1); {Pegando tipo de pessoa do Avalista} aTipoInscricao:= DefineTipoSacadoAvalista(ACBrTitulo); Essa na unit AcbrBoleto function TACBrBancoClass.DefineTipoSacado(const ACBrTitulo: TACBrTitulo String; begin with ACBrTitulo do begin case Sacado.Pessoa of pFisica : Result := '01'; pJuridica : Result := '02'; else Result := '99'; end; end; end; function TACBrBancoClass.DefineTipoSacadoAvalista(const ACBrTitulo: TACBrTitulo String; begin with ACBrTitulo do begin case Sacado.SacadoAvalista.Pessoa of pFisica : Result := '1'; pJuridica : Result := '2'; pOutras : Result := '9'; else Result := '0'; end; end; end;
  12. não deu certo, ja alterei e coloquei todas as opções e nenhum passa.
  13. não gerou nenhum log, eu preenchi os campos para remessa conforme o DEMO e so pedir para enviar e não gerou nenhum log na pasta do DEMO With ACBrBoleto1.CriarTituloNaLista do begin // CriarTituloNaLista; Carteira := '17'; EspecieDoc := '99'; With ACBrBoleto1.Cedente do begin // Cedente.TipoCarteira := tctRegistrada; // Cedente.Modalidade := '19'; {Dados do cedente - Loja} CodigoTransmissao := '11'; TipoInscricao := pJuridica; {CNPJ} CNPJCPF := '04005416000153'; Nome :='Nome Fantasia do Cliente'; CodigoCedente := '4863177'; Convenio := '1014051'; Modalidade := '19'; Logradouro :='aaa'; NumeroRes := ''; Complemento := ''; Bairro := 'aaa'; Cidade := 'aaa'; UF := 'GO'; CEP := '74413050'; Agencia :='1'; AgenciaDigito := '0'; Conta :='xxx'; ContaDigito := '0'; end; LocalPagamento := 'Pagar em qualquer banco'; //MEnsagem exigida pelo bradesco Vencimento := IncMonth(EncodeDate(2020,10,10),I); DataDocumento := EncodeDate(2020,08,10); NumeroDocumento := PadRight(IntToStr(I),8,'0'); EspecieDoc := 'DM'; Aceite := atSim; DataProcessamento := Now; Carteira := '17'; NossoNumero := IntToStrZero(I,8); ValorDocumento := 100.35 * (I+0.5); Sacado.NomeSacado := 'Jose Luiz Pedroso'; Sacado.CNPJCPF := '12345678901'; Sacado.Logradouro := 'Rua da Consolacao'; Sacado.Numero := '100'; Sacado.Bairro := 'Vila Esperanca'; Sacado.Cidade := 'Tatui'; Sacado.UF := 'SP'; Sacado.CEP := '18270000'; ValorAbatimento := 10; DataAbatimento := Vencimento-5; Instrucao1 := '00'; Instrucao2 := '00'; NossoNumero := edtNossoNro.Text; with ACBrBoleto1.Banco do begin TipoCobranca := cobBancoDoBrasil; end; end; ************************** procedure TfrmDemo.btnRegistroClick(Sender: TObject); var SLRemessa: TStringList; i: Integer; begin with ACBrBoleto1 do begin //Banco do Brasil //Dados para Homologaçao Cedente.CedenteWS.ClientID := 'XXXXXX' Cedente.CedenteWS.ClientSecret := 'XXXXX'; Cedente.CedenteWS.Scope := 'cobranca.registro-boletos'; Cedente.CedenteWS.KeyUser := 'XXXX'; //Função de Envio EnviarBoleto; //Verifica Lista com os retornos if ListaRetornoWeb.Count > 0 then begin SLRemessa := TStringList.Create; try for i:= 0 to ListaRetornoWeb.Count -1 do begin //Ler todos os campos da classe Retorno SLRemessa.Add('Cod_Retorno='+ ListaRetornoWeb.CodRetorno + sLineBreak + 'Msg_Retorno='+ ListaRetornoWeb.MsgRetorno + sLineBreak + 'Ori_Retorno='+ ListaRetornoWeb.OriRetorno + sLineBreak + 'HEADER' + sLineBreak + 'Versao='+ ListaRetornoWeb.Header.Versao + sLineBreak + 'Autenticacao=' + ListaRetornoWeb.Header.Autenticacao + sLineBreak + 'Usuario_Servico=' + ListaRetornoWeb.Header.Usuario_Servico + sLineBreak + 'Usuario=' + ListaRetornoWeb.Header.Usuario + sLineBreak + 'Operacao=' + TipoOperacaoToStr(ListaRetornoWeb.Header.Operacao) + sLineBreak + 'Indice=' + IntToStr(ListaRetornoWeb.Header.Indice) + sLineBreak + 'Sistema_Origem=' + ListaRetornoWeb.Header.Sistema_Origem + sLineBreak + 'Agencia=' + IntToStr(ListaRetornoWeb.Header.Agencia) + sLineBreak + 'ID_Origem=' + ListaRetornoWeb.Header.Id_Origem + sLineBreak + 'Data_Hora=' +FormatDateTime('dd/mm/yyyy hh:nn:ss',ListaRetornoWeb.Header.Data_Hora) + sLineBreak + 'ID_Processo=' + ListaRetornoWeb.Header.Id_Processo + sLineBreak + 'DADOS' + sLineBreak + 'Excessao=' +ListaRetornoWeb.DadosRet.Excecao + sLineBreak + 'CONTROLE_NEGOCIAL' + sLineBreak + 'Origem_Retorno=' + ListaRetornoWeb.DadosRet.ControleNegocial.OriRetorno + sLineBreak + 'NSU=' + ListaRetornoWeb.DadosRet.ControleNegocial.NSU + sLineBreak + 'Cod_Retorno=' + ListaRetornoWeb.DadosRet.ControleNegocial.CodRetorno + sLineBreak + 'Msg_Retorno=' + ListaRetornoWeb.DadosRet.ControleNegocial.Retorno + sLineBreak + 'COMPROVANTE' + sLineBreak + 'Data=' + FormatDateTime('dd/mm/yyyy', ListaRetornoWeb.DadosRet.Comprovante.Data) + sLineBreak + 'Hora=' + ListaRetornoWeb.DadosRet.Comprovante.Hora + sLineBreak + 'ID_BOLETO' + sLineBreak + 'Codigo_Barras=' + ListaRetornoWeb.DadosRet.IDBoleto.CodBarras + sLineBreak + 'Linha_Digitavel=' + ListaRetornoWeb.DadosRet.IDBoleto.LinhaDig + sLineBreak + 'Nosso_Numero=' + ListaRetornoWeb.DadosRet.IDBoleto.NossoNum + sLineBreak + 'URL=' + ListaRetornoWeb.DadosRet.IDBoleto.URL + sLineBreak + 'CONSULTA_BOLETO' + sLineBreak + 'Numero_Documento=' + ListaRetornoWeb.DadosRet.TituloRet.NumeroDocumento + sLineBreak + 'Data_Vencimento=' + FormatDateTime('dd/mm/yyyy',ListaRetornoWeb.DadosRet.TituloRet.Vencimento) + sLineBreak + 'Valor=' + CurrToStr(ListaRetornoWeb.DadosRet.TituloRet.ValorDocumento) + sLineBreak ); end; SLRemessa.SaveToFile( PathWithDelim(ExtractFilePath(Application.ExeName))+'RetornoRegistro.txt' ); finally SLRemessa.Free; end; ShowMessage('Retorno Envio gerado em: '+ PathWithDelim(ExtractFilePath(Application.ExeName))+'RetornoRegistro.txt' ); end; end; end;
  14. fiz o cadastramento no banco do brasil como homologação e estou utilizando o demo para fazer os testes preenche todos os dados e na hora de envio esta dando Erro: 0 Conforme o DEMO so preenchi os dados fornecidos pelo banco with ACBrBoleto1 do begin //Banco do Brasil //Dados para Homologaçao Cedente.CedenteWS.ClientID := 'XXXXXXX'; Cedente.CedenteWS.ClientSecret := XXXXXXX Cedente.CedenteWS.Scope := 'cobranca.registro-boletos'; Cedente.CedenteWS.KeyUser := XXXXXXX //Função de Envio EnviarBoleto;
  15. estranho pq tenho cliente que funciona 100% e outros da erro em quase todas as notas manifestadas, segundo o pessoal da tecnospeed as notas entram em fila de liberação do xml a manifestação não entra em fila, mas a baixa sim. so que o cliente nosso não quer saber onde é o problema, ele quer funcionando
  16. segue o codigo que uso para fazer a publicação se nao entender o codigo me avise case dm_Estoque.Conf_Mercado_LivreANUNCIO.AsInteger of 1 : var_Tipo_Anuncio := 'gold_pro'; 2 : var_Tipo_Anuncio := 'gold_premium'; 3 : var_Tipo_Anuncio := 'gold_special'; 4 : var_Tipo_Anuncio := 'gold'; 5 : var_Tipo_Anuncio := 'silver'; 6 : var_Tipo_Anuncio := 'bronze'; 7 : var_Tipo_Anuncio := 'free'; end; case dm_Estoque.Conf_Mercado_LivreFRETE.AsInteger of 1 : var_tipo_frete := ',"non_mercado_pago_payment_methods": [],"shipping": {"mode": "me2","methods":[],"tags":[]}'; 2 : var_tipo_frete := 'gold_premium'; 3 : var_tipo_frete := 'gold_special'; 4 : var_tipo_frete := 'gold'; end; F_Funcoes.Checa_Estoque(StrToInt(Cod_loja.Text),PesquisaCodigo.value); for x := 1 to 3 do begin case x of 1 : If PesquisaFOTO.AsString <> '' then var_foto := ' "pictures":[ {"source":"' + dm_Estoque.Conf_Mercado_LivreFTP.AsString + ExtractFileName ( PesquisaFOTO.AsString ) + '"}'; 2 : If PesquisaFOTO2.AsString <> '' then var_Foto1 := ', {"source":"' + dm_Estoque.Conf_Mercado_LivreFTP.AsString + ExtractFileName ( PesquisaFOTO2.AsString ) + '"}'; 3 : if PesquisaFOTO3.AsString <> '' then var_Foto2 := ', {"source":"' + dm_Estoque.Conf_Mercado_LivreFTP.AsString + ExtractFileName ( PesquisaFOTO3.AsString ) + '"}'; end; end; if PesquisaCOD_BARRA.AsString <> '' then var_ean := ',{"id":"EAN","value_name":"' + PesquisaCOD_BARRA.AsString + '"}'; if PesquisaCODIGO_CATALAGO.AsString <> '' then var_Catalago := ',{"id": "PART_NUMBER","value_name":" ' + PesquisaCODIGO_CATALAGO.AsString + '"}'; if PesquisaQTDE_EMBALAGEM.AsInteger <> 0 then var_Unidade_Pacote := ',{"id": "UNITS_PER_PACKAGE","value_name":" ' + PesquisaQTDE_EMBALAGEM.AsString + '"}' else var_Unidade_Pacote := ',{"id": "UNITS_PER_PACKAGE","value_name":" ' + '1' + '"}'; if Load_imagem(dm_Estoque.Conf_Mercado_LivreFTP.AsString + ExtractFileName ( PesquisaFOTO.AsString ) ) = 0 then var_foto := ''; if Load_imagem(dm_Estoque.Conf_Mercado_LivreFTP.AsString + ExtractFileName ( PesquisaFOTO2.AsString ) ) = 0 then var_foto1 := ''; if Load_imagem(dm_Estoque.Conf_Mercado_LivreFTP.AsString + ExtractFileName ( PesquisaFOTO3.AsString ) ) = 0 then var_foto2 := ''; if dm_estoque.Conf_Mercado_LivreMENSAGEM.AsString <> '' then var_Obs_Anuncio := '\n\n\n\' + MENSAGEM.Text; // tipo de publicação 1 - publica todos os produtos, principal e produtos do e-commerse // tipo de publicação 2 - publica somente os produtos do e-commerse if dm_Estoque.Conf_Mercado_LivreTIPO_PUBLICACAO.AsInteger = 1 then begin Json := '{"title":"' + UTF8ToWideString ( PesquisaDESCRICAO.Value ) + '",'+ '"category_id":"MLB63581"' + ',' + // Codigo da Categoria '"price":' + TrocaVirgPPto ( FloatToStr( var_Preco_Venda ) ) + ',' + // Preço de Venda '"official_store_id":null, ' + '"currency_id":"BRL",' + // vendas no Brasil '"available_quantity":' + TrocaVirgPPto ( FloatToStr( F_Funcoes.CALCULA_ESTOQUE.FieldByName('SALDO').AsFloat ) ) + ','+ // estoque '"buying_mode":"buy_it_now", '+ '"listing_type_id":"' + var_Tipo_Anuncio + '"' + ',' + // tipo de anuncio '"condition":"new",' + // produto novo '"accepts_mercadopago": "true",'+ // aceita percado pago ? '"description":{"plain_text":"' + AnsiReplaceStr( ARGUMENTO_VENDA.Text,'"','') + var_Obs_Anuncio + '\n"},' + // argumento de venda var_foto + var_foto1 + var_Foto2 +']' + ',' + // fotos '"attributes":[{"id":"model","value_name":"' + PesquisaNOME_GRUPO.AsString + '"},' + // modelo '{"id":"brand","value_name":"' + PesquisaNOME_MARCA.AsString + '"}' + // marca var_Catalago + // Numero da Peça no ML var_Unidade_Pacote + // quantidade na embalagem var_ean + ']' + // codigo de barras var_tipo_frete // tipo de frete +'}'; Json := ReplaceAll(json,''#$D#$A#$D#$A'','\n\n'); Json := ReplaceAll(json,'#$D#$A','\n\n'); JsonToSend := TStringStream.Create( UTF8Encode(Json) ); Resposta_ML := ''; // CONEXÃO COM O ML PARA ATUALIZAÇÃO DE ESTOQUE while Resposta_ML = '' do begin try try Resposta_ML := 'https://api.mercadolibre.com/items?access_token='+ var_Access_token; Resposta_ML := IdHTTP1.Post(Resposta_ML, JsonToSend); // checa se ja foi feito conexão, joPrincipal := TlkJSON.ParseText(TEncoding.ASCII.GetString(TEncoding.ASCII.GetBytes(Resposta_ML))) as TlkJSONobject; if Pos('MLB',VarToStr(joPrincipal.Field['id'].Value)) <> 0 then begin F_Funcoes.Qry := TpFIBQuery.Create(nil); with F_Funcoes.Qry do begin Close; SQL.Clear; Database := dm_Geral.DB; Transaction := dm_Geral.Tr_Db; SQL.Add('Update Produto set produto.CODIGO_ML = :CODIGO_ML'); SQL.Add('where produto.codigo = :CODIGO'); ParamByName('CODIGO').AsInteger := PesquisaCODIGO.AsInteger; ParamByName('CODIGO_ML').AsString := VarToStr(joPrincipal.Field['id'].Value); ExecQuery; dm_Geral.Tr_Db.CommitRetaining; end; FreeAndNil(F_Funcoes.Qry); // tira o objeto da memória With Pesquisa do begin Edit; PesquisaSELECIONADO.AsString := '1'; Post; end; Break; end; except on E: EIdHTTPProtocolException do begin ShowMessage(E.ErrorMessage); end; on E: Exception do begin Resposta_ML := E.Message; if Resposta_ML = 'HTTP/1.1 200 OK' then begin break; end else Resposta_ML := ''; end; end finally end; end; end;
  17. @Daniel Simoesdeu certo, fico muito grato pela sua ajuda, e tenha um excelente final de semana.
  18. estou fazendo a configuração para enviar e-mail da conta abaixo, so que ja fiz de tudo para enviar e sempre retorna o mesmo erro de envio ja alterei ssl, tls, ja marquei um e desmarquei o outro, ja marquei os 2 e nada de funcionar, se alguem puder dar uma ajuda segue os dados da conta webmail.umbler.com e-mail : [email protected] senha: teste@123 usuario: teste se entrar no site https://webmail.umbler.com vc consegue acessar a caixa de e-mail, mas pelo acbr não se consegue enviar nenhum e-mail ja tentei smtp = smtp.umbler.com porta = 587 usuario = teste tem um help deles mas ja olhei todos e não deu certo https://help.umbler.com/hc/pt-br/articles/360000264626-Configurando-meu-e-mail-no-Outlook-com-hotmail- https://help.umbler.com/hc/pt-br/articles/202385515-Migrando-e-mails-entre-provedores https://help.umbler.com/hc/pt-br/articles/202385605-Redirecionamento-de-e-mails
  19. nada @Daniel Simoes, ele instala normal, so que os componentes não, ja exclui a pasta, peguei da minha maquina que esta funcionando normal e nada, ja fiz pelo instalador, ja fiz instalando pela bpl e nada roda
  20. estou fazendo a instalação do acbr no windows 2003 server pelo AcbrInstall, ele faz a compilação e instalação normal, so que quando vou no delphi não tem nada instalado. Ja fiz a instalação com opção de limpar todo o acbr antigo e tambem não deu certo. Alguem ja passou ou tem alguma solução ? Fico grato log_Delphi_2010_Win32.txt
  21. boa noite pessoal, sei que o tópico é antigo mas o problema ainda persiste junto a sefaz, sempre dando erro de timeout, não uso acbr para manifestação das notas, uso tecnospeed ja bastante tempo e tambem não estou conseguindo baixar o xml, fazer a manifestação ate que funciona normal , mas baixar o xml so com reza, tem hora que funciona, tem hora que na maioria das vezes não da certo. entrei em contato com o pessoal do arquivei como ja disseram eles tem solução, mas cobram bem caro para baixar cada xml, mas é mais conta do que o site da serpro de onde eles fazen a conexão para baixar o xml. meus clientes estão puto sempre dizendo que o problema é do meu sistema e que outros clientes estão baixando normal os xml, so que o pessoal da tecnospeed ja enviaram milhões de e-mail para a sefaz dizendo sobre esse problema de lentidão mas sempre retornam a mesma explicação, que o servidor deles estão sem capacidade de processar todas as requisições e que o download entra em fila de solicitação, enfim tiraram o dele da reta e sempre sobra para os programadores. no fritar dos ovos, existe outra solução ? ou temos que nos sujeitar a site como o arquivei,serpro ou o fsist ou temos que continuar com esses erros da sefaz ? qual opnião de voces ? qual solução encontraram
  22. estou fazendo a integração de publicação de produtos no mercado livre e tenho que importar as categorias de produtos, o ML disponibiliza uma API para baixar o json e fazer a importação no sistema ERP Ja tentei de tudo para fazer essa importação e não estou conseguindo, não sei se o problema é por causa do tamanho do json, cerca de 40.000 categorias ou outro motivo que não encontrei o Json esta correto pq ja fiz a validação dele e esta tudo correto. Segue o arquivo zipado do json com todas as categorias, se alguem puder me ajudar fico muito agradecido Segue o codigo que estou usando para fazer a importação dele JsonPrincipal : TlkJSONobject; JsonPrincipal := TlkJSON.ParseText(TEncoding.ASCII.GetString(TEncoding.ASCII.GetBytes(Memo1.Lines.Text))) as TlkJSONobject; Ele passa no JsonPrincipal normal, so que se for ver se tem algum registro usando o JsonPrincipal .count ele da erro de access violation, parece que não foi criado a JsonPrincipal categoria.zip
  23. alguem do grupo ja fez publicação de produtos no mercado livre ? estou terminando a integração e parei na categoria que tenho que informar. Se alguem ja fez e puder dar um help fico grato Fernando Rodrigo
  24. boa noite pessoal, olhando o arquivo csv em anexo, ele esta incompleto e irão ter alguns problemas fazendo a importação dessa forma. Uma compra parcelado em 10x o arquivo exportado, so contem 1 registro em vez de 10 parcelas, então nesse caso como irão fazer a baixa da duplicata atribuida a essa venda parcelada. Exemplo Comprei 1.000,00 / 4 parcelas, cada parcela de 250,00, quando a cielo exporta nessa padrão acima, ele irá exportar somente 1 registro de 1.000,00 e não um registro para cada parcela e nesse caso quando for fazer a baixa do título gerado pela compra no cartão, como irão fazer ja que no csv esta lançado 1.000,00 Existe outro arquivo que eles exportam que vem completo, seque anexo o da Cielo 20200103_CIELO04_1098553761_68432784
×
×
  • 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.