Inspirometer Developer
Posts: 34
Joined: 2017-10-13
|
Good afternoon!
I'm currently in the process of copying a tab group from `TabMail` to `TabAppointment` but for the life of me I can't get it working. Every time I attempt to open an appointment inspector I'm given the error:
Error found in Custom UI XML of "InspirometerMeetingsToolADX":
Line: 4
Column: 40
Error Code: 0x8004005
Failed to find Office control by ID
ID: TabSetAppointment
As far as I can tell I'm doing everything right but clearly that's not the case. My `ADXRibbonTab` has the following relevant properties:
- Context: Outlook.TabSetAppointment
- IdMso: TabAppointment
- Ribbons: OutlookAppointment;OutlookExplorer
When compiled and run `AddinModule_OnRibbonBeforeLoad()` outputs this XML when opening/creating a meeting (removed get attributes for the sake of brevity):
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="ribbonLoaded_Callback" loadImage="getImages_Callback">
<ribbon>
<contextualTabs>
<tabSet idMso="TabSetAppointment">
<tab idMso="TabAppointment">
<group id="adxRibbonGroup_c761ff12da24481fabe99a55ad5c4d8b" insertAfterMso="GroupAppointmentActions">
<menu id="adxRibbonMenu_3183abd1b18e65a1af86cd0e61c5e76e" itemSize="large">
<button id="adxRibbonButton_beb1291dc449c838499ee4f2dd6b5966" onAction="onActionCommon_Callback" />
<button id="adxRibbonButton_a49b24e087f16e26b7f794cc118f17d4" onAction="onActionCommon_Callback" />
<button id="adxRibbonButton_db0b61d4dda8cb7dfdb0107e19c4593b" onAction="onActionCommon_Callback" />
</menu>
<button id="adxRibbonButton_d5400a4a0ddb47308c851777f476f19b" onAction="onActionCommon_Callback" />
</group>
</tab>
</tabSet>
</contextualTabs>
</ribbon>
</customUI>
Having compared this to the XML of another add-in that also places a button after `GroupAppointmentActions` (and works!) I see no real difference besides the objects inside the tabs.
I've run the code in Outlook 2019 and Outlook 2016 and both produce the same error. I'm using a slightly modified (https://www.add-in-express.com/forum/read.php?PAGEN_1=1&FID=5&TID=14954) version 8.9.4453 of ADX. |
|
Andrei Smolin
Add-in Express team
Posts: 18794
Joined: 2006-05-11
|
Hello,
Inspirometer Developer writes:
Every time I attempt to open an appointment inspector I'm given the error
I suggest that you call Clipboard.SetText(e.Xml) in the code of the OnRibbonBeforeLoad event of the add-in module (this call may produce sporadic exceptions; restart Outlook and ignore them in other respects). Then paste the XML to a text editor and study the 4th line. The issue is: an Office Ribbon ID referenced by your XML (somewhere around 40th column) is missing in that Ribbon.
Andrei Smolin
Add-in Express Team Leader |
|
Inspirometer Developer
Posts: 34
Joined: 2017-10-13
|
I figured it out eventually, I did indeed have things misconfigured.
The confusion came from the fact there's actually 2 different TabAppointment tabs that are part of different ribbons. To set the tab to show on the appointment inspector like I needed to set:
- Context:
- IdMSO: TabAppointment
- Ribbons: OutlookAppointment
The other TabAppointment is the ribbon Outlook shows you when you click on a meeting/appointment in the calendar view. To get the tab to show here you would need the settings:
- Context: TabSetAppointment
- IdMSO: TabAppointment
- Ribbons: OutlookExplorer
|
|
Andrei Smolin
Add-in Express team
Posts: 18794
Joined: 2006-05-11
|
Thank you!
Andrei Smolin
Add-in Express Team Leader |
|