Árvore de páginas

Versões comparadas

Chave

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

 Ponto de entrada para rotina de Retorno de Check List 


Aviso
titleAtenção

Os pontos de entrada

Alteração dos pontos

( MNTA7351, MNTA7352, MNTA7355, MNTA7356 e MNTA7358 )

de entrada do fonte MNTA735 - Retorno Check List para o novo padrão MVC. 

encontram-se descontinuados, passando a ser utilizado somente o modelo MVC que contas nesta documentação.


Características do Requisito

Linha de Produto:

Microsiga Protheus

Segmento:

Manufatura

Módulo:

SIGAMNT - Manutenção de Ativos e Gestão de Frotas

Rotina:

Rotina

Nome Técnico

MNTA735

Retorno Check List

Cadastros Iniciais:

Relacione os cadastros necessários que precisam ser preenchidos antes da utilização desse requisito.

País(es)

Tickets:7351993
Issues:DNG-8705

Países:

Todos.

Banco(s)

Bancos de Dados:

Todos.

Tabelas Utilizadas

Sistemas Operacionais:

Informe as tabelas utilizadas.

Sistema(s) Operacional(is):

Windows e Linux

Descrição

Alteração dos pontos de entrada (MNTA7351, MNTA7352, MNTA7355, MNTA7356 e MNTA7358) para o padrão MVC, alterando a chamada dos pontos de entrada. 

Procedimento para Utilização

  • Descreva os procedimentos, passo a passo (caso de uso), que serão realizados pelos usuários para que a melhoria seja visualizada identificando as seguintes informações:
  • Localização da rotina no menu;
  • Localização dos novos campos e/ou perguntas e respectivas pastas de cadastro que são visualizadas pelo usuário;
  • Caso seja necessário ter algum cadastro feito previamente, faça uma observação.

 

 

Exemplo:

       1.            No Plano de Saúde (SIGAPLS), acesse Atualizações / Produto Saúde / Produto Saúde (PLSA800).

O sistema apresenta a janela de produtos cadastrados.

       2.            Posicione o cursor em um produto e clique em Alterar.

       3.            Na pasta Cobertura/Carências selecione a subpasta Tipo de Prestador.

       4.            Dê duplo clique no campo TP Prestador (BCW_TIPPRE).

O sistema apresenta a janela Tipo de Prestador – Coparticipação – Alterar.

       5.            Informe os dados conforme orientação do help de campo e observe o preenchimento do novo campo:

                      Som. p/Compra (BCW_SOMCOM): selecione Sim para indicar se a coparticipação cadastrada será válida somente para efeito de compra de procedimentos ou Não, caso contrário.

       6.            Confira os dados e confirme.

Todos.

Ponto de Entrada

Descrição:

Ponto de entrada no padrão MVC para customização da rotina de check list.

Localização:

SIGAMNT: Atualizações > Controle de Oficina > Check List  > Retorno Check List

Programa Fonte:

MNTA735.prw

Parâmetros:
NomeTipoDescriçãoObrigatório
ParamIXB[1]ObjetoModelo de Dados

Sim

ParamIXB[2]CaracterIdentificador do ponto de chamadaSim
ParamIXB[3]CaracterIdentificador do modelo de dadosSim

Ponto de Entrada

Informe o Nome do(s) produto(s) a ser utilizado ou “Todos” 

Descrição:

Informe o Menu em que estará localizada a rotina

Localização:

Informe o Submenu em que estará localizada a rotina

Eventos:

Informe o Título da rotina

Programa Fonte:

Informe o Fonte da rotina

Função:

Retorno:

Nome

Tipo

Descrição

Obrigatório

 xRet

 

 

 

Indefinido

O retorno pode se modificar, dependendo do ponto de chamada enviado pelo parâmetro PARAMIXB[2]

Sim

Links:Pontos de entrada padrão MVC
Exemplo:
Bloco de código
languagejavasql
titlePonto de entrada Exemplo P.E. MNTA735 padrão MVC
linenumberstrue
#INCLUDE "'PROTHEUS.CH"'
#INCLUDE 'FWMVCDEF.CH'


User Function MNTA735() //Função responsável pela chamada dos pontos de entrada da rotina MNTA735 - Retorno Check List

	Local aParam     := PARAMIXB //Parâmetros passados pelo ponto de entrada.

	Local aAreaTTF  := '' //Variável para gravação da área posicionada.
{}
	Local xRet           := .T. //Retorno da função.

	Local oObj           := '' //Objeto que receberá o modelo.
Nil
	Local oGrid1        := '' //Variável de grid.
Nil
	Local cIdPonto    := '' //Identificador da chamada do ponto de entrada.

	Local cIdModel    := '' //Identificador do modelo utilizado.
Local cModel       := '' //Identifica o modelo utilizado e receberá o seu identificador.
Local cEtapa  
	Local cEtapa      := '' //Código da etapa.

	Local nLinhas      := 0 //Numero de linhas.

	Local nLenGrid    := 0 //Numero total de linhas.

	Local nInd            := 0 //Variável de controle de linhas.

	If !Empty( aParam <> NIL //Identifica que foram enviado os parâmetros.
    )

		oObj     := aParam[1] // Modelo ativado.
    		cIdPonto := aParam[2] // Determina o ponto de chamada.
    		cIdModel := aParam[3] // Identificador do modelo.

		Do Case

			// Acionado  Ifantes da gravação da tabela do formulário.
			Case cIdPonto == 'FORMCOMMITTTSPRE' 

				// Substituição do ponto de entrada MNTA7352. 

        
				If cIdModel == 'MNTA735'

            					oGrid1  := PARAMIXB[4] //Retorna a Grid que contêm os valores da TTG.
            					nLinhas := 0

            					oGrid1:AddLine() //Adiciona uma nova linha.
            					nLinhas := oGrid1:Length() // Quantidade Total de linhas do oGrid1.
            					oGrid1:GoLine( nLinhas ) //Posiciona na nova linha incluída.

            					//Adiciona valores na Grid.
            					oGrid1:LoadValue( 'TTD_TIPMOD'," 'X")
            ' )
					oGrid1:LoadValue( 'TTG_CHECK', oObj:GetValue( 'TTFMASTER', 'TTF_CHECK' ) )
            					oGrid1:LoadValue( 'TTG_ETAPA'," '01")
            ' )
					oGrid1:LoadValue( 'TTG_NOMETA'," 'Nome etagaetapa 1")
            ' )
					oGrid1:LoadValue( 'TTG_CRITIC', 'A' )

				EndIf

			// Acionado após a gravação da tabela do EndIf

    ElseIf formulário.
			Case cIdPonto == 'FORMCOMMITTTSPOS' 

				// Substituição dos ponto de entrada MNTA7351 e MNTA7358. 

        
				If cIdModel == 'MNTA735'

            					aAreaTTF := TTF->( GetArea() ) // Salva área posicionada.

            dbSelectArea("TTF")
            dbSetOrder(1) //TTF_FILIAL+TTF_CHECK+TTF_CODFAM+TTF_TIPMOD+TTF_SEQFAM
            If dbSeek(xFilial("TTF")+oObj:GetValue('TTFMASTER','TTF_CHECK')) //					dbSelectArea( 'TTF' )
					dbSetOrder( 1 )  // TTF_FILIAL + TTF_CHECK + TTF_CODFAM + TTF_TIPMOD + TTF_SEQFAM
					If dbSeek( xFilial( 'TTF' ) + oObj:GetValue( 'TTFMASTER', 'TTF_CHECK' ) ) // Posiciona no registro adicionado.
                RecLock("TTF",

						RecLock( 'TTF', .F.)
                 )
							TTF->TTF_POSCON := 100  // Realiza alteração de contador.
                MsUnLock("TTF")
            EndIf

            dbSelectArea("ST9")
            dbSetOrder(1)
            If dbSeek(xFilial("ST9")+oObj:GetValue('TTFMASTER','TTF_CODBEM'))
                RecLock("ST9",.F.)
                						TTF->( MsUnLock() )

					EndIf

					dbSelectArea( 'ST9' )
					dbSetOrder( 1 )
					If dbSeek( xFilial( 'ST9' ) + oObj:GetValue( 'TTFMASTER', 'TTF_CODBEM' ) )

						RecLock( 'ST9', .F. )
							ST9->T9_PADRAO  := '2'
						ST9->( MsUnlock(               MsUnlock("ST9")
            EndIF

            RestArea(aAreaTTF'ST9' ) )

					EndIf

					RestArea( aAreaTTF ) // Retorna área posicionada.

				EndIf

			// Acionado na validação total do   EndIf

    ElseIf modelo.
			Case cIdPonto == 'MODELPOS' 

				// Substituição do ponto de entrada MNTA7356. 

        
				If cIdModel == 'MNTA735'

            					oGrid1   := oObj:GetModel( 'TTGDETAIL' ) // Posiciona no Model da Grid
            					nLenGrid := oGrid1:Length() // Pega tamanho total da grid.
            					nInd     := 0
            					cEtapa   := ""

            ''

					If Empty( oObj:GetValue( 'TTFMASTER', 'TTF_RAMAL' ) ) // Verifica se o campo Ramal foi preenchido.
                Help(Nil, Nil, "Atenção", Nil, "
						Help( , , 'Atenção', , 'O campo de Ramal não foi preenchido. Favor realizar o seu preenchimento."', 1, 0)
                 )
						xRet := .F.
            EndIf

            
					EndIf

					If xRet
                

						For nInd := 1 To nLenGrid

                    							oGrid1:GoLine( nInd ) // Posiciona na linha desejada.
                    

							If !oGrid1:IsDeleted() // Veririfica se o registro não está delatado

                        								cEtapa := AllTrimTrim( oGrid1:GetValue(" 'TTG_ETAPA"' ))
                         )

								If cEtapa == "'0001"
                            Help(Nil, Nil, "Atenção", Nil, "'

									Help( , , 'Atenção', , 'Essa etapa não pode ser utilizada"', 1, 0)
                             )
									xRet := .F.
                        EndIf

                    EndIf
                Next nInd
            EndIf

        EndIf

    ElseIf 
								EndIf

							EndIf

						Next nInd

					EndIf

				EndIf

			// Acionado na validação total da linha do formulário
			Case cIdPonto == 'FORMLINEPOS' 

				// Substituição do ponto de entrada MNTA7355. 

        
				If cIdModel == 'MNTA735'
            
					oGrid1  := oObj:GetModel( 'TTGDETAIL' ) // Posiciona no Model da Grid

            					If Empty( oGrid1:GetValue( 'TTG_CRITIC' ) ) // Verifica se o campo foi preenchido.
                Help(Nil, Nil, "Atenção", Nil, "

						Help( , , 'Atenção', , 'O campo de criticidade não foi preenchido. Favor realizar o seu preenchimento."', 1, 0 )
						xRet := .F.

					EndIf

				EndIf

			// Inclusão de botões em ações realacionadas da interface de edição.
			Case cIdPonto == 'BUTTONBAR'

				/*
					Deve ser retornado um array bi-dimencional com xRetas :=seguintes .F.
posições.
					[1] Caracter        Titulo para o botão
					[2] Caracter        Nome do Bitmap para  EndIf
exibição
					[3] Bloco de Código CodeBlock a ser executado
					[4] Caracter        EndIf

    EndIf

ToolTip (Opcional)
				*/
				xRet := { { 'Salvar', 'SALVAR', { || Alert( 'Salvou' ) }, 'Este botão Salva!' } }

		EndCase

	EndIf

Return xRet