
FabioTellini
Membros-
Total de ítens
71 -
Registro em
-
Última visita
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Tudo que FabioTellini postou
-
DANFSE ISSSaoPaulo não está sendo descontado as retenções do valor líquido.
um tópico no fórum postou FabioTellini ACBrNFSe
Boa tarde. Na impressão da DANFSE, unit ACBrNFSeXDANFSeFR, procedure CarregaServicos, o dataset está recebendo os valores de NFSe.Servico.Valores, até essa parte do código o campo FieldByName('ValorLiquidoNfse').AsFloat está sendo considerado as retenções, mas na sequência tem o seguinte trecho: with ANFSe.ValoresNfse do begin if ValorIss > 0 then begin FieldByName('ValorServicos').AsFloat := BaseCalculo; FieldByName('ValorIss').AsFloat := ValorIss; FieldByName('BaseCalculo').AsFloat := BaseCalculo; FieldByName('Aliquota').AsFloat := Aliquota; if ValorLiquidoNfse = 0 then ValorLiquidoNfse:= BaseCalculo; FieldByName('ValorLiquidoNfse').AsFloat := ValorLiquidoNfse; end; end; ANFSe.ValoresNfse.ValorLiquidoNfse, na leitura do xml não foi descontado os valores das retenções da forma que foi feito com NFSe.Servico.Valores e com isso o valor liquido está sendo impresso sem descontar as retenções. Analisando a unit ISSSaoPaulo.LerXml, percebi que os valores de NFS.Servico.Valores recebem os valores de NFSe.ValoresNfse. Fiquei na dúvida se teria a necessidade de ter o trecho do código citado acima. (Obs: só analisei a leitura do xml do provedor ISSSaoPaulo, não sei se esse trecho do código é por causa de algum outro provedor) Ou se na unit ISSSaoPaulo.LerXml, na leitura do xml a NFSe.ValoresNfse.ValorLiquidoNfse já não poderia ter os valores das retenções descontadas, da forma que está sendo feito com a NFSe.Servico.Valores.ValorLiquidoNfse. with NFSe.ValoresNfse do begin ValorLiquidoNfse := ObterConteudo(AuxNode.Childrens.FindAnyNs('ValorServicos'), tcDe2); BaseCalculo := ObterConteudo(AuxNode.Childrens.FindAnyNs('ValorServicos'), tcDe2); Aliquota := ObterConteudo(AuxNode.Childrens.FindAnyNs('AliquotaServicos'), tcDe2); ValorIss := ObterConteudo(AuxNode.Childrens.FindAnyNs('ValorISS'), tcDe2); Aliquota := (NFSe.ValoresNfse.Aliquota * 100); end; aValor := ObterConteudo(AuxNode.Childrens.FindAnyNs('CodigoServico'), tcStr); SetxItemListaServico(aValor); NFSe.Servico.Discriminacao := ObterConteudo(AuxNode.Childrens.FindAnyNs('Discriminacao'), tcStr); aValor := ObterConteudo(AuxNode.Childrens.FindAnyNs('ISSRetido'), tcStr); with NFSe.Servico.Valores do begin ValorServicos := NFSe.ValoresNfse.ValorLiquidoNfse; BaseCalculo := NFSe.ValoresNfse.BaseCalculo; Aliquota := NFSe.ValoresNfse.Aliquota; ValorIss := NFSe.ValoresNfse.ValorIss; ValorPis := ObterConteudo(AuxNode.Childrens.FindAnyNs('ValorPIS'), tcDe2); ValorCofins := ObterConteudo(AuxNode.Childrens.FindAnyNs('ValorCOFINS'), tcDe2); ValorInss := ObterConteudo(AuxNode.Childrens.FindAnyNs('ValorINSS'), tcDe2); ValorIr := ObterConteudo(AuxNode.Childrens.FindAnyNs('ValorIR'), tcDe2); ValorCsll := ObterConteudo(AuxNode.Childrens.FindAnyNs('ValorCSLL'), tcDe2); if aValor = 'false' then IssRetido := stNormal else IssRetido := stRetencao; ValorLiquidoNfse := ValorServicos - (ValorPis + ValorCofins + ValorInss + ValorIr + ValorCsll + ValorDeducoes + DescontoCondicionado + DescontoIncondicionado + ValorIssRetido); end; Obrigado. -
Troca de provedor prefeitura de Catanduva-SP
FabioTellini replied to FabioTellini's tópico in ACBrNFSe
obrigado. -
Troca de provedor prefeitura de Catanduva-SP
FabioTellini replied to FabioTellini's tópico in ACBrNFSe
Usei certificado A1 também. estou usando essas configurações FACBrNFSe.Configuracoes.Geral.SSLLib := libWinCrypt; FACBrNFSe.Configuracoes.Geral.SSLCryptLib := cryWinCrypt; FACBrNFSe.Configuracoes.Geral.SSLHttpLib := httpWinHttp; FACBrNFSe.Configuracoes.Geral.SSLXmlSignLib := xsLibXml2; FACBrNFSe.SSL.SSLType := TSSLType(LT_TLSv1_2); -
Troca de provedor prefeitura de Catanduva-SP
FabioTellini replied to FabioTellini's tópico in ACBrNFSe
Boa tarde. Meus testes foram todos em ambiente de produção, não tive nenhum problema nas transmissões. -
Boa tarde. Prefeitura de Catanduva-SP mudou para Fiorilli conforme comunicado abaixo: http://www.catanduva.sp.gov.br/2022/04/07/comunicado-financas/ Ajustei os arquivo ACBrNFSeXServicos.ini, fiz o teste e as notas foram transmitidas. Segue arquivo para análise. ACBrNFSeXServicos.ini
-
Retenção não estão sendo impressas na DANFSe (Provedor ISSSaoPaulo)
FabioTellini replied to FabioTellini's tópico in ACBrNFSe
Obrigado. -
Retenção não estão sendo impressas na DANFSe (Provedor ISSSaoPaulo)
um tópico no fórum postou FabioTellini ACBrNFSe
Bom dia. Os valores das retenções não estão sendo impressos na DANFSe. Na unit ISSSaoPaulo.LerXML, rotina LerXmlNfse o parâmetro que estava sendo passado para a função AuxNode.Childrens.FindAnyNs estavam com letras minusculas(ValorPis, ValorCofins, ValorInss, ValorIr e ValorCsll). Dessa forma no "if Node.LocalName <> Name then continue;" não encontrava esses campos retornando nil. Alteração feita somente nos parâmetros que estão sendo passados da mesma forma que estão no xml. ValorPis := ObterConteudo(AuxNode.Childrens.FindAnyNs('ValorPIS'), tcDe2); ValorCofins := ObterConteudo(AuxNode.Childrens.FindAnyNs('ValorCOFINS'), tcDe2); ValorInss := ObterConteudo(AuxNode.Childrens.FindAnyNs('ValorINSS'), tcDe2); ValorIr := ObterConteudo(AuxNode.Childrens.FindAnyNs('ValorIR'), tcDe2); ValorCsll := ObterConteudo(AuxNode.Childrens.FindAnyNs('ValorCSLL'), tcDe2); Arquivo em anexo para validação. ISSSaoPaulo.LerXml.pas -
ItemListaServico 17.07 is not a valid value of the atomic type
FabioTellini replied to FabioTellini's tópico in ACBrNFSe
Boa tarde. Obrigado. -
ItemListaServico 17.07 is not a valid value of the atomic type
um tópico no fórum postou FabioTellini ACBrNFSe
Bom dia. Estou tendo problema na transmissão de uma nota na cidade de Bauru. ItemListaServico 17.07 is not a valid value of the atomic type. Olhando o arquivo Exemplos\ACBrDFe\Schemas\NFSe\SilTecnologia\2.03\nfse.xsd percebi que serviço não consta no xsd. No site da prefeitura de Bauru existe o serviço (https://www2.bauru.sp.gov.br/arquivos/arquivos_site/sec_financas/tabela_iss.pdf). Como consta na lista de serviço da cidade, adicionei o codigo no schema para testar e a nota foi transmitida. Acham que o serviço pode ser adicionado no schema no svn, para as próximas atualizações ? Segue em anexo o xsd alterado. nfse.xsd -
Na guia da GNRE o campo convênio não estava sendo impresso. Olhando os fontes do ACBr, percebi que na function LerXML da unit ACBrGNREGuiasRetorno.pas a property GNRERetorno.Convenio não estava recebendo valor. Adicionei essa linha GNRERetorno.Convenio := Leitor.rCampo(tcStr, 'convenio') e deu certo, o convênio passou a ser impresso na guia. Segue arquivo em anexo para validação. ACBrGNREGuiasRetorno.pas
-
Bom dia. Fiz mais um ajuste no arquivo ACBrBoleto.pas, nos meus testes a chave da NFe foi adicionada no arquivo. Na minha aplicação eu configuro o componente da seguinte forma: - ACBrBoleto.LayoutRemessa := c444; - Titulo.ChaveNFe := '35000000000000000001111111111111'; Segue arquivo com alterações.ACBrBoleto.pas
-
Estou pensando em um possível problema nessa alteração. Vou fazer um novo teste e escrevo aqui.
-
Para o banco Bradesco uso LayoutRemessa = c400, dessa forma o arquivo só vai ter 400 posições.
-
Boa tarde. Alguns clientes estão tendo a necessidade de enviar a chave da nfe no arquivo de remessa para o banco. Banco ONIX http://onixcredit.com.br/tutoriais/TUTORIAL_PARA_IMPORTACAO_CNAB_ONIX.pdf Banco SOFISA https://tdn.totvs.com/pages/releaseview.action?pageId=505758869 No caso do banco ONIX, eles usam o padrão do banco Bradesco CNAB400 adicionando 44 posições que será usado para envio da chave da NFe, criando um "CNAB444". Fiz pequenas alterações: * No arquivo ACBrBoleto.pas adicionei o tipo c444 (TACBrLayoutRemessa = (c400, c240, c444)) e adicionei a propriedade ChaveNFE na classe TACBrTitulo. * No arquivo ACBrBancoBradesco.pas, rotina GerarRegistroTransacao400 adicionei a validação do layout (if LayoutRemessa = c444 then wLinha := wLinha + Copy(ChaveNFe,1,44)) para adicionar a chave da nfe no arquivo. Segue arquivos para análise. ACBrBoleto.pas ACBrBancoBradesco.pas
-
Na impressão da GNRE 2.0 não estava somando o valor do FECP no total da guia.
um tópico no fórum postou FabioTellini ACBrGNRe
Boa tarde. Na impressão da GNRE 2.0 não estava somando o valor do FECP no total da guia. Na unit ACBrGNReGuiaRLRetrato.pas na rotina RLBand1BeforePrint foram alteradas as linhas abaixo. RLLabel28.Caption := FormatFloat('R$ ,0.00', FGNRe.ValorPrincipal + FGNRe.ValorFECP); RLLabel36.Caption := FormatFloat('R$ ,0.00',( FGNRe.ValorPrincipal + FGNRe.AtualizacaoMonetaria+ FGNRe.Juros + FGNRe.Multa + FGNRe.ValorFECP)); Na unit ACBrGNREGuiasRetorno, rotina LerXML foi adicionadas as linhas abaixo. if Leitor.rAtributo('tipo=', 'valor') = '12' then GNRERetorno.ValorFECP := Leitor.rCampo(tcDe2, 'valor'); Segue arquivos para validação. Obrigado. ACBrGNReGuiaRLRetrato.pas ACBrGNREGuiasRetorno.pas -
Erro ao enviar comandos para a impressora Sweda
FabioTellini replied to FabioTellini's tópico in ACBrSerial
Boa tarde. Fiz testes com Sweda ST120 e Bematech 2100. -
Erro ao enviar comandos para a impressora Sweda
FabioTellini replied to FabioTellini's tópico in ACBrSerial
Bom dia Juliomar. Fiz o teste com a SwedaSTX, mas ocorre a mesma situação. Tentei com outras velocidades de porta, mudar o timeout, mas sempre ocorre o erro de falha de envio de comando. ATIVAR - 19/09/17 08:18:24:860 - Modelo: SwedaSTX - Porta: COM1 - TimeOut: 3 Device: BAUD=9600 DATA=8 PARITY=N STOP=1 HANDSHAKE=DTR/DSR MAXBANDWIDTH=0 SENDBYTESCOUNT=0 SENDBYTESINTERVAL=0 -------------------------------------------------------------------------------- -- 19/09 08:18:26:860 RetornaInfoECF(I1) -- 19/09 08:18:27:517 TX -> [STX]+34|I1[ETX][141] -- 19/09 08:18:29:220 RX <- -- 19/09 08:18:29:220 ----------------- ERRO ----------------- Erro ao enviar comandos para a Impressora SwedaSTX ---------------------------------------- ECFTeste Trunk1, mesmo ambiente. -------------------------------------------------------------------------------- ATIVAR - 19/09/17 08:20:59:716 - Modelo: Sweda - Porta: COM1 - TimeOut: 1 Device: BAUD=9600 DATA=8 PARITY=N STOP=1 HANDSHAKE=DTR/DSR MAXBANDWIDTH=0 -------------------------------------------------------------------------------- -- 08:21:02:028 TX -> [ESC].271} 08:21:03:637 RX <- .+C00113108170285CN000000000052969090002002400000000678300000000000000000002000000003990000000000000000000000000279300170141I } -- 08:21:03:637 TX -> [ESC].27G} 08:21:05:169 RX <- .+C001G000000000005000500001.000000000005290126000000000000000000000000000000000000000000000000000000000000 } -- 08:21:05:169 TX -> [ESC].27H} 08:21:06:794 RX <- .+C001H00000000000000000001 01.00.01 00050024000017000018000141000000000285000000000000000200000000000529690900000000006783 } -- 08:21:06:794 Estado TX -> [ESC].28} 08:21:08:403 RX <- .+0001000CLEIT. X 13F000000000000000000000000!1909170821N 001NN000000000000000000000000SFNN0 } -- 08:21:08:403 Estado TX -> [ESC].28} 08:21:09:965 RX <- .+0001000CLEIT. X 13F000000000000000000000000!1909170821N 001NN000000000000000000000000SFNN0 } -
Boa tarde. Estou fazendo testes com ECF em um ambiente onde aplicação e banco de dados são remotos, mas está dando erro ao enviar comandos para impressora. Testes com o ECFTeste do Trunk1 funciona perfeitamente, com o ECFTeste Trunk2 retorna o erro "Erro ao enviar comandos para a impressora Sweda". Fiz testes com impressora Bematech, porém o erro foi o mesmo. Analisando o log, percebi que o comando é enviado para a impressora fiscal, mas não está tendo retorno. -------------------------------------------------------------------------------- ATIVAR - 18/09/17 17:27:54:140 - Modelo: Sweda - Porta: COM1 - TimeOut: 3 Device: BAUD=9600 DATA=8 PARITY=N STOP=1 HANDSHAKE=DTR/DSR MAXBANDWIDTH=0 SENDBYTESCOUNT=0 SENDBYTESINTERVAL=0 -------------------------------------------------------------------------------- -- 18/09 17:27:56:249 -- 18/09 17:27:56:733 TX -> [ESC].271} -- 18/09 17:28:13:655 RX <- -- 18/09 17:28:13:655 ----------------- ERRO ----------------- Erro ao enviar comandos para a Impressora Sweda ---------------------------------------- Outro teste que fiz foi a impressão da LeituraX, o comando é enviado e a leitura é impressa, mas o comando está sendo disparado 10 vezes, e está sendo impressas 10 leituraX. No log só registrou um envio de comando. -- 18/09 16:40:26:583 -- Ativando a porta: COM1 -- 18/09 16:40:28:552 LeituraX -- 18/09 16:40:29:052 TX -> [ESC].13N} -- 18/09 16:40:30:755 RX <- -- 18/09 16:40:30:755 ----------------- ERRO ----------------- Erro ao enviar comandos para a Impressora Sweda ---------------------------------------- No Trunk1 funciona todos os comandos.
-
Sim, estou usando aparelho de homologação. Vou tentar conseguir a série de um aparelho de algum cliente para fazer os testes. Obrigado.
-
Bom dia. Estou tentando usar o ACBrSATWS para fazer download dos CFes, mas tanto pelo meu aplicativo quanto pelo Demo ocorre o mesmo problema. Rejeição: Falha no Schema XML. Alguém sabe o que posso estar fazendo de errado ? Os parâmetros de entrada são: Serie do SAT 900003065 Data Inicial 01/08/2017 00:00:01 Data Final 31/08/2017 23:59:59 Chave de segurança a116qwer-fdsv-4548-rrrr-olkdfem25ce3 Obrigado.
-
Bom dia. Estou tentando usar o ACBrSATWS para fazer download dos CFes, mas tanto pelo meu aplicativo quanto pelo Demo ocorre o mesmo problema. Rejeição: Falha no Schema XML. Alguém sabe o que posso estar fazendo de errado ? Os parâmetros de entrada são: Serie do SAT 000020585 Data Inicial 01/08/2017 00:00:01 Data Final 31/08/2017 23:59:59 Chave de segurança a116qwer-fdsv-4548-rrrr-olkdfem25ce3 Obrigado.
-
Comecei a fazer alguns testes enviando comandos direto para a impressora da seguinte forma: Nesse primeiro teste não importa o valor que eu passava no espaçamento, nada mudava na impressão. Write(impressora,#$1B'@'); //Reseta Impressora Write(impressora,#$1B+'3d'); //Aumenta espaço entre linhas para 100 Write(impressora, ' LINHA 1'+sLineBreak); Write(impressora, ' LINHA 2'+sLineBreak); Write(impressora, ' LINHA 3'+sLineBreak); Write(impressora, ' LINHA 4'+sLineBreak); Já nesse segundo teste, da LINHA 1 até a LINHA 3 o espaçamento foi aplicado, já a LINHA 4 ficou próximo a LINHA 3. Veja que o comando para resetar a impressora está depois da LINHA 4. Write(impressora,#$1B+'3d'); Write(impressora, ' LINHA 1'+sLineBreak); Write(impressora, ' LINHA 2'+sLineBreak); Write(impressora, ' LINHA 3'+sLineBreak); Write(impressora, ' LINHA 4'+sLineBreak); Write(impressora,#$1B'@'); Em conversa com o suporte da Daruma, a informação que me foi passada é que um comando estava "atropelando" o outro, e com isso não está sendo aplicado o comando de espaçamento. O suporte me pediu para fazer o teste com um sleep(200) entre os comandos #$1B'@' e #$1B+'3d', com o sleep entre as linhas funcionou corretamente. Expliquei que na impressão do extrato do SAT é enviado apenas uma string de impressão (#$1B'j'#0#$F'002 7 TESTE PRODUTO SAT....) com todos os comandos e que não tinha como colocar um sleep entre os comandos. Não conseguimos chegar a nenhuma solução. Para testes, comentei a linha FBuffer.Add('</zera></ce></logo>'); da procedure GerarCabecalho da unit ACBrSATExtratoESCPOS, sem essa linha o espaçamento entre linhas passou a ser aplicado. Entendo que a impressora deva ser resetada a cada inicio de impressão e essa linha não poderá sair do código, mas pensando em uma solução, será que o comando de resetar a impressora não poderia ser enviado separado da string que é montada no FBuffer ? Talvez na TACBrSATExtratoESCPOS.ImprimirCopias, antes do FOR já seria RESETADA a impressora, na sequência seria impresso o Buffer. Obrigado.
-
Bom dia Fiz alguns testes, mas não muda o espaço entre as linhas. As propriedades LinhasEntreCupons, ConfigBarras.LarguraLinha, ConfigBarras.Altura e ConfigQRCode.LarguraModulo estão sendo respeitadas de acordo com os valores informados, somente a propriedade EspacoEntreLinhas que não muda na impressão. Debugando a montagem das Tags, vi que a tag de espaço é adicionada (#$1B'3È) conforme o valor que informei, mas mesmo assim não muda nada na impressão. #$1B'@'#$1B'3È</ce></logo>'#$D#$A'<n>Estabelecimento Fantasia 2</n>'#$D#$A'<c>Estabelecimento de Teste 2'#$D#$A'rua das flores 1005 frente centro-Sao Paulo-00000-000'#$D#$A'</ae><c>CNPJ:11.111.111/1111-11 IE:111111111111 IM:102030'#$D#$A'</linha_simples>'#$D#$A'</fn></ce><n>Extrato No. 000000'#$D#$A'CUPOM FISCAL ELETRâNICO - SAT</n>'#$D#$A' '#$D#$A' = T E S T E ='#$D#$A' '#$D#$A'>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>'#$D#$A'>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>'#$D#$A'>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>'#$D#$A'</linha_simples>'#$D#$A'</ae><c>CPF/CNPJ do Consumidor: CONSUMIDOR NÇO IDENTIFICADO'#$D#$A'RazÆo Social/Nome: CONSUMIDOR'#$D#$A'</ae><c></linha_simples>'#$D#$A'# COD DESC QTD UN VL UN R$ (VLTR R$)* VL ITEM R$'#$D#$A'</linha_simples>'#$D#$A'</ae><c>001 7 TESTE PRODUTO SAT 7 1 UN X 20,000 20,00'#$D#$A