Wednesday, January 26, 2022

Modify expiry and delivery date in RFQ created via Purchase requisition : D365 Finance and Operations

The feature of processing requests for quotations in Dynamics 365 Finance and Operations enables visibility to the quoting process, traceability, and better collaboration among buyers and suppliers(vendors) but it becomes complex for certain new users. 

It is recommended to go through this blog which is also a sort of a training guide for new users. 

Today I would like to share with you a business requirement along with the solution while creating a request for quotation via purchase requisition.

Create the request for quotation from purchase requisition.

While creating a purchase requisition, it is mandatory to setup the workflow "Purchase requisition review"

Navigate to Procurement and sourcing -> Procurement and sourcing workflows.

You can have an overview of the workflow here in this blog. Workflows can be configured on both purchase requisition header and lines. Once the purchase requisition workflow is configured now it is time to create a purchase requisition and submit to workflow. 

Navigate to Procurement and sourcing -> All purchase requisition


Click the "New" Button and add required purchase requisition lines and initiate the workflow process by clicking submit. 

Now you will be able to see "Create request for quotation" button enabled to create the RFQ from purchase requisition. Click this button and now you can see the request for quotation created from purchase requisition.

Navigate to Procurement and sourcing -> Request for Quotations -> All request for quotations

Business Requirement:

Now as per the business requirement, it was required to add the days offset in expiration and delivery dates of request for quotation so that while creating request for quotations from purchase requisition, the days offset is added automatically.

Solution: 

In order to meet the first requirement of adding the offset in expiration date, you can do in "Procurement and sourcing parameters" by adding the days offset.

Navigate to Procurement and sourcing -> Setup -> Procurement and sourcing parameters

And once you define the days offset in above screen, the expiration date is found added with days offset.

However, it is required to do a little bit of coding to modify the delivery date. 
Create an extension class of "PurchRFQCaseAutoCreate_PurchReq" and override the method "setPurchRFQCaseTable"


 I hope this blog post will help you understand the process of creating request for quotation via purchase requisition. Please keep following my blogs. I appreciate your feedback and comments. Thank you! 

Tuesday, January 18, 2022

Capturing the event handler for validation before posting vendor payment journal: D365 classes

 This is my first blog post in 2022, I would like to share with you related to validation and payment control for payment journals and would share with you peace of code to capture the event handler for validating the payment journals - Just to give you a bit of overview of payment journal. Payment journal consists of method of payment where you can control payments and its basic validations. For instance given below we have method of payment set as "Check".

Going into the detail of this method of payment we can see we can also set the payment control, where few of the basic validations can be configured. for instance if check number is mandatory before posting the payment journal or not.


Also one thing to be noted that in order to add any "check number" to payment journal, check number setup is required and it is mandatory to generate the payments before it is posted. And "Generate payment" button  is disabled if any associated workflow is initiated and payment journal is not approved yet. Once it is approved, you can generate payments.  also you can refer this blog for configuring the workflow for payment journals.


Now let's come to little code to capture the event handler before posting the payment journals. Here you go.


I hope this blog will help you understand, how do we control payments and validations for payment journal. Would like to know about your feedback further.


Thursday, January 16, 2020

Catch weight item in D365

Introduction

You could have a scenario particularly in manufacturing industry where a finished good or a product can vary in size, weight or both. In this case, you would have two units of measures for these sort of products (i.e. Catch weight unit and Inventory Unit.). Catch weight unit is the unit in which inventory transactions are performed, for example sold, received, transferred, picked, and shipped etc. The inventory unit is the unit of measure when the product is weighed and invoiced. .  The nominal quantity is the conversion between the catch weight unit and the inventory unit. These items are called catch weight items

Table Schema 

There are many important tables used in product information and management module. Few of the important tables and classes are listed in this blog .
Except all these important tables such as EcoResProduct, InventTable we do have a separate table for catch weights items that is PDSCatchWeightItem.

How do we identify the Released Item marked as catch weight item?

You can search a release item that is also a catch weight item adding a new field named, “CW product” and filter the grid with marked checked.


Or using the database you can use the SQL query
“SELECT PDSCATCHWEIGHTITEM.* FROM PDSCATCHWEIGHTITEM
JOIN INVENTTABLE
ON INVENTTABLE.ITEMID = PDSCATCHWEIGHTITEM.ITEMID
AND PDSCATCHWEIGHTITEM.DATAAREAID = 'usmf' “

How to create a catch weight item in D365?

Since the catch weight item was introduced in AX in version 2012 and all the steps that are almost same as mentioned in the blog - Creating a Product using the Catch Weight functionality in Microsoft Dynamics AX 2012. Also one thing you have to make sure transfer the appropriate inventory quantity to newly created catch weight item and also make sure to assign the important accounts to item group of the item. Otherwise it will block you using that item in sales and purchase orders. I hope this blog post will give you a brief view of catch weight item, let me know your feedback and queries via comments.



References:

Catch weight functionality a critical requirement for food manufacturing.