Depending on what you mean by for reporting, you can certainly extract them.
If you just want to display them as separate entities vertically, you can just use something akin to the following:
Replace ({MyTable.MyParts}, ",", chr(13))
If you have to do some checking against them, you'll likely want an array, or to do leverage the sort of individual parsing the following array construction does:
whileprintingrecords;
Stringvar MyParts := {MyTable.MyParts};
Global Stringvar array MyPartsArray;
For x = 1 to 15 do // maximum number of commas
(
if InStr(MyParts, ","

> 0 then
MyPartsArray[X] := left({MyTable.MyParts},InStr(MyParts, ","

-1);
MyParts := mid({MyTable.MyParts},InStr(MyParts, ","

+1,30)
else
x = 16
);
(I didn't test the syntax and I'm tired, but this sample get you close).
-k
kai@informeddatadecisions.com