Avatar of 212f_h2o
212f_h2o
 asked on

Update reader field with an agent



I tried to write an agent to enter some usernames into a reader field using an agent. It works but the inserted data is not interpreted well : after i add the users to the reader fields  , everyone can still access the document.
Only after i save the document , the access is restricted.
It looks that only after opening the doc in the UI the reader functionality is starting to work.
What am i doing wrong ?
Should i look out for some things ?
Lotus IBM

Avatar of undefined
Last Comment
HemanthaKumar

8/22/2022 - Mon
Zvonko

Yes, there is a field attribut telling the field it is a Readers field.
You have to set this options too.
Like this:
Call item.AppendToTextList( "Jeffrey Kinnamon" )
item.IsReaders = True
Call doc.Save( True, False )

Good luck,
Zvonko


scottrma

Make sure your field type is set to READERS. Check how you are creating and/or updating the field. If you use:

Set field = New NotesItem(doc,field,"Admins",READERS)

that should make it a Readers field. You can also use NotesItem.IsReaders property to check to see if the field has the READERS type.

Check the document properties box for this field - I suspect it does not have the READERS property set. If not, you must set it in your agent as described above.

Hope this helps.

Scott
scottrma

Hello Zvonko,

Your comment was not there when I started writing....

Cheers,

Scott
All of life is about relationships, and EE has made a viirtual community a real community. It lifts everyone's boat
William Peck
212f_h2o

ASKER

Is there a way to do it with Formula ?
Zvonko

It's ok.

I was only confused how in your example the variable "field" can be at same time NotesItem and String :-)

Zvonko

I can not get ride of the assumption that h2o is Steamer :-)

Buddy you know that this would be dangerous game?

⚡ FREE TRIAL OFFER
Try out a week of full access for free.
Find out why thousands trust the EE community with their toughest problems.
HemanthaKumar

It is possible in Formula,

Here is the sample code, which appends the a user to the readers field in canonical format

FIELD Readers := Readers : @Name([Canonicalize];"TestID/Company")

Also make your readers field as Computed, with default value as

Default Readers := @UserName;
Readers

~Hemanth


212f_h2o

ASKER
Thanx

works great , except that the Rader's are added it to the field. How can I change it so I replace the contents instead of adding it to the list of users already present in the reader's field.
I tried to delete the field using @Deletefield first , but apparently my agent executes the Delete at the end of the agent. I could do it with 2 agents but I guess there's a more elegant way to do it.
ASKER CERTIFIED SOLUTION
HemanthaKumar

THIS SOLUTION ONLY AVAILABLE TO MEMBERS.
View this solution by signing up for a free trial.
Members can start a 7-Day free trial and enjoy unlimited access to the platform.
See Pricing Options
Start Free Trial
GET A PERSONALIZED SOLUTION
Ask your own question & get feedback from real experts
Find out why thousands trust the EE community with their toughest problems.