Páginas filhas
  • FWSX6Util

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:

NomeTipoDescriçãoObrigatório
cParam CaracterIndica o parâmetro que será replicadoX
xFils ArrayIndica 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ógicoIndica se deve ser compartilhado por unidade de negócio
lShareFil LógicoIndica 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:

NomeTipoDescriçãoObrigatório
cParam CaracterIndica o parâmetro que será verificado na SX6X


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:

NomeTipoDescriçãoObrigatórioPadrão
cParam CaracterIndica o parâmetro que será verificado na SX6

X


cGroupCaracterIndica 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


Exemplo
#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"