Foxtable(狐表)用户栏目专家坐堂 → 【已解决】求公式


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

主题:【已解决】求公式

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


加好友 发短信
等级:三尾狐 帖子:790 积分:5695 威望:0 精华:0 注册:2009/4/17 18:42:00
刚做出来的书  发帖心情 Post By:2009/11/20 16:04:00 [只看该作者]

请狐爸帮帮忙,我设置了老半天,还是搞不出来,在表属性  DataColChanged事件中设置,谢谢

一。 如果{日报表} "工作时间_起","工作时间_止","工作时间_中停"列改变

            如果 ("工作时间_止")-("工作时间_中停")-("工作时间_起")小于0时
             ("工作时间_用时") = ("工作时间_止")-("工作时间_中停")-("工作时间_起")+24
            如果("工作时间_止")-("工作时间_中停")-("工作时间_起")大于0时
             ("工作时间_用时") = ("工作时间_止")-("工作时间_中停")-("工作时间_起")
二。如果{日报表}"准结完成百分比_备刀","准结完成百分比_装刀","准结完成百分比_装校工装","准结完成百分比_试切","准结完成百分比_拆工装","准结工艺_试切","准结工艺_装校工装","准结工艺_装刀","准结工艺_备刀","准结工艺_拆工装"列改变
             "准结完成工时_拆工装"="准结完成百分比_拆工装"*"准结工艺_拆工装"
             "准结完成工时_试切"="准结完成百分比_试切"*"准结工艺_试切"
             "准结完成工时_装校工装"="准结完成百分比_装校工装"*"准结工艺_装校工装"
             "准结完成工时_装刀"="准结完成百分比_装刀"*"准结工艺_装刀"
             "准结完成工时_备刀"="准结完成百分比_备刀"*"准结工艺_备刀"
三。如果{日报表}"工作时间_用时","加工工艺_设备数量"列改变
             "考核_用时"="工作时间_用时"/"加工工艺_设备数量"
四。如果{日报表}""加工完成_标准工时","加工工艺_设备数量"列改变
             "考核_标准工时"="加工完成_标准工时"/"加工工艺_设备数量"
五。如果{日报表}""考核_用时","考核_标准工时"列改变
             "考核_效率"="考核_标准工时"/"考核_用时"
六。如果{日报表}"加工完成_数量","加工工艺_标准工时"列改变
             "加工完成_标准工时"="加工完成_数量"*"加工工艺_标准工时"列改变
七。如果{日报表}"加工完成_数量","加工工艺_装夹工时"列改变
             "加工完成_装夹"="加工完成_数量"+"加工工艺_装夹工时"






 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:佶龙机加二车间管理系统.rar

[此贴子已经被作者于2009-11-21 16:02:22编辑过]

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


加好友 发短信
等级:三尾狐 帖子:790 积分:5695 威望:0 精华:0 注册:2009/4/17 18:42:00
  发帖心情 Post By:2009/11/20 16:15:00 [只看该作者]

还有八。
     {日报表}【加工提示】列表属性设置为数据表{加工工艺},
取值"工艺_加工提示",
显示"工序_序号","工序_班组","工艺_序号","工艺_加工提示"
筛选{日报表}【图号】={加工工艺}【图号】
     {日报表}【班组】={加工工艺}【工序_班组
   
[此贴子已经被作者于2009-11-20 16:16:36编辑过]

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


加好友 发短信
等级:三尾狐 帖子:790 积分:5695 威望:0 精华:0 注册:2009/4/17 18:42:00
  发帖心情 Post By:2009/11/20 19:33:00 [只看该作者]

怎么我往产品工艺里面一加数据就死机,请帮我看看是不是表属性设置的公式有冲突

 回到顶部
美女呀,离线,留言给我吧!
梦倩
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:60 积分:492 威望:0 精华:0 注册:2009/6/4 8:00:00
  发帖心情 Post By:2009/11/20 20:12:00 [只看该作者]

死机的话,要看看是不是有死循环,例如A由B、C算出,B由C、D算出,D由A算出,就会死机了。

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2009/11/21 8:26:00 [只看该作者]

应该是,出现这种情况不能单看一个事件的代码,大多数是由多个事件代码逻辑关系死循环。

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


加好友 发短信
等级:三尾狐 帖子:790 积分:5695 威望:0 精华:0 注册:2009/4/17 18:42:00
  发帖心情 Post By:2009/11/21 8:53:00 [只看该作者]

请帮我看看,类似一的有很多,我检查了没有死循环,第二和三在数据少的时候能满足要求,在我加载数据后,就不能单独运行二或三的公式了,二和三的格式我也是在论坛找坛友提供的,不知错在哪里,另外,1.2楼的有关本表2列以上的计算用表达式什么实现,请帮帮忙,谢谢
一: 

If e.DataCol.Name = "难度情况_材质" Then

    Dim dr As DataRow

    dr = DataTables("基础表").Find(" [材料] = '" & e.DataRow("难度情况_材质") & "'")

    If dr IsNot Nothing Then
        e.DataRow("难度系数_材质") = dr("材料系数")

    Else

        e.DataRow("难度系数_材质") = Nothing

    End If

End If

二: 

for i as integer = 0 to Tables("基础表").count-1

    if Tables("基础表").rows(i).isnull("疲劳") = false then

        for ii as integer = 0 to tables("产品工艺").count-1

            if tables("产品工艺").rows(ii).isnull("加工工时_周期") = false then

                if Tables("产品工艺").rows(ii)("加工工时_周期") >= Tables("基础表").rows(i)("疲劳").split("-")(0) andalso tables("产品工艺").rows(ii)("加工工时_周期") < Tables("基础表").rows(i)("疲劳").split("-")(1)

                    tables("产品工艺").rows(ii)("难度系数_疲劳") = Tables("基础表").rows(i)("疲劳系数")

                end if

            end if

        next

    end if

next


for i as integer = 0 to Tables("基础表").count-1

    if Tables("基础表").rows(i).isnull("重量") = false then

        for ii as integer = 0 to tables("产品工艺").count-1

            if tables("产品工艺").rows(ii).isnull("难度情况_重量") = false then

                if Tables("产品工艺").rows(ii)("难度情况_重量") >= Tables("基础表").rows(i)("重量").split("-")(0) andalso tables("产品工艺").rows(ii)("难度情况_重量") < Tables("基础表").rows(i)("重量").split("-")(1)

                    tables("产品工艺").rows(ii)("难度系数_重量") = Tables("基础表").rows(i)("重量系数")

                    Dim dr As DataRow = e.DataRow

                    Select Case e.DataCol.Name

                        Case "难度系数_精度","难度系数_材质","难度系数_切削","难度系数_批量","难度系数_疲劳","难度系数_装夹","难度系数_重量","难度系数_钢性","图号"

                            dr("标准_难度系数") = dr("难度系数_精度")+dr("难度系数_材质")+dr("难度系数_切削")+dr("难度系数_批量")+dr("难度系数_疲劳")+dr("难度系数_装夹")+dr("难度系数_重量")+dr("难度系数_钢性")+1

                        Case "加工工时_周期","标准_难度系数"

                            dr("标准_工时") = dr("加工工时_周期")*dr("标准_难度系数")

                        Case "标准_工时"

                            dr("标准_产量") =480/ dr("标准_工时")

                    End Select

                end if

            end if

        next

    end if

next


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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2009/11/21 14:53:00 [只看该作者]

看着累!

 回到顶部