Ir para conteúdo
  • Cadastre-se

hleorj

Moderadores
  • Total de ítens

    1.303
  • 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...