.UTIL COMPUTE HASH
This subroutine computes the SHA-2 hash value for the given string. APPX 5.4.5 & higher only.
* PASS <hash value returned> FIELD SHARE? Y
* PASS <hash type> FIELD SHARE? N
* PASS <Data to hash> FIELD SHARE? N
* GOSUB --- .UTIL COMPUTE HASH
* Check for errors
* IF --- .UTIL COMPUTE HASH NE
This subroutine computes the SHA-2 hash value for the given string. The first 2 parameters are required and if any required parameters are missing, the subroutine will CANCEL.
<hash value returned> is the computed value returned. This must be passed with Share="Y" to return a value. It should be an alpha field at least 64 or 128 bytes in length, depending on the <hash type> requested (Required).
<hash type> is the type of hash value you want returned (Required):
- B for a 64 byte binary value
- UC for a 128 byte readable value, upper case
- LC for a 128 byte readable value, lower case
<Data to hash> is the string to be hashed (32k max size).
Read what other users have said about this page or add your own comments.
Editorial comment: This API provides a great way to overcome the APPX 256-character key length limitation. If your desired key is a field longer than 256 (such as a server file path or a group of many fields), or if it will be longer than 256 when the primary key is appended, pass the desired key value into this subroutine and use the resulting 128-byte value as your guaranteed unique key.
-- Al Kalter - 2016-11-07