例如,在屏幕CR301000中,源字段现在有5个项目,但我想在此列出6个不同的项目,请建议如何操作.谢谢.
你可以通过几种方式做到这一点.
1)自定义以创建自定义字符串/ int列表,然后覆盖BLC中的dac属性以指向您的自定义列表.
首先创建自定义字符串列表:
public class CustomSourceAttribute : PXStringListAttribute { public const string _LEADPROSPECT = "1"; public const string _INITIALCONTACT = "2"; public const string _QUALIFIED = "3"; public const string _INITIALPRICE = "4"; public const string _PROPOSALSENT = "5"; public const string _POSITIVEPROPOSAL = "6"; public const string _VERBALCOMMIT = "7"; public const string _READYFORCONTRACT = "R"; public const string _CONTRACTSENT = "8"; public const string _CONTRACTSIGNED = "9"; public const string _CLOSEDLOST = "0"; public const string _TARGET = "T"; public CustomSourceAttribute() : base(new string[] { _LEADPROSPECT, _INITIALCONTACT, _QUALIFIED, _INITIALPRICE, _PROPOSALSENT, _POSITIVEPROPOSAL, _VERBALCOMMIT, _READYFORCONTRACT, _CONTRACTSENT, _CONTRACTSIGNED, _CLOSEDLOST, _TARGET }, new string[] { "Lead/Prospecting", "Initial Contact", "Qualified", "Initial Pricing Sent", "Proposal Sent", "Positive Proposal Discussions", "Verbal Commitment", "Ready for Contract", "Contract Sent", "Contract Signed", "Closed Lost", "Target" }) { } }
然后覆盖BLC扩展中的dac属性:
[PXDBString(1, IsFixed = true)] [PXUIField(DisplayName = "Stage")] [CustomSourceAttribute] [PXDefault(CustomSourceAttribute._INITIALCONTACT)] [PXMassUpdatableField] protected void CROpportunity_StageID_CacheAttached(PXCache cache) { }
此示例来自商机屏幕,但同样适用于带有线索的情况
2)自动化步骤提供新值.
请参阅此处了解自动化步骤位置
第二种方式不需要定制,但如果已经定义了自动化步骤,则需要更多工作.您需要为存在的每个步骤创建自定义列表.
对于像Leads这样的东西,我会选择1,因为有很多步骤