|
> I need some help. I have to find a way to squeeze as many unique identifiers > as I can into two positions. I also need it to increment easily. I've > considered converting to hex, but it just doesn't provide enough identifiers > within two positions. Is there a way to use a different base and simply > add 1 to get the next ID? How do I count from 00 to ZZ? Here's most of it. You'll have to take care of your own initializing and looping, but the basic parts are here. (This is good for 1296 combinations, as opposed to your 100 and 256 for decimal and hex. Suitable changes to the constant and the IfGT value can make this good for an almost arbitrary number of identifiers.) DKeySq1 S 2P 0 DKeySq2 S 2P 0 DKeySq1AL S 1 DKeySq2AL S 1 DKeySqAL S 2 DSEQVAL C 'ABCDEFGHIJKLMNOPQRSTUVWXYZ- D 0123456789' * C Add 1 KeySq2 C KeySq2 IfGT 35 C Move 00 KeySq2 C Add 1 KeySq1 C EndIf * C Move CurDat CurDatAL C Move CurTim CurTimAL C Eval KeySq1AL = %SubSt(SEQVAL:(KeySq1+1):1) C Eval KeySq2AL = %SubSt(SEQVAL:(KeySq2+1):1) C MoveL(P) KeySq1AL KeySqAL C Move KeySq2AL KeySqAL Peter H. Coffin phcoffin@us.ibm.com +--- | This is the Midrange System Mailing List! | To submit a new message, send your mail to "MIDRANGE-L@midrange.com". | To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.