<%@LANGUAGE="VBSCRIPT"%> <% ' *** Logout the current user. MM_Logout = CStr(Request.ServerVariables("URL")) & "?MM_Logoutnow=1" If (CStr(Request("MM_Logoutnow")) = "1") Then Session.Abandon MM_logoutRedirectPage = "/_admin/default.asp" ' redirect with URL parameters (remove the "MM_Logoutnow" query param). if (MM_logoutRedirectPage = "") Then MM_logoutRedirectPage = CStr(Request.ServerVariables("URL")) If (InStr(1, UC_redirectPage, "?", vbTextCompare) = 0 And Request.QueryString <> "") Then MM_newQS = "?" For Each Item In Request.QueryString If (Item <> "MM_Logoutnow") Then If (Len(MM_newQS) > 1) Then MM_newQS = MM_newQS & "&" MM_newQS = MM_newQS & Item & "=" & Server.URLencode(Request.QueryString(Item)) End If Next if (Len(MM_newQS) > 1) Then MM_logoutRedirectPage = MM_logoutRedirectPage & MM_newQS End If Response.Redirect(MM_logoutRedirectPage) End If %> <% ' *** Restrict Access To Page: Grant or deny access to this page MM_authorizedUsers="SA" MM_authFailedURL="/_admin/default.asp" MM_grantAccess=false If Session("MM_Username") <> "" Then If (false Or CStr(Session("MM_UserAuthorization"))="") Or _ (InStr(1,MM_authorizedUsers,Session("MM_UserAuthorization"))>=1) Then MM_grantAccess = true End If End If If Not MM_grantAccess Then MM_qsChar = "?" If (InStr(1,MM_authFailedURL,"?") >= 1) Then MM_qsChar = "&" MM_referrer = Request.ServerVariables("URL") if (Len(Request.QueryString()) > 0) Then MM_referrer = MM_referrer & "?" & Request.QueryString() MM_authFailedURL = MM_authFailedURL & MM_qsChar & "accessdenied=" & Server.URLEncode(MM_referrer) Response.Redirect(MM_authFailedURL) End If %> <% If request("shippingDelete") = "1" Then set delShipping = Server.CreateObject("ADODB.Command") delShipping.ActiveConnection = MM_OLEDB_STRING delShipping.CommandText = "dbo.spSHOP_DeleteShipping" delShipping.CommandType = 4 delShipping.CommandTimeout = 0 delShipping.Prepared = true delShipping.Parameters.Append delShipping.CreateParameter("@RangeID", 3, 1,4,Request("RangeID")) delShipping.Execute() Response.Write "" End If %> <% If request("shippingAdd") = "1352" Then set InsertShipping = Server.CreateObject("ADODB.Command") InsertShipping.ActiveConnection = MM_OLEDB_STRING InsertShipping.CommandText = "dbo.spSHOP_InsertShipping" InsertShipping.CommandType = 4 InsertShipping.CommandTimeout = 0 InsertShipping.Prepared = true InsertShipping.Parameters.Append InsertShipping.CreateParameter("@MinPurchase", 6, 1,8,CCur(Request("MinPurchase"))) InsertShipping.Parameters.Append InsertShipping.CreateParameter("@MaxPurchase", 6, 1,8,CCur(Request("MaxPurchase"))) InsertShipping.Parameters.Append InsertShipping.CreateParameter("@ShippingCost", 6, 1,8,CCur(Request("ShippingCost"))) InsertShipping.Execute() Response.Write "" End If %> <% If Request("preferencesAdd") = "1" Then %> <% Dim InsertPref__AuthorizenetAccountName InsertPref__AuthorizenetAccountName = "" if(Request("AuthorizenetAccountName") <> "") then InsertPref__AuthorizenetAccountName = Request("AuthorizenetAccountName") Dim InsertPref__OrderSendEmail1 InsertPref__OrderSendEmail1 = "" if(Request("OrderSendEmail1") <> "") then InsertPref__OrderSendEmail1 = Request("OrderSendEmail1") Dim InsertPref__OrderSendEmail2 InsertPref__OrderSendEmail2 = "" if(Request("OrderSendEmail2") <> "") then InsertPref__OrderSendEmail2 = Request("OrderSendEmail2") Dim InsertPref__OrderSendPagerEmail InsertPref__OrderSendPagerEmail = "" if(Request("OrderSendPagerEmail") <> "") then InsertPref__OrderSendPagerEmail = Request("OrderSendPagerEmail") Dim InsertPref__CyberCashAccountName InsertPref__CyberCashAccountName = "" if(Request("CyberCashAccountName") <> "") then InsertPref__CyberCashAccountName = Request("CyberCashAccountName") Dim InsertPref__SecureServerURL InsertPref__SecureServerURL = "" if(Request("SecureServerURL") <> "") then InsertPref__SecureServerURL = Request("SecureServerURL") %> <% set InsertPref = Server.CreateObject("ADODB.Command") InsertPref.ActiveConnection = MM_OLEDB_STRING InsertPref.CommandText = "dbo.spSHOP_InsertPreferences" InsertPref.CommandType = 4 InsertPref.CommandTimeout = 0 InsertPref.Prepared = true InsertPref.Parameters.Append InsertPref.CreateParameter("@AuthorizenetAccountName", 129, 1,50,InsertPref__AuthorizenetAccountName) InsertPref.Parameters.Append InsertPref.CreateParameter("@OrderSendEmail1", 129, 1,100,InsertPref__OrderSendEmail1) InsertPref.Parameters.Append InsertPref.CreateParameter("@OrderSendEmail2", 129, 1,100,InsertPref__OrderSendEmail2) InsertPref.Parameters.Append InsertPref.CreateParameter("@OrderSendPagerEmail", 129, 1,100,InsertPref__OrderSendPagerEmail) InsertPref.Parameters.Append InsertPref.CreateParameter("@CyberCashAccountName", 129, 1,50,InsertPref__CyberCashAccountName) InsertPref.Parameters.Append InsertPref.CreateParameter("@SecureServerURL", 129, 1,100,InsertPref__SecureServerURL) InsertPref.Execute() %> <% Response.Write "" %> <% End If %> <% If Request("preferencesEdit") = "1" Then %> <% Dim UpdatePref__AuthorizenetAccountName UpdatePref__AuthorizenetAccountName = "" if(Request("AuthorizenetAccountName") <> "") then UpdatePref__AuthorizenetAccountName = Request("AuthorizenetAccountName") Dim UpdatePref__OrderSendEmail1 UpdatePref__OrderSendEmail1 = "" if(Request("OrderSendEmail1") <> "") then UpdatePref__OrderSendEmail1 = Request("OrderSendEmail1") Dim UpdatePref__OrderSendEmail2 UpdatePref__OrderSendEmail2 = "" if(Request("OrderSendEmail2") <> "") then UpdatePref__OrderSendEmail2 = Request("OrderSendEmail2") Dim UpdatePref__OrderSendPagerEmail UpdatePref__OrderSendPagerEmail = "" if(Request("OrderSendPagerEmail") <> "") then UpdatePref__OrderSendPagerEmail = Request("OrderSendPagerEmail") Dim UpdatePref__CyberCashAccountName UpdatePref__CyberCashAccountName = "" if(Request("CyberCashAccountName") <> "") then UpdatePref__CyberCashAccountName = Request("CyberCashAccountName") Dim UpdatePref__SecureServerURL UpdatePref__SecureServerURL = "" if(Request("SecureServerURL") <> "") then UpdatePref__SecureServerURL = Request("SecureServerURL") %> <% set UpdatePref = Server.CreateObject("ADODB.Command") UpdatePref.ActiveConnection = MM_OLEDB_STRING UpdatePref.CommandText = "dbo.spSHOP_UpdatePreferences" UpdatePref.CommandType = 4 UpdatePref.CommandTimeout = 0 UpdatePref.Prepared = true UpdatePref.Parameters.Append UpdatePref.CreateParameter("@AuthorizenetAccountName", 129, 1,50,UpdatePref__AuthorizenetAccountName) UpdatePref.Parameters.Append UpdatePref.CreateParameter("@OrderSendEmail1", 129, 1,100,UpdatePref__OrderSendEmail1) UpdatePref.Parameters.Append UpdatePref.CreateParameter("@OrderSendEmail2", 129, 1,100,UpdatePref__OrderSendEmail2) UpdatePref.Parameters.Append UpdatePref.CreateParameter("@OrderSendPagerEmail", 129, 1,100,UpdatePref__OrderSendPagerEmail) UpdatePref.Parameters.Append UpdatePref.CreateParameter("@CyberCashAccountName", 129, 1,50,UpdatePref__CyberCashAccountName) UpdatePref.Parameters.Append UpdatePref.CreateParameter("@SecureServerURL", 129, 1,100,UpdatePref__SecureServerURL) UpdatePref.Execute() %> <% Response.Write "" %> <% End If %> <% set rsPREF = Server.CreateObject("ADODB.Recordset") rsPREF.ActiveConnection = MM_OLEDB_STRING rsPREF.Source = "SELECT * FROM dbo.tblSHOP_Preferences" rsPREF.CursorType = 0 rsPREF.CursorLocation = 2 rsPREF.LockType = 3 rsPREF.Open() rsPREF_numRows = 0 %> <% set rsSHIPPING = Server.CreateObject("ADODB.Recordset") rsSHIPPING.ActiveConnection = MM_OLEDB_STRING rsSHIPPING.Source = "SELECT * FROM dbo.tblSHOP_ShippingCostByRange" rsSHIPPING.CursorType = 0 rsSHIPPING.CursorLocation = 2 rsSHIPPING.LockType = 3 rsSHIPPING.Open() rsSHIPPING_numRows = 0 %> <% set rsPRODUCTS = Server.CreateObject("ADODB.Recordset") rsPRODUCTS.ActiveConnection = MM_OLEDB_STRING rsPRODUCTS.Source = "SELECT P.ProductID, P.ProductName, C.CategoryName, S.CompanyName FROM dbo.tblSHOP_Products P LEFT OUTER JOIN dbo.tblSHOP_Categories C ON P.CategoryID = C.CategoryID LEFT OUTER JOIN dbo.tblSHOP_Suppliers S ON P.SupplierID = S.SupplierID ORDER BY P.ProductName" rsPRODUCTS.CursorType = 0 rsPRODUCTS.CursorLocation = 2 rsPRODUCTS.LockType = 3 rsPRODUCTS.Open() rsPRODUCTS_numRows = 0 %> <% set rsSUPPLIERS = Server.CreateObject("ADODB.Recordset") rsSUPPLIERS.ActiveConnection = MM_OLEDB_STRING rsSUPPLIERS.Source = "SELECT SupplierID, CompanyName, ContactName, HomePageURL, EMail FROM dbo.tblSHOP_Suppliers" rsSUPPLIERS.CursorType = 0 rsSUPPLIERS.CursorLocation = 2 rsSUPPLIERS.LockType = 3 rsSUPPLIERS.Open() rsSUPPLIERS_numRows = 0 %> <% set rsORDERS = Server.CreateObject("ADODB.Recordset") rsORDERS.ActiveConnection = MM_OLEDB_STRING rsORDERS.Source = "SELECT * FROM dbo.vSHOP_Orders" rsORDERS.CursorType = 0 rsORDERS.CursorLocation = 2 rsORDERS.LockType = 3 rsORDERS.Open() rsORDERS_numRows = 0 %> <% Function OrderStatus() If NOT rsORDERS.EOF Then If rsORDERS("Canceled") = LCase(CStr("true")) Then OrderStatus = "canceled" ElseIf rsORDERS("Fullfilled") = LCase(CStr("true")) Then OrderStatus = "fullfilled" Else OrderStatus = "open" End If End If End Function %> <% Dim Repeat1__numRows Repeat1__numRows = -1 Dim Repeat1__index Repeat1__index = 0 rsPRODUCTS_numRows = rsPRODUCTS_numRows + Repeat1__numRows %> <% Dim Repeat3__numRows Repeat3__numRows = -1 Dim Repeat3__index Repeat3__index = 0 rsSUPPLIERS_numRows = rsSUPPLIERS_numRows + Repeat3__numRows %> <% Dim Repeat4__numRows Repeat4__numRows = 10 Dim Repeat4__index Repeat4__index = 0 rsORDERS_numRows = rsORDERS_numRows + Repeat4__numRows %> <% ' *** Recordset Stats, Move To Record, and Go To Record: declare stats variables ' set the record count rsORDERS_total = rsORDERS.RecordCount ' set the number of rows displayed on this page If (rsORDERS_numRows < 0) Then rsORDERS_numRows = rsORDERS_total Elseif (rsORDERS_numRows = 0) Then rsORDERS_numRows = 1 End If ' set the first and last displayed record rsORDERS_first = 1 rsORDERS_last = rsORDERS_first + rsORDERS_numRows - 1 ' if we have the correct record count, check the other stats If (rsORDERS_total <> -1) Then If (rsORDERS_first > rsORDERS_total) Then rsORDERS_first = rsORDERS_total If (rsORDERS_last > rsORDERS_total) Then rsORDERS_last = rsORDERS_total If (rsORDERS_numRows > rsORDERS_total) Then rsORDERS_numRows = rsORDERS_total End If %> <% ' *** Recordset Stats: if we don't know the record count, manually count them If (rsORDERS_total = -1) Then ' count the total records by iterating through the recordset rsORDERS_total=0 While (Not rsORDERS.EOF) rsORDERS_total = rsORDERS_total + 1 rsORDERS.MoveNext Wend ' reset the cursor to the beginning If (rsORDERS.CursorType > 0) Then rsORDERS.MoveFirst Else rsORDERS.Requery End If ' set the number of rows displayed on this page If (rsORDERS_numRows < 0 Or rsORDERS_numRows > rsORDERS_total) Then rsORDERS_numRows = rsORDERS_total End If ' set the first and last displayed record rsORDERS_first = 1 rsORDERS_last = rsORDERS_first + rsORDERS_numRows - 1 If (rsORDERS_first > rsORDERS_total) Then rsORDERS_first = rsORDERS_total If (rsORDERS_last > rsORDERS_total) Then rsORDERS_last = rsORDERS_total End If %> <% ' *** Move To Record and Go To Record: declare variables Set MM_rs = rsORDERS MM_rsCount = rsORDERS_total MM_size = rsORDERS_numRows MM_uniqueCol = "" MM_paramName = "" MM_offset = 0 MM_atTotal = false MM_paramIsDefined = false If (MM_paramName <> "") Then MM_paramIsDefined = (Request.QueryString(MM_paramName) <> "") End If %> <% ' *** Move To Record: handle 'index' or 'offset' parameter if (Not MM_paramIsDefined And MM_rsCount <> 0) then ' use index parameter if defined, otherwise use offset parameter r = Request.QueryString("index") If r = "" Then r = Request.QueryString("offset") If r <> "" Then MM_offset = Int(r) ' if we have a record count, check if we are past the end of the recordset If (MM_rsCount <> -1) Then If (MM_offset >= MM_rsCount Or MM_offset = -1) Then ' past end or move last If ((MM_rsCount Mod MM_size) > 0) Then ' last page not a full repeat region MM_offset = MM_rsCount - (MM_rsCount Mod MM_size) Else MM_offset = MM_rsCount - MM_size End If End If End If ' move the cursor to the selected record i = 0 While ((Not MM_rs.EOF) And (i < MM_offset Or MM_offset = -1)) MM_rs.MoveNext i = i + 1 Wend If (MM_rs.EOF) Then MM_offset = i ' set MM_offset to the last possible record End If %> <% ' *** Move To Record: if we dont know the record count, check the display range If (MM_rsCount = -1) Then ' walk to the end of the display range for this page i = MM_offset While (Not MM_rs.EOF And (MM_size < 0 Or i < MM_offset + MM_size)) MM_rs.MoveNext i = i + 1 Wend ' if we walked off the end of the recordset, set MM_rsCount and MM_size If (MM_rs.EOF) Then MM_rsCount = i If (MM_size < 0 Or MM_size > MM_rsCount) Then MM_size = MM_rsCount End If ' if we walked off the end, set the offset based on page size If (MM_rs.EOF And Not MM_paramIsDefined) Then If (MM_offset > MM_rsCount - MM_size Or MM_offset = -1) Then If ((MM_rsCount Mod MM_size) > 0) Then MM_offset = MM_rsCount - (MM_rsCount Mod MM_size) Else MM_offset = MM_rsCount - MM_size End If End If End If ' reset the cursor to the beginning If (MM_rs.CursorType > 0) Then MM_rs.MoveFirst Else MM_rs.Requery End If ' move the cursor to the selected record i = 0 While (Not MM_rs.EOF And i < MM_offset) MM_rs.MoveNext i = i + 1 Wend End If %> <% ' *** Move To Record: update recordset stats ' set the first and last displayed record rsORDERS_first = MM_offset + 1 rsORDERS_last = MM_offset + MM_size If (MM_rsCount <> -1) Then If (rsORDERS_first > MM_rsCount) Then rsORDERS_first = MM_rsCount If (rsORDERS_last > MM_rsCount) Then rsORDERS_last = MM_rsCount End If ' set the boolean used by hide region to check if we are on the last record MM_atTotal = (MM_rsCount <> -1 And MM_offset + MM_size >= MM_rsCount) %> <% ' *** Go To Record and Move To Record: create strings for maintaining URL and Form parameters ' create the list of parameters which should not be maintained MM_removeList = "&index=" If (MM_paramName <> "") Then MM_removeList = MM_removeList & "&" & MM_paramName & "=" MM_keepURL="":MM_keepForm="":MM_keepBoth="":MM_keepNone="" ' add the URL parameters to the MM_keepURL string For Each Item In Request.QueryString NextItem = "&" & Item & "=" If (InStr(1,MM_removeList,NextItem,1) = 0) Then MM_keepURL = MM_keepURL & NextItem & Server.URLencode(Request.QueryString(Item)) End If Next ' add the Form variables to the MM_keepForm string For Each Item In Request.Form NextItem = "&" & Item & "=" If (InStr(1,MM_removeList,NextItem,1) = 0) Then MM_keepForm = MM_keepForm & NextItem & Server.URLencode(Request.Form(Item)) End If Next ' create the Form + URL string and remove the intial '&' from each of the strings MM_keepBoth = MM_keepURL & MM_keepForm if (MM_keepBoth <> "") Then MM_keepBoth = Right(MM_keepBoth, Len(MM_keepBoth) - 1) if (MM_keepURL <> "") Then MM_keepURL = Right(MM_keepURL, Len(MM_keepURL) - 1) if (MM_keepForm <> "") Then MM_keepForm = Right(MM_keepForm, Len(MM_keepForm) - 1) ' a utility function used for adding additional parameters to these strings Function MM_joinChar(firstItem) If (firstItem <> "") Then MM_joinChar = "&" Else MM_joinChar = "" End If End Function %> <% ' *** Move To Record: set the strings for the first, last, next, and previous links MM_keepMove = MM_keepBoth MM_moveParam = "index" ' if the page has a repeated region, remove 'offset' from the maintained parameters If (MM_size > 0) Then MM_moveParam = "offset" If (MM_keepMove <> "") Then params = Split(MM_keepMove, "&") MM_keepMove = "" For i = 0 To UBound(params) nextItem = Left(params(i), InStr(params(i),"=") - 1) If (StrComp(nextItem,MM_moveParam,1) <> 0) Then MM_keepMove = MM_keepMove & "&" & params(i) End If Next If (MM_keepMove <> "") Then MM_keepMove = Right(MM_keepMove, Len(MM_keepMove) - 1) End If End If End If ' set the strings for the move to links If (MM_keepMove <> "") Then MM_keepMove = MM_keepMove & "&" urlStr = Request.ServerVariables("URL") & "?" & MM_keepMove & MM_moveParam & "=" MM_moveFirst = urlStr & "0" MM_moveLast = urlStr & "-1" MM_moveNext = urlStr & Cstr(MM_offset + MM_size) prev = MM_offset - MM_size If (prev < 0) Then prev = 0 MM_movePrev = urlStr & Cstr(prev) %> <% Dim Repeat2__numRows Repeat2__numRows = -1 Dim Repeat2__index Repeat2__index = 0 rsSHIPPING_numRows = rsSHIPPING_numRows + Repeat2__numRows %> <% Dim SFRC: SFRC = rsSHIPPING.RecordCount Dim SFRCCount: SFRCCount = 0 If SFRC = -1 Then While NOT rsSHIPPING.EOF SFRCCount = SFRCCount + 1 rsSHIPPING.MoveNext() Wend If (rsSHIPPING.CursorType > 0) Then rsSHIPPING.MoveFirst() Else rsSHIPPING.Requery() End If End If SFRCCount = Session("SFRC") %> ADMIN CONTROL INTERFACE
     
    My Shop Admin
 
Manage Preferences  
"> <% If NOT rsPREF.EOF Then %>
       
My Authorizenet Account Name: "> Order Confirmation E-mail 1: ">
My CyberCash Account Name: "> Order Confirmation E-mail 2: ">
Secure Server URL (https://): "> Upon new order, page me at: ">
     
       
<% else %>
       
My Authorizenet Account Name: Order Confirmation E-mail 1:
My CyberCash Account Name: Order Confirmation E-mail 2:
Secure Server URL (https://): Upon new order, page me at:
     
       
<% End If %>
Manage Shipping Costs  
<% If (NOT rsSHIPPING.EOF) Then %> <% While ((Repeat2__numRows <> 0) AND (NOT rsSHIPPING.EOF)) %> <% Repeat2__index=Repeat2__index+1 Repeat2__numRows=Repeat2__numRows-1 rsSHIPPING.MoveNext() Wend %> <% Else %> <% End If %>
       
From (lbs) Until (lbs) Shipping Cost
<%=(rsSHIPPING.Fields.Item("MinPurchase").Value)%> lbs. <%=(rsSHIPPING.Fields.Item("MaxPurchase").Value)%> lbs. <%= FormatCurrency((rsSHIPPING.Fields.Item("ShippingCost").Value), -1, -2, -2, -2) %>   ?shippingDelete=1&RangeID=<%=rsSHIPPING("RangeID")%>">delete
No shipping costs have been specified.
">
       
Manage Products  
<% If NOT rsPRODUCTS.EOF Then %> <% While ((Repeat1__numRows <> 0) AND (NOT rsPRODUCTS.EOF)) %> <% Repeat1__index=Repeat1__index+1 Repeat1__numRows=Repeat1__numRows-1 rsPRODUCTS.MoveNext() Wend %> <% Else %> <% End If %>
         
Product Name   Category Supplier's Name
<%=(rsPRODUCTS.Fields.Item("ProductName").Value)%>   <%=(rsPRODUCTS.Fields.Item("CategoryName").Value)%> <%=(rsPRODUCTS.Fields.Item("CompanyName").Value)%> edit
You have no products listed at this time.
         
       
         
Manage Suppliers  
<% If (NOT rsSUPPLIERS.EOF) Then %> <% While ((Repeat3__numRows <> 0) AND (NOT rsSUPPLIERS.EOF)) %> <% Repeat3__index=Repeat3__index+1 Repeat3__numRows=Repeat3__numRows-1 rsSUPPLIERS.MoveNext() Wend %> <% else %> <% end if %>
         
Company          Contact Name Web Site
<%=(rsSUPPLIERS.Fields.Item("CompanyName").Value)%>   <%If NOT len(rsSUPPLIERS.Fields.Item("EMail").Value) = 0 Then %> "><%=(rsSUPPLIERS.Fields.Item("ContactName").Value)%> <% else %> <%=(rsSUPPLIERS.Fields.Item("ContactName").Value)%> <% end if %> "><%=(rsSUPPLIERS.Fields.Item("HomePageURL").Value)%>    edit
You have no suppliers listed at this time.
         
         
Process Orders   Displaying Orders <%=(rsORDERS_first)%> to <%=(rsORDERS_last)%> of <%=(rsORDERS_total)%> from the last 30 days.
<% if NOT rsORDERS.EOF Then %> <% While ((Repeat4__numRows <> 0) AND (NOT rsORDERS.EOF)) %> <% Repeat4__index=Repeat4__index+1 Repeat4__numRows=Repeat4__numRows-1 rsORDERS.MoveNext() Wend %> <% Else %> <% End IF %>
      
ID Customer Order Date Order Status
<%=(rsORDERS.Fields.Item("OrderID").Value)%>   "><%=(rsORDERS.Fields.Item("Name").Value)%> <%= DoDateTime((rsORDERS.Fields.Item("OrderDate").Value), 1, 1033) %> <% = OrderStatus() %> remove from open orders
You have no orders listed at this time.
<% If MM_offset <> 0 Then %> First <% End If ' end MM_offset <> 0 %> <% If MM_offset <> 0 Then %> Previous <% End If ' end MM_offset <> 0 %> <% If Not MM_atTotal Then %> Next <% End If ' end Not MM_atTotal %> <% If Not MM_atTotal Then %> Last <% End If ' end Not MM_atTotal %>
         
 
<% rsPREF.Close() %> <% rsSHIPPING.Close() %> <% rsPRODUCTS.Close() %> <% rsSUPPLIERS.Close() %> <% rsORDERS.Close() %>