Показать сообщение отдельно
Старый 13.10.2011, 13:41   #1  
zkk is offline
zkk
Участник
 
14 / 10 (1) +
Регистрация: 16.02.2010
? При програмном закрытии сделки как неуспешной также отменять все связанные с ней действия тренинга
Сделка закрывается из самописной формы по следующему коду

Код:
          OpportunityState statecode = (OpportunityState)(rblStateCode.SelectedIndex + 1);

          CRMServiceConnection.CreateCRMService(OrgName).Update(opp);

            opportunityclose oppclose = new opportunityclose();
            oppclose.opportunityid = new Lookup();
            oppclose.opportunityid.type = EntityName.opportunity.ToString();
            oppclose.opportunityid.Value = new Guid(Request.QueryString["id"]);

            switch (statecode)
            {
                case OpportunityState.Won:
                    WinOpportunityRequest wor = new WinOpportunityRequest();
                    wor.OpportunityClose = oppclose;
                    wor.Status = statuscode;
                    CRMServiceConnection.CreateCRMService(OrgName).Execute(wor);
                    break;
                case OpportunityState.Lost:
                    LoseOpportunityRequest lor = new LoseOpportunityRequest();
                    lor.OpportunityClose = oppclose;
                    lor.Status = statuscode;
                    CRMServiceConnection.CreateCRMService(OrgName).Execute(lor);
                    break;
            }
Но встала задача одновременно если сделка не успешна, то дополнительно отменять все связанные с ней действия тренинга.

Не могу понять каким образом закрывать еще и связанные с ней действия тренинга при закрытии сделки. Подскажите как это можно сделать.

Сам код отмены действий тренинга вроде такой

Код:
SetStateServiceAppointmentRequest setStateReq = new SetStateServiceAppointmentRequest();
setStateReq.EntityId = new Guid(entityId);
setStateReq.ServiceAppointmentState = ServiceAppointmentState.Cancel;
setStateReq.ServiceAppointmentStatus = 9;
webService.Execute(setStateReq);