Sage X3 is an enterprise resource planning (ERP) system that helps organizations efficiently manage operations and data across all functional areas — including Sales, Purchasing, Inventory, Projects, and Finance.
During one of our implementations, a client requested a customization in the Depreciation Plan screen. Specifically, the requirement was to ensure that the value present in the FY Depreciation Plan is automatically repeated in the Period Depreciation Plan grid across multiple lines whenever the user clicks on a line in the FY Depreciation Plan grid.
This article explains how to achieve this functionality step by step.
Step 1: Add a Custom Field in the Period Depreciation Plan Screen
Create and add a new custom field in the Period Depreciation Plan grid to hold the fetched data value. Once added, verify that it appears properly in the grid layout.
New Stuff :- Alternative to the “IN” Operator of SQL in Sage X3

Step 2: Modify the Standard Script SUBDPP
Open the standard script SUBDPP and locate the Subprog AS_NBLIG1 function. Within this function, include your customization logic to copy data from the FY Depreciation Plan grid to the Period Depreciation Plan grid.

Step 3: Assign the Custom Field
Assign the field [M:DPP1]ZPAMT1(NOLIGN-1) with the ZTEST variable as shown in the example below.
This ensures that when a user selects a line in the FY Depreciation Plan, the value from that line is captured and automatically repeated in the next grid (Period Depreciation Plan).

Step 4: Validate the Output
After making the changes, validate the results by navigating to the Depreciation Plan screen. When you click on any line in the FY Depreciation Plan grid, the corresponding value should now appear in multiple lines of the Period Depreciation Plan grid.

Additional Notes
- Always back up the standard script (SUBDPP) before making modifications.
- Ideally, replicate the standard script as a custom script (e.g., ZSUBDPP) to ensure future Sage X3 updates do not overwrite your changes.
- After deployment, perform a refresh (AFFZO) on the specific grid instead of the entire screen to avoid clearing data values.
- Test thoroughly in UAT before promoting to LIVE.
Conclusion
By following the above steps, you can successfully fetch and replicate data from the FY Depreciation Plan to the Period Depreciation Plan within Sage X3. This customization enhances usability and efficiency for finance teams managing asset depreciation schedules.
About Us
Greytrix – a globally recognized and one of the oldest Sage Development Partners is a one-stop solution provider for Sage ERP and Sage CRM organizational needs. Being acknowledged and rewarded for multi-man years of experience and expertise, we bring complete end-to-end assistance for your technical consultations, product customizations, data migration, system integrations, third-party add-on development, and implementation competence.
Greytrix has some unique integration solutions developed for Sage CRM with Sage ERPs namely Sage X3, Sage Intacct, Sage 100, Sage 500, and Sage 300. We also offer best-in-class Sage ERP and Sage CRM customization and development services to Business Partners, End Users, and Sage PSG worldwide. Greytrix helps in the migration of Sage CRM from Salesforce | ACT! | SalesLogix | Goldmine | Sugar CRM | Maximizer. Our Sage CRM Product Suite includes addons like Greytrix Business Manager, Sage CRM Project Manager, Sage CRM Resource Planner, Sage CRM Contract Manager, Sage CRM Event Manager, Sage CRM Budget Planner, Gmail Integration, Sage CRM Mobile Service Signature, Sage CRM CTI Framework.
Greytrix is a recognized Sage Champion Partner for GUMU™ Sage X3 – Sage CRM integration listed on Sage Marketplace and Sage CRM – Sage Intacct integration listed on Sage Intacct Marketplace. The GUMU™ Cloud framework by Greytrix forms the backbone of cloud integrations that are managed in real-time for the processing and execution of application programs at the click of a button.
For more information on our integration solutions, please contact us at sage@greytrix.com. We will be glad to assist you.