Improving our knowledge and in continuation of CA Service Desk - Create a new table - out-of-box and improved by cdtj How to create custom BREL/QREL/LREL attribute this article is show for us how create a new menu node on CA Service Desk.
Open on Administration Menu
> Security and Role Management
>>Role Management
>>>Menu Tree
Select Admin_tree
On the admin_tree Menu detail (register),
Click on File
Click Copy
and provide a "Menu Tree Name" and "Code". Click 'Save' button.
Type information's menu
Menu Tree Name
Code
Description
Click on Save button
Open menu on
Service Desk >> Application Data > Codes
Right click on Codes (or where you would like to add the node),
Click - Create New Node
Creating a new resource
OP=SEARCH+KEEO.SEARCH=1+FACTORY=ztable
You need create Your objects forms to finish these last steps, following these nexts steps you´ll create you new forms for your´s objects
Open a WSP - Web Screen Painter
Click New
Create detail.template
Click publish
Refresh web cache
pdm_webcache -H
Click here and see too how gbruneau could created a new administration tab
References:
CA Service Desk - Create a new table - out-of-box
How to create custom BREL/QREL/LREL attribute
CA CMDB Technical Reference Guide 12.5
Web Screen Painter Help Release 12.9.00
To add new tables to the database
To add new columns
Test new Schema
Publish Schema Modifications
CA Service Desk Manager | CA Service Management Cookbook@
More documents: Tiago MACUL's Blog - Summary CA Service Management Community
Hi gbruneau,
Thank You, great, you found solution for your case.
Thank You for sharing your own solution, help us to improve.
Regards
Tiago Macul
I figured out how to solve my query. What you need to do is duplicate the Administration Web form. I created a new one and named it Administration Modified. The resource field in the web form is what contains the link to the new Menu Tree. $cgi?SID=$SESSION.SID+FID=123+OP=DISPLAY_FORM+HTMPL=admin_main_role.htmpl+KEEP.tree_code=<New_menu_tree_code>+KEEP.ALLOW_MENU_TREE_EDIT=1
Once this webform is created navigate to a role, in my case Administrator. Then open up the Resources tab. Click the Update Tabs button. This will open the Tab search screen, click Create New. I named the tab "Administration tab with modified menu tree", and set the code to admin_mod. The starting page is where you choose your new web form. In my case Administration Modified. Then set the menu bar to Administration. That's it!
Once you verify the new Administration tab works you can remove the original tab from the role.
Tiago if you found this helpful feel free to add it to your original document.
Note: for this to work you still need to follow cdtj's steps, but instead of modifying the default Administration web form make the changes on your modified form. That way you can only make changes to the customized menu tree and not the default.
So following cdtj's steps my part 1 in his section is this,
$cgi?SID=$SESSION.SID+FID=123+OP=DISPLAY_FORM+HTMPL=admin_main_role.htmpl+KEEP.tree_code=admin_tree_modified+KEEP.ALLOW_MENU_TREE_EDIT=1
Hi Tiago,
Thank you for sharing, this document was very helpful. I followed both yours and cdtj's instructions and I can't figure out how replace the default admin menu tree with this modified one. Is that even possible? What I did instead was remove the PDM_IF statement blocking the customize menu button for default menu trees located on detail_menu_tree_name.htmpl form. After doing so I could then add the new menu tree resource to the default menu tree. Is there something obvious I'm missing here?
Thanks for sharing this cdtj.
HI cdtj, Thank You for sharing your solution.
Hi Tiago!
I've faced a problem with adding new node to admin menu.
This might be caused due to role customization or something esle,
but I want to share my solution if someone else will face the same.
PROBLEM: Right mouse click on existent node don't display any options.
SOLUTION:
Option which prevents to edit Menu Nodes called allowMenuTreeEdit, located in hiersel_menu_tree.htmpl.
Code block looks like:
<PDM_IF "$args.KEEP.ALLOW_MENU_TREE_EDIT" == "1"> var m_MenuNodeMenu = createMenuTreeMenu("menu_node"); var m_MenuTopMenu = createMenuTreeMenu("menu_top"); var allowMenuTreeEdit = 1; <PDM_ELSE> var allowMenuTreeEdit = 0; </PDM_IF>
<PDM_IF "$args.KEEP.ALLOW_MENU_TREE_EDIT" == "1">
var m_MenuNodeMenu = createMenuTreeMenu("menu_node");
var m_MenuTopMenu = createMenuTreeMenu("menu_top");
var allowMenuTreeEdit = 1;
<PDM_ELSE>
var allowMenuTreeEdit = 0;
</PDM_IF>
So we need to set flag KEEP.ALLOW_MENU_TREE_EDIT = 1 to access node editing.
Part 1:
1. Open: Administration Tab -> Security and Role Management -> Role Managment -> Role List;
2. Select role that you want to make possibility to edit menu nodes.
3. Go to Resources -> Tabs;
4. Open Admin tab configuration form, when open Starting Page;
5. Add to Resource URL the followed code:
+KEEP.ALLOW_MENU_TREE_EDIT=1
it will look like:
$cgi?SID=$SESSION.SID+FID=123+OP=DISPLAY_FORM+HTMPL=admin_main_role.htmpl+KEEP.tree_code=admin_tree+KEEP.ALLOW_MENU_TREE_EDIT=1
Part 2:
Now we need to pass that attribute to menubar.
1. Open admin_main_role.htmpl;
2. Find the followed frame : NAME=frame id=frmAdmTree
Modifiy web_form_url from :
$cgi?OP=DISPLAY_FORM+SID=$args.SID+FID=$args.FID+HTMPL=menu_tree.htmpl+menu_name=$args.KEEP.tree_code+KEEP.POPUP_NAME=$args.KEEP.POPUP_NAME
to
$cgi?OP=DISPLAY_FORM+SID=$args.SID+FID=$args.FID+HTMPL=menu_tree.htmpl+menu_name=$args.KEEP.tree_code+KEEP.POPUP_NAME=$args.KEEP.POPUP_NAME+KEEP.ALLOW_MENU_TREE_EDIT=$args.KEEP.ALLOW_MENU_TREE_EDIT
Publish modifications.
I really really hope that there is an easier way, but this modification gives possibility to customize access to node editing.
Thanks for sharing.
leia este documento em português em:
CA Service Desk - Criar uma nova árvore no menu - out-of-box - Brazilian Portuguese