>MyCopy(AliasHere,"c:\test\FooWithoutMemo" ,0) >MyCopy(AliasHere,"c:\test\FooWithConvertedMemo",1) > > >*** This is only EXAMPLE, you should add error handling here >FUNCTION MyCopy(lcAlais, lcTargetFile, lnTypeOfMemo) > LOCAL lcCurrentAlias, laFields[1], lnFields > LOCAL lnFor, lcSelect > lcCurrentAlias = ALIAS() > lnFields = AFIELDS(laFields, m.lcAlias) > lcSelect = "SELECT " > > FOR lnFor = 1 TO lnFields > IF laFields[m.lnFor,2] == "M" && Memo > IF m.lnTypeOfMemo == 1 > lcSelect = lcSelect + [CAST(]+laFields[m.lnFor,1]+[ AS C(255)) AS ]+laFields[m.lnFor,1]+[, ] > ENDIF > ELSE > lcSelect = lcSelect + laFields[m.lnFor,1]+[, ] > ENDIF > NEXT > lcSelect = LEFT(lcSelect,LEN(lcSelect)-2)+" FROM "+m.lcAlias+[ INTO CURSOR crsForCopy" > &lcSelect > COPY TO (lcTargetFile) > USE IN SELECT("crsForCopy") > IF NOT EMPTY(lcCurrentAlias) > SELECT (lcCurrentAlias) > ENDIF >RETURN >>