Ir para conteúdo
  • Cadastre-se

Fernando Rodrigo

Membros
  • Total de ítens

    483
  • Registro em

  • Última visita

  • Days Won

    3

Tudo que Fernando Rodrigo postou

  1. 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
  2. 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;
  3. 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
  4. 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;
  5. não deu certo, ja alterei e coloquei todas as opções e nenhum passa.
  6. 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;
  7. 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;
  8. 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
  9. 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;
  10. @Daniel Simoesdeu certo, fico muito grato pela sua ajuda, e tenha um excelente final de semana.
  11. 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
  12. 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
  13. 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
  14. 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
  15. 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
  16. 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
  17. 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
  18. eu uso ele no server e funciona normal, veja a conexão que vc esta fazendo se não tem nenhuma configuração incorreta
  19. não tem token, e so passar o cnpj no final conforme abaixo e ele retorna o json https://www.receitaws.com.br/v1/cnpj/04005416000153
  20. o posto é antigo mas estou tendo esse mesmo problema, se for fora do windows server funciona perfeito o comando acima, mas se for dentro do windows server vc so tem um IP de conexão, dai vc não consegue pelo select saber quantos estão conectados. qual seria a sugestão para quem usa terminal server ?
  21. isso mesmo, no FastReport eu mandei uma unit para ela subir para o repositório com essas modificações, agora no FortesReport não tem e uso ele para fazer alguns relatorios
  22. isso mesmo Bruno, a senha não é obrigatório no componente, as que recebo de fatura do cartão são os 4 primeiros digitos do CPF, isso evita muito fraude de boleto
×
×
  • 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...