We recently received an interesting question from one of our customers:
“Is it possible to toggle the private/public setting for views using Ytria viewEZ?”
Sadly, the answer is no.
The only way to change a view from private to public (or vice-versa) is to create a new view in Domino Designer with the desired private/public setting and then delete the original.
But here’s a little background on why our tools can’t do this:
The Anatomy of a Private View
There are three key things involved in making a view ‘private.’
1) There must be a “V” in the view’s $Flag field.
It’s condition number three that prevents us from easily toggling the private/shared status. It’s impossible to modify a note’s class; you absolutely must create a new note if you want to define a class.
Why Agents and not Views?
Our scanEZ tool has a ‘Share/UnShare’ button for agents which works by replacing the original agent with a copy that is identical except for its new Private/Shared Class status and its UNID (we of course pop up a warning about that UNID change).
So, you might be wondering, why couldn’t we just do the same thing for views and folders?
The problem is that views (and folders) are just so darn complex. There’s a lot of stuff under the hood of a view (or a folder) that could be implicated in such an operation. Depending on your circumstances, a view or folder could contain an utterly enormous index. Deleting and regenerating these indexes is a heavy operation that can bring a production server to its knees—so we decided that having a shiny Share/UnShare toggle button for views and folders was too problematic.
What to do?
So back to the original issue: You’ve got a private view and you want to make it shared (or vice-versa).
We think the best way to go about this would be as follows:
- Choose the New View option in Domino Designer.
- Click the Copy From option button to choose view you want to replace.
- Fill in the view name (you’ll probably want it to be the same as the view you’re replacing).
- Pick the appropriate View type then click OK.