195 lines
5.7 KiB
Plaintext
195 lines
5.7 KiB
Plaintext
compile function RDS_SRPT1()
|
|
begin condition
|
|
pre:
|
|
post:
|
|
end condition
|
|
declare function getprinterlist, getprofilestring, writeprofilestring, extdevicemode, Set_Printer, Printer_Select
|
|
declare function msg, set_property, send_event, dialog_box, utility, get_property
|
|
declare function set_printer, Get_Status, obj_Install
|
|
declare subroutine rlist, or_view, activate_save_select, yield, Set_Status
|
|
declare subroutine btree.extract, update_index, rlist, end_dialog
|
|
declare subroutine activate_save_select
|
|
declare function msg, key_sort, utility, fieldcount, ex_vm_rem
|
|
|
|
$insert lsl_users_equ
|
|
$insert msg_equates
|
|
$insert rlist_equates
|
|
$INSERT PRINTSETUP_EQUATES
|
|
|
|
* IF THIS CODE IS EVER USED, IT MUST CHANGE THE MSG CALLS WITH MCOL=-2 MROW=-2
|
|
|
|
Params = dialog_box( 'RDS_SRPT1', @window, '*CENTER' )
|
|
|
|
if Params = 'CANCEL' or Params = '' then
|
|
return 0
|
|
end
|
|
|
|
if Params = 'CANCEL' or Params = '' then
|
|
return 0
|
|
end
|
|
open 'SYSLISTS' to SysListsTable else
|
|
Void = msg( '', 'Unable to open SYSLISTS...' )
|
|
return 0
|
|
end
|
|
ListsId = 'REACTOR_LOG_SRPT1*':@station
|
|
write '' on SysListsTable, ListsId else
|
|
Void = msg( '', 'Unable to clear SYSLISTS ':ListsId:'...' )
|
|
return 0
|
|
end
|
|
convert '*' to @fm in Params
|
|
DateInFrom = Params<1> ; *
|
|
DateInThru = Params<2> ; *
|
|
CustIds = Params<3> ; *
|
|
Reactors = Params<4> ; *
|
|
Design = Params<5> ; * GRID OPTION
|
|
|
|
If Len(Design) Then Design:=' '
|
|
*************************************************************
|
|
* NEXT REPORT TRY ONLY USING SLIST
|
|
*************************************************************
|
|
WithStmt = ''
|
|
WithStmt = " WITH DATE_IN FROM '":DateInFrom:"' TO '": DateInThru:"' "
|
|
|
|
if ( Reactors <> '' ) then
|
|
swap @vm with "' '" in Reactors
|
|
Reactors = "'":Reactors:"'"
|
|
WithStmt:=' AND WITH REACTOR = ':Reactors
|
|
end
|
|
|
|
if ( CustIDs <> '' ) then
|
|
swap @vm with "' '" in CustIDs
|
|
CustIDs = "'":CustIDs:"'"
|
|
WithStmt:=' AND WITH CUST_NO = ':CustIDs
|
|
end
|
|
|
|
TblNme = "RDS"
|
|
DatFnt='"Courier New,6" '
|
|
HdrFnt='"Courier New,7,B" '
|
|
TtlFnt='"Courier New,10,B" '
|
|
|
|
RptWdt = 124
|
|
TtlMid = RptWdt/2
|
|
RptDte = OCONV(Date(),"D4/")
|
|
LenDte = Len(RptDte)
|
|
RptTtl = obj_Install('Get_Prop','CompTitle'):" Wafer Process History Report"
|
|
LenTtl = Len(RptTtl)
|
|
RptPgs = "Pg. 'P'"
|
|
LenPgs = Len(RptPgs)
|
|
|
|
TitleLine1 = ''
|
|
TitleLine2 = ''
|
|
TitleLine3 = ''
|
|
|
|
TtlBeg = TtlMid - (LenTtl/2)
|
|
TtlSpc = TtlBeg - LenDte
|
|
TitleLine1 := '"':RptDte:Space(TtlSpc):RptTtl
|
|
|
|
TtlEnd = TtlMid - (LenTtl/2)
|
|
TtlSpc = TtlEnd - LenPgs
|
|
TitleLine1 := Space(TtlSpc):RptPgs:"'L'"
|
|
|
|
If Reactors <> '' then
|
|
TReactors = Reactors
|
|
swap "'" with '' in TReactors
|
|
Swap " " With ", " In TReactors
|
|
If Len(TReactors) > 3 Then
|
|
TReactors[-4,4]= " & ":TReactors[-2,2]
|
|
RptTtl = "Reactors ":TReactors
|
|
End Else
|
|
RptTtl = "Reactor ":TReactors
|
|
End
|
|
LenTtl = Len(RptTtl)
|
|
TtlSpc = Space(TtlMid-(LenTtl/2))
|
|
TitleLine2 = TtlSpc:RptTtl:"'L'"
|
|
end else
|
|
TitleLine2 = ''
|
|
end
|
|
|
|
RptTtl= "Dates: ":DateInFrom:" Through ": DateInThru
|
|
LenTtl = Len(RptTtl)
|
|
TtlSpc = Space(TtlMid-(LenTtl/2))
|
|
TitleLine3 = TtlSpc:RptTtl:'" '
|
|
|
|
Feed = "'L'"
|
|
|
|
WithStmt = 'SELECT RDS BY REACTOR BY DATE_IN BY TIME_IN ':WithStmt
|
|
|
|
Void = utility( 'CURSOR', 'H' )
|
|
|
|
rlist( WithStmt, target_savelist$, ListsId, '', '' )
|
|
|
|
activate_save_select( ListsId )
|
|
|
|
Stmt = ''
|
|
BreakOnVar = '"':"'V'":'" '
|
|
|
|
*Set up fields to print on report, one field per line.
|
|
Fld01 = 'ABBREV_OR_CO_NAME COLHEAD "':Feed:'Customer" JUSTLEN "T20" COLFONT ':DatFnt
|
|
Fld02 = 'BREAK-ON REACTOR ':BreakOnVar:'COLHEAD "':Feed:'R#" JUSTLEN "C4" COLFONT ':DatFnt
|
|
Fld03 = 'PART_NUM COLHEAD "':Feed:'Part No." JUSTLEN 20 COLFONT ':DatFnt
|
|
Fld04 = 'WO COLHEAD "':Feed:'WO" JUSTLEN C7 COLFONT ':DatFnt
|
|
Fld05 = 'SEQ COLHEAD "':Feed:'RDS#" JUSTLEN 8 COLFONT ':DatFnt
|
|
Fld06 = 'RUN_ORDER_NUM COLHEAD "':Feed:'RO#" JUSTLEN C4 COLFONT ':DatFnt
|
|
Fld07 = 'TOTAL WAFERS_IN COLHEAD "Wafers':Feed:'In" JUSTLEN 8 COLFONT ':DatFnt
|
|
Fld08 = 'TOTAL WFRS_OUT COLHEAD "Wafers':Feed:'Out" JUSTLEN 8 COLFONT ':DatFnt
|
|
Fld09 = 'TOTAL TOT_REJ COLHEAD "':Feed:'Rejects" JUSTLEN "R9" COLFONT ':DatFnt
|
|
Fld10 = 'DATE_IN COLHEAD "Date':Feed:'In" JUSTLEN C8 COLFONT ':DatFnt
|
|
Fld11 = 'TIME_IN COLHEAD "Time':Feed:'In" JUSTLEN C8 COLFONT ':DatFnt
|
|
Fld12 = 'DATE_OUT COLHEAD "Date':Feed:'Out" JUSTLEN C8 COLFONT ':DatFnt
|
|
Fld13 = 'TIME_OUT COLHEAD "Time':Feed:'Out" JUSTLEN C8 COLFONT ':DatFnt
|
|
Fld14 = 'TOTAL HRS_LOAD_TO_UNLOAD COLHEAD "Elapsed':Feed:'Hours" JUSTLEN R9 COLFONT ':DatFnt
|
|
Fld15 = 'HOURS_PER_CASSETTE COLHEAD "Hours':Feed:'Cassette" JUSTLEN R10 COLFONT ':DatFnt
|
|
Fld16 = 'TOTAL PRICE_CASSETTE COLHEAD "Price Per':Feed:'Cassette" JUSTLEN 12 COLFONT ':DatFnt
|
|
Fld17 = 'STATUS COLHEAD "':Feed:'Status" JUSTLEN "T12" COLFONT ':DatFnt
|
|
|
|
Stmt:= "LIST ":TblNme:" "
|
|
Stmt:= Fld01
|
|
Stmt:= Fld02
|
|
Stmt:= Fld03
|
|
Stmt:= Fld04
|
|
Stmt:= Fld05
|
|
Stmt:= Fld06
|
|
Stmt:= Fld07
|
|
Stmt:= Fld08
|
|
Stmt:= Fld09
|
|
Stmt:= Fld10
|
|
Stmt:= Fld11
|
|
Stmt:= Fld12
|
|
Stmt:= Fld13
|
|
Stmt:= Fld14
|
|
Stmt:= Fld15
|
|
Stmt:= Fld16
|
|
Stmt:= Fld17
|
|
|
|
Hdng = ""
|
|
Hdng:= 'HEADING '
|
|
Hdng:= TitleLine1
|
|
Hdng:= TitleLine2
|
|
Hdng:= TitleLine3
|
|
Hdng:= 'HDRFONT ':TtlFnt
|
|
Hdng:= 'COLHDRFONT ':HdrFnt
|
|
Hdng:= ' ID-SUPP KEEP-TOGETHER BOX ':Design:'LANDSCAPE'
|
|
|
|
Stmt:= Hdng
|
|
|
|
* Added after upgrade to OI4.13a to reset default printer in OIPI32 engine.
|
|
|
|
PrintPath = Printer_Select('',1) ;* Select Default printer
|
|
|
|
Void = set_printer( 'INIT', '', '', .63:@fm:.63:@fm:.25:@fm:'', 0,'',PrintPath )
|
|
Void = Set_Printer('TERM')
|
|
|
|
Set_Status(0)
|
|
call slist( Stmt )
|
|
|
|
IF Get_Status(errCode) THEN DEBUG
|
|
|
|
|
|
|
|
Void = utility( 'CURSOR', 'A' )
|
|
write '' on SysListsTable, ListsId else
|
|
Void = msg( '', 'Unable to clear SYSLISTS ':ListsId:'...' )
|
|
return 0
|
|
end
|
|
return 0
|