Categories > [old] TbsOoo & TinyDoc >

noerr où le place-t-on

The forum is closed. Please use Stack Overflow for submitting new questions. Use tags: tinybutstrong , opentbs
By: Bruno
Date: 2006-10-10
Time: 19:25

noerr où le place-t-on

Bonsoir,

J'utilise tbsooo et en développement pas de problème, je vais mettre en production et effectivement je ne veux plus des erreurs dans cette environnement. A moi de les gérer.

J'ai donc lu la doc et compris qu'il fallait placer cette ligne de code
$TBS->NoErr = true; // plus aucun message d'erreur ne s'affiche.
quelque part.

Je l'ai mis dans mon code, mais j'ai toujours les erreurs comme celle-ci

TinyButStrong Error (Merge PHP global variables): Can't merge [var.ouverture_date] because there is no PHP global variable named 'ouverture_date'. This message can be cancelled using parameter 'noerr'.

Je me suis trompé, je l'ai bien compris, mais je ne vois pas où placer ce code.

Une idée ?

Merci
By: Olivier Loynet
Date: 2006-10-10
Time: 19:44

Re: noerr où le place-t-on

Bonsoir,

Je vais regarder comment cela fonctionne, mais je pense qu'il faut poser la question sur le forum TBS car c'est une méthode de la classe TBS

Personnellement je n'utilise jamais ce type de fonction avec la classe tbs ou tbsooo.
En PHP j'affiche le maximum d'informations même les warning et il doit y en avoir aucun.

error_reporting(E_ALL);

Pour éviter le probleme avec les 'var.xxxxx' dont la variable $xxxx n'a pas été allouée, j'utilise les blocks, même pour un seul élément.
De plus c'est plus rapide en performance en comparaison de plusieurs 'var' et d'éléments d'un block.

Pour débugger c'est aussi plus facile, car il suffit d'afficher le contenu de l'array avec print_r($nom_array) avant de le fusionner.

Olivier


By: Bruno
Date: 2006-10-10
Time: 20:12

Re: noerr où le place-t-on

Je préfères effectivement le laisser, mais je vais installer en démonstration alors je préfère que cela ne m'indique pas d'erreur.

Ce que tu veux dire c'est que plutôt que de faire ceci pour alimenter les champs de fusion :

$civilite = getCivilite($requete["maj_civilite_id"]);
$situation_famille = getSitFam($requete["maj_situation_fam"]);
$naissance_date = conver_date($requete["maj_naissance_date"]);
$pays=getTiersTot($requete["ss_medecin_tiers_id"]);

J'ai plutôt intérêt à faire comme cela :

$tab["civilite"] = getCivilite($requete["maj_civilite_id"]);
$tab["situation_famille"] = getSitFam($requete["maj_situation_fam"]);
$tab["naissance_date"] = conver_date($requete["maj_naissance_date"]);
$tab["pays"]=getPays($requete["id_pays"]);

Et ensuite dans le document de Ooo de mettre à la place de [var.xxxx]

J'ai regardé ta documentation, mais lorsque je télécharge les exemples en php, c'est plein de caratères spéciaux, c'est volontaire ?

Bon en fait, je comprends pas bien comment est faite cette documentation.

Que dois-je mettre dans mon php pour quel résultat dans mon Ooo

Merci
By: Olivier Loynet
Date: 2006-10-10
Time: 21:59

Re: noerr où le place-t-on

Dans ton cas pour ne pas trop modifier le code tu peux faire la chose suivante :

$civilite = getCivilite($requete["maj_civilite_id"]);
$situation_famille = getSitFam($requete["maj_situation_fam"]);
$naissance_date = conver_date($requete["maj_naissance_date"]);
$pays=getTiersTot($requete["ss_medecin_tiers_id"]);

$civilite          = isset($civilite)          ? $civilite          : '');
$situation_famille = isset($situation_famille) ? $situation_famille : '');
$naissance_date    = isset($naissance_date)    ? $naissance_date    : '');
$pays              = isset($pays)              ? $pays              : '');

les 4 lignes supplémentaires permettent de forcer le contenu avec une chaine vide si la variable n'a pas été affectée

Olivier
By: Olivier Loynet
Date: 2006-10-10
Time: 22:02

Re: noerr où le place-t-on

petite erreur il fallait lire
$civilite = getCivilite($requete["maj_civilite_id"]);
$situation_famille = getSitFam($requete["maj_situation_fam"]);
$naissance_date = conver_date($requete["maj_naissance_date"]);
$pays=getTiersTot($requete["ss_medecin_tiers_id"]);

$civilite          = (isset($civilite)          ? $civilite          : '');
$situation_famille = (isset($situation_famille) ? $situation_famille : '');
$naissance_date    = (isset($naissance_date)    ? $naissance_date    : '');
$pays              = (isset($pays)              ? $pays              : '');
By: Bruno
Date: 2006-10-11
Time: 09:23

Re: noerr où le place-t-on

Merci Olivier,

Cette solution va me permettre de supprimer plein d'erreur en production, car souvent les champs ne sont pas renseignés et j'avais des erreurs. Rendre tout obligatoire pour l'utilisateur n'était pas possible.

Par contre, je suis prêt à changer mon code pour l'améliorer

Merci encore pour ces conseils.