Dim tp As TimeSpan
Dim y,m,d1 As Integer
For Each d As DataRow In DataTables("租户台账").DataRows
If d.IsNull("终止日期") OrElse d.IsNull("入住日期") Then
d("租期") = Nothing
Else
DateYMD(d("终止日期").adddays(1),d("入住日期"),y,m,d1)
d("租期") = y*12+m+d1/30
End If
If d("房屋状态") = "空置中" Or d("房屋状态") = "已超期" Or d("房屋状态") = "预订中" Then
If d("房屋状态") = "已超期" Then
d("上一终止日期") = d("终止日期")
d("上一合同租金") = d("月租金")
d("上一合同号") = d("合同号")
End If
Dim da As Date = d("上一终止日期")
If da <> "#0001-01-01 0:00:00#"
tp = Date.Today - da
d("空置天数") = tp.TotalDays
End If
End If
Next
'msgbox(1)
Dim g As New GroupTableBuilder("当天空置", DataTables("租户台账"))
g.Groups.AddDef("卧室号")
g.Totals.AddDef("ID", AggregateEnum.Count, "空置数量")
g.Totals.AddDef("空置天数")
g.Totals.AddDef("空置成本")
g.Totals.AddDef("每天单价")
g.SubTotal = True
g.Filter = "[房屋状态] = '空置中' or [房屋状态] = '已超期' Or [房屋状态] = '预订中'"
g.Build()
Dim sj As Date = DataTables("人员登记表").Compute("max(登陆时间)")
'msgbox(sj)
Dim r As Integer = Tables("空置统计").Rows.Count - 1
Dim dr As DataRow = DataTables("空置统计").DataRows(r)
Dim rq1 As Date = dr("日期")
Dim t As TimeSpan = sj - rq1
'msgbox(t.TotalDays)
If t.TotalDays >= 1 Then
Dim kzzz As Integer = DataTables("当天空置").Compute("sum(空置数量)","[卧室号] like '%居%'")
Dim kzdj As Integer = DataTables("当天空置").Compute("sum(空置数量)") - kzzz
Dim zz As Integer = DataTables("租户台账").Compute("count(卧室号)","[卧室号] like '%居%'")
Dim dj As Integer = DataTables("租户台账").Compute("count(卧室号)") -zz
'msgbox("kzzz" & kzzz)
'msgbox("kzdj" & kzdj)
'msgbox("zz" & zz)
'msgbox("dj" & dj)
'msgbox(3)
With Tables("空置统计")
.AddNew()
.current("空置单间数") = kzdj
.current("空置整租数") = kzzz
.current("空置总房数") = kzdj + kzzz
.current("单间总数") = dj
.current("整租总数") = zz
.current("房间总数") = dj + zz
.Current("日期") = sj
.Current("空置总成本") = Tables("当天空置").Compute("sum(空置成本)")
.Current("空置总天数") = Tables("当天空置").Compute("sum(空置天数)")
.Current("每天空置成本") = Tables("当天空置").Compute("sum(每天单价)")
End With
End If
'msgbox(4)
Tables("租户台账").Sort = "[排序] "