<% 'Date Created Start - 15/06/2004 10:40 'Date Last Updated - 15/06/2004 16:45 'Created by - Andy Woolley - Milonic Solutions Ltd (UK) ' The Following 4 variables will need to be set Database_DSN="LocalServer" Database_user="sa" Database_password="password" table_prefix="mm_" Function Build_Menu(projectid) cReturn=chr(13) 'cReturn="
" cQuote=chr(34) counter = 0 dim menuStyleArray() reDim menuStyleArray(100) menu="" set rs = server.createobject("ADODB.Recordset") set rs2 = server.createobject("ADODB.Recordset") Set Conn = Server.CreateObject("ADODB.Connection") conn.Open Database_DSN,Database_user,Database_password query="select * from "&table_Prefix&"projects where projectid = " & projectid rs.Open query,conn For Each f in rs.Fields if f.name <> "projectid" and f.name <> "name" then menu=menu&"_"&f.name & "=" & f.value&";" menu=menu&cReturn end if Next rs.close menu=menu&cReturn menu=menu&cReturn query="select distinct(styleid) from "&table_prefix&"menus where projectid = " & projectid rs2.Open query,conn do while not rs2.EOF query = "select * from " & table_prefix & "styles where styleid = " & rs2("styleid") rs.Open query,conn counter = counter + 1 menuStyleArray(counter)=rs("name") menu = menu & "with("&rs("name")&"=new mm_style()){" menu=menu&cReturn For Each f in rs.Fields menuObjectName=trim(f.name) menuObjectValue=trim(f.value) if menuObjectName <> "projectid" and menuObjectName <> "name" and menuObjectName<> "styleid" then IF Instr(menuObjectName,"color") then menuObjectValue="#"&menuObjectValue end if menu=menu&menuObjectName & "=" & cQuote& menuObjectValue&cQuote&";" menu=menu&cReturn end if Next rs.close menu = menu & "}" menu=menu&cReturn rs2.MoveNext loop rs2.close menu=menu&cReturn menu=menu&cReturn menu=menu&cReturn query="select * from "&table_prefix&"menus where projectid = " & projectid rs2.Open query,conn do while not rs2.EOF menu=menu&"with(milonic=new menuname("&cQuote& rs2("name") &cQuote&")){" menu=menu&cReturn For Each f in rs2.Fields menuObjectName=f.name menuObjectValue=f.value if menuObjectName <> "menuid" and menuObjectName <> "projectid" and menuObjectName <> "name" then if menuObjectValue <> "" then if menuObjectName="styleid" then menu=menu&"style="&menuStyleArray(menuObjectValue)&";" else menu=menu&menuObjectName & "="&cQuote & menuObjectValue&cQuote&";" end if menu=menu&cReturn end if end if Next query="select * from "&table_prefix&"items where menuid="&rs2("menuid") rs.Open query,conn do while not rs.EOF menu=menu&"aI(" & chr(34) For Each f in rs.Fields if f.name <> "itemid" and f.name <> "menuid" then itemvalue=f.value if itemvalue <> "" then menu=menu&f.name & "=" & itemvalue&";" end if Next menu=menu & chr(34) & ");" menu=menu&cReturn rs.MoveNext loop rs.close menu=menu&"}" menu=menu&cReturn menu=menu&cReturn rs2.MoveNext loop menu=menu&cReturn&"drawMenus()" response.write("") End Function Build_Menu(1) %>

All that is needed is for the tables to be created from the file: menu.sql

The data is stored inside the 4 .csv files, import this into the appropriate table, set up the DSN, username and password and this file should start building menus from a SQL Server database using ASP.