compile function WO_LOG_SRPT1() declare function msg, send_event, dialog_box, utility, Set_Printer, PrintSetup, obj_Install declare subroutine rlist, activate_save_select, or_view $insert rlist_equates $insert msg_equates $insert rpt_cfg_equ $INSERT PRINTSETUP_EQUATES TimeX = Oconv(Time(),'MTS') CrLf = Char(13):Char(10) CurDte = OCONV(Date(),"D4/") ReportID = "WO_LOG001_SRPTCFG" ReportControl = "WO_LOG_SRPT1" TableName = 'WO_LOG' ListsId = ReportControl:'*':@station TtlLin1 = '' TtlLin2 = '' TtlLin3 = '' TtlLin4 = '' TtlLin5 = '' open 'CONFIG' to ConfigTable else Void = msg( '', 'Unable to open CONFIG...' ) return 0 end Read SRptConfig From ConfigTable,ReportID Else Void = msg( '', 'Unable to read ': ReportID:' From CONFIG table!' ) return 0 End Params = dialog_box( ReportControl, @window, '*CENTER' ) if Params = 'CANCEL' or Params = '' then return 0 end convert '*' to @fm in Params Scheduled = Params<1> SpecTypes = Params<2> EntryDateFrom = Params<3> EntryDateThru = Params<4> Void = utility( 'CURSOR', 'H' ) WithStmt = 'SELECT ':TableName:' ' WthSwt = 0 if Scheduled then WithStmt := "WITH SCHEDULED = 'Yes'" TtlLin2 = 'Scheduled Work Orders' WthSwt = 1 end else WithStmt := "WITH SCHEDULED = 'No'" TtlLin2 = 'Not Scheduled Work Orders' WthSwt = 1 end Begin Case Case EntryDateFrom and EntryDateThru WithStmt := " AND WITH ENTRY_DATE FROM '": EntryDateFrom:"' TO '":EntryDateThru: "' " TtlLin3 = 'Entry Dates: From ':EntryDateFrom:' To ':EntryDateThru Case EntryDateFrom WithStmt := " AND WITH ENTRY_DATE GE '":EntryDateFrom:"' " TtlLin3 = 'Entry Dates: From ':EntryDateFrom:' To Latest' Case EntryDateThru WithStmt := " AND WITH ENTRY_DATE LE '":EntryDateThru:"' " TtlLin3 = 'Entry Dates: From Earliest To ':EntryDateThru Case 1 TtlLin3 = 'Entry Dates: ALL' End Case * MUST DO THE INITIAL SELECT AGAINST THE SCHEDULED FIELD CAUSE IT IS INDEXED rlist( WithStmt, target_savelist$, ListsId, '', '' ) activate_save_select( ListsId ) if @reccount else return 0 end WithStmt = 'SELECT ':TableName:' ' WthSwt = 0 If SpecTypes then SpecTypesOut = oconv( SpecTypes, '[SPEC_TYPE_CONV]' ) TtlLin4 = 'Specification Types ':SpecTypesOut swap @vm with ", " in TtlLin4 swap @vm with "' '" in SpecTypes SpecTypes = "'":SpecTypes:"'" WithStmt := ' WITH SPEC_TYPE = ':SpecTypes WthSwt = 1 rlist( WithStmt, target_savelist$, ListsId, '', '' ) activate_save_select( ListsId ) end else TtlLin4 = 'Specification Types ALL' end *OsWrite WithStmt To 'C:\WithStmt.Txt' Script = SRptConfig *SEE SCHED_SRPT1 FOR LIMITS CLAUSE... RptWdt = SRptConfig Title = obj_Install('Get_Prop','CompTitle'):' ':SRptConfig Margin = INT((RptWdt - LEN(Title))/2) LMargin = Margin - 10 ;* 10 equals length of the date RMargin = Margin - 8 ;* 8 equals length of 'Page....' Title = OCONV(Date(),'D4/'):SPACE(LMargin):Title:SPACE(RMargin):"Page'PP''L'" SWAP '~Title~' WITH Title IN Script TitleLine2 = TtlLin2 TitleLine3 = TtlLin3 TitleLine4 = TtlLin4 IF TitleLine2 NE '' THEN Margin = INT((RptWdt - LEN(TitleLine2))/2) LMargin = Margin - 7 ;* 7 equals length of time (12:15PM) RMargin = Margin TitleLine2 = OCONV(Time(),'MTH'):SPACE(LMargin):TitleLine2:SPACE(RMargin) SWAP '~SecondTitleLine~' WITH TitleLine2 IN Script END ELSE SWAP '~SecondTitleLine~' WITH '' IN Script END IF TitleLine3 NE '' THEN Margin = INT((RptWdt - LEN(TitleLine3))/2) SWAP '~ThirdTitleLine~' WITH "'L'":TitleLine3 IN Script END ELSE SWAP '~ThirdTitleLine~' WITH '' IN Script END IF TitleLine4 NE '' THEN Margin = INT((RptWdt - LEN(TitleLine4))/2) SWAP '~FourthTitleLine~' WITH "'L'":TitleLine4 IN Script END ELSE SWAP '~FourthTitleLine~' WITH '' IN Script END *OsWrite Script To "C:\SLIST.txt" * Added after upgrade to OI4.13a to reset default printer in OIPI32 engine. PrintCount = PrintSetup(PRN_GET$,'',Printers,DefaultPrinter) CONVERT ',' TO @FM IN DefaultPrinter DefPrintPath = DefaultPrinter<1>:@FM:DefaultPrinter<3> Void = set_printer( 'INIT', '', '', .63:@fm:.63:@fm:.25:@fm:'', 0,'',DefPrintPath ) Void = Set_Printer('TERM') call slist( Script ) Void = utility( 'CURSOR', 'A' ) RETURN 0