?
Solved

Access 2013 (32 bit) Backstage Windows 7 (64 bit)

Posted on 2014-03-19
7
Medium Priority
?
81 Views
Last Modified: 2016-05-29
I have an row in USysRibbons that basically hides the backstage except for the print tab.
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
  <backstage>
   <!-- Info -->
   <tab idMso ="TabInfo" visible="false"/>
   <!-- New -->
   <tab idMso ="TabOfficeStart" visible="false"/>
   <!-- Open -->
   <tab idMso="TabRecent" visible="false"/>
   <!-- Save -->
   <button idMso="FileSave" visible="false"/>
   <!-- Save As -->
   <tab idMso="TabSave" visible="false"/>
   <!-- Print -->
   <tab idMso ="TabPrint" visible="true"/>
   <!-- Close -->
   <button idMso="FileCloseDatabase" visible="false"/>
   <!-- Account -->
   <tab idMso="TabHelp" visible="false"/>
   <!-- Options -->
   <button idMso="ApplicationOptionsDialog" visible="false"/>
  </backstage>
</customUI>

I also have a report that is opened in preview mode as a dialog report from VBA. The report has it's own custom ribbon that only contains the close preview button. The report also has a short cut menu that only allows close. In other words this report can never be printed per my client's specification. My problem is that when the user clicks the File tab on the report's custom ribbon, the Print feature is exposed. How to I disable the backstage Print or make the backstage print invisible only when this report is open in preview mode?
0
Comment
Question by:rmk
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
7 Comments
 
LVL 85
ID: 39947303
I believe you also have to include the Ribbon commands to disable the Backstage view in the Report's Custom Ribbon.

See Gunter's article here:

http://www.accessribbon.de/en/index.php?Access_-_Ribbons:Ribbon_XML___Controls:Backstage_View

Essentially, you would include XML like this in your Ribbon code:

<backstage>
<button idMso="FileSave" visible="false"/>
<button idMso="SaveObjectAs" visible="false"/>
etc etc
</backstage>
0
 

Author Comment

by:rmk
ID: 39954285
I'm not sure I understand your comment. That's exactly what I have in my backstage xml in my rbnBackStage row in USysRibbons. I have another row for rbnForm. As far as I know you cannot mix the 2 in 1 row of U.SysRibbons
0
 
LVL 85
ID: 39955555
Have you tried adding the <backstage> sections to your custom Report ribbon?

I've never had the need to completely remove the Backstage stuff ...
0
Get free NFR key for Veeam Availability Suite 9.5

Veeam is happy to provide a free NFR license (1 year, 2 sockets) to all certified IT Pros. The license allows for the non-production use of Veeam Availability Suite v9.5 in your home lab, without any feature limitations. It works for both VMware and Hyper-V environments

 

Author Comment

by:rmk
ID: 39955838
Like I stated earlier, I don't think you can add backstage sections to custom report ribbon.
0
 
LVL 85
ID: 39957357
Can you post a sample database with your ribbon stuff in it?
0
 

Accepted Solution

by:
rmk earned 0 total points
ID: 40005258
The solution is to reference a different onLoad for each ribbon.

For rbnForm I used:
<customUI ... onLoad="FormRibbonOnLoad" >

For rbnBackStage I used
<customUI ... onLoad="BackStageRibbonOnLoad" >

In VBA I used:
Public grbnForm As IRibbonUI
Public grbnBackStage As IRibbonUI

Public Sub FormRibbonOnLoad(ribbon As IRibbonUI)
    Set grbnForm = ribbon
End Sub

Public Sub BackStageRibbonOnLoad(ribbon As IRibbonUI)
    Set grbnBackStage = ribbon
End Sub

Then I was able to used the Invalidate method of the appropriate global grbn variable as required in code.
0

Featured Post

Veeam Task Manager for Hyper-V

Task Manager for Hyper-V provides critical information that allows you to monitor Hyper-V performance by displaying real-time views of CPU and memory at the individual VM-level, so you can quickly identify which VMs are using host resources.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In Part II of this series, I will discuss how to identify all open instances of Excel and enumerate the workbooks, spreadsheets, and named ranges within each of those instances.
Code that checks the QuickBooks schema table for non-updateable fields and then disables those controls on a form so users don't try to update them.
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…
Add bar graphs to Access queries using Unicode block characters. Graphs appear on every record in the color you want. Give life to numbers. Hopes this gives you ideas on visualizing your data in new ways ~ Create a calculated field in a query: …
Suggested Courses

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question