Subcontracting Process - Invoicing process doesn't correct

Bug #1025140 reported by Mannu Sharma
18
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Odoo Addons (MOVED TO GITHUB)
Confirmed
Wishlist
OpenERP Publisher's Warranty Team

Bug Description

Hello All,

I am facing a problem in subcontracting process in OpenERP 6.0.

I am configuring OpenERP for wire manufacturing industry and facing problem in subcontracting process.

The Process:
In manufacturing of wire, components required are Conductor and Insulation Tape(s). Tape is manufactured in-house and for conductor raw material (Silver & Copper) is provided to supplier which in turns returns the finished conductor.

What I have configured:
I have created a finished product BOM i.e. for Wire with components as Conductor and Tape.

And for conductor manufacturing,
1. I have created a subcontracting supplier location which I have assigned in “Production Location” field in Conductor Manufacturing Routing.
2. Created a BOM for conductor manufacturing with components as Silver and Copper.

Whenever I creates a Manufacturing Order for finished product, a new manufacturing order is generated for conductor manufacturing which is fine, a delivery order (Silver and Copper delivery to subcontracting supplier) which is again OK and an incoming shipment.

Till delivery order every thing is fine, but in incoming shipment lines system shows raw material entries instead of conductor entry.

Please help, did I configured incorrectly or there this is a bug in openERP.

Thanks in advance.

Mannu Sharma (mannu)
tags: added: subcontracting
Revision history for this message
Amit Bhavsar (Open ERP) (amb-openerp) wrote :

Hello Mannu Sharma,

I have tested your scenario, when I creates MO for final product at that time generate the PO for the product "Conductor". which is fine. But Still confusing some where... .. :-/

So would you please provide brief Info for "product configuration" for all product. (Product Type, Procurement Method, Supply method)

Thanks and waiting for your reply!

Changed in openobject-addons:
status: New → Incomplete
Revision history for this message
Mannu Sharma (mannu) wrote :

Hello Amit Bhavsar,

Thanks for your reply.

Following is the configuration for finished and raw material product.

Final Product Configuration (Wire):

Product Type: Stockable Product
Procurement Method: Make to Order
Supply Method: Produce

Conductor Configuration (Conductor):

Product Type: Stockable Product
Procurement Method: Make to Order
Supply Method: Produce

Raw Material Configuration (Copper & Silver):

Product Type: Stockable Product
Procurement Method: Make to Stock
Supply Method: Buy

In case I defines supply method for conductor as buy, application generates purchase order for me also, but it that case application does not generates a delivery order of raw materials to supplier.

Thanks.

Revision history for this message
Amit Parik (amit-parik) wrote :

Hello Mannu,

I have checked your issue with both procure method "buy" and "produce" and I have faced the problem on procure method "buy". As you said on your last comment I also didn't see the delivery order for raw materiel(just checked the attached video....I mess-up with another delivery order....so I thought delivery order is created but it was old delivery. Our MO is 0014 and I did see the delivery order for MO-0014. So this is the problem ).

Additionally I didn't face any problem with PO/Incoming shipment, the PO is created for "Conductor" which is correct.

I have attached a video for more clearance, So would you please check it and notify us which problem you have faced (as per my point of view here only one bug which is delivery order for raw materiel doesn't created with procure method "buy on
Subcontracting ) .

Thanks and waiting for your reply!

Revision history for this message
Amit Parik (amit-parik) wrote :
Revision history for this message
Mannu Sharma (mannu) wrote :

Hello Amit Parik,

I have gone through your video. I almost have the same product configuration that you have shown in the video.

In case of supply method produce, system is creating a delivery order for conductor manufacturing order, same as yours but system is also generating an incoming shipment with all raw materials. I think I am having some configuration issue with location parameters.

This is what I have set as location parameters:

Location Name: Subcontracting Supplier
Location Address: Subcontracting Address
Location Type: Supplier Location
Chained Location Type: Fixed
Chained Location if fixed: Store
Chaining Type: Automatic Move

Because on changing Chaining Type to "Automatic No Step Added", system has not generated incoming shipment.

Can you please tell me what should be the location configuration in case of subcontracting process.

And yes, no delivery order is generating in case of procure method "buy".

Thank you so much for making so much efforts in resolving my problem.

Revision history for this message
Amit Parik (amit-parik) wrote :

Hello Mannu,

As per my point of view, for Subcontracting Process the supplier location like this.

location type: supplier
chained location type : none
chaining type : Mannual

Now for the problem of delivery order as I said on comment#3, I am confirming this issue.

Thanks for the reporting!

summary: - Subcontracting Process - Incoming shipment receives raw material sent to
- supplier.
+ Subcontracting Process - Delivery order doesn't created If product 's
+ procure method='buy' .
Changed in openobject-addons:
assignee: nobody → OpenERP R&D Addons Team 2 (openerp-dev-addons2)
importance: Undecided → Medium
status: Incomplete → Confirmed
summary: - Subcontracting Process - Delivery order doesn't created If product 's
- procure method='buy' .
+ Subcontracting Process - Raw material's Delivery order doesn't created
+ If product 's procure method='buy' .
Revision history for this message
Mannu Sharma (mannu) wrote : Re: Subcontracting Process - Raw material's Delivery order doesn't created If product 's procure method='buy' .

Hello Amit,

I am going to check the location configuration suggested by you, but what I have found on the openerp doc was that, for subcontracting location type should be supplier and location type should be fixed.

Please check the documentation under "Working with Subcontractors" on http://doc.openerp.com/v6.0/book/5/5_15_Manufacturing/5_15_Manufacturing_forecasting.html

Thanks

Revision history for this message
Amit Parik (amit-parik) wrote :

Hello Mannu,

Thanks for your kind reply.

Yes, you are right location configuration must be like this. But it doesn't effect I got the same result and delivery order still not created but it should be.

Thanks again!

Revision history for this message
Mannu Sharma (mannu) wrote :

Hello Amit Parik,

I was confused about one more thing, in case I defines conductor's supply method as "produce", now system will generate a manufacturing order and a delivery order.

What I want to know is that, as system is not generating any purchase document nor any incoming shipment, so on the basis of which document I am going to process payment to supplier.

Revision history for this message
Steffi Frank (Bremskerl, DE) (steffi-frank) wrote :

Hi Mannu,

I wonder if there is another possibility, but it works like this:

create a new product
- product type = service
- procurement method = on order
- supply method = buy
- add the subcontractor in tab 'suppliers'
- add this product as component in the finished goods BoM

When you confirm a MO the system generates a Request for Quotation. Careful: if you confirm this RfQ make sure the invoice control is set to 'from order'. If you select 'from picking' the system will never generate an invoice (product is not stockable, you will not receive any goods on this PO).

Issue: the draft invoice contains always the ordered qty. If your subcontractor splits his delivery into two financial periods the invoive should get splitted as well... Not working in OpenERP as far as I know. What we do is: copy the invoice in state 'draft' change qty in both invoices (invoice 1 with received qty, invoice 2 with remaining qty)

Another issue: yes, you will not find the move in 'incoming shipments' or 'receive products' where you expect them - but in 'traceability / stock moves' in state 'waiting'

hope this helps...
Steffi

Revision history for this message
Amit Parik (amit-parik) wrote :

Hello Mannu,

First of all sub-contracting are working for only manufacturing product So our sub-contracting product's method must be "Produce" then and then it will creates a delivery order also generating the MO for sub-contracting product which is correct.

Sub-contracting means you have manufacturing a item by your supplier and give him a all raw material and your product will be manufactured on your supplier location by supplier.So your product's procure method must be "produce".
If you give the procure method as "make to order " then OpenERP always creates a RFQ it's doesn't go to check the BoM as well as the routing that's here, we got a RFQ and doesn't seen the delivery order. Finally it means that if we set the procure method=buy on subcontracting system never work for subcontracting.

Also you have to configure the location on following manner as well as assign the correct routing

Now the final configuration for manufacturing Please configure your system like in following manner.

Wire :(stockable :- Make to order/make to stock : Produce) main product.
Conductor (Stockable : Make to order: produce) Subcontracting product .(Component for Wire)
Insulation tape: (Make to order/make to stock : Buy) (Another component for wire )

Silver and copper (Make to stock/buy) (component for Conductor which will supplied by us)

Create one supplier location (test):
Location Type : supplier
Location chained type : Fixed
Chained Location if Fixed: your Stock
Location Address: Select an address of the subcontracting partner

BOM:
Wire : Component : Conductor
                                    : Insulation tape
Conductor: Component : Silver
                                              : Copper
                       Routing : Select your created supplier location on production location.

Now create the MO for Wire it will creates a MO for Conductor and delivery order for silver and copper.
Also the stock move of sliver and copper are like.
Stock to test (supplier location)
test to production location

Which is also correct.

Finally all seems correct, if your configuration is proper. So it's not a bug and you can not set a procure method ="buy" because OpenERP directly creates a PO if we select the procure method ="buy" as I said.

@Steffie: As your invoicing issue I agreed there is some issues on invoicing with Sub-contracting , If you setting the following configuration then you will got the correct result on invoicing too.

When Delivey order is generated the some field value should be as follows
Delivery Order Form -> Auto Picking = Disable state
           -> Invoice Control = To Be Invoiced

Hope this will help.
So this is not a bug and I am going to close it.

Thanks and appreciate your efforts on this.

Changed in openobject-addons:
assignee: OpenERP R&D Addons Team 2 (openerp-dev-addons2) → nobody
importance: Medium → Undecided
status: Confirmed → Invalid
Revision history for this message
Steffi Frank (Bremskerl, DE) (steffi-frank) wrote :

Amit,

in the delivery order 'raw material to subcontractor' field 'Invoice Control' is set to read only, I'm not able to change it into 'To be invoiced'

And: I wonder what kind of invoice could get generated through this picking list: for the raw material? I do not sell any material to my subcontractor but I have to pay for kind of service (which has got a total different price than the raw material)

So what? :-(

Steffi

Revision history for this message
Mannu Sharma (mannu) wrote :

I do agree with Steffi and was having the same question, so changing the status to incomplete.

Changed in openobject-addons:
status: Invalid → Incomplete
Revision history for this message
Amit Parik (amit-parik) wrote :

Hello Steffi and Mannu,

Yes, you are right. The invoicing process doesn't correct with subcontracting. But it's improvement for OpenERP

So I am considering this as a "Wishlist".

Thanks!

summary: - Subcontracting Process - Raw material's Delivery order doesn't created
- If product 's procure method='buy' .
+ Subcontracting Process - Invoicing process doesn't correct
Revision history for this message
Amit Parik (amit-parik) wrote :

Hello,

Would you please provide the actual invoicing process with subcontracting which will helpful at the time of implementation.

Thank you!

Changed in openobject-addons:
assignee: nobody → OpenERP R&D Addons Team 2 (openerp-dev-addons2)
importance: Undecided → Wishlist
status: Incomplete → Confirmed
Revision history for this message
Steffi Frank (Bremskerl, DE) (steffi-frank) wrote :

Amit, have a look at #10. This is the way it does work. BUT with one big issue:

in PO form we set invoice_method to 'from picking' as default for all users (this is the correct way for invoicing purchased material or trading goods). Now when creating a service PO (through MO) it is not possible to invoice these POs - there are no related picking lists which ever could go in state 'done' and entail the possibility to invoice them....

Service POs always have to be set to 'from order' (we did that with a little modification).

Next issue: there is no relation between delivered finished goods from subcontractor ("produce" in MO) and qty in service invoice. Imagine your subcontractor delivers parts in June and rest in July and will send you two invoices for two periods...

best regards
Steffi

Revision history for this message
Steffi Frank (Bremskerl, DE) (steffi-frank) wrote :

and another question: is there any chance to make stock moves 'subcontractor --> stock' visible? Somehow they are missing in 'incoming shipments' or 'receive products'.

Scenario: a stock worker in the goods receive area does not know if the incoming goods were purchased throughg PO or manufactured through MO. He normally would use 'receive products' with filter 'product' to search for related documents in OpenERP

Revision history for this message
Rakesh (rakesh-shrimali) wrote :

Hi Amit,

The requirement what we have for subcontracting is as follows

- We make Product "A" which is made up of 3 raw/semi finished products "B" , "C" and "D"
- While "B" and "D" is made in house ( our own production ) "C" is outsourced and we get it via our subcontractor
- "C" has "S" and "I" as raw material which we supply to our subcontract supplier and he just provide some service / operation to make "C" from "S" and "I"
- We buy "S" and "I" and supply directly to our subcontractor supplier to make "C"
- We raise subcontract PO for "C" and as per BOM of "C" we supply "S" and "I" to our subcontractor along with excise returnable challan
- We track stock of "S" and "I" at subcontractor regularly and replenish based on PO's for "C"
- We receive "C" from Subcontractor supplier along with excise returnable challan and show consumption of "S" and "I" accordingly in our stock ( subcontractor stock ) - Goods receipt for "C" and consumption for "S" and "I"
- After this we get invoice from subcontract supplier for subcontracting charges for "C"
- from accounting perspective we pay only subcontracting charges to our subcontracting supplier

- "A" - Make to Stock / Make to Order - Produce
- "B' and "D" - Stock - Purchase
- "C" - Make to Stock - produce by subcontractor and supply of raw material as per "C"'s BOM
- "S" , "I" - Stock - Purchase - Directly supplied to subcontractor to make "C"

Need to track all stock moves and stock at our location and supplier location

How can we achieve above scenario ? This way of communication may take more time to explain the scenario so please let me know is there any way we can discuss this over phone / chat ?

Rakesh Shrimali

Revision history for this message
Element Green (jgreen-users) wrote :

@Steffie: I'm experiencing the same issue. Everything is working for me with subcontracting scenario except "Receive Products" on the final produced product. I would expect that an "Incoming Shipment" would be created for the finished products, but instead I find a Stock Move that was automatically verified. I want personnel to be able to perform the extra step to receive/verify the manufactured products.

It seems like the Supplier Location and its chained stock logic should control the sending of the produced products to our main stock, but not so. It doesn't seem to matter what "Chaining Type" I use. One thing that puzzles me still, is that when a procurement occurs, it does so for our main stock location. The MO created thus has our main stock location as both the source and destination. The routing assigned to the BoM uses the supplier location though. Should the source/destination of the MO also use the supplier location (I don't see how, since it only allows for Internal Locations to be used). It seems like this might be the key to why the chained stock location rules aren't being followed.

I've spent hours and hours trying to get subcontracting to work properly with OpenERP. I wish it was easier! If anyone can help me, I would be eternally grateful. In fact, I can compensate someone for their time. I have already invested so much in making OpenERP work for our small company and I really want it to be successful!

Changed in openobject-addons:
assignee: OpenERP R&D Addons Team 2 (openerp-dev-addons2) → OpenERP Publisher's Warranty Team (openerp-opw)
tags: added: maintenance
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.