Á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 MVC. 

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):

Todos

Banco(s) de Dados:

Todos

Tabelas Utilizadas:

Informe as tabelas utilizadas.

Sistema(s) Operacional(is):

Windows e Linux

Descrição

Escreva aqui a descrição da nova implementação ou melhoria.

Importante

(Apenas para Microsiga Protheus, versões anteriores à versão 12)

Antes de executar o compatibilizador informe o nome do compatibilizador é imprescindível:

  • Realizar o backup da base de dados do produto que será executado o compatibilizador (diretório PROTHEUS_DATA\DATA, se versão 10, ou \PROTHEUS11_DATA\DATA, se versão 11) e dos dicionários de dados SXs (diretório PROTHEUS_DATA_SYSTEM, se versão 10, ou \PROTHEUS11_DATA\SYSTEM, se versão  11).
  • Os diretórios acima mencionados correspondem à instalação padrão do Protheus, portanto, devem ser alterados conforme o produto instalado na empresa.
  • Essa rotina deve ser executada em modo exclusivo, ou seja, nenhum usuário deve estar utilizando o sistema.
  • Se os dicionários de dados possuírem índices personalizados (criados pelo usuário), antes de executar o compatibilizador, certifique-se de que estão identificados pelo nickname. Caso o compatibilizador necessite criar índices, irá adicioná-los a partir da ordem original instalada pelo Protheus, o que poderá sobrescrever índices personalizados, caso não estejam identificados pelo nickname.
  • O compatibilizador deve ser executado com a Integridade Referencial desativada*.

Atenção

O procedimento a seguir deve ser realizado por um profissional   qualificado como Administrador de Banco de Dados (DBA) ou equivalente!

A ativação indevida da Integridade Referencial pode alterar   drasticamente o relacionamento entre tabelas no banco de dados. Portanto,   antes de utilizá-la, observe atentamente os procedimentos a seguir:

  1. No   Configurador (SIGACFG), veja se a empresa utiliza Integridade   Referencial, selecionando a opção Integridade/Verificação   (APCFG60A).
  2. Se não   há Integridade Referencial ativa,   são relacionadas em uma nova janela todas as empresas e filiais cadastradas   para o sistema e nenhuma delas estará selecionada. Neste caso, E SOMENTE NESTE, não é necessário   qualquer outro procedimento de ativação   ou desativação de integridade, basta finalizar a verificação e aplicar   normalmente o compatibilizador, conforme instruções.
  3.  Se há Integridade Referencial ativa   em todas as empresas e filiais, é   exibida uma mensagem na janela Verificação   de relacionamento entre tabelas. Confirme a mensagem para que a   verificação seja concluída, ou;
  4.  Se   há Integridade Referencial ativa   em uma ou mais empresas, que não   na sua totalidade, são relacionadas em uma nova janela todas as empresas e   filiais cadastradas para o sistema e, somente, a(s) que possui(em)   integridade está(arão) selecionada(s). Anote qual(is) empresa(s) e/ou   filial(is) possui(em) a integridade ativada e reserve esta anotação para   posterior consulta na reativação (ou ainda, contate nosso Help Desk Framework   para informações quanto a um arquivo que contém essa informação).
  5. Nestes   casos descritos nos itens “iii” ou   “iv”, E SOMENTE NESTES CASOS, é necessário desativar tal integridade, selecionando a opção Integridade/ Desativar (APCFG60D).
  6.  Quando desativada a Integridade Referencial,   execute o compatibilizador, conforme instruções.
  7. Aplicado o compatibilizador, a Integridade   Referencial deve ser reativada, SE E   SOMENTE SE tiver sido desativada, através da opção Integridade/Ativar (APCFG60). Para isso, tenha em mãos as   informações da(s) empresa(s) e/ou filial(is) que possuía(m) ativação da   integridade, selecione-a(s) novamente e confirme a ativação.

Contate o Help Desk Framework EM CASO DE DÚVIDAS!

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

  1. Em Microsiga Protheus TOTVS Smart Client (se versão 10), digite o nome do compatibilizador no campo Programa Inicial. Descreva se o compatibilizador deve ter uma data específica ou superior para que a atualização nos dicionários seja efetuada corretamente. Importante: Para a correta atualização do dicionário de dados, certifique-se que a data do compatibilizador seja igual ou superior a ___/___/____.
  2. Clique em OK para continuar.
  3. Após a confirmação é exibida uma tela para a seleção da empresa em que o dicionário de dados será modificado ou é apresentada a janela para seleção do compatibilizador. Selecione o programa xxxx().
  4. Ao confirmar é exibida uma mensagem de advertência sobre o backup e a necessidade de sua execução em modo exclusivo.
    1. Clique em Processar para iniciar o processamento. O primeiro passo da execução é a preparação dos arquivos.
      É apresentada uma mensagem explicativa na tela.
    2. Em seguida, é exibida a janela Atualização concluída com o histórico (log) de todas as atualizações processadas. Nesse log de atualização são apresentados somente os campos atualizados pelo programa. O compatibilizador cria os campos que ainda não existem no dicionário de dados.
    3. Clique em Gravar para salvar o histórico (log) apresentado.
    4. Clique em OK para encerrar o processamento.

Descreva se há algum procedimento necessário após a aplicação do compatibilizador.

Procedimento para Implantação

O sistema é atualizado logo após a aplicação do pacote de atualizações (Patch) deste chamado.

  1. Aplique o patch do chamado e execute uma vez a rotina Informe o nome da rotina.
  2. No módulo informe o nome do módulo acesse informe o caminho e verifique que o parâmetro informe o nome do parâmetro é criado conforme especificações abaixo:

Nome da Variável:

Informe o Nome da Variável

Tipo:

Informe o Tipo

Descrição:

Informe a Descrição

Valor Padrão:

Informe o Valor Padrão

Atualizações do Compatibilizador

(Apenas para Microsiga Protheus, versões anteriores à versão 12)

  1. Criação ou Alteração de Perguntas no arquivo SX1 – Cadastro de Perguntes:

Pergunte

(X1_PERGUNT)

Nome

Grupo

(X1_GRUPO)

Ordem

(X1_ORDEM)

Tipo

(X1_TIPO)

Tamanho

(X1_TAMANHO)

2.    Criação ou Alteração de tabela no arquivo SX2– Tabelas:

Chave

Nome

Modo

PYME

B04

(X2_CHAVE)

Dente/Região

(X2_NOME)

C

(X2_MODO)

N

(X2_PYME)

3.  Criação ou Alteração de Tabelas Genéricas no arquivo SX5 – Tabelas Genéricas:

Chave

Ex.: AR

Descrição

Ex.: Tabela de IR de Aplicações Financeiras

4.  Criação ou Alteração (mantenha somente a instrução correspondente) de Campos no arquivo SX3 – Campos:

  • Tabela BGD - Prod x Cob x Proc x Co-Part:

Campo

(X3_CAMPO)

Tipo

(X3_TIPO)

Tamanho

(X3_TAMANHO)

Decimal

(X3_DECIMAL)

Formato

(X3_PICTURE)

Título

(X3_TITULO)

Descrição

(X3_DESCRIC)

Nível

(X3_NÍVEL)

Usado

(X3_USADO) Informe Sim ou Não

Obrigatório

(X3_OBRIGAT) Informe Sim ou Não

Browse

(X3_BROWSE) Informe Sim ou Não

Opções

(X3_CBOX)

When

(X3_WHEN)

Relação

(X3_RELACAO)

Val. Sistema

(X3_VALID)

Help

Descreva o conteúdo informado para Help de Campo no ATUSX

Importante:

O tamanho dos campos que possuem grupo pode variar conforme ambiente em uso.

5.  Criação ou Alteração de Consulta Padrão no arquivo SXB – Consulta Padrão:

  • Pesquisa B05PLS:

Alias

(XB_ALIAS)

Tipo

(XB_TIPO)

Sequência

(XB_SEQ)

Coluna

(XB_COLUNA)

Descrição

(XB_DESCRI)

Contém

(XB_CONTEM)

6.  Criação ou Alteração de Índices no arquivo SIX – Índices:

Índice

AA1

Ordem

6

Chave

AA1_FILIAL+AA1_CODVEN

Descrição

Cod. Vendedor

Proprietário

S

7.  Criação ou Alteração de Parâmetros no arquivo SX6 – Parâmetros:

Nome da Variável

(X6_VAR)

Tipo

(X6_TIPO)

Descrição

(X6_DESCRIC + X6_DESC1 + X6_DESC2)

Valor Padrão

(X6_CONTEUD)

8.  Criação ou Alteração (mantenha somente a instrução correspondente) de Gatilhos no arquivo SX7 – Gatilhos:

  • Tabela BD5 – Contas Médicas:

Campo

Informe o conteúdo do (X7_CAMPO)

Sequência

Informe o conteúdo do (X7_SEQUENC)

Campo Domínio

Informe o conteúdo do (X7_CDOMIN)

Tipo

Informe o conteúdo do (X7_TIPO)

Regra

Informe o conteúdo do (X7_REGRA)

Posiciona?

Informe o conteúdo do (X7_SEEK)

Chave

Informe o conteúdo do (X7_CHAVE)

Condição

Informe o conteúdo do (X7_CONDIC)

Proprietário

Informe o conteúdo do (X7_PROPRI)

Procedimento para Configuração

(Estes procedimentos devem ser feitos quando for necessário configurar parâmetros e/ou  rotinas no menu).

CONFIGURAÇÃO DE PARÂMETROS

 

  1. No Configurador (SIGACFG), acesse Ambientes/Cadastros/Parâmetros (CFGX017). Crie/configure (mantenha somente a instrução correspondente) o(s) parâmetro(s) a seguir:
    (É necessário criar uma tabela para cada parâmetro descrito no item Parâmetro(s), da tabela Características do Requisito)

Itens/Pastas

Descrição

Nome:

Tipo:

Informe o Tipo do parâmetro

Cont. Por.:

Informe o Conteúdo padrão

Descrição:

 

CONFIGURAÇÃO DE MENUS

 

2.  No Configurador (SIGACFG), acesse Ambientes/Cadastro/Menu (CFGX013). Informe a nova opção de menu do informe o nome do módulo, conforme instruções a seguir:

Menu

Informe o Menu em que estará localizada a rotina

Submenu

Informe o Submenu em que estará localizada a rotina

Nome da Rotina

Informe o Título da rotina

Programa

Informe o Fonte da rotina

Módulo

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

Tipo

Informe a Função

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.

Vídeo

  • Vídeo hospedado no youtube e inserido no template por meio da macro Widget Connector.

** Canal do youtube e software de vídeoem definição.

Título do Vídeo:

Disponibilizado pelo Marketing

.

Introdução:

Disponibilizado pelo Marketing.

Passo a Passo:

Capturar diretamente do sistema.

Finalização:

Disponibilizado pelo Marketing.



Ponto de Entrada

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:

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

Retorno:

Nome

Tipo

Descrição

Obrigatório

 




 




 




 

Exemplo:

#Include 'Protheus.ch'

User Function CN120ALT()

Local aCab:= PARAMIXB[1]

Local cTipo:= PARAMIXB[2]

If cTipo == '1'

    aCab[4][2]:= 'NF' //Validações do usuário

EndIf

Return aCab


Bloco de código
languagejava
titlePonto de entrada padrão MVC
#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.
Local oGrid1        := '' //Variável de grid.
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        := '' //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 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.

    If 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 etaga 1")
            oGrid1:LoadValue('TTG_CRITIC','A')

        EndIf

    ElseIf 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.
                MsUnLock("TTF")
            EndIf

            dbSelectArea("ST9")
            dbSetOrder(1)
            If dbSeek(xFilial("ST9")+oObj:GetValue('TTFMASTER','TTF_CODBEM'))
                RecLock("ST9",.F.)
                ST9->T9_PADRAO  := '2'
                MsUnlock("ST9")
            EndIF

            RestArea(aAreaTTF) //Retorna área posicionada.

        EndIf

    ElseIf 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, "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 := AllTrim(oGrid1:GetValue("TTG_ETAPA"))
                        If cEtapa == "0001"
                            Help(Nil, Nil, "Atenção", Nil, "Essa etapa não pode ser utilizada", 1, 0)
                            xRet := .F.
                        EndIf

                    EndIf
                Next nInd
            EndIf

        EndIf

    ElseIf 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, "O campo de criticidade não foi preenchido. Favor realizar o seu preenchimento.", 1, 0)
                xRet := .F.
            EndIf
        EndIf

    EndIf

EndIf

Return xRet