APPLYCONTEXT
Consente di applicare un contesto di esecuzione, o di eseguire delle funzioni all'interno di un contesto di esecuzione, diverso da quello nel quale è stato eseguito il programma.
L'applicazione del contesto consiste nell'impostazione dell'ambiente di esecuzione (configurazione, variabili di ambiente, altre impostazioni, etc.) prelevandole dai file di configurazione (CFGSIS.INI e CONF_SIS.INI) presenti sul prodotto a cui il contesto si riferisce.
Al termine dell'esecuzione dell'azione sul contesto specificato viene eseguito automaticamente il ripristino delle impostazioni riferite al contesto di partenza
Parametri
| Parametro | Definizione | I/O | Versione traduttore | SMP | |
|---|---|---|---|---|---|
| CONTESTO | Stringa | ||||
| BASE | Stringa | ||||
| AZIONE | Azione | ||||
| ANNODF | Long | ||||
| PRP | Stringa | ||||
| PR | Stringa | ||||
| IMI | Intero | ||||
| DOMPS | Long | ||||
| DOMPSCIF | Stringa | ||||
| NOREADCFG | Intero | ||||
| READPRO | Intero | ||||
| PHR | Stringa | ||||
| PHS | Stringa | ||||
| PHRTM | Stringa | ||||
| LEGGISMTP | Intero | ||||
| LINGUASTAMPA | Alfanumerico | 28.5 | |||
| ERRORE | Intero |
CONTESTO
Nome del contesto da applicare. Il nome è una etichetta che ne riferisce gli usi successivi. Il parametro può assumere i valori:
| Valore | Significato |
|---|---|
| <Sezione su CFG> | Permette di leggere la procedura e la cartella base dalla sezione omonima del file di configurazione di procedura (cfg<prp>.ini) |
| CORRENTE | Permette di modificare / rileggere i parametri di configurazione del contesto corrente |
| TEST | Permette di utilizzare l'ambiente in modalità TEST (interno a Builder) |
| DINAMICA | Permette di gestire la modalità dinamica, che comporta l'indicazione della procedura e/o della cartella base cui collegarsi tramite i parametri BASE e PRP |
| STAZIONE | Permette di modificare la stazione contenuta in BCContextInfo.GetStazione rendendola compatibile con l'ambiente Desktop, ripristinandola una volta richiamata la callback (utile per programmi che utilizzano dei transitori in comune tra ambiente Desktop e .NET) |
Dalla versione 22.8 l'ambiente supporta la modalità dinamica. Normalmente l'interazione tra due prodotti integrati richiede la definizione della configurazione nei rispettivi CFGSIS.INI delle due installazioni, in modo che in ognuno sappia la cartella base e/o la procedura dell'installazione integrata. La modalità dinamica, nata per consentire le operazioni di migrazione tra installazioni, evita la modifica dei file di configurazione CFGSIS.INI, permettendo di indicare con appositi parametri (specificatamente CONTESTO, PRP e BASE) le coordinate dell'installazione cui collegarsi. Oltre a ciò valgono le indicazioni valide per l'integrazione tra prodotti.
BASE
Indica la cartella base del nuovo contesto. Serve per il richiamo in modalità dinamica.
ANNODF
Anno DF per cui impostare il contesto. Se non indicato l'anno DF di riferimento è quello in corso.
PRP
Sigla supermenù da cui andare a leggere il contesto per impostare le variabili d'ambiente. Se non indicato si farà riferimento al PRP in uso.
PR
Sigla menù da cui andare a leggere il contesto per impostare le variabili d'ambiente. Se non indicato si farà riferimento al PR in uso.
IMI
Consente di escludere l'utilizzo della anagrafica mittenti (se attiva).
Questa impostazione va utilizza esclusivamente se come mittente viene usato un indirizzo e-mail NON presente in anagrafica mittenti.
DOMPS
Indica il codice del dominio (nel caso di multiistanza) del nuovo contesto, in questo modo è possibile cambiare istanza corrente della multiistanza passando il relativo codice nel parametro DOMPS[] e indicando nel parametro AZIONE[] il codice BC da eseguire nel nuovo contesto.
Indicare anche il parametro READPRO nel caso si vogliano valorizzate anche le variabili PHD, PHP.
DOMPSCIF
Parametro configurabile del raggruppamento derivato dalla definizione della colonna.
NOREADCFG
Consente di escludere l'utilizzo della anagrafica mittenti (se attiva).
Questa impostazione va utilizza esclusivamente se come mittente viene usato un indirizzo e-mail NON presente in anagrafica mittenti.
READPRO
Indica se rileggere il file CONFIG_DIR.PRO che contiene le cartelle nelle installazioni con configurazione unificata.
- Il file è riletto sempre nel caso di installazioni unificate (EDF).
- Va indicato nel caso di installazioni multi istanza.
PHR
Parametro configurabile del raggruppamento derivato dalla definizione della colonna.
LEGGISMTP
Indica se effettuare anche la lettura dei server SMTP durante l'APPLYCONTEXT. Normalmente non viene effettuato per aumentare le prestazioni.
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | No |
1 | Si |
LINGUASTAMPA
Indica la lingua da applicare durante la stampa di un file.
ERRORE
Consente al programma di intercettare e gestire l'errore restituito dalla funzione.
Utilizzare uno dei metodi GetLastError*() della classe BCContextInfo per ottenere le informazioni dell'errore.
Errori
| Codice | Descrizione |
|---|---|
| 20001 | Non e' possibile caricare il contesto '{Me._CONTESTO}'. Cartella '{ex.PathName}' non trovata. |
| 20002 | Non e' possibile caricare il contesto '{Me._CONTESTO}'. Non e' stata trovata la configurazione per la procedura indicata. |
Esempi
Applicazione tramite CFG del contesto di esecuzione
'Associazioni - esempio di Integrazioni tra eSOLVER e PROFIS
'In eSOLVER viene definito il prodotto PROFIS nel proprio file CFGSIS.INI come di seguito riportato:
'[Prodotto PROFIS]
'Direttiva Base = \\server\PROFIS3\
'Procedura = PRF3
'e nel prodotto PROFIS viene definito il prodotto eSOLVER nel proprio file CFGSIS.INI:
'[Prodotto ESOLVER]
'Direttiva Base = \\server\eSOLVER\
'Procedura = ES
'Applicazione contesto PROFIS da eSOLVER
'@APPLYCONTEXT CONTESTO["Prodotto PROFIS"] _
AZIONE[CHIAMA_PROFIS()]
'Applicazione contesto eSOLVER da PROFIS
'@APPLYCONTEXT CONTESTO["Prodotto eSOLVER"] _
AZIONE[CHIAMA_eSOLVER()]
Applicazione dinamica del contesto di esecuzione
'Nell'integrazione dinamica tra installazioni, la configurazione non è indicata nel file CFGSIS.ini, ma è specificata indicando in modo esplicito i valori
'@APPLYCONTEXT CONTESTO["DINAMICA"] _
BASE["X:\ESOLVER\ES_VE"] _
PRP["ES"] _
AZIONE[CHIAMA_ESOLVER()]