on 12-20-2014 8:22 AM
Hi
We have created Menu it has 5 options . Under 1 option i want to create sub-option. How it can be done.
Thanks
Hi Sunny,
if I get you correctly you want a menu structure like that :
private void AddMenus()
{
AddMenuItem(SAPbouiCOM.BoMenuType.mt_POPUP, -1, "Mainmenu", "MYMenu", "43520");
AddMenuItem(SAPbouiCOM.BoMenuType.mt_STRING, -1, "Item1", "MYMenu1", "MYMenu");
AddMenuItem(SAPbouiCOM.BoMenuType.mt_POPUP, -1, "Item2", "MYMenu2", "MYMenu");//-> MenuType is PopUp
AddMenuItem(SAPbouiCOM.BoMenuType.mt_STRING, -1, "Item2_1", "MyMenu2_1", "MYMenu2");// the parent is your popup
AddMenuItem(SAPbouiCOM.BoMenuType.mt_STRING, -1, "Item2_1", "MyMenu2_2", "MYMenu2");
AddMenuItem(SAPbouiCOM.BoMenuType.mt_STRING, -1, "Item2_1", "MyMenu2_3", "MYMenu2");
AddMenuItem(SAPbouiCOM.BoMenuType.mt_STRING, -1, "Item3", "MyMenu3", "MYMenu");
AddMenuItem(SAPbouiCOM.BoMenuType.mt_STRING, -1, "Item4", "MyMenu4", "MYMenu");
AddMenuItem(SAPbouiCOM.BoMenuType.mt_STRING, -1, "Item5", "MyMenu5", "MYMenu");
}
private void AddMenuItem(SAPbouiCOM.BoMenuType boMenuType, int Position, String String, String UID, String Parent)
{
if (SBO_Application.Menus.Exists(UID))
return;
SAPbouiCOM.MenuCreationParams oCreParams = ((SAPbouiCOM.MenuCreationParams)SBO_Application.CreateObject(SAPbouiCOM.BoCreatableObjectType.cot_MenuCreationParams));
oCreParams.Type = boMenuType;
oCreParams.Position = Position;
oCreParams.String = String;
oCreParams.UniqueID = UID;
SBO_Application.Menus.Item(Parent).SubMenus.AddEx(oCreParams);
}
}
regards,
Maik
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi
I have created Menu like this > I want Sub-Options to be created under Maintain Transactions.
Dim oMenus As SAPbouiCOM.Menus
Dim oMenuItem As SAPbouiCOM.MenuItem
oMenus = SBO_Application.Menus
Dim oCreationPackage As SAPbouiCOM.MenuCreationParams
oCreationPackage = SBO_Application.CreateObject(SAPbouiCOM.BoCreatableObjectType.cot_MenuCreationParams)
oMenuItem = SBO_Application.Menus.Item("43520")
oCreationPackage.UniqueID = "MyMenu"
oCreationPackage.String = "My Module"
oCreationPackage.Enabled = True
oCreationPackage.Position = 15
oMenus = oMenuItem.SubMenus
Try ' If the manu already exists this code will fail
oMenus.AddEx(oCreationPackage)
oMenuItem = SBO_Application.Menus.Item("MyMenu")
oMenus = oMenuItem.SubMenus
oCreationPackage.Type = SAPbouiCOM.BoMenuType.mt_STRING
oCreationPackage.UniqueID = "MySubMenu"
oCreationPackage.String = "Maintain Master"
oMenus.AddEx(oCreationPackage)
oCreationPackage.Type = SAPbouiCOM.BoMenuType.mt_STRING
oCreationPackage.UniqueID = "MySubMenu0"
oCreationPackage.String = "Maintain Transactions"
oMenus.AddEx(oCreationPackage)
Catch er As Exception
End Try
Thanks
Hi Sunny,
your "Maintain Transactions" menuitem must be from type mt_POPUP and your subitems must be added using this as a parent.
My example is quite forward, you just need to adapt it to your needs .
This should be it :
Private Sub AddMenus()
AddMenuItem(SAPbouiCOM.BoMenuType.mt_POPUP, 15, "My Module", "MyMenu", "43520")
AddMenuItem(SAPbouiCOM.BoMenuType.mt_STRING, -1, "Maintain Master", "MySubMenu", "MyMenu")
AddMenuItem(SAPbouiCOM.BoMenuType.mt_POPUP, -1, "Maintain Transactions", "MySubMenu0", "MyMenu")
AddMenuItem(SAPbouiCOM.BoMenuType.mt_STRING, -1, "Maintain Transactions_1", "MyMenu2_1", "MySubMenu0")
AddMenuItem(SAPbouiCOM.BoMenuType.mt_STRING, -1, "Maintain Transactions_2", "MyMenu2_2", "MySubMenu0")
AddMenuItem(SAPbouiCOM.BoMenuType.mt_STRING, -1, "Maintain Transactions_3", "MyMenu2_3", "MySubMenu0")
End Sub
Private Sub AddMenuItem(boMenuType As SAPbouiCOM.BoMenuType, Position As Integer, [String] As [String], UID As [String], Parent As [String])
If SBO_Application.Menus.Exists(UID) Then
Return
End If
Dim oCreParams As SAPbouiCOM.MenuCreationParams = DirectCast(SBO_Application.CreateObject(SAPbouiCOM.BoCreatableObjectType.cot_MenuCreationParams), SAPbouiCOM.MenuCreationParams)
oCreParams.Type = boMenuType
oCreParams.Position = Position
oCreParams.[String] = [String]
oCreParams.UniqueID = UID
SBO_Application.Menus.Item(Parent).SubMenus.AddEx(oCreParams)
End Sub
regards,
Maik
User | Count |
---|---|
108 | |
12 | |
11 | |
6 | |
5 | |
4 | |
3 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.