%@ LANGUAGE="VBScript" %> <% start_time = Time Server.ScriptTimeOut=600 Set Connection = Server.CreateObject("ADODB.Connection") Connection.Mode = adModeRead Connection.Open phdb_rd Sensorsubquery1="(select batch, sensor, MAX(logdate) from sitester.sensor_log where measurement_type='Sensor_data' group by batch, sensor)" Sensorquery="select * from sitester.sensor_log sl, sitester.sensor_properties sp, sitester.batch_info bi where logdate=entrydate and sl.batch=bi.batch and bi.status>0 and (sl.batch,sl.sensor,logdate) in "+Sensorsubquery1+" order by sensor_type, sl.batch, sl.sensor" Set Sensor_data = Connection.Execute(Sensorquery) Acceptancesubquery2="(select distinct batch, sensor from sitester.sensor_log where measurement_type='Sensor_data')" Acceptancesubquery1="(select batch,sensor,MAX(logdate) from sitester.sensor_log where (batch,sensor) in "+Acceptancesubquery2+" and (measurement_type like 'Accepted%' or measurement_type like 'Reject%') group by batch,sensor)" Acceptancequery="select * from sitester.sensor_log sl, sitester.batch_info bi, sitester.sensor_measurement_list sml where sl.batch=bi.batch and bi.status>0 and (sl.batch,sl.sensor,sl.logdate) in "+Acceptancesubquery1+" and sl.measurement_type=sml.measurement_type order by sensor_type, sl.batch, sl.sensor" Set Acceptance_data = Connection.Execute(Acceptancequery) Thicknesssubquery1="(select batch, sensor, MAX(logdate) from sitester.sensor_log where measurement_type='Sensor_data' group by batch, sensor)" Thicknessquery="select sensor_type, sl.batch, sl.sensor, thickness from sitester.sensor_log sl, sitester.sensor_thickness st, sitester.batch_info bi where sl.batch=bi.batch and st.batch(+)=sl.batch and st.sensor(+)=sl.sensor and (sl.batch,sl.sensor,logdate) in "+Thicknesssubquery1+" order by sensor_type, sl.batch, sl.sensor" Set Sensor_thickness = Connection.Execute(Thicknessquery) %> <% Dim sensor_type() Dim batch() Dim sensor() Dim Ib_voper() Dim Ig_voper() Dim PlateauLV() Dim PlateauUV() Dim Vfd() Dim Voper() Dim LT_current() Dim LT_time() Dim PolyRes() Dim PolyResErr() Dim SOGC() Dim ONOC() Dim Cbreak() Dim Shorts() Dim CV_pads_tested() Dim Pinholes() Dim Pinholes_pads_tested() Dim Percentage() Dim Thickness() Dim Acceptance() Dim Accept_code() num_sensors=-1 current_batch="" current_sensor=0 Do While Not Sensor_data.EOF If (current_sensor<>CInt(Sensor_data("sensor"))) or (current_batch<>CStr(Sensor_data("batch"))) Then num_sensors=num_sensors+1 ReDim Preserve sensor_type(num_sensors) ReDim Preserve batch(num_sensors) ReDim Preserve sensor(num_sensors) ReDim Preserve Ib_voper(num_sensors) ReDim Preserve Ig_voper(num_sensors) ReDim Preserve PlateauLV(num_sensors) ReDim Preserve PlateauUV(num_sensors) ReDim Preserve Vfd(num_sensors) ReDim Preserve Voper(num_sensors) ReDim Preserve LT_current(num_sensors) ReDim Preserve LT_time(num_sensors) ReDim Preserve PolyRes(num_sensors) ReDim Preserve PolyResErr(num_sensors) ReDim Preserve SOGC(num_sensors) ReDim Preserve ONOC(num_sensors) ReDim Preserve Cbreak(num_sensors) ReDim Preserve Shorts(num_sensors) ReDim Preserve CV_pads_tested(num_sensors) ReDim Preserve Pinholes(num_sensors) ReDim Preserve Pinholes_pads_tested(num_sensors) ReDim Preserve Percentage(num_sensors) ReDim Preserve Thickness(num_sensors) ReDim Preserve Acceptance(num_sensors) ReDim Preserve Accept_code(num_sensors) sensor_type(num_sensors)=CInt(Sensor_data("sensor_type")) batch(num_sensors)=CStr(Sensor_data("batch")) sensor(num_sensors)=CInt(Sensor_data("sensor")) current_batch=CStr(Sensor_data("batch")) current_sensor=CInt(Sensor_data("sensor")) If Not Sensor_thickness.EOF Then If Not IsNull(Sensor_thickness("thickness")) Then Thickness(num_sensors)=Sensor_thickness("thickness") End If Sensor_thickness.MoveNext End If If Not Acceptance_data.EOF Then If (CStr(Acceptance_data("batch")) = current_batch) and (CInt(Acceptance_data("sensor")) = current_sensor) Then Acceptance(num_sensors)=Acceptance_data("description") Accept_code(num_sensors)=Acceptance_data("measurement_type") Acceptance_data.MoveNext End If End If End If Select Case CStr(Sensor_data("measurement_id")) Case "CV_pads_tested" CV_pads_tested(num_sensors)=CInt(Sensor_data("measurement_value")) Case "Cbreak" Cbreak(num_sensors)=CInt(Sensor_data("measurement_value")) Case "Ib_voper" Ib_voper(num_sensors)=CDbl(Sensor_data("measurement_value")) Case "Ig_voper" Ig_voper(num_sensors)=CDbl(Sensor_data("measurement_value")) Case "LT_current" LT_current(num_sensors)=CDbl(Sensor_data("measurement_value")) Case "LT_time" LT_time(num_sensors)=CDbl(Sensor_data("measurement_value")) Case "ONOC" ONOC(num_sensors)=CDbl(Sensor_data("measurement_value")) Case "Percentage" Percentage(num_sensors)=CDbl(Sensor_data("measurement_value")) Case "Pinholes" Pinholes(num_sensors)=CInt(Sensor_data("measurement_value")) Case "Pinholes_pads_tested" Pinholes_pads_tested(num_sensors)=CInt(Sensor_data("measurement_value")) Case "PlateauLV" PlateauLV(num_sensors)=CInt(Sensor_data("measurement_value")) Case "PlateauUV" PlateauUV(num_sensors)=CInt(Sensor_data("measurement_value")) Case "PolyRes" PolyRes(num_sensors)=CDbl(Sensor_data("measurement_value")) Case "PolyResErr" PolyResErr(num_sensors)=CDbl(Sensor_data("measurement_value")) Case "Shorts" Shorts(num_sensors)=CInt(Sensor_data("measurement_value")) Case "SOGC" SOGC(num_sensors)=CDbl(Sensor_data("measurement_value")) Case "Vfd" Vfd(num_sensors)=CDbl(Sensor_data("measurement_value")) Case "Voper" Voper(num_sensors)=CInt(Sensor_data("measurement_value")) End Select Sensor_data.MoveNext Loop %>
Data for All Sensors with Sensor Properties Info
<% If num_sensors>-1 Then %>| Sensor Type | Batch | Sensor | Vfd | Voper | Ib @ Voper | Ig @ Voper | Plateau | Poly | SOG | ONO | Breaks | Shorts | Pinholes | % Broken | Longterm | Thickness | Acceptance |
| <%= sensor_type(i) %> | <%= batch(i) %> | <%= sensor(i) %> | <% If Not IsEmpty(Vfd(i)) Then Response.Write(CStr(Vfd(i))) Else Response.Write(" ") End If %> | <% If Not IsEmpty(Voper(i)) Then Response.Write(CStr(Voper(i))) Else Response.Write(" ") End If %> | <% If Not IsEmpty(Ib_voper(i)) Then Response.Write(CStr(Ib_voper(i))) Else Response.Write(" ") End If %> | <% If Not IsEmpty(Ig_voper(i)) Then Response.Write(CStr(Ig_voper(i))) Else Response.Write(" ") End If %> | <% If (Not IsEmpty(PlateauLV(i))) and (Not IsEmpty(PlateauUV(i))) Then Response.Write(CStr(PlateauLV(i))+" - "+CStr(PlateauUV(i))) Else Response.Write(" ") End If %> | <% If Not IsEmpty(PolyRes(i)) Then Response.Write(CStr(PolyRes(i))) Else Response.Write(" ") End If %> | <% If Not IsEmpty(SOGC(i)) Then Response.Write(CStr(SOGC(i))) Else Response.Write(" ") End If %> | <% If Not IsEmpty(ONOC(i)) Then Response.Write(CStr(ONOC(i))) Else Response.Write(" ") End If %> | <% If Not IsEmpty(Cbreak(i)) Then Response.Write(CStr(Cbreak(i))) Else Response.Write(" ") End If %> | <% If Not IsEmpty(Shorts(i)) Then Response.Write(CStr(Shorts(i))) Else Response.Write(" ") End If %> | <% If Not IsEmpty(Pinholes(i)) Then Response.Write(CStr(Pinholes(i))) Else Response.Write(" ") End If %> | <% If Not IsEmpty(Percentage(i)) Then Response.Write(CStr(100*Percentage(i))) Else Response.Write(" ") End If %> | <% If (Not IsEmpty(LT_current(i))) and (Not IsEmpty(LT_time(i))) Then Response.Write(CStr(LT_current(i))+" ľA after "+CStr(LT_time(i))+" days") Else Response.Write(" ") End If %> | <% If Not IsEmpty(Thickness(i)) Then Response.Write(CStr(Thickness(i))) Else Response.Write(" ") End If %> | <% If Not IsEmpty(Acceptance(i)) Then Response.Write(CStr(Acceptance(i))) Else Response.Write(" ") End If %> |
text file with these values in it
<% End If %> <% Connection.Close %>