Page 1 of 1

Centralized ID Sequences

PostPosted: Mon Jan 30, 2012 6:06 pm
by nmicoud
Hi,

I've read migration script "812_IDEMPIERE-127_RecentItems.sql" and seen that "official" ID for iDempiere will start at 200000.
It means that if i (or anyone else) want to use centralized ID for specific developments, i have to use ID > 300000 ?

What are the offical ranges ?
0 - 49999 : Compiere
50000 - ?? : Adempiere
200000 - 299999 : iDempiere
300000 - 999999 : specific
1000000 - non centralized

Thanks

Nicolas

Re: Centralized ID Sequences

PostPosted: Tue Jan 31, 2012 4:57 am
by globalqss
Hi Nicolas,

for specific developments I would recommend to use the range:
1000000 - non centralized

Just use official IDs when is something that is pretended to be contributed for the product.

Regards,

Carlos Ruiz

Re: Centralized ID Sequences

PostPosted: Tue Jan 31, 2012 4:06 pm
by nmicoud
Thanks for answering.
But what if i need to use centralized IDs to add column of a report or anything else (for every base i managed), i don't think i should use 10000000 because they are specific to one database.
What would be the correct range ?

Regards

Re: Centralized ID Sequences

PostPosted: Tue Jan 31, 2012 4:24 pm
by a42niem
Hi Nicolas,

for that purpose you can set up your own ID server behind a local web server and use the related system configuration entries to point all your implementations to that. Have a look at http://www.adempiere.com/Centralized_ID_Management and http://www.adempiere.com/ManPageW_SystemConfigurator and refer to PROJECT_ID_USE_CENTRALIZED_ID

Regards

Dirk Niemeyer

Re: Centralized ID Sequences

PostPosted: Tue Jan 31, 2012 4:45 pm
by nmicoud
Thanks for answering,

If I understand well :
DICTIONNARY_ID... are using ID < 1000000 for "official" feature, requests,... (development at top level which requires username/password ; limited access)
PROJECT_ID... are using ID > 1000000 ; they can be used by everyone for their own development (for instance, i add a new column which is needed through all my database).

So, if i want to use DICTIONNARY, System Confugurator should be :
DICTIONARY_ID_USE_CENTRALIZED_ID = Y and PROJECT_ID_USE_CENTRALIZED_ID = N

If i want to use PROJECT, System Confugurator should be :
DICTIONARY_ID_USE_CENTRALIZED_ID = N and PROJECT_ID_USE_CENTRALIZED_ID = Y

If i'm making just a development for one database :
DICTIONARY_ID_USE_CENTRALIZED_ID = N and PROJECT_ID_USE_CENTRALIZED_ID = N

Is this correct ?

Thanks

Nicolas

Re: Centralized ID Sequences

PostPosted: Tue Jan 31, 2012 5:03 pm
by a42niem
Nicolas,

yes, for me that is a good description of how to use them

Regards

Dirk Niemeyer

Re: Centralized ID Sequences

PostPosted: Tue Jan 31, 2012 5:25 pm
by nmicoud
Thanks Dirk,

Thus, a good practice should be to always put PROJECT_ID_USE_CENTRALIZED_ID = Y.

Otherwise, i could have duplicates ID.
For instance, i add a column in a table and it takes the id 1000015 (database A).
And if if record a migration script on database B and the project ID (managed on a remote server) is also 1000015 for AD_Column, when i will execute migration script on database A, it will throw an error (duplicate ID).

Thanks for your time.

Nicolas

Re: Centralized ID Sequences

PostPosted: Tue Jan 31, 2012 10:39 pm
by globalqss
Yes Nicolas, as Dirk suggested project centralized ID was intended to help you in that case.

The other tool that can solve your problem is 2pack - the Localization Colombia is created with non-official IDs and completely done via 2pack.

However, the 2pack from Adempiere has some problems, iDempiere 2pack was revamped by Heng Sin and it will represent a big jump on this direction, we hope to get rid off of centralized ID on iDempiere with the usage of UUIDs, that's working very well until now.

Regards,

Carlos Ruiz

Re: Centralized ID Sequences

PostPosted: Wed Feb 01, 2012 3:53 pm
by nmicoud
OK thanks Carlos, i'll ty 2pack when available
Regards,

Nicolas