Yes, I know the invoice sequence. However it does not use the GenericDelegator.getNextSeqId() method but uses it own service:
getNextInvoiceId in component://accounting/script/org/ofbiz/accounting/invoice/InvoiceServices.xml It's a simple ( xml ) service. My suggestion was regarding the SequenceBank - to add additional feature to that class. Cheers, Deyan On Mon, 2009-06-22 at 09:35 -0700, BJ Freeman wrote: > take a look at > accounting>globalGLSettings>Assign GL Account> Accounting Preferences > Invoice Sequence > > > > Deyan Tsvetanov sent the following on 6/22/2009 7:30 AM: > > Hi again, > > > > finally I used GenericDelegator.getNextSeqIdLong() when creating > > entities. > > > > It does increment the sequence by 1. > > > > However today I noticed, that in the database - sequence_value_item > > table - the seq_id value gets incremented by 10. > > > > The reason is that the org.ofbiz.entity.util.SequenceUtil class creates > > a SequenceBank with the default value ot 10 IDs. > > > > This is a MAJOR problem. It would appear if the server dies or gets a > > hard restart for some reason ( or even JVM error ) - we'll end up with > > gaps. > > > > I couldn't find any API that forces the SequenceUtil to create a > > SequnenceBank sized to 1 . Is there a way to do it ? > > > > > > Also: > > > > I couldn't find any info in the mail threads regarding this sequencing > > mechanism being thread safe. > > Although I ran several threads requesting next ID from the same sequence > > - and it works OK - I am not quite convinced what would happen if we > > have 2 ofbiz instances running against the same database. Is this setup > > supported ? > > > > Thanks in advance, > > Deyan > > > > On Sat, 2009-06-13 at 15:27 +0200, Jacques Le Roux wrote: > >> This has been already dicussed many times. You may find information using > >> MarMail or Nable, some threads are even very detailled > >> > >> Good luck > >> > >> Jacques > >> > >> From: "Deyan Tsvetanov" <[email protected]> > >>> Exactly, I knew I've seen it somewhere :) > >>> "Enforced Sequence (no gaps, per organization)" > >>> > >>> Thanks guys, > >>> I'll have a look at it. > >>> > >>> Another question: do you have any idea how this enforced sequence might > >>> behave in case of two ofbiz servers - in a cluster or sharing a > >>> database ? > >>> > >>> My goal is to generate IDs without absolutely any gaps. > >>> > >>> Another very important requirement is that the order of the record's > >>> CREATED_DATE should match the order of the IDs. It is not possible to go > >>> back and fill a gap. > >>> > >>> Example: > >>> > >>> A good example: > >>> ID | CREATED_DATE > >>> --------------------------------------------- > >>> 1 | 1 June 9:00 AM > >>> 2 | 1 June 10:00 AM > >>> > >>> A bad example: > >>> > >>> ID | CREATED_DATE > >>> --------------------------------------------- > >>> 1 | 1 June 10:00 AM > >>> 2 | 1 June 9:00 AM > >>> > >>> > >>> I already have an idea of a workaround, > >>> but I'll investigate the enforced sequence first. > >>> > >>> Thanks again, > >>> Deyan > >>> > >>> > >>> > >>> On Sat, 2009-06-13 at 05:42 -0700, BJ Freeman wrote: > >>>> Organization GL Settings >Available Internal > >>>> Organizations>Company>Setup>Accounting Preferences > >>>> > >>>> David E Jones sent the following on 6/13/2009 5:15 AM: > >>>>> Take a look at the party/organization accounting preferences in the > >>>>> Accounting Manager. If you're looking for this sort of sequencing for > >>>>> invoices, orders, etc then it is already supported. > >>>>> > >>>>> -David > >>>>> > >>>>> > >>>>> On Jun 13, 2009, at 5:44 AM, Deyan Tsvetanov wrote: > >>>>> > >>>>>> Hi list, > >>>>>> > >>>>>> I'd like to use a custom ID generator - for instance rather to start > >>>>>> from 10000 and increment by 10 I'd like to start from 0, increment by 1 > >>>>>> leaving no empty values and probably append some other rules - like to > >>>>>> reset to 0 in the beginning of each year and prefix the returned ID by > >>>>>> the current year. > >>>>>> > >>>>>> Example: > >>>>>> > >>>>>> 200900001 > >>>>>> 200900002 > >>>>>> .... > >>>>>> 200932110 > >>>>>> .... > >>>>>> 201000001 <--- a new year starts. > >>>>>> > >>>>>> I know it may sound pretty dumb, but the law makers in some countries > >>>>>> are not so smart. > >>>>>> > >>>>>> So - could somebody give me some hints - is it possible to specify a > >>>>>> custom ID generator per field typed "id-ne" in the entitymodel.xml ? > >>>>>> > >>>>>> Thanks in advance, > >>>>>> Deyan > >>>>>> > >>>>> > > > > > > -- > BJ Freeman > http://www.businessesnetwork.com/automation > http://bjfreeman.elance.com > http://www.linkedin.com/profile?viewProfile=&key=1237480&locale=en_US&trk=tab_pro > Systems Integrator. >
