您好我的产品由几个选项组成。每个选项都有一个SKU代码。您只能从每个SKU组中选择一个选项,并且选项必须按SKUGroup的顺序连接。
因此,例如,我会在数据库中的表中有一个选项列表,看起来像
OptID PID SKU Price SKUGroup
156727 93941 C 171.00 1
156728 93941 BN 171.00 1
156729 93941 PN 171.00 1
156718 93940 W 115.20 2
156719 93940 CA 115.20 2
156720 93940 BA 115.20 2
156721 93940 BNA 115.20 2
156722 93940 BN 115.20 2
156723 93940 BS 115.20 2
156716 93939 CHR 121.50 3
156717 93939 NK 138.00 3
一些成品SKU看起来像是:
C-W-CHR 407.70
C-W-NK 424.20
C-CA-CHR 407.20
C-CA-NK 424.20
我正在尝试创建一个脚本,该脚本将创建SKU的每种可能组合和组合选项价格的列表。
我需要在Classic ASP(vbscript)中完成这个,我对它并不熟悉。所以我正在寻找能得到的所有帮助。
谢谢!
答案 0 :(得分:1)
我首先要连接到数据库并创建三个记录集。
Set connection = CreateObject("ADODB.Connection")
connection.Open ConnectionString
Set rsOption1 = CreateObject("ADODB.recordset")
Set rsOption2 = CreateObject("ADODB.recordset")
Set rsOption3 = CreateObject("ADODB.recordset")
rsOption1.Open "SELECT * FROM TableName WHERE SKUGroup = 1", connection, 3,3
rsOption2.Open "SELECT * FROM TableName WHERE SKUGroup = 2", connection, 3,3
rsOption3.Open "SELECT * FROM TableName WHERE SKUGroup = 3", connection, 3,3
然后您可以使用嵌套循环来获取组合。像这样的东西(未经测试,这可能不会按原样运行,但它会让你知道如何做到这一点)(此假设您必须从中选择至少一个选项每组)
for i = 0 to rsOption1.RecordCount
rsOption1.Move i, 1
for j = 0 to rsOption2.RecordCount
rsOption2.Move j, 1
for k = 0 to rsOption3.RecordCount
rsOption3.Move k, 1
'Write rsOption1.Fields(2).Value & "-" & rsOption2.Fields(2).Value & _
'"-" & rsOption3.Fields(2).Value & " " & _
'FormatCurrency((rsOption1.Fields(3).Value + rsOption2.Fields(3).Value + rsOption3.Fields(3).Value))
Next
Next
Next