Descrição:
Classe que replica um parâmetro existente para uma, mais de uma ou todas as filiais. É possível definir o nível de compartilhamento por Unidade de Negócio ou Filial para esse procedimento.
Métodos:
ReplicateParam()
Sintaxe:
FWSX6Util():ReplicateParam( cParam , xFils , lShareUN , lShareFil ) → lRet
Descrição:
Replica um parâmetro (SX6) e seu conteúdo em uma ou mais filiais de acordo com os parâmetros enviados.
Parâmetros:
| Nome | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| cParam | Caracter | Indica o parâmetro que será replicado | X |
| xFils | Array | Indica as filiais que o parâmetro será replicado (para todas as filiais, enviar *, para selecionar a(s) filial(s), utilizar um array simples ( {,} )) | X |
| lShareUN | Lógico | Indica se deve ser compartilhado por unidade de negócio | |
| lShareFil | Lógico | Indica se deve ser compartilhado por filial |
Retorno:
lRet - Lógico - Indica se os passos para replicação ocorreram sem erros.
ExistsParam()
Sintaxe:
FWSX6Util():ExistsParam( cParam ) →
Descrição:
Verifica se um parâmetro existe na SX6.
Parâmetros:
| Nome | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| cParam | Caracter | Indica o parâmetro que será verificado na SX6 | X |
GetParamData()
LIB 20260119
Método disponível a partir da LIB 20260119.
Sintaxe:
FWSX6Util():GetParamData( cParam, cGroup ) → Caracter
Descrição:
Retorna um String JSON com os dados do parâmetro de todas as filiais dentro do grupo de empresas informado.
Parâmetros:
| Nome | Tipo | Descrição | Obrigatório | Padrão |
|---|---|---|---|---|
| cParam | Caracter | Indica o parâmetro que será verificado na SX6 | X | |
| cGroup | Caracter | Indica o grupo de empresas onde o parâmetro será consultado | Empresa Logada |
Retorno:
Caracter - String JSON com os dados do parâmetro para todas as filiais onde está cadastrado.
Informação:
Parâmetros exclusivos por filial ou unidade de negócio, só poderão ser replicados/localizados, caso o usuário autenticado esteja na mesma filial do parâmetro, caso contrário os métodos não irão encontrar o parâmetro.
Atenção
É importante avaliar a necessidade do uso desse método, o método GetParamData() não substitui a função GetMV(). Considere usar o GetParamData para casos onde é necessário retornar o conteúdo de todos os tipos de acesso, no caso do modo de acesso ser exclusivo. Para casos onde o precise retornar o conteúdo do parâmetro para a filial logada, utilize o GetMV.
Considere o exemplo abaixo, de consulta do parametro MV_DEMO
#include "protheus.ch"
user function GetParamDataEx()
local cJsonData AS CHARACTER
RpcSetEnv( '99' , '01')
cJsonData := FWSX6Util():GetParamData('MV_DEMO', '99')
VarInfo( 'cJsonData', cJsonData, , .f., .t. )
return
Comparando o retorno das funções GetParamData e GetMV, temos o seguinte output:
FWSX6Util():GetParamData('MV_DEMO')
{
"aItems": [
{
"EMP": "990",
"X6_FIL": "01",
"X6_VAR": "MV_DEMO",
"X6_TIPO": "C",
"X6_DESCRIC": "CONTEUDO DA FILIAL RETORNADA",
"X6_DSCSPA": "",
"X6_DSCENG": "",
"X6_DESC1": "conteudo = FILIAL_01",
"X6_DSCSPA1": "",
"X6_DSCENG1": "",
"X6_DESC2": "",
"X6_DSCSPA2": "",
"X6_DSCENG2": "",
"X6_CONTEUD": "FILIAL_01",
"X6_CONTSPA": "FILIAL_01",
"X6_CONTENG": "FILIAL_01",
"X6_PROPRI": "U",
"X6_PYME": "",
"X6_VALID": "",
"X6_INIT": "",
"X6_DEFPOR": "",
"X6_DEFSPA": "",
"X6_DEFENG": "",
"X6_EXPDEST": "",
"X6_ACTIVE": "1",
"R_E_C_N_O_": "",
"R_E_C_D_E_L_": 0
},
{
"EMP": "990",
"X6_FIL": "02",
"X6_VAR": "MV_DEMO",
"X6_TIPO": "C",
"X6_DESCRIC": "CONTEUDO DA FILIAL RETORNADA",
"X6_DSCSPA": "",
"X6_DSCENG": "",
"X6_DESC1": "conteudo = FILIAL_02",
"X6_DSCSPA1": "",
"X6_DSCENG1": "",
"X6_DESC2": "",
"X6_DSCSPA2": "",
"X6_DSCENG2": "",
"X6_CONTEUD": "FILIAL_02",
"X6_CONTSPA": "FILIAL_02",
"X6_CONTENG": "FILIAL_02",
"X6_PROPRI": "U",
"X6_PYME": "",
"X6_VALID": "",
"X6_INIT": "",
"X6_DEFPOR": "",
"X6_DEFSPA": "",
"X6_DEFENG": "",
"X6_EXPDEST": "",
"X6_ACTIVE": "1",
"R_E_C_N_O_": "",
"R_E_C_D_E_L_": 0
}
]
}
GetMV('MV_DEMO')
"FILIAL_01"