{"id":22488,"date":"2026-07-31T11:43:09","date_gmt":"2026-07-31T11:43:09","guid":{"rendered":"https:\/\/tenthplanet.in\/idempiere\/?p=22488"},"modified":"2026-08-13T04:50:24","modified_gmt":"2026-08-13T04:50:24","slug":"how-to-use-drill-rule-in-idempiere","status":"publish","type":"post","link":"https:\/\/tenthplanet.in\/idempiere\/how-to-use-drill-rule-in-idempiere\/","title":{"rendered":"How to Use Drill Rule in iDempiere"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Learn how the Drill Rule window in iDempiere defines custom drill-down navigation from a field to a target process, report, or table.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Introduction<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Drill Rule is a standard iDempiere Application Dictionary window that lets administrators define custom drill-down navigation from a field to a target process, report, or table.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It is used across all business types wherever teams need faster navigation between related documents, such as linking an inventory record to its import process.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A configured Drill Rule replaces the default zoom behavior and passes record values automatically into the target process, improving navigation efficiency.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Business Rules<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tenant, Organization, Name, Process, and Process Parameter are mandatory fields.<\/li>\n\n\n\n<li>A Drill Rule must be Active before it can be used by the Drill Assistant.<\/li>\n\n\n\n<li>A Drill Rule must be Valid before it becomes available for use.<\/li>\n\n\n\n<li>Parameter mappings are configured in the Drill Rule Parameter tab.<\/li>\n\n\n\n<li>If no valid Drill Rule exists, the Drill Assistant reports that none are available.<\/li>\n\n\n\n<li>The Drill Assistant Table tab lists all application tables as a fallback navigation option.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Prerequisites<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>User has System Administrator access to the Application Dictionary.<\/li>\n\n\n\n<li>The target Process, Report, or Print Format already exists in iDempiere.<\/li>\n\n\n\n<li>The Process Parameter that will receive the record value is defined on the target process.<\/li>\n\n\n\n<li>The source table on which the drill applies exists in the Application Dictionary.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Configuration Steps<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 1: Create the Drill Rule<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This step establishes the basic identity of the Drill Rule so it can later be linked to a process and a source table.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Open the Drill Rule window and enter a unique Name and optional Description, then confirm the record is Active.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><td><strong>Field<\/strong><\/td><td><strong>Sample Value<\/strong><\/td><td><strong>Description<\/strong><\/td><\/tr><\/thead><tbody><tr><td>Tenant<\/td><td>POTS<\/td><td>Client that owns the Drill Rule.<\/td><\/tr><tr><td>Organization<\/td><td>*<\/td><td>Organization owning the record.<\/td><\/tr><tr><td>Name<\/td><td>Inventory Drill<\/td><td>Unique name identifying the Drill Rule.<\/td><\/tr><tr><td>Description<\/td><td>Opens Inventory Import<\/td><td>Optional description of the rule&#8217;s purpose.<\/td><\/tr><tr><td>Active<\/td><td>Yes<\/td><td>Indicates whether the Drill Rule is enabled.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 2: Select the Target Process<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This step defines what happens when the drill is triggered. The Process field is mandatory and determines the destination window.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In the Action section, select the Process to launch and choose how its parameter window should display.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><td><strong>Field<\/strong><\/td><td><strong>Sample Value<\/strong><\/td><td><strong>Description<\/strong><\/td><\/tr><\/thead><tbody><tr><td>Process<\/td><td>Import Inventory<\/td><td>The process that executes when the Drill Rule is triggered.<\/td><\/tr><tr><td>Show Help<\/td><td>Run silently &#8211; Take Defaults<\/td><td>Controls how the target process window is displayed.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 3: Define the Source<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This step links the Drill Rule to the column or table where it applies, and identifies which process parameter receives the record value.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In the Source section, select the source Table and the Process Parameter that will receive the drilled value.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><td><strong>Field<\/strong><\/td><td><strong>Sample Value<\/strong><\/td><td><strong>Description<\/strong><\/td><\/tr><\/thead><tbody><tr><td>Table<\/td><td>Import Inventory<\/td><td>Source table where the Drill Rule is applicable.<\/td><\/tr><tr><td>Report View<\/td><td>(blank)<\/td><td>Optional report view used by the drill.<\/td><\/tr><tr><td>Print Format<\/td><td>(blank)<\/td><td>Optional print format associated with the drill.<\/td><\/tr><tr><td>Process Parameter<\/td><td>M_Inventory_ID<\/td><td>Target process parameter that receives the selected record value.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 4: Configure Parameter Mapping<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This step ensures the current record&#8217;s values are passed automatically into the target process instead of requiring manual entry.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Open the Drill Rule Parameter tab and map each Process Parameter to its Default Parameter source value.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><td><strong>Field<\/strong><\/td><td><strong>Sample Value<\/strong><\/td><td><strong>Description<\/strong><\/td><\/tr><\/thead><tbody><tr><td>Process Parameter<\/td><td>M_Inventory_ID<\/td><td>Target process parameter to be populated.<\/td><\/tr><tr><td>Default Parameter<\/td><td>Record_ID<\/td><td>Source value passed into the process.<\/td><\/tr><tr><td>Default To Parameter<\/td><td>(optional)<\/td><td>Optional destination parameter for the mapped value.<\/td><\/tr><tr><td>Active<\/td><td>Yes<\/td><td>Enables this parameter mapping.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 5: Validate the Drill Rule<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Validation confirms the Drill Rule is correctly configured and makes it available to users through the Drill Assistant.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Run the Validate process on the Drill Rule record and confirm the Valid flag is set.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><td><strong>Field<\/strong><\/td><td><strong>Sample Value<\/strong><\/td><td><strong>Description<\/strong><\/td><\/tr><\/thead><tbody><tr><td>Valid<\/td><td>Yes<\/td><td>Indicates the Drill Rule has been successfully validated.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 6: Test Using the Drill Assistant<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This step confirms the Drill Rule behaves as expected from a user&#8217;s perspective before it is relied upon in daily operations.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">From the source field, open the right-click menu and select Drill Assistant to confirm the rule is found and executes correctly.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><td><strong>Field<\/strong><\/td><td><strong>Sample Value<\/strong><\/td><td><strong>Description<\/strong><\/td><\/tr><\/thead><tbody><tr><td>Drill Column<\/td><td>AD_Client &#8211; 1000000<\/td><td>Column and value being drilled from the current record.<\/td><\/tr><tr><td>Drill Rule tab<\/td><td>Matching rule listed<\/td><td>Shows the Drill Rule found for the selected column, if any.<\/td><\/tr><tr><td>Table tab<\/td><td>Full table list<\/td><td>Fallback list of application tables when no Drill Rule is configured.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Common Issues and Resolutions<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><td><strong>Issue<\/strong><\/td><td><strong>Cause<\/strong><\/td><td><strong>Resolution<\/strong><\/td><\/tr><\/thead><tbody><tr><td>No Drill Rule found<\/td><td>No matching Drill Rule exists for the column<\/td><td>Create a Drill Rule and run the Validate process.<\/td><\/tr><tr><td>Drill Rule not executed<\/td><td>Rule is inactive<\/td><td>Enable the Active checkbox on the Drill Rule.<\/td><\/tr><tr><td>Drill Rule not listed in Drill Assistant<\/td><td>Rule has not been validated<\/td><td>Run the Validate process to mark the rule Valid.<\/td><\/tr><tr><td>Process opens without data<\/td><td>Parameter mapping is missing<\/td><td>Configure the mapping in the Drill Rule Parameter tab.<\/td><\/tr><tr><td>&#8220;Cannot find any valid Drill Rules&#8221; message<\/td><td>No Drill Rule matches the selected column<\/td><td>Define a new Drill Rule for that column, then validate it.<\/td><\/tr><tr><td>Record cannot be saved<\/td><td>Process or Process Parameter left blank<\/td><td>Both fields are mandatory; select valid values before saving.<\/td><\/tr><tr><td>Drill Assistant only shows the Table list<\/td><td>No Drill Rule configured for the column<\/td><td>Use the Table tab to navigate manually, or configure a Drill Rule.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Next Steps<\/strong><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Test the configured Drill Rule using the Drill Assistant on the source field.<\/li>\n\n\n\n<li>Confirm that record values are passed correctly into the target process.<\/li>\n\n\n\n<li>Review the target Process or window opened by the drill for accuracy.<\/li>\n\n\n\n<li>Configure additional Drill Rules for other frequently used navigation points.<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>Learn how the Drill Rule window in iDempiere defines custom drill-down navigation from a field to a target process, report, [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10,91],"tags":[],"class_list":["post-22488","post","type-post","status-publish","format-standard","hentry","category-idempiere-product","category-idempiere-general-rules"],"_links":{"self":[{"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/posts\/22488","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/comments?post=22488"}],"version-history":[{"count":1,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/posts\/22488\/revisions"}],"predecessor-version":[{"id":22489,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/posts\/22488\/revisions\/22489"}],"wp:attachment":[{"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/media?parent=22488"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/categories?post=22488"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tenthplanet.in\/idempiere\/wp-json\/wp\/v2\/tags?post=22488"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}