December 4, 2015
ArcherPoint Dynamics NAV Developer Digest - vol 76
As they run into issues and questions, find the answers, and make new discoveries, they post them companywide on Yammer for everyone’s benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this group—so we thought, wouldn’t it be great to share them with the rest of the Microsoft Dynamics NAV Community? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from the ArcherPoint staff. We hope these insights will benefit you, too.
Question on granting permissions to modify tables across company boundaries:I know you can grant a NAV object access to tables that a user might not have permissions for. Would that apply across company boundaries? If a user has a role that grants RW permission to Vendor in Company A but not in Company B, and I have a codeunit that I've granted RW to table 23, which one wins? Vendor.CHANGECOMPANY('B'); Vendor."Address 2" := 'Sesame Street'; Vendor.MODIFY(FALSE); Helle Madsen: The short answer is that none of them wins. The longer answer is that it's a combination of the object permissions and the user's indirect permissions (for a given company) that are both needed in order for the user to read, modify, etc.
Michael Wong shared a link for NAV TechDays on MiBuSo:The 2015 NAV Tech Days videos are now available on MiBuSo! Get 'em while they're hot! Downloads: NAV TechDays 2015
Michael Heydasch shared a link to Waldo’s PowerShell modules:Waldo turned over his PowerShell library at NAV TechDays. He claims these functions save him hours of labor. At Directions, he even demonstrated how he's able to fully automate installation of Cumulative Updates! It would be worth spending some time coming up to speed on PowerShell and Waldo's functions. Download Waldo’s PowerShell Modules
Question on NAV Filter Groups:Has anyone been able to get FILTERGROUP to work on a PAGE. If you do not want a user to break a filter (on Item Ledger drill down for example) I always use FILTERGROUP(XX) and it always works on a form. They can filter to LESS than what was set when the form opened but not more. I tried on multiple PAGES in 2009 and 2013 and I can just remove the filter on the Item or Customer or whatever PAGE the FILTERGROUP has been set and I can see the entire Ledger? Matt Traxinger: I always do something like: CurrFilterGrp := rec.FILTERGROUP; rec.FILTERGROUP(0); rec.SETFILTER(....... rec.FILTERGROUP(CurrFilterGrp); You could do other numbers besides 0 as well, just avoid 1 through 6 unless you have a specific reason to use them. Kyle Hardin: I always use a double-digit filtergroup number so as not to step on the base NAV allocated groups. The following code works - I can clear the filter on Name, but I cannot clear the filter on Territory Code. OnOpenPage() FILTERGROUP(0); SETFILTER(Name, 'A*'); FILTERGROUP(11); SETRANGE("Territory Code", 'SE'); FILTERGROUP(0); That last FILTERGROUP(0) probably isn't important to making this work, but I always set it back to zero so I know where I am later on in code. If you are interested in NAV development, check out our collection of NAV Development Blogs. For step-by-step instructions on how to perform specific tasks in Microsoft Dynamics NAV, see our collection of How-To blogs. If you found this post useful, you might also be interested to read through our archive of the Dynamics NAV Developer Digest.
- Login Error: Communication protocol mismatch between client and server
- Creating a Date Table in Power BI
- How to Make Measures Total Correctly in Power BI Tables
- The Microsoft Technology Stack – What It Is and Why You Should Care
- The Top Eight KPIs Retailers Should Be Tracking (with Formulas) for Your Retail KPI Dashboard