protected virtual bool AskProcess(List <Contact> list)
        {
            if (Operations.Current.CampaignID == null)
            {
                return(false);
            }
            CRCampaign campaign = PXSelect <CRCampaign,
                                            Where <CRCampaign.campaignID, Equal <Current <CampaignOperationParam.campaignID> > > >
                                  .Select(this);

            if (Operations.Current.Action == CampaignOperationParam.ActionList.Update)
            {
                return(PXView.AskExt(this, "UpdateMembers", null, (s, e) =>
                {
                    Operations.Current.Status = campaign != null ? campaign.DefaultMemberStatus : null;
                }) == WebDialogResult.OK && Operations.Current.Status != null);
            }

            if (Operations.Current.Action == CampaignOperationParam.ActionList.Remove)
            {
                return(Operations.Current.CampaignID != null &&
                       Operations.Ask(Messages.AskConfirmation,
                                      string.Format(Messages.ConfirmRemoving, list.Count),
                                      MessageButtons.YesNoCancel) == WebDialogResult.Yes);
            }

            return(PXView.AskExt(this, "AddMembers", null, (s, e) =>
            {
                Operations.Current.Status = campaign != null ? campaign.DefaultMemberStatus : null;
            }) == WebDialogResult.OK && Operations.Current.Status != null);
        }
 protected override bool AskAdditionalParameters(IEnumerable <object> targets)
 {
     return(PXView.AskExt(Graph, PropertiesViewName, null, (graph, name) => FillPropertyValue()) == WebDialogResult.OK);
 }