PROCEDURE printrec PRIVATE solderror,wizfname,saverec,savearea,tmpcurs,tmpstr PRIVATE prnt_btn,p_recs,p_output,pr_out,pr_record STORE 1 TO p_recs,p_output STORE 0 TO prnt_btn STORE RECNO() TO saverec m.solderror=ON('error') DO pdialog IF m.prnt_btn = 2 RETURN ENDIF IF !FILE(ALIAS()+'.FRX') m.wizfname=SYS(2004)+'WIZARDS\'+'WIZARD.APP' IF !FILE(m.wizfname) ON ERROR * m.wizfname=LOCFILE('WIZARD.APP','APP',C_LOCWIZ) ON ERROR &solderror IF !'WIZARD.APP'$UPPER(m.wizfname) WAIT WINDOW C_NOWIZ RETURN ENDIF ENDIF WAIT WINDOW C_MAKEREPO NOWAIT m.savearea=SELECT() m.tmpcurs='_'+LEFT(SYS(3),7) CREATE CURSOR (m.tmpcurs) (comment m) m.tmpstr = '* LAYOUT = COLUMNAR'+CHR(13)+CHR(10) INSERT INTO (m.tmpcurs) VALUES(m.tmpstr) SELECT (m.savearea) DO (m.wizfname) WITH '','WZ_QREPO','NOSCRN/CREATE',ALIAS(),m.tmpcurs USE IN (m.tmpcurs) WAIT CLEAR IF !FILE(ALIAS()+'.FRX') &&wizard could not create report WAIT WINDOW C_NOREPO RETURN ENDIF ENDIF m.pr_out=IIF(m.p_output=1,'TO PRINT NOCONSOLE','PREVIEW') m.pr_record=IIF(m.p_recs=1,'NEXT 1','ALL') REPORT FORM (ALIAS()) &pr_out &pr_record GO m.saverec RETURN PROCEDURE pdialog DEFINE WINDOW _qjn12zbvh ; FROM INT((SROW()-12)/2),INT((SCOL()-52)/2) ; TO INT((SROW()-12)/2)+12,INT((SCOL()-52)/2)+51 ; FLOAT NOCLOSE NOMINIMIZE SHADOW ; COLOR SCHEME 5 TITLE WTITLE() MOVE WINDOW _qjn12zbvh CENTER ACTIVATE WINDOW _qjn12zbvh NOSHOW @ 2,5 SAY "Print:" @ 2,34 SAY "Output:" @ 4,5 GET m.p_recs ; PICTURE "@*RVN \<Current Record;\<All Records" ; DEFAULT 1 @ 4,34 GET m.p_output ; PICTURE "@*RVN \<Printer;Pre\<view" ; DEFAULT 1 @ 10,13 GET m.prnt_btn ; PICTURE "@*HT P\!\<rint;Ca\?\<ncel" ; SIZE 1,10,4 ; DEFAULT 1 ACTIVATE WINDOW _qjn12zbvh READ CYCLE MODAL RELEASE WINDOW _qjn12zbvh RETURNIs there a visual report wizard?? and if so can you select what fields to output cause my table has about 50 fields