Namespace: OpenEdge.DataAdmin.Util
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


Copyright © 2022 Progress Software Corporation. All rights Reserved.

Progress® OpenEdge® Release 11.7.15