Ir para conteúdo
  • Cadastre-se

hleorj

Moderadores
  • Total de ítens

    1.304
  • Registro em

  • Última visita

  • Days Won

    9

Tudo que hleorj postou

  1. Situação anterior do Svn FieldDefs.Add('vFrete' , ftString, 18); FieldDefs.Add('vOutro' , ftString, 18); FieldDefs.Add('vSeg' , ftString, 18); FieldDefs.Add('vDesc' , ftString, 18); FieldByName('vFrete').AsString := FormatFloatBr( Prod.vFrete ,'###,###,##0.00'); FieldByName('vSeg').AsString := FormatFloatBr( Prod.vSeg ,'###,###,##0.00'); FieldByName('vOutro').AsString := FormatFloatBr( Prod.vOutro ,'###,###,##0.00'); FieldByName('vDesc').AsString := ManterVDesc( Prod.vDesc , Prod.VUnCom , Prod.QCom); Situação Atual do Svn FieldDefs.Add('vFrete' , ftFloat); FieldDefs.Add('vOutro' , ftFloat); FieldDefs.Add('vSeg' , ftFloat); FieldDefs.Add('vDesc' , ftFloat); FieldByName('vFrete').AsString := FormatFloatBr( Prod.vFrete ,'###,###,##0.00'); FieldByName('vSeg').AsString := FormatFloatBr( Prod.vSeg ,'###,###,##0.00'); FieldByName('vOutro').AsString := FormatFloatBr( Prod.vOutro ,'###,###,##0.00'); FieldByName('vDesc').AsString := ManterVDesc( Prod.vDesc , Prod.VUnCom , Prod.QCom); Atentar para que as versões Fast com finais _dc serão oficiais dentro de pouco tempo.
  2. Esta atualização esta afetando as danfe nfe. O Arquivo DANFeNFCe.fr3 deve ser refatorado para acatar as condições anterior do svn.
  3. Isto já me ajuda numa implementação. Para o svn. Até um breve.
  4. Pode fornecer o xml deste ?
  5. Isto seria um xeque .. sem o mate , para as danfes ??
  6. mudou alguma coisa ?
  7. Rodrigo tem xml com protocolo de autorização ?
  8. Teria q começar do início , para sentir se código está igual ao original. E tentar executar o código.
  9. volta para anterior .. a rotina esta em estudos..to na espera do rodrigo para melhorar
  10. vc leu isto : { // comentado para rever posterior with FNFe.Emit do begin if FRecebemoDe = '' then FRecebemoDe := rllRecebemosDe.Caption; ..... ... na unit ACBrNFeDANFeRLRetrato;
  11. Estamos na espera de códigos de exemplo. para testar..para implementar corretamente .. ja que esta comentada no svn .
  12. Refatore a sua aplicação. Criando um novo datamodule ..e coloque nfe ou NFS nele. Seje feliz
  13. http://www.projetoacbr.com.br/forum/topic/25667-refatoração-danfe-fortes-duplicatas-pagt-outros/
  14. Ajustes para impressão de duplicatas no caso da forma de pagamento igual a outros; Fortes.rar
  15. O padrão diz que a principio não deveria utilizar outros para gerar parcelas , no meu caso sempre coloco outros para notas de devolução , entrada , simples remessa. mas felizmente, um padrão pode ser alterado , temos 2 padrões : Padrão Abcrnfe e Padrão UsuarioSac , e um deles será alterado Não se esqueça , o Acbr é open source, então pode alterado por você para atender as SUAS necessidade. mas as suas necessidade podem ser a de outros também. Então , poderia fornecedor arquivos xml's, desenvolvidos pela sua aplicação ?
  16. Faca um post novo. Que respondo nele corretamente.
  17. poderia abrir um novo post. Para os outros acompanhar o problema. Onde receberá uma dica para o seu sistema. Que pelo jeito você está deixando de analisar. Antes se pergunte para que serve a formas de pagamento : A vista , a prazo e outros. Especialmente a Forma de Pagamento : Outros . quando deverá ser utilizada;
  18. IInfelizmente não. Teria que desenvolver uma rotina para informar em dados adicionais, para está danfe.
  19. Eu consigo usar todas as condições sem alteração do código atual;
  20. Pode fornecer o xml ou pdf do resultado ? Para termos uma iéia do problema. Favor ver as regras do forum. ( abrir um novo post para o seu assunto )
  21. Reforçando , sempre precisamos de códigos novos : que tenha fácil entendimento , de baixa manutenção e altamente portável entre os componentes e rotinas.
  22. Rodrigoogini , poderia informar de códigos de exemplo ?
  23. hleorj

    DANFSE Fortes - Refatoração

    Segue Refatoração ACBrNFSeDANFSeRLRetrato.rar
  24. Segue Refatoração Fontes.rar
  25. Tive que criar uma função para remove espaços duplos para o meu caso, pois os dados que estão no xml. Os dados que estão no banco foram adicionados através de importação , onde pode haver : Tab -> chr( 9 ) ou Line Feed -> chr( 10 ) ou Carriage return-> chr( 12 ) ou Espaços duplos -> chr( 32 )+chr( 32 ). const NativeLineFeed = Char(#10); NativeCarriageReturn = Char(#13); Function RemoveDuplos( Const s : AnsiString ) : AnsiString; procedure SkipBlanks(var S: AnsiString; StringLength: Cardinal; var ReadIndex: Cardinal); begin while ReadIndex < StringLength do begin if S[ReadIndex] = NativeCarriageReturn then S[ReadIndex] := NativeLineFeed else if S[ReadIndex + 1] = NativeCarriageReturn then S[ReadIndex + 1] := NativeLineFeed; if (S[ReadIndex] < #33) and (S[ReadIndex] = S[ReadIndex + 1]) then Begin Inc(ReadIndex) End else exit; end; end; var StringLength, ReadIndex, WriteIndex: Cardinal; begin Result := S; ReadIndex := 1; WriteIndex := 1; StringLength := Length(Result); while ReadIndex <= StringLength do begin SkipBlanks( Result , StringLength, ReadIndex); Result[WriteIndex] := Result[ReadIndex]; Inc(WriteIndex); Inc(ReadIndex); end; SetLength(Result, WriteIndex - 1); end; Caso tenham este problema na importação, segue trecho de minha implementação : with Det.Items[I] do begin Nota_it_ent.Chave := 0; Nota_it_ent.situacao := ''; Fornecedor.codforn := Prod.cProd; Fornecedor.descricao := copy( RemoveDuplos( Prod.xProd) ,1,60); if Fornecedor.ManterTrans then Estoque.ObterProduto( Fornecedor.codigo ) else Estoque.ObterProduto( Prod.cProd); Ps : Implementar a função RemoveDuplos no componente requer mas testes. ( AVISADOS ? )
×
×
  • 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.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...