Multilingual database and refresh template

Hello,

I have created a Multilingual template database.

From this template, I generate new databases that must be multilingual as well.

Problem: when new databases refresh from the template database, the multilingual database flag is lost.

so the new database is not anymore a multilingual db.

Is possibile to mantains this flag, also after the refreshing?

thanks for all help!

Licia

If the Template has multi lingual property set, is marked as a master template, when you create a database from this template, the database will have the multilingual flag set. also when you use Refresh Design, the design will get refreshed and database will remain multi lingual. I have tested it and it works perfectly as desired.

Please ensure the said database template is on server and you are refreshing the design from server, or it is on local and you are refreshing the design from local. Also ensure the Database file is a Master Template is checked in the template properties, the Template name is unique and the database inherits the desgn from this master template (in database properties of the database file).

Please watch for messages on the bottom left bar while design refresh is executing. are there any messages about conflicts or two templates claiming to be the master template (as entered in properties of your master template database)

I have checked with template on local and server both, and the design refresh process retains the multilingual flag as expected.

hope this helps

Thanks for the reply.
I think I found the problem which is related to my template.

Originally it was created from a Domino template.

Nothing is left from that template but somehow the link is left and this is causing the strange behavior with the multilingual flag.

I tried with a new template on a new database and it works perfectly as you say.

Sorry for wasting your time. Thanks a lot!

You are wecome.

Sometime, while addressing an issue, we get caught up in our pre decided interpretaion. It is always good to have a fresh pair of eyes on the issue.

Thats what this forum is for!

Have a nice day!

Just for your information: The information that is shown here is stored in a shared field called "$TemplateBuild". In this field the information is stored in the items "$TemplateBuild", "$TemplateBuildDate" and "$TemplateBuildName".

You can just remove this shared field to get rid of this information. Alternatively you can get the NotesDocument representing the shared field and manipulate these items using LotusScript.

The information about "multilinguality" is stored in the design element "Database icon". There it is in the item "$Flags" and represented by a capitol "M".

This Information can also be edited using LotusScript. Depending on the settings in the template the Database icon is set once on creation of a database or refreshed on every design refresh, just check the flags for deisgn protection on the database icon.

Hi Torsten!

that's a very usefull info. thank you very much!

In Database Icon fields, in the template database, I found a field that, I think, creates all my problems

It's $LANGUAGE and I would like to eliminate it. How can I do that in lotus script?

grazie!

licia

You can use the NotesNoteCollection class to get the document representing the design element and then work with ReplaceitemValue, Sign and Save.

DISCLAIMER: You should definitively try this in a copy of your database first. I just typed this code in the browser, there might be typos / logical flaws in it and of course there is no error handling. This code is just meant to give you a starting point.

Dim ses as New NotesSession
Dim db as NotesDatabase
Dim nnc as NotesNoteCollection
Dim noteID as String
Dim docIcon as NotesDocument

Set db = ses.CurrentDatabase
Set nnc = db.CreateNoteCollection(False)
nnc.SelectIcon = True
Call nnc.BuildCollection
noteID = nnc.GetFirstNoteID( )
Set docIcon = db.GetDocumentbyID( noteID )
Call docIcon.ReplaceItemValue( “$LANGUAGE” , “” )
Call docIcon.Sign
Call docIcon.Save( True, True, True )