Trailing blanks are mostly inevitable in IDVARVAL and QSGRPID as it cannot be expected that all values for QSGRPID have the same length (e.g. GRP1, GRP10, GRP101). There is no rule that these all need to have the same length.
In order to find out whether there are any other “non-visible” characters (whatever that is), you could transform to Dataset-XML format or to CSV and then inspect the records using a Dataset-XML viewer, or for CSV, using NotePad++. When using the (free) “Dataset-XML viewer” you can also use the functionality to quicky switch/toggle between parent and suppqual record in order to see whether the problem also occurs there. If the same problem reproduces there, you indeed have a problem with the data, but at least you will be able to see what the problem is.
It can however also be something else of course.
I am getting an error “Invalid referenced record” for SUPPQS domain. However all SUPPQS observation have valid reference record in QS domain. The explanation for SD0077 states-
“Reference record defined by Related Domain Abbreviation (RDOMAIN), Unique Subject Identifier (USUBJID), Identifying Variable (IDVAR) and Identifying Variable Value (IDVARVAL) must exist in the target Domain.”
Additional Info: IDVAR is not QSSEQ, but it is “QSGRPID”. Does this have any effect for the above issue?.
I rechecked and confirmed that for every subject , that valid a reference record in QS.