Hi,
I have no real experience with Adobe forms..., but:
1) is there any particular reason you are using ls_FORMOUTPUT-xml and not the ls_FORMOUTPUT-pdf? Is it not filled as well?
2) if you must use the SCMS_XSTRING_TO_BINARY..., do import OUTPUT_LENGTH = lv_pdf_size from it...
What happens is: unless the length of pdf xstring is a multiple of internal table line length, the last line of internal table will get padded with x'00' during conversion. Whoever then uses this internal table (cl_document_bcs->add_attachment( ) for example) has to know (where) to cut off those hex nulls when the content gets converted to "end format". For cl_document_bcs->add_attachment( ) the only sure way to "instruct" the code to cut away hex nulls is to pass correct length.
It's somewhat exasperating seeing how many people have problems when SCMS_* stuff is involved. If I were in charge I'd either forbid the use of SCMS_* (to try to force people to think what they are doing ) or wrap the cl_document_bcs functionality behind foolproof interface and then forbid its direct use...
cheers
Jānis