STORE ' ' TO I::SEL , FIELDS STORE 'A' TO I::FLD STORE 'ENTER SELECTION CRITERIA' TO MS::GG STORE ' TO LIST ALL' TO MS::G STORE ' ' TO X::PRS DO WHILE X::PRS = I::SEL .OR. X::PRS = I::FLD @ 14,0 @ 15,0 @ 14,0 SAY MS::GG + ', OR ' + MS::G ACCEPT TO A::ED STORE !(A::ED) TO A::ED IF A::ED = ' ' .AND. LEN(A::ED) = 1 .AND. X::PRS = ' ' STORE 'A' TO X::PRS STORE 'LIST OFF ' TO L::STR ELSE IF A::ED = ' ' .AND. LEN(A::ED) = 1 STORE 'X' TO X::PRS ELSE IF 0 = TEST(&A::ED) .AND. A::ED <> ' ' @ 15,0 @ 14,0 @ 14,0 SAY A::ED + ' IS INVALID ENTRY -- TRY AGAIN !' STORE ' ' TO A::ED DO SWAIT LOOP ELSE IF ($(A::ED,1,1) = "'" .OR. $(A::ED,1,1) = '"') .AND. X::PRS <> 'A' STORE @('=',A::ED) TO I::HR IF I::HR > 0 STORE I::HR + 1 TO I::2ND STORE I::HR - 1 TO I::1ST STORE LEN(A::ED) - I::HR TO I::2END STORE $(A::ED,1,I::1ST) + '$' + $(A::ED,I::2ND,I::2END) TO A::ED ENDIF ENDIF IF X::PRS <> 'A' STORE 'LIST OFF FOR ' + A::ED + ' ' TO L::STR STORE 'A' TO X::PRS ELSE STORE FIELDS + A::ED + ', ' TO FIELDS ENDIF ENDIF ENDIF ENDIF STORE 'ENTER FIELD NAME ' TO MS::GG STORE ' TO END FIELD SELECTION' TO MS::G ENDDO STORE ' ' TO PRT:: @ 20,0 SAY 'DO YOU WANT HARDCOPY ? ' GET PRT:: READ ERASE IF PRT:: = 'Y' SET CONSOLE OFF SET PRINT ON &L::STR &FIELDS SET CONSOLE ON SET PRINT OFF ELSE &L::STR &FIELDS ENDIF ? ' ' ? ' ' RELEASE I::SEL , FIELDS , MS::GG, MS::G , X::PRS, A::ED, I:WAIT, L::STR RELEASE I::FLD , I::HR ,I::2ND, I::1ST, I::2END RETURN