on 01-12-2012 2:28 PM
I know how to create a menu in SAP and its various sub menus. I do not know how to create a submenu that has within it another submenu.
For example:
Main Menu
..................Sub Menu X
.................................Cadastre
...............................................Officials
...............................................Service provided
.................................Parameters
...............................................XXXX
...............................................Tables
..................Sub Menu Y
.................................Calculations
...............................................RPA
How to create menus that order?
Edited by: harley.rodrigues on Jan 12, 2012 3:28 PM
Edited by: harley.rodrigues on Jan 12, 2012 3:36 PM
Hi Harley,
It's probably easiest to use the XML interface to load your menu structure in one batch.
Based on your example, the XML file to create the menus would be something like the following:
<Application>
<Menus>
<action type="add">
<Menu Checked="0" Enabled="1" FatherUID="43520" String="Sub Menu X" Type="2" UniqueID="MENUID1" Image="">
<Menus>
<action type="add">
<Menu Checked="0" Enabled="1" FatherUID="MENUID1" String="Cadastre" Type="2" UniqueID="MENUID2" Image="">
<Menus>
<action type="add">
<Menu Checked="0" Enabled="1" FatherUID="MENUID2" String="Officials" Type="1" UniqueID="MENUID4" Image=""/>
<Menu Checked="0" Enabled="1" FatherUID="MENUID2" String="Service Provided" Type="1" UniqueID="MENUID5" Image=""/>
</action>
</Menus>
</Menu>
<Menu Checked="0" Enabled="1" FatherUID="MENUID1" String="Parameters" Type="2" UniqueID="MENUID3" Image="">
<Menus>
<action type="add">
<Menu Checked="0" Enabled="1" FatherUID="MENUID3" String="XXXX" Type="1" UniqueID="MENUID6" Image=""/>
<Menu Checked="0" Enabled="1" FatherUID="MENUID3" String="Tables" Type="1" UniqueID="MENUID7" Image=""/>
</action>
</Menus>
</Menu>
</action>
</Menus>
</Menu>
<Menu Checked="0" Enabled="1" FatherUID="43520" String="Sub Menu Y" Type="2" UniqueID="MENUID8" Image="">
<Menus>
<action type="add">
<Menu Checked="0" Enabled="1" FatherUID="MENUID8" String="Calculations" Type="2" UniqueID="MENUID9" Image="">
<Menus>
<action type="add">
<Menu Checked="0" Enabled="1" FatherUID="MENUID9" String="RPA" Type="1" UniqueID="MENUID10" Image=""/>
</action>
</Menus>
</Menu>
</action>
</Menus>
</Menu>
</action>
</Menus>
</Application>
And the code to load the XML to create the menus would be as follows:
private void AddMenus()
{
SAPbouiCOM.Form form = null;
XmlDocument doc = null;
String xml = "";
// Get a reference to the Main Menu form
form = sboApp.Forms.GetFormByTypeAndCount(169, 1);
// Freeze it to minimise flickering
form.Freeze(true);
try
{
// Load the menus to the SBO application in one batch
doc = new XmlDocument();
doc.Load(System.Windows.Forms.Application.StartupPath.ToString() + "\\Menus\\MENUS_ADD.xml");
xml = doc.InnerXml.ToString();
sboApp.LoadBatchActions(xml);
}
catch(Exception ex)
{
sboApp.SetStatusBarMessage(ex.Message, SAPbouiCOM.BoMessageTime.bmt_Long, true);
}
finally
{
// Unfreeze and update the Main Menu form
form.Freeze(false);
form.Update();
}
}
Kind Regards,
Owen
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
85 | |
10 | |
9 | |
8 | |
8 | |
6 | |
5 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.