Purchase Quotes and RQF

Details

Description

Hi,
I actually wanted to know if there's any plans to include quotes for purchase orders, since right now the quotes works only for sales order.
Since the purchase order and the sales order are very much alike it wouldn't require much work, only to make a service like the one used to create a sales order from a quote, but for purchase order.
After that, well there could be an screen that allows you to take a group of approved requirements and use them to create a RQF or a Quote. But that would be an extra!

Activity

no plans that I'm aware of.
However it is worth saying that you can use the (approved) requirements to quickly add them to a purchase order cart (there is a screen to do this in the left bar of the main order entry screen). And I'm going to develop a new feature that will allow to quickly create a purchase order from the requirements.

Jacopo Cappellato
added a comment - 22/Aug/06 07:52 Hi Rodrigo,
no plans that I'm aware of.
However it is worth saying that you can use the (approved) requirements to quickly add them to a purchase order cart (there is a screen to do this in the left bar of the main order entry screen). And I'm going to develop a new feature that will allow to quickly create a purchase order from the requirements.

Hi,
Yes I'm aware of the fast add of the approved requirements on the purchase orders; but quotes and RFQ on purchases it's a very usual practice among companies and another ERP's since it resolve they are use as special quotes to solve specific orders and to feed the provider price list.
Also it helps when you have to buy supplies for different parts of the company, for example:

Let say engineering ask for paper, clips and something else so they make a requirement, and so customer service area, administration and any other area.
Each person in change of the area it's responsable to approve this requirments. That's until where ofbiz does. From that ofbiz jumps to the order.
But what about the supplier price list, what if it's not updated or else, what if they make a disccount since you're buying that many supplies or what if you have a lot of possible suppliers and you need to decide which one to use, you need to make an RFQ and send it to your suppliers so they can send you back their quotes and then choose one and use the prices on the quote and not the ones on the system, and frmo that create the order.

I actually think that it's a feature that would be a great to add into ofbiz.

I'll will try to develop it (when I have the time...) and upload the patch so you can decide if you want to include it. But I would like to know what people have to say about it.

Rodrigo Aguinaga
added a comment - 23/Aug/06 05:48 Hi,
Yes I'm aware of the fast add of the approved requirements on the purchase orders; but quotes and RFQ on purchases it's a very usual practice among companies and another ERP's since it resolve they are use as special quotes to solve specific orders and to feed the provider price list.
Also it helps when you have to buy supplies for different parts of the company, for example:
Let say engineering ask for paper, clips and something else so they make a requirement, and so customer service area, administration and any other area.
Each person in change of the area it's responsable to approve this requirments. That's until where ofbiz does. From that ofbiz jumps to the order.
But what about the supplier price list, what if it's not updated or else, what if they make a disccount since you're buying that many supplies or what if you have a lot of possible suppliers and you need to decide which one to use, you need to make an RFQ and send it to your suppliers so they can send you back their quotes and then choose one and use the prices on the quote and not the ones on the system, and frmo that create the order.
I actually think that it's a feature that would be a great to add into ofbiz.
I'll will try to develop it (when I have the time...) and upload the patch so you can decide if you want to include it. But I would like to know what people have to say about it.
Rodrigo

I agree with you that this can be a nice feature to include in the system: it would be great if you will implement this and I would be willing to help to review/commit it; I've written most of the processes that create quotes/requests from a cart or shopping list and that convert a quote into a cart so if you need some hints I can hopefully help.

Jacopo Cappellato
added a comment - 23/Aug/06 06:34 Hi Rodrigo,
I agree with you that this can be a nice feature to include in the system: it would be great if you will implement this and I would be willing to help to review/commit it; I've written most of the processes that create quotes/requests from a cart or shopping list and that convert a quote into a cart so if you need some hints I can hopefully help.
Jacopo

I'm trying to make some changes to allow the creation of purchase quotes and RFQ and I found that it was a lot easier that I tought so actually, rigth now I can create the PO (an incomplete one) from a quote.
The problem here, is that, as you know the quote doesn't specify the internal organizaton that the PO ask for, neither the request, so I look into to the quote table and doesn't seem to be space for it.
so I got into the conclution that there are a few options here
1) we could add a new field to quote entity (not a big fan of making this sort of changes).
2) insert it as a quote attribute (since the attributes are not quite secure, I don't 'love' this option...)
3) whatever you could suggest me!!

As I mentioned the same thing applies for custRequest (actually this request was thought to be a customer only request, but I used as a purchase RFQ too)

So please, commiters, since tou know how ofbiz changes works better than me, give me some recommendations as soon as you can. That way I could actually have a patch for the weekend so you can tell me what you think about.

Rodrigo Aguinaga
added a comment - 25/Aug/06 07:43 Hi,
I'm trying to make some changes to allow the creation of purchase quotes and RFQ and I found that it was a lot easier that I tought so actually, rigth now I can create the PO (an incomplete one) from a quote.
The problem here, is that, as you know the quote doesn't specify the internal organizaton that the PO ask for, neither the request, so I look into to the quote table and doesn't seem to be space for it.
so I got into the conclution that there are a few options here
1) we could add a new field to quote entity (not a big fan of making this sort of changes).
2) insert it as a quote attribute (since the attributes are not quite secure, I don't 'love' this option...)
3) whatever you could suggest me!!
As I mentioned the same thing applies for custRequest (actually this request was thought to be a customer only request, but I used as a purchase RFQ too)
So please, commiters, since tou know how ofbiz changes works better than me, give me some recommendations as soon as you can. That way I could actually have a patch for the weekend so you can tell me what you think about.
Greetings
Rodrigo

Rodrigo Aguinaga
added a comment - 25/Aug/06 16:17 Hi,
Thanks Chris, I so forgot that the companies (internal organization) were also parties...
This actualy solve my problem, and this also applies to request.
Rodrigo

Hi,
Well here's my fist patch file about this subject.
Why the first, it's just that I want to be sure that what I'm doing fit's the need of the software. I wouldn't like to get too far to realize it shouldn't be like that.

So, what this patch does. It's to modify the "OrderTypeData.xml" to include a new CustRequestType and QuoteType.
That allows to create a request, from where you can create a quote, from that you can create a purchase order.

Before you try to create the order from the purchase quote you have to set the next roles for the quote:
Ship-To Customer
Bill-To Customer
End-User Customer
In order to set the Internal organization for the purchase order.

After that you can create an order from this type of quotes.
Besaides that, you also have to recompile the order app, since I've changed a java file.

Greetings
Rodrigo
PS. Please let me know if something goes wrong with your tests as soon as you can

Rodrigo Aguinaga
added a comment - 26/Aug/06 07:58 Hi,
Well here's my fist patch file about this subject.
Why the first, it's just that I want to be sure that what I'm doing fit's the need of the software. I wouldn't like to get too far to realize it shouldn't be like that.
So, what this patch does. It's to modify the "OrderTypeData.xml" to include a new CustRequestType and QuoteType.
That allows to create a request, from where you can create a quote, from that you can create a purchase order.
The request it's "Request For Purchase Quote" type
The quote it's "Purchase Quote"
Before you try to create the order from the purchase quote you have to set the next roles for the quote:
Ship-To Customer
Bill-To Customer
End-User Customer
In order to set the Internal organization for the purchase order.
After that you can create an order from this type of quotes.
Besaides that, you also have to recompile the order app, since I've changed a java file.
Greetings
Rodrigo
PS. Please let me know if something goes wrong with your tests as soon as you can

Let me tell you that this quote type it's not the only purchase quote that exists. There's also the Catalog Purchase Quote, that doesn't directly helps you to create a purchase order, this sort of quote let you update the supplier prices of the products from the quote and also it's created from a RFQ. But, this will be part of another issue that I'll open after get this one done.

Let me remark that if this patch works as I think it does, it provides a complete functionality to create a PO from a quote. So what I would have to do after, it's to create a screen that allows to add request items from the requirements approved. That way the purchase long cycle would be completed:

PO long cycle:
------------------
requirements -> RFQ -> Quote -> PO

PS. does anybody knows how to apply a patch other than using the Tortoise when you work on windows?
PS2. could somebody recommend me some reading to understand the workflow engine, like how to make it work?, how to create a worflow process? and how's configured to work on the orders?. Because I would like to take a look to it configuration to check if there's possible to define a approbation workflow. Thanks

Rodrigo Aguinaga
added a comment - 26/Aug/06 08:11 Another comment.
Let me tell you that this quote type it's not the only purchase quote that exists. There's also the Catalog Purchase Quote, that doesn't directly helps you to create a purchase order, this sort of quote let you update the supplier prices of the products from the quote and also it's created from a RFQ. But, this will be part of another issue that I'll open after get this one done.
Let me remark that if this patch works as I think it does, it provides a complete functionality to create a PO from a quote. So what I would have to do after, it's to create a screen that allows to add request items from the requirements approved. That way the purchase long cycle would be completed:
PO long cycle:
------------------
requirements -> RFQ -> Quote -> PO
PS. does anybody knows how to apply a patch other than using the Tortoise when you work on windows?
PS2. could somebody recommend me some reading to understand the workflow engine, like how to make it work?, how to create a worflow process? and how's configured to work on the orders?. Because I would like to take a look to it configuration to check if there's possible to define a approbation workflow. Thanks

For a generic company, an RFQ doesn't have a ship to customer, it has a ship to contact method. While in many companies, the company producing the RFQ is the ship to customer, companies that drop ship product do not want their vendor knowing who it's going to (otherwise they could simply call up the customer and bypass the middle man, bad business but it happens). While it may be beneficial for you to store "ship to customer" for your records, that party generally shouldn't show up on the RFQ, however the destination address should (perhaps supporting documents only city, state, zip). QuoteAttribute could be used to store the info for the short term, but for the long term there should be a QuoteContactMech entity (possibly even QuoteItemContactMech entity to mirror the Order group).

Additionaly, depending on how "smart" your vendor is, having a bill-to-customer can confuse the company accepting the RFQ (sometimes they think it's an actual order if there is someone to bill), as far as requirements, this may be more generic to use account number.

Chris Howe
added a comment - 26/Aug/06 10:03 For a generic company, an RFQ doesn't have a ship to customer, it has a ship to contact method. While in many companies, the company producing the RFQ is the ship to customer, companies that drop ship product do not want their vendor knowing who it's going to (otherwise they could simply call up the customer and bypass the middle man, bad business but it happens). While it may be beneficial for you to store "ship to customer" for your records, that party generally shouldn't show up on the RFQ, however the destination address should (perhaps supporting documents only city, state, zip). QuoteAttribute could be used to store the info for the short term, but for the long term there should be a QuoteContactMech entity (possibly even QuoteItemContactMech entity to mirror the Order group).
Additionaly, depending on how "smart" your vendor is, having a bill-to-customer can confuse the company accepting the RFQ (sometimes they think it's an actual order if there is someone to bill), as far as requirements, this may be more generic to use account number.
Thanks for your work on this. This will be a good feature to have.

Tortoise "Appy patch" option uses svn Merge. "Appy patch" is often useful (because Merge help to resolve conflicts and Tortoise itself manages well path problems) but sometimes it creates more problem than help. Typically when you have to merge an old patch. In this cases (and in any cases I have troubles using Tortoise) I use the patch command in a "DOS black box" (command line). This means that you have to install patch in your Windows system as it's not there by default like under Linux.

Jacques Le Roux
added a comment - 26/Aug/06 18:11 Rodrigo,
I may not help much on this, just an answer to your 1st PS :
Tortoise "Appy patch" option uses svn Merge. "Appy patch" is often useful (because Merge help to resolve conflicts and Tortoise itself manages well path problems) but sometimes it creates more problem than help. Typically when you have to merge an old patch. In this cases (and in any cases I have troubles using Tortoise) I use the patch command in a "DOS black box" (command line). This means that you have to install patch in your Windows system as it's not there by default like under Linux.
The main syntax is
patch -po < patchfilename.patch
where -po means "the path of hunks (pieces in the patch) begins here". Anyway, more about patch here : http://www.linuxmanpages.com/man1/patch.1.php

From Chris comment I think there are some great ideas that we can use on this feature, so what I'm going to do it's to describe a group of steps that need to be done for a PO creation from the requirements, RQF and Quotes, so that way we can have a big picture of the functionality and add information to an specific step of the cycle.

Step1: Create the product requirement

Needs to specify a product

Needs to specify a facility ( so we can know which facility requires the product )

Cuantity, amount and max. amount. To know how many items are required, and how much are we willing to pay.

Step2: Create the RQF

The product store that requires the products, so the supplier knows how's asking for it, and where it's suppose to be delivered

The requesting party, to associate the quote ot a buyer.

And the items requires basicly the same info that a requirement (we can have a friendly screen to do this)

What it's missing rigth know it's the chance to associate a RQF to multiple supplies, this could be work out throught the party roles

With in the RQF report (curently there's none) there could be the contact to the request taker info.

As in quote, there should be a functionality that allows to send the RQF to the selected suppliers in a email as a report.

Step3: Create the Quote

All that cames from the RQF.

Specify for the items the unit prices

Define the Bill-To Customer, End-User Customer and Ship-To Customer roles. Because in order to know which internal company it's creating the PO, you need to specify this info (as you can see here the term customer it's not used to refer the "client". It's use to refer the internal company that it's going to make the purchase. Why it's this, because the way this is used for purchase quotes and sales quotes, the customer definition change a little on each case )

Step4: Create the Order

All the info from the quote

You also need to specify shipping method and financial options

Please when you contribute to improve the funtionality try to say something like "on the step 2 we could add....." so that way we all could understand each other. Hopefully this is not to tedious and we can understand each other better.

Rodrigo Aguinaga
added a comment - 27/Aug/06 09:08 hi,
From Chris comment I think there are some great ideas that we can use on this feature, so what I'm going to do it's to describe a group of steps that need to be done for a PO creation from the requirements, RQF and Quotes, so that way we can have a big picture of the functionality and add information to an specific step of the cycle.
Step1: Create the product requirement
Needs to specify a product
Needs to specify a facility ( so we can know which facility requires the product )
Cuantity, amount and max. amount. To know how many items are required, and how much are we willing to pay.
Step2: Create the RQF
The product store that requires the products, so the supplier knows how's asking for it, and where it's suppose to be delivered
The requesting party, to associate the quote ot a buyer.
And the items requires basicly the same info that a requirement (we can have a friendly screen to do this)
What it's missing rigth know it's the chance to associate a RQF to multiple supplies, this could be work out throught the party roles
With in the RQF report (curently there's none) there could be the contact to the request taker info.
As in quote, there should be a functionality that allows to send the RQF to the selected suppliers in a email as a report.
Step3: Create the Quote
All that cames from the RQF.
Specify for the items the unit prices
Define the Bill-To Customer, End-User Customer and Ship-To Customer roles. Because in order to know which internal company it's creating the PO, you need to specify this info (as you can see here the term customer it's not used to refer the "client". It's use to refer the internal company that it's going to make the purchase. Why it's this, because the way this is used for purchase quotes and sales quotes, the customer definition change a little on each case )
Step4: Create the Order
All the info from the quote
You also need to specify shipping method and financial options
Please when you contribute to improve the funtionality try to say something like "on the step 2 we could add....." so that way we all could understand each other. Hopefully this is not to tedious and we can understand each other better.
–
Rodrigo

I think you might be making this much more dificult than it needs to be. An RFQ should be identical to creating a PO using the bottom half of the "Create Purchase Order" screenlet (ordermgr/control/orderentry).

When you use this box you're productId is empty and optionally the price is empty (if you're asking for a quote, you don't know the price). The only difference is instead of storing the information in the order related entities they're being stored in the quote related entities.

The twist in an RFQ from an order is that there needs to be some sort of RFQ item reply entities. This entity will have the replyId, quoteId, quoteItemSeqId, supplierId, supplierProductId, fullfilmentQty, price, currency UomId, fromDate, thruDate, etc.

Chris Howe
added a comment - 27/Aug/06 13:14 Rodrigo,
I think you might be making this much more dificult than it needs to be. An RFQ should be identical to creating a PO using the bottom half of the "Create Purchase Order" screenlet (ordermgr/control/orderentry).
When you use this box you're productId is empty and optionally the price is empty (if you're asking for a quote, you don't know the price). The only difference is instead of storing the information in the order related entities they're being stored in the quote related entities.
The twist in an RFQ from an order is that there needs to be some sort of RFQ item reply entities. This entity will have the replyId, quoteId, quoteItemSeqId, supplierId, supplierProductId, fullfilmentQty, price, currency UomId, fromDate, thruDate, etc.
After that a single service maps the Quote to an order.

As a matter of fact I think you're rigth, you should be able to create a purchase RFQ like a PO, but since there wasn't a RQF that could help to create a quote that allows a PO creation, I started creating a quote type and a request type that allows you to create a PO. But the next step should be create a service that allows a quick creation of the RFQ just like a PO.

In the Sales order creation, theres an option on the left bar that allows you to create a request from the order, so I belive that there I could make a couple of modifications to that code and so There could be a way to create a RQF from the same screens that you create a PO.

So I would like a "commiter" to take a look into this, to check If the patch it's rigth and after that I could start working on that service that allow to create a RQF from the same screen as a PO.

Rodrigo Aguinaga
added a comment - 31/Aug/06 06:45 Chris,
As a matter of fact I think you're rigth, you should be able to create a purchase RFQ like a PO, but since there wasn't a RQF that could help to create a quote that allows a PO creation, I started creating a quote type and a request type that allows you to create a PO. But the next step should be create a service that allows a quick creation of the RFQ just like a PO.
In the Sales order creation, theres an option on the left bar that allows you to create a request from the order, so I belive that there I could make a couple of modifications to that code and so There could be a way to create a RQF from the same screens that you create a PO.
So I would like a "commiter" to take a look into this, to check If the patch it's rigth and after that I could start working on that service that allow to create a RQF from the same screen as a PO.
Regards
Rodrigo

thanks, your first patch is now in svn with rev. 439356
However there were a few issues in the syntax of the QuoteServices.xml file so I did a few mods before committing your work: please test and review it to see if everything is ok.
Will you continue your work here or should I close this issue?

Jacopo Cappellato
added a comment - 01/Sep/06 15:45 Rodrigo,
thanks, your first patch is now in svn with rev. 439356
However there were a few issues in the syntax of the QuoteServices.xml file so I did a few mods before committing your work: please test and review it to see if everything is ok.
Will you continue your work here or should I close this issue?

Hi Jacopo,
I plan to work on this issue as soon I've some time, so please do not close this issue yet, is just that I haven't got a lot of time since I change of work and my schedule it's a total mess rigth now.

Rodrigo Aguinaga
added a comment - 24/Sep/06 04:15 Hi Jacopo,
I plan to work on this issue as soon I've some time, so please do not close this issue yet, is just that I haven't got a lot of time since I change of work and my schedule it's a total mess rigth now.
Regards

David E. Jones
added a comment - 20/Oct/06 16:36 I agree with David Welton on the mailing list discussion for this. Let's keep it open as there is no harm in doing so, and it's nice to keep track of it, so there is a good reason to keep it...
It is already flagged as Minor and a New Feature, so when looking at issues to work on with so many Major and Critical ones, it shouldn't bother anyone.