Foxtable(狐表)用户栏目专家坐堂 → 数量统计问题代码


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

主题:数量统计问题代码

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


加好友 发短信
等级:二尾狐 帖子:503 积分:4002 威望:0 精华:0 注册:2016/6/7 7:45:00
  发帖心情 Post By:2016/7/22 13:09:00 [只看该作者]

大红袍老师,帮忙呀,急用。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/22 13:21:00 [只看该作者]

For Each dr As DataRow In DataTables("表A").DataRows
   
    Dim d As Date = e.Form.Controls("DateTimePicker1").Value
   
    Dim d1 As Date = e.Form.Controls("DateTimePicker2").Value
   
    '按入库/供应商
    If dr("返利类型") = "按入库/供应商" Then        '以供应商编码\药品名称\生产企业\进价,为条件
        dr("返利数量") = DataTables("入库结构报表2016").Compute("sum(数量)",CExp("供应商编码='{0}' and 药品名称='{1}' and 生产企业='{2}' and 单据进价={3} and 单据日期 >= #" & d & "# and 单据日期 < #" & d1 & "#",dr("供应商编码"),dr("商品名称"),dr("生产企业"),dr("进价")))
       
       
        '按入库/生产企业
    ElseIf dr("返利类型") = "按入库/生产企业" Then       '以生产企业\进价,为条件
        dr("返利数量") = DataTables("入库结构报表2016").Compute("sum(数量)",CExp("生产企业='{0}' and 单据进价={1} and 单据日期 >= #" & d & "# and 单据日期 < #" & d1 & "#",dr("生产企业"),dr("进价")))
       
        '按销售/供应商/指定医院
    ElseIf dr("返利类型") = "按销售/供应商/指定医院" Then       '以供应商编码\药品名称\生产企业\指定医院\进价,为条件
        dr("返利数量") = DataTables("批发及退货报表2016").Compute("sum(数量)",CExp("供应商编码='{0}' and 商品名称='{1}' and 生产企业='{2}' and 进价='{3}' and 客户编码={4} and 会计日 >= #" & d & "# and 会计日 < #" & d1 & "#",dr("供应商编码"),dr("商品名称"),dr("生产企业"),dr("进价"),dr("客户编码")))
       
        '按销售/供应商
    ElseIf dr("返利类型") = "按销售/供应商" Then       '以销售\供应商\生产企业\进价,为条件
        dr("返利数量") = DataTables("批发及退货报表2016").Compute("sum(数量)",CExp("供应商编码='{0}' and 商品名称='{1}' and 生产企业='{2}' and 进价={3} and 会计日 >= #" & d & "# and 会计日 < #" & d1 & "#",dr("供应商编码"),dr("商品名称"),dr("生产企业"),dr("进价")))
       
        '按销售/生产企业
    ElseIf dr("返利类型") = "按销售/生产企业" Then       '生产企业\进价,为条件
        dr("返利数量") = DataTables("批发及退货报表2016").Compute("sum(数量)",CExp("商品名称='{0}' and 生产企业='{1}' and 进价={2} and 会计日 >= #" & d & "# and 会计日 < #" & d1 & "#",dr("商品名称"),dr("生产企业"),dr("进价")))
       
        '按销售/生产企业/指定医院
    ElseIf dr("返利类型") = "按销售/生产企业/指定医院" Then       '以药品名称\生产企业\指定医院\进价,为条件
        dr("返利数量") = DataTables("批发及退货报表2016").Compute("sum(数量)",CExp(" 商品名称='{0}' and 生产企业='{1}' and 进价='{2}' and 客户编码={3} and 会计日 >= #" & d & "# and 会计日 < #" & d1 & "#",dr("商品名称"),dr("生产企业"),dr("进价"),dr("客户编码")))
       
        '按销售/生产企业/指定医院/不按单价
    ElseIf dr("返利类型") = "按销售/生产企业/指定医院" Then       '以药品名称\生产企业\指定医院\进价,为条件
        dr("返利数量") = DataTables("批发及退货报表2016").Compute("sum(数量)",CExp(" 商品名称='{0}' and 生产企业='{1}'and 客户编码={2} and 会计日 >= #" & d & "# and 会计日 < #" & d1 & "#",dr("商品名称"),dr("生产企业"),dr("客户编码")))
       
        '按销售/生产企业/二级医院
    ElseIf dr("返利类型") = "按销售/生产企业/二级医院" Then       '以药品名称\生产企业\二级医院\进价,为条件
        dr("返利数量") = DataTables("批发及退货报表2016").Compute("sum(数量)",CExp(" 商品名称='{0}' and 生产企业='{1}' and 进价='{2}' and 按医院级别='二级' and 会计日 >= #" & d & "# and 会计日 < #" & d1 & "#",dr("商品名称"),dr("生产企业"),dr("进价")))
       
        '按销售/生产企业/托管医院
    ElseIf dr("返利类型") = "按销售/生产企业/托管医院" Then       '以药品名称\生产企业\托管医院\进价,为条件
        dr("返利数量") = DataTables("批发及退货报表2016").Compute("sum(数量)",CExp(" 商品名称='{0}' and 生产企业='{1}' and 进价='{2}' and 客户编码 in ('1290' ,'2848' ,'2765' ,'1238' ,'1283' ,'1286' ,'1285' ,'1284' ,'1561','1292' ,'2898' ,'6294' ,'2405','4072' ,'2659' ,'6340' ,'0481' ,'0626' ,'6434' ,'6435' ,'6422' ,'6427','0590' ,'6352') and 会计日 >= #" & d & "# and 会计日 < #" & d1 & "#",dr("商品名称"),dr("生产企业"),dr("进价")))
       
        '按销售/供应商/生产企业/托管医院
    ElseIf dr("返利类型") = "按销售/供应商/生产企业/托管医院" Then       '以药品名称\生产企业\托管医院\进价,为条件
        dr("返利数量") = DataTables("批发及退货报表2016").Compute("sum(数量)",CExp(" 商品名称='{0}' and 生产企业='{1}' and 进价='{2}'and 供应商编码='{3}'  and 客户编码 in ('1290' ,'2848' ,'2765' ,'1238' ,'1283' ,'1286' ,'1285' ,'1284' ,'1561','1292' ,'2898' ,'6294' ,'2405','4072' ,'2659' ,'6340' ,'0481' ,'0626' ,'6434' ,'6435' ,'6422' ,'6427','0590' ,'6352') and 会计日 >= #" & d & "# and 会计日 < #" & d1 & "#",dr("商品名称"),dr("生产企业"),dr("进价"),dr("供应商编码")))
       
        '按销售/生产企业/非托管医院
    ElseIf dr("返利类型") = "按销售/生产企业/非托管医院" Then       '以药品名称\生产企业\托管医院\进价,为条件
        dr("返利数量") = DataTables("批发及退货报表2016").Compute("sum(数量)",CExp(" 商品名称='{0}' and 生产企业='{1}' and 进价='{2}' and 客户编码 not in ('1290' ,'2848' ,'2765' ,'1238' ,'1283' ,'1286' ,'1285' ,'1284' ,'1561','1292' ,'2898' ,'6294' ,'2405','4072' ,'2659' ,'6340' ,'0481' ,'0626' ,'6434' ,'6435' ,'6422' ,'6427','0590' ,'6352') and 会计日 >= #" & d & "# and 会计日 < #" & d1 & "#",dr("商品名称"),dr("生产企业"),dr("进价")))
       
        '按销售/供应商/生产企业/非托管医院
    ElseIf dr("返利类型") = "按销售/供应商/生产企业/非托管医院" Then       '以药品名称\生产企业\托管医院\进价,为条件
        dr("返利数量") = DataTables("批发及退货报表2016").Compute("sum(数量)",CExp(" 商品名称='{0}' and 生产企业='{1}' and 进价='{2}'and 供应商编码 ='{3}'  and 客户编码 not in ('1290' ,'2848' ,'2765' ,'1238' ,'1283' ,'1286' ,'1285' ,'1284' ,'1561','1292' ,'2898' ,'6294' ,'2405','4072' ,'2659' ,'6340' ,'0481' ,'0626' ,'6434' ,'6435' ,'6422' ,'6427','0590' ,'6352') and 会计日 >= #" & d & "# and 会计日 < #" & d1 & "#",dr("商品名称"),dr("生产企业"),dr("进价"),dr("供应商编码")))
       
        '按销售/生产企业/乡镇卫生院(一级)
    ElseIf dr("返利类型") = "按销售/生产企业/乡镇卫生院(一级)" Then       '以药品名称\生产企业\乡镇卫生院(一级)\进价,为条件
        dr("返利数量") = DataTables("批发及退货报表2016").Compute("sum(数量)",CExp(" 商品名称='{0}' and 生产企业='{1}' and 进价='{2}' and 按医院级别='乡镇卫生院(一级)' and 会计日 >= #" & d & "# and 会计日 < #" & d1 & "#",dr("商品名称"),dr("生产企业"),dr("进价")))
       
    End If
   
Next

 回到顶部
总数 12 上一页 1 2