Entity
Un objet application Requea est mappés sur un objet JavaScript quand un script s'exécute dans le contexte de cet objet. Les propriétés de l'application sont mappées un pour un à des propriétés de l'objet JavaScript et les opérations sont mappées à des fonctions de l'objet JavaScript. De plus, depuis l'objet JavaScript on peut accéder à sa définition.
Propriétés
Les propriétés de l'application Requea sont mappées sur une propriété JavaScript de même nom. Toutes les propriétés sont accessible en lecture et en écriture. Le type de la propriété suit la coorespondance suivante
Requea | JavaScript |
---|---|
Chaîne texte | String |
Entier | Number |
Nombre | Number |
Vrai-Faux | Boolean |
Date | Date |
Date et heure | Date |
Durée | Number (nombre de ms) |
Somme Monétaire | Objet Money |
HTML | String |
Composant | 1 : référence sur l'objet |
multiple : Array d'objets | |
Référence | 1 : référence sur l'objet |
multiple : Array d'objets | |
Hiérarchie | Array d'objets |
Pour qu'une propriété de type "Entier" associée à une option soit reconnue comme un entier dans un script d'opération, il faut passer par une variable intermédaire.
Exemple : var var_int=parseInt(prop_type_entier);
Opérations
Les opérations sont mappées sur des fonctions ayant le meme nom. La fonction accepte jusqu'à 2 paramètres selon si elle est appelée de manière statique ou pas. Si l'opération travaille sur l'instance de l'objet, elle sera appelée directement depuis l'objet. Sinon, elle sera appelée depuis l'objet représentant la définition de l'application.
Exemple 1: opération d'instance
var obj = rqRequest.New();
obj.rqStatus = "pending";
obj = obj.Save();
Exemple 2: operation statique
var obj = rqRequest.Get(id);
Fonctions système communes à tous les objets
getOld(prop)
Récupère la valeur d'une propriété au moment du chargement de l'objet depuis la base. Permet de vérifier ce qui a été saisit par l'utilisateur.
Exemple :
var status = data.rqStatus;
var oldst = data.getOld("rqStatus");
if (status != oldst) {
....
}
declareExtraValue
Déclare une variable temporaire qui peut être associé à un objet entité. La variable déclarée a le même comportement qu'une propriété de l'objet. Les variables sont réinitialisées si l'objet est sauvé en base (Opération Save)
Exemple:
data.declareExtraValue("myStatus");
data.myStatus = "pending";
touch()
marque l'entité comme modifiée afin que la sauvegarde en base soit faite au prochain appel de l'opération Save