Jump to content

dev botao

Uso do Componente - Objetos temporarios


Grupo FS
  • Este tópico foi criado há 2376 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Boa Tarde

por uma questão de bom senso e manter o codigo fonte limpo

criei uma Variável temporaria do tipo TempIdeProdutor : TIdeProdutorItem; para o Bloco S-1250

para agrupar as informacoes relativas aos Produtores

no entanto, nao estou conseguindo achar o comando / maneira de adicionar este objeto temporario

no componente real;

tentei de diversar formas, mas sem sucesso.

                      with EvtAqProd.InfoAquisProd.IdeEstabAdquir.TpAquis.Add do
                      begin
                        indAquis        := iaAquiProducaoProdutorRuralPessoaFisSegEspGeral;
                        vlrTotAquis     := rvlrTotAquis;
                        with IdeProdutor.Add do
                        begin
                           TempIdeProdutor;

                        end

                     end

tambem

                      EvtAqProd.InfoAquisProd.IdeEstabAdquir.TpAquis.Items[0].IdeProdutor.Items[0].Assign(TempIdeProdutor);

porem sem sucesso.

é possivel fazer este tipo de atribuição de objetos???

desde ja Obrigado.

 

 

Link to comment
Share on other sites

  • Membros Pro

Boa tarde

Não sei se entendi bem o que você precisa, mas seria algo assim: 

...

uses ... , pcesS1250;

...

procedure TFExemploEsocial.GerareSocial1250_Trecho;
var TempIdeProdutorItem: TIdeProdutorItem;
begin
  with ACBreSocial1.Eventos.Periodicos.S1250.Add do
  begin
    EvtAqProd.Sequencial := 0;

    EvtAqProd.IdeEvento.indRetif := tpIndRetificacao(0);
    EvtAqProd.IdeEvento.NrRecibo := '65.5454.987798798798';
    EvtAqProd.IdeEvento.IndApuracao := tpIndApuracao(iapuMensal);
    EvtAqProd.IdeEvento.perApur := '2015-06';
    EvtAqProd.IdeEvento.TpAmb := taProducaoRestrita;
    EvtAqProd.IdeEvento.ProcEmi := TpProcEmi(0);
    EvtAqProd.IdeEvento.VerProc := '1.0';

    EvtAqProd.IdeEmpregador.TpInsc := tiCPF;
    EvtAqProd.IdeEmpregador.NrInsc := '0123456789';

    EvtAqProd.InfoAquisProd.IdeEstabAdquir.tpInscAdq := tiCNPJ;
    EvtAqProd.InfoAquisProd.IdeEstabAdquir.nrInscAdq := '12345678910001';

    with EvtAqProd.InfoAquisProd.IdeEstabAdquir.TpAquis.Add do
    begin
      indAquis := tpIdAquis(0);
      vlrTotAquis := 520000.80;

      TempIdeProdutorItem := IdeProdutor.Add;
      TempIdeProdutorItem.tpInscProd := tiCNPJ;
      TempIdeProdutorItem.nrInscProd := '98765432100015';
      TempIdeProdutorItem.vlrBruto := 4000.54;
      TempIdeProdutorItem.vrCPDescPR := 3850.32;
      TempIdeProdutorItem.vrRatDescPR := 500.30;
      TempIdeProdutorItem.vrSenarDesc := 2500.30;

      with TempIdeProdutorItem.Nfs.Add do
      begin
        serie := '00004';
        nrDocto := '64896549898789';
        dtEmisNF := Now;
        vlrBruto := 4000.54;
        vrCPDescPR := 3850.32;
        vrRatDescPR := 500.30;
        vrSenarDesc := 2500.30;
      end;

    end;

    ...

  end;
end;

 

(Trecho extraído da unit uExemploEsocial.pas, alterado para demonstração)

 

Link to comment
Share on other sites

Não entendi muito bem o que vc está querendo fazer, mas "é possivel fazer este tipo de atribuição de objetos???" 

Sim é possível, uma vez que o objeto foi instanciado outro objeto pode receber a assinatura. 

Desde que a classe seja a mesma ou ancestral, porém isso não é algo do ACBr e sim do Delphi. 

Edited by Alisson Souza Pereira
Ortografia
Link to comment
Share on other sites

  • Este tópico foi criado há 2376 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

The popup will be closed in 10 seconds...