MS Access 2003。
我在子窗体后面有一个查询,它有一个像这样的sql语句:
SELECT ClientTotalInvoiceLineItems.*
, CDate(GetWeekEnding([WeekEnding1],[WeekEnding2],[WeekEnding3],[WeekEnding4],[WeekEnding5],[WeekEnding6])) AS WeekEnding
, CapturedInvoices.EnteredInvoiceNo, IIf([forms]![frmClientTotalInvoices]![frmClientTotalInvoicesSub].[Form].[NewRecord]=True,0,Ccur([ContractingFeesSubtotal])) AS Subtotal
, CCur([GSTAmount]) AS GST, CCur([TotalDue]) AS Total
, IIf(IsNull([ctlCreated]),'',[ctlCreated] & ' by ' & [ctlCreatedBy]) AS Added
FROM ClientTotalInvoiceLineItems
INNER JOIN CapturedInvoices
ON ClientTotalInvoiceLineItems.ctlSourceID = CapturedInvoices.CapturedInvoicedID
ORDER BY CDate(GetWeekEnding([WeekEnding1],[WeekEnding2],[WeekEnding3],[WeekEnding4],[WeekEnding5],[WeekEnding6])) DESC;
当表单出现在新记录中时,我会在以ccur开头的字段中获得#error。
因此,您可以看到我尝试在字段上放置一个Form.NewRecord表达式来测试它,但现在当我在窗体视图中尝试查看时,MSAccess崩溃。
如何在子表单的新记录字段中删除那些#error?
马尔科姆
答案 0 :(得分:0)
有一些方法可以解决这个问题,但是一种方法是让子窗体的记录源最初为空,然后在主窗体的插入后事件上填写记录源。
答案 1 :(得分:0)
我知道一个可能的错误是您没有正确嵌套表单;
它所在的主“容器”形式需要包含在语句中,如
[forms]![frmClientTotalInvoices]![frmClientTotalInvoicesSub].[Form].[NewRecord]
我假设frmClientTotalInvoices
是表单中最大的容器。