← Back to team overview

openupgrade-drivers team mailing list archive

crm claim stages and states

 

I need some input on crm claim which is tricky for migration due to the concept of stage and states.

I see two ways of migrating them, which one would be the most responsible way of doing this?

In 6.1, you have have 5 states:
    ('draft', 'open', 'pending', 'done', 'cancel')
and 4 default stages as well as an unlimited amount of user defined stages, which are in crm_case_stage:
    ("Accepted as Claim", "Actions Defined", "Actions Done", "Won't fix")

In 7.0, you have a relation between stages (crm_claim_stage) and states.
The four default ones are:
| Stage       | Status      |
-----------------------------
| New         | New         |
| In Progress | In Progress |
| Settled     | Closed      |
| Rejected    | Cancelled   |


Method 1:

Migrating 6.1 states into 7.0 stages is pretty trivial.
| 6.1 State | 7.0 Stage   |
---------------------------
| draft     | New         |
| open      | In Progress |
| pending | In Progress |
| done      | Settled     |
| cancel    | Rejected    |

The 6.1 stage is deprecated and the stages are removed from the crm_case_stage table. This avoids complicates such as having a stage 'Won't fix' and a state 'draft' concurrently which is not allowed in 7.0, but is in 6.1. This is the most straight forward way, the work flow matches in both versions. If the user has custom stages, he will have to recreate them as stage->states relations.

Method 2:

Migrating 6.1 stages into 7.0 stages.

| 6.1 Stage         | 7.0 Stage   |
-----------------------------------
| Accepted as Claim| New         |
| Actions Defined   | In Progress |
| Actions Done | Settled     |
| Won't fix | Rejected    |

Additional, custom stages from 6.1 will have to be extracted from crm_case_stage and moved to crm_claim_stage and assigned with a default status (In Progress) because 6.1 does not provide such a relation.

Doing this will require revision from the user, since the work flow will no longer match. In my example of a claim with the stage 'Won't fix' and the state 'draft', the claim will be marked as rejected when it was marked as 'New' in 6.1 Aside from this inconsistency, there should be no lost data, provided there is a way to separate claim data from the crm_case_stage table.


Thank you,
--
Sandy Carter
Consultant en logiciel libre
Développeur OpenERP
Savoir-faire Linux Inc.
514-276-5468 poste 142
http://www.savoirfairelinux.com
sandy.carter@xxxxxxxxxxxxxxxxxxxx