Définition :
Permet d'exécuter une application SILOG comme le fait le SLA. L'application lancée est filtrée sur l'enregistrement dont le filtre est passé en paramètre.
Un seul enregistrement est visible, le mode création et duplication de l'application sont désactivés car un filtre est activé.
Une seule cession de l'application est ouverte, un deuxième lancement d'un SLAL réactualise le filtre sans ouvrir une autre cession de l'application.
Si vous souhaitez vous positionner sur un enregistrement et disposer des actions création et duplication, il faut utiliser la fonction "SLA".
Exemple dans l'application "Clients" visualiser les factures du client consulté.
Syntaxe :
SilLancerApplicationLiee ("Titre", "Programme", Argument, autoexit, "alias", "user", "password")
ou
C"Titre", "Programme", Argument, autoexit, "alias", "user", "password")
Titre : Titre de la fenêtre.
Programme : Nom de l'application à exécuter.
Argument :
N° Paramètres | Paramètres | Valeurs | Commentaires |
---|---|---|---|
1 | titre de la fenêtre | ““ | Il est inutile de renseigner le titre de la fenêtre, car ce sera fait automatiquement par l’application liée |
2 | nom de l'application | Nom de l'application à lancer. | |
3 | paramètres d’appel de l’application SILOG | "@E #F (<filtre appli>) #L" | Les paramètres d’appels de l’application liée permettent de définir un filtre. Ce filtre doit porter sur un champ de la table d’en-tête de l’application liée, alors que la valeur doit être un champ de la table d’en-tête ou de corps de l’application (ou éventuellement d’une table lue automatiquement). 2ème élément : mode du positionnement |
4 | autoexit | 0 ou 1 | Mettre 0 si l'application appelée doit restée ouverte après fermeture de l'application appelante. Sinon mettre 1 |
5 | Alias | ““ | Profil de connexion ERP Ne doit pas être renseigné pour lancer une application liée (permet de lancer une application sur une autre base de données et/ou avec un autre utilisateur). |
6 | User | ““ | Ne doit pas être renseigné pour lancer une application liée (permet de lancer une application sur une autre base de données et/ou avec un autre utilisateur). |
7 | Password | ““ | Ne doit pas être renseigné pour lancer une application liée (permet de lancer une application sur une autre base de données et/ou avec un autre utilisateur). |
Script de positionnement : Dans le mode modification et création, il faut encadrer le filtre du script par des accolades.
Autoexit : 0 ou 1.
alias :Alias de la base à utiliser. Ce paramètre permet d'exécuter l'application sur une autre base de données.
user : Identifiant de l'utilisateur à utiliser.
password : Mot de passe pour l'utilisateur spécifié.
Cas pratique :
SLAL("","FAV5", "@E #F(FAVE.CodeClient="+CLI.CodeClient") #L", 1,"","","")
Cet exemple permet de lancer l’application « Factures" (Ventes) à partir de l'application « Clients » en mode consultation :
Procédure relative à notre exemple :
Etape 1 : Editer le masque de l’application « Clients » qui va recevoir le bouton de lancement de l’application liée « Factures » ([CTRL+click droit] sur le masque concerné).
Répondre « OUI ».
Résultat :
Etape 2 : Insertion de l’objet étendu « Bouton d’actions » dans le masque.
Sélectionner l’objet étendu « Bouton d’actions » , puis, poser cet objet dans le masque :
Donner un titre à ce bouton : Exemple « Factures du Client »
Résultat :
Etape 3 : Paramétrage du bouton
Exemple
Saisir le libellé, et l’action correspondante en utilisant la syntaxe de la fonction SLAL, d’ouverture de l’application « Factures » depuis l’application « Clients » ci dessous.
SLAL("","FAV5", "@E #F(FAVE.CodeClient="+CLI.CodeClient+") #L", 1,"","","")
Valider.
Etape 4 : Validation et enregistrement du paramétrage.
Après validation du masque précédent, enregistrer le paramétrage pour les utilisateurs concernés :
Etape 5 : Résultat
Après avoir rechargé l’application « Clients » le bouton « Factures du client » est bien présent.
La sélection de ce bouton permet d’ouvrir l’application liée « Factures (Ventes) ».
Cette application ne présente que les factures du client concerné.
Pour identifier l'application ouverte dont les données sont filtrées, le nom de l'application est encadré par des crochets.
Ainsi, dans l'exemple ci dessous, deux applications "Facturation (Ventes)" sont ouvertes, on peut de cette façon identifier celle dont les données sont filtrées.
Autre exemple : ouvrir l'application client en mode modification
SLAL("","CLIENT", "@E #M({CLI.CodeClient="+vu$(1)+"}) #D", 1,"","","")
Dans le mode modification et création, il faut encadrer le filtre du script par des accolades.