[Résolu]formule Restrict to single category dynamique

Forum destiné aux questions sur le développement : Formules, LotusScript, Java ...

[Résolu]formule Restrict to single category dynamique

Messagepar camilleB » 02 Mars 2012 à 16:40

Bonjour,
je voudrais savoir si c'est possible d'écrire une formule qui permettre de sélectionner une valeur mais à partir d'un autre champ d'une vue.
J'ai une vue catégorisée sur un champ "groupe". Et en fonction du groupe de l'utilisateur je voudrais afficher les docs du groupe associé à l'utilisateur.
J'ai essayé un @dblookup sur la vue qui permet de récupérer le groupe de l'utilisateur:
Code : Tout sélectionner
@dblookup("":"";"":"";"vwusers";@name(CN];paramNomUser);2)

Affiche utilisez une seule chaine pour indiquer la catégorie!
Merci de votre aide! je cherche encore sur le forum mais encore rien trouvé!
cdt
camille
Dernière édition par camilleB le 14 Mars 2012 à 23:42, édité 1 fois.
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: formule Restrict to single category dynamique

Messagepar roubech » 03 Mars 2012 à 02:07

tu peux préciser

tu es dans un masque avec un vue intégrée
cette vue est catégorisée sur un champ groupe
et tu souhaites restreindre cette vue à une seule catégorie
la catégorie dépendant du user connecté

question : comment récupérer le groupe de l'utilisateur courant ? c'est une info que tu as dans un autre doc ?
Avatar de l’utilisateur
roubech
Modérateur
Modérateur
 
Message(s) : 4976
Inscrit(e) le : 01 Fév 2007 à 20:22
Localisation : Lille

Re: formule Restrict to single category dynamique

Messagepar camilleB » 03 Mars 2012 à 22:55

Salut, C'est çà!
j'ai tenté par le dblookup! Mais je stock le groupe du user dans un champ caché et calculé (catgroupe alimenté par un dblookup).
le groupe de l'utilisateur est effectivement dans un autre doc et affiché dans une vue de paramétrage.
Si je met par exemple catgroupe dans le restrict to category je n'ai rien d'affiché.
Merci pour ton aide.
cdt
camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: formule Restrict to single category dynamique

Messagepar roubech » 04 Mars 2012 à 02:46

mets un champ "CatGroupe" calculé à l'affichage dans le masque avant la vue intégré pour récupérer le nom du groupe du user avec ton DbLookup
au début tu l'affiche pour vérifier que tu récupères bien la valeur et apres tu le cachera
ensuite dans ta vue intégrée, tu n'aura qu'à reprendre ce champ
Avatar de l’utilisateur
roubech
Modérateur
Modérateur
 
Message(s) : 4976
Inscrit(e) le : 01 Fév 2007 à 20:22
Localisation : Lille

Re: formule Restrict to single category dynamique

Messagepar camilleB » 04 Mars 2012 à 12:15

Salut roubech, oui c'est çà!
Je n'ai pas de docs affichés.
Pour vérifier, je mets une valeur de catégorie au lieu du nom du champ (catGroupe), j'affiche bien les documents!
Je vois pas ou se pose le problème.
Je crois que le souci ce pose aussi sur une autre vue que j'ai ou je fais la même chose à partir d'un champ de catégorisation IDDoc. je dois mettre @text(@documentuniqueID) dans le rectrict to categorie pour que çà fonctionne!
C'est embetant!
Merci!
cdt
camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: formule Restrict to single category dynamique

Messagepar roubech » 04 Mars 2012 à 12:35

pour le @Text, c'est normal, car @DocumentUniqueID retourne un type spécial or dans la vue la colonne est de type texte ...

pour ta vue intégrée, si tu mets une valeur en dur, ça marche
par contre, si tu met le nom du champ, ca ne marche pas
vérifie donc le contenu du champ en l'affichant (ce champ est bien dans ce masque ? du bon type ?)
Avatar de l’utilisateur
roubech
Modérateur
Modérateur
 
Message(s) : 4976
Inscrit(e) le : 01 Fév 2007 à 20:22
Localisation : Lille

Re: formule Restrict to single category dynamique

Messagepar camilleB » 04 Mars 2012 à 13:18

Tu penses que c'est un souci de type de champ?
Le champ catGroupe calculé à la création,type texte et alimenté par:
source:="Notes":"noCache";
vue:="vwUsersOPSF";
cle:=@Name([CN];@UserName);
numcol:=3;
v:=@DbLookup(source;@DbName;vue;cle;numcol;[FailSilent]);
@If(@IsError(v);"Aucune données trouvées";v);
valeurs:=@If(@IsError(v);@Return(@Text(v));@Unique(@Sort(v)));
@Trim(@Unique(valeurs))
L'affichage de la valeur dans le champ est ok!
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45

Re: formule Restrict to single category dynamique

Messagepar roubech » 04 Mars 2012 à 15:31

[FailSilent] veut dire retourne une chaine vide au lieu de retourner une erreur
donc soit tu ne le met pas et tu testes derriere @IsError(v)
soit tu le met et si tu veux tester, tu testes v = ""

le DbLookup te renvoi un tableau
tu fais un @Unique, ca te supprime les valeurs en double
mais tu as toujours un tableau en sortie
si tu ne veux que la 1ère valeur : @Subset(v)

ensuite si tu dis que ce champ affiche la bonne valeur, je ne vois pas
ou alors un pb d'ordre de calcul : si ce champ est calculé après qu'il soit utilisé dans la vue intégrée
ce champ est bien positionné avant la vue ?
tu as besoin de le stocker dans le doc (calculé à la création)
si tu met la formule directement dans la vue intégré pour le calcul de la catégorie ?
Avatar de l’utilisateur
roubech
Modérateur
Modérateur
 
Message(s) : 4976
Inscrit(e) le : 01 Fév 2007 à 20:22
Localisation : Lille

Re: [Résolu]formule Restrict to single category dynamique

Messagepar camilleB » 14 Mars 2012 à 23:42

Salut,
Merci Roubech pour tes précieux conseils!

cdt
camille
camilleB
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 176
Inscrit(e) le : 18 Jan 2012 à 23:45


Retour vers Développement