Usina BRGuía AdvPL
Ingresar
← Todos los temas
FUNCIóNEn revisión

RpcSetEnv

RpcSetEnv([cRpcEmp],[cRpcFil],[cEnvUser],[cEnvPass],[cEnvMod],[cFunName],[aTables],[lShowFinal],[lAbend],[lOpenSX],[lConnect]) -> lRet

Abre ambiente automático con empresa, filial e identidad.

RpcSetEnvAdvPL
01 · DESCRIPCIÓN GENERAL

Descripción general

Devuelve .T. al preparar y .F. al fallar, sin sustituir excepciones. TDN prohíbe reiniciar/cerrar ambiente del menú y advierte Schedule y REST con PrepareIn. Desde 12.1.2510, REST/SOAP preparado puede generar excepción. cEnvPass acepta token de autenticación solo desde LIB 20251117 bajo contrato citado, no cualquier token externo. El ejemplo GitHub contiene credencial literal y no cierra ambiente en el recorte: no trasladamos esos patrones. (Fuentes: refs. 1–2.)

02 · SINTAXIS

Sintaxis

RpcSetEnv([cRpcEmp],[cRpcFil],[cEnvUser],[cEnvPass],[cEnvMod],[cFunName],[aTables],[lShowFinal],[lAbend],[lOpenSX],[lConnect]) -> lRet

Parámetros

cRpcEmp
CarácterOpcional

Código de empresa.

cRpcFil
CarácterOpcional

Código de filial.

cEnvUser
CarácterOpcional

Usuario autorizado obtenido fuera del fuente.

cEnvPass
CarácterOpcional

Contraseña o token solo bajo contrato LIB compatible; no registrar.

cEnvMod
CarácterOpcional

Módulo; predeterminado FAT.

cFunName
CarácterOpcional

Identificador de rutina/auditoría; predeterminado RPC.

aTables
ArrayOpcional

Alias a abrir; predeterminado {}.

lShowFinal
LógicoOpcional

Controla lMsFinalAuto; predeterminado .F.

lAbend
LógicoOpcional

Mensaje de fallo de licencia; predeterminado .T.

lOpenSX
LógicoOpcional

Apertura SX/primera filial si ausente; predeterminado .T.

lConnect
LógicoOpcional

Conexión a base; predeterminado .T.

Retorno

Lógico de apertura; aún pueden ocurrir excepciones.

03 · EJEMPLO PRÁCTICO

Ejemplo comentado

#Include "Protheus.ch"

User Function Ed637()
    // Bloque no invocado; contexto y secreto pertenecen al llamador autorizado.
    Local bAbrir := {|cEmpresa,cFilial,cUsuario,cSecreto,cModulo| ;
        RpcSetEnv(cEmpresa,cFilial,cUsuario,cSecreto,cModulo)}
    ConOut(ValType(bAbrir))
Return Nil
Resultado esperado

Crea bloque B. No autentica, abre ambiente ni imprime secretos. En revisión: ejemplo editorial no compilado ni ejecutado en Protheus. Comprobar includes, release, RDD y contexto antes de probar.

BUENAS PRÁCTICAS
  • Cierre con RpcClearEnv solo ambiente abierto y controlado por su rutina. Pruebe licencias, permisos y fallos.
  • En revisión: ejemplo editorial no compilado ni ejecutado en Protheus. Comprobar includes, release, RDD y contexto antes de probar.

Contenido relacionado

REFERENCIAS
  1. TOTVS. RpcSetEnv. TDN. Consulta el 2026-10-27.
  2. Atilio. dan-atilio/AdvPL. Maratona de Exemplos/Exemplo_426_Funcao_RPCSetEnv.prw. Arquivo completo consultado; adaptação editorial. Consulta el 2026-10-27.
Estado
En revisión
Página creada el
Última revisión el
Idioma original
Portugués
Revisión
Usina.BR
0 comentario(s) aprobado(s)

Comentarios

Todavía no hay comentarios aprobados.

Inicia sesión con Google o Microsoft para comentar.

Desarrollado con Usina Docs · Alpha