-
Total de ítens
77 -
Registro em
-
Última visita
-
Days Won
2
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Posts postados por Edson Fernandes
-
-
-
Apliquei modificações no método GravarXML que devem chamar o método GerarXML (se necessário)
unction NotaFiscal.GravarXML(NomeArquivo: String; PathArquivo: String): Boolean; begin FNomeArq := CalcularNomeArquivoCompleto(NomeArquivo, PathArquivo); if EstaVazio(FXMLOriginal) then GerarXML; Result := TACBrNFe(TNotasFiscais(Collection).ACBrNFe).Gravar(FNomeArq, FXMLOriginal); end;
Daniel, pelo que eu consegui entender, o código que você mexeu verifica se já foi criado ou não o xml antes de gravar e caso não tenha sido criado, ele cria. Porém, aqui deu a mesma mensagem de erro e para que funcione eu tive que chamar dessa forma (conforme o amigo Ricardo mencionou anteriormente:
ACBrNFe1.NotasFiscais.Items[0].GerarXML();
ACBrNFe1.NotasFiscais.Items[0].GravarXML();
A propósito, atualizei o ACBR usando o trunk2 hoje de manhã (07/09/2015) e uso delphi 2010.
Muito obrigado
-
Olá, boa noite. Atualizei os componentes para o trunk2 (gostei muito porque até para usuários leigos igual a mim se torna um pouco mais fácil de entender o código) e ao testar o demo do acbrboleto percebi que quando eu seto as propriedades do componente "cedente.tipoinscricao' = 'pfisica' e insiro um cpf no campo "CNPJCPF", ao se compilar o projeto, na hora de abrir já me vem uma mensagem dizendo que o "CNPJ deve conter 14 dígitos (apenas números). Alguem poderia testar pra ver se aparece o mesmo erro? Sei que é meio incomum um CPF emitir boletos, mas tenho alguns clientes que o fazem. Muito Obrigado.
-
Funcionou aqui Regys, desculpa pela demora no feedback. Muito obrigado pela atenção dispensada.
-
Régys, desculpa pela demora. Sim, estou usando o acbrinstall. Muito obrigado pela atenção.
-
Uso delphi 2010.
Boa tarde, instalei o pacote do fortes ce que foi atualizado pelo Regys e ao tentar instalar os componentes me aparece: "Embarcadero Delphi for Win32 compiler version 21.0
Copyright (c) 1983,2009 Embarcadero Technologies, Inc.
C:\Componentes Delphi\COMPO RAR\ESPECIFICO_XE\fortesreport-ce-master\Source\RLReport.pas(27) Fatal: F1026 File not found: 'Qt.dcu'
Compilation failure" alguém sabe do que se trata a unit "qt"? <== o delphi foi instalado agora, o único componente que instalei é o fortes ce e estou no momento tentando instalar o acbr. Muito Obrigado. -
Pessoal, estou tentando migrar para o trunk2, uso o delphi 2010, porem ao tentar instalar usando o aplicativo "ACBrInstall_Trunk2", ao se marcar os relatórios do fortes me vem a mensagem: Embarcadero Delphi for Win32 compiler version 21.0
Copyright (c) 1983,2009 Embarcadero Technologies, Inc.
ACBr_NFeDanfeRL.dpk(78) Fatal: E2202 Required package 'FortesReportCE_Win32_D2010_vcl' not found ====coloquei so o fim, acho que da pra entender. Me desculpem se isso já esta explicado em outro lugar mas não achei. O problema é que fui no github e peguei a versão do fortes que tem lá, no entanto não consta em "https://github.com/fortesinformatica/fortesreport-ce" o package "'FortesReportCE_Win32_D2010_vcl'". Como faço agora? -
Relacionado a carta de correção, segue o código para se enviar a carta e recuperar o retorno da sefaz.
-
Verifique se o procedimento de cancelamento que você está mandando é parecido com esse, pois aqui ta tudo normal.
-
Pessoal, penso que a lista de doadores para o projeto acbr esteja desatualizada.
-
Luis, tente ser mais específico pra que possamos tentar te ajudar.
-
Olá, mais uma vez estou aqui torrando a paciência do administrador com um problema que me ocorre: Após atualizar o ACBR, eu sempre tenho que modificar a função "validarcpf" por conta de que me aparece uma mensagem dizendo que o CPF deve conter 11 dígitos. Já tentei resolver de tudo que é jeito mas não dou conta. Gostaria que fosse feito um teste observando o meu cenário: Minha conta no banco é pessoa física e penso que seja por isso que da o erro, acho que o acbr esta preparado pra processar o retorno de pessoa jurídica. Em anexo, está o arquivo que peguei do banco, enquanto eu não alterar a unit "ACBRVALIDADOR.PAS" não processa o retorno. Muito Obrigado.
-
sfwinfo, tem que incluir o código (pelo menos aqui) no final da unit principal do seu projeto. Antes da ultima linha (end.)
aqui ficou assim:
Initialization
rlconsts.setversion(3,70,'B');
end. <<<< ultima linha da unit principal - frmprincipal por exemplo
-
no componente principal da nota eletrônica: ACBRNFE1.configuracoes.geral.versaodf:=ve200;
e na hora de gerar o xml da venda:
with acbrnfe1.notasfiscais.add.nfe do
...
infnfe.versão:=2;
uso dessa forma.
-
Bom dia, com o delphi aberto, me parece que outro dia vi alguma coisa sobre a libeay32.dll, só me respondam uma coisa, o gerador de qrcode usa ela?
-
Olá Valdir, apanhei muito e a única forma que encontrei pra resolver foi calcular o hash do qrcode na mão mesmo. Sei que não é a forma correta, mas da pra usar como saída até que volte a funcionar normalmente. No início, eu calculava dessa forma que você esta usando, mas depois de uma atualização do componente, parou de funcionar. Pra resolver temporariamente, voltei a usar o "modo primitivo", mas quebra um galho.
*Note que dentro da unit acbrDanfceFortesFr.pas, ao invés de deixar ele calcular o hash usando o procedimento do componente, eu usei esta rotina de calculo do qrcode antes de chamar o procedimento de impressão pra que seje gerado um arquivo bitmap contendo o qrcode em forma de uma foto (imagem). Acredito que o problema esteja em "NotaUtil.GetUrlQrCode". Se precisar, chama no Skype.
-
Bom dia. Segue uma "ajudinha" pra quem está se matando pra fazer a manifestação e o download do xml. Meu Skype é [email protected], se precisar, chama aí. Sucesso pra todos nós!
-
Bom dia Juliana, bom, essa foi a forma que eu encontrei aqui pra conseguir contornar o problema. A questão é que não somos nós os usuários quem passa o cpf para a rotina ValidarCPF, mas sim o próprio componente acbrboleto. No meu caso, o retorno é do banco sicredi e não testei com outro banco, mas o que da a entender é que a rotina que faz a leitura do campo CNPJ/CPF no arquivo de retorno do banco está preparada para pegar um CNPJ (14 caracteres) e no meu caso, minha conta que esta como cedente no banco utiliza meu CPF.
-
Bom dia. Juliana, isso mesmo, os valores não batem. Esta linha digitável foi gerada antes de atualizar o ACBR:
748-X 74893.10008 01323.208189 08731.431055 1 62110000025764 <== com esta eu consigo recolher lá no banco
e esta depois de atualizar:
748-X 74893.11428 01323.208189 08731.431089 2 62110000025764 <== esta aqui não
================================================================
-
Joao, desculpa eu entrar assim na conversa, mas aqui no meu delphi (2010) eu coloquei antes do end. (linha final) da unit principal do meu projeto assim:
Initialization
RLConsts.SetVersion(3,70,'B');
-
Eu também tenho o mesmo problema, gerei um boleto com a versão anterior, passa normal no banco. Ao se gerar o mesmo boleto, com as mesmas configurações (igual) com a versão atual, o código de barras muda. Pra resolver isso, eu tive que alterar a unit acbrboleto.pas
***** pessoal, eu sou bem novato nessa parte de mexer em componente, perdoem os modos "medonhos".
//////////////////////////
no cabeçalho da unit...
public
constructor Create(ACBrBoleto:TACBrBoleto);
destructor Destroy; override;property ACBrBoleto : TACBrBoleto read fACBrBoleto;
property con_linhadigitavel : String read fcon_linhadigitavel write fcon_linhadigitavel; //<===pra guardar a linha digitavel
property con_codbarras : String read fcon_codbarras write fcon_codbarras; //<===== pra guardar o código de barras////////////////////////////////////////////////////////////
no objeto tacbrtitulo:
{ TACBrTitulo }
TACBrTitulo = class
private
fInstrucao1 : String;
fInstrucao2 : String;
fInstrucao3 : String;
fLocalPagamento : String;
fcon_linhadigitavel:string; //gambiarra conectiva
fcon_codbarras:string; //gambiarra conectiva...
*********************************************
com isso, obtive dois novos campos dentro do titulo: con_CodBarras e con_LinhaDigitavel.
na hora de gerar o titulo (criar o boleto) eu seto os valores dos dois campos novos:
** procedure ...gerarboleto
begin
Titulo := ACBrBoleto1.CriarTituloNaLista;
with Titulo do
begin//la no fim, depois de informar a parcela, valor, data, etc...
con_CodBarras := acbrboleto1.Banco.MontarCodigoBarras( Titulo );
con_LinhaDigitavel := acbrboleto1.Banco.MontarLinhaDigitavel( con_CodBarras,Titulo );
......
end;
**********************************************************
pronto, guardei os dois campos e na hora de gerar o relatório, eu peço via código pra preencher os campos usando os valores obtidos na hora da geração do titulo
////////// acbrboletofcfortesfr.pas
procedure TACBrBoletoFCFortesFr.RLBand2BeforePrint(Sender: TObject;
var PrintIt: boolean);
//Var
// CodBarras, LinhaDigitavel : String;
begin
with fBoletoFC.ACBrBoleto do
begin
//CodBarras := Banco.MontarCodigoBarras( Titulo ); //<=== isso monta o código errado
//LinhaDigitavel := Banco.MontarLinhaDigitavel( CodBarras,Titulo ); //<== isso monta o código erradoimgBanco3.Picture.Assign(imgBanco2.Picture);
fBoletoFC.CarregaLogo( imgBanco3.Picture, Banco.Numero );
txtNumeroBanco3.Caption := txtNumeroBanco2.Caption;
txtLocalPagamento3.Lines.Text := lblLocalPagto.Lines.Text;
txtDataVencimento3.Caption := txtDataVencimento2.Caption;
txtNomeCedente3.Caption := txtNomeCedente2.Caption;
txtEndCedente1.Caption := txtEndCedente.Caption ;
txtCodigoCedente3.Caption := txtCodigoCedente2.Caption;
txtDataDocumento3.Caption := txtDataDocumento2.Caption;
txtNumeroDocumento3.Caption := txtNumeroDocumento2.Caption;
txtEspecie3.Caption := txtEspecie2.Caption;
txtAceite3.Caption := txtAceite2.Caption;
txtDataProcessamento3.Caption := txtDataProcessamento2.Caption;
txtNossoNumero3.Caption := txtNossoNumero2.Caption;
txtUsoBanco3.Caption := txtUsoBanco2.Caption;
txtCarteira3.Caption := txtCarteira2.Caption;
txtEspecieDoc3.Caption := txtEspecieDoc2.Caption;
txtValorDocumento3.Caption := txtValorDocumento2.Caption;
txtNomeSacado3.Caption := txtNomeSacado2.Caption;
txtEnderecoSacado3.Caption := txtEnderecoSacado2.Caption;
txtCidadeSacado3.Caption := txtCidadeSacado2.Caption;
txtCpfCnpjSacado3.Caption := txtCpfCnpjSacado2.Caption;imgCodigoBarra.Caption := titulo.con_CodBarras; //<== isso foi a gambiarra
txtLinhaDigitavel.Caption := titulo.con_LinhaDigitavel; //<== gambiarra
txtInstrucoes3.Lines.Text := txtInstrucoes2.Lines.Text;
end;
end;*********** pessoal, mas uma vez, me desculpem pela bagunça, mas aqui funciona. se precisarem, eu posto as units pra que sejam comparadas
-
Olá, tenho um problema já faz tempo ao se processar o retorno do banco 748 - Sicredi. Sempre que tento processar o retorno do banco, me é mostrada a mensagem "CPF deve ter 11 dígitos. (Apenas Números)".
Para contornar este problema, tenho que fazer uma alteração na unit "acbrvalidador.pas" que está dentro da pasta acbr\fontes\diversos.
********************************************************
Procedure TACBrValidador.ValidarCPF ;
Var DV1, DV2 : AnsiString ;
begin
if fsAjustarTamanho then
fsDocto := padR( fsDocto, 11, '0') ;//assumo que se tiver maior que 11 caracteres, veio um cpf do estilo banco sicredi que preenche com zeros a esquerda até completar 14 caracteres
if Length( fsDocto ) > 11 then
fsDocto:=copy(fsDocto,4,11); //<==== peço pra olhar da posição 4 pra frente
if (Length( fsDocto ) <> 11) or ( not StrIsNumber( fsDocto ) ) then
// if (Length( fsDocto ) <> 11) then
begin
fsMsgErro := 'CPF deve ter 11 digitos. (Apenas numeros)' ;
exit
end ;if pos(fsDocto,'11111111111.22222222222.33333333333.44444444444.55555555555.'+
'66666666666.77777777777.88888888888.99999999999.00000000000') > 0 then
begin
fsMsgErro := 'CPF inválido !' ;
exit ;
end ;Modulo.MultiplicadorInicial := 2 ;
Modulo.MultiplicadorFinal := 11 ;
Modulo.FormulaDigito := frModulo11 ;
Modulo.Documento := copy(fsDocto, 1, 9) ;
Modulo.Calcular ;
DV1 := IntToStr( Modulo.DigitoFinal ) ;Modulo.Documento := copy(fsDocto, 1, 9)+DV1 ;
Modulo.Calcular ;
DV2 := IntToStr( Modulo.DigitoFinal ) ;fsDigitoCalculado := DV1+DV2 ;
if (DV1 <> fsDocto[10]) or (DV2 <> fsDocto[11]) then
begin
fsMsgErro := 'CPF inválido.' ;if fsExibeDigitoCorreto then
fsMsgErro := fsMsgErro + '.. Digito calculado: '+fsDigitoCalculado ;
end ;
end;********************************************************
Funciona beleza, mas sempre que atualizo o acbr tenho problemas. Obrigado!
-
-
Boa Tarde amigos.
Estamos tentando instalar o NFCE no nosso primeiro cliente em modo de produção, mas estou com uma dificuldade para fazer o cancelamento da nota.
O Sefaz do Amazonas está me retornando o seguinte erro "A data do evento nao pode ser maior que a data do processamento". Em homologação estou enviando para o Sefaz do RS e o cancelamento está ocorrendo normalmente.
Obrigado
Você já verificou a hora do seu computador pra ver se está com o mesmo horário de Manaus?
Arquivo Não Encontrado
em ACBrNFe
Postado
Olá, bom dia. Só para complementar, aconteceu o mesmo num cliente e descobri que tava com problema nos arquivos dos Schemas, fiz novamente o download dos schemas e resolveu o problema.