假如有个项目,有个样品编号的列,需要采用年份+分类号+四位流水号的形式(如2024A0001)自动生成,而且跨年后,流水号以自动从001开始(如2024A0001)。关于这种特殊格式的自动编号列,有以下几个问题:1.Foxtable中_identify自动编号的原理是怎样的?怎样实现循环和判断?
2.这种特殊要求表达式列是否能实现(个人研究了下,不能)?
3.如果通过代码来实现,怎样实现跨年后流水号自动的逻辑判定?
以下是我个人的尝试代码(在添加行的按钮onclick事件上添加),没有达到预期效果(跨年后流水号自动从0001开始),请各位大侠指教?
Dim y1 As Date = now
static y2 As Date = #12/31/2024#
Static i As String
Dim s As String = "A"
Dim ID As String
If y1 <= y2 Then
i += 1
ID = y1.Year & s & Format(i, "0000")
Tables("样品表").current("样品编号") = ID
Else
i = 0001
y2=y1.year+y2.month+y2.day
ID = y1.Year & s & Format(i, "0000")
Tables("样品表").current("样品编号") = ID
End If