Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Ponto de entrada FT600ULGRID - Carregamento dos dados na grid da Proposta Comercial

Características do Requisito

Linha de Produto:

Microsiga Protheus®

Segmento:

Serviços

Módulo:

CRM - SIGACRM
Faturamento - SIGAFAT

Rotina:

Rotina

Nome Técnico

Proposta comercialFATA600

Proposta comercial

FATN600

Tickets relacionados

790786

Requisito/Story/Issue (informe o requisito relacionado):

DSERFAT-2025

País(es):

Todos os países.

Banco(s) de Dados:

Todos os bancos de dados homologados.

Sistema(s) Operacional(is):

Todos os sistemas operacionais homologados.

Versão:A partir da versão 12.1.17.

Descrição

Permite determinar se o Simulador de Serviços da Proposta Comercial será executado ou não, após a aplicação de alguma regra específica a ser construída dentro deste ponto de entrada.

Procedimento para Implantação

interferir no processo de carga dos dados na grid da Proposta Comercial.

Importante

Este ponto de entrada estará disponível somente se o programa fonte os programas fonte FATA600.PRWFATN600.PRW possuir  possuírem data posterior à 06 de novembro de 2017 (versão 12.1.17) em seu repositório (arquivo ".RPO" do seu ambiente). Portanto, caso deseje utilizar este ponto de entrada, certifique-se desta premissa.

Ponto de Entrada

Sim

Descrição:

A finalidade do ponto de entrada FT600ULGRID é permitir que, durante o processo de carga dos dados na grid da Proposta Comercial, seja possível realizar interferências em sua execução, respeitando as suas quatro ações básicas.

Localização:

Quando for realizada a carga dos dados de Serviços (PMS) na Proposta Comercial:
SIGACRM → Atualizações Vendas Vendas Oportunidades Ações Relacionadas Proposta Comercial Ações Relacionadas Serviços (PMS)
SIGAFAT → Atualizações CRM-Administração de vendas Oportunidades Ações Relacionadas → Proposta Comercial Ações Relacionadas → Serviços (PMS)

Para quando o produto possuir acessórios associados a ele:
SIGACRM → Atualizações → Vendas → Vendas → Oportunidades → Ações Relacionadas → Proposta Comercial → Ao selecionar o produto na Grid de Produtos da Proposta Comercial
SIGAFAT → Atualizações → CRM-Administração de vendas → Oportunidades → Ações Relacionadas → Proposta Comercial → Ao selecionar o produto na Grid de Produtos da Proposta Comercial

Quando for realizada a carga com base nas categorias dos produtos (Para quando o parâmetro MV_FATMNTP for diferente de 4):
SIGACRM → Atualizações Vendas Vendas Oportunidades Ações Relacionadas Proposta Comercial Ações Relacionadas Categoria
SIGAFAT → Atualizações CRM-Administração de vendas Oportunidades Ações Relacionadas Proposta Comercial Ações Relacionadas Categoria

Quando for realizada a carga com base nos agrupadores dos produtos (Para quando o parâmetro MV_FATMNTP for igual a 4):
SIGACRM → Atualizações Vendas Vendas Oportunidades Ações Relacionadas Proposta Comercial Ações Relacionadas Agrupadores
SIGAFAT → Atualizações CRM-Administração de vendas Oportunidades Ações Relacionadas → Proposta Comercial Ações Relacionadas → Agrupadores

Programa Fonte:

FATN600.PRW

Parâmetros:

{ <cAction>, <oMdlGrid>, <aGridDetail>, <__cMdlDetail>}

Onde:

NomeTipoDescriçãoObrigatório
<cAction>
Caractere

Código da ação que está em execução no processo de carga dos dados das grids da Proposta Comercial.
As ações disponíveis são:

  • GRID_BEFORE
  • LINE_BEFORE
  • GRID_AFTER
  • LINE_AFTER
Sim
<oMdlGrid>
ObjetoModelo ativo da grid.Sim
<aGridDetail>
ArrayDados/Detalhes da grid ou da linha da grid, conforme a ação que estiver sendo executada.Sim
<__cMdlDetail>
CaractereModelo ativoNome do modelo (detalhe)Sim

Retorno:

Sim
Para a ação "GRID_BEFORE"
NomeRetornoTipoDescriçãoObrigatório
aRetArray

Array com o conteúdo da grid completa que será considerado na fase anterior ao seu carregamento.
Observações:

  1. A estrutura do array de retorno deve obedecer à mesma estrutura recebida através do parâmetro aGridDetail quando da execução do ponto de entrada.
  2. Se o retorno do ponto de entrada não for do tipo array, os dados do retorno serão ignorados, e a rotina padrão continuará o seu processamento como se esta ação do ponto de entrada não existisse.

Onde:

RetornoExecução
Para a ação "LINE_BEFORE"
Nome
RetornoTipoDescrição
Obrigatório
aRetArray

Array referente à linha (item) da grid com o conteúdo que será considerado na fase anterior ao seu carregamento.
Observação: A estrutura do array de retorno deve obedecer à mesma estrutura recebida através do parâmetro aGridDetail quando da execução do ponto de entrada.

Para a ação "LINE_AFTER"
Nome
RetornoTipoDescrição
ObrigatórioSim
lRetLógico

Onde:

ConteúdoExecução
.T.O processamento do ponto de entrada foi executado com sucesso. Portanto, a execução da carga das próximas linhas da grid continuará, sem interrupção, até que todas as linhas previstas sejam incluídas na grid.
.F.Durante a execução das consistências montadas no seu ponto de entrada foi constatada alguma inconsistência para a carga das informações da linha da grid. Assim, a execução da carga das próximas linhas da grid será interrompida.
Para a ação "GRID_AFTER"
Nome
RetornoTipoDescrição
xRet
ObrigatórioSim
NIL

É o último ponto de entrada a ser executado dentro do processo de carga dos dados da grid.

Exemplo:

#Include 'Protheus.ch'
#Include "FwMVCDef.ch"

*==========================
User Function FT600ULGRID()
*==========================

Local

cAction 

cAction :=

 ParamIXB

ParamIXB[1]

Local oMdlGrid 

Local oMdlGrid :=

 ParamIXB

ParamIXB[2]

Local 

Local aGridDetail

 

:=

 ParamIXB

aClone(ParamIXB[3])

Local 

Local cMdlDetail

 

:=

 ParamIXB

ParamIXB[4]
Local

xRet := NIL

xRet := NIL

Do Case
       Case cAction == "GRID_BEFORE" // Execução antes de iniciar inclusão de linhas

                     /* Construa a sua customização para que seja executada antes iniciar a inclusão das linhas na GRID.
                     Sua customização deve atualizar os dados do array aGridDetail, e este novo conteúdo deve
                     ser retornado à função padrão. */
                     xRet := aGridDetail

       Case cAction == "LINE_BEFORE" // Execução antes de iniciar inclusão de uma linha

                     /* Construa a sua customização para que seja executada antes da inclusão de uma linha na GRID.
                     Sua customização deve atualizar os dados do array aGridDetail, e este novo conteúdo deve
                     ser retornado à função padrão. */
                     xRet := aGridDetail

       Case cAction == "LINE_AFTER" // Execução após a inclusão de uma linha

                     /* Construa a sua customização para que seja executada após a inclusão de cada linha na GRID */
                     xRet := .T.

       Case cAction == "GRID_AFTER" // Execução após a inclusão de todas as linhas

                     /* Construa a sua customização para que seja executada após a inclusão de todas as linhas na GRID */
                     xRet := NIL

EndCase

Return xRet


Imagem da aplicação do ponto de entrada

Não disponível.