Reabrindo cotações ganhas no Dynamics 365 Sales Professional/Enterprise (C#)
Primeiro, precisamos alterar o Status e o motivo do status da cotação de volta para Rascunho e em Andamento .
Depois de fazermos modificações na cotação, ela precisa ser definida como Ativa.
E por fim colocar ela com o Status ganha novamente.
1. Colocando uma Quote em Rascunho
Guid quoteID = new Guid("9cc66ad5-2506-4394-854d-f60c35185d96");
Entity quote = new Entity("quote", quoteID);
quote["statecode"] = new OptionSetValue(0); // Draft
quote["statuscode"] = new OptionSetValue(1); // In Progress
service.Update(quote);
ExecuteTransactionRequest transactionRequest = new ExecuteTransactionRequest()
{
Requests = new OrganizationRequestCollection(),
ReturnResponses = true,
};
ExecuteTransactionResponse transactionResponse;
Guid quoteID = new Guid("9cc66ad5-2506-4394-854d-f60c35185d96");
2. Ativando uma Cotação em Rascunho
Entity quote = new Entity("quote", quoteID);
quote["statecode"] = new OptionSetValue(1); // Active
quote["statuscode"] = new OptionSetValue(2); // In Progress
UpdateRequest updateRequest = new UpdateRequest()
{
Target = quote,
};
transactionRequest.Requests.Add(updateRequest);
3. Fechando a cotação para Ganha
Entity quoteClose = new Entity("quoteclose");
quoteClose["subject"] = "Quote Close" + DateTime.Now.ToString();
quoteClose["quoteid"] = quote.ToEntityReference();
WinQuoteRequest winQuoteRequest = new WinQuoteRequest()
{
QuoteClose = quoteClose,
Status = new OptionSetValue(-1),
};
transactionRequest.Requests.Add(winQuoteRequest);
transactionResponse = (ExecuteTransactionResponse)service.Execute(transactionRequest);
Nenhum comentário:
Postar um comentário