предположим, на экране SO301000 у меня есть PXSelector:
namespace PX.Objects.SO
{
public class SOOrderExt : PXCacheExtension<PX.Objects.SO.SOOrder>
{
#region UsrOrderByContact
[PXDBInt]
[PXDefault(typeof(Contact),PersistingCheck=PXPersistingCheck.Nothing)]
[PXUIField(DisplayName="Ordered By")]
[PXSelector(
typeof(Search<Contact.contactID,
Where<Contact.bAccountID, Equal<Current<SOOrder.customerID>>,
And<Contact.contactType, Equal<ContactTypesAttribute.person>>>>),
new Type[]
{
typeof(Contact.lastName),
typeof(Contact.firstName),
typeof(Contact.phone1)
},
SubstituteKey = typeof(Contact.displayName)
)]
public virtual int? UsrOrderByContact { get; set; }
public abstract class usrOrderByContact : IBqlField { }
#endregion
}
}
И ASPX:
<px:PXSelector runat="server" ID="CstPXSelector15" DataField="UsrOrderByContact" AllowAddNew="True" AllowEdit="True" AutoAdjustColumns="True" />
Показывает список контактов на основе текущего клиента в заказе клиента.
Я хочу добавить новый контакт, поэтому я нажимаю значок карандаша рядом с селектором, и я получаю новое окно на экране CR302000.
Как передать значение текущего SOOrder.CustomerID в поле Contact.BAccountID на экране CR302000?