Árvore de páginas

Versões comparadas

Chave

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

Alteração dos pontos (MNTA7351, MNTA7352, MNTA7355, MNTA7356 e MNTA7358) de entrada do fonte MNTA735 - Retorno Check List para o novo padrão.  

Características do Requisito

Cadastros IniciaisTabelas Utilizadas

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

Tickets:

Familia de Bens

Modelos

Bens

Etapas Genéricas

Serviços

7351993
Issues:DNG-8705

PaísesPaís(es):

Todos.

Banco(s) Bancos de Dados:

Todos.

Sistemas Operacionais:

TTF - CHECK LIST

TTG - DETALHES DO CHECK LIST 

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

  • Entrar no modulo de Manutenção de Ativos e Gestão de Frotas(SIGAMNT).
  • Em Atualizações > Controle de Oficina > Bens > Familia de Bens. Incluir uma família de bem.
  • Em Atualizações > Controle de Oficina > Bens > Modelos. Incluir um modelo.
  • Em Atualizações > Controle de Oficina > Bens > Bens. Incluir um bem.
  • Em Atualizações > Controle de Oficina > Manutenção > Etapas Genéricas. Incluir uma etapa genérica.
  • Em Atualizações > Controle de Oficina > Manutenção > Serviços. Incluir um serviço.
  • Todos.

    Ponto de Entrada

    Descrição:

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

    Localização:

    SIGAMNT:

    Em

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

    Padrão. Incluir um check list padrão.
  • Em Atualizações > Controle de Oficina > Check List > Geração Check List. Verificar que a rotina está funcionando corretamente.

  • 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

    MNTA735

    Descrição:

    FORMCOMMITTTSPRE - Inclui dados na tabela TTG

    FORMCOMMITTTSPOS - Inclui dados na tabela TTF ou em outras tabelas.

    MODELPOS - Usado para validar a geração do Check List.

    FORMLINEPOS - Utilizado para validação de linha da Grid.

    Localização:

    Atualizações > Controle de Oficina > Check List

    Eventos:

    Geração Check List. 

    Programa Fonte:

    MNTA735

    Função:

    Retorno:

    xRet

    Nome

    Tipo

    Descrição

    Obrigatório

     xRet

    Lógico

    Retorna .T. ou .F. mediante a verificações.

    Sim

     

    Exemplo:

    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
    Bloco de código
    languagesql
    titleP.E. MNTA735 padrão MVC
    linenumberstrue
    #INCLUDE 'PROTHEUS.CH'
    #INCLUDE 'FWMVCDEF.CH'
    
    User Function MNTA735()
    
    	Local aParam    := PARAMIXB
    	Local aAreaTTF  := {}
    	Local xRet      := Nil
    	Local oObj      := Nil
    	Local oGrid1    := Nil
    	Local cIdPonto  := ''
    	Local cIdModel  := ''
    	Local cEtapa    := ''
    	Local nLinhas   := 0
    	Local nLenGrid  := 0
    	Local nInd      := 0
    
    	If !Empty( aParam )
    
    		oObj     := aParam[1] // Modelo ativado.
    		cIdPonto := aParam[2] // Determina o ponto de chamada.
    		cIdModel := aParam[3] // Identificador do modelo.
    
    		Do Case
    
    			// Acionado antes 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 etapa 1' )
    					oGrid1:LoadValue( 'TTG_CRITIC', 'A' )
    
    				EndIf
    
    			// Acionado após a gravação da tabela do 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' ) ) // Posiciona no registro adicionado.
    
    						RecLock( 'TTF', .F. )
    							TTF->TTF_POSCON := 100  // Realiza alteração de contador.
    						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( 'ST9' ) )
    
    					EndIf
    
    					RestArea( aAreaTTF ) // Retorna área posicionada.
    
    				EndIf
    
    			// Acionado na validação total do 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( , , 'Atenção', , 'O campo de Ramal não foi preenchido. Favor realizar o seu preenchimento.', 1, 0 )
    						xRet := .F.
    
    					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 := Trim( oGrid1:GetValue( 'TTG_ETAPA' ) )
    
    								If cEtapa == '0001'
    
    									Help( , , 'Atenção', , 'Essa etapa não pode ser utilizada', 1, 0 )
    									xRet := .F.
    
    								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( , , '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 as seguintes posições.
    					[1] Caracter        Titulo para o botão
    					[2] Caracter        Nome do Bitmap para exibição
    					[3] Bloco de Código CodeBlock a ser executado
    					[4] Caracter        ToolTip (Opcional)
    				*/
    				xRet := { { 'Salvar', 'SALVAR', { || Alert( 'Salvou' ) }, 'Este botão Salva!' } }
    
    		EndCase
    
    	EndIf
    
    Return xRet