Jump to content

2 Dia do ACBr

Visite Stands dos Patrocinadores
Control iD, CS Devices, Elgin, Gertec, Bematech, Jetway, PlugMobile, Epson, Custom e Sweda
Inscreva-se

Nova Loja Oficial
loja.projetoacbr.com.br
Ajude o projeto a crescer, com estilo

Comprar

Balança SM100 performance surpreendente

Tecnologia Japonesa   Teclado e Visor resistentes a água
Consumo inteligente de etiquetas   Baixo custo de manutenção
Comunicação Ethernet e WIFI independentes

Saiba mais

Impressora de Etiquetas ELGIN - L42 PRO

Protocolos PPLA, PPLB, ZPL, EPL (automático)
Porta USB padrão Opcionais: Ethernet, Serial, Paralela
Sensor de Etiquetas Móvel Garantia de 18 meses

Saiba mais

Minas Software

ANSWERED Referenciar 2 DT_DOC em blocos with

Recommended Posts

Em 29/12/2010 at 11:21, Isaque Pinheiro disse:

 

 

 

with RegistroC405New do

begin

   DT_DOC := Date;


   with RegistroC460New do

   begin

      DT_DOC := Date;

   end;

end;

[/code]

 

Olá, boa tarde, estou fazendo isso porém aqui 

with REgistroC460New do
              begin

                  NumeroCF := copy(cdsC460NUMERO.AsString, 3, 7);//Usando o copy para tirar o CF e no -3 do final do cupom
                  NUM_DOC := StringReplace(NumeroCF, '-', '', [rfReplaceAll]);////AQUI ELE PEGA UM OUTRO NÚMERO

Parece que o NUM_DOC pega um valor que não consigo entender, veja na img abaixo, se alguém puder ajudar ficarei grato.

image.thumb.png.b893bfb8ad16ed478e8ab7ad01da5a34.png


 

Share this post


Link to post
Share on other sites

Boa tarde.

Para mim sua postagem esta um pouco confusa...de qualquer forma chegou a fazer um teste no demo ?

Att.

  • Like 1

Consultora SAC ACBr

Juliana Tamizou
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

Share this post


Link to post
Share on other sites

Olá boa tarde, vou tentar explicar melhor

Estou fazendo assim

With RegistroC405New do

begin

          
  with REgistroC460New do

  begin
    //É aqui que esta o problema ele esta pega o que esta sendo passado    
    NUM_DOC := cdsC460NUMERO.AsString;    

    //Nas demais linha pega o conteudo certo
    COD_MOD := dmECF.cdsConfigMODELO_ECF.AsString; //ok
    VL_DOC := cdsC460VALORNOTA.AsFloat;            //ok
    NOM_ADQ := cdsC460NOME.AsString;               //ok
    e etc...   
  end;          
end;

 

Parece que o NUM_DOC do C460 esta pegando o campo do C405(posição CRO).

 

Deu para entender?

 

Share this post


Link to post
Share on other sites

With RegistroC405New do

begin

          
  with REgistroC460New do

  begin
    //É aqui que esta o problema ele não esta pega o que esta sendo passado    
    NUM_DOC := cdsC460NUMERO.AsString;    

    //Nas demais linha pega o conteudo certo
    COD_MOD := dmECF.cdsConfigMODELO_ECF.AsString; //ok
    VL_DOC := cdsC460VALORNOTA.AsFloat;            //ok
    NOM_ADQ := cdsC460NOME.AsString;               //ok
    e etc...   
  end;          
end;

 

Parece que o NUM_DOC do C460 esta pegando o campo do C405(posição CRO).

 

Deu para entender?

Share this post


Link to post
Share on other sites

Boa tarde.

Recomendo realizar novos testes usando valores fixos para facilitar seu debug e usando o demo.

Em nenhum momento é feita a substituição dos valores passados ao componente.

Att.

 

  • Like 1

Consultora SAC ACBr

Juliana Tamizou
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

Share this post


Link to post
Share on other sites
18 horas atrás, Minas Software disse:

With RegistroC405New do

begin

          
  with REgistroC460New do

Eu sugiro você evitar o uso do With em seu código de produção, principalmente em queries e registros SPED, SINTEGRA, etc...

Não que ele não possa ser utilizado. Usamos ele nos aplicativos de exemplo e até em códigos do componente.

Mas muitas vezes o código acaba ficando mais confuso.

Altere o seu código pra algo como:

var
  UmRegC405: TRegistroC405;
  UmRegC460: TRegistroC460;
begin
(...)

  UmRegC405 := RegistroC405New;
  UmRegC460 := REgistroC460New;
  UmRegC460.NUM_DOC := cdsC460NUMERO.AsString;
  UmRegC460.COD_MOD := dmECF.cdsConfigMODELO_ECF.AsString; 
  UmRegC460.VL_DOC := cdsC460VALORNOTA.AsFloat;            
  UmRegC460.NOM_ADQ := cdsC460NOME.AsString;               
(...)
end;

 

  • Like 2

[]'s

Consultor SAC ACBr

Elton
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.

Share this post


Link to post
Share on other sites
4 minutos atrás, EMBarbosa disse:

Eu sugiro você evitar o uso do With em seu código de produção, principalmente em queries e registros SPED, SINTEGRA, etc...

Não que ele não possa ser utilizado. Usamos ele nos aplicativos de exemplo e até em códigos do componente.

Mas muitas vezes o código acaba ficando mais confuso.

Altere o seu código pra algo como:

var
  UmRegC405: TRegistroC405;
  UmRegC460: TRegistroC460;
begin
(...)

  UmRegC405 := RegistroC405New;
  UmRegC460 := REgistroC460New;
  UmRegC460.NUM_DOC := cdsC460NUMERO.AsString;
  UmRegC460.COD_MOD := dmECF.cdsConfigMODELO_ECF.AsString; 
  UmRegC460.VL_DOC := cdsC460VALORNOTA.AsFloat;            
  UmRegC460.NOM_ADQ := cdsC460NOME.AsString;               
(...)
end;

 

Ok obrigado pela dica, vou fazer essas mudanças.

  • Like 1

Share this post


Link to post
Share on other sites

×
×
  • Create New...