[jira] Created: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

[jira] Created: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)
Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
--------------------------------------------------------------------------

                 Key: OFBIZ-2037
                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
             Project: OFBiz
          Issue Type: Improvement
          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
    Affects Versions: SVN trunk
         Environment: any
            Reporter: Hans Bakker
            Assignee: Hans Bakker
            Priority: Minor
             Fix For: SVN trunk


the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
from most specific to most general:
1. for a partyId (partyRate)
2. for a workEffort/timeentry (workEffortAssignmentRate)
3. for a employee position (EmplPositionTypeRate)
4. for a the default rateTypeId (RateType)

The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.

What is proposed:
===========
1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
3. create a new entity: RateAmount with the following fields:
        primary key:
                rateTypeId
                rateCurrencyUomId
                workEffortId
                partyId
                emplPositionTypeId
                periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
                fromDate
        non-key fields:
                thruDate
                rateAmount
4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
5. depreciate the getPartyRate service.
6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
7. update existing services and forms.

QUESTION:
should the accounting organization partyId be in the key of the new RateAmount entity?

Regards,
Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)

    [ https://issues.apache.org/jira/browse/OFBIZ-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12647926#action_12647926 ]

Hans Bakker commented on OFBIZ-2037:
------------------------------------

Some more implications:
1. This change also allows to depreciate the workEffortAssignmentRate in favor of the RateAmount entity.
2. The EmplPositionTypeRate will be depreciated in favour of the EmplPositionTypeRateAndAmount view which will show the same entity now however including the currency.
3. Move the RateType entity definition from the workEffort to the Accounting component and define the RateAmount entity also there. (these entities now used in HM and workEffort)
4. Depreciate the PartyRate entity in favor of the PartyRateType entity not having the currencyUomId in the key and no amount.
5. Create a partyRateAndAmount view which will enhance the original PartyRate entity now having the currencyUomId and amount moved to the RateAmount entity.
6. Create a conversion service to copy the existing data from EmplPositionTypeRate, PartyRate, and workEffortAssignmentRate to the new RateAmount entity using the system defaultCurrency.



> Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
> --------------------------------------------------------------------------
>
>                 Key: OFBIZ-2037
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
>    Affects Versions: SVN trunk
>         Environment: any
>            Reporter: Hans Bakker
>            Assignee: Hans Bakker
>            Priority: Minor
>             Fix For: SVN trunk
>
>
> the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
> from most specific to most general:
> 1. for a partyId (partyRate)
> 2. for a workEffort/timeentry (workEffortAssignmentRate)
> 3. for a employee position (EmplPositionTypeRate)
> 4. for a the default rateTypeId (RateType)
> The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.
> What is proposed:
> ===========
> 1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
> 2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
> 3. create a new entity: RateAmount with the following fields:
> primary key:
> rateTypeId
> rateCurrencyUomId
> workEffortId
> partyId
> emplPositionTypeId
> periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
> fromDate
> non-key fields:
> thruDate
> rateAmount
> 4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
> 5. depreciate the getPartyRate service.
> 6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
> 7. update existing services and forms.
> QUESTION:
> should the accounting organization partyId be in the key of the new RateAmount entity?
> Regards,
> Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Issue Comment Edited: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)

    [ https://issues.apache.org/jira/browse/OFBIZ-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12647926#action_12647926 ]

hansbak edited comment on OFBIZ-2037 at 11/15/08 7:19 PM:
--------------------------------------------------------------

Some more implications:
1. This change also allows to depreciate the workEffortAssignmentRate in favor of the RateAmount entity.
2. The EmplPositionTypeRateAndAmount will be used instead of the EmplPositionTypeRate entity (amount removed)  which will show the same entity now however including the currency.
3. Move the RateType entity definition from the workEffort to the Accounting component and define the RateAmount entity also there. (these entities now used in HM and workEffort)
4. Depreciate the PartyRate entity in favor of the PartyRateType entity not having the currencyUomId in the key and no amount.
5. Create a partyRateAndAmount view which will enhance the original PartyRate entity now having the currencyUomId and amount moved to the RateAmount entity.
6. Create a conversion service to copy the existing data from EmplPositionTypeRate, PartyRate, and workEffortAssignmentRate to the new RateAmount entity using the system defaultCurrency.



      was (Author: hansbak):
    Some more implications:
1. This change also allows to depreciate the workEffortAssignmentRate in favor of the RateAmount entity.
2. The EmplPositionTypeRate will be depreciated in favour of the EmplPositionTypeRateAndAmount view which will show the same entity now however including the currency.
3. Move the RateType entity definition from the workEffort to the Accounting component and define the RateAmount entity also there. (these entities now used in HM and workEffort)
4. Depreciate the PartyRate entity in favor of the PartyRateType entity not having the currencyUomId in the key and no amount.
5. Create a partyRateAndAmount view which will enhance the original PartyRate entity now having the currencyUomId and amount moved to the RateAmount entity.
6. Create a conversion service to copy the existing data from EmplPositionTypeRate, PartyRate, and workEffortAssignmentRate to the new RateAmount entity using the system defaultCurrency.


 

> Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
> --------------------------------------------------------------------------
>
>                 Key: OFBIZ-2037
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
>    Affects Versions: SVN trunk
>         Environment: any
>            Reporter: Hans Bakker
>            Assignee: Hans Bakker
>            Priority: Minor
>             Fix For: SVN trunk
>
>
> the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
> from most specific to most general:
> 1. for a partyId (partyRate)
> 2. for a workEffort/timeentry (workEffortAssignmentRate)
> 3. for a employee position (EmplPositionTypeRate)
> 4. for a the default rateTypeId (RateType)
> The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.
> What is proposed:
> ===========
> 1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
> 2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
> 3. create a new entity: RateAmount with the following fields:
> primary key:
> rateTypeId
> rateCurrencyUomId
> workEffortId
> partyId
> emplPositionTypeId
> periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
> fromDate
> non-key fields:
> thruDate
> rateAmount
> 4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
> 5. depreciate the getPartyRate service.
> 6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
> 7. update existing services and forms.
> QUESTION:
> should the accounting organization partyId be in the key of the new RateAmount entity?
> Regards,
> Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Updated: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)

     [ https://issues.apache.org/jira/browse/OFBIZ-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Hans Bakker updated OFBIZ-2037:
-------------------------------

    Attachment: rateChange.diff

Rate re-factoring now implemented. Attached is the diff file for review.

What has been changed:
1. all rates for worked time can be now defined with a period and currency
2. Rate amounts will never be deleted but always expired with a thrudate to be sure history is kept fo accounting purposes.
3. if not provided they default to "rate per hour" and the system default currency (as currently is the case)

and are at several levels:
1. work effort level
2. party level
3. default level

The new entity RateAmount is also used as an extension to the EmployeeTypeRate entity where salaries  can now be specified with a currency.

The general service to obtain rates is the service "getRateAmount" will take the rateAmount from the appropriate level and will report which level was taken.

System changes:
1. all "rate" services, entities and views moved to the accounting component.

Database changes:
1. New entity: Rate amount where rate amounts can be specified by period and currency.
2. RateType: field "amount" is dropped and is moved to the new entity: RateAmount
3. WorkEffortAssignmentRate is dropped and replaced by RateAmount
4. PartyRate, moved from workeffort to accounting component: currency is moved to the rateAmount entity
5. EmplPositionTypeRate: the rateTypeId is moved into the key to be consistent with the other rate tables and the periodId is moved to the rateAmount entity.

Upgrading: It is at the moment assumed that this part of the system is rarely used, however if you have much data in these entities you can unload and reload the tables below, but the general advice is to re-enter the info by hand.
1. Unload (with webtools) the rateType, EmplPositionTypeRate and PartyRate entities
2. drop the EmplPositionTypeRate and PartyRate entities with the sql command "drop table xxxx"
3. stop the system and apply the upgrade from SVN
4. reload the system seed data: ./ant run-install-seed
5. start the ofbiz system.
6. reload the entities from webtools if required.


> Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
> --------------------------------------------------------------------------
>
>                 Key: OFBIZ-2037
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
>    Affects Versions: SVN trunk
>         Environment: any
>            Reporter: Hans Bakker
>            Assignee: Hans Bakker
>            Priority: Minor
>             Fix For: SVN trunk
>
>         Attachments: rateChange.diff
>
>
> the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
> from most specific to most general:
> 1. for a partyId (partyRate)
> 2. for a workEffort/timeentry (workEffortAssignmentRate)
> 3. for a employee position (EmplPositionTypeRate)
> 4. for a the default rateTypeId (RateType)
> The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.
> What is proposed:
> ===========
> 1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
> 2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
> 3. create a new entity: RateAmount with the following fields:
> primary key:
> rateTypeId
> rateCurrencyUomId
> workEffortId
> partyId
> emplPositionTypeId
> periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
> fromDate
> non-key fields:
> thruDate
> rateAmount
> 4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
> 5. depreciate the getPartyRate service.
> 6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
> 7. update existing services and forms.
> QUESTION:
> should the accounting organization partyId be in the key of the new RateAmount entity?
> Regards,
> Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)

    [ https://issues.apache.org/jira/browse/OFBIZ-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12650862#action_12650862 ]

David E. Jones commented on OFBIZ-2037:
---------------------------------------

I hate to say it, because I can see that a lot of work has gone into this, but my vote on this one is a big -1.

The reason: there are big data model design changes here, and they seem to be more complex and difficult to maintain, but also less flexible. There are also a lot of entities changed without discussion of alternatives, and before any coding or additional work is done that should be the priority.

In other words, please don't give up, but let's do back up and discuss how we want to model the data for billing rates.

One trend that I don't like in this patch is that instead of being able to configure more general and more specific billing rates it's mostly in one big billing rate with a large number of factors involved. In other words, I can't setup data to represent that if not overridden by something more specific then the rate for a certain rate type is always X.

So, starting the discussion about what to model, here are some thoughts about things to include:

1. rate and currency together (correct the lack of in the current model)
2. general (by rate type, ie billing level) rates for the company, then for a particular client, then for a particular project
3. override for individuals, perhaps just on the project level (assuming it's a rare case)

Those are some basic ideas, any others anyone can come up with, especially based on common needs they have?

The next steps I'm thinking of would be to model from scratch based on these data elements and the relationships between them, and then see how that model compares to the current OFBiz model and decide which entities to change, deprecate, and new ones to create.



> Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
> --------------------------------------------------------------------------
>
>                 Key: OFBIZ-2037
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
>    Affects Versions: SVN trunk
>         Environment: any
>            Reporter: Hans Bakker
>            Assignee: Hans Bakker
>            Priority: Minor
>             Fix For: SVN trunk
>
>         Attachments: rateChange.diff
>
>
> the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
> from most specific to most general:
> 1. for a partyId (partyRate)
> 2. for a workEffort/timeentry (workEffortAssignmentRate)
> 3. for a employee position (EmplPositionTypeRate)
> 4. for a the default rateTypeId (RateType)
> The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.
> What is proposed:
> ===========
> 1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
> 2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
> 3. create a new entity: RateAmount with the following fields:
> primary key:
> rateTypeId
> rateCurrencyUomId
> workEffortId
> partyId
> emplPositionTypeId
> periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
> fromDate
> non-key fields:
> thruDate
> rateAmount
> 4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
> 5. depreciate the getPartyRate service.
> 6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
> 7. update existing services and forms.
> QUESTION:
> should the accounting organization partyId be in the key of the new RateAmount entity?
> Regards,
> Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)

    [ https://issues.apache.org/jira/browse/OFBIZ-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12650867#action_12650867 ]

Hans Bakker commented on OFBIZ-2037:
------------------------------------

David, I am sorry, "I hate to say it" but......

The history:
Nov 5: discussed it at the Apachecon: you had no objections.
Nov 9: creation of this issue.
Nov 15: Show the implementation details
Nov: 25: The final implementation.

The amount of work: 40 hours.

no flexibilty? look at the hirarchy?
1. rate per project(workEffort) ie customer is possible
2. rate per person is possible.
3. general rate is possible....

and not give up? I am sorry David.....this is too far for me....
Have a nice day.

> Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
> --------------------------------------------------------------------------
>
>                 Key: OFBIZ-2037
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
>    Affects Versions: SVN trunk
>         Environment: any
>            Reporter: Hans Bakker
>            Assignee: Hans Bakker
>            Priority: Minor
>             Fix For: SVN trunk
>
>         Attachments: rateChange.diff
>
>
> the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
> from most specific to most general:
> 1. for a partyId (partyRate)
> 2. for a workEffort/timeentry (workEffortAssignmentRate)
> 3. for a employee position (EmplPositionTypeRate)
> 4. for a the default rateTypeId (RateType)
> The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.
> What is proposed:
> ===========
> 1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
> 2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
> 3. create a new entity: RateAmount with the following fields:
> primary key:
> rateTypeId
> rateCurrencyUomId
> workEffortId
> partyId
> emplPositionTypeId
> periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
> fromDate
> non-key fields:
> thruDate
> rateAmount
> 4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
> 5. depreciate the getPartyRate service.
> 6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
> 7. update existing services and forms.
> QUESTION:
> should the accounting organization partyId be in the key of the new RateAmount entity?
> Regards,
> Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)

    [ https://issues.apache.org/jira/browse/OFBIZ-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12650868#action_12650868 ]

David E. Jones commented on OFBIZ-2037:
---------------------------------------

Discussion without details just doesn't do it Hans. Adding currency to current entities is fine. Seemingly random removal of fields and entire entities, and introducing new ones using questionable patterns was NEVER discussed and is a big problem.

So are you saying that you're choosing to ignore my comments and you're planning to commit this anyway?

Does anyone else care about this? I suppose if not then I won't be able to care enough to make a difference either. I don't even have internal support where I'm working to get involved with this.



> Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
> --------------------------------------------------------------------------
>
>                 Key: OFBIZ-2037
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
>    Affects Versions: SVN trunk
>         Environment: any
>            Reporter: Hans Bakker
>            Assignee: Hans Bakker
>            Priority: Minor
>             Fix For: SVN trunk
>
>         Attachments: rateChange.diff
>
>
> the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
> from most specific to most general:
> 1. for a partyId (partyRate)
> 2. for a workEffort/timeentry (workEffortAssignmentRate)
> 3. for a employee position (EmplPositionTypeRate)
> 4. for a the default rateTypeId (RateType)
> The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.
> What is proposed:
> ===========
> 1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
> 2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
> 3. create a new entity: RateAmount with the following fields:
> primary key:
> rateTypeId
> rateCurrencyUomId
> workEffortId
> partyId
> emplPositionTypeId
> periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
> fromDate
> non-key fields:
> thruDate
> rateAmount
> 4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
> 5. depreciate the getPartyRate service.
> 6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
> 7. update existing services and forms.
> QUESTION:
> should the accounting organization partyId be in the key of the new RateAmount entity?
> Regards,
> Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)

    [ https://issues.apache.org/jira/browse/OFBIZ-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12650869#action_12650869 ]

Hans Bakker commented on OFBIZ-2037:
------------------------------------

David,

I am always open for suggestions as I have shown in the past. My intentions are not to ignore your suggestions if they are specific to this implementation. Your suggestion to model from scratch is too many steps back for me, that suggestion would be valid short after the issue creation.

Details were given straight away from the start: the exact database changes, what you want more?....the implementation is changed a little but not much. So if you have specifics, let me know if this can improve the implementation.

Regards,
Hans

> Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
> --------------------------------------------------------------------------
>
>                 Key: OFBIZ-2037
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
>    Affects Versions: SVN trunk
>         Environment: any
>            Reporter: Hans Bakker
>            Assignee: Hans Bakker
>            Priority: Minor
>             Fix For: SVN trunk
>
>         Attachments: rateChange.diff
>
>
> the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
> from most specific to most general:
> 1. for a partyId (partyRate)
> 2. for a workEffort/timeentry (workEffortAssignmentRate)
> 3. for a employee position (EmplPositionTypeRate)
> 4. for a the default rateTypeId (RateType)
> The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.
> What is proposed:
> ===========
> 1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
> 2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
> 3. create a new entity: RateAmount with the following fields:
> primary key:
> rateTypeId
> rateCurrencyUomId
> workEffortId
> partyId
> emplPositionTypeId
> periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
> fromDate
> non-key fields:
> thruDate
> rateAmount
> 4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
> 5. depreciate the getPartyRate service.
> 6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
> 7. update existing services and forms.
> QUESTION:
> should the accounting organization partyId be in the key of the new RateAmount entity?
> Regards,
> Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)

    [ https://issues.apache.org/jira/browse/OFBIZ-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12650873#action_12650873 ]

David E. Jones commented on OFBIZ-2037:
---------------------------------------

I gave specifics, and it seems the only way to resolve them is to start with the data model and build up, and really design it and then build or change what you've built as needed. Again, if you disagree and refuse, then what can I do but wait until the next time someone wants to revamp these (and hopefully it doesn't end up having to be in the very near future).

> Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
> --------------------------------------------------------------------------
>
>                 Key: OFBIZ-2037
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
>    Affects Versions: SVN trunk
>         Environment: any
>            Reporter: Hans Bakker
>            Assignee: Hans Bakker
>            Priority: Minor
>             Fix For: SVN trunk
>
>         Attachments: rateChange.diff
>
>
> the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
> from most specific to most general:
> 1. for a partyId (partyRate)
> 2. for a workEffort/timeentry (workEffortAssignmentRate)
> 3. for a employee position (EmplPositionTypeRate)
> 4. for a the default rateTypeId (RateType)
> The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.
> What is proposed:
> ===========
> 1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
> 2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
> 3. create a new entity: RateAmount with the following fields:
> primary key:
> rateTypeId
> rateCurrencyUomId
> workEffortId
> partyId
> emplPositionTypeId
> periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
> fromDate
> non-key fields:
> thruDate
> rateAmount
> 4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
> 5. depreciate the getPartyRate service.
> 6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
> 7. update existing services and forms.
> QUESTION:
> should the accounting organization partyId be in the key of the new RateAmount entity?
> Regards,
> Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)

    [ https://issues.apache.org/jira/browse/OFBIZ-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12650876#action_12650876 ]

Hans Bakker commented on OFBIZ-2037:
------------------------------------

The specifics you mention is the 'organizational company' in the RateAmount table, I can add that. It was already a question in the original issue text.

> Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
> --------------------------------------------------------------------------
>
>                 Key: OFBIZ-2037
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
>    Affects Versions: SVN trunk
>         Environment: any
>            Reporter: Hans Bakker
>            Assignee: Hans Bakker
>            Priority: Minor
>             Fix For: SVN trunk
>
>         Attachments: rateChange.diff
>
>
> the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
> from most specific to most general:
> 1. for a partyId (partyRate)
> 2. for a workEffort/timeentry (workEffortAssignmentRate)
> 3. for a employee position (EmplPositionTypeRate)
> 4. for a the default rateTypeId (RateType)
> The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.
> What is proposed:
> ===========
> 1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
> 2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
> 3. create a new entity: RateAmount with the following fields:
> primary key:
> rateTypeId
> rateCurrencyUomId
> workEffortId
> partyId
> emplPositionTypeId
> periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
> fromDate
> non-key fields:
> thruDate
> rateAmount
> 4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
> 5. depreciate the getPartyRate service.
> 6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
> 7. update existing services and forms.
> QUESTION:
> should the accounting organization partyId be in the key of the new RateAmount entity?
> Regards,
> Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Updated: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)

     [ https://issues.apache.org/jira/browse/OFBIZ-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Hans Bakker updated OFBIZ-2037:
-------------------------------

    Attachment: rateMod3.diff

This patch contains the suggestion from David to include the organizationPartyId in the rate amount entity. Because of this rather large change here the opportunity to look at it before hand.

With this change a default organizationPartyId is introduced in the accounting properties file. As discussed in the mailing list i will contribute a 'preferences' section in the party profile where this can be changed on a user basis.

I will commit this in a couple of days..... if no major comments.


> Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
> --------------------------------------------------------------------------
>
>                 Key: OFBIZ-2037
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
>    Affects Versions: SVN trunk
>         Environment: any
>            Reporter: Hans Bakker
>            Assignee: Hans Bakker
>            Priority: Minor
>             Fix For: SVN trunk
>
>         Attachments: rateChange.diff, rateMod3.diff
>
>
> the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
> from most specific to most general:
> 1. for a partyId (partyRate)
> 2. for a workEffort/timeentry (workEffortAssignmentRate)
> 3. for a employee position (EmplPositionTypeRate)
> 4. for a the default rateTypeId (RateType)
> The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.
> What is proposed:
> ===========
> 1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
> 2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
> 3. create a new entity: RateAmount with the following fields:
> primary key:
> rateTypeId
> rateCurrencyUomId
> workEffortId
> partyId
> emplPositionTypeId
> periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
> fromDate
> non-key fields:
> thruDate
> rateAmount
> 4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
> 5. depreciate the getPartyRate service.
> 6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
> 7. update existing services and forms.
> QUESTION:
> should the accounting organization partyId be in the key of the new RateAmount entity?
> Regards,
> Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)

    [ https://issues.apache.org/jira/browse/OFBIZ-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12654673#action_12654673 ]

David E. Jones commented on OFBIZ-2037:
---------------------------------------

My suggestion, and request, was to discuss the data model and settle on that BEFORE doing any development. Otherwise, this is going to be painful over and over. If you don't plan and design and check the design before building, then your chances of something coming up that invalidates earlier work are high. It's that simple.

In this case, I already commented on this particular issue on the mailing list: we don't want a general organization for the user, we want the organization for the client or service provider party for the project (WorkEffort). A global setting may actually cause significant harm because billing rates will go to that organization instead of one associated with the project.

I'll ask again, and please consider this as a request to collaborate and not criticism of your effort or you as an individual: can we start with requirements for processes and data, then build a data model, then build the app... and in each step discuss and review before making wide-reaching changes?

> Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
> --------------------------------------------------------------------------
>
>                 Key: OFBIZ-2037
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
>    Affects Versions: SVN trunk
>         Environment: any
>            Reporter: Hans Bakker
>            Assignee: Hans Bakker
>            Priority: Minor
>             Fix For: SVN trunk
>
>         Attachments: rateChange.diff, rateMod3.diff
>
>
> the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
> from most specific to most general:
> 1. for a partyId (partyRate)
> 2. for a workEffort/timeentry (workEffortAssignmentRate)
> 3. for a employee position (EmplPositionTypeRate)
> 4. for a the default rateTypeId (RateType)
> The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.
> What is proposed:
> ===========
> 1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
> 2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
> 3. create a new entity: RateAmount with the following fields:
> primary key:
> rateTypeId
> rateCurrencyUomId
> workEffortId
> partyId
> emplPositionTypeId
> periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
> fromDate
> non-key fields:
> thruDate
> rateAmount
> 4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
> 5. depreciate the getPartyRate service.
> 6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
> 7. update existing services and forms.
> QUESTION:
> should the accounting organization partyId be in the key of the new RateAmount entity?
> Regards,
> Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)

    [ https://issues.apache.org/jira/browse/OFBIZ-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12654681#action_12654681 ]

Hans Bakker commented on OFBIZ-2037:
------------------------------------

Hi David,

The main problem i have with this is you reacting after it is implemented. I need this change be finalized this month.

If you are prepared to spend enough time to complete this design in one week i will give it a shot.

so let me know if you can do this. If you can, i have the following requirements:

A. be able to specify a rate amount by currency and period on the following
         levels (from detailed to general)
                1. workEffort (project level)
                2. partyId (employee level)
                3. rateType (company level)

B. Be able to specify that only a certain amount of the actual registered time be used on invoices and project status reports. (example: employees in training)

C. Be able to specify a rateType which is a default on a timesheet for a party.(employee)

D. What to do which the usage of rateType in the EmployeePositionRate entity. Should actually also be with a currency? I would think so but have no strong ideas here)

You have seen my implementation, what is your suggestion?

Regards,
Hans


> Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
> --------------------------------------------------------------------------
>
>                 Key: OFBIZ-2037
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
>    Affects Versions: SVN trunk
>         Environment: any
>            Reporter: Hans Bakker
>            Assignee: Hans Bakker
>            Priority: Minor
>             Fix For: SVN trunk
>
>         Attachments: rateChange.diff, rateMod3.diff
>
>
> the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
> from most specific to most general:
> 1. for a partyId (partyRate)
> 2. for a workEffort/timeentry (workEffortAssignmentRate)
> 3. for a employee position (EmplPositionTypeRate)
> 4. for a the default rateTypeId (RateType)
> The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.
> What is proposed:
> ===========
> 1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
> 2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
> 3. create a new entity: RateAmount with the following fields:
> primary key:
> rateTypeId
> rateCurrencyUomId
> workEffortId
> partyId
> emplPositionTypeId
> periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
> fromDate
> non-key fields:
> thruDate
> rateAmount
> 4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
> 5. depreciate the getPartyRate service.
> 6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
> 7. update existing services and forms.
> QUESTION:
> should the accounting organization partyId be in the key of the new RateAmount entity?
> Regards,
> Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Closed: (OFBIZ-2037) Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.

Nicolas Malin (Jira)
In reply to this post by Nicolas Malin (Jira)

     [ https://issues.apache.org/jira/browse/OFBIZ-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Hans Bakker closed OFBIZ-2037.
------------------------------

    Resolution: Fixed

Committed revision 728894.

On Davids advice the organizationParty Id is removed from the rate amount key again and the rate definition is a system wide definition.

> Re-organize RateType, rateAmount and rateCurrency organization in ofbiz.  
> --------------------------------------------------------------------------
>
>                 Key: OFBIZ-2037
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2037
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: accounting, humanres, specialpurpose/projectmgr, workeffort
>    Affects Versions: SVN trunk
>         Environment: any
>            Reporter: Hans Bakker
>            Assignee: Hans Bakker
>            Priority: Minor
>             Fix For: SVN trunk
>
>         Attachments: rateChange.diff, rateMod3.diff
>
>
> the rateAmount in ofbiz is defined by the rate type and then by the following criteria when defined:
> from most specific to most general:
> 1. for a partyId (partyRate)
> 2. for a workEffort/timeentry (workEffortAssignmentRate)
> 3. for a employee position (EmplPositionTypeRate)
> 4. for a the default rateTypeId (RateType)
> The currency is defined in level 1,4 but not in the others. It should also be possible to specify the currency at any level.
> What is proposed:
> ===========
> 1. remove currencyUomId and (normal)rate(amount) in the partyRate and rateType (level 1,4) entities
> 2. remove rate(amount) from the workEffortAssignmentRate and employee position (level 2,3) entities
> 3. create a new entity: RateAmount with the following fields:
> primary key:
> rateTypeId
> rateCurrencyUomId
> workEffortId
> partyId
> emplPositionTypeId
> periodTypeId (from the PeriodType entity: per hour/day/week/month/quarter)
> fromDate
> non-key fields:
> thruDate
> rateAmount
> 4. create a service "getRateAmount" which will retrieve the applicable rate amount for the data provided searching from most specific to most general
> 5. depreciate the getPartyRate service.
> 6. create the createRateAmount and deleteRateAmount(expire) service to update the new entity
> 7. update existing services and forms.
> QUESTION:
> should the accounting organization partyId be in the key of the new RateAmount entity?
> Regards,
> Hans

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.