Is it possible to find all design elements signed by an id?

Is it possible to find all the design elements in a database/multiple databases signed by a specific id?

We have a problem with two very similar generic signer ids. One is being “retired” for various reasons - mainly security but want to find every instance of where a design element exists signed by this id?

Subject: Is it possible to find all design elements signed by an id?

Why not just re-sign all the databases / templates with an administrator id?

There might be a few examples in the sandbox:

http://www-10.lotus.com/ldd/sandbox.nsf/Search?SearchView&Query=design&SearchOrder=0&Start=1&Count=100

Subject: RE: Is it possible to find all design elements signed by an id?

Can’t do this as a lot of Notification agents are signed with different id’s hence trying to isolate just the ones we need to re-sign. A pain I know!

Subject: RE: Is it possible to find all design elements signed by an id?

Hi,

Yes it’s possible but you have to developp it.

I did it for the “fun of it”. It’s a very powerful Db. I think it would a great db to put on OpenNtf :slight_smile:

Edit

You could possibly use the NoteCollection class

End edit

1- You scan the log.nsf db for every dbs the server,

2- Scan for exclusions (Databases or folders, ex: Mail\ , admin4.nsf, etc)

3- If it’s not an exception, do your scan using the DBDesign library of Damian Katz

you could concentrate yourself only on agents, scripts libs and stuff like that and bypass Page, image.

Set dbDesign = createDatabaseDesign(dbase)

Call Verification(dbDesign.formDocuments, "Form", dblog)

Call Verification(dbDesign.subformDocuments, "SubForm", dblog)

Call Verification(dbDesign.viewDocuments, "View", dblog)

Call Verification(dbDesign.navigatorDocuments, "Navigator", dblog)

Call Verification(dbDesign.folderDocuments, "Folder", dblog)

Call Verification(dbDesign.framesetDocuments, "Frameset", dblog)

Call Verification(dbDesign.scriptLibraryDocuments, "ScriptLibrary", dblog)

Call Verification(dbDesign.agentDocuments, "Agent", dblog)

Call Verification(dbDesign.databaseScriptDocuments, "DatabaseScript", dblog)

Call Verification(dbDesign.outlineDocuments, “Outline”, dblog)

Call Verification(dbDesign.sharedFieldDocuments, "SharedField", dblog)

Call Verification(dbDesign.sharedActionDocuments, "SharedAction", dblog)

Call Verification(dbDesign.pageDocuments, "Page", dblog)

Call Verification(dbDesign.imageDocuments, "Image", dblog)

Function Verification(designDocs As Variant, typeDocs As String, dblog As NotesDatabase) As Variant

If Isempty(designDocs) Then

	Exit Function

End If



Forall designdoc In designdocs

	Set nn = New NotesName(designdoc.Signer)

	Set dt = New NotesDateTime(designdoc.Lastmodified)

	

	DateEvent = designdoc.Lastmodified

	

	

	Set doc = dblog.CreateDocument

	doc.Form = "Modification"

	doc.DateModif = dt.LSLocalTime

	doc.Base = designdoc.parentdatabase.Title

	doc.Path = designdoc.parentdatabase.filepath

	doc.Nom = nn.Abbreviated

	doc.Type = typeDocs

	doc.serveur = designdoc.parentdatabase.Server

	doc.Structure = designDoc.~$Title(0)

	If doc.HasItem("$DesignerVersion") Then

		doc.Version = designDoc.~$DesignerVersion(0)

	End If

	

	Call doc.Save(True, False)

	

End Forall

Then put every docLog in a cental db categorized by user, by date, etc.

It will give you something like that

Then , you can decide if you want to sign every design elements.

JYR

Subject: RE: Is it possible to find all design elements signed by an id?

The Design element search tool lets you search all databases on a server for design elements of a specified type that were last modified with a particular ID. This should be what you need.