1. Use Groovy in EO attributes
Excellent: Simple and Direct
Missing: disconnected number
- (New Oracle. jbo. server. SequenceImpl ("XXXX_SEQ", adf. object. getDBTransaction (). getSequenceNumber ()
2. assign values to attributes in the create method of the java class corresponding to EO
Excellent: complex Sequence values can be generated.
Missing: disconnected number
- SequenceImpl sequence =
- NewSequenceImpl ("XXX_SEQ", GetDBTransaction ());
- Oracle. jbo. domain. Number seqNum = sequence. getSequenceNumber ();
- String strSeq ='Sih _'+ SeqNum;
- SetStorageInHeaderCode (strSeq );
3. Use the DBSequence type
Create a Trigger on the database to assign values to the table fields. In EO, set the field type to DBSequence.
Excellent: avoid disconnection
Missing: The value displayed on the interface is different from the value saved to the database by the final commit.
- CREATE OR REPLACE TRIGGERASSIGN_SVR_ID
- BEFOREINSERT ONSERVICE_REQUESTSFOREACH ROW
- BEGIN
- IF <strong>: NEW. SVR_IDIS NULL</Strong>OR<Strong>: NEW. SVR_ID <0 </strong>THEN
- SELECTSERVICE_REQUESTS_SEQ.NEXTVAL
- INTO: NEW. SVR_ID
- FROMDUAL;
- ENDIF;
- END;