Mario Inacio
Membros Pro-
Total de ítens
361 -
Registro em
-
Última visita
-
Days Won
1
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Tudo que Mario Inacio postou
-
Negativação SERASA - Banco do Brasil CNAB 240
Mario Inacio replied to Wanderson Medeiros's tópico in ACBrBoleto
Bom dia. Com essa alteração, mesmo os boletos que "Não" eram pra negativar, estavam emitindo com a mensagem de Negativação. Correção em anexo. ACBrBoleto.pas -
LGPD - Lei Geral de Proteção de Dados Pessoais
Mario Inacio replied to esbaptista's tópico in Dúvidas não relacionadas ao ACBr
Bom dia. Infelizmente temos mais isso pra ver em nosso dia a dia. Estamos lendo muito também, mas de fato, o que vimos, foram muitas cópia de artigos que falam a mesma coisa, e nada ainda de como implementar isso em nossos ERP´s. É um assunto novo e nem mesmo foi criada a Agência que vai regulamentar a forma de verificação e comprovação da aplicação dessa Lei. Temos que trocar experiências para evoluir no assunto. -
Negativação SERASA - Banco do Brasil CNAB 240
Mario Inacio replied to Wanderson Medeiros's tópico in ACBrBoleto
Bom dia. Alterei a Unit ACBrBoleto para exibir a mensagem de negativação caso ela seja diferente de "cnNenhum". Função: AdicionarMensagensPadroes Linha: 2049 Segue fonte para análise ACBrBoleto.pas -
Negativação SERASA - Banco do Brasil CNAB 240
Mario Inacio replied to Wanderson Medeiros's tópico in ACBrBoleto
Boa tarde. Diretamente no site da Febraban em https://portal.febraban.org.br/pagina/3053/33/pt-br/layout-240 E nesse link, as particularidades do Banco do Brasil. https://www.bb.com.br/docs/pub/emp/empl/dwn/CNAB240SegPQRSTY.pdf -
Negativação SERASA - Banco do Brasil CNAB 240
Mario Inacio replied to Wanderson Medeiros's tópico in ACBrBoleto
Boa tarde. Pelo que notei, as alterações acima referentes a Negativação não contemplaram a geração do arquivo, e sim a impressão. Fiz a mudança no fonte para gerar no Banco do Brasil CNAB240, como seguem anexo. ACBrBancoBrasil.pas -
Olá Juliana. Estou me referindo a retorno no CNAB 240 e não possui essa informação de carteira nessas posições, como segue o arquivo de retorno em anexo. IEDCBR4020605201935631.ret
-
Bom dia Juliana. Mas no header de retorno não há informação de carteira.
-
Boa tarde. Notei que para um cliente que configurou como carteira 11, também não está entrando no IF da primeira imagem, a solução foi alterar conforme abaixo:
-
Boa tarde. Meu cliente emite boleto BB na carteira 17. Para retornar o nosso número gerado a função abaixo esta analisando e retornando 5 digitos: Já no retorno, ele não está entrando no mesmo lugar, pois quando atribui a Carteira na leitura, está atribuindo apenas o '7, que está na posição 58': Arquivo de retorno para teste. IEDCBR4020605201935631.ret
-
Bom dia. Não sei ao certo o que mudaram na validação do Sicoob, mas tive que alterar novamente o ACBrBancoBancoob.pas. O código (linha 896) estava assim, enviando a DataDesconto vazia caso não houvesse informação de desconto: {Descontos} if (ValorDesconto > 0) then begin if(DataDesconto > 0) then ADataDesconto := FormatDateTime('ddmmyyyy', DataDesconto) else ADataDesconto := PadLeft('', 8, '0'); end else ADataDesconto := PadLeft('', 8, '0'); Dessa forma, estava rejeitando, então apenas alterei pra gerar zeros caso não haja desconto: {Descontos} if (ValorDesconto > 0) then begin if(DataDesconto > 0) then ADataDesconto := FormatDateTime('ddmmyyyy', DataDesconto) else ADataDesconto := PadLeft('0', 8, '0'); // aqui end else ADataDesconto := PadLeft('0', 8, '0'); //aqui Segue o novo arquivo em anexo. Abraços ACBrBancoBancoob.pas
-
Boa tarde. Assim como fez wadcompany, estou anexando uma alteração que fiz na unit ACBrBancoBancoob pois a mesma não estava gerando no arquivo de remessa a data juros mora, posição 119 a 126, do bloco Registro Detalhe "P", mesmo informando nas propriedades do componente. Comentei o trecho que estava preenchendo a data como 00000000, na linha 873 até a 879, informado abaixo a variável ADataMoraJuros formatada e obrigatória conforme norma do Manual, também em anexo. Peço que algum moderador avalie e se for o caso suba pra todos no SVN, pois com algumas mudanças no validador do SICOOB sem esta informação não valida o arquivo de remessa 240, e após a referida mudança, validou corretamente. Fico no aguardo e agradeço a atenção. ACBrBancoBancoob.pas Layouts_para_troca_de_informações - cooperativas - Cobrança Bancária.xls
-
Agrupamento de Totalizador no Bloco X com novos campos (ValorCancelamento...)
Mario Inacio replied to dalpiaze's tópico in PAF-ECF
Boa tarde. Vocês conseguiram transmitir com o ValorCancelamento no campo apropriado? Se sim, como esse valor impactou no total parcial? Se tiver um exemplo ajuda. Simplesmente um descaso da SEF, pois estou desde o dia 21/09 esperando e questionando e não respondem. Se transmito conforme a primeira imagem retorna: Erro 3012: O valor da venda bruta diária deve ser a soma dos valores líquidos + cancelamentos + descontos. Venda bruta diária: R$ 200952. Soma dos valores: R$ 2015,27 Se transmito conforme a segunda, retorna: Erro 3011: O valor do totalizador parcial F1 deve ser a soma dos valores líquidos dos produtos/serviços -
Integração com WebService da CIDASC
Mario Inacio replied to Marina Benedetti Preto's tópico in Dúvidas Gerais sobre o ACBr
Olá Marina, Podia me passar informações de como transmitir esses arquivos a CIDASC, bem como montar o XML, pois não encontro informações sobre isso? -
Boa tarde Gustavo. Você está conseguindo enviar arquivos de Redução que contenham Cancelamentos? Está transmitindo até a alguns dias atrás, depois começou a recusar, em contato com o Bruno Nogueira, ele me passou que deveria retirar o "Can-T" como Totalizador Parcial, e incluir esse valor cancelamento no campo "ValorCancelamento". Desde então, não consigo mais transmitir, mudando esse valor e somando-o ao TotalizadorParcial. Peço ajuda a SEF mas somente me mandam manuais e não esclarecem porque tal rejeição. Já passou por isso? E caso esteja conseguindo transmitir, pode me enviar um XML pra comparar com o meu?
-
Vou enviando os próximos. Os que estão na condição de "aguardando", consulto sempre pra ver se mudou o status.
-
Estou deixando como pendente e consulta diariamente, no meu caso, não chegou a ficar no limite permitido de pendências.
-
Olá Joao. Essa demora é do WS, que vive em manutenção. Tem que ficar consultando, pois ele ainda não tem um ambiente estável. Testei aqui com apenas um produto e também trava. Está travando nesse trecho: XmlAss := FSSLXmlSignClass.Assinar( ConteudoXML, docElement, infElement, SignatureNode, SelectionNamespaces, IdSignature, IdAttr); ConteudoXML - Está chegando conteúdo do XML docElement - Está chegando 'Estoque' infElement - Está chegando 'Mensagem' Os demais parâmetros estão chegando vazios.
-
Boa tarde. Estou assinando pelo componente, assim como faço com as reduções. https://drive.google.com/open?id=1ZB6_juPIf2ssxjye88PMOH3VsFkJJ8Tz
-
Bom dia. Alguém me ajudar?
-
Boa tarde. O Bloco X está funcionando normalmente num cliente quanto a Reducoes. Mas ao fazer o arquivo de Estoque, travou quando foi para assinar o arquivo. Deixei mais de uma hora e não retornou. O arquivo tem 23MB. Alguém já passou por esse problema? Segue o arquivo em anexo pra quem queira testar. Fisco - Estoque Mensal - 31072018.rar
-
Bom dia. O componente ACBRBlocoX não funciona com certificados A3 ? Estou tentando transmitir num cliente e me retorna "Cartão não pode ser acessado porque o PIN errado foi apresentado"
-
Olá Jefferson. HTTP 500 é o servidor fora do ar. Acontece com frequência, tente mais tarde. A compactação faço pelo componente citado acima.
-
Seguem os códigos: function ValidarArquivo: Boolean; begin Result := True; if tArqXml.Text = '' then begin MessageBox('Erro! Arquivo Vazio'); Result := False; end; if not XmlEstaAssinado(tArqXml.Text) then begin MessageBox('Erro! Arquivo sem assinatura'); Result := False; end; end; function XML_Validar: boolean; begin Result := False; if not ValidarArquivo then Exit; WSValidar := trBlocoX.WebServices.ValidarBlocoX; WSValidar.XML := tArqXml.Text ; WSValidar.ValidarPafEcfEEcf := False; if WSValidar.Executar then Result := True else wrequest(WSValidar.RetWS); end; function XML_Transmitir: boolean; var FileStream: TMemoryStream; begin Result := False; if not ValidarArquivo then Exit; try FileStream := TMemoryStream.Create; FileStream.LoadFromFile(PastaGrav+ArqZip); WSEnviar := trBlocoX.WebServices.EnviarBlocoX; WSEnviar.XML := tArqXml.Text; WSEnviar.XMLZipado := TransfBase64.EncodeStream(FileStream,FileStream.Size); if WSEnviar.Executar then begin Recibo:= wSEnviar.Recibo; if Pos('Não gerado',Recibo) > 0 then begin MessageBox('Erro ao enviar para WebService do Sefaz!'+#13+#13+ WSEnviar.RetWS); end else begin Result := True; XML_GravaRecibo(1); SalvaStringArquivo(WSEnviar.RetWs, fMenu.PastaApl+'PAF-ECF\'+ iif(cds1.fieldbyname('codigo').asstring='REDUCAO', 'Recibos dos Arquivos com Informações da Reducao Z do PAF-ECF\', 'Recibos dos Arquivos com Informações do Estoque Mensal do Estabelecimento\')+ Recibo+'.xml'); Sleep(3000); end; end else MessageBox('Erro ao enviar para WebService do Sefaz!') finally FileStream.Free; DeleteFile(PastaGrav+ArqZip); end; end; procedure XML_ConsultaRecibo; begin WSConsultar := trBlocoX.WebServices.ConsultarBlocoX; WSConsultar.Recibo := Recibo; WSConsultar.Executar ; if wsconsultar.SituacaoProcCod = 1 then begin MessageBox('Arquivo com informações '+ iif(cds1.fieldbyname('codigo').asstring='REDUCAO', 'da Redução Z do PAF-ECF ','do Estoque Mensal do Estabelecimento ')+ 'transmitido com sucesso!'); XML_GravaRecibo(9); end else MessageBox('Erro ao enviar para WebService do Sefaz!'+#13+#13+ wsconsultar.RetWS); end; Usei o componente IdEncoderMIME da paleta Indy pra converter para Base64. Nenhuma função que peguei na internet ou no fórum funcionou. Qualquer coisa, pergunta ai.
-
Bom dia. Você deverá transformar o arquivo ZIP em base64