Foxtable(狐表)用户栏目专家坐堂 → [原创]关联数据


  共有8918人关注过本帖树形打印复制链接

主题:[原创]关联数据

帅哥哟,离线,有人找我吗?
ivanliao
  21楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:70 积分:460 威望:0 精华:0 注册:2019/5/13 17:09:00
  发帖心情 Post By:2019/7/8 18:08:00 [只看该作者]

我需要做到的是,同时使用产品型号+色号进行查询来带出相对应的信息

 回到顶部
帅哥哟,离线,有人找我吗?
ivanliao
  22楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:70 积分:460 威望:0 精华:0 注册:2019/5/13 17:09:00
  发帖心情 Post By:2019/7/8 18:26:00 [只看该作者]

.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2019.6.9.1
错误所在事件:表,ORDER_TRACKING,DataColChanged
详细错误信息:
调用的目标发生了异常。
从字符串“标准色号”到类型“Boolean”的转换无效。
输入字符串的格式不正确。

 回到顶部
帅哥哟,离线,有人找我吗?
ivanliao
  23楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:70 积分:460 威望:0 精华:0 注册:2019/5/13 17:09:00
  发帖心情 Post By:2019/7/8 19:27:00 [只看该作者]

现在我的问题是,我能带出来了。 但是有些非常规的, 我不喜欢自动带出来, 希望通过下拉选项手动填写, 这个应该怎么写呢?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  24楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/8 21:09:00 [只看该作者]

参考15楼,添加判断

If e.DataRow("色号编号") <> "非常规"

 回到顶部
帅哥哟,离线,有人找我吗?
ivanliao
  25楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:70 积分:460 威望:0 精华:0 注册:2019/5/13 17:09:00
  发帖心情 Post By:2019/7/9 20:23:00 [只看该作者]

'根椐下单日期和类别设置自动流水号
Dim cnt As String
Dim idx As Integer
Select e.DataCol.Name
  Case "下单日期","任务类别代号"
        If e.DataRow.IsNull("下单日期") OrElse e.DataRow.IsNull("任务类别代号") Then
            e.DataRow("任务号") = Nothing
        Else
            Dim d As Date = e.DataRow("下单日期")
            Dim bh As String = e.DataRow("任务类别代号") & Format(d,"yyMM") '生成编号的前缀              
            cnt = DataTables("order_tracking").SQLCompute("max(任务号)", ("任务号 Like '"+bh+"%' ")) 
                    If cnt="" Then '判断下单月份是否新的
                         idx = 1 '否则顺序号等于1
                    Else
                         idx = CInt(cnt.Substring(5,3)) + 1 '获得最大单据编号的后四位顺序号,并加1
                    End If
                e.DataRow("任务号") = bh & Format(idx,"000")           
        End If
  Case "产品型号", "标准色号"
    Dim dr As DataRow
    dr = DataTables("产品对应表格").Find("[产品型号] = '" & e.DataRow("产品型号") & "'"&" And [配套色号] = '" & e.DataRow("标准色号") & "'")   '匹配预设
    If dr Is Nothing Then dr = DataTables("产品对应表格").Find("[产品型号] ='WrongShowing' and [配套色号] ='WrongShowing'") End If   '无匹配预设,则调用默认错误设置
    If dr Is Nothing
       Then  '错误设置被删除则清空
                e.DataRow("产品名称") =""
                e.DataRow("外壳工艺颜色") =""
                e.DataRow("中框工艺颜色") =""
                e.DataRow("灯光模式颜色") =""
                e.DataRow("线材颜色") =""
                e.DataRow("插头外壳颜色") =""
                e.DataRow("钥匙扣规格颜色") =""
                e.DataRow("插头输入") =""
                e.DataRow("插头输出") =""
       Else  '赋值匹配的预设/默认错误设置
                e.DataRow("产品名称") = dr("产品名称")
                e.DataRow("外壳工艺颜色") = dr("外壳工艺颜色")
                e.DataRow("中框工艺颜色") = dr("中框工艺颜色")
                e.DataRow("灯光模式颜色") = dr("灯光模式颜色")
                e.DataRow("线材颜色") = dr("线材颜色")
                e.DataRow("插头外壳颜色") = dr("插头外壳颜色")
                e.DataRow("钥匙扣规格颜色") = dr("钥匙扣规格颜色")
                e.DataRow("插头输入") = dr("插头输入")
                e.DataRow("插头输出") = dr("插头输出")
    End If
  Case  "客户名称" :
    Dim dr As DataRow
    dr = DataTables("客户信息表").Find("[客户名称] = '" & e.DataRow("客户名称") & "'") '匹配预设
    If dr Is Nothing Then dr = DataTables("客户信息表").Find("[客户名称] ='WrongShowing'") End If   '无匹配预设,则调用默认错误设置
    If dr Is Nothing
       Then  '错误设置被删除则清空
                e.DataRow("客户国家") =""
                e.DataRow("客户地区") ="" 
       Else  '赋值匹配的预设/默认错误设置
                e.DataRow("客户国家") = dr("客户国家")
                e.DataRow("客户地区") = dr("国家地区")
    End If
End Select
e.DataRow.save

'根椐任务类别给出任务类别代号
Select Case e.DataRow("任务类别")
    Case "订单"
        e.DataRow("任务类别代号") =("0")
    Case "效果图"
        e.DataRow("任务类别代号") =("P")
    Case "报价"
        e.DataRow("任务类别代号") =("Q")
    Case "库存订单"
        e.DataRow("任务类别代号") =("K")
    Case "样品订单"
        e.DataRow("任务类别代号") =("S")
    Case "派样订单"
        e.DataRow("任务类别代号") =("Z")
    Case "派样样品订单"
        e.DataRow("任务类别代号") =("A")
    Case "工艺试产单"
        e.DataRow("任务类别代号") =("T")
    Case "退货返工单"
        e.DataRow("任务类别代号") =("F")
End Select

 

 

 

为什么一直提示我then出现错误


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  26楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/9 20:36:00 [只看该作者]

Case "产品型号", "标准色号"
    Dim dr As DataRow
    dr = DataTables("产品对应表格").Find("[产品型号] = '" & e.DataRow("产品型号") & "' And [配套色号] = '" & e.DataRow("标准色号") & "'")   '匹配预设
    If dr Is Nothing Then
        dr = DataTables("产品对应表格").Find("[产品型号] ='WrongShowing' and [配套色号] ='WrongShowing'")
    End If   '无匹配预设,则调用默认错误设置
    If dr Is Nothing Then  '错误设置被删除则清空
        e.DataRow("产品名称") = Nothing
        e.DataRow("外壳工艺颜色") = Nothing
        e.DataRow("中框工艺颜色") = Nothing
        e.DataRow("灯光模式颜色") = Nothing
        e.DataRow("线材颜色") = Nothing
        e.DataRow("插头外壳颜色") = Nothing
        e.DataRow("钥匙扣规格颜色") = Nothing
        e.DataRow("插头输入") = Nothing
        e.DataRow("插头输出") = Nothing
    Else  '赋值匹配的预设/默认错误设置
        e.DataRow("产品名称") = dr("产品名称")
        e.DataRow("外壳工艺颜色") = dr("外壳工艺颜色")
        e.DataRow("中框工艺颜色") = dr("中框工艺颜色")
        e.DataRow("灯光模式颜色") = dr("灯光模式颜色")
        e.DataRow("线材颜色") = dr("线材颜色")
        e.DataRow("插头外壳颜色") = dr("插头外壳颜色")
        e.DataRow("钥匙扣规格颜色") = dr("钥匙扣规格颜色")
        e.DataRow("插头输入") = dr("插头输入")
        e.DataRow("插头输出") = dr("插头输出")
    End If

 回到顶部
帅哥哟,离线,有人找我吗?
ivanliao
  27楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:70 积分:460 威望:0 精华:0 注册:2019/5/13 17:09:00
  发帖心情 Post By:2019/7/9 21:07:00 [只看该作者]

Case  "客户名称" :
    Dim dr As DataRow
    dr = DataTables("客户信息表").Find("[客户名称] = '" & e.DataRow("客户名称") & "'") '匹配预设
    If dr Is Nothing Then dr = DataTables("客户信息表").Find("[客户名称] ='WrongShowing'") End If   '无匹配预设,则调用默认错误设置
    If dr Is Nothing
       Then  '错误设置被删除则清空
                e.DataRow("客户国家") =""
                e.DataRow("客户地区") ="" 
       Else  '赋值匹配的预设/默认错误设置
                e.DataRow("客户国家") = dr("客户国家")
                e.DataRow("客户地区") = dr("国家地区")
    End If
End Select

 

 

提示错误是:if dr is nothingthen dr=DataTables("客户信息表“)............................ 无匹配预设。


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  28楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/9 21:09:00 [只看该作者]

请认真看26楼。改换行的换行,不该换行的不要乱换行。

 回到顶部
帅哥哟,离线,有人找我吗?
ivanliao
  29楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:70 积分:460 威望:0 精华:0 注册:2019/5/13 17:09:00
  发帖心情 Post By:2019/7/15 18:06:00 [只看该作者]

请问,为什么我发布项了以后, 所有用户都不可以用control+F来快速查找了呢?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  30楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/15 20:28:00 [只看该作者]

是不是设计了自己的菜单?项目的快捷键都是基于系统菜单的,如果设计了自己的菜单,系统菜单和快捷键就都没有用了。

1、新建一个项目,导入系统菜单,参考系统菜单添加查询按钮和快捷键
2、使用全局快捷键:
http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=52509
http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=95436

 回到顶部
总数 62 上一页 1 2 3 4 5 6 7 下一页