Histórico da Página
...
Produto: | Microsiga Protheus® |
Ambiente: | Faturamento (SIGAFAT) |
Ocorrência: | Como alterar fazer para não copiar as informações de alguns campos no momento de efetuar a cópia de um registro na rotina de Cadastro de Clientes em MVC |
Passo a Passo: Utilizaremos o ponto de entrada em MVC através do id BUTTONBAR, que será executado antes da abertura da janela do cadastro. No exemplo abaixo, iremos retratar o caso em que o usuário deseja efetuar alterações no momento da cópia de um cliente já cadastrado, alterando o conteúdo do campo de Maior Saldo (A1_MSALDO). Exemplo: Bloco de código | |
language | js | true | #Include "TOTVS.ch"
Function CRMA980() Local aParam
PARAMIXB // Parâmetros passados para o ponto (sempre variam)
xRet := .T. // Retorno lógico para prosseguimento da rotina
oObj := NIL // Objeto que armazenará o modelo total
cIdPonto := "" // Id do momento da chamada do ponto
cIdModel := "" // Qual modelo ou submodelo está ativo If (aParam != NIL) oObj := aParam[1] cIdPonto := aParam[2] cIdModel := aParam[3] // Verifica se o ID é igual a BUTTONBAR e se a operação de inclusão é proveniente de uma cópia If (cIdPonto == "BUTTONBAR" .And. oObj:IsCopy()) // Procura submodelo SA1MASTER e insere no campo informado o conteúdo desejado oObj:GetModel("SA1MASTER"):LoadValue("A1_MSALDO", 0) // Recupera a View ativa e atualiza (necessário para exibição do conteúdo) oView := FwViewActive() oView:Refresh() EndIf EndIf Returnativo If (aParam != NIL) oObj := aParam[1] If cIDPonto == "MODELVLDACTIVE" .And. oObj:GetOperation() == MODEL_OPERATION_INSERT aAdd(aCpoNoCopy, "A1_MSALDO") //Define quais campos do submodelo não serão copiados no processo de cópia do submodelo. EndIf |
---|---|
Pode lhe interessar: |
...