guys here is my code trying to make plugins for account numbering
but account number generated randomly not according to the method
code is here :
protected override void ExecuteCrmPlugin(LocalPluginContext localContext)
{
var trace = localContext.TracingService;
if (localContext != null)
{ //The plugin context
var context = localContext.PluginExecutionContext;
var orgService = new OrganizationServiceContext(localContext.Organizati1 onService);
trace.Trace("Context", context.InputParameters);
if (context.InputParameters.Contains("Target") && context.InputParameters["Target"] is Entity)
{
var entityFrom = (Entity)context.InputParameters["Target"];
//Get New Connection
var newconnection = orgService.
CreateQuery<new_newconnectionapplication>().
Where(a => a.new_newconnectionapplicationId == entityFrom.Id).
FirstOrDefault();
// if (!newconnection.new_customerpaid.Value)
//{ return; }
//else
//Get Accounts Under the New Connection
List<Account> listOfAccounts = orgService
.CreateQuery<Account>()
.Where(a => a.new_new_newconnectionapplication_account_NewConnectionApplication.new_newconnectionapplicationId == entityFrom.Id)
.ToList();
//var digitLength = accountNumbering.new_NumberOfDisgits;
// throw new Exception(listOfAccount.Count.ToString());
foreach (var account in listOfAccounts)
{
//Get Number configuration for account
new_numberingconfiguration accountNumbering = orgService
.CreateQuery<new_numberingconfiguration>()
.Where(a => a.new_EntityName == "account")
.FirstOrDefault();
//if (string.IsNullOrWhiteSpace(account.AccountNumber))
// {
var lastRecordNumber = accountNumbering.new_LastRecordNumber;
var accountNumber = lastRecordNumber+1;
account.AccountNumber = accountNumber.ToString();
accountNumbering.new_LastRecordNumber = accountNumber;
orgService.UpdateObject(account);
orgService.UpdateObject(accountNumbering);
orgService.SaveChanges();
//var incValue = lastRecordIncrement(lastnumber.Value);
// item.AccountNumber = incValue + lastnumber.Value.ToString();
// orgService.UpdateObject(item);
// orgService.SaveChanges();
// }
}
}
}
else
throw new Exception("Context is null");
}
// TODO: Implement your custom Plug-in business logic.
//public static int lastRecordIncrement(int record)
//{
// int constantValue = 1;
// constantValue += record;
// return constantValue;
//}
// TODO: Implement your custom Plug-in business logic.
}
}
need ur support guys pleaseee
*This post is locked for comments