In Purchase Order, the user can enter the price manually in Lines for any product in Sage X3. But sometimes we use price lists to declare the prices of the products for particular suppliers in the Purchase module. Those price list prices will be valid for the mentioned date range.
By using this feature, client wants to have restriction on the Gross Price field of the Purchase Order screen by restricting users to enter the price (at the purchase order line) less than or equal to the price value defined in the price list screen with a combination of particular supplier and product as mentioned in the below screenshot:
You can see in the above screenshot, the price amount 125.00 is defined for the Supplier “SD0001” and for a particular product for a particular date range in the Purchase Price List screen. Now while punching the purchase order for supplier “SD0001” and the product “RMNB011000_001”, price which is defined above gets flow in the Gross Price field automatically. Refer below screenshot.
Now here, users have the option to edit the price value which is already flown from the price list screen. So, here we have done the customization and have added a validation when user tries to enter the price amount which should not exceed 125.00.
E.g. Suppose, we have saved price “X” in the price list and if a user is trying to modify the price, then it will work on the basis of the below conditions:
1st Condition: If (Entered Gross Price <= X) then allow user to save or create the record.
2nd Condition: If (Entered Gross Price > X) then restrict user to save or create the record.
For example, price ‘125’ has been flown in the Purchase Order screen as explained above. Now, if user tried to modify ‘125’ by entering a value less than or equal to 125 then it will allow user to save or create the entry.
But if user tries to enter a Gross price greater than ‘125’ then it will restrict users to save or create the entry.
As shown in the above screenshot, if user is trying to enter ‘126’ in the Gross Price which is greater than ‘125’. Then the system is generating an error pop-up message “Gross Price value is greater than the price list value: 126” restricts users to create or save the entry.
Please note that, this restriction will work only if the prices are entered in the ”T20” transaction type of the Price List. It will not work for the other transaction types of the Price List.
In this way, we can restrict the user from entering Higher Price in the Purchase Order for particular Supplier and Product on the basis of Price List values.