<%' Cache buster: 20251110-1430 %> <% theme = Request.Cookies("theme") IF theme = "" THEN theme="bg-theme1" END IF %>
<% Dim currentPCType, currentPCStatus, recentFilter, deviceTypeFilter, sel currentPCType = Request.QueryString("pctype") currentPCStatus = Request.QueryString("pcstatus") recentFilter = Request.QueryString("recent") deviceTypeFilter = Request.QueryString("devicetype") %>
<% If currentPCType <> "" Or currentPCStatus <> "" Or recentFilter <> "" Or deviceTypeFilter <> "" Then %> Clear <% End If %>
<% ' Build query based on filters Dim pcTypeFilter, pcStatusFilter, recentDaysFilter, deviceTypeFilterSQL, whereClause pcTypeFilter = Request.QueryString("pctype") pcStatusFilter = Request.QueryString("pcstatus") recentDaysFilter = Request.QueryString("recent") deviceTypeFilterSQL = Request.QueryString("devicetype") ' Base query with LEFT JOINs to show all PCs strSQL = "SELECT m.machineid, m.hostname, m.alias, m.serialnumber, m.machinenumber, m.pctypeid, m.machinestatusid, " & _ "m.modelnumberid, m.businessunitid, m.osid, m.loggedinuser, m.lastupdated, " & _ "vendors.vendor, models.modelnumber, operatingsystems.operatingsystem, " & _ "c.address AS ipaddress, c.macaddress, " & _ "models.machinetypeid, pctype.typename, machinestatus.machinestatus " & _ "FROM machines m " & _ "LEFT JOIN models ON m.modelnumberid = models.modelnumberid " & _ "LEFT JOIN vendors ON models.vendorid = vendors.vendorid " & _ "LEFT JOIN operatingsystems ON m.osid = operatingsystems.osid " & _ "LEFT JOIN communications c ON c.machineid = m.machineid AND c.isprimary = 1 " & _ "LEFT JOIN pctype ON m.pctypeid = pctype.pctypeid " & _ "LEFT JOIN machinestatus ON m.machinestatusid = machinestatus.machinestatusid " & _ "WHERE m.isactive = 1 AND m.pctypeid IS NOT NULL" ' Apply filters whereClause = "" If pcTypeFilter <> "" Then whereClause = whereClause & "AND m.pctypeid = " & pcTypeFilter & " " End If If pcStatusFilter <> "" Then whereClause = whereClause & "AND m.machinestatusid = " & pcStatusFilter & " " End If If recentDaysFilter <> "" And IsNumeric(recentDaysFilter) Then whereClause = whereClause & "AND m.lastupdated >= DATE_SUB(NOW(), INTERVAL " & recentDaysFilter & " DAY) " End If ' Filter by device type (laptop vs desktop) based on model name patterns If deviceTypeFilterSQL = "laptop" Then whereClause = whereClause & "AND (models.modelnumber LIKE '%Latitude%' OR models.modelnumber LIKE '%Precision%' AND (models.modelnumber NOT LIKE '%Tower%')) " ElseIf deviceTypeFilterSQL = "desktop" Then whereClause = whereClause & "AND (models.modelnumber LIKE '%OptiPlex%' OR models.modelnumber LIKE '%Tower%' OR models.modelnumber LIKE '%Micro%') " End If strSQL = strSQL & whereClause & " GROUP BY m.machineid ORDER BY m.machinenumber ASC, m.hostname ASC" set rs = objconn.Execute(strSQL) while not rs.eof %> <% rs.movenext wend objConn.Close %>
Hostname Serial IP Model OS Machine
" title="Click to Show PC Details"><% Dim displayName If IsNull(rs("hostname")) Or rs("hostname") = "" Then displayName = rs("serialnumber") Else displayName = rs("hostname") End If Response.Write(displayName) %> <%Response.Write(rs("serialnumber"))%> <%Response.Write(rs("ipaddress"))%> <%Response.Write(rs("modelnumber"))%> <%Response.Write(rs("operatingsystem"))%> " title="Click to Show Machine Details"><%Response.Write(rs("machinenumber"))%>