Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Produto:

Microsiga Protheus

Ocorrência:

Como realizar a contabilização com histórico aglutinado?

Passo a passo:

Na contabilização com histórico aglutinado, o sistema faz uma avaliação para saber qual é o histórico que ele vai utilizar.

Para essa avaliação, a rotina utiliza o parâmetro MV_AGLHIST, caso esteja com o conteúdo em .F. aglutina os históricos, se estiver como .T., a rotina considera o histórico na regra de busca, caso contrario utiliza o primeiro histórico que ele encontrar.

Além da regra de busca do histórico, a rotina faz uma avaliação para a utilização do histórico aglutinado, essa avaliação é feita com base na informação cadastrada no lançamento padrão (CT5) no campo histórico aglutinado, que caso esteja vazio, a rotina aglutina os históricos guardados nos arquivos de contra-prova (CTK), senão, o mesmo utiliza o valor chumbado do campo (CT5), ignorando os históricos do arquivo de contra-prova.

Observações:

A seguir verifique a regra para a utilização do histórico aglutinado:

If !Empty(CT5->CT5_HAGLUT)                                                                                /// E O HISTORICO AGLUTINADO ESTIVER PREENCHIDO
#IFDEF TOP                                                                                                      /// caso for top connect
                                If TcSrvType() <> "AS/400"                                                       /// EM AMBIENTE TOP <> AS/400
                                               If Empty(TMP->CT2_HIST)                                        /// SE O HISTORICO DO TMP ESTIVER VAZIO
                                                              lGravaHAglut   := .T.                                     /// MONTA HISTORICO AGLUTINADO
                                                              lGravaHist         := .T.
                                               Else                                                                                      /// SE O HISTORICO DO TMP ESTIVER PREENCHIDO
                                                              lGravaHAglut   := .F.                                     /// GRAVA CONTINUAÇÕES DE HISTORICO DO CTK_HAGLUT/CTK_HIST (TOP)
                                                              lGravaHist         := .T.
                                               EndIf
                               Else
                #ENDIF
                                If lCTKHAGLUT                                                                               /// VARIAVEL DE VERIFICAÇÃO DO CAMPO CTK_HAGLUT
                                               lGravaHAglut   := .F.                                                     /// NÃO UTILIZA A AGLUTINAÇÃO DOS HISTORICOS
                                               lGravaHist         := .T.                                                     /// UTILIZA O HISTORICO NORMAL
                                Else                                                                                                      /// SENÃO
                                               lGravaHAglut   := .T.                                                     /// UTILIZA O HISTORICO AGLUTINADO
                                               lGravaHist         := .T.                                                     /// UTILIZA O HISTORICO NORMAL
                                EndIf
                #IFDEF TOP
                                EndIf
                #ENDIF
ElseIf lSomaLinha                                                                                                        /// SE NAO 1º REGISTRO AGLUTINACAO CODEBASE (TOP SEMPRE .T.)
                lGravaHist         := .T.
                lGravaHAglut   := .F.
EndIf

É recomendado que ao utilizar o campo de histórico aglutinado informado, não se utilize campos ou variáveis publicas do sistema, nestes casos, no momento da gravação, o campo ou a variável pode estar desposicionada ou sem conteúdo, assim não gerando a informação desejada. Atente-se ao fato que em uma contabilização aglutinada este necessariamente não precisa estar posicionado no registro.


Aviso

Em caso de contabilização com parametro parâmetro "Aglutina Historico Histórico =  Sim" não serão gravados campos customizados.