Ir para conteúdo
  • Cadastre-se

Rodrigo Cardilo

Membros Pro
  • Total de ítens

    259
  • Registro em

  • Última visita

Tudo que Rodrigo Cardilo postou

  1. Bom dia, Migrei para o trunk2 e estou tendo duvidas nas pastas de salvamento dos xml. Anteriormente a pasta de Cancelamentos ficava em AAAAMM\Evento\Cancelamento (AAAA ano e MM mês). e a pasta de Eventos ficava em AAAAMM\Evento\Evento. Agora todos os xmls de evento estão ficando em AAAAMM\Evento\Evento. Tem como voltar ao modo anterior na configuração do componente? Grato
  2. Entendi Ítalo, Grato pela atenção.
  3. João Paulo, Acho que você não entendeu meu problema. O arquivo está sendo salvo porém na pasta evento ao invés da pasta cce. As propriedades estão todas como true. Só quero saber como fazer os arquivos da carta de correção voltar a ser salvos na pasta cce e não na pasta evento. Grato.
  4. Oi João Paulo, Eu já utilizo essa propriedade conforme citei no meu código acima: DM1.ACBrNFe1.Configuracoes.Arquivos.AdicionarLiteral := True; Ainda sim não salva na pasta CCe e sim na pasta Evento.
  5. Oi amigos, Sempre utilizei o ACBRNFe e aos arquivos xml das cartas de correções eram salvas nas pasta mensal/CCe. (Ex.: C:\Sistema\ArqNfe\201506\CCe) . Porém de uns dias pra cá o componente está salvando os mesmos arquivos na pasta de Eventos (Ex.: C:\Sistema\ArqNfe\201506\Evento) . As propriedades do componente estão conforme código abaixo: DM1.ACBrNFe1.Configuracoes.Arquivos.Salvar := True; DM1.ACBrNFe1.Configuracoes.Arquivos.EmissaoPathNFe := True; DM1.ACBrNFe1.Configuracoes.Arquivos.PastaMensal := True; DM1.ACBrNFe1.Configuracoes.Arquivos.AdicionarLiteral := True; DM1.ACBrNFe1.Configuracoes.Arquivos.PathNFe := IncludeTrailingPathDelimiter(DM1.TB99840PATHSALVAR.Value); DM1.ACBrNFe1.Configuracoes.Arquivos.PathCan := IncludeTrailingPathDelimiter(DM1.TB99840PATHSALVAR.Value); DM1.ACBrNFe1.Configuracoes.Arquivos.PathInu := IncludeTrailingPathDelimiter(DM1.TB99840PATHSALVAR.Value); DM1.ACBrNFe1.Configuracoes.Arquivos.PathDPEC := IncludeTrailingPathDelimiter(DM1.TB99840PATHSALVAR.Value); Como faço para fazer o componente voltar a salvar na pasta CCe? Grato desde já.
  6. Oi Ivomar, Isso mesmo. Eu já tinha feito isso a muito tempo. Só que agora não consigo mais. Essa rotina sua funciona? Grato
  7. Amigo. Acredito que não entendeu minha pergunta. Eu consigo gerar os boletos de qualquer forma. O que quero é gerar um único pdf com boletos de diferentes cedentes ao mesmo tempo. Hoje só consigo gerar o pdf de um mesmo cedente. Obrigado pela ajuda.
  8. Boa tarde amigos, Estou com uma diculdade e não sei se e possível fazer com o ACBRBoleto. Gero vários boletos para um mesmo cliente porém com cedentes ou bancos diferentes. Exemplo. O usuário gera uma venda e parcela de 3 vezes porém a primeira parcela é gerada pelo Banco do Brasil e as demais pela Caixa. Eu gostaria de saber se existe a possibilidade de eu utilizar o ACBrBoleto1.Imprimir aparecendo os 3 boletos de uma vez só. Hoje eu tenho que filtrar por cedente e mandar imprimir. Daí não consigo enviar por e-mail ou gerar pdf um único arquivo. Será que existe essa forma que eu preciso. Grato pela atenção.
  9. Bom dia amigos, Estou utilizando o ACBRDownload sem problemas. Mas gostaria de saber se existe um recurso que me ajudaria muito: As vezes tento fazer download de um arquivo txt que não está no meu servidor web. (ex: www.cardilo.com/clientes/70.txt) Queria saber se existe uma forma do ACBRDownload verificar se existe esse arquivo e só assim fazer o download. Hoje, quando tento fazer isso ele cria aquele arquivo 70.txt.part e não me retorna erro algum. Uma outra possibilidade seria ele me retornar que não conseguiu fazer o download e eu parar o mesmo. Grato, Rodrigo Cardilo
  10. Boa tarde amigos, Meu cliente apagou acidentalmente todos os arquivos xml's gerados pelo meu programa. Até aí tudo bem pois consegui recuperar utiilizando a rotina: ACBrNFe1.WebServices.Consulta.NFeChave := ChaveNFE; ACBrNFe1.WebServices.Consulta.Executar; O problema agora é que eu precisaria dos arquivos dos eventos. Já descobri em outros posts que o arquivo com final *-sit.xml contém essas informações. Porém gostaria de saber se existe algum comando para salvá-los automaticamente na pasta (no meu caso a pasta mensal e dentro dela CCe e/ou Can). Eu tenho inclusive o protocolo desses eventos salvos no banco de dados. Grato pela atenção desde já.
  11. Boa tarde, Tem praticamente tudo no portal.. http://www.fazenda.sp.gov.br/sat/ Atc,.
  12. Boa dia, Acredito que o problema está aqui: <infNF> <CNPJ>00721388000110</CNPJ> <UF>MS</UF> <nNF>2632</nNF> <serie>1</serie> <dEmi>2014-09-02</dEmi> <vNF>729.38</vNF> </infNF> O que provavelmente acontece é que o emitente da nota fiscal 2632 não pode emitir nota fiscal e sim NOTA FISCAL ELETRÔNICA. O SEFAZ valida essa informação verificando a obrigatoriedade pelo CNPJ. Não sei se fui claro. Atc,
  13. Boa tarde Ítalo, Segue anexo arquivo .PAS com as alterações sugeridas. Grato, ACBrCTeDACTEFRDM.pas
  14. Oi Ítalo, Não vejo problema algum. A dificuldade encontrada pelo meu cliente era só em localizar o número da nota na chave. Ficaria show de bola. Agradeço pela atenção e se puder dar uma atenção na segunda alteração que eu sugeri, essa sim faz grande diferença. Grato,
  15. Olá amigos, Estou começando a desenvolver com o ACBRTEFD e tive algumas dúvidas utilizando o gptefdial. Quando fiz os testes no TEFDemo deu tudo certo, tanto com o comando AutoFinalizarCupom como True ou False. No caso do AutoFinalizarCupom = False eu testei usando a seguinte sequencia: Abrir VendeItem Subtotaliza CRT (o Gerenciador aprovou) FinalizarCupom Imprimir Transações Pendentes Deu tudo certo. Cheguei a fazer até com 3 formas de pagamento e sem problema algum. Porém, quando vou jogar os comando para a minha aplicação não consegui identificar como eu sei que a transação TEF foi aprovada pela operadora. Não consegui localizar onde pego esse retorno. Grato desde já,
  16. Oi Isaque. Claro que não tem problema. Taí a imagem circulada. Espero que achem importante. Atc,
  17. Oi Regys, Eu apaguei a pasta, fiz o que o post recomendado sugeriu, baixei novamente e o erro persiste. As units que eu citei acima não encontram a procedure Writelog no ACBRUtils.pas. Eu resolvi a ACBrECFClass.pas voltando com o código anterior do WriteLog. Já o ACBrBALClass.pas eu tive que comentar pois não deu certo de maneira alguma. Será que tenho que fazer mais alguma coisa diferente para dar certo. Grato.
  18. Segue a imagem com as observações e número da nota preenchidos. Já a unit eu já tinha postado antes compactada, mas segue novamente. Grato. ACBrCTeDACTEFRDM.rar
  19. Olá amigos moderadores, Utilizo a impressão do DACTE em Fast Report. Meus clientes pediram já a algum tempo algumas informações que eu sempre tenho que colocar manualmente após a atualização do componente e então estou postando aqui para se, caso acharem interessante, possam adicionar ao fonte. A primeira alteração se refere ao número da nota fiscal após a chave, o que facilita para o tomador do serviço localizar mais rapidamente a nota. procedure TdmACBrCTeFR.CarregaDadosNotasFiscais; var i: Integer; DoctoRem: string; NroNota: integer; // adicionado por Rodrigo Cardilo em 07/08/2014 begin { dados das Notas Fiscais } DoctoRem := FCTe.Rem.CNPJCPF; if Length(DoctoRem) > 11 then DoctoRem := FormatMaskText('##.###.###\/####-##;0;_', DoctoRem) else DoctoRem := FormatMaskText('###.###.###-##;0;_', DoctoRem); with cdsDadosNotasFiscais do begin Close; FieldDefs.Clear; FieldDefs.Add('tpDoc', ftString, 5); //Tipo Documento FieldDefs.Add('CNPJCPF', ftString, 18); //CNPJCPF FieldDefs.Add('Serie', ftString, 3); // Serie FieldDefs.Add('ChaveAcesso', ftString, 44); // Chave Acesso FieldDefs.Add('NotaFiscal', ftString, 9); // Numero Nota Fiscal FieldDefs.Add('TextoImpressao', ftString, 100); // Texto Impressao no Relatorio CreateDataSet; {$IFDEF PL_200} for i := 0 to CTe.infCTeNorm.infDoc.infNF.Count - 1 do begin with FCTe.infCTeNorm.infDoc.InfNF.Items[i] do {$ELSE} for i := 0 to CTe.Rem.InfNF.Count - 1 do begin with FCTe.Rem.InfNF.Items[i] do {$ENDIF} begin Append; FieldByName('tpDoc').AsString := 'NF'; FieldByName('CNPJCPF').AsString := FCTe.Rem.CNPJCPF; FieldByName('Serie').AsString := serie; FieldByName('ChaveAcesso').AsString := ''; FieldByName('NotaFiscal').AsString := nDoc; { Alterado por Jose Nilton Pace em 16/05/2013 } FieldByName('TextoImpressao').AsString := 'NF ' + DoctoRem + ' '+ serie+ ' / ' + FormatFloat('000000000', StrToInt(nDoc)); (* FieldByName('TextoImpressao').AsString := 'NF ' + DoctoRem + ' ' + FormatFloat('000', StrToInt(serie)) + ' / ' + FormatFloat('000000000', StrToInt(nDoc)); *) end; Post; end; {$IFDEF PL_200} for i := 0 to CTe.infCTeNorm.infDoc.InfNFE.Count - 1 do begin with FCTe.infCTeNorm.infDoc.InfNFE.Items[i] do {$ELSE} for i := 0 to CTe.Rem.InfNFE.Count - 1 do begin with FCTe.Rem.InfNFE.Items[i] do {$ENDIF} begin Append; FieldByName('tpDoc').AsString := 'NFe'; FieldByName('CNPJCPF').AsString := FCTe.Rem.CNPJCPF; FieldByName('Serie').AsString := copy(chave,23,3); FieldByName('ChaveAcesso').AsString := chave; FieldByName('NotaFiscal').AsString := copy(chave,26,9); NroNota := StrToInt(Copy(chave, 26, 9)); // Alterado por Rodrigo Cardilo em 07/08/2014 { Alterado por Jose Nilton Pace em 16/05/2013 } //FieldByName('TextoImpressao').AsString := 'NF-e '+chave ; // comentando { Alterado por Rodrigo Cardilo em 07/08/2014 } FieldByName('TextoImpressao').AsString := 'NF-e '+chave + ' - ' + IntToStr(NroNota); // continua o código A segunda alteração são as informações adicionais e/ou observações do CTE que não estavam sendo carregadas para a impressão. procedure TdmACBrCTeFR.CarregaInformacoesAdicionais; var vTemp: TStringList; IndexCampo: Integer; Campos: TSplitResult; BufferObs: string; TmpStr: string; wContingencia: string; wObs: string; wSubstituto: string; i:integer; begin with cdsInformacoesAdicionais do begin Close; FieldDefs.Clear; FieldDefs.Add('OBS', ftString, 2000); FieldDefs.Add('infAdFisco', ftString, 2000); FieldDefs.Add('ObsCont', ftString, 1800); CreateDataSet; Append; with FCTe.compl do begin wObs := xObs; {Adicionado por Rodrigo Cardilo em 07/08/2014} // Observações for i := 0 to ObsCont.Count - 1 do begin with ObsCont.Items[i] do TmpStr := TmpStr + XCampo + ': ' + XTexto + ';'; end; if Length(wObs) > 0 then wObs := wObs + ';'; wObs := wObs + TmpStr; TmpStr := ''; // Continua o Código Se acharem interessante adicionar ficaria muito bom pois acredito que outros possam ter essa necessidade. Em anexo estou postando o arquivo modificado ACBrCTeDACTEFRDM.rar
  20. Oi Juliomar, Não deu certo. Eu geralmente apago a pasta inteira e baixo tudo novamente. Ainda persiste o mesmo problema. Grato.
  21. Oi amigo, O SPED Fiscal é gerado a partir de informações do banco de dados e não tem absolutamente nada a ver como ACBRMonitor. O mesmo só tem a função de enviar a Nota Fiscal Eletrônica. Para maiores informações sobre o SPED Fiscal consulte o tópico específico: http://www.projetoacbr.com.br/forum/index.php?/forum/19-fiscal/ Atc,
  22. Olá amigos, Não estou conseguindo compilar/instalar o ACBRSerial após atualizar. Está dando o seguinte erro: Z:\Sistemas\Componentes\Delphi 2010\Acbr\Fontes\ACBrSerial\ACBrBALClass.pas(170) Error: E2003 Undeclared identifier: 'WriteLog' Esse mesmo erro está acontecendo na unit ACBrECFClass.pas. Se alguém souber como resolver fico grato desde já.
  23. Fala Galera, Resolvi a impressão de uma maneira simples. Fui no componente ACBrBoletoFCFortesFr.pas e lá selecionei o componente txtNomeSacadoCarne que é do tipo TRLMemo. Fui na propriedade Behavior e depois beSiteExpander e passei para False. Depois aumentei a altura (propriedade Height) para 40. Compilei e funcionou certinho. Se o pessoal responsável pela atualização puder mudar isso dá certinho. Abraço a todos
  24. Olá Isaque, Conforme eu citei anteriormente eu já consultei no manual http://www.bb.com.br/docs/pub/emp/empl/dwn/CbrVer04BB.pdf e na página 21 constam todos os retornos possíveis. Portanto o banco não tem problema algum e sim o componente ACBR. Eu mesmo fiz a alteração para me atender mas acho que deveria ser mudado no svn. Página 21 do manual fornecido pelo Banco: Códigos de movimento de retorno, informados pelo Banco do Brasil: 02 – Entrada confirmada, 03 – Entrada Rejeitada, 04 – Transferência de Carteira/Entrada, 05 – Transferência de Carteira/Baixa, 06 – Liquidação, 09 – Baixa, 11 – Títulos em Carteira (em ser), 12 – Confirmação Recebimento Instrução de Abatimento, 13 – Confirmação Recebimento Instrução de Cancelamento Abatimento, 14 – Confirmação Recebimento Instrução Alteração de Vencimento, 15 – Franco de Pagamento, 17 – Liquidação Após Baixa ou Liquidação Título Não Registrado, 19 – Confirmação Recebimento Instrução de Protesto, 20 – Confirmação Recebimento Instrução de Sustação/Cancelamento de Protesto, 23 – Remessa a Cartório (Aponte em Cartório), 24 – Retirada de Cartório e Manutenção em Carteira, 25 – Protestado e Baixado (Baixa por ter sido Protestado), 26 – Instrução Rejeitada, 27 – Confirmação do Pedido de Alteração de Outros Dados, 28 – Débito de Tarifas/Custas, 29 – Ocorrências do Sacado, 30 – Alteração de Dados Rejeitada, 44 – Título pago com cheque devolvido, 50 – Título pago com cheque pendente de compensação. Atc, Rodrigo Cardilo
  25. Olá amigos, Meu cliente recebeu um retorno hoje do Banco do Brasil CNAB 240 e um título veio com uma ocorrência que não consta na unit ACBrBancoBrasil.pas. O código da ocorrência é 17. Daí procurei no manual do Banco do Brasil (http://www.bb.com.br/docs/pub/emp/empl/dwn/CbrVer04BB.pdf) na página 21 e realmente tem alguns retornos que não possuem na lista conforme abaixo function TACBrBancoBrasil.CodOcorrenciaToTipo(const CodOcorrencia: Integer ) : TACBrTipoOcorrencia; begin case CodOcorrencia of 02: Result := toRetornoRegistroConfirmado; 03: Result := toRetornoComandoRecusado; 05: Result := toRetornoLiquidadoSemRegistro; 06: Result := toRetornoLiquidado; 07: Result := toRetornoLiquidadoPorConta; // 08: Result := ; // 08-Liquidação por Saldo 09: Result := toRetornoBaixado; 10: Result := toRetornoBaixaSolicitada; 11: Result := toRetornoTituloEmSer; 12: Result := toRetornoAbatimentoConcedido; 13: Result := toRetornoAbatimentoCancelado; 14: Result := toRetornoVencimentoAlterado; 15: Result := toRetornoLiquidadoEmCartorio; // 16: Result := ; // 16-Confirmação de alteração de juros de mora 19: Result := toRetornoRecebimentoInstrucaoProtestar; 20: Result := toRetornoDebitoEmConta; 21: Result := toRetornoRecebimentoInstrucaoAlterarNomeSacado; 22: Result := toRetornoRecebimentoInstrucaoAlterarEnderecoSacado; 23: Result := toRetornoEncaminhadoACartorio; 24: Result := toRetornoProtestoSustado; 25: Result := toRetornoJurosDispensados; // 26: Result := ; // 26-Alteração do número do título dado pelo Cedente (Seu número) – 10 e 15 posições 28: Result := toRetornoManutencaoTituloVencido; 31: Result := toRetornoDescontoConcedido; 32: Result := toRetornoDescontoCancelado; // 33: Result := ; // 33-Retificar desconto // 34: Result := ; // 34-Alterar data para desconto // 35: Result := ; // 35–Cobrar Multa // 36: Result := ; // 36–Dispensar Multa // 37: Result := ; // 37–Dispensar Indexador // 38: Result := ; // 38–Dispensar prazo limite para recebimento // 39: Result := ; // 39–Alterar prazo limite para recebimento 41: Result := toRetornoAcertoControleParticipante; // 42: Result := ; // 42–Alteração do número do documento do sacado (CNPJ/CPF) // 44: Result := ; // 44–Título pago com cheque devolvido 46: Result := toRetornoTituloPagoEmCheque; 72: Result := toRetornoTipoCobrancaAlterado; 96: Result := toRetornoDespesasProtesto; 97: Result := toRetornoDespesasSustacaoProtesto; 98: Result := toRetornoDebitoCustasAntecipadas; else Result := toRetornoOutrasOcorrencias; end; end; Se puderem incluir por favor fico grato. Atc,
×
×
  • 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.