DEDB Unload/Reload RAP number to RAP RBA conversion

This topic explains the RAP number to RAP RBA conversion for the FPA Unload, Reload, and Change functions, and the FPB DEDB Unload and Reload utilities.

This topic contains product sensitive programming interface information.

Begin product-sensitive programming interface information.

This topic gives the details for the RAP number to RAP RBA conversion. This RAP number to RAP RBA conversion is a product-sensitive programming interface for the customer. The IMS interface defined for DEDB randomizing routines specifies, upon return from the randomizer, that:

  • Register 1 will contain the address of the DMAC for the area selected.
  • Register 0 will contain the "relative RAP number" within that area to which the root segment is assigned.

The formula to convert that "relative RAP number" to the RBA of that RAP is as follows:

  RAP RBA = CIsize * [ INT( RAP# / (UOW1 - UOW2) ) * UOW1 
 
            + REM( RAP# / (UOW1 - UOW2) ) + 2 ]

     where:

     RAP#     = Relative RAP number (from randomizer) 
 
     UOW1     = UOW part 1 
 
     UOW2     = UOW part 2 
 
     INT(x/y) = Integer value of the quotient from the
                division of 'x' by 'y' 
 
     REM(x/y) = Remainder from the division of 'x' by 'y'
Note: This randomizer is invoked with the key value of the root segment for a database record. The RAP RBA value from that call should be saved for use by the records of the FPA Unload, Reload, and Change functions, and the FPB DEDB Unload and Reload utilities for all dependent segments of that root.

End product-sensitive programming interface information.