Dans cet article


Offres d'emploi

Tags

Scripting OJS : les méthodes du type « CallXXXXformula() »

Scripting OJS : les méthodes du type « CallXXXXformula() »

Introduction

Les méthodes du type « Callformula() » sont utilisées pour exécuter des formules OPX2 directement dans le code OJS. Le nom de chacune de ces méthodes indique quel type de formule elle permet d’évaluer (boolean, string, number, duration, date).

Les méthodes sont donc les suivantes :

Méthode Type de formule attendue
Callbooleanformula() Boolean
Calldateformula() Date
Calldurationformula() Duration
Callnumberformula() Number
Callstringformula() String

 

Contexte d’utilisation

Ces méthodes sont employées pour utiliser des formules OPX2 (ou des variables globales) dans du code OJS sans avoir à recoder le ces formules en OJS.

Elles s’appliquent sur les objets Planisware.

Par exemple :

Utilisation de la méthode « Calldateformula »

 

Ici on cherche à afficher la variable globale « DATE_COURANTE » qui de type « date ».

**

**

Arguments de la méthode

my_object.Callformula(FORMULA)

Avec :

Argument Type Description Obligatoire
FORMULA String Formule (ou variable globale) à évaluer oui

 

Le principe est le même pour les 5 méthodes. La formule (ou la variable globale) appelée doit impérativement être du même type que celui de la méthode. Par exemple une formule de type « booléen » devra être appelée par la méthode « Callbooleanformula() ».

Si la formule n’est pas correcte la fonction renvoie une erreur.

Exemple d’utilisation

L’exemple suivant va utiliser la formule « FINSOUSCHAINE » (de type string) pour afficher les 8 dernières lettres d’une chaine de caractères.

var my_string = "Ma chaîne complète";
var formula = "FINSOUSCHAINE(\""+my_string+"\",8,0)";
alert(formula);
var name=context.callstringformula(formula);
alert(name);

Utilisation de la méthode « Callstringformula »

**

**

Remarque importante :

On constate ici que la formule nommée que l’on va stocker dans la variable « formula » doit être une chaîne de caractères comprenant tous les caractères que l’on aurait entré dans Planisware pour définir un filtre par exemple (avec notamment les parenthèses, virgules et guillemets). Une mauvaise composition de la formule est LA principale erreur dans l’utilisation de ces méthodes. Car comme on le voit ici les guillemets doivent être protégés par des « \ ».

 

L'équipe AXOPEN

Voir aussi les articles suivants

Scripting OJS : remplacer une chaine de caractère par une autre dans un champ de type string avec la méthode « replaceregexp »
Introduction : Il est relativement fréquent d’avoir à remplacer une chaine de caractères par une autre dans des traitements réalisés en script OJS dans une application sous P5. La méthode « replaceregexp » appliquée sur des variables ou des champs de type « string » permet de réaliser simplement cette opération. Principe : La méthode « replaceregexp » s’utilise de la manière suivante : new_label = old_label.replaceregexp(reg_exp,target_sub_string); Ainsi la variable « new_label » aura pour valeur celle de la variable « old_label » dont les caractères répondant à l’expression régulière « reg_exp » auront été remplacés par « target_sub_string ».
Lire l'article

Scripting OJS : écrire dans un fichier texte externe avec la fonction « fileOutputStream »
Introduction Il peut-être utile de générer un fichier au format texte depuis le client léger (pour générer le log d’un traitement applicatif par exemple). La fonction standard OJS « fileOutputStream » permet de gérer ce type d’export. Création d'un fichier texte avec la fonction "fileOutputStream"   **Contexte d’utilisation ** Ce type d’export est plus flexible que les exports standardisés Planisware à partir d’un format d’import/export ou les export Excel.
Lire l'article

Scripting OJS : la fonction SelectFile()

Scripting OJS : la fonction SelectFile()

Le 07/03/2012 par Thibault Gonin

Contexte d’utilisation : Lorsque l’on souhaite mettre en place une fonctionnalité d’import de fichier en client léger (pour initialiser ou mettre à jour des données par exemple) il n’est pas possible d’utiliser les mécanismes standards d’import. En effet ces fonctionnalités restent accessibles seulement en client lourd. La fonction SelectFile() permet donc, dans du code OJS, de demander à l’utilisateur le nom complet (répertoire + nom) d’un fichier que l’on souhaite pouvoir traiter (importer, lire, analyser…) dans P5.
Lire l'article