Skip to main content
We have finished developing an application for our client. Now we need to change the system names of all the K2 artefacts and follow a namespace so that the names do not conflict with any other application on the server.
We couldn't find a way to change the system name of the smart forms, views etc. Renaming a smart form only changes the disply name but we need to change the system names. Any help will be appreciated. Thanks.

What are the system names by default? For example, what is one of the system names that you want to change currently being called?


I am sorry if I was not clear. When we create a Smart Form say called "SampleSmartForm" the system name and the display name is same for the smart form i.e "SampleSmartForm". Now if I try to rename the Smart form to say "EmployeeEntry.Form" it only changes the display name and not the system name of the form. The system name is still "SampleSmartForm". We need to change the system names of all the smart forms, views and smart objects to follow a namespace like <company name>.<application name>.<form name> So that it never conflicts with any other application objects.

I am not sure you can change the system name after it's created. I think the only way to do it would be to make a copy of whatever and rename it , then get rid of the old one. I'm pretty sure the system name is locked in at creation time.


I have also had this issue. To get round this what i do is go to the form you want to rename and then click save as and then save it with the name you want. My workflows only use the default client event so it works for me. I just have to change the name of the form in the default client event. If you use the smartforms client event then you may lose mapping of your forms with your workflow. I would test this before changing all forms names.

 

 


Thanks guys!

But it may not be a solution for me as I have a lot of Views which are used in Forms and a lot of rules written in both Views and Forms.

If I create a new form/view I will lose all my rules etc.

I believe since K2 stores this information in SQL Server and uses a separate unique ID apart from System name, it should be posiible to do something from the backend to rename the artefacts.

Did anyone tried this?


I suppose that could be possible but I've never seen or run into anything like that. Good luck though!


You can do so by updating the 'Name' column in the k2.form.form table. Ensure you have checked in the form before making this change.


Hi,

 

@AnirudhKulkarni are you sure if i do this it won't do an effect on views or other related forms??


Hi all,

 

In K2 database, select Form.Form table, 

 

Column Name is SystemName. Update this column, it will update your runtime url.

 

Cheers


15830i0B3FA6AB55B0829A.png

Thanks everyone for the help.

 

Aplogies for replying so late.

There are a lot of database tables where the form name is stored. But mainly it is Form.Form table. Internally K2 uses a unique key to identify a Form/View

 

We did the following steps to get this done:

 

1) We ran a DB script to search on a text (Form name) to see what DB tables stores form names.

2) Then we manually renamed all the form names in those tables.

3) Then we crossed our fingers and tested the form :-)


Reply