Sets the state of an opportunity to Lost.
//# The following code example shows how to use the LoseOpportunity message. // Set up the CRM service. CrmAuthenticationToken token = new CrmAuthenticationToken(); // You can use enums.cs from the SDK\Helpers folder to get the enumeration for Active Directory authentication. token.AuthenticationType = 0; token.OrganizationName = "AdventureWorksCycle"; CrmService service = new CrmService(); service.Url = "http://: /mscrmservices/2007/crmservice.asmx"; service.CrmAuthenticationTokenValue = token; service.Credentials = System.Net.CredentialCache.DefaultCredentials; //Set up the data required for this sample. // Create an account for the opportunity's potential customer. account potentialCustomer = new account(); potentialCustomer.name = "Adventure Works Cycle"; Guid createdAccountId = service.Create(potentialCustomer); // Build a query for US Dollar currency. QueryByAttribute dollarQuery = new QueryByAttribute(); dollarQuery.EntityName = EntityName.transactioncurrency.ToString(); dollarQuery.Attributes = new string[] { "currencyname" }; dollarQuery.Values = new string[] { "US Dollar" }; // Be aware that using AllColumns may adversely affect // performance and cause unwanted cascading in subsequent // updates. A best practice is to retrieve the least amount of // data required. dollarQuery.ColumnSet = new AllColumns(); // Create the US currency request. RetrieveMultipleRequest dollarRequest = new RetrieveMultipleRequest(); dollarRequest.Query = dollarQuery; // Get US currency to use in the opportunity. RetrieveMultipleResponse dollarResponse = (RetrieveMultipleResponse)service.Execute(dollarRequest); transactioncurrency usCurrency = (transactioncurrency)dollarResponse.BusinessEntityCollection.BusinessEntities[0]; // Create an opportunity. opportunity loseOpportunity = new opportunity(); loseOpportunity.customerid = new Customer(); loseOpportunity.customerid.type = EntityName.account.ToString(); loseOpportunity.customerid.Value = createdAccountId; loseOpportunity.name = "SDK Sample for LoseOpportunity Message"; loseOpportunity.transactioncurrencyid = new Lookup(); loseOpportunity.transactioncurrencyid.type = EntityName.transactioncurrency.ToString(); loseOpportunity.transactioncurrencyid.Value = usCurrency.transactioncurrencyid.Value; Guid loseOpportunityId = service.Create(loseOpportunity); // Create an opportunityclose object. opportunityclose oppClose = new opportunityclose(); // Set the opportunityclose properties. oppClose.subject = "SDK Sample for LoseOpportunity Message"; // Set the opportunityid to an existing opportunity. oppClose.opportunityid = new Lookup(); oppClose.opportunityid.type = EntityName.opportunity.ToString(); oppClose.opportunityid.Value = loseOpportunityId; // Create the request. LoseOpportunityRequest loseOppReq = new LoseOpportunityRequest(); loseOppReq.OpportunityClose = oppClose; // A status of -1 will have the platform set the status to the appropriate value. loseOppReq.Status = -1; // Execute the request. service.Execute(loseOppReq);