Construct a character representation of a CAT data type CAT_TYFMT
CAT data types are represented using an integer code (here argument DTYPE) with a further integer variable (here argument CSIZE) giving the size of character strings. A character representation of the data type is constructed from these integer numbers. This character string representation is (deliberately) identical to that used by HDS.
The constructed value is appended to the input string, starting at element POSN1 of the input string (using the input value for POSN). On output POSN is set to the new length of the string (cf. the CHR routines).
If an illegal CAT data type is input, the assembled string contains an error text, but an error status is deliberately not raised. This behaviour is adopted because CAT_TYFMT is just formatting a character string and an invalid data type is not really an error for it.