on ‎2014 Apr 02 10:52 AM
Request clarification before answering.
Hi Pedro,
I only know tabs from .NET, so just a couple of thoughts:
Regards,
Johan
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Johan,
Thank you for your reply.
In B1, at least as far as I know, tabs are a bit different. They don't have the same concept as in .net, so basically they are a clickable control. When that happens the form PaneLevel should change to display the controls on the given PaneLevel.
In the xml, you can create groups:
<items>
<action type="group">
<item uid="tab1" />
<item uid="tab2" />
</action>
</items>
but if when I create two separate groups and load via LoadBatchActions they get automatically grouped in one single group. It effectively changes the xml (exporting it via form.GetAsXml).
I'm wondering if this is a bug, or if this is by design (hence why I asked if anyone seen an SAP B1 form with more then one tab group).
Thanks again for your answer.
Cheers.
Best regards,
Pedro Magueija
Hi Johan,
I don't really know how B1 identifies the groups. I was assuming that if they where in different <items> tags they would be in different groups. But internally I can't really say how it's processed.
From other forms xml (e.g.: AR Invoice) I've seen this:
<items>
<action type="group">
<item uid="tab1" />
<item uid="tab2" />
</action>
</items>
<items>
<action type="group">
<item uid="tab2" />
<item uid="tab3" />
</action>
</items>
But when I tried to put that in my form it "merges" them all into one.
Thanks again for your help.
Best regards,
Pedro Magueija
Hi Pedro,
By the look of that example, I would assume that B1 assigns identities to your items based on the order in which they appear in the xml.
However from your second example structure, I don't see how it is determined that a group is a parent, a sibling, or a child.
What would the xml look like for example for a tab group, with two tab pages, and a button on the first tab page ?
Regards,
Johan
Hi Johan,
That gets even funnier:
<items>
<action type="add">
...
<item top="55" left="47" width="65" height="20" AffectsFormMode="1" description="" disp_desc="0" enabled="1" from_pane="0" to_pane="0" linkto="" right_just="0" type="4" visible="1" uid="Item_8" IsAutoGenerated="0">
<specific caption="Button1" />
</item>
</action>
</items>
<ChooseFromListCollection>
<action type="add">
<ChooseFromList UniqueID="-1" ObjectType="-1" MultiSelection="0" IsSystem="1" />
</action>
</ChooseFromListCollection>
<DataBrowser BrowseBy="" />
<Settings MatrixUID="" Enabled="0" EnableRowFormat="0" />
<items>
<action type="group">
<item uid="Item_3" />
<item uid="Item_6" />
<item uid="Item_7" />
</action>
</items>
<items>
<action type="group">
<item uid="Item_1" />
<item uid="Item_4" />
<item uid="Item_5" />
</action>
</items>
This is the actual xml of the test from, with two tab groups and a button "inside" the first tab group.
Thanks.
Best regards,
Pedro Magueija
Okay, so I see that items are added in reverse order ? You add the button first, and the tab page it goes onto last ?
If so it seems to me that in the button the from_pane="0" to_pane="0" bit determines that the button should appear on the tab page with index 0 (i.e. the first one)
What I wonder about, is that a button is an item with a clear declaration (type="4" uid="Item_8"). Why do you not need to declare the tab page type ?
Is this an implicit thing, i.e. if you don't determine the type it becomes a panel / tab page ?
If that is so, can you explicitly determine a panel / tab page ?
| User | Count |
|---|---|
| 46 | |
| 27 | |
| 17 | |
| 6 | |
| 3 | |
| 3 | |
| 2 | |
| 1 | |
| 1 | |
| 1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.