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

RequeaJavaScript
Chaîne texteString
EntierNumber
NombreNumber
Vrai-FauxBoolean
DateDate
Date et heureDate
DuréeNumber (nombre de ms)
HTMLString
Composant1 : référence sur l'objet
multiple : Array d'objets
Référence1 : référence sur l'objet
multiple : Array d'objets
HiérarchieArray 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

Tags:
Created by Maurice Gasco on 2011/09/28 12:05
     
This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 9.11.5 - Documentation