以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]请教能设置共享代码 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=153040) |
-- 作者:沪上游客 -- 发布时间:2020/7/29 15:58:00 -- [求助]请教能设置共享代码 老师您好! 下面这段代码能正常使用,里面这行代码 DataTables("工程合同基础数据").SQLReplaceFor("项目资金当前余额","IsNull([应收款收入数],0) + IsNull([项目资金借入数],0) + IsNull([工抵房回款],0) + IsNull([超成本资金],0) - IsNull([建安发票开票数],0) - IsNull([项目资金还款数],0) - IsNull([支出合同应付款_已付数],0) - IsNull([工资支付数],0) - IsNull([其他成本支出数],0) - IsNull([税费报销支出],0) - IsNull([总部申报数],0) - IsNull([印花税_支出合同],0) - IsNull([印花税_固定资产],0) - IsNull([管理费汇总_合计],0) - IsNull([企业所得税_总部预交],0) - IsNull([固定资产_折旧资金支出],0) - IsNull([工抵房],0) - IsNull([税后列支_支出数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) 多处重复,请问能否把这段代码做成一个共享代码(有个命令名称),这样我修改时就不需要每行都,改一处就行了。不知道怎么做? 谢谢老师! If e.DataCol.Name = "金额" Or e.DataCol.Name = "类别" Then Dim dr = e.DataRow If e.DataRow("类别") = "借入" Or e.DataRow("类别") = "垫付资金" Then Dim jl As Decimal Dim zjdf As Decimal Dim dzsl As Decimal jl = DataTables("项目借款数据").Compute("Sum(金额)","主合同编号 = \'" & dr("主合同编号") & "\'And [类别] = \'借入\'") zjdf = DataTables("项目借款数据").Compute("Sum(金额)","主合同编号 = \'" & dr("主合同编号") & "\'And [类别] = \'垫付资金\'") dzsl = jl + zjdf DataTables("工程合同基础数据").SQLReplaceFor("项目资金借入数",dzsl,"合同编号 = \'" & dr("主合同编号") & "\'") DataTables("工程合同基础数据").SQLReplaceFor("项目资金借款余额","IsNull([项目资金借入数],0) - IsNull([项目资金还款数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) DataTables("工程合同基础数据").SQLReplaceFor("项目资金当前余额","IsNull([应收款收入数],0) + IsNull([项目资金借入数],0) + IsNull([工抵房回款],0) + IsNull([超成本资金],0) - IsNull([建安发票开票数],0) - IsNull([项目资金还款数],0) - IsNull([支出合同应付款_已付数],0) - IsNull([工资支付数],0) - IsNull([其他成本支出数],0) - IsNull([税费报销支出],0) - IsNull([总部申报数],0) - IsNull([印花税_支出合同],0) - IsNull([印花税_固定资产],0) - IsNull([管理费汇总_合计],0) - IsNull([企业所得税_总部预交],0) - IsNull([固定资产_折旧资金支出],0) - IsNull([工抵房],0) - IsNull([税后列支_支出数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) ElseIf e.DataRow("类别") = "还款" Or e.DataRow("类别") = "垫付返回" Then Dim hk As Decimal Dim dffh As Decimal Dim dzhk As Decimal hk = DataTables("项目借款数据").Compute("Sum(金额)","主合同编号 = \'" & dr("主合同编号") & "\'And [类别] = \'还款\'") dffh = DataTables("项目借款数据").Compute("Sum(金额)","主合同编号 = \'" & dr("主合同编号") & "\'And [类别] = \'垫付返回\'") dzhk = hk + dffh DataTables("工程合同基础数据").SQLReplaceFor("项目资金还款数",dzhk,"合同编号 = \'" & dr("主合同编号") & "\'") DataTables("工程合同基础数据").SQLReplaceFor("项目资金借款余额","IsNull([项目资金借入数],0) - IsNull([项目资金还款数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) DataTables("工程合同基础数据").SQLReplaceFor("项目资金当前余额","IsNull([应收款收入数],0) + IsNull([项目资金借入数],0) + IsNull([工抵房回款],0) + IsNull([超成本资金],0) - IsNull([建安发票开票数],0) - IsNull([项目资金还款数],0) - IsNull([支出合同应付款_已付数],0) - IsNull([工资支付数],0) - IsNull([其他成本支出数],0) - IsNull([税费报销支出],0) - IsNull([总部申报数],0) - IsNull([印花税_支出合同],0) - IsNull([印花税_固定资产],0) - IsNull([管理费汇总_合计],0) - IsNull([企业所得税_总部预交],0) - IsNull([固定资产_折旧资金支出],0) - IsNull([工抵房],0) - IsNull([税后列支_支出数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) ElseIf e.DataRow("类别") = "税金报销支付" Then Dim sjbxzc As Decimal sjbxzc = DataTables("项目借款数据").Compute("Sum(金额)","主合同编号 = \'" & dr("主合同编号") & "\'And [类别] = \'税金报销支付\'") DataTables("工程合同基础数据").SQLReplaceFor("税费报销支出",sjbxzc,"合同编号 = \'" & dr("主合同编号") & "\'") DataTables("工程合同基础数据").SQLReplaceFor("税费报销余额","IsNull([税费报销数],0) - IsNull([税费报销支出],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) DataTables("工程合同基础数据").SQLReplaceFor("项目资金当前余额","IsNull([应收款收入数],0) + IsNull([项目资金借入数],0) + IsNull([工抵房回款],0) + IsNull([超成本资金],0) - IsNull([建安发票开票数],0) - IsNull([项目资金还款数],0) - IsNull([支出合同应付款_已付数],0) - IsNull([工资支付数],0) - IsNull([其他成本支出数],0) - IsNull([税费报销支出],0) - IsNull([总部申报数],0) - IsNull([印花税_支出合同],0) - IsNull([印花税_固定资产],0) - IsNull([管理费汇总_合计],0) - IsNull([企业所得税_总部预交],0) - IsNull([固定资产_折旧资金支出],0) - IsNull([工抵房],0) - IsNull([税后列支_支出数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) ElseIf e.DataRow("类别") = "工资支付" Then Dim gzzf As Decimal gzzf = DataTables("项目借款数据").Compute("Sum(金额)","主合同编号 = \'" & dr("主合同编号") & "\'And [类别] = \'工资支付\'") DataTables("工资表").SQLReplaceFor("工资已付总数",gzzf,"主合同编号 = \'" & dr("主合同编号") & "\'") DataTables("工资表").SQLReplaceFor("工资发放余额","IsNull([工资总额],0) - IsNull([工资已付总数],0)","主合同编号 = \'" & dr("主合同编号") & "\'",True) DataTables("工程合同基础数据").SQLReplaceFor("工资支付数",gzzf,"合同编号 = \'" & dr("主合同编号") & "\'") DataTables("工程合同基础数据").SQLReplaceFor("工资单支付余额","IsNull([工资单],0) - IsNull([工资支付数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) DataTables("工程合同基础数据").SQLReplaceFor("项目资金当前余额","IsNull([应收款收入数],0) + IsNull([项目资金借入数],0) + IsNull([工抵房回款],0) + IsNull([超成本资金],0) - IsNull([建安发票开票数],0) - IsNull([项目资金还款数],0) - IsNull([支出合同应付款_已付数],0) - IsNull([工资支付数],0) - IsNull([其他成本支出数],0) - IsNull([税费报销支出],0) - IsNull([总部申报数],0) - IsNull([印花税_支出合同],0) - IsNull([印花税_固定资产],0) - IsNull([管理费汇总_合计],0) - IsNull([企业所得税_总部预交],0) - IsNull([固定资产_折旧资金支出],0) - IsNull([工抵房],0) - IsNull([税后列支_支出数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) ElseIf e.DataRow("类别") = "报销支付" Then Dim bxzc As Decimal bxzc = DataTables("项目借款数据").Compute("Sum(金额)","主合同编号 = \'" & dr("主合同编号") & "\'And [类别] = \'报销支付\'") DataTables("工程合同基础数据").SQLReplaceFor("其他成本支出数",bxzc,"合同编号 = \'" & dr("主合同编号") & "\'") DataTables("工程合同基础数据").SQLReplaceFor("其他成本余额","IsNull([其他成本_总计],0) - IsNull([其他成本支出数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) DataTables("工程合同基础数据").SQLReplaceFor("项目资金当前余额","IsNull([应收款收入数],0) + IsNull([项目资金借入数],0) + IsNull([工抵房回款],0) + IsNull([超成本资金],0) - IsNull([建安发票开票数],0) - IsNull([项目资金还款数],0) - IsNull([支出合同应付款_已付数],0) - IsNull([工资支付数],0) - IsNull([其他成本支出数],0) - IsNull([税费报销支出],0) - IsNull([总部申报数],0) - IsNull([印花税_支出合同],0) - IsNull([印花税_固定资产],0) - IsNull([管理费汇总_合计],0) - IsNull([企业所得税_总部预交],0) - IsNull([固定资产_折旧资金支出],0) - IsNull([工抵房],0) - IsNull([税后列支_支出数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) ElseIf e.DataRow("类别") = "折旧资金支出" Then Dim gdzczjzc As Decimal gdzczjzc = DataTables("项目借款数据").Compute("Sum(金额)","主合同编号 = \'" & dr("主合同编号") & "\'And [类别] = \'折旧资金支出\'") DataTables("工程合同基础数据").SQLReplaceFor("固定资产_折旧资金支出",gdzczjzc,"合同编号 = \'" & dr("主合同编号") & "\'") DataTables("工程合同基础数据").SQLReplaceFor("固定资产_折旧资金余额","IsNull([固定资产_折旧数],0) + IsNull([进项税汇总_固定资产],0) - IsNull([固定资产_折旧资金支出],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) DataTables("工程合同基础数据").SQLReplaceFor("项目资金当前余额","IsNull([应收款收入数],0) + IsNull([项目资金借入数],0) + IsNull([工抵房回款],0) + IsNull([超成本资金],0) - IsNull([建安发票开票数],0) - IsNull([项目资金还款数],0) - IsNull([支出合同应付款_已付数],0) - IsNull([工资支付数],0) - IsNull([其他成本支出数],0) - IsNull([税费报销支出],0) - IsNull([总部申报数],0) - IsNull([印花税_支出合同],0) - IsNull([印花税_固定资产],0) - IsNull([管理费汇总_合计],0) - IsNull([企业所得税_总部预交],0) - IsNull([固定资产_折旧资金支出],0) - IsNull([工抵房],0) - IsNull([税后列支_支出数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) ElseIf e.DataRow("类别") = "工抵房" Then Dim gdf As Decimal gdf = DataTables("项目借款数据").Compute("Sum(金额)","主合同编号 = \'" & dr("主合同编号") & "\'And [类别] = \'工抵房\'") DataTables("工程合同基础数据").SQLReplaceFor("工抵房",gdf,"合同编号 = \'" & dr("主合同编号") & "\'") DataTables("工程合同基础数据").SQLReplaceFor("工抵房余额","IsNull([工抵房],0) - IsNull([工抵房回款],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) DataTables("工程合同基础数据").SQLReplaceFor("项目资金当前余额","IsNull([应收款收入数],0) + IsNull([项目资金借入数],0) + IsNull([工抵房回款],0) + IsNull([超成本资金],0) - IsNull([建安发票开票数],0) - IsNull([项目资金还款数],0) - IsNull([支出合同应付款_已付数],0) - IsNull([工资支付数],0) - IsNull([其他成本支出数],0) - IsNull([税费报销支出],0) - IsNull([总部申报数],0) - IsNull([印花税_支出合同],0) - IsNull([印花税_固定资产],0) - IsNull([管理费汇总_合计],0) - IsNull([企业所得税_总部预交],0) - IsNull([固定资产_折旧资金支出],0) - IsNull([工抵房],0) - IsNull([税后列支_支出数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) ElseIf e.DataRow("类别") = "工抵房回款" Then Dim gdfhk As Decimal gdfhk = DataTables("项目借款数据").Compute("Sum(金额)","主合同编号 = \'" & dr("主合同编号") & "\'And [类别] = \'工抵房回款\'") DataTables("工程合同基础数据").SQLReplaceFor("工抵房回款",gdfhk,"合同编号 = \'" & dr("主合同编号") & "\'") DataTables("工程合同基础数据").SQLReplaceFor("工抵房余额","IsNull([工抵房],0) - IsNull([工抵房回款],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) DataTables("工程合同基础数据").SQLReplaceFor("项目资金当前余额","IsNull([应收款收入数],0) + IsNull([项目资金借入数],0) + IsNull([工抵房回款],0) + IsNull([超成本资金],0) - IsNull([建安发票开票数],0) - IsNull([项目资金还款数],0) - IsNull([支出合同应付款_已付数],0) - IsNull([工资支付数],0) - IsNull([其他成本支出数],0) - IsNull([税费报销支出],0) - IsNull([总部申报数],0) - IsNull([印花税_支出合同],0) - IsNull([印花税_固定资产],0) - IsNull([管理费汇总_合计],0) - IsNull([企业所得税_总部预交],0) - IsNull([固定资产_折旧资金支出],0) - IsNull([工抵房],0) - IsNull([税后列支_支出数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) ElseIf e.DataRow("类别") = "税后列支" Then Dim shlz As Decimal shlz = DataTables("项目借款数据").Compute("Sum(金额)","主合同编号 = \'" & dr("主合同编号") & "\'And [类别] = \'税后列支\'") DataTables("工程合同基础数据").SQLReplaceFor("税后列支_支出数",shlz,"合同编号 = \'" & dr("主合同编号") & "\'") DataTables("工程合同基础数据").SQLReplaceFor("税后列支_资金余额","IsNull([税后列支_合计],0) - IsNull([税后列支_支出数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) DataTables("工程合同基础数据").SQLReplaceFor("项目资金当前余额","IsNull([应收款收入数],0) + IsNull([项目资金借入数],0) + IsNull([工抵房回款],0) + IsNull([超成本资金],0) - IsNull([建安发票开票数],0) - IsNull([项目资金还款数],0) - IsNull([支出合同应付款_已付数],0) - IsNull([工资支付数],0) - IsNull([其他成本支出数],0) - IsNull([税费报销支出],0) - IsNull([总部申报数],0) - IsNull([印花税_支出合同],0) - IsNull([印花税_固定资产],0) - IsNull([管理费汇总_合计],0) - IsNull([企业所得税_总部预交],0) - IsNull([固定资产_折旧资金支出],0) - IsNull([工抵房],0) - IsNull([税后列支_支出数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) ElseIf e.DataRow("类别") = "超成本资金" Then Dim ccbzj As Decimal ccbzj = DataTables("项目借款数据").Compute("Sum(金额)","主合同编号 = \'" & dr("主合同编号") & "\'And [类别] = \'超成本资金\'") DataTables("工程合同基础数据").SQLReplaceFor("超成本资金",ccbzj,"合同编号 = \'" & dr("主合同编号") & "\'") DataTables("工程合同基础数据").SQLReplaceFor("项目资金当前余额","IsNull([应收款收入数],0) + IsNull([项目资金借入数],0) + IsNull([工抵房回款],0) + IsNull([超成本资金],0) - IsNull([建安发票开票数],0) - IsNull([项目资金还款数],0) - IsNull([支出合同应付款_已付数],0) - IsNull([工资支付数],0) - IsNull([其他成本支出数],0) - IsNull([税费报销支出],0) - IsNull([总部申报数],0) - IsNull([印花税_支出合同],0) - IsNull([印花税_固定资产],0) - IsNull([管理费汇总_合计],0) - IsNull([企业所得税_总部预交],0) - IsNull([固定资产_折旧资金支出],0) - IsNull([工抵房],0) - IsNull([税后列支_支出数],0)","合同编号 = \'" & dr("主合同编号") & "\'",True) End If End If |
-- 作者:有点蓝 -- 发布时间:2020/7/29 16:04:00 -- 这样? dim s as string = "IsNull([应收款收入数],0) + IsNull([项目资金借入数],0) + IsNull([工抵房回款],0) + IsNull([超成本资金],0) - IsNull([建安发票开票数],0) - IsNull([项目资金还款数],0) - IsNull([支出合同应付款_已付数],0) - IsNull([工资支付数],0) - IsNull([其他成本支出数],0) - IsNull([税费报销支出],0) - IsNull([总部申报数],0) - IsNull([印花税_支出合同],0) - IsNull([印花税_固定资产],0) - IsNull([管理费汇总_合计],0) - IsNull([企业所得税_总部预交],0) - IsNull([固定资产_折旧资金支出],0) - IsNull([工抵房],0) - IsNull([税后列支_支出数],0)" dim filter as string = "合同编号 = \'" & dr("主合同编号") & "\'" DataTables("工程合同基础数据").SQLReplaceFor("项目资金当前余额" ,s ,filter ,True)
|
-- 作者:沪上游客 -- 发布时间:2020/7/29 16:17:00 -- 谢谢老师! |