124 lines
2.6 KiB
Plaintext
124 lines
2.6 KiB
Plaintext
COMPILE SUBROUTINE Export_OEE( Dummy )
|
|
|
|
DECLARE FUNCTION Msg, Dialog_Box, Utility, Environment_Services
|
|
DECLARE FUNCTION Set_Printer, Get_Printer, obj_Install, obj_OEE
|
|
|
|
DECLARE SUBROUTINE Btree.Extract, RList, END_Dialog, Make.List, Msg, ErrMsg
|
|
|
|
$INSERT LSL_USERS_EQU
|
|
$INSERT MSG_EQUATES
|
|
$INSERT RLIST_EQUATES
|
|
$INSERT OIPRINT_EQUATES
|
|
|
|
|
|
CRLF$ = \0D0A\
|
|
|
|
Parms = Dialog_Box( 'REACTOR_UTIL_SRPT2', @WINDOW, '*CENTER' )
|
|
|
|
IF Parms = 'CANCEL' OR Parms = '' THEN
|
|
RETURN
|
|
END
|
|
|
|
|
|
CONVERT '*' TO @FM IN Parms
|
|
|
|
|
|
RepStartDt = Parms<1>
|
|
RepEndDt = Parms<2>
|
|
Reactors = ''
|
|
|
|
Results = obj_OEE('ReactorDetail',RepStartDt:@RM:RepEndDt:@RM:Reactors) ;* This uses STATUS_LINE control to report progress
|
|
|
|
|
|
|
|
|
|
* FileName = "C:\OIReport\UtilRpt.csv"
|
|
FileName = Environment_Services('GetReportsRootPath') : "\UtilRpt.csv"
|
|
OsByte = 0
|
|
|
|
OpenFile:
|
|
|
|
OSDelete FileName
|
|
OSOpen FileName TO OsFile ELSE
|
|
OSWrite "" TO FileName
|
|
IF Status() THEN
|
|
GoSub ReportStatus
|
|
Msg( '', StatusMsg )
|
|
RETURN
|
|
END
|
|
|
|
OSOpen FileName TO OSFile ELSE
|
|
GoSub ReportStatus
|
|
Msg( '', StatusMsg )
|
|
RETURN
|
|
END
|
|
END
|
|
|
|
|
|
TitleLine1 = ''
|
|
TitleLine2 = ''
|
|
TitleLine3 = ''
|
|
|
|
RptDt = OCONV(Date(),"D4/")
|
|
|
|
RptTitle = obj_Install('Get_Prop','CompTitle'):" Reactors Utilization Report"
|
|
|
|
TitleLine1 = RptDt:' ':RptTitle
|
|
|
|
IF Reactors NE '' THEN
|
|
HeadReactors = 'Reactors ':Reactors
|
|
SWAP @VM WITH ', ' IN HeadReactors
|
|
|
|
IF INDEX(HeadReactors,', ',1) THEN
|
|
HeadReactors[-4,2] = ' & '
|
|
END
|
|
TitleLine2 = HeadReactors
|
|
END Else
|
|
TitleLine2 = 'All Reactors'
|
|
END
|
|
|
|
TitleLine3 = "Dates: ":RepStartDt:" Through ": RepEndDt
|
|
|
|
RptTtl = TitleLine1:CRLF$:TitleLine2:CRLF$:TitleLine3:CRLF$
|
|
|
|
OSBWrite RptTtl TO OSFile AT OSByte
|
|
OSByte += LEN(RptTtl)
|
|
|
|
|
|
CONVERT @VM TO ',' IN Results
|
|
SWAP @FM WITH CRLF$ IN Results
|
|
|
|
OSBWrite Results TO OSFile AT OSByte
|
|
OSByte += Len(Results)
|
|
|
|
|
|
OSClose OSFile
|
|
|
|
Void = utility( 'CURSOR', 'A' )
|
|
|
|
Msg( '', 'Report Written > ':FileName )
|
|
|
|
RETURN
|
|
|
|
*========================
|
|
ReportStatus:
|
|
*========================
|
|
Begin Case
|
|
Case Status() = 1
|
|
StatusMsg = "Bad OS filename"
|
|
Case Status() = 2
|
|
StatusMsg = "Access Denied - File probably locked by another process."
|
|
Case Status() = 3
|
|
StatusMsg = "Disk or Directory Full"
|
|
Case Status() = 4
|
|
StatusMsg = "What ???"
|
|
Case Status() = 5
|
|
StatusMsg = "OS Error not defined elsewhere."
|
|
Case Status() = 6
|
|
StatusMsg = "OS File is Read Only."
|
|
Case 1
|
|
StatusMsg = "BAD STATUS"
|
|
END Case
|
|
|
|
Return
|