# Open different Reports from Menu Item

**URL:** <https://www.dynamicsuser.net/t/open-different-reports-from-menu-item/18079>\
**Category:** Developer Forum\
**Created:** [January 3, 2008, 7:39am UTC](https://www.dynamicsuser.net/t/open-different-reports-from-menu-item/18079 "2008-01-03T07:39:54Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Eleinad12](https://avatars.discourse-cdn.com/v4/letter/e/6f9a4e/32.png) [@Eleinad12](https://www.dynamicsuser.net/u/Eleinad12)\
**Post date:** [January 3, 2008, 7:39am UTC](https://www.dynamicsuser.net/t/open-different-reports-from-menu-item/18079/1 "2008-01-03T07:39:54Z")

</div>

Hi all,

I’m new on Axapta.

Have you any idea about to start different Reports from a single Menu item: I need this because I would like to open different custom reports (ie SalesInvoice) based on Company.

Thanks for help

---

<div class="post-metadata">

**Author:** ![kashperuk](https://avatars.discourse-cdn.com/v4/letter/k/ecae2f/32.png) [@kashperuk](https://www.dynamicsuser.net/u/kashperuk)\
**Post date:** [January 4, 2008, 8:39am UTC](https://www.dynamicsuser.net/t/open-different-reports-from-menu-item/18079/2 "2008-01-04T08:39:16Z")

</div>

you can simple assign the menu item to a class instead of a report. and in the class, depending on whatever you want, open different reports.

---

<div class="post-metadata">

**Author:** ![Eleinad12](https://avatars.discourse-cdn.com/v4/letter/e/6f9a4e/32.png) [@Eleinad12](https://www.dynamicsuser.net/u/Eleinad12)\
**Post date:** [January 7, 2008, 8:56am UTC](https://www.dynamicsuser.net/t/open-different-reports-from-menu-item/18079/3 "2008-01-07T08:56:57Z")

</div>

Hi Vanya,

thank you for your answer.I check your solution and I work on reportRunClass method of ClassFactory class.In the following code you find my solution.

ReportRun reportRunClass(Args args)  
{

#AOT  
str reportName = args.name();  
str reportNameNew;  
Report tmpReport;  
TreeNode reportNode = TreeNode::findNode(#ReportsPath);  
;

// if a report called _exists run it  
// otherwise run the standard one  
reportNameNew = curext() +’_’ + reportName;  
tmpReport = reportNode.AOTfindChild(reportNameNew);

if (tmpReport)  
{  
args.name(reportNameNew);  
}

return new sysReportRun(args);  
}

Please let me know if in your knowledge this is ok.

Thank you again!

---

<div class="post-metadata">

**Author:** ![kashperuk](https://avatars.discourse-cdn.com/v4/letter/k/ecae2f/32.png) [@kashperuk](https://www.dynamicsuser.net/u/kashperuk)\
**Post date:** [January 7, 2008, 11:35am UTC](https://www.dynamicsuser.net/t/open-different-reports-from-menu-item/18079/4 "2008-01-07T11:35:24Z")

</div>

Well, actually I was thinking there are only a couple of reports like that, and was intending for a more “local” solution, with a separate class launching reports, but I guess this is Ok and should work as well.

And if you have a lot of reports that have to be Company\_based, than it’s the perfect way to do it, I guess.

Minimum changes

---

<div class="post-metadata">

**Author:** ![Eleinad12](https://avatars.discourse-cdn.com/v4/letter/e/6f9a4e/32.png) [@Eleinad12](https://www.dynamicsuser.net/u/Eleinad12)\
**Post date:** [January 9, 2008, 12:06pm UTC](https://www.dynamicsuser.net/t/open-different-reports-from-menu-item/18079/5 "2008-01-09T12:06:18Z")

</div>

Thank you very much!
