My understanding was that he wanted to have an Id for medical records
since nothing else would use that sequence name it would be sequencel
staggerMax is set to 1 by default
public String getNextSeqId(String seqName) {
return this.getNextSeqId(seqName, 1);
}
now if you call
public String getNextSeqId(String seqName, long staggerMax) {
Long nextSeqLong = this.getNextSeqIdLong(seqName, staggerMax);
if (nextSeqLong == null) {
// NOTE: the getNextSeqIdLong method SHOULD throw a runtime
exception when no sequence value is found, which means we should never
see it get here
throw new IllegalArgumentException("Could not get next
sequenced ID for sequence name: " + seqName);
}
if
(UtilValidate.isNotEmpty(this.getDelegatorInfo().sequencedIdPrefix)) {
return this.getDelegatorInfo().sequencedIdPrefix +
nextSeqLong.toString();
} else {
return nextSeqLong.toString();
}
}
then it would be staggered. this is not defualt
or have I missed something.
David E Jones sent the following on 4/23/2009 8:21 PM:
>
> When you look at the code you'll find it most certainly will skip, in
> fact the default sequencing is designed for skipping to be okay in order
> to perform better.
>
> If you want a more strict sequence then take a look at the invoiceId
> generation in the createInvoice service. It is configurable and some of
> the options are meant to make things sequential. Be aware though that
> because of the way transactions work by default (ie the transaction
> isolation done), depending on the transaction isolation it can be
> possible for skips to happen (ie because of phantom reads, etc), it's
> just not as likely.
>
> -David
>
>
> On Apr 23, 2009, at 6:16 PM, BJ Freeman wrote:
>
>> suggest you look at the code to make you confident.
>>
>> Muhammad Aamir sent the following on 4/23/2009 5:06 PM:
>>> And sure it will never skip (as well as repeate)?
>>>
>>> Thanks
>>>
>>> On Fri, Apr 24, 2009 at 2:34 AM, BJ Freeman <[email protected]> wrote:
>>>
>>>> look at the
>>>>
>>>> https://demo.ofbiz.org/webtools/control/FindGeneric?entityName=SequenceValueItem&find=true&VIEW_SIZE=50&VIEW_INDEX=0
>>>>
>>>> you can define your own sequence name
>>>>
>>>> delegator.getNextSeqId uses this
>>>>
>>>>
>>>> Muhammad Aamir sent the following on 4/23/2009 4:18 PM:
>>>>> I am working on an Outpatient Management module for a clinic. I've to
>>>> extend
>>>>> Person entity adding mrNbr (medical record number) field. The field
>>>> should
>>>>> keep incremented automatically and must not repeat and preferably not
>>>> skip
>>>>> as well.
>>>>>
>>>>> Can anybody give me a clue on it (I tried in documentation pages but
>>>> didn't
>>>>> get any hint).
>>>>>
>>>>> Also, is there any page where all entity field data types of ofbiz
>>>>> entity
>>>>> engine are explained?
>>>>>
>>>>> Thanks
>>>>> Muhammad Aamir
>>>>>
>>>>
>>>
>>
>
>
--
BJ Freeman
http://www.businessesnetwork.com/automation
http://bjfreeman.elance.com
Systems Integrator.