Page 1 sur 1

@Author : renvoyer seulement le CREATEUR initial

MessagePublié: 30 Mai 2011 à 12:36
par Lebowsky
Salut,

sur un de mes documents j'utilise le champ @Author pour définir des champs de masquage de type (si l'utilisateur connecté est l'auteur, alors il voit tel bloc).

Le problème est que si quelque d'autre modifie le document. (car 3 personnes y ont accès).

la personne qui modifie se rajoute dans le champ @author. (qui renvoie Personne 1, Personne 2)...

Je voudrais que le seul le "premier" créateur reste dans ce champ author.

(les personnes sont en accès Editeur à la base)
(j'utilise une formule de type Masquer si @Left(@Author;"/")!=@Name([CN];@Username)).

mais bon si qq d'autre y touche, Author contient 2 personnes et donc mon champ n'apparait plus.

MessagePublié: 30 Mai 2011 à 12:43
par Michael DELIQUE
salut

tu veux parler du champs $Author je suppose ?

MessagePublié: 30 Mai 2011 à 12:44
par Lebowsky
euh non de la fonction @author dans les formules !

MessagePublié: 30 Mai 2011 à 12:47
par Michael DELIQUE
re,

ça te renvois TOUS les auteurs d'un documents. !

CF aide en ligne a écrit:Returns a text list containing the names of the author(s) of the current document.


c'est a dire le contenu du champ $Authors.

je pense que tu comprend mal le fonctionnement des champs auteurs/lecteurs

MessagePublié: 30 Mai 2011 à 12:50
par Lebowsky
aie aie ça va me poser problèmes. il n'y a pas moyen de "biaiser" le système, avec par exemple un champ calculé à la création :

champ "test1" calculé à la création contenant "@Author".

et après dans mes champs de masquage je mettrai plutot MASQUER si test1!=@Name([CN];@Username) ?


ui je pense que je comprends mal effectivement... :/ C'est peut être pas la bonne solution ce que j'essaie de faire.

MessagePublié: 30 Mai 2011 à 13:04
par Michael DELIQUE
re,

oui, author te renvois un instantanné des acces en écriture.

il faut que tu créé un champ de type authors (et aussi un de type readers) que tu renseigne avec les noms des personnes.

=> http://forum.dominoarea.org/comment-fon ... 17512.html

MessagePublié: 30 Mai 2011 à 13:09
par Lebowsky
pfouah merci pour le lien...

Pourquoi faire simple quand on peut faire compliquer après tout... !

Je vais changer de méthode. Merci quand même

MessagePublié: 30 Mai 2011 à 13:40
par Michael DELIQUE
re,

ce n'est pas compliquer !

les acces en écriture sont géré par les champs de type authors et en lecture par les champs de type lecteurs.
les champs $Authors & $Readers sont des champs systèmes gérer par Domino.

ton besoin est simple donc tu n'en vois pas la nécessite. Quand ton besoin est compliqué tu est bien heureux que ça marche comme ça.
c'est a toi de savoir qui tu veux mettre dans tes champs (personnes, groupes, roles)

MessagePublié: 30 Mai 2011 à 15:19
par Steph_
et en faisant tout simplement ça ?

@Subset(@Name([CN];@Author);1)

Re: @Author : renvoyer seulement le CREATEUR initial

MessagePublié: 30 Mai 2011 à 22:21
par roubech
tester la proposition de Steph
sinon, tu l'as toi même suggérer, j'ai souvent mis un champ "CreatedBy" calculé à la création, mais plutôt avec la formule @UserName

Et si je peux me permettre, j'aime pas trop cette formule
Lebowsky a écrit:@Left(@Author;"/")!=@Name([CN];@Username)

je préfère comparer les nom complets plutôt que les commonname et encore moins utilser un @left pour récupéer le commonname
en stockant le @UserName dans le CreatedBy lors de la création, tu peux comparer directement avec le @Username au moment de l'affichage du doc après CreatedBy != @UserName