Page 1 sur 1

vue : afficher uniquement ses propres documents

MessagePublié: 12 Juil 2011 à 15:46
par Lebowsky
Salut à tous !

petit problème je n'arrive pas à réaliser la chose suivante :


faire en sorte que sur une vue intégrée 'index' d'un masque X , ne soient affichés uniquement les documents que l'utilisateur a lui même créé. (en gros chaque utilisateur voit seulement ses propres documents et pas ceux des autres.)

j'ai essayé d'utiliser les paramètres de la vue intégrée (dans le masque), en particulier le paramètre : "Afficher une seule catégorie" , en mettant des formules du type @usename, @v3Username, etc... mais quand ça prend, je ne vois plus aucun document dans la vue (ni même ceux que j'ai créé.)

(dans les documents je dispose d'un champ CreatedBy calculé à la création avec la formule @Right(@Left(@Username;"/");"=") Peut être que ça peut aider (avec une comparaison ou autre?)

Merci d'avance !

MessagePublié: 12 Juil 2011 à 15:52
par Michael DELIQUE
salut

seule les vues privé (ou les vues public devenant privé à la premiere utilisation) sont capables de gérer le @username dans un select.

sinon :

- passé par une vue intégré avec un restricttocatégory sur le @username
- ça => http://www.domlike.net/domlike/dl2.nsf/ ... BOE-6HFMFN
- ou alors jouer avec les champs auteur/lecteur

MessagePublié: 12 Juil 2011 à 15:58
par Lebowsky
Merci de la réponse rapide !

le restricttocategory c'est ce que j'ai essayé de faire je crois ==>>

en fait dans mon document j'ai plusieurs Champs :
- champ "CreatedBy" avec @Username (calculé à la création)
- champ "demandeur" avec @Right(@Left(CreatedBy;"/");"=")

ensuite dans ma vue j'ai plusieurs colonnes, dont la troisième qui reprend la formule "@Right(@Left(CreatedBy;"/");"=")" de chaque document.

c'est là dessus que je voudrais placer ma "restriction", De façon à ce que l'utilisateur connecté voit uniquement les documents dont le @createdby corresponde au @username actuel.

je sais pas si je m'exprime bien

MessagePublié: 12 Juil 2011 à 16:10
par Michael DELIQUE
re,

il faut que la premiere colonne de ta vue soit catégorisé sur le champ qui contient les noms. c'est elle qui fera le match avec le @username du parametre de ta vue.

et au lieux d'utiliser des @left hazardeux sur les nom utilise la fonction @name

MessagePublié: 13 Juil 2011 à 08:15
par Lebowsky
Ok, mais mettre nom en première colonne ça m'arrange pas.

est-il possible de masquer un duplicata de la colonne nom placé en première position ?

MessagePublié: 13 Juil 2011 à 08:31
par Michael DELIQUE
re,

dans ce cas la premiere colonne ne s'affiche pas. essais !

MessagePublié: 13 Juil 2011 à 08:59
par Lebowsky
bon ben même si je mets la colonne "nom" en première colonne, et sans la masquer, dès que je remplis mon "Afficher une seule catégorie" par @Name([CN];@UserName) ; quand j'actualise tous les documents disparaissent...

pourtant dans la vue, la formule de la colonne est bien le champ "CreatedBy" de chaque document, qui est calculé à la création avec pour formule @Name([CN];@UserName)

je comprends pas pourquoi ça marche pas :(

(j'ai bien remplacé mes @left hasardeux par un @name digne de ce nom ^^)

MessagePublié: 13 Juil 2011 à 11:13
par Michael DELIQUE
re,

dans la formule de ta colonne c'est pas un @username qu'il faut mais

@Name([CN];CreatedBy)

pour info le @username renvois toujours le nom sous ça forme canonique

MessagePublié: 14 Juil 2011 à 16:49
par roubech
cette 1ere colonne est bien categorisée ?