13.10.2011, 13:41 | #1 |
Участник
|
При програмном закрытии сделки как неуспешной также отменять все связанные с ней действия тренинга
Сделка закрывается из самописной формы по следующему коду
Код: 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); |
|
13.10.2011, 14:10 | #2 |
Чайный пьяница
|
Через RetrieveMultiple c фильтром по полю regardingobjectid получаете список таких действий и пробегаетесь по коллекции закрывая действия.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
За это сообщение автора поблагодарили: unpossible (1). |