到期提醒设计
假定有下图所示的一个表:
现在希望:
1、对于10天内即将到期的产品,用红低白字显示到期日期。
2、每次打开项目,如果有10天内即将到期的产品,就自动提示用户,并筛选出这些即将到期的产品。
设计步骤
1、首先增加一个自定义样式,名称为“到期”,红底白字。
2、设置表的DataColChanged事件代码,以便根据生产日期和到期天数,计算出到期日期:
Select
Case e.DataCol.Name
Case
"生产日期","保质天数"
If e.DataRow.IsNull("生产日期")
Then
e.DataRow("到期日期")
= Nothing
Else
e.DataRow("到期日期")
= e.DataRow("生产日期").AddDays(e.DataRow("保质天数"))
End
If
End Select
3、设置表的DrawCell事件代码,标出10天内即将到期的产品:
If
e.col.Name =
"到期日期"
Then
If e.Row.IsNull("到期日期")
= False
If e.Row("到期日期")
< Date.Today.AddDays(10)
Then
e.Style =
"到期"
End
If
End
If
End If
4、最后设置项目事件AfterOpenProject的代码,以便打开项目的时候,能够自动提示并显示即将到期的产品:
Dim
dt
As
Date =
Date.Today.AddDays(10)
Dim dr As
DataRow =
DataTables("库存表").Find("到期日期
<= #" & dt & "#")
If dr IsNot
Nothing
Then
MessageBox.Show("有产品即将到期!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Tables("库存表").Filter
= "到期日期 <= #" & dt &
"#"
MainTable
= Tables("库存表")
End If
本页地址:http://www.foxtable.com/webhelp/topics/2471.htm