有人知道如何将 CREATE VIEW SQL 语句推送到 Acumatica 定制项目中吗?
我知道如何在 SQL Management Studio 中执行此操作,但通过自定义项目执行此操作对于 Acumatica SaaS 客户非常有用。
最佳答案
您应该执行以下步骤:
在 Management Studio 中创建 SQL View (出于演示目的,让我坚持使用简单的 PositivePay View ):
CREATE VIEW [dbo].[PositivePay] AS SELECT APPayment.RefNbr, APPayment.ExtRefNbr, APRegister.DocDate, APRegister.OrigDocAmt, CashAccount.ExtRefNbr BankAccountID FROM APPayment JOIN APRegister ON APRegister.CompanyID = APPayment.CompanyID AND APRegister.RefNbr = APPayment.RefNbr JOIN CashAccount ON APPayment.CashAccountID = CashAccount.AccountID AND APPayment.CompanyID = CashAccount.CompanyID WHERE APPayment.CompanyID = 2 AND APPayment.DocType= 'CHK' GO
为新 DAC 定义关键字段并保存更改。对于 PositivePay,我们将 RefNbr 字段顶部的 PXDBString 属性的 IsKey 设置为 true:
[PXDBString(15, IsUnicode = true, InputMask = "", IsKey = true)] [PXUIField(DisplayName = "Ref Nbr")] public string RefNbr { get; set; }
点击DB Scripts,在DBObject Name中选择您的SQL View 名称,并将SQL脚本放入自定义脚本控件中,如下所示下面的图案:
IF EXISTS ( SELECT * FROM sys.views WHERE name = 'PositivePay' AND schema_id = SCHEMA_ID('dbo') ) DROP VIEW [dbo].[PositivePay] GO CREATE VIEW [dbo].[PositivePay] AS SELECT APPayment.RefNbr, APPayment.ExtRefNbr, APRegister.DocDate, APRegister.OrigDocAmt, CashAccount.ExtRefNbr BankAccountID FROM APPayment JOIN APRegister ON APRegister.CompanyID = APPayment.CompanyID AND APRegister.RefNbr = APPayment.RefNbr JOIN CashAccount ON APPayment.CashAccountID = CashAccount.AccountID AND APPayment.CompanyID = CashAccount.CompanyID WHERE APPayment.CompanyID = 2 AND APPayment.DocType= 'CHK' GO
关于acumatica - Acumatica 定制项目中的 CREATE VIEW 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46609215/