以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 颜色和尺码不固定 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=122877) |
-- 作者:yetle -- 发布时间:2018/8/3 15:03:00 -- 颜色和尺码不固定 颜色和尺码列是通过datacols.Add添加进临时表的,现在要将这个临时表存储到数据表,颜色和尺码不固定,这个存储要怎么写 下面这种写法是可以存储固定列信息,但颜色尺码不固定要怎么写? For Each drr As Row In CurrentTable.Rows Dim dr1 As DataRow = DataTables("大货用料表").AddNew dr1("物料基本信息_序号")=drr("物料基本信息_序号") dr1("物料基本信息_物料大类")=drr("物料基本信息_物料大类") dr1("物料基本信息_客供")=drr("物料基本信息_客供") dr1("物料基本信息_物料名称")=drr("物料基本信息_物料名称") dr1("物料基本信息_物料辅助说明")=drr("物料基本信息_物料辅助说明") dr1("物料基本信息_部位及用途")=drr("物料基本信息_部位及用途") dr1("物料基本信息_布封")=drr("物料基本信息_布封") dr1("物料基本信息_克重")=drr("物料基本信息_克重") dr1("物料基本信息_单位")=drr("物料基本信息_单位") dr1("物料基本信息_版规格配色要求")=drr("物料基本信息_版规格配色要求") dr1("物料基本信息_不分色")=drr("物料基本信息_不分色") dr1("物料基本信息_适用颜色")=drr("物料基本信息_适用颜色") dr1("物料基本信息_同色")=drr("物料基本信息_同色") dr1("物料基本信息_同量")=drr("物料基本信息_同量") dr1("物料基本信息_分码")=drr("物料基本信息_分码") dr1("物料基本信息_适用尺码")=drr("物料基本信息_适用尺码") dr1("物料基本信息_物料编码")=drr("物料基本信息_物料编码") dr1("用量信息_待定")=drr("用量信息_待定") dr1("用量信息_上级")=drr("用量信息_上级") dr1("用量信息_领料部门")=drr("用量信息_领料部门") dr1("用量信息_变更日期")=drr("用量信息_变更日期") dr1("用量信息_下级")=drr("用量信息_下级") dr1("供应商属性_供应商名称")=drr("供应商属性_供应商名称") dr1("供应商属性_转换率")=drr("供应商属性_转换率") dr1("供应商属性_采购单位")=drr("供应商属性_采购单位") dr1("供应商属性_成份")=drr("供应商属性_成份") dr1("款号")=drr("款号") dr1.Save() Next 是不是我在数据表内将所有尺码添加进来,然后对比临时表和数据表的列,列名相同就存储。但是,尺码可以这么做,颜色可不行,颜色有几百种。 参照我们现在的系统是固定20个颜色和尺码列存储在数据表 [此贴子已经被作者于2018/8/3 16:06:26编辑过]
|
-- 作者:有点甜 -- 发布时间:2018/8/3 18:14:00 -- 动态添加足够多的列(比如10列)显示颜色和尺码。 |
-- 作者:yetle -- 发布时间:2018/8/4 8:28:00 -- 真没理解 |
-- 作者:有点蓝 -- 发布时间:2018/8/4 8:59:00 -- 看看这个:http://www.foxtable.com/webhelp/scr/2965.htm 数据库存储值参考表A的设计,一个颜色/尺寸存储一行,而不是一个颜色/尺寸创建一个列 界面需要显示的时候通过代码转换为表B的形式
|
-- 作者:yetle -- 发布时间:2018/8/4 10:29:00 -- 此主题相关图片如下:222.png 临时表存储到数据表后,因为颜色和尺码是动态的,颜色1不会一直等于宝蓝色,颜色2不会一直等于火焰色,识别是什么颜色的只有款号, 款1的颜色有:宝蓝色、火焰色 款2的颜色有:大红色、墨绿色、银黄色 这时候数据表存储款2的颜色1等于大红色、颜色2等于墨绿色、颜色3等于银黄色
|
-- 作者:有点蓝 -- 发布时间:2018/8/4 10:42:00 -- 请仔细理解4楼的说明。您这种表结构请恕我无能为力 |
-- 作者:yetle -- 发布时间:2018/8/4 14:37:00 --
下面这个代码 Dim Multi As String = e.Form.Controls("CheckedComboBox1").value Dim Multi1 As String = e.Form.Controls("CheckedComboBox2").value Dim Values() As String Dim Values1() As String Values = Multi.split(",") Values1 = Multi1.split(",") For Index As Integer = 0 To Values.Length - 1 \'\' Output.Show(Values(Index)) dt.datacols.Add("N" & Values(Index), Gettype(Integer),"",Values(Index)) \'\'从textbox中获取数字集合并生成新列 Next For Index1 As Integer = 0 To Values1.Length - 1 \'\' Output.Show(Values(Index)) dt.datacols.Add("N" & Values1(Index1), Gettype(Integer),"",Values1(Index1)) \'\'从textbox中获取数字集合并生成新列 Next 黄色代码,我想列名称设为颜色1,颜色2,颜色3……,列标题就为颜色名称:宝蓝色,火焰色……,怎么写? 如果能这样写的话,那就应该可以存储到数据表了
[此贴子已经被作者于2018/8/4 14:43:44编辑过]
|
-- 作者:有点蓝 -- 发布时间:2018/8/4 14:47:00 -- 首先要保证2个CheckedComboBox的值个数是一致的 Dim Multi As String = e.Form.Controls("CheckedComboBox1").value Dim Multi1 As String = e.Form.Controls("CheckedComboBox2").value Dim Values() As String Dim Values1() As String Values = Multi.split(",") Values1 = Multi1.split(",") For Index As Integer = 0 To Values.Length - 1 \'\' Output.Show(Values(Index)) dt.datacols.Add("N" & Values(Index), Gettype(Integer),"",Values1(Index)) \'\'从textbox中获取数字集合并生成新列 Next |
-- 作者:yetle -- 发布时间:2018/8/4 14:49:00 -- 我的意思是,颜色1,颜色2……这是需要按序号生成,不是取checkbox的value值 CheckedComboBox1放的是颜色,CheckedComboBox2放的尺码 尺码部分就会是列名称为:尺码1,尺码2……,列标题就会:大码,中码,……
2个CheckedComboBox的值个数是不是一致的,怎么写?
[此贴子已经被作者于2018/8/4 15:02:10编辑过]
|
-- 作者:有点蓝 -- 发布时间:2018/8/4 15:05:00 -- 没看懂你的问题。 |