173 lines
		
	
	
		
			4.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			173 lines
		
	
	
		
			4.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| compile function SCHED_SRPT1() 
 | |
| declare function msg, set_property, send_event, dialog_box, utility, get_property, PrintSetup, Set_Printer
 | |
| declare function set_printer, obj_Install
 | |
| declare subroutine rlist, or_view, activate_save_select, yield
 | |
| declare subroutine order_srpt1
 | |
| $insert rlist_equates
 | |
| $insert msg_equates
 | |
| $insert oiprint_equates
 | |
| $insert rpt_cfg_equ
 | |
| $INSERT PRINTSETUP_EQUATES
 | |
| 
 | |
| TimeX = Oconv(Time(),'MTS')
 | |
| 
 | |
| CrLf = Char(13):Char(10) 
 | |
| CurDte = OCONV(Date(),"D4/")
 | |
| 
 | |
| ReportID = "SCHED001_SRPTCFG"
 | |
| ReportControl = "SCHED_SRPT1"
 | |
| TableName = 'SCHEDULE'
 | |
| 
 | |
| 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
 | |
| open 'SYSLISTS' to SysListsTable else
 | |
|    Void = msg( '', 'Unable to open SYSLISTS...' )
 | |
|    return 0
 | |
| end
 | |
| ListsId = ReportControl:'*':@station
 | |
| write '' on SysListsTable, ListsId else
 | |
|    Void = msg( '', 'Unable to clear SYSLISTS ':ListsId:'...' )
 | |
|    return 0
 | |
| end
 | |
| convert '*' to @fm in Params
 | |
| BillDateFrom = Params<1>
 | |
| BillDateThru = Params<2>
 | |
| Custs        = Params<3>
 | |
| Plant        = Params<4>
 | |
| 
 | |
| Void = utility( 'CURSOR', 'H' )
 | |
| 
 | |
| WithStmt = 'SELECT ':TableName:' '
 | |
| WthSwt = 0
 | |
| ShipDateLimit = ''
 | |
| Begin Case
 | |
|    Case BillDateFrom and BillDateThru
 | |
|       TtlLin2 = 'Ship Dates: From ':BillDateFrom:' To ':BillDateThru
 | |
|       WithStmt :=  " WITH SHIP_DATE FROM '": BillDateFrom:"' TO '":BillDateThru: "' "
 | |
|       ShipDateLimit = 'LIMIT SHIP_DATE FROM "':BillDateFrom:'" TO "':BillDateThru:'" '
 | |
|       WthSwt = 1
 | |
|    Case BillDateFrom
 | |
|       TtlLin2 = 'Ship Dates: From ':BillDateFrom:' To Latest'
 | |
|       WithStmt := " WITH SHIP_DATE GE '":BillDateFrom:"' "
 | |
|       ShipDateLimit = 'LIMIT SHIP_DATE FROM "':BillDateFrom:'" TO "':CurDte:'" '
 | |
|       WthSwt = 1
 | |
|    Case BillDateThru
 | |
|       TtlLin2 = 'Ship Dates: From Earliest To ':BillDateThru
 | |
|       WithStmt := " WITH SHIP_DATE LE '":BillDateThru:"' "
 | |
|       ShipDateLimit = 'LIMIT SHIP_DATE <= "':CurDte:'" '
 | |
|       WthSwt = 1
 | |
|    Case 1
 | |
|       TtlLin2 = 'Ship Dates: ALL'
 | |
| End Case
 | |
| 
 | |
| If Custs then
 | |
|    CustCnt = Count(@vm,Custs)
 | |
|    If CustCnt > 20 Then 
 | |
|       TtlLin3 = 'Customers: More Than 20 Selected'
 | |
|    End Else
 | |
|       TtlLin3 = Custs
 | |
|       swap @vm with ", " in TtlLin3
 | |
|       TtlLin3 = 'Customers: ':TtlLin3
 | |
|    End      
 | |
|    swap @vm with "' '" in Custs
 | |
|    Custs = "'":Custs:"'"
 | |
|    If WthSwt Then WithStmt := ' AND '
 | |
|    WithStmt := ' WITH CUST_NO = ':Custs
 | |
|    WthSwt = 1
 | |
| end else
 | |
|    TtlLin3 = 'Customers: ALL'
 | |
| end
 | |
| 
 | |
| begin case
 | |
|   case Plant = 'All'
 | |
|     TtlLin4 = 'Plants: ALL'
 | |
|   case Plant = 'Tempe'
 | |
|     If WthSwt Then WithStmt := 'AND ' 
 | |
|     WithStmt := 'WITH WO < 100000 '
 | |
|     TtlLin4 = 'Plants: Tempe'
 | |
|     WthSwt = 1
 | |
|   case Plant = 'Mesa'
 | |
|     If WthSwt Then WithStmt := 'AND ' 
 | |
|     WithStmt := 'WITH WO > 100000 '  
 | |
|     TtlLin4 = 'Plants: Mesa'
 | |
|     WthSwt = 1
 | |
| end case
 | |
| 
 | |
| rlist( WithStmt, target_savelist$, ListsId, '', '' )
 | |
| activate_save_select( ListsId )
 | |
| 
 | |
| Script = SRptConfig<SlistScript$>
 | |
| 
 | |
| Swap "~Limit2~" With ShipDateLimit In Script
 | |
| 
 | |
| RptWdt = SRptConfig<Width$>
 | |
| 
 | |
| Title	= obj_Install('Get_Prop','Company'):' ':SRptConfig<Title$>
 | |
| 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
 | |
| 
 | |
| 
 | |
| * 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' )
 | |
| 
 | |
| write '' on SysListsTable, ListsId else
 | |
|     Void = msg( '', 'Unable to clear SYSLISTS ':ListsId:'...' )
 | |
|     return 0
 | |
| end
 | |
| 
 | |
| RETURN 0
 |