Ir para conteúdo
  • Cadastre-se

Antonio Gomes

Membros
  • Total de ítens

    684
  • Registro em

  • Última visita

  • Days Won

    1

Tudo que Antonio Gomes postou

  1. Boa tarde Mano, acabei de testar, top, resolvido. Obs: aquela herança ficou linda. Grato.
  2. sim, mas lá que vi que tem como intermediar servico, ate entao, de prefeitura, so sei o feijao com arroz mesmo. Nao com os 3 atores, prestador, tomador e intermediador... fiz uma analogia.
  3. Cara, acho que vou desistir de entender os manuais... olha lá, 1 e 2, tomador e intermediário. https://abrasf.org.br/biblioteca/arquivos-publicos/nfs-e/versao-2-01
  4. eu sou mei, e parece que está meio que atendendo os numeros de lá, mas, devemos pensar no todo né... complicado, esses projetos nada falam com nada.
  5. @Juliomar Marchettie esse bug, tem solução mano?
  6. @Italo Giurizzato Junior Anterior NFS-e, atender abrasf2: function ResponsavelRetencaoToStr(const t: TnfseResponsavelRetencao): String; begin result := EnumeradoToStr(t, ['1', '2'], [ptTomador, rtPrestador]); end; function StrToResponsavelRetencao(out ok: boolean; const s: String): TnfseResponsavelRetencao; begin result := StrToEnumerado(ok, s, ['1', '2', ''], [ptTomador, rtPrestador, rtPrestador]); end; ----------------------------------------------------------------- Na NFS-eX: function TACBrNFSeXProvider.ResponsavelRetencaoToStr( const t: TnfseResponsavelRetencao): string; begin Result := EnumeradoToStr(t, ['1', '', '2', ''], [rtTomador, rtPrestador, rtIntermediario, rtNenhum]); end; function TACBrNFSeXProvider.StrToResponsavelRetencao(out ok: boolean; const s: string): TnfseResponsavelRetencao; begin Result := StrToEnumerado(ok, s, ['1', '', '2', ''], [rtTomador, rtPrestador, rtIntermediario, rtNenhum]); end; function TACBrNFSeXProvider.ResponsavelRetencaoDescricao( const t: TnfseResponsavelRetencao): String; begin case t of rtTomador : Result := '1 - Tomador'; rtIntermediario : Result := '2 - Intermediário'; rtPrestador : Result := '3 - Prestador'; else Result := ''; end; end; Como prestador, anterior ia 2 agora está ficando vazio no xml. Tem como corrigir, ou eu estender essa função, para atender ao provedor, está dando problema no schema: X800-Erro de Validação: --> 1824 - Element '{http://nfe.uba.mg.gov.br/schema/nfse_v201.xsd}ResponsavelRetencao': '' is not a valid value of the atomic type '{http://nfe.uba.mg.gov.br/schema/nfse_v201.xsd}tsResponsavelRetencao'. no schema: <xsd:simpleType name="tsResponsavelRetencao"> <xsd:restriction base="xsd:byte"> <xsd:pattern value="1|2" /> </xsd:restriction> </xsd:simpleType>
  7. Antonio Gomes

    NotasFiscais.New

    @Italo Giurizzato Junior Teria como analisar: unit: ACBrNFSeXClass: Erro de acesso violado, classe declarada errada. Inclusive, ta toda incorreta a declaração de TtotCIBSSel tá tudo com F antes. Create e Destroy
  8. voce pode anexar seu modelo no sistema. Eu mesmo tenho solucao propria, uso no modo carne, 3 por paginas, nao do mesmo.
  9. Isso já está ok não? Todos bancos estão mandando esse aviso, pelo teste meu, está ok já
  10. Não é apenas visual? Tem o manual da caixa? Posta aqui.
  11. Então, como disse antes, o gerente daqui da cidade, agência 1558, passou para o cliente meu, após a remessa ser recusada, detalhe importante, recusa sem mostrar o erro. Só o erro 03, entrada nao confirmada. O que fiz, foi pegar a remessa anterior, antes de eu ter subido versão, e detectado diferença no registro tipo 7. Cliente gerou, e enviou, resposta ok do processamento. Logo, esse registro tipo 7, nao presta mais.
  12. Então, li, re-li, e não achei no manual, nada relacionado com versão, assim como tem em outro banco, onde, a numeração, definia os dados enviados. Por hora, o gerente do cliente que mandou isso. Agencia 1558. Mas, se você puxar no site do Itaú, vem esse manual de 2017 tambem. Sabe? Eu penso assim, nem eles dão conta do balaio de gatos que eles mesmos arrumam.
  13. Opa, @Daniel InfoCotidiano Solicitação de revisão desse commit, ao adicionar a linha segmento 7, baseado em um manual da 2017, nos dias atuais, gerente mandou o manual, de 2023, essas linhas nao existem mais. Logo, vimos isso, após recusa da entrada da remessa no site do itaú. A carteira em questão, é a 109 2017, como era: 2023, como está: Segue manual em anexo Como podemos convergir isso, 2017 com 2023 ? Segue manuais, nao deixou vincular aqui na msg, maior que 2 mb Link 2023: https://mega.nz/file/9RdzFSoJ#AaOozQNvygWTZ8zFXlxCHCaSN6PaBp4irg0ptOrXRvs Link 2017: https://mega.nz/file/AVUDAYwK#kPvhqSvTCLeP_M5LOuWLLa6dRmTZd8Ned62lGHZ4UZo Linhas com o problema:
  14. fala comigo, rodando até hoje com unidac?
  15. está certo, alguns casos, aquele negocio das 13 hs, se o cliente pagar, eles colocam no mesmo dia disponível já para ser quitado no cliente.
  16. em produção, no cliente mesmo, mas, vou testar de novo, recordo de fato, que o pix, já na conta, acontecia do titulo nao vir com aquela situacao = PAGO.
  17. Interessante, usei isso ontem, com fontes atualizados no cliente, não tinha dado a falha. Testou ai francisco ?
  18. Sim, vc pode personalizar, até colocar salvar no cliente, o modelo do boleto, eu tenho dessa forma, o cara quer algo diferente, edito, salvo no banco e vida que segue. Abstraia o código: procedure TDMBoleto.ConfigurarFastReport; var ST: TMemoryStream; begin frxReport1.Clear; frxReport1.Report.Clear; frxDBReceber.RangeBegin := rbFirst; frxDBReceber.RangeEnd := reLast; frxReport1.EnabledDataSets.Clear; frxReport1.DataSets.Clear; frxReport1.DataSets.Add(frxDBReceber); frxReport1.EnabledDataSets.Add(frxDBReceber); ST := TMemoryStream.Create; try if FDSCfgMod.FieldByName('ARQUIVO_CFGBLMOD').IsNull then // Quando for atualizado, em Novembro de 2018, esse campo vai ficar vazio na tabela begin case FDSCfgMod.FieldByName('LAYOUT_CFGBLMOD').AsInteger of 1: begin TFuncoesSistemaOperacional.LerRecursoDLL('BOLETO_1PP_PIX', sNomeDaDLL, ST); end; 2: TFuncoesSistemaOperacional.LerRecursoDLL('BOLETO_2PP', sNomeDaDLL, ST); 3: TFuncoesSistemaOperacional.LerRecursoDLL('BOLETO_3PP_CARNE', sNomeDaDLL, ST); else // 3 raise Exception.Create('Tipo de Documento: Boleto ou carnê não selecionado na configuração.'); end; end else TBlobField(FDSCfgMod.FieldByName('ARQUIVO_CFGBLMOD')).SaveToStream(ST); ST.Position := 0; frxReport1.LoadFromStream(ST); finally FreeAndNil(ST); end; // desnecessário, mantido pois tem modelo salvo no cliente, e gera erro Var S: string; with frxReport1 do begin S := 'procedure INICIALIZA()'; if Script.FindLocal(S) = nil then Script.AddMethod(S, CallMethod); end; end; OnSaveReport, do Designer: function TDMBoleto.frxDesignerBoleto_SaveReport(Report: TfrxReport; SaveAs: Boolean): Boolean; var Stream: TStream; begin Stream := TMemoryStream.Create; try Report.SaveToStream(Stream); Stream.Position := 0; IBQryCfgMod.Edit; TBlobField(IBQryCfgMod.FieldByName('ARQUIVO_CFGBLMOD')).LoadFromStream(Stream); IBQryCfgMod.Post; finally Stream.Free; end; Result := True; end;
  19. Cara, eu criei meu próprio fr3, logo, bordo o que for preciso nele. Não sei se ajudei, ou botei mais dúvida ainda.
  20. Mas voce nao implementou ttimer? ou delay?
  21. inter: Criar app, baixar certificados, colocar certo os scopes, clientid Sicoob: Cadastrar no ambiente desenvolver, pegar o clientid, e fazer a mandinga do certificado ecnpj do cliente... Essa benção que refiro, nao basta querer do lado de cá, se lá (banco) nao está ativo.
  22. qual banco é? geralmente, o boleto vem a url pix já, se o banco permitir, pq eles precisam dar a benção (banco), inter mesmo, vem ja pronto, a gente so pega e imprime, e esquece a remessa, mas, se for um banco com remessa, coloca qual banco é, até então, não tinha visto ainda, remessa ter pix, já que é uma coisa dinâmica com o banco...
  23. Cara, eu fiz, e gravei tudo no meu banco, e eu mesmo faço a impressão, mas, deve ter no modelo do acbr, o qrcode já, lembre-se de gravar os dados abaixo: if ABoleto.ListaRetornoWeb[I].DadosRet.IDBoleto.IDBoleto <> '' then ABoletoApi.CodigoSolicitacao := ABoleto.ListaRetornoWeb[I].DadosRet.IDBoleto.IDBoleto; ABoletoApi.NossoNumeroFormatado := ABoleto.ListaRetornoWeb[I].DadosRet.IDBoleto.NossoNum; ABoletoApi.CodigoBarras := ABoleto.ListaRetornoWeb[I].DadosRet.IDBoleto.CodBarras; ABoletoApi.LinhaDigitavel := ABoleto.ListaRetornoWeb[I].DadosRet.IDBoleto.LinhaDig; ABoletoApi.TxPIX := ABoleto.ListaRetornoWeb[I].DadosRet.TituloRet.TxId; ABoletoApi.UrlPIX := ABoleto.ListaRetornoWeb[I].DadosRet.TituloRet.EMV; // inter está vindo aqui if ABoletoApi.UrlPIX = '' then ABoletoApi.UrlPIX := ABoleto.ListaRetornoWeb[I].DadosRet.TituloRet.UrlPIX; if ABoletoApi.CodigoSolicitacao = '' then ABoletoApi.CodigoSolicitacao := ABoleto.ListaRetornoWeb[I].DadosRet.TituloRet.NossoNumeroCorrespondente; e na hora de imprimir, atribui no titulo, se tiver pix - gravado no seu receber a url, claro Titulo.QrCode.emv := .... procure por TACBrBoletoPIXQRCode = class private Femv: String; Furl: String; FtxId: String; procedure Setemv(const Value: String); procedure SettxId(const Value: String); procedure Seturl(const Value: String); public constructor Create(); destructor Destroy; override; property url : String read Furl write Seturl; property txId : String read FtxId write SettxId; property emv : String read Femv write Setemv; procedure PIXQRCodeDinamico(const AURL, ATXID: String; ATitulo : TACBrTitulo); end;
  24. Gostaria que conferissem por favor, sobre a falta da declaração {$I ACBr_jedi.inc} no topo da unit ACBrDFeXsLibXml2, onde a mesma, faz uso da chamada de uma diretiva, que está dentro dessa .inc Diretiva: DELPHILANGUAGE Isso ocorre o erro na validação da NF-e, onde fica aparecendo apenas o número do erro 1824, de erro de campo de inscricao estadual no caso. Erro que retorna: "Falha na validação dos dados da nota: 1232 --> 1824" função: function TDFeSSLXmlSignLibXml2.TentaPegarMensagemErroDetalhada(const MsgErroAtual: string): String; var prtUltimoErroXml: xmlErrorPtr; begin Result := ''; prtUltimoErroXml := xmlGetLastError(); if prtUltimoErroXml = nil then begin Result := MsgErroAtual; Exit; end; Result := MsgErroAtual + ' --> ' + IntToStr(prtUltimoErroXml^.code); {$IFDEF DELPHILANGUAGE} {$IFDEF WINDOWS} if (prtUltimoErroXml^.message <> nil) then Result := Result + ' - ' + prtUltimoErroXml^.message; {$ENDIF} {$ELSE} if (prtUltimoErroXml^.message <> nil) then Result := Result + ' - ' + prtUltimoErroXml^.message; {$ENDIF} end; Inclusive, está até estranho, o código é igual.
×
×
  • 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...