自定义默认库

Customization Default library

有人可以帮我用acumatica吗?我有一个应用程序, 使用 acumatica 库连接到 acumatica:Auth,Default_18.200.001,来自这里的 RESTClient:https://github.com/Acumatica/AcumaticaRESTAPIClientForCSharp 我正在像子模块一样使用它 - 如果某些内容会在 git - 我总是可以更新它

我需要将自定义字段添加到项目表单。我做到了 - 添加字段,发布更改。之后,我创建了一个从默认端点继承它的新端点 - 并且在使用 Project 实体时新字段可供我使用。我通过创建继承自 api 的 类 和覆盖 GetEntityName() 方法的基本模型来实现这一点。

如果我需要更改字段,我将不得不创建新的继承 类。

也许有一些支持自定义字段的标准方法?我就是没找到。

我的 Api 分机:

public class ProjectExtApi : EntityAPI<ProjectExt>
    {
        public ProjectExtApi(Configuration configuration) : base(configuration)
        { }

        protected override string GetEntityName()
        {
            return "Project";    //base code: return typeof(EntityType).Name;
        }
    }

和型号:

[DataContract]
public class ProjectExt : Project
{
    [DataMember(Name = "TestDate", EmitDefaultValue = false)]
    public DateTimeValue TestDate { get; set; }
}

我的回答与 Acumatica 产品中的自定义字段有关。自定义字段应添加 DAC 扩展(PXCacheExtension class),示例:

public class MyContractExt : PXCacheExtension<Contract>
{
   #region UsrDateTime
   [PXDBDateAndTime]
   public virtual DateTime? UsrDateTime { get; set; }
   public abstract class usrDateTime : BqlDateTime.Field<usrDateTime> { }
   #endregion
}

请注意,Acumatica 中的 PMProject DAC 继承自 Contract DAC,该字段将保留在 Contract table 中。 如果该字段需要保存在数据库中(使用 PXDBxyz.. 属性而不是 PXxyz..),则需要数据库脚本。

建议添加自定义字段。在自定义的数据访问部分创建自定义字段时,向导将自动创建数据库脚本以将列添加到 table.

外部link,教程: https://www.acu-connect.com/2019/02/27/customizing-acumatica-erp-adding-a-new-field-to-an-existing-screen/