-
Total de ítens
1.303 -
Registro em
-
Última visita
-
Days Won
9
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Posts postados por hleorj
-
-
Pode ser agora a minha instalacao do componente
-
[DCC Fatal Error] Unit1.pas(12): F1026 File not found: 'ACBrDFeUtils.dcu'
-
Boa tarde Henrique,
Altere a linha: Documento := Trim(NotaUtil.LimpaNumero(Documento));
para: Documento := Trim(DFeUtil.LimpaNumero(Documento));
e tenta compilar novamente.
[DCC Error] Unit1.pas(930): E2003 Undeclared identifier: 'DFeUtil'
-
Documento := Trim(NotaUtil.LimpaNumero(Documento));
Na Compilacao do Demo
Unit1.pas
procedure TForm1.btnConsCadClick(Sender: TObject);
-
Estou com o mesmo problema, a nfe é autorizada normal e quando imprimi o danfe alguns itens sai com o valor unitário zerado. Consultei no portal da nota fiscal eletrônica a nfe e no portal a nota esta com todos os valores corretos. Acredito que o problema seja somente no danfe! Alguem tem alguma solução?
atualize o componente.
-
-
Boa Tarde , Italo
Mas e um problema a menos para resolver. Onde todos estarão cientes que foi atualizando e pronto para testar.
Vida Longa ao Componente.
-
Caro Italo na sua atualizacao na unit pcnConversao
TpcnOrigemMercadoria = (oeNacional, oeEstrangeiraImportacaoDireta, oeEstrangeiraAdquiridaBrasil,
oeNacionalConteudoImportacaoSuperior40, oeNacionalProcessosBasicos,
oeNacionalConteudoImportacaoInferior40,
oeEstrangeiraImportacaoDiretaSemSimilar, oeEstrangeiraAdquiridaBrasilSemSimilar);
De
oeNacionalConteudoImportacaoInferior40,
oeNacionalConteudoImportacaoInferiorIgual40,
ja que a norma diz : 5 - Nacional, mercadoria ou bem com Conteúdo de Importação inferior ou igual a 40%;
grato pela sua grande ajuda ao componente.
-
Boa tarde a todos,
A unit pcnConversao já tem essas modificações e já esta disponivel para todos.
Basta atualizar os fontes.
Muito bom o seu trabalho caro italo.
-
Não poste alterações, poste o arquivo alterado, assim podemos comparar e enviar corretamente as alterações.
Caro regys ,
Melhor assim todos leem e farão seu comentários antes de testar. Quando eu quero uma alteração sempre VOU postar assim antes de pedir uma devida alteração do SVN.
E coloco
Ps:
CÓDIGO NÃO TESTADO.
Grato pelo seu cometário
-
Colocando a Nota Tecnica 2012/005 para funcionar em ambiente de Homologação a partir de : 10/12/12;
Em pcnConversao.pas
De
TpcnOrigemMercadoria = ( oeNacional, oeEstrangeiraImportacaoDireta,oeEstrangeiraAdquiridaBrasil);
Para
TpcnOrigemMercadoria = (
oeNacional,
oeEstrangeiraImportacaoDireta,
oeEstrangeiraAdquiridaBrasil,
oeNacionalConteudodeImportacaoMaior40,
oeNacionalProcessosProdutivos,
oeNacionalConteudodeImportacaoIgualInferior40,
oeEstrangeiraImportacaoDiretaSemSimilar,
oeEstrangeiraAdquiridaBrasilSemSimilar );
Criar um nova Constante
TpcnOrigemMercadoriaString : array[0..7] of String =(
'0',
'1',
'2',
'3',
'4',
'5',
'6',
'7' );
De
function OrigToStr(const t: TpcnOrigemMercadoria): string;
begin
result := EnumeradoToStr(t, ['0', '1', '2'], [oeNacional, oeEstrangeiraImportacaoDireta, oeEstrangeiraAdquiridaBrasil]);
end;
Para
function OrigToStr(const t: TpcnOrigemMercadoria): string;
begin
result := EnumeradoToStr2( t , TpcnOrigemMercadoriaString );
end;
De
function StrToOrig(var ok: boolean; const s: string): TpcnOrigemMercadoria;
begin
result := StrToEnumerado(ok, s, ['0', '1', '2'], [oeNacional, oeEstrangeiraImportacaoDireta, oeEstrangeiraAdquiridaBrasil]);
end;
Para
function StrToOrig(var ok: boolean; const s: string): TpcnOrigemMercadoria;
begin
result := TpcnOrigemMercadoria( StrToEnumerado2(ok , s, TpcnOrigemMercadoriaString ) );
end;
Ps: Atualização com otimização do Componente;
-
Caro carlos ,
O inicio do Iceberg
Na pcnProcNFe.pas
private
FGerador: TGerador;
FSchema: TpcnSchema;
FPathNFe: string;
FPathRetConsReciNFe: string;
FPathRetConsSitNFe: string;
// Novos campos
FinfProt : string;
fId :String;
FtpAmb: TpcnTipoAmbiente;
FverAplic: string;
FchNFe: string;
FdhRecbto: TDateTime;
FnProt: string;
FdigVal: string;
FcStat: integer;
FxMotivo: string;
.
.
.
published
property Gerador: TGerador read FGerador write FGerador;
property Schema: TpcnSchema read Fschema write Fschema;
property PathNFe: string read FPathNFe write FPathNFe;
property PathRetConsReciNFe: string read FPathRetConsReciNFe write FPathRetConsReciNFe;
property PathRetConsSitNFe: string read FPathRetConsSitNFe write FPathRetConsSitNFe;
// novo
property infProt : string Read FinfProt write FinfProt;
property Id : String Read fId write fId;
property tpAmb: TpcnTipoAmbiente read FtpAmb write FtpAmb;
property verAplic: string read FverAplic write FverAplic;
property chNFe: string read FchNFe write FchNFe;
property dhRecbto: TDateTime read FdhRecbto write FdhRecbto;
property nProt: string read FnProt write FnProt;
property digVal: string read FdigVal write FdigVal;
property cStat: integer read FcStat write FcStat;
property xMotivo: string read FxMotivo write FxMotivo;
end;
.
.
.
function TProcNFe.GerarXML: boolean;
.
.
.
if ProtLido then
begin
// Nova implementacao para atribuir as devidas tag
xProtNFe :=
(**)'';
if finfProt = 'infProt' then
xProtNFe := xProtNFe + '<'+finfProt+'>'
else
xProtNFe := xProtNFe + '<'+finfProt+fId+'">';
xProtNFe := xProtNFe +
(*********)'' + TpAmbToStr(FtpAmb)+''+
(*********)'' + FverAplic+''+
(*********)'' + FchNFe+''+
(*********)'' + FormatDateTime('yyyy-mm-dd"T"hh:nn:ss',FdhRecbto)+''+
(*********)'' + FnProt+''+
(*********)'' + FdigVal+''+
(*********)'' + IntToStr(FcStat)+''+
(*********)'' + FxMotivo+''+
(******)''+
{****}'';
end;
...
Em breve mais do ICEBERG
-
Caro carlos,
Temos aqui um ICEBERG, pois a minha solução NÃO irá atender o componente. Pelo que estou lendo, existem outras unit's que deveram ser atualizadas. Sendo que uma delas terá que ser adicionado algumas propriedades para funcionar corretamente a configuração da Tag ( infProt ou infProt Id ).
Até Breve
-
Obrigado pela informação.
Vou dar uma olhada no manual. Vou baixar os manuais e as atualizações.
Sabe me dizer pelo menos como reduzir o tamanho desta linha em especifico?
Sabe tambem se é obrigatorio ter icmst destacado por item? Ontem olhei no ultimo manual de integração e não vi.
Sai do trabalho ontem e fui tentar em casa como não tenho uma mesa e cadeira adequados meu estava como o corpo cansado. Preciso mesmo desta ajuda.
Obrigado
quote]
Sabe tambem se é obrigatorio ter icmst destacado por item? Ontem olhei no ultimo manual de integração e não vi.
-
Caro Carlos ,
Fiz um estudo da sua implementação
Segue a minha Sugestão para geração da Tag infProt Id. de acordo com manual de integração.
Sugiro criar uma Funcao em pcnConversao.pas para checar o órgão gerador ( Vide item 5.6 do manual pag. 86 ) e retornar a Tag infProt ou infProt Id.
Function GerarId ( Var sProtocolo : String ) : String;
var
IOrgaoGerador : Integer;
begin
IOrgaoGerador := StrToInt( Copy(sProtocolo , 1,1) );
// 1 - Secretaria de Fazenda Estadual
// 2 - Receita Federal
// 3 – SEFAZ Virtual RS
// 4 – SEFAZ Virtual RFB
case IOrgaoGerador of
1 : Result := '';
2 ,
3,
4 : Result := '' ;
else
Result := 'Erro';
end
end;
Altera Em pcnProcNFe;
function TProcNFe.GerarXML: boolean;
xProtNFe :=
(**)'' +
De (******)''+// + RetornarConteudoEntre(XMLinfProt.text, '') +
Para (******)GerarId( XMLinfProt2.text ) +
(*********)PreencherTAG('tpAmb', XMLinfProt.text) +
(*********)PreencherTAG('verAplic', XMLinfProt.text) +
(*********)PreencherTAG('chNFe', XMLinfProt.text) +
(*********)PreencherTAG('dhRecbto', XMLinfProt2.text) +
(*********)PreencherTAG('nProt', XMLinfProt2.text) +
(*********)PreencherTAG('digVal', XMLinfProt.text) +
(*********)PreencherTAG('cStat', XMLinfProt.text) +
(*********)PreencherTAG('xMotivo', XMLinfProt.text) +
(******)'' +
{****}'';
end;
if ProtLido then
begin
xProtNFe :=
(**)'' +
De (******)''+
Para (******)GerarId(FnProt ) +
(*********)''+TpAmbToStr(FtpAmb)+''+
(*********)''+FverAplic+''+
(*********)''+FchNFe+''+
(*********)''+FormatDateTime('yyyy-mm-dd"T"hh:nn:ss',FdhRecbto)+''+
(*********)''+FnProt+''+
(*********)''+FdigVal+''+
(*********)''+IntToStr(FcStat)+''+
(*********)''+FxMotivo+''+
(******)''+
{****}'';
end;
Altera Em pcnNFeW;
function TNFeW.GerarXml: boolean;
if nfe.procNFe.nProt <> '' then
begin
xProtNFe :=
(**)'' +
De (******)''
Para (******)GerarId(nfe.procNFe.nProt ) +
(*********)''+TpAmbToStr(nfe.procNFe.tpAmb)+''+
(*********)''+nfe.procNFe.verAplic+''+
(*********)''+nfe.procNFe.chNFe+''+
(*********)''+FormatDateTime('yyyy-mm-dd"T"hh:nn:ss',nfe.procNFe.dhRecbto)+''+
(*********)''+nfe.procNFe.nProt+''+
(*********)''+nfe.procNFe.digVal+''+
(*********)''+IntToStr(nfe.procNFe.cStat)+''+
(*********)''+nfe.procNFe.xMotivo+''+
(******)''+
{****}'';
(**)Gerador.wTexto(xProtNFe);
Gerador.wGrupo('/nfeProc');
end;
Muito agradecido por propor uma solução
ATENÇÃO CÓDIGO NÃO TESTADO.
-
Caro Carlos ,
Poderia nos dizer quais alterações que realizou para executarmos testes e ajustes.
Atentar que existe uma regra no manual de integração para não existência do id no xml.
Versão 4.0.1-NT2009.006 Pag. 46
Identificador da TAG a ser assinada, somente precisa ser informado se a UF assinar aresposta. Em caso de assinatura da resposta pela SEFAZ preencher o campo com o Nro do Protocolo, precedido com o literal “ID”
Grato
-
Pessoal valeu pelo retorno,
Mas pelas informações adquiridas não será possível mesmo fazer o que quero para não ficar dependendo dos e-mails dos fornecedores, e desculpe Italo realmente eu não li as normas técnicas e até pesquisei em alguns fóruns antes de começar esse post mas as informações que encontrei não me ficou claro, prefiro entrar nos fóruns e trocar ideias e conhecimento (acho que pra isso que ser os fóruns) com pessoas que tenham passado por situações na qual pretendo passar acho mais valido do que ficar lendo normas claro algumas são essências, realmente acho que nos anos 80 e 90 deveria ser complicado dou um grande valor para as pessoas que passar por esse época tendo somente livros para pesquisar e entendo os seus 4.9 mas VIVA A TECNOLOGIA!!!!
Valeu pessoal.
Caro Fabiano ..
Ler as Regras faz bem a saúde. Ainda mas em Nota Fiscal que esta tudo documentado. A leitura das normas iram te facilitar em muito as novas implementações.
-
É João Henrique,
Nos meus 4.9 cada dia que passa percebo que o pessoal não tem vontade de ler, e o que é pior as vezes não conseguem interpretar o que esta escrito.
Esse assunto sobre o Download de NFe já foi discutido várias vezes no fórum, as vezes somos mal educados pedindo para que realizem pesquisas no fórum antes de postar.
Hoje temos a internet, fóruns que discutem um determinado assunto, João, você já imaginou esse pessoal desenvolvendo programas na decada de 80 e 90, programando em Turbo Pascal por exemplo, sem internet?
Rs... pois é... somos da velha escola... lemos até bula de remédio... ops... mas isso todos deveriam fazer...
[]´s
Humm .. acho q vc era um bebe .. em 80 ou 90 ...rsrsr
-
Peça a ajuda de outros como mesmo problema.. com a aprovação deles também irá para o SVN;
Ps: Mudanças a caminho , Lutem pelo componente.
-
-
Estamos desenvolvendo uma rotina em que o cliente não precise ficar descompactando/salvando/procurando/abrindo arquivos xml para importar e dar entrada em seu estoque.
Importamos perfeitamente arquivos xml no acbr e daí fazemos a leitura dos dados.
Mas quando recebo o arquivo por email, direto no aplicativo, através dos componentes Indy TidPop3 e TIdAttachment salvando o arquivo no hd e depois abrindo no AcBR, este acusa muitos erros.
Descobri que o comp Indy inclui quebras de linhas no xml antes de salvar, inlcuisve quedas dentro das tags.
Tentei remover ou substituir mas os erros continuam.
Exemplo: 4543#$A#$DF>
Neste caso não dá pra substituir porque ficaria assim:
4543F>
Exemplo:
Neste caso não posso remover porque ficaria assim:
Alguem sabe alguma forma de configurar o Indy para não incluir quebras de linha?
Tente algo parecido conforme a minha rotina
procedure TGerenciar.SalvarNnfeCCe( sNome:String;sDocumento: Widestring );
Var
sArquivo : TextFile;
begin
//
// Cria a pasta em versoes futuras
if not DirectoryExists(PastaNfeCc) then ForceDirectories(PastaNfeCc);
AssignFile(sArquivo, PastaNfeCc + sNome +'-cce.xml');
Rewrite( sArquivo);
Write( sArquivo, AnsiToUTF8(sDocumento) );
CloseFile(sArquivo);
end;
Nos de feed
-
Favor de ler como se emitir uma nota em simples nacional;
No Grupo Icms
vc esta informando 500 – ICMS cobrado anteriormente por substituição tributária (substituído) ou por antecipação;
Entao o seu Cfop NÃO DEVER 5102;
Nesse caso a prática não seria correta ou o Sefaz não processaria a nota ?
Tenho notas aqui com CSOSN 500 e CFOP 5102 e até hoje não houve nenhuma recusa.
Att,
Sérgio
Nem vai haver por enquanto , mas ... Leia :
5405 Venda de mercadoria, adquirida ou recebida de terceiros, sujeita ao regime de substituição tributária, na condição de contribuinte-substituído5401 Venda de produção do estabelecimento em operação com produto sujeito ao regime de substituição tributária, na condição de contribuinte substituto
5402 Venda de produção do estabelecimento de produto sujeito ao regime de substituição tributária, em operação entre contribuintes substitutos do mesmo produto
5403 Venda de mercadoria, adquirida ou recebida de terceiros, sujeita ao regime de substituição tributária, na condição de contribuinte-substituto
5408 Transferência de produção do estabelecimento em operação com produto sujeito ao regime de substituição tributária
5409 Transferência de mercadoria adquirida ou recebida de terceiros em operação com mercadoria sujeita ao regime de substituição tributária
5410 Devolução de compra para industrialização em operação com mercadoria sujeita ao regime de substituição tributária
5411 Devolução de compra para comercialização em operação com mercadoria sujeita ao regime de substituição tributária
5412 Devolução de bem do ativo imobilizado, em operação com mercadoria sujeita ao regime de substituição tributária
5413 Devolução de mercadoria destinada ao uso ou consumo, em operação com mercadoria sujeita ao regime de substituição tributária.
5414 Remessa de produção do estabelecimento para venda fora do estabelecimento em operação com produto sujeito ao regime de substituição tributária
5415 Remessa de mercadoria adquirida ou recebida de terceiros para venda fora do estabelecimento, em operação com mercadoria sujeita ao regime de substituição tributária
Por dedução ao ler os codigos de Cfop :
Cfop 5405 e CSOSN 500 seriam uma combinação perfeita ?
5405 Venda de mercadoria, adquirida ou recebida de terceiros, sujeita ao regime de substituição tributária, na condição de contribuinte-substituído500 – ICMS cobrado anteriormente por substituição tributária (substituído) ou por antecipação;
Mas o cfop 5405 pode fazer outras combinações com outros codigos de Simples Nacional no caso do produto estiver sujeito ao regime de substituição tributária.
Sugiro a você, gigainfo , entrar em contato com o escritorio de contabilidade para saber como fazer as devidas correções nas suas nfe´s.
-
Boa tarde, Meus programas estavam funcionando corretamente até ontem quando eu fiz uma atualização do ACBRnfe via SVN, hoje não consegui emitir nenhuma nota, todas que tento emitir da a seguinte mensagem "total da nf difere do somatorio dos valores que compoe o valor total da nf". Alguém pode me dar uma Luz? foi feita alguma atualização ?
segue anexo um XML de um sistema que estava ok ontem e hoje ja não funcionou.
Favor de ler como se emitir uma nota em simples nacional;
No Grupo Icms
vc esta informando 500 – ICMS cobrado anteriormente por substituição tributária (substituído) ou por antecipação;
Entao o seu Cfop NÃO DEVER 5102;
No grupo ipi
você esta informando 50 para uma nfe de simples nacional ( 50-Saída tributada )
O correto seria 53-Saída não-tributada
No Grupo Pis
você esta informando 01 para uma nfe de simples nacional ( 01 – Operação Tributável (base
de cálculo = valor da operação
alíquota normal
(cumulativo/não cumulativo)); )
O correto seria 08 - Operação Sem Incidência da Contribuição;
No Grupo Confins
você esta informando 01 para uma nfe de simples nacional ( 01 – Operação Tributável (base
de cálculo = valor da operação
alíquota normal
(cumulativo/não cumulativo)); )
O correto seria 08 - Operação Sem Incidência da Contribuição;
-
Alguns Ovos serão quebrados no caminho , estejam atentos , novas mudanças em curso.
Erro apos Atualizacao
em ACBrNFe
Postado
vou instalar novamente o componente no xe2.
grato