支票和付款的空 'Invoice Date' 错误
Empty 'Invoice Date' error on Checks and Payments
我在尝试保存支票和付款记录时遇到错误。
这个过程是当我点击 'Actions' 下的 'Pay Bill/Apply Adjustments' (AP301000) 时,我被重定向到支票和付款 (AP302000) 屏幕。当我尝试保存记录时,我得到了以下堆栈跟踪。
Error: Inserting 'Payment' record raised at least one error. Please review the errors.
Error: 'Invoice Date' cannot be empty.
at PX.Data.PXUIFieldAttribute.CommandPreparing(PXCache sender, PXCommandPreparingEventArgs e) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Descriptor\Attribute.cs:line 3684
at PX.Data.PXCache.OnCommandPreparing(String name, Object row, Object value, PXDBOperation operation, Type table, FieldDescription& description) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Cache\ModelEventHandling.cs:line 146
at PX.Data.PXTableAttribute.PrepareParametersForInsert(PXCache sender, Object row, Type[] tables, ISqlDialect dialect, Boolean audit, List`1[] pars) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Descriptor\Attributebase.cs:line 1123
at PX.Data.PXTableAttribute.PersistInserted(PXCache sender, Object row) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Descriptor\Attributebase.cs:line 990
at PX.Data.PXCache`1.PersistInserted(Object row, Boolean bypassInterceptor) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Cache\Model.cs:line 6550
at PX.Data.PXCache`1.Persist(PXDBOperation operation) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Cache\Model.cs:line 6090
at PX.Data.PXGraph.Persist(Type cacheType, PXDBOperation operation) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Graph\Graph.cs:line 4402
at PX.Data.PXGraph.Persist() in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Graph\Graph.cs:line 4322
at PX.Objects.AP.APPaymentEntry.Persist() in C:\Bld\AC-FULL2019R18-JOB1\Sources\WebSites\Pure\PX.Objects\AP\APPaymentEntry.cs:line 1468
at PX.Data.PXSave`1.d__2.MoveNext() in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Descriptor\Action\CommonActions.cs:line 73
at PX.Data.PXAction`1.d__32.MoveNext() in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Descriptor\Action\PXAction.cs:line 954
at PX.Data.PXAction`1.d__32.MoveNext() in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Descriptor\Action\PXAction.cs:line 896
at PX.Web.UI.PXBaseDataSource.tryExecutePendingCommand(String viewName, String[] sortcolumns, Boolean[] descendings, Object[] searches, Object[] parameters, PXFilterRow[] filters, DataSourceSelectArguments arguments, Boolean& closeWindowRequired, Int32& adapterStartRow, Int32& adapterTotalRows) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Web.UI\Controls\Data\DataSource.cs:line 2592
at PX.Web.UI.PXBaseDataSource.ExecuteSelect(String viewName, DataSourceSelectArguments arguments, PXDSSelectArguments pxarguments) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Web.UI\Controls\Data\DataSource.cs:line 1983
巧合的是我有自定义字段显示文本 'Invoice Date'。所以,我做的第一件事就是在 PXDefault 属性中将 PersistingCheck 置为空。
[PXDefault(PersistingCheck = PXPersistingCheck.Nothing)]
但是还是没有解决问题。
所以,我取消发布定制,问题仍然存在。最后,我什至从数据库中删除了自定义字段(注意:该字段可以为空),以确保我的自定义不会导致问题。但这也没有用。
在尝试查找具有特定显示文本的 DAC 字段时,我找到了一些字段,但这些字段似乎与这些屏幕的图表无关。
谢谢。
看起来很奇怪,我没有看到任何具有 "Invoice Date" 显示名称的相关字段,这可能会导致问题。由于 IIS 数据缓存,我遇到了类似的奇怪问题。
我建议执行以下操作:
- 重新启动 IIS
- 删除位于此处某处的临时 ASP.NET 文件
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files
- 删除临时自定义文件
然后确定问题不在您的自定义中
- 例如,将您的自定义字段从 "Invoice Date" 重命名为 "Invoice Date 1"
- 再次发布您的定制
- 再次尝试您的步骤并验证错误消息是否仍然存在 - 您看到的是哪个显示名称,"Invoice Date" 或 "Invoice Date 1"?
我在尝试保存支票和付款记录时遇到错误。
这个过程是当我点击 'Actions' 下的 'Pay Bill/Apply Adjustments' (AP301000) 时,我被重定向到支票和付款 (AP302000) 屏幕。当我尝试保存记录时,我得到了以下堆栈跟踪。
Error: Inserting 'Payment' record raised at least one error. Please review the errors.
Error: 'Invoice Date' cannot be empty.
at PX.Data.PXUIFieldAttribute.CommandPreparing(PXCache sender, PXCommandPreparingEventArgs e) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Descriptor\Attribute.cs:line 3684
at PX.Data.PXCache.OnCommandPreparing(String name, Object row, Object value, PXDBOperation operation, Type table, FieldDescription& description) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Cache\ModelEventHandling.cs:line 146
at PX.Data.PXTableAttribute.PrepareParametersForInsert(PXCache sender, Object row, Type[] tables, ISqlDialect dialect, Boolean audit, List`1[] pars) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Descriptor\Attributebase.cs:line 1123
at PX.Data.PXTableAttribute.PersistInserted(PXCache sender, Object row) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Descriptor\Attributebase.cs:line 990
at PX.Data.PXCache`1.PersistInserted(Object row, Boolean bypassInterceptor) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Cache\Model.cs:line 6550
at PX.Data.PXCache`1.Persist(PXDBOperation operation) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Cache\Model.cs:line 6090
at PX.Data.PXGraph.Persist(Type cacheType, PXDBOperation operation) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Graph\Graph.cs:line 4402
at PX.Data.PXGraph.Persist() in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Graph\Graph.cs:line 4322
at PX.Objects.AP.APPaymentEntry.Persist() in C:\Bld\AC-FULL2019R18-JOB1\Sources\WebSites\Pure\PX.Objects\AP\APPaymentEntry.cs:line 1468
at PX.Data.PXSave`1.d__2.MoveNext() in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Descriptor\Action\CommonActions.cs:line 73
at PX.Data.PXAction`1.d__32.MoveNext() in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Descriptor\Action\PXAction.cs:line 954
at PX.Data.PXAction`1.d__32.MoveNext() in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Data\Descriptor\Action\PXAction.cs:line 896
at PX.Web.UI.PXBaseDataSource.tryExecutePendingCommand(String viewName, String[] sortcolumns, Boolean[] descendings, Object[] searches, Object[] parameters, PXFilterRow[] filters, DataSourceSelectArguments arguments, Boolean& closeWindowRequired, Int32& adapterStartRow, Int32& adapterTotalRows) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Web.UI\Controls\Data\DataSource.cs:line 2592
at PX.Web.UI.PXBaseDataSource.ExecuteSelect(String viewName, DataSourceSelectArguments arguments, PXDSSelectArguments pxarguments) in C:\Bld\AC-FULL2019R18-JOB1\Sources\NetTools\PX.Web.UI\Controls\Data\DataSource.cs:line 1983
巧合的是我有自定义字段显示文本 'Invoice Date'。所以,我做的第一件事就是在 PXDefault 属性中将 PersistingCheck 置为空。
[PXDefault(PersistingCheck = PXPersistingCheck.Nothing)]
但是还是没有解决问题。 所以,我取消发布定制,问题仍然存在。最后,我什至从数据库中删除了自定义字段(注意:该字段可以为空),以确保我的自定义不会导致问题。但这也没有用。
在尝试查找具有特定显示文本的 DAC 字段时,我找到了一些字段,但这些字段似乎与这些屏幕的图表无关。
谢谢。
看起来很奇怪,我没有看到任何具有 "Invoice Date" 显示名称的相关字段,这可能会导致问题。由于 IIS 数据缓存,我遇到了类似的奇怪问题。
我建议执行以下操作:
- 重新启动 IIS
- 删除位于此处某处的临时 ASP.NET 文件
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files
- 删除临时自定义文件
然后确定问题不在您的自定义中
- 例如,将您的自定义字段从 "Invoice Date" 重命名为 "Invoice Date 1"
- 再次发布您的定制
- 再次尝试您的步骤并验证错误消息是否仍然存在 - 您看到的是哪个显示名称,"Invoice Date" 或 "Invoice Date 1"?