Namespace: OpenEdge.DataAdmin.Util
Type: Class RowidGenerator
Parent Classes:
Inherits: Progress.Lang.Object





Method Summary
  Options Name Purpose
  CHARACTER ConvertToHex (int64, integer) /* Convert the given integer value to a 4 character hex string. Return the Hex string. */
  ROWID GetNextRowid () /* Return next ROWID, or ? if we've exceeded the max ROWID */
  LOGICAL IncrementDigit (character, integer) /* This increments the strDigit at the digitIx position (updating the currRowid string) and does a carry if necessary by recursing into here. Returns: FALSE if we've exceeded the biggest possible # This should never happen if we're fed a valid maxId value. TRUE otherwise */
  TableStart (character, int64, int64, integer) /* Call this once for each table you want to run through. Then call GetNextRowid repeatedly until it returns ?. startId: The smallest Rowid to start at. If ?, this will start at 1. maxId: Max rowid that will be returned (within one partition if partitioned) partitionId: If the table is not partitioned, it doesn't matter what partitionId is. ?: If table is partitioned, this will scan all partitions for this table. A specific partition Id: only scan this partition. */

Constructor Summary
  Options Name Purpose
  RowidGenerator () /* Initialize the powersOf16 array */

Method Detail
Top

CHARACTER ConvertToHex (int64, integer)

/* Convert the given integer value to a 4 character hex string.
Return the Hex string.
Parameters:
intVal INT64
 
numDigits INTEGER
 
Returns CHARACTER
 
Top

ROWID GetNextRowid ()

/* Return next ROWID, or ? if we've exceeded the max ROWID
Returns ROWID
 
Top

LOGICAL IncrementDigit (character, integer)

/* This increments the strDigit at the digitIx position
(updating the currRowid string) and does a carry if necessary
by recursing into here.
Returns: FALSE if we've exceeded the biggest possible #
This should never happen if we're fed a valid
maxId value.
TRUE otherwise
Parameters:
hexString CHARACTER
 
digitIx INTEGER
 
Returns LOGICAL
 
Top

TableStart (character, int64, int64, integer)

/* Call this once for each table you want to run through.
Then call GetNextRowid repeatedly until it returns ?.
startId: The smallest Rowid to start at. If ?, this will start
at 1.
maxId: Max rowid that will be returned
(within one partition if partitioned)
partitionId:
If the table is not partitioned, it doesn't matter what
partitionId is.
?: If table is partitioned, this will scan all partitions
for this table.
A specific partition Id: only scan this partition.
Parameters:
tableName CHARACTER
 
startId INT64
 
maxId INT64
 
partitionId INTEGER
 


Constructor Detail
Top

STATIC RowidGenerator ()

/* Initialize the powersOf16 array