{"id":328,"date":"2015-06-23T13:20:47","date_gmt":"2015-06-23T13:20:47","guid":{"rendered":"http:\/\/www.exploreax.com\/blog\/?p=328"},"modified":"2015-06-23T13:20:47","modified_gmt":"2015-06-23T13:20:47","slug":"advanced-aot-searching","status":"publish","type":"post","link":"http:\/\/www.exploreax.com\/blog\/blog\/2015\/06\/23\/advanced-aot-searching\/","title":{"rendered":"Advanced AOT searching"},"content":{"rendered":"<p>Its always a great opportunity to interact with other AX developers and have the opportunity to learn from each other. A few weeks ago I published a blog post on searching the <a href=\"http:\/\/www.exploreax.com\/blog\/blog\/2015\/05\/21\/find-all-menui\u2026nked-to-a-form\/\">AX AOT in code for objects with specific properties<\/a>,\u00a0after the post went out I got a comment on the post of\u00a0a much easier way to search the AOT from the frontend, that for some reason I have never really noticed before. So here is a quick way to do an advanced search of the AOT using a real situation I encountered this morning.<\/p>\n<p>Example: Find all privileges in the AOT that have a specific menuitem as an entry point. e.g. &#8220;PurchFormLetter_PackingSlip&#8221;<\/p>\n<p>1. Open an AOT and select the section of the AOT that you wish to search. Obviously the narrower the search the quicker it will be. I selected Security-&gt;Privileges.<br \/>\n2. Right click on the object. Click Find<br \/>\n<a href=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/Find.png\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-329\" src=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/Find.png\" alt=\"Find\" width=\"299\" height=\"260\" \/><\/a><br \/>\n3. Select &#8220;All Nodes&#8221; in the search dropdown<br \/>\n<a href=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/Search_All_nodes.png\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-330\" src=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/Search_All_nodes.png\" alt=\"Search_All_nodes\" width=\"764\" height=\"250\" srcset=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/Search_All_nodes.png 764w, http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/Search_All_nodes-300x98.png 300w\" sizes=\"(max-width: 764px) 100vw, 764px\" \/><\/a><br \/>\n4. Select properties tab.<br \/>\n5. Right click on any field in the &#8220;Property&#8221; Column, Click filter by field.<br \/>\n<a href=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/FilterByField.png\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-331\" src=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/FilterByField.png\" alt=\"FilterByField\" width=\"772\" height=\"389\" srcset=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/FilterByField.png 772w, http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/FilterByField-300x151.png 300w\" sizes=\"(max-width: 772px) 100vw, 772px\" \/><br \/>\n<\/a>6. Enter the <strong>name<\/strong> of the property you wish to search on. In my case I&#8217;m looking for all entry points that points that have the ObjectName set to\u00a0PurchFormLetter_PackingSlip, so i enter &#8220;ObjectName&#8221;<br \/>\n<a href=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/SelectProperty.png\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-332\" src=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/SelectProperty.png\" alt=\"SelectProperty\" width=\"382\" height=\"197\" srcset=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/SelectProperty.png 382w, http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/SelectProperty-300x155.png 300w\" sizes=\"(max-width: 382px) 100vw, 382px\" \/><\/a><br \/>\n7. Click Ok.<br \/>\n8. Click the &#8220;Selected&#8221; checkbox<br \/>\n9. Enter the value you want to search for under &#8220;Range&#8221; e.g. &#8220;PurchFormLetter_PackingSlip&#8221;<br \/>\n<a href=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/SelectProperty2.png\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-333\" src=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/SelectProperty2.png\" alt=\"SelectProperty2\" width=\"767\" height=\"248\" srcset=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/SelectProperty2.png 767w, http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/SelectProperty2-300x97.png 300w\" sizes=\"(max-width: 767px) 100vw, 767px\" \/><\/a>10. Repeat steps 5-9 if you want to search for multiple properties.<br \/>\n11. Click Find now<br \/>\n12. You will now have a list of all the subobjects of whatever you selected in step 1 containing a specific property with a specific value.<br \/>\n<a href=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/FindResults.png\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-335\" src=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/FindResults.png\" alt=\"FindResults\" width=\"765\" height=\"449\" srcset=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/FindResults.png 765w, http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/FindResults-300x176.png 300w\" sizes=\"(max-width: 765px) 100vw, 765px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>Note 1: You can also do some pretty neat searches using both the date and advanced tabs on this form so be sure to check them out too.<\/p>\n<p>I hope this helps somebody who like me has just overlooked this for years.<\/p>\n<p>Thanks <a href=\"http:\/\/dev.goshoom.net\/\">Martin <\/a>for the tip!<\/p>\n<p>&nbsp;<\/p>\n<p>Disclaimer: For my specific example it may have been easier to use either the Security development tool or right click on the menu-item in AX -&gt; Add-ins -&gt; Security Tools -&gt; View related security objects. But I needed an example for this post \ud83d\ude42<br \/>\n<a href=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/SecurityFind.png\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-334\" src=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/SecurityFind.png\" alt=\"SecurityFind\" width=\"763\" height=\"495\" srcset=\"http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/SecurityFind.png 763w, http:\/\/www.exploreax.com\/blog\/wp-content\/uploads\/2015\/06\/SecurityFind-300x195.png 300w\" sizes=\"(max-width: 763px) 100vw, 763px\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Its always a great opportunity to interact with other AX developers and have the opportunity to learn from each other. A few weeks ago I published a blog post on searching the AX AOT in code for objects with specific properties,\u00a0after the post went out I got a comment on the post of\u00a0a much easier&hellip;<a href=\"http:\/\/www.exploreax.com\/blog\/blog\/2015\/06\/23\/advanced-aot-searching\/\">Read more <span class=\"screen-reader-text\">Advanced AOT searching<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[2,6,5,7,4],"tags":[75,86,87,85],"_links":{"self":[{"href":"http:\/\/www.exploreax.com\/blog\/wp-json\/wp\/v2\/posts\/328"}],"collection":[{"href":"http:\/\/www.exploreax.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.exploreax.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.exploreax.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.exploreax.com\/blog\/wp-json\/wp\/v2\/comments?post=328"}],"version-history":[{"count":2,"href":"http:\/\/www.exploreax.com\/blog\/wp-json\/wp\/v2\/posts\/328\/revisions"}],"predecessor-version":[{"id":337,"href":"http:\/\/www.exploreax.com\/blog\/wp-json\/wp\/v2\/posts\/328\/revisions\/337"}],"wp:attachment":[{"href":"http:\/\/www.exploreax.com\/blog\/wp-json\/wp\/v2\/media?parent=328"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.exploreax.com\/blog\/wp-json\/wp\/v2\/categories?post=328"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.exploreax.com\/blog\/wp-json\/wp\/v2\/tags?post=328"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}