-
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
-
-
-
-
Daniel , estou desenvolvendo um outra solução , no componente ja temos toda a solução do problema.
Existe a Propriedade : CasasDecimais ( Tag , _Mask_qcom, _Mask_vUnCom , _qcom, _vUnCom )
fIFormatacao = Tag ( 0 ou 1 )
FCasasDecimaisqCom = _qcom
FCasasDecimaisvUnCom =_vUnCom
fMask_qCom = _Mask_qcom
fMask_vUnCom = _Mask_vUnCom
cdsItens.FieldByName('QTDE').AsString := FormatQuantidade( Prod.qCom);
cdsItens.FieldByName('VALOR').AsString := FormatValorUnitario( Prod.vUnCom);Function TfrlDANFeRLRetrato.FormatQuantidade( dValor : Double ) : String;
begin
case fIFormatacao of
0 : Result := FormatFloatBr( dValor , format(sDisplayFormat, [FCasasDecimaisqCom, 0]));
1 : Result := FormatFloatBr( dValor , fMask_qCom);
end;
end;
Function TfrlDANFeRLRetrato.FormatValorUnitario( dValor : Double ) : String;
begin
case fIFormatacao of
0 : Result := FormatFloatBr( dValor , format(sDisplayFormat, [FCasasDecimaisvUnCom, 0]));
1 : Result := FormatFloatBr( dValor , fMask_vUnCom);
end;
end;Testando ..a solução;
Em Danfe Fast Report teremos a mesma solução um pouco diferente mas aregra sera a mesma
Function TACBrNFeFRClass.FormatQuantidade( dValor : Double ) : String;
begin
case FDANFEClassOwner.CasasDecimais.tag of
0 : Result := FormatFloatBr( dValor , format(sDisplayFormat, [FDANFEClassOwner.CasasDecimais._qCom, 0]));
1 : Result := FormatFloatBr( dValor , FDANFEClassOwner.CasasDecimais._Mask_qCom);
end;
end;
Function TACBrNFeFRClass.FormatValorUnitario( dValor : Double ) : String;
begin
case FDANFEClassOwner.CasasDecimais.tag of
0 : Result := FormatFloatBr( dValor , format(sDisplayFormat, [FDANFEClassOwner.CasasDecimais._vUnCom, 0]));
1 : Result := FormatFloatBr( dValor , FDANFEClassOwner.CasasDecimais._Mask_vUnCom);
end;
end; -
Gostei do seu sDisplayFormat
.. vai QUASE com uma ideia de refatoração para Danfe Fast Report. onde teremos a correção da formatação dos milhares e decimais;
Segue imagem de teste com erros nos campos ( valor total , Base , Valor icms );
se fosse alterado os tipo ( integer )
CasasDecimais._qCom := 4
CasasDecimais._vUnCom := 10;para String;
CasasDecimais._qCom := '###,###,###,##0.0000###';
CasasDecimais._vUnCom := '###,###,###,##0.00000######';Talvez seja uma solução , mas....( Façam seus comentários para ajudar na tomada de decisão )
-
1
-
-
Danfe em Fortes
Segue unit para testes
Danfe Fortes para os casos acima
-
Segue para testes;
Nova propriedade
fQuebraLinhaEmVeiculos : Boolean;
Novo tratamento em ManterVeiculos para os casos acima.
-
-
Regis , não pode ser criada uma propriedade para controlar o ManterVeiculo ? Para este caso de quebrar ou não. Não esqueça que existe o ManterVeiculo
na Danfe, em Fortes Report também.
Exemplo :
Function TACBrNFeFRClass.ManterVeiculos( inItem: integer ) : String;
Var
sQuebraLinha : String;
begin
Result := '';
{ detalhamento especifico de veículos }
with FNFe.Det.Items[inItem].Prod do
begin
if veicProd.chassi > '' then
begin// Criar a propriedade no componente bQuebraLinha
if bQuebraLinha then
sQuebraLinha := ';'
else
sQuebraLinha := ' - '//----------------
Result := sQuebraLinha;
Result := Result + ACBrStr('TIPO DE OPERAÇÃO: ' + VeiculosTipoOperStr( veicProd.tpOP ) ) + sQuebraLinha;
Result := Result + ACBrStr('CHASSI: ' )+ veicProd.chassi + sQuebraLinha;
Result := Result + ACBrStr('CÓDIGO DA COR: ' )+ veicProd.cCor + sQuebraLinha;
Result := Result + ACBrStr('NOME DA COR: ') + veicProd.xCor + sQuebraLinha;
Result := Result + ACBrStr('POTÊNCIA DO MOTOR: ') + veicProd.pot + sQuebraLinha;
Result := Result + ACBrStr('CILINDRADAS: ') + veicProd.Cilin + sQuebraLinha;
Result := Result + ACBrStr('PESO LÍQUIDO: ') + veicProd.pesoL + sQuebraLinha;
Result := Result + ACBrStr('PESO BRUTO: ' )+ veicProd.pesoB + sQuebraLinha;
Result := Result + ACBrStr('NÚMERO DE SÉRIE: ') + veicProd.nSerie + sQuebraLinha;
Result := Result + ACBrStr('COMBUSTÍVEL: ' + VeiculosCombustivelStr( veicProd.tpComb ) ) + sQuebraLinha;
Result := Result + ACBrStr('NÚMERO DO MOTOR: ') + veicProd.nMotor + sQuebraLinha;
Result := Result + ACBrStr('CAP. MÁX. TRAÇÃO: ') + veicProd.CMT + sQuebraLinha;
Result := Result + ACBrStr('DISTÂNCIA ENTRE EIXOS: ') + veicProd.dist + sQuebraLinha;
Result := Result + ACBrStr('ANO DO MODELO: ' )+ IntToStr(veicProd.anoMod) + sQuebraLinha;
Result := Result + ACBrStr('ANO DE FABRICAÇÃO: ') + IntToStr(veicProd.anoFab) + sQuebraLinha;
Result := Result + ACBrStr('TIPO DE PINTURA: ') + veicProd.tpPint + sQuebraLinha;
Result := Result + ACBrStr('TIPO DE VEÍCULO: ' + VeiculosTipoStr( veicProd.tpVeic ) )+ sQuebraLinha;
Result := Result + ACBrStr('ESPÉCIE DO VEÍCULO: ' +VeiculosEspecieStr( veicProd.espVeic )) + sQuebraLinha;
Result := Result + ACBrStr('VIN (CHASSI): ' + VeiculosVinStr( veicProd.VIN ) )+ sQuebraLinha;
Result := Result + ACBrStr('CONDIÇÃO DO VEÍCULO: ' +VeiculosCondicaoStr( veicProd.condVeic)) + sQuebraLinha;
Result := Result + ACBrStr('CÓDIGO MARCA MODELO: ') + veicProd.cMod + sQuebraLinha;
Result := Result + ACBrStr('CÓDIGO COR DENATRAN: ' +VeiculosCorDENATRANSTr( veicProd.cCorDENATRAN )) + sQuebraLinha;
Result := Result + ACBrStr('CAP.MÁXIMA DE LOTAÇÃO: ') +IntToStr(veicProd.lota) + sQuebraLinha;
Result := Result + ACBrStr('RESTRIÇÃO: ' +VeiculosRestricaoStr( veicProd.tpRest ) )+ ';';
end;
end;
end; -
Apos Atualização; O Campo Prod.nItemPed foi modificado o tipo. Antes era Integer passou para String;
Ocasionando erro de compilacao do demo nfe.
De
trvwNFe.Items.AddChild(NodeItem,'nItemPedido=' +InToStr(Prod.nItemPed)) ;
Para
trvwNFe.Items.AddChild(NodeItem,'nItemPedido=' +Prod.nItemPed) ;
O mesmo erro na versão em Lasarus .
-
Seja bem vindo ao mundo open-source. Espero que seje feliz na sua empreitada.
-
Obrigado
-
C:\Delphi Files\Componentes - DXE10\Acbr\Fontes\ACBrComum\ACBrUtil.pas(3365)
Warning: W1050 WideChar reduced to byte char in set expressions. Consider using 'CharInSet' function in 'SysUtils' unit.
C:\Delphi Files\Componentes - DXE10\Acbr\Fontes\ACBrDFe\ACBrDFeWebService.pas(377) Error:
E2003 Undeclared identifier: 'ACBrStrToUTF8'
-
Post Somente as AcbrNfeDanfeRLClass, AcbrNfeDanfeRLRetrato, AcbrNFEDanfeClass e AcbrNfeDanfeRL;
Atualize elas para ficar compativel com svn, Ficou dificil de entender;
-
Caro hleorj, atualmente estou utilizando para visualização do DANFE o "ACBrNFeDANFeRL".
Juliomar, fiz a atualização do FortesReport para revisão atual "85" mas o problema ainda persiste. Até tentei debugar para tentar localizar o problema, mas até agora sem sucesso.
Reportarei esse problema ao Marcio e qualquer novidade posto aqui.Sei que o problema não tem nada haver com o ACBr. Pois fiz um relatório para testes (projeto novo) utilizando apenas o componente "FortesReport" a qual também apresentou o mesmo problema.
Grato
Pq nao usa as feitas em FastReport ?
-
Bom dia André,
Poderia por gentileza anexar o pacote do Rave. Atualmente estou utilizando o FortesReport mas o mesmo está com um problema no número de copias. Ex: Caso eu peça 2 copias, está sendo impresso 4, se eu pedir 3 está imprimindo 9 copias.
Caso esse pacote do Rave funcione como antes (Trunk1) irei utilizá-lo por enquanto, pois meus clientes estão reclamando bastante desse problema.
Qual danfe q apresenta este erro de impressão em duplicidade ?
-
No xml_primeira_parcela_avista ..esta sendo informado as Tag Fatura e Duplicata.. ao mesmo tempo. Verifique o que deseja no seu sistema.
-
-
Apos Atualização; O Campo Prod.nItemPed foi modificado o tipo. Antes era Integer passou para String;
Ocasionando erro de compilacao do demo nfe.
De
trvwNFe.Items.AddChild(NodeItem,'nItemPedido=' +InToStr(Prod.nItemPed)) ;
Para
trvwNFe.Items.AddChild(NodeItem,'nItemPedido=' +Prod.nItemPed) ;
-
Post o seu XML para análise
-
Só para esclarecer...
Nos sistemas dos nobres colegas, também não estão imprimindo os valores referentes so ICMS ST no DANFE ?
1 - Danfe´s com impressão dos devidos campos,. Estará fora do padrão .
2 - Danfe´s do componente não saem impressos os devidos campos.
Você pode alterar as Danfe´s para atender as suas necessidades. conforme o manual de integração.
-
Segue Link :
http://www.receita.fazenda.gov.br/Legislacao/Resolucao/2007/CGSN/Resol10.htm
§ 5º Na hipótese de devolução de mercadoria a contribuinte não optante pelo Simples Nacional, a ME e a EPP farão a indicação no campo "Informações Complementares", ou no corpo da Nota Fiscal Modelo 1, 1-A, ou Avulsa, da base de cálculo, do imposto destacado, e do número da Nota Fiscal de compra da mercadoria devolvida, observado o disposto no art. 10.
-
Bom dia,
Os campos obrigatórios e demais padrões do DANFE estão definidos no "Manual de Orientações do Contribuinte".
http://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=33ol5hhSYZk=
Bom dia Dércio,
Fiz uma alteração no DANFE em Quick Report, agora quando for Simples Nacional em vez de imprimir a BC do ICMS e valor do ICMS vai imprimir a BC ICMS ST e o valor do ICMS ST.
Detalhe essa alteração foi feita no DANFE que esta disponível no repositório Trunk2.
Bom dia,
Também é comum, em notas de devolução de uma empresa do Simples Nacional para uma empresa do regime normal, que se preencha a Base de Cálculo e Valor do ICMS, a fim de a empresa do regime normal creditar novamente o imposto.
Nesse caso usamos o CSOSN 900, e preenchemos os campos do ICMS normal, sem ICMS ST.
Com essa alteração, o ICMS será mostrado no DANFE?
Empresas enquadradas o regime de simples nacional NÃO fazem destaque da base de cálculo do ICMS e o valor do ICMS , assim como a taxa do IPI e valor do IPI conforme a LEI do Simples Nacional. Entre em contato com o contador para tomar ciência dos procedimento de devolução.
-
Leia o manual de integração. e verifique o padrão da DANFE.
-
Novo suporte nas danfes Fast Report
em ACBrNFe
Postado · Editado por hleorj
Adicionado suporte as propriedades: CasasDecimais.Tag, CasasDecimais._Mask_qCom e CasasDecimais._Mask_vUnCom , CasasDecimais._qCom , CasasDecimais._vUnCom
Novos campos para o suporte ( sDisplayFormat , iFormato, Mask_qCom, Mask_vUnCom ) em cdsParametros
Alguns campos mudaram o tipo de Float para String;
Criadas as DAnfes que darão suporte acima( todas com a terminação de _Dc.fr3 ( decimal ):
DANFePaisagem_Basic_Dc.fr3
DANFePaisagem_Dc.fr3
DANFeRetrato_Basic_Dc.fr3
DANFeRetrato_Dc.fr3
DANFeRetratoFS_Basic_Dc.fr3
DANFeRetratoFS_Basic_Dc.fr3
Nas danfes mudanças na formatação de campos para aceitar a separação de numeral para
ficar de acordo como o exemplo;
De : 33235,00
Para : 33.325,00
ou
De : 33235,00
Para : 33.325,0000
Configurando o novo suporte
Resultado dos ajustes
Segue unit e danfes para testes
Report.rar
== Atenção fazer teste exaustivos antes de colocar em produção ==