Árvore de páginas

Ponto de Entrada

Descrição:

Ponto de Entrada na rotina de Orçamento por Fases, executado na mudança de linhas da grid de Peças e Serviços, utilizado para tratar quais campos da grid podem ser alterados.

Localização:

Atualizações \ Mov Oficina \ Orçamento por Fases

Eventos:

/*/{Protheus.doc} OX0010181_CamposAlterarLinha

Executado na mudança de linhas nas grids de Peças e Serviços (Evento bChange)

Chama PE que possibilita a alteração do aAlter das GetDados: 1-Peças / 2-Serviços


@type function

@author Andre Luis Almeida

@since 21/09/2021

/*/

Static Function OX0010181_CamposAlterarLinha( lPEAltCpos , nTpGD , aAltPad )

Local aRet := {}

Default lPEAltCpos := ExistBlock("OX001ALT")

Default nTpGD := 0

Default aAltPad := {}

If lPEAltCpos .and. nTpGD > 0

aRet := ExecBlock("OX001ALT",.f.,.f.,{ nTpGD , aClone(aAltPad) }) // ( nTpGD: 1-Peças ou 2=Serviços , vetor padrão aAlter )

If nTpGD == 1 // Peças

oGetPecas:aAlter := oGetPecas:oBrowse:aAlter := aClone(aRet) // Seta aAlter de Peças

ElseIf nTpGD == 2 // Serviços

oGetServ:aAlter := oGetServ:oBrowse:aAlter := aClone(aRet) // Seta aAlter de Servicos

EndIf

EndIf

Return

Programa Fonte:

OFIXX001.PRW

Função:

OX0010181_CAMPOSALTERARLINHA()

Parâmetros:
NomeTipoDescrição

nTpGD

Numérico

Tipo: 1-Peças ou 2=Serviços

aAltPad

Array

Array padrão aAlter

Retorno:
NomeTipoDescrição
aRetArray

array com os campos que podem ser alterados

Exemplo:

Include totvs.ch

/*

Ponto de Entrada na rotina de Orcamento por Fases, executado na mudança de linhas da grid

de Peças e Serviços, utilizado para tratar quais campos da grid podem ser alterados.

*/

User Function OX001ALT()

Local nTpGD := ParamIXB[01] // nTpGD: 1-Peças ou 2=Serviços

Local aRet := ParamIXB[02] // vetor padrão aAlter

/*

If nTpGD == 1 // Pecas

If !Empty(M->VS3_XTESTE)

aRet := {} // limpar o vetor que contem os campos que podem ser alterados

EndIf

ElseIf nTpGD == 2 // Servicos

If !Empty(M->VS4_XTESTE)

aRet := {} // limpar o vetor que contem os campos que podem ser alterados

EndIf

EndIf

*/

//

MsgInfo("Ponto de Entrada OX001ALT executado com sucesso!")

//

Return aClone(aRet)