Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
更多的时候,流水账是区分产品的,例如下图的库存表:
此类流水账的设计方法和之前是一样,只需在条件表达式中,加入产品比较即可:
Select
Case e.DataCol.Name下载信息 [文件大小: 下载次数: ] | |
点击浏览该文件:管理项目1.table |
工程款就是可支配的款项吗?
明细表的查询按钮代码:改成下面的代码
DataTables("明细账").DeleteFor("")
dim f As New Filler
if vars("起始日期") is nothing or vars("截止日期") is nothing or vars("工程编号") is nothing then
messagebox.show("起始日期或截止日期为空或工程编号为空")
else
for each dr as datarow in datatables("单据明细").datarows
for each dc as datacol in datatables("明细账").datacols
if dr("科目名称")=dc.name and dr("日期")>=vars("起始日期") and dr("日期")<=vars("截止日期") and dr("工程编号")=vars("工程编号") then
dim drr as row=tables("明细账").addnew()
drr(dc.name)=dr("金额")
drr("日期")=dr("日期")
drr("摘要")=dr("摘要")
drr("单据编号")=dr("单据编号")
drr("科目类别")=dr("科目类别")
drr("可用款余额")=DataTables("明细账").Compute("Sum(工程款)")-DataTables("明细账").Compute("Sum(工资)")-DataTables("明细账").Compute("Sum(税金)")
end if
next
next
end if
流水账的话估计要这样才行。
DataTables("明细账").DataRows.Clear()
if vars("起始日期") is nothing or vars("截止日期") is nothing or vars("工程编号") is nothing then
messagebox.show("起始日期或截止日期为空或工程编号为空")
else
for each dr as datarow in datatables("单据明细").datarows
for each dc as datacol in datatables("明细账").datacols
if dr("科目名称")=dc.name and dr("日期")>=vars("起始日期") and dr("日期")<=vars("截止日期") and dr("工程编号")=vars("工程编号") then
dim drr as row=tables("明细账").addnew()
drr(dc.name)=dr("金额")
drr("日期")=dr("日期")
drr("摘要")=dr("摘要")
drr("单据编号")=dr("单据编号")
drr("科目类别")=dr("科目类别")
end if
next
next
end if
Dim dt As DataTable = DataTables("明细账")
Dim sum,sum1,sum2 As Double
For Each dr As DataRow In dt.DataRows
sum = dt.Compute("Sum(工程款)","[单据编号] = '" & dr("单据编号") & "' And [日期] <= #" & dr("日期") & "#")
sum1 = dt.Compute("Sum(工资)","[单据编号] = '" & dr("单据编号") & "' And [日期] <= #" & dr("日期") & "#")
sum2 = dt.Compute("Sum(税金)","[单据编号] = '" & dr("单据编号") & "' And [日期] <= #" & dr("日期") & "#")
dr("可用款余额") = sum - sum1 - sum2
Next
若6楼或7楼给个“结构设计图”就方便学习了!!
现在论坛很多程序设计得很好,即使看得懂的程序,也总感觉“思路不清晰”,模糊一片,稍一搬家就无法再次设计了。