Ir para conteúdo
  • Cadastre-se

dev botao

ACBreSocial S-2206 não gera dtTerm


Ver Solução Respondido por Anderson Mendonça,

Recommended Posts

Postado

Olá,
No ACBreSocial, evento S-2206, grupo <duracao>, estou informando TpContr := PrazoDeterminado e preenchendo a tag <dtTerm>, mas o arquivo está sendo gerado apenas com a tag <TpContr>.
Consequentemente ocorre erro solicitando a tag <dtTerm>.
Alguém pode me ajudar?
 

Postado (editado)
23 horas atrás, Anderson Mendonça disse:

Olá,
No ACBreSocial, evento S-2206, grupo <duracao>, estou informando TpContr := PrazoDeterminado e preenchendo a tag <dtTerm>, mas o arquivo está sendo gerado apenas com a tag <TpContr>.
Consequentemente ocorre erro solicitando a tag <dtTerm>.
Alguém pode me ajudar?
 

Olá, @Anderson Mendonça!

Necessário maiores informações, para analisar a origem do problema.

  1. Analisar se a origem do problema está no arquivo .INI
    Você está gerando arquivo .INI com as informações do evento ?
    Se sim, nesse arquivo existe o grupo "duracao" e dentro dele os itens "tpContr" e "dtTerm" estão com quais valores?
     
  2. Analisar se a origem do problema está no gerador do objeto referente ao evento S2206
    Necessário saber como está sendo alimentado a classe TInfoContrato; para poder analisar os dados antes de chegar no gerador.

Seria importante, anexar os arquivos gerados desde o inicio do processo, para facilitar o processo de analise.

[]s,
Mário.

Editado por MSS
Envio antes de terminar a resposta
Postado
Em 13/09/2024 at 17:42, MSS disse:

Olá, @Anderson Mendonça!

Necessário maiores informações, para analisar a origem do problema.

  1. Analisar se a origem do problema está no arquivo .INI
    Você está gerando arquivo .INI com as informações do evento ?
    Se sim, nesse arquivo existe o grupo "duracao" e dentro dele os itens "tpContr" e "dtTerm" estão com quais valores?
     
  2. Analisar se a origem do problema está no gerador do objeto referente ao evento S2206
    Necessário saber como está sendo alimentado a classe TInfoContrato; para poder analisar os dados antes de chegar no gerador.

Seria importante, anexar os arquivos gerados desde o inicio do processo, para facilitar o processo de analise.

[]s,
Mário.

Caro @MSS, obrigado por responder.
Como havia explicado, no programa estrou informando o grupo "duracao" e preencho as tags "tpContr" e "dtTerm", porém o arquivo é gerado apenas com a tag "tpContr".
Segue XML gerado.

 

20240912113955-env-lot.xml

Postado
Em 20/09/2024 at 11:15, Alisson Souza Pereira disse:

Bom dia @Anderson Mendonça, provavelmente na hora de preencher os dados vc está utilizando uma maneira incorreta. 

ERRADO: S2206.EvtAltContratual.AltContratual.infoContrato.Duracao.dtTerm := <SUA DATA>

CORRETO: S2206.EvtAltContratual.AltContratual.Vinculo.infoContrato.Duracao.dtTerm := <SUA DATA>

@Alisson Souza Pereira, obrigado por responder.

Eu estou seguindo o caminho correto que você citou, mas ainda assim o XML está descartando a data que estou informando e está gerando apenas a tag <TpContr> no grupo <duracao>.

Postado (editado)

Estou fazendo isso:

                with duracao do
                begin
                  if (DM.Qry_Funcionarioscan_cod_vinc_empreg.AsInteger = 50) or
                     (DM.Qry_Funcionarioscan_cod_vinc_empreg.AsInteger = 60) or
                     (DM.Qry_Funcionarioscan_cod_vinc_empreg.AsInteger = 65) or
                     (DM.Qry_Funcionarioscan_cod_vinc_empreg.AsInteger = 70) or
                     (DM.Qry_Funcionarioscan_cod_vinc_empreg.AsInteger = 75) or
                     (DM.Qry_Funcionarioscan_cod_vinc_empreg.AsInteger = 90) or
                     (DM.Qry_Funcionarioscan_cod_vinc_empreg.AsInteger = 95) then
                    begin
                      TpContr := tpTpContr(1);
                      dtTerm := DM.Qry_Funcionarioscan_data_fim_contrato.AsDateTime;
                      if DM.Qry_Funcionarioscan_em_experiencia.AsString = 'S' then
                        begin
                          TpContr := tpTpContr(1);
                          if DM.Qry_Funcionarioscan_periodo_experiencia_prorrog.AsInteger > 0 then
                            dtTerm := DM.Qry_Funcionarioscan_data_termino_experiencia.AsDateTime +
                              DM.Qry_Funcionarioscan_periodo_experiencia_prorrog.AsInteger + 1
                          else
                            dtTerm := DM.Qry_Funcionarioscan_data_termino_experiencia.AsDateTime;
                        end;
                    end
                  else
                    begin
                      if DM.Qry_Funcionarioscan_adm_tipo_contrato.AsInteger = 2 then
                        TpContr := PrazoDeterminado
                      else if DM.Qry_Funcionarioscan_adm_tipo_contrato.AsInteger = 3 then
                        TpContr := PrazoDeterminadoVincOcDeUmFato
                      else
                        TpContr := PrazoIndeterminado;
                      if DM.Qry_Funcionarioscan_em_experiencia.AsString = 'S' then
                        begin
                          TpContr := PrazoDeterminado;
                          if DM.Qry_Funcionarioscan_periodo_experiencia_prorrog.AsInteger > 0 then
                            dtTerm := DM.Qry_Funcionarioscan_data_termino_experiencia.AsDateTime +
                              DM.Qry_Funcionarioscan_periodo_experiencia_prorrog.AsInteger
                          else
                            EvtAltContratual.AltContratual.InfoContrato.Duracao.dtTerm :=
                              DM.Qry_Funcionarioscan_data_termino_experiencia.AsDateTime;
                        end
                      else
                        begin
                          dtTerm := DM.Qry_Funcionarioscan_data_termino_experiencia.AsDateTime;
                        end;
                      if DM.Qry_Funcionarioscan_adm_tipo_contrato.AsInteger = 3 then
                        objDet := DM.Qry_Funcionarioscan_adm_obj_determ.AsString;
                    end;
                end;

 

Editado por Anderson Mendonça
Postado

dentro de pcesGerador.pas só existe uma situação para não gerar a tag, se dtTerm = 0, ou seja, não foi informada 

vc pode rodar em debug e verificar essa parte como está chegando. 

Manda esse código que vc mandou acima, só que mais completo, o S2206 inteiro e não só a parte do tipo de contrato

image.png.0afc89b23249194dcc095acf28fe671c.png

  • Moderadores
Postado
18 minutos atrás, Alisson Souza Pereira disse:

dentro de pcesGerador.pas só existe uma situação para não gerar a tag, se dtTerm = 0, ou seja, não foi informada 

vc pode rodar em debug e verificar essa parte como está chegando. 

Manda esse código que vc mandou acima, só que mais completo, o S2206 inteiro e não só a parte do tipo de contrato

image.png.0afc89b23249194dcc095acf28fe671c.png

tu está usando o componente?

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado

Pessoal, desde já agradeço pelas respostas.

Só para esclarecer, eu uso o meu gerador próprio, ou seja, criei um gerador onde copiei os eventos dos fontes ACBreSocial e adaptei à minha estrutura de base de dados.

Daqui a pouco envio o algoritmo e uma tela com o print do break pra constatar que está pegando a data...

 

  • Moderadores
Postado
5 minutos atrás, Anderson Mendonça disse:

Pessoal, desde já agradeço pelas respostas.

Só para esclarecer, eu uso o meu gerador próprio, ou seja, criei um gerador onde copiei os eventos dos fontes ACBreSocial e adaptei à minha estrutura de base de dados.

Daqui a pouco envio o algoritmo e uma tela com o print do break pra constatar que está pegando a data...

 

remova os WITH do seu código se existir, ficará mais legivel e as vezes pode ali estar contendo erros

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado
Em 23/09/2024 at 10:37, Alisson Souza Pereira disse:

dentro de pcesGerador.pas só existe uma situação para não gerar a tag, se dtTerm = 0, ou seja, não foi informada 

vc pode rodar em debug e verificar essa parte como está chegando. 

Manda esse código que vc mandou acima, só que mais completo, o S2206 inteiro e não só a parte do tipo de contrato

image.png.0afc89b23249194dcc095acf28fe671c.png

Coloquei um break pra facilitar.

image.thumb.png.f2c6ae4e6696a6a3ea5d2f02a7d02ae1.png

image.thumb.png.cd5eea070e374bb214ab0037890ddda1.png

Postado
1 hora atrás, Juliomar Marchetti disse:

peço que anexe o arquivo e não cole ele no tópico pois fica ruim tanto ao pesquisar quanto ao visualizar para ajuste

@Juliomar Marchetti, me perdoe, eu esqueci disso. Prometo prestar atenção das próximas vezes.

Não estou conseguindo anexar o arquivo com o fonte.

O que pode ser?

Estou com 3% somente de arquivos anexados na configuração.

 

image.thumb.png.1161e2e1685b34ca93ea5b6ebc640284.png

  • Curtir 1
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.