13.6.3.25 Doc::getRawValue()

Récupère la valeur brute d'un attribut de document.

13.6.3.25.1 Description

string getRawValue ( string $idAttribute, mixed $defaultValue = "" )

Cette méthode retourne la valeur d'un attribut telle qu'elle est inscrite en base de données. Le type retourné est toujours une chaîne de caractères quel que soit le type d'attribut.

13.6.3.25.1.1 Avertissements

Aucun.

13.6.3.25.2 Liste des paramètres

(string) idAttribute
Identifiant de l'attribut
(string) defaultValue
Valeur par défaut à retourner si la valeur est vide ou si l'attribut n'existe pas

13.6.3.25.3 Valeur de retour

Si l'attribut du document existe et s'il n'est pas vide, sa valeur brute est retournée.

Cette méthode retourne tout attribut de la classe sans vérification. Si cet attribut est non existant ou vide alors c'est la valeur par défaut qui sera retournée.

13.6.3.25.4 Erreurs / Exceptions

Aucune erreur retournée.

13.6.3.25.5 Historique

Cette méthode était anciennement nommée getValue.

13.6.3.25.6 Exemples

Soit la famille suivante :

BEGIN Ma famille MYFAMILY
CLASS My\MyFamily
// idattr idframe label T A type ord vis phpfunc
ATTR MY_IDENTIFICATION Identification N N frame 10 W
ATTR MY_NUMBERONE MY_IDENTIFICATION nombre 1 Y N int 20 W
ATTR MY_NUMBERTWO MY_IDENTIFICATION nombre 2 N N int 30 W
ATTR MY_SUM MY_IDENTIFICATION nombre 1+2 N N int 30 R ::mySum(MY_NUMBERONE, MY_NUMBERTWO)
END

Utilisation des valeurs de my_numberone et my_numbertwo pour la méthode mySum de l'attribut calculé my_sum.

Avec la classe :

namespace My;
use \Dcp\AttributeIdentifiers\MyFamily as MyAttributes;
 
class MyFamily extends \Dcp\Family\Document
{
    public function mySum($x, $y)
    {
        $n1 = intval($this->getRawValue(MyAttributes::my_numberone));
        // si "my_number_two" est vide, alors, la valeur sera 543
        $n2 = intval($this->getRawValue(MyAttributes::my_numbertwo, "543"));
        return ($n1 + $n2);
    }
}

Vérification de l'attribut my_sum en fonction des valeurs de my_numberone et my_numbertwo

use \Dcp\AttributeIdentifiers\MyFamily as Attributes\MyFamily;
/** @var \Dcp\Family\MyFamily */
$myDoc = new_Doc("", "MY_DOCUMENT");
if ($myDoc->isAlive()) {
    $n1=intval($myDoc->getRawValue(Attributes\MyFamily::my_numberone));
    $n2=intval($myDoc->getRawValue(Attributes\MyFamily::my_numbertwo, "543"));
    $sum=intval($myDoc->getRawValue(Attributes\MyFamily::my_sum));
    if ($sum != ($n1 +$n2)) {
        printf("La somme est incorrecte : %d + %d <> %d ! \n", $n1, $n2, $sum);
    }
}

13.6.3.25.7 Notes

Format brut en fonction des types d'attributs :

date
les dates sont retournées sous la forme "YYYY-MM-DD".
timestamp
les horo-dates sont retournées sous la forme "YYYY-MM-DD HH:MM:SS".
time
les temps sont retournés sous la forme "HH:MM:SS".
file, image
les pointeurs de fichiers sous la forme "[mimeType]|[vaultId]|[fileName]"
htmltext
le texte retourné est un fragment html dont les entités html (caractères accentués notamment) ont été convertis en caractères utf-8.

Pour les autres types, aucun formatage spécial n'est appliqué, la valeur brute correspond à la valeur donnée.

Pour les valeurs multiples, chaque valeur est séparée par le caractère \n (retour chariot). Si une des valeurs multiples contient un retour chariot, celui-ci est remplacé par les caractères <BR>.

Pour les multiples à 2 niveaux (attribut multiple dans un tableau), le premier niveau a comme séparateur le caractère '\n' et le deuxième niveau les caractères "
". Exemple : "1234\n567<BR>8876<BR>987\n678<BR>295" indique la structure à 2 niveaux suivante :

  1. -
    1. 1234
  2. -
    1. 567
    2. 8876
    3. 987
  3. -
    1. 678
    2. 295

13.6.3.25.8 Voir aussi

×
nouveauté