5.3.4 Méthodes d'accès aux valeurs du document
Ces méthodes permettent de récupérer et de modifier les valeurs du document en cours.
5.3.4.1 getProperties
Cette méthode retourne les propriétés du document en cours sous la forme d'un objet.
5.3.4.1.1 Arguments
Pas d'arguments
5.3.4.1.2 Retour
Objet
5.3.4.1.3 Exception
Pas d'exception
5.3.4.1.4 Exemple
window.dcp.document.documentController("getProperties");
retourne
{ "id": 1435, "title": "12/05/1985", "family": { "title": "Test tout type", "name": "TST_ALLTYPE", "id": 1430, "icon": "resizeimg.php?img=Images%2Fdoc.png&size=24" }, "icon": "resizeimg.php?img=Images%2Fdoc.png&size=24", "revision": 0, "status": "alive", "initid": 1435, "viewId": "!defaultEdition", "renderMode": "edit", "isModified": false }
5.3.4.2 getProperty
Cette méthode retourne une propriété du document en cours.
5.3.4.2.1 Arguments
-
property
(string) - nom de la propriété
5.3.4.2.2 Retour
Suivant la propriété demandée.
Si la propriété n'existe pas, le retour est undefined
.
5.3.4.2.3 Exception
Pas d'exception
5.3.4.2.4 Exemple
window.dcp.document.documentController("getProperty", "title")
retourne
"COLLET Noah"
5.3.4.3 hasAttribute
Cette méthode retourne true si l'attribut est présent dans le document en cours.
5.3.4.3.1 Arguments
attributeId
(string): nom de l'attribut
5.3.4.3.2 Retour
Un Booléen.
5.3.4.3.3 Exception
Pas d'exception
5.3.4.3.4 Exemple
Ajout d'une méthode hasAttribute
function (attributeId) { var hasAttribute = window.dcp.document.documentController("hasAttribute",attributeId) console.log("l'attribut ", attributeId, "est présent dans le document ?", hasAttribute) }
5.3.4.4 getAttributes
Cette méthode retourne la liste des attributs du document en cours.
5.3.4.4.1 Arguments
Pas d'arguments
5.3.4.4.2 Retour
Un tableau d'objet attributs.
5.3.4.4.3 Exception
Pas d'exception
5.3.4.4.4 Exemple
Ajout d'une méthode getAttributes
function () { var getAttributes = window.dcp.document.documentController("getAttributes") console.log("les attribut du document sont :", getAttributes) }
5.3.4.5 getAttribute
Cette méthode retourne un attribut du document en cours.
5.3.4.5.1 Arguments
-
attributeId
(string) - nom de l'attribut
5.3.4.5.2 Retour
Un objet attribut.
Retourne null
, si l'attribut n'existe pas.
5.3.4.5.3 Exception
Pas d'exception
5.3.4.5.4 Exemple
Ajout d'une méthode getAttribute
function (attributeId:string) { var getAttribute = window.dcp.document.documentController("getAttribute",attributeId) console.log("voici l'attribut ", attributeId, " : ", getAttribute) }
5.3.4.6 getValues
Cette méthode retourne les valeurs des attributs du document en cours.
5.3.4.6.1 Arguments
pas d'argument
5.3.4.6.2 Retour
Un objet indexé par les noms des attributs, et pour chaque attribut les clés suivantes :
value
- la valeur brute
displayValue
- la valeur telle qu'affichée
5.3.4.6.3 Exception
Pas d'exception
5.3.4.6.4 Exemple
window.dcp.document.documentController("getValues")
retourne
{ "zct_civility": { "value": null, "displayValue": null }, "zct_lname": { "value": "COLLET", "displayValue": "COLLET" }, "zct_fname": { "value": "Noah", "displayValue": "Noah" }, "zct_mail": { "value": "noah142@zoo.net", "displayValue": "noah142@zoo.net" }, "zct_photo": { "value": null, "displayValue": null }, "zct_phone": { "value": null, "displayValue": null }, "zct_mobile": { "value": null, "displayValue": null }, "zct_workaddr": { "value": null, "displayValue": null }, "zct_workpostalcode": { "value": null, "displayValue": null }, "zct_worktown": { "value": "Châteauroux", "displayValue": "Châteauroux" } }
5.3.4.7 getValue
Cette méthode retourne la valeur d'un attribut du document en cours.
5.3.4.7.1 Arguments
-
attributeId
(string) - identifiant de l'attribut
5.3.4.7.2 Retour
Un objet
5.3.4.7.3 Exception
Si l'attribut n'existe pas
5.3.4.7.4 Exemple
window.dcp.document.documentController("getValue", "zct_civility")
retourne
{ "value":null, "displayValue":null }
5.3.4.8 setValue
Cette méthode met à jour la valeur d'un attribut du document en cours.
5.3.4.8.1 Arguments
-
attributeId
(string) - identifiant de l'attribut
-
value
(object) - La valeur sous la forme d'un objet contenant
value
: valeur brute de l'attribut, (obligatoire)displayValue
: valeur de l'attribut présentée aux utilisateurs.
Suivant les types d'attribut, la valeur peut nécessiter d'autres informations.
Si displayValue
n'est pas renseignée, elle sera affectée à la valeur de value
.
Pour les attributs multivalués (attributs dans les tableaux ou avec l'option multiple=yes
),
la valeur doit renseigner un "index" pour indiqué le rang de l'élément à modifier.
5.3.4.8.2 Retour
Pas de retour
5.3.4.8.3 Exception
- Si l'attribut n'existe pas,
- Si la valeur ne contient pas au moins la propriété
value
Dans le cas d'un multiple, la valeur doit contenir aussi l'index ou être un tableau.
Dans le cas de nombres multiple dans un tableau, la propriété display value
doit être renseignée (cette valeur ne peut pas utiliser de point comme séparateur de décimal dans un nombre)
5.3.4.8.4 Exemples
Cas d'un attribut texte simple :
window.dcp.document.documentController("setValue", "zct_title", {value: "Bonjour à tous"});
Cas d'un attribut énuméré simple : value
est la clef
window.dcp.document.documentController("setValue", "zct_civility", { value: "M", displayValue: "Monsieur" } );
Cas d'une relation (docid) multiple : affectation du troisième élément
window.dcp.document.documentController("setValue", "zct_annexes", { value : "9876", displayValue:"Conjecture de Hodge", index: 2 } );
Cas d'une date dans un tableau : affectation du premier élément
window.dcp.document.documentController("setValue", "zct_dates", { value : "1999-12-25", index: 0 } );
Si l'index est égal au nombre d'élément déjà présent dans le tableau, une rangée est ajoutée avec la nouvelle valeur. Si l'index dépasse le nombre d'élément, des rangées supplémentaires sont ajoutées. Ces rangées supplémentaires contiennent les valeurs par défaut.
Cas d'une relation (docid) multiple : affectation de 3 éléments
window.dcp.document.documentController("setValue","zct_mathematical_problems", [ {value:"1978", displayValue:"Équations de Navier-Stokes"}, {value:"2032", displayValue:"Conjecture de Poincaré"}, {value:"2123", displayValue:"Hypothèse de Riemann"} ] );
Cas de nombres dans un tableau : affectation d'une colonne avec 3 éléments. Le résultat produit un tableau avec 3 rangées.
window.dcp.document.documentController("setValue","zct_widths", [ {value: 187.5}, {value: 209.56}, {value: -12.5} ] );
Dans ce cas, si le nombre d'éléments est inférieur au nombre de rangées, les rangées supérieures à ce nombre d'éléments sont supprimées. Si le nombre est supérieur aux nombres de rangée, des rangées supplémentaires sont ajoutées. Ces rangées supplémentaires contiennent les valeurs par défaut.
Cas de relation multiple dans un tableau : affectation de 3 liens dans la cellule "zct_annexes" de la rangée n°2. Dans ce cas, la valeur contient un tableau de valeurs. Il n'est pas possible de modifier directement un sous-index particulier des relations multiples dans les tableaux.
window.dcp.document.documentController("setValue","zct_annexes", { index : 1, value: [ {value:"4948", displayValue:"Conjecture de Birch et Swinnerton-Dyer"}, {value:"1032", displayValue:"Équations de Yang-Mills"}, {value:"2123", displayValue:"Hypothèse de Riemann"} ] } );
5.3.4.9 appendArrayRow
Cette méthode permet d'ajouter une ligne à la fin d'un attribut de type tableau.
Si une des colonnes du tableau n'est pas renseignée, la valeur par défaut sera utilisée.
5.3.4.9.1 Arguments
attributeId
- identifiant de l'attribut
values
- un objet ayant pour clef la valeur d'un des attributs du tableau
et pour contenu de chaque clef un objet avec les propriétés :
value
: valeur brute de l'attribut,displayValue
: valeur de l'attribut présenté aux utilisateurs.
5.3.4.9.2 Retour
Pas de retour
5.3.4.9.3 Exception
- Si l'attribut n'existe pas,
- L'attribut n'est pas un attribut tableau,
- Si la valeur n'est pas un objet,
5.3.4.9.4 Exemple
Insérer une ligne à la fin du tableau
window.dcp.document.documentController("appendArrayRow", "zct_array_numbers", { zct_integers:{value:12}, zct_doubles:{value:3.1415}, zct_moneys:{value:12.5} } );
5.3.4.10 insertBeforeArrayRow
Cette méthode permet d'ajouter une ligne avant une ligne d'un attribut de type tableau.
5.3.4.10.1 Arguments
attributeId
- identifiant de l'attribut
values
- un objet ayant pour clef la valeur d'un des attributs du tableau
et pour contenu de chaque clef un objet avec les propriétés :
value
: valeur brute de l'attribut,displayValue
: valeur de l'attribut présenté aux utilisateurs. -
index
(int) - Position à laquelle sera insérée la ligne (0 étant au début du tableau)
5.3.4.10.2 Retour
Pas de retour
5.3.4.10.3 Exception
- Si l'attribut n'existe pas,
- Si l'attribut n'est pas un attribut tableau,
- Si la valeur n'est pas un objet,
- Si l'index n'est pas entre le minimum et le maximum du tableau
5.3.4.10.4 Exemple
Insérer une ligne en première place d'un tableau :
window.dcp.document.documentController( "insertBeforeArrayRow", "tst_apibase_array", { "tst_dates" :{ value : "1985-05-13" } }, 0 );
5.3.4.11 removeArrayRow
Cette méthode permet de supprimer une ligne d'un tableau.
5.3.4.11.1 Arguments
-
attributeId
(string) - identifiant de l'attribut
-
index
(int) - index de la ligne avant l'insertion
5.3.4.11.2 Retour
Pas de retour
5.3.4.11.3 Exception
- Si l'attribut n'existe pas,
- Si l'index n'est pas entre le minimum et le maximum du tableau
5.3.4.11.4 Exemple
Supprimer la première ligne d'un tableau
window.dcp.document.documentController("removeArrayRow", "tst_apibase_array", 0)