Comment 183 for bug 1160365

Revision history for this message
Nicolas JEUDY (njeudy) wrote :

@fabien

Ok I read all your comment, I will try real example and try to add video of what I mean.

I just want to add and explain two scenario:

1) scenario 10: What about invoice to walt Disney but send it to john do that as to validate it because he is in charge of want should be done and has role to verify that the invoice is correct ? You have this with company and international office for example. The man "accounting manager" of ACME is the contact of all invoice for FR office, BELGIUM Office, but invoice is linked to fr office, BELGIUM office .. I may be wrong but I have two customer that do this actually and I don't know how to setup this in v7. With rapahel branch I just have to set contact to "accounting manager" and partner to fr Office for example. But yes we have to link openchatter, email and commication to contact_id instead of partner id. Like you said rename partner_id by contact in module take 10min ;)

2) Invoice issue and task on timesheet.

- Create a contract (annual support contract) with company ACME. You define that support cost 60 EUR / hours.
- Check task and issue on this contract and invoice on timesheet.

Now a man (or woman !) call me because he/she has a problem. I create an issue assigned to me, and contact Miss Anna who want to have adresse on openerp in different tables. I work on it and record my work time. As I can have more than one open project with ACME, and as OpenERP set it to mandatory, I need to record my time on a project/analytique account. But as my previous screenshot show, you have no analytic account in many2one widget because they are filtered on contact, and contact has no project on it, this is ACME that has this ..

So how to deal with this ? With Raphael solution (and 6.1 one) you have partner and contact on issue. Even if partner is invisible, analytic account can be filtered with it and not on contact. Contact is just the person you talk with, and the person that will receive email, ticket, and so, but ACME is the business logic target of all invoice, contract, project ... (it's the same with task.)

I think contact_id is the right granularity for end user guy (person that use openerp and record some data), but company (partner_id) is the right granularity for business document. If you want to have what you code in V7 juste set partner_id to invisible and add the onchange function to set the correct partner_id. no data duplication, no problem. The only data replication you have is when contact and partner are the same, but it will be "rare" enough, because in real world you speak with contact (person, department, etc ..) about business object of a company he belongs to.

I really like the simplicity of what as be done, but to be honest, we are losing consistancy and stability just because you choose to connect / fusion contact and partner and think I not so simple ...

I think the problem is more complexe than you mean. How many scenario to you want to see it. I know you take lots of time for this issue (me too :) ) and I wish we would find a good solution for our customer and our customer data.

In 15 min I will post video on the second scenario . it would be more simple to understand.

Thank, and don't hesitate to say to me how to setup openerp V7 for my customer need ;)