Ir para conteúdo
  • Cadastre-se

aocampioni

Membros Pro
  • Total de ítens

    216
  • Registro em

  • Última visita

Tudo que aocampioni postou

  1. aocampioni

    GNRE

    Italo, Boa noite. Vc saberia me dizer que correções faltam fazer no ACBrGNRE ? Estou começando a instalar o trunk2 para testar. Já vi que o ACBrNFSe já está liberado mas gostaria de saber sobre o GNRE, o que falta. Obrigado e até mais,
  2. claudemirlima, Boa tarde. É obrigatório para qualquer regime quando a operação é interestadual e o cliente é consumidor final. O que existe de diferente é que do lado da empresa do simples que emite a nota a tag com o valor da partilha do remetente é zerada. No mais o cálculo é igual ao de uma empresa do regime normal (real ou presumido). Até mais,
  3. bfbraz, Boa noite. Não tem valores de partilha mas tem que existir as tags, porém, como o produto é isento a maioria dessas tags vai zerada: <ICMSUFDest> <vBCUFDest>100.00</vBCUFDest> <pFCPUFDest>0.0000</pFCPUFDest> <pICMSUFDest>0.0000</pICMSUFDest> <pICMSInter>12.00</pICMSInter> <pICMSInterPart>40.0000</pICMSInterPart> <vFCPUFDest>0.00</vFCPUFDest> <vICMSUFDest>0.00</vICMSUFDest> <vICMSUFRemet>0.00</vICMSUFRemet> </ICMSUFDest> Produto de 100,00 reais. Vai a base apenas, o ICMS interestadual e a alíquota da partilha do destino. Esses valores desse produto não devem fazer parte do total, portanto se tiver 2 produtos um isento e outro não apenas soma-se nas tags do total o produto que não é isento. Veja aí se funciona e avise-nos, Até mais,
  4. Rodrigoogioni, Boa tarde. Falei besteira mesmo, rsrs, contribuinte isento e contribuinte não gera as tags. O não contribuinte gera, porém se o PRODUTO for isento de tributos é que as tags devem ser zeradas. <ICMSUFDest> <vBCUFDest>100.00</vBCUFDest> <pFCPUFDest>0.0000</pFCPUFDest> <pICMSUFDest>0.0000</pICMSUFDest> <pICMSInter>12.00</pICMSInter> <pICMSInterPart>40.0000</pICMSInterPart> <vFCPUFDest>0.00</vFCPUFDest> <vICMSUFDest>0.00</vICMSUFDest> <vICMSUFRemet>0.00</vICMSUFRemet> </ICMSUFDest> Produto de 100,00. Preenche a base, as tags da operação interestadual e a partilha que deveria ir para o destino. Até mais,
  5. Boa noite rodrigoogioni, Isenta e não contribuinte são duas situações e nas duas deve-se gerar as tags. Apenas no caso da situação isenta gera-se as tags zeradas e somente o percentual interestadual e o percentual da partilha do destino devem ser preenchidos. No não contribuinte a geração das tags é normal. Se eu estiver errado me corrijam, Até mais, Italo, Boa niote. Sim, eu também concordo que é consumidor final mas em sendo contribuinte do ICMS não geraria as tags. Até mais,
  6. 3Soft, Boa noite. Ao meu ver, pela interpretação, sem as tags da partilha. Até mais,
  7. Rodrigo, Boa noite. Tudo isso é confuso mesmo, mas lendo o convênio 93 encontrei o seguinte: Cláusula nona. Aplicam-se as disposições deste convênio aos contribuintes optantes pelo Regime Especial Unificado de Arrecadação de Tributos e Contribuições devidos pelas Microempresas e Empresas de Pequeno Porte - Simples Nacional, instituído pela Lei Complementar nº 123, de 14 de dezembro de 2006, em relação ao imposto devido à unidade federada de destino. O resultado das disposições deste convênio (que é gerar a partilha), quando se trata de empresa do simples na origem, não se aplica (em termos né, veremos mais a frente na outra citação o porque), portanto não tem nada a ser partilhado para o origem (#sqn) e sim somente para o destino. Vendo esta interpretação do convênio creio que: a sistemática da partilha é igual para qualquer regime, mas aplicada somente ao destino quando na origem o regime é simples nacional (#sqn, veja a citação seguinte). Não sei se expliquei ou compliquei. Rsrs Companheiro Jorge, Boa noite. Sim sim, vc está correto. Analisando tudo isso, para o estado de destino, será recolhido ICMS agora quando seu contribuinte for comprar em outro estado, e isso será ótimo pro destino, massss, será péssimo pra quem está comprando porque se o comprador for do simples (caso de hotéis por exemplo) será tratado como um consumidor final e em sendo pessoa jurídica terá que recolher este imposto que lhe foi partilhado (phoda). E quando a venda for pra um cliente comum, quem se ferra é quem vende, mesmo sendo do simples e do seu lado não deveria recolher nada na origem (a tag da origem de ir zerada) terá que recolher para o destino a parte que a ele (Destino) cabe na partilha. Então, existe de um certo modo, uma 'ilegalidade' deste convênio para com as empresas do simples nacional sim, porque ela fere a lei do simples onde a unificação de impostos foi criada para amenizar a carga tributária dessas empresas, mas agora quando ela comprar (ou mesmo vender) de outros (ou para outros) estados, com a difal, ela terá que recolher a parte que lhe cabe na partilha. Ou seja, já recolhe o seu imposto das vendas pelo DAS, e terá de recolher o ICMS da partilha por GARE/GNRE (de um lado ou de outro). Isso ao meu vai ferrar tudo (desculpe o termo). No caso das empresas normais não deveria haver bi-tributação pois lendo o convênio 93 Cláusula terceira. O crédito relativo às operações e prestações anteriores deve ser deduzido do débito correspondente ao imposto devido à unidade federada de origem, observado o disposto nos arts. 19 e 20 da Lei Complementar nº 87/1996. Ou seja, quando ele for recolher seus impostos normais, o valor que vier de partilha a ser recolhido deve ser abatido deste total, essa é minha interpretação. Isso tudo, ao meu ver ainda não vai cheirar bem, rsrs, vai acirrar a guerra fiscal e vai prejudicar muita gente. E Jorge, quando você diz que ainda está utilizando em alguns clientes uma versão que não gera essas tags eles estão em descumprimento a lei da partilha, porque mesmo sem ser validada, as tags devem existir e existindo partilha ela deve ser recolhida. Somente a validação foi adiada tá ok. Espero ter mais explicado do que complicado. Até mais,
  8. Estimado Luciano, Boa noite. Como eu citei em um outro post, não me lembro agora qual, os cálculos de uma empresa normal e de uma empresa do simples são exatamente iguais porém, na hora de colocar valor na tag vICMSUFRemet na linha do produto deve colocar zero e no grupo TOTAL a tag nem deve aparecer. Abaixo seguem os passos para cálculo. <ICMSUFDest> <vBCUFDest>10.00</vBCUFDest> <pFCPUFDest>1.0000</pFCPUFDest> <pICMSUFDest>19.0000</pICMSUFDest> <pICMSInter>12.00</pICMSInter> <pICMSInterPart>40.0000</pICMSInterPart> <vFCPUFDest>0.10</vFCPUFDest> <vICMSUFDest>1.75</vICMSUFDest> <vICMSUFRemet>0.00</vICMSUFRemet> </ICMSUFDest> ..... <total> <ICMSTot> <vBC>0.00</vBC> <vICMS>0.00</vICMS> <vICMSDeson>0.00</vICMSDeson> <vFCPUFDest>0.10</vFCPUFDest> <vICMSUFDest>1.75</vICMSUFDest> .... UF do remetente da NF-e : SP UF do destinatário: MG Alíquota do ICMS Inter Alíquota do ICMS interestadual. Em nosso exemplo é a alíquota de SP para MG.: 12% Alíquota do ICMS Intra Alíquota do ICMS aplicado dentro do estado de destino - MG.: 18% Fundo de Combate à Pobreza Alíquota definida pelo estado de destino. Em nosso exemplo MG.: 2% Valor do produto: 845,00 Valor do IPI: 50,00 Outras despesas: 80,00 Desconto: 10,00 Frete: 35,00 Passo 1 - calcular a base de cálculo do ICMS Base do ICMS = Valor do produto + Frete + Outras Despesas Acessórias - Descontos + IPI Base do ICMS = 845,00 + 35,00 + 80,00 - 10,00 + 50,00 Base do ICMS = 1.000,00 Passo 2 - calcular o Fundo de Combate à Pobreza FCP = Base do ICMS * (%FCP / 100) FCP = 1.000,00 * (2,00% / 100) FCP = 1.000,00 * 0,02 FCP = 20,00 Passo 3 - calcular o DIFAL DIFAL = Base do ICMS * ((%Alíquota do ICMS Intra - %Alíquota do ICMS Inter) / 100) DIFAL = 1.000,00 * ((18,00% - 12,00%) / 100) DIFAL = 1.000,00 * (6,00% / 100) DIFAL = 1.000,00 * 0,06 DIFAL = 60,00 Passo 4 - efetuar a partilha do DIFAL Parte que compete a SP - estado de origem: Parte UF Origem = Valor do DIFAL * (%Origem / 100) Parte SP = 60,00 * (60,00% / 100) Parte SP = 60,00 * 0,60 Parte SP = 36,00 se for empresa normal, caso seja do simples a parte de SP direto é o valor 0,00 e isso é em cada produto e no final nem coloca a tag no total. Parte que compete a MG - estado de destino: Parte UF Destino = (Valor do DIFAL * (%Destino / 100)) Parte MG = (60,00 * (40,00% / 100)) Parte MG = (60,00 * 0,40) Parte MG = 24,00 Veja aí se o exemplo resolve sua dúvida, qualquer coisa só avisar, Até mais,
  9. Igor, Segunda a última nota técnica o FCP não é mais acrescido nas tags que vc informou. "Alterações introduzidas na versão 1.60  Alterada a observação do campo NA15 para que o valor do ICMS relativo ao Fundo de Combate à Pobreza (FCP) não seja somado ao valor do ICMS Interestadual para a UF de destino;" Valdeir, Se a tag indIEDest for 9 os csts devem ser: - 00-Tributada integralmente; - 20-Com redução da Base de Cálculo; - 40-Isenta; - 41-Não tributada; - 60-ICMS cobrado anteriormente por substituição tributária; Caso a empresa seja do simples os csosn podem ser: - 102-Tributação SN sem permissão de crédito; - 103-Tributação SN, com isenção para faixa de receita bruta; - 300-Imune; - 400-Não tributada pelo Simples Nacional; - 500-ICMS cobrado anteriormente por substituição tributária ou por antecipação; Lembrando que para empresas do simples a tag com os valores da partilha da origem devem ser zerados ao se criar a estrutura da partilha nos produtos e no total nem deve aparecer. Sobre a ST ainda não está claro realmente. Via de regra, produto com ST não deveria ter as tags da partilha pois o imposto retido é pago 'antecipadamente' e o calculo já contempla a diferença entre as alíquotas interna e interestadual, portanto, não há difal pra partilhar. O que vejo o pessoal fazendo é, independente de ter ST ou não a pessoa pega a BC do icms normal do produto (que é o valor do produto sem ST) e mandando bala pra calcular a difal (é o que estou fazendo também e está validando). Quando os estados se pronunciarem adequadamente sobre isso é que iremos saber se está certo ou não. O CFOP, se a mercadoria tem ST, com cst 60 é o 6404 conforme deve ser, se for venda normal (que seria um produto 6102) aí acredito que deva sair 6108. Wanderley, Concordo, é o caos do nosso (des)governo. Até mais,
  10. Estimado Tairone, Boa noite. Pelo que pude ver a tag CRT está com o valor 1 indicando que o remetente é do simples nacional. Isso significa que, a tag vICMSUFRemet em cada produto deve conter zero, e no total ela não deve nem aparecer. Faça essa modificação e veja se fica OK. Eu ainda alteraria a tag indPres para 9 não para dizer que a operação é não presencial, mas sim para indicar OUTRAS operações. No mais, o arquivo parece estar correto. Até mais,
  11. Estimado raosistemas, Boa noite.Suas dúvidas são complexas mas vamos lá. 1) a pergunta 1 ficou meio confusa mas você citou ST. Substituição tributária é o seguinte, é algo em que cada estado ainda irá (e deve) definir (e nos explicar certinho) como vai ser (isso tudo ainda é totalmente confuso pra nós, rsrs), porque a regra geral é a seguinte: como a mercadoria está sujeita a ST e o imposto já foi retido e pago antecipadamente (pulo do gato) essa mercadoria não teria diferencial de alíquota a ser recolhida, ou seja, não se gera as tags da partilha para a linha deste item. Resumindo, o valor do ICMS devido (e pago) por antecipação que é calculado nos termos do art 426-a do RICMS/2000 de são paulo já englobaria o valor que seria devido pela diferença entre as alíquotas interna e interestadual. Mas ninguém nos orienta corretamente e o que se vê, no geral, é o pessoal dizendo que independente de ter ST ou não se a venda for pra outro estado e o cliente for consumidor final (contribuinte ou não) a partilha deve ser feita e eu estou fazendo dessa maneira e o sistema tá validando. E a ultima coisa, o FCP não faz mais parte do total da difal devido na uf de destino, isso foi alterado na nota técnica 2015.03.v160. 2) independente se é do simples ou não deve-se calcular a difal, mas com uma excessão.Apenas a parte do difal do destino é recolhida, porque a do remetente é recolhida de forma unificada através de DAS. Portanto, vc deve calcular tudo certinho, mas na hora de informar as tags do produto deve-se ficar assim: <ICMSUFDest> <vBCUFDest>10.00</vBCUFDest> <pFCPUFDest>1.0000</pFCPUFDest> <pICMSUFDest>19.0000</pICMSUFDest> <pICMSInter>12.00</pICMSInter> <pICMSInterPart>40.0000</pICMSInterPart> <vFCPUFDest>0.10</vFCPUFDest> <vICMSUFDest>1.75</vICMSUFDest> <vICMSUFRemet>0.00</vICMSUFRemet> (vai zerado quando for empresa do simples nacional) </ICMSUFDest> A tag vICMSUFRemet deve ser informada com valor zero nas tags relativas ao produto. E lá no total assim: <ICMSTot> <vBC>0.00</vBC> <vICMS>0.00</vICMS> <vICMSDeson>0.00</vICMSDeson> <vFCPUFDest>0.10</vFCPUFDest> <vICMSUFDest>1.75</vICMSUFDest // não aparece a informação da tag do remetente quando a empresa for do simples nacional) Nem sequer informar a TAG. Meu sistema está validando assim. O CFOP 6108 só será utilizado se o consumidor final pra quem vc está vendendo for pessoa física mesmo e a operação não tiver ST, e, as informações não vão para o campo de informações adicionais não, imagina uma nota com 30 produtos vc colocar as informações todas lá naquele campo, não dá, pelo menos no nosso caso aqui eu estou colocando os dados na tag infAdProd; <infAdProd> Conv.ICMS.93/2015: vFCPUFDest : 0,10 vICMSUFDest : 1,75 vICMSUFRemet: 0,00 (zero porque é do simples) </infAdProd> 3) Os CSTs aceitos para clientes consumidores finais não contribuintes são aqueles constantes na nota técnica 2015.03.v160 que são 00 20 40 41 60, mas isso se o indIEDest for igual a 9, agora se o consumidor pra quem vc tá vendendo, fora do estado, for ISENTO de inscrição estadual então os CSTs que vc deve usar são o 50 e 51. Para empresas do simples os csts válidos seriam 102 103 300 400 e 500 e no caso do isento fora do estado a regra seria usar 400. 4) Esta é parecida com a 2, ou seja, não há diferença nenhuma no cálculo e sim, apenas na hora de preencher a tag vICMSUFRemet. Acho que é isso, espero ter explicado mais e complicado de menos. Até mais.
  12. Você está certo Regys, agora com tranquilidade estarei começando a migrar para o Trunk2 e tentando auxiliar o máximo possível para que a GNRE e a NFSE estejam 100 por cento, pois sem elas os meus clientes não trabalham um dia sequer. Vamos a luta, atualizando SVN trunk2. Até mais,
  13. Estimado, Boa tarde. Deu certo sim, fiz tudo da seguinte forma: Fiz a criação das tags, ajustei o layout da nfe, atualizei os schemas, mudei algumas regras de validação dos campos dentro do meu programa principalmente com os indicadores abaixo: <tpAmb>2</tpAmb> <finNFe>1</finNFe> <indFinal>1</indFinal> <indPres>9</indPres> <procEmi>0</procEmi> ..... <indIEDest>9</indIEDest> Ajustei na hora de gerar os produtos: ..... <NCM>00000000</NCM> <CEST>1234567</CEST> <CFOP>6102</CFOP> ..... <ICMSUFDest> <vBCUFDest>10.00</vBCUFDest> <pFCPUFDest>1.0000</pFCPUFDest> <pICMSUFDest>19.0000</pICMSUFDest> <pICMSInter>12.00</pICMSInter> <pICMSInterPart>40.0000</pICMSInterPart> <vFCPUFDest>0.10</vFCPUFDest> <vICMSUFDest>1.75</vICMSUFDest> <vICMSUFRemet>0.00</vICMSUFRemet> </ICMSUFDest> ..... <infAdProd> Conv.ICMS.93/2015: vFCPUFDest : 0,10 vICMSUFDest : 1,75 vICMSUFRemet: 0,00 </infAdProd> ..... <ICMSTot> <vBC>0.00</vBC> <vICMS>0.00</vICMS> <vICMSDeson>0.00</vICMSDeson> <vFCPUFDest>0.10</vFCPUFDest> <vICMSUFDest>1.75</vICMSUFDest> ..... Validei e enviei e está funcionando: <infProt> <tpAmb>2</tpAmb> <verAplic>SP_NFE_PL_008h2</verAplic> <chNFe>35151213048599000185550010000000241000000242</chNFe> <dhRecbto>2015-12-30T21:33:12-02:00</dhRecbto> <nProt>135150006285351</nProt> <digVal>gS6aca2c+UidFBQ8ZZEJrmTHlSo=</digVal> <cStat>100</cStat> <xMotivo>Autorizado o uso da NF-e</xMotivo> </infProt> ..... Para tanto, alterei os arquivos: Diretório PCN2 do trunk1 pcnNFeRTXT pcnNFeW pcnGerador pcnNFeR pcnConversao pcnNFe pcnLayoutTXT Diretório ACBrComum do trunk1 - apenas coloquei as funções solicitadas ACBrUtil No fonte do pcnGerador ajustei estas funções também (além da inclusão dos novos campos): //procedure wCampo(const Tipo: TpcnTipoCampo; ID, TAG: string; const min, max, ocorrencias: smallint; const valor: variant; const Descricao: string = ''); procedure wCampo(const Tipo: TpcnTipoCampo; ID, TAG: string; const min, max, ocorrencias: smallint; const valor: variant; const Descricao: string = ''; ParseTextoXML : Boolean = True; Atributo: String = ''); smallint; const valor: variant; const Descricao: string = ''); //procedure wCampoCNPJCPF(const ID1, ID2: string; CNPJCPF: string; obrigatorio: Boolean = True; PreencheZeros: Boolean = True); procedure wCampoCNPJCPF(const ID1, ID2: string; CNPJCPF: string; const cPais: Integer); Para comparar cada fonte com o seu correspondente no trunk2 eu utilizei o notepad++. No mais, dentro do meu programa após colocar a tag NCM eu coloquei a CEST e apos o COFINSST e antes do II (do item) eu coloquei a partilha e no total após a tag vICMSDeson eu coloquei o valor do fcp e os valores da partilha. Foi um dia todo de trabalho mas foi tudo certo. Qualquer coisa me avise aí. 35151213048599000185550010000000241000000242-nfe.xml
  14. Amigos, Boa noite. Para empresas do simples alguns detalhes são importantes: As tags FIN e IND devem ficar : <finNFe>1</finNFe> <indFinal>1</indFinal> <indPres>9</indPres> Agora note nas tags abaixo <ICMSUFDest> <vBCUFDest>10.00</vBCUFDest> <pFCPUFDest>1.0000</pFCPUFDest> <pICMSUFDest>19.0000</pICMSUFDest> <pICMSInter>12.00</pICMSInter> <pICMSInterPart>40.0000</pICMSInterPart> <vFCPUFDest>0.10</vFCPUFDest> <vICMSUFDest>1.75</vICMSUFDest> <vICMSUFRemet>0.00</vICMSUFRemet> </ICMSUFDest> A tag <vICMSUFRemet>0.00</vICMSUFRemet> deve estar zerada quando o remetente for uma empresa do simples. E para cada item: <infAdProd> Convênio ICMS 93/2015: vFCPUFDest : 0,10 vICMSUFDest : 1,75 *vICMSUFRemet: 0,00 (*SIMPLES NACIONAL) </infAdProd> E no total <ICMSTot> <vBC>0.00</vBC> <vICMS>0.00</vICMS> <vICMSDeson>0.00</vICMSDeson> <vFCPUFDest>0.10</vFCPUFDest> <vICMSUFDest>1.75</vICMSUFDest> Notem que não totaliza vICMSUFRemet porque é do simples. Acho que é isso, testei em empresas do lucro presumido (ai sim deixo correr a totalização) e do simples e passou assim. Testem aí e me digam se resolve. Até mais,
  15. Pessoal, Boa tarde. Afinal de contas, existe algum exemplo no trunk2 mencionando como colocar os dados da CEST e da Partilha na hora de gerar a NFe pelo ACBr ou pelo monitor? Outro detalhe, teremos que gerar alguma guia via GNRE ou isso será por conta do contador ? (que ao receber os xml`s dos clientes no início do mês seguinte importa e vê os grupos das partilhas?) Uma última questão, como é que vocês estão tratando a questão de consumidor final não contribuinte do ICMS ? Pessoa física e jurídica ou só pessoa física ? Agradecido por qualquer dica.
  16. Pessoal, Bom dia amigos desenvolvedores do ACBr. Em função dos prazos gostaria de saber se é possível alguém aí me dar uma dica de como implementar a CEST e a partilha de ICMS no trunk1? Infelizmente não consegui doar meu tempo para agilizar o desenvolvimento do GNRE e da NFS-e para o trunk2 e por isso terei que implementar essas tags e alterar o layout no trunk1 mesmo pois dos 90 clientes 35 usam NFE-NFSE e dos 35, 25 a GNRE. Sei que a CEST foi adiada mas a partilha não. Se alguém puder indicar os arquivos que eu tenho que alterar eu fico grato. Tenho aqui uma pré-lista mas não estou certo disso. pcnLayoutTXT.pas pcnNFE.pas pcnNFERTXT.pas pcnNFeR.pas pcnNFeW.pas pcnGerador.pas Obrigado.
  17. Olá, Boa tarde. Sei que o tópico já tem um tempo mas no meu sistema eu faço da seguinte maneira: // configura nos parâmetros pro ACBr não emitir as mensagens pois você mesmo o fará ACBrBoleto.ImprimirMensagemPadrao := False; ..... var AStringList: TStrings; begin .... AStringList := TStringList.Create; for ....... do begin ...... AStringList.Clear; ...... TituloACBr.CodigoMora := '1'; // OU 2 se você quiser que saia em % TituloACBr.ValorMoraJuros := 0; TituloACBr.DataMoraJuros := 0; if njuromensal>0 then TituloACBr.PercentualMulta := njuromensal; if nMoraDiaria>0 then begin nValorMora:=(TituloACBr.ValorDocumento*(nMoraDiaria/30))/100; if(nValorMora >= 0.01) then begin TituloACBr.ValorMoraJuros := nValorMora; TituloACBr.DataMoraJuros := TituloACBr.Vencimento+1; end; end; if(iDiasProtesto = 0) then TituloACBr.DataProtesto := 0 else TituloACBr.DataProtesto := StrToDate(FormatDateTime('dd/mm/yyyy', TituloACBr.Vencimento+iDiasProtesto) ); // mensagens personalizadas if TituloACBr.DataProtesto <> 0 then begin if TituloACBr.TipoDiasProtesto = diCorridos then AStringList.Add(ACBrStr('Protestar em ' + IntToStr(DaysBetween(TituloACBr.Vencimento, TituloACBr.DataProtesto))+ ' dias corridos após o vencimento')) else AStringList.Add(ACBrStr('Protestar no ' + IntToStr(DaysBetween(TituloACBr.Vencimento, TituloACBr.DataProtesto))+ ' dia útil após o vencimento')); end; if TituloACBr.ValorMoraJuros <> 0 then begin if TituloACBr.DataMoraJuros <> 0 then AStringList.Add(ACBrStr('Cobrar Juros de ' + ifthen(TituloACBr.CodigoMora = '2', FloatToStr(TituloACBr.ValorMoraJuros) + '%', FormatCurr('R$ #,##0.00',TituloACBr.ValorMoraJuros)) + ' por dia de atraso para pagamento a partir de ' + FormatDateTime('dd/mm/yyyy',Iif(TituloACBr.Vencimento = TituloACBr.DataMoraJuros, IncDay(TituloACBr.DataMoraJuros,1),TituloACBr.DataMoraJuros)))) else AStringList.Add(ACBrStr('Cobrar Juros de ' + iif(TituloACBr.CodigoMora = '2', FloatToStr(TituloACBr.ValorMoraJuros) + '%', FormatCurr('R$ #,##0.00',TituloACBr.ValorMoraJuros)) + ' por dia de atraso')); end; if TituloACBr.PercentualMulta <> 0 then AStringList.Add(ACBrStr('Cobrar Multa de ' + FormatCurr('R$ #,##0.00',TituloACBr.ValorDocumento*( 1+ TituloACBr.PercentualMulta/100)-TituloACBr.ValorDocumento) + ' após o vencimento.')); TituloACBr.Mensagem.Text := AStringList.Text + 'mais suas instruções personalizadas'; .... end; ...... end; No mais, os campos devem ser preenchidos normalmente caso você envie remessa tá ok. Desse jeito aí, onde tem o texto //mensagens personalizadas, dali pra frente você mexe como bem entender. Até mais,
  18. Vanderlei, Boa noite. Se não me engano, esse gerador de relatórios foi descontinuado. Existe apenas o Fortes agora como gerenciador de relatórios. Até mais,
  19. Laercio, Boa noite. Tem como postar o link novamente? Foi feita uma mudança no forum recentemente ao que me parece que impede downloads muito antigos. Obrigado e até mais,
  20. Boa noite pessoal, Infelizmente os estados de São Paulo, Rio de Janeiro e o Espírito Santo não geram GNRE pelo portal nacional, portanto não há webservice disponível (visível para nós) para estes estados. O que há é emissão online apenas ou através de programas instalados direto no desktop. Também não existe layout disponível em nenhum decreto ou comunicado ou portaria CAT que pesquisei. Esse é o nosso (des)governo. Até mais,
  21. Olá, Boa tarde. Seria necessário criar um layout personalizado para tal. No meu sistema atual tenho 2 layouts, um com recibo no topo e outro com logomarca do cliente, mas infelizmente ainda não migrei pro trunk2, portanto estaria indisponível, mas quando eu migrar terei o prazer em compartilhar. Até mais,
  22. Estimado, Boa tarde, na verdade a máscara é 87000000000 e você está colocando 870000005432 Provável que o 2 sendo dígito deva sair fora. Veja um boleto de testes com o ACBr (ainda em trunk). ACBrBoleto.Banco.TipoCobranca := cobCaixaSicob; ACBrBoleto.Banco.Numero := 104; ACBrBoleto.Banco.Digito := 0; ACBrBoleto.Banco.Nome := 'Caixa Economica Federal'; ACBrBoleto.Banco.TamanhoMaximoNossoNum := 15; ACBrBoleto.Cedente.Agencia := '1839'; ACBrBoleto.Cedente.AgenciaDigito := '2'; // agencia tem dígito também ACBrBoleto.Cedente.CaracTitulo := tcSimples; ACBrBoleto.Cedente.CodigoCedente := '87000000543'; ACBrBoleto.Cedente.CNPJCPF := '83.722.828/0001-80'; //gerado da internet ACBrBoleto.Cedente.Conta := <conta>; ACBrBoleto.Cedente.ContaDigito := <digito>; ACBrBoleto.Cedente.Convenio := ''; ACBrBoleto.Cedente.Modalidade := ''; ACBrBoleto.Cedente.Nome := 'ANDRADE CONTROLE DE PRAGAS LTDA'; ACBrBoleto.Cedente.Logradouro := 'ENDERECO DO ANDRADE,000'; ACBrBoleto.Cedente.Complemento := ''; ACBrBoleto.Cedente.Bairro := 'DT INDUSTRIAL'; ACBrBoleto.Cedente.CEP := '11111111'; ACBrBoleto.Cedente.Cidade := 'CIDADE DO ANDREADE'; ACBrBoleto.Cedente.NumeroRes := ''; ACBrBoleto.Cedente.Telefone := '11 99999 9999' ACBrBoleto.Cedente.UF := 'SP'; ACBrBoleto.Cedente.ResponEmissao := tbCliEmite; ACBrBoleto.Cedente.TipoInscricao := pJuridica; ACBrBoleto.Cedente.TipoCarteira := tctSimples; ACBrBoleto.DataArquivo := Date; ACBrBoleto.NomeArqRemessa := FormatDateTime('DDMMYYYYHHMMSS',Now)+'.TXT'; ACBrBoleto.DirArqRemessa := <dir>; ACBrBoleto.DirArqRetorno := <dir>; ACBrBoleto.ImprimirMensagemPadrao := False; ACBrBoleto.LayoutRemessa := <layout>; ACBrBoleto.LeCedenteRetorno := False; ................ // montando boleto nNossoNum := 2106; // var real iVencto := 0; // var integer ACBrBoleto.ListadeBoletos.Clear; // var TACBrTitulo AStringList := TStringList.Create; // var TStrings for i := 1 to 1 do begin TituloACBr := ACBrBoleto.CriarTituloNaLista; AStringList.Clear; // dias de protestos e carteira de envio TituloACBr.TipoDiasProtesto := diCorridos; TituloACBr.CarteiraEnvio := tceCedente; with TituloACBr do begin Sacado.Avalista := ''; Sacado.NomeSacado := 'Fulano de Tal ' + IntToStr(i); Sacado.CNPJCPF := '111.111.111-1' + IntToStr(i); Sacado.Pessoa := pFisica; Sacado.Logradouro := 'Rua do Sacado ' + IntToStr(i); Sacado.Numero := IntToStr(i) + ' 123'; Sacado.Complemento := IntToStr(i) + ' complemento'; Sacado.Bairro := 'Bairro do Sacado ' + IntToStr(i); Sacado.Cidade := 'Cidade do Sacado' + IntToStr(i); Sacado.UF := 'SP'; Sacado.CEP := '01001-001'; Sacado.Email := '[email protected]'; Sacado.Fone := '11 1111 1111'; Vencimento := StrToDate('30/09/2015'); DataDocumento := StrToDate('22/09/2015'); DataProcessamento := StrToDate('22/09/2015'); NumeroDocumento := IntToStr(i); EspecieDoc := 'DM'; NossoNumero := FormatFloat('820000000000000',nNossoNum); Carteira := 'SR'; LocalPagamento := 'CASAS LOTERICAS, AG.CAIXA E REDE BANCARIA'; Aceite := atNao; ValorDocumento := 200; ValorDesconto := 0; DataDesconto := 0; ValorAbatimento := 0; DataAbatimento := 0; ValorDescontoAntDia := 0; if <vljuros> > 0 then PercentualMulta := <vljuros>; CodigoMora := '1'; ValorMoraJuros := 0; DataMoraJuros := 0; if <vlmora> > 0 then begin nValorMora:=(200*(<vlmora>/30))/100; if(nValorMora >= 0.01) then begin ValorMoraJuros := nValorMora; DataMoraJuros := Vencimento+1; end; end; DataProtesto := 0; // mensagens padrão if DataProtesto <> 0 then begin if TipoDiasProtesto = diCorridos then AStringList.Add(ACBrStr('Protestar em ' + IntToStr(DaysBetween(Vencimento, DataProtesto))+ ' dias corridos após o vencimento')) else AStringList.Add(ACBrStr('Protestar no ' + IntToStr(DaysBetween(Vencimento, DataProtesto))+ ' dia útil após o vencimento')); end; if ValorMoraJuros <> 0 then begin if DataMoraJuros <> 0 then AStringList.Add(ACBrStr('Cobrar Juros de ' + ifthen(CodigoMora = '2', FloatToStr(ValorMoraJuros) + '%', FormatCurr('R$ #,##0.00',ValorMoraJuros)) + ' por dia de atraso para pagamento a partir de ' + FormatDateTime('dd/mm/yyyy',ifthen(Vencimento = DataMoraJuros, IncDay(DataMoraJuros,1),DataMoraJuros)))) else AStringList.Add(ACBrStr('Cobrar Juros de ' + ifthen(CodigoMora = '2', FloatToStr(ValorMoraJuros) + '%', FormatCurr('R$ #,##0.00',ValorMoraJuros)) + ' por dia de atraso')); end; if PercentualMulta <> 0 then AStringList.Add(ACBrStr('Cobrar Multa de ' + FormatCurr('R$ #,##0.00',ValorDocumento*( 1+ PercentualMulta/100)-ValorDocumento) + ' após o vencimento.')); Mensagem.Text := AStringList.Text + <msgcob1> + #13+#10 + <msgcob2>; OcorrenciaOriginal.Tipo:= toRemessaRegistrar; Instrucao1 := ''; Instrucao2 := '' Parcela := i; end; nNossoNum := nNossoNum + 1; iVencto := iVencto + 30; end; ACBrBoleto.Imprimir; Qualquer coisa nos avise, Ate mais, boleto teste.pdf
  23. Olá estimado luciano_f, A página de e-mail é para configurar o servidor e endereço de e-mail com usuário e senha do emitente. Ao gerar uma remessa, se o destinatário do boleto possuir e-mail e no cadastro de cliente estiver marcado BOLETO COBRANÇA ENVIO AUTOMÁTICO, será enviado um e-mail do boleto para o cliente ao final da geração da remessa. Se o registro que foi gerado remessa já tiver uma marca de BOLETO IMPRESSO o sistema pergunta ao usuário o que fazer nesse caso. Nesse outro caso que você citou, desconheço qualquer integração bancária, a não ser apenas no caso da Caixa Econômica que possui um sistema de cobrança FASTEDI (desenvolvido pela TIVIT) onde a gente consegue startar a aplicação por linha de comando com usuário e senha, e uma vez carregada, basta gravar o arquivo de remessa no diretório da aplicação e em instantes o arquivo é automaticamente enviado para o banco. É tosco mas seu uso acaba sendo eficiente. No mais, não conheço se alguma outra instituição bancária usa sistema parecido. Até mais,
  24. Bom dia, Ok estimado, tentei ajudar da melhor forma possível. Sob o meu ponto de vista não há erros na UNIT do banco. Até mais,
  25. Estimado, Boa tarde. Estimado, no código do CEDENTE da caixa não inclui agencia, apenas o código do cedente mesmo. // ACBrBoleto.Cedente.Agencia := '0362'; ACBrBoleto.Cedente.CodigoCedente := '87000000111'; Pronto, o componente fará o resto. Fiz um teste aqui e funcionou ok.
×
×
  • 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.