I forgot all about my post to this forum until there were 2 posts yesterday.
Anyways after being frustrated with HP support, I went on a hunch and resolved my stated problem. I suggest trying the following in your development environment and on one to a few attachments before running a SQL statement that will update all your attachment files...MAKE SURE YOU HAVE A BACKUP AND PROCEED AT YOUR OWN RISK
When migrating from QC9.2 to ALM11, all of our attachments in the QC9.2 environment that used a network drive (ex. D:, F:, etc.) would throw an error of illegal character after the upgrade in ALM11.
What I did was go to the project's CROS_REF table in SiteAdmin and did a query where <drive letter> is a network drive share letter:
SELECT * FROM CROS_REF where cr_reference like 'file:///drive letter>|%' and cr_entity like 'test'
Ex: SELECT * FROM CROS_REF where cr_reference like 'file:///D|%' and cr_entity like 'test'
I wanted to try it on a Test because you can easily use the Go To Test search within ALM using the cr_key_1 value.
Once I had a few cr_key_1s to test against, I did an update/replace statement to change from network drive letter to UNC path (//server/share) for specific cr_key_1 where # below is a test from the previous query
update cros_ref set cr_reference = replace (cr_reference, 'file:///drive letter>|', 'file://server>/<share>') where cr_key_1 = #
Ex: update cros_ref set cr_reference = replace (cr_reference, 'file:///D|', 'file://OfficeServer/OfficeShare') where cr_key_1 = 15132
After you've updated, go to the test and validate if you are able to open the attachment.
Notes:
1) Something you may need to consider, from memory, the CROS_REF table is set to 255 char, but being that the UNC path is going to extend the name, you might have to increase the table length where # below is a number (275, 300, etc.).
ALTER TABLE CROS_REF ALTER COLUMN CR_REFERENCE varchar(#)
Ex: ALTER TABLE CROS_REF ALTER COLUMN CR_REFERENCE varchar(300)
2) If there are references to multiple drive letters, you will need to run the 1st two statements above for each drive letter.
Hope the above helps...