My Oracle Support Banner

Business Number Rule with Character 'C*' is Throwing an Error: 'The Sequence Null For Rule Is Exhausted' (Doc ID 981015.1)

Last updated on SEPTEMBER 08, 2016

Applies to:

Oracle Transportation Management - Version: 6.0.2
Information in this document applies to any platform.

Symptoms

When using OTM Version 6.0.2 and attempting to have a Business Number Rule generate a value that contains an Alpha character, using the 'C*' instruction, it is expected that the Alpha character will move from A to B, to Z and then onto AA and so on. However once Z is reached the rule is generating an error as follows:

ERROR
-----------------------
The sequence null for rule is exhausted

at sun.reflect.GeneratedConstructorAccessor355.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
at glog.util.exception.GLException.factory(GLException.java:429)
at glog.util.exception.GLException.factory(GLException.java:406)
at glog.util.exception.GLException.factory(GLException.java:402)
at glog.server.bngenerator.BNSequence.increment(BNSequence.java:33)
at glog.server.bngenerator.BNSequence.increment(BNSequence.java:41)
at glog.server.bngenerator.picture.BNPictureSegment$Sequence.increment(BNPictureSegment.java:219)
at glog.server.bngenerator.picture.BNPictureGenerator.perform(BNPictureGenerator.java:56)
at glog.server.bngenerator.picture.BNPictureGenerator.perform(BNPictureGenerator.java:31)
at glog.server.bngenerator.BNEngine.generateWithBNSequence(BNEngine.java:273)
at glog.server.bngenerator.BNEngine.generate(BNEngine.java:86)
at glog.server.bngenerator.BNEngine.generate(BNEngine.java:72)
at glog.server.bngenerator.BNSessionBean.testBNG(BNSessionBean.java:112)
at glog.server.bngenerator.BNSessionServerSideEJBWrapper.testBNG(BNSessionServerSideEJBWrapper.java:334)
at glog.server.bngenerator.BNSessionHome_7sdgcx_EOImpl.testBNG(BNSessionHome_7sdgcx_EOImpl.java:644)
at glog.server.bngenerator.gen.BNSessionSkel.testBNG(BNSessionSkel.java:273)
at glog.server.bngenerator.gen.BNSessionSkel.exec(BNSessionSkel.java:67)
at glog.webserver.wrapper.SkelImpl.execDispatch(SkelImpl.java:15)
at glog.server.wrapper.WrapperSessionBean.execDispatch(WrapperSessionBean.java:73)
at glog.server.wrapper.WrapperSessionServerSideEJBWrapper.execDispatch(WrapperSessionServerSideEJBWrapper.java:48)
at glog.server.wrapper.WrapperSessionHome_a06097_EOImpl.execDispatch(WrapperSessionHome_a06097_EOImpl.java:60)
at glog.server.wrapper.WrapperSessionHome_a06097_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:553)
at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:224)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:443)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:439)
at weblogic.rmi.internal.BasicServerRef.access$300(BasicServerRef.java:61)
at weblogic.rmi.internal.BasicServerRef$BasicExecuteRequest.run(BasicServerRef.java:983)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)


STEPS
-----------------------
The issue can be reproduced at will with the following steps:

1 - Log onto an OTM 6.0 system.

2 - Navigate to: Business Process Automation > Power Data > Business Numbers > Business Number Rules.

3 - Click NEW

4 - Set the following:
ID: As needed.
BN Type: MAWB (or other)
Rule Definition:
{d*:id=1:picture=yy}{c*:parent=seq:context=seq}{nnnnn:id=seq:start=1:end=1}
BN Generator: PICTURE

5 - Click Finished.

6 - View the BN Rule

7 - Click Actions > Test BN Rule.

8 - Enter Shipment ID: 01004

9 - Click Save

10 - Click OK

11 - Repeat until the Letter in the BN reaches 'Y', so the value is '09Y00001'

12 - Test one more time.

13 - Because the C* was used is is expected that the Y moves to Z and then AA, per Online Help in the Alphabetic Instructions section:

"An asterisk after the last "c" indicates that the sequence has no maximum length. For example, {c*} specifies A, B, C,..., AA, AB, AC,..., ZZ, AAA, AAB, etc."

14 - The sequence null for rule is exhausted

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
  Symptoms
  Cause
  Solution

This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.