Choose your path Increase your proficiency with the Dynamics 365 applications that you already use and learn more about the apps that interest you. Up your game with a learning path tailored to today's Dynamics 365 masterminds and designed to prepare you for industry-recognized Microsoft certifications.
Visit Microsoft Learn
2020 release wave 1 Discover the latest updates and new features to Dynamics 365 planned through September 2020
Release overview guides and videos Release Plan | Preview 2020 Release Wave 1 Timeline
Ace your Dynamics 365 deployment with packaged services delivered by expert consultants. | Explore service offerings
Connect with the ISV success team on the latest roadmap, developer tool for AppSource certification, and ISV community engagements | ISV self-service portal
The FastTrack program is designed to help you accelerate your Dynamics 365 deployment with confidence.
FastTrack Program | Finance TechTalks | Customer Engagement TechTalks | Upcoming TechTalks
invoice header schema names
invoice details schema names
my requirement is when i create a record in invoice header these details are shown in sub grid invoice details.
please suggest me,what can i do what are the steps i will follow.
i have attached my logic code please look it on.please suggest me real time scenario's websites,blogs to learn .
public class invoice : IPlugin
public void Execute(IServiceProvider serviceProvider)
//Extract the tracing service for use in debugging sandboxed plug-ins.
ITracingService tracingService =
// Obtain the execution context from the service provider.
IPluginExecutionContext context = (IPluginExecutionContext)
// Obtain the organization service reference.
IOrganizationServiceFactory serviceFactory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory));
IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId);
if (context.InputParameters.Contains("Target") && context.InputParameters["Target"] is Entity)
Entity entity = (Entity)context.InputParameters["Target"];
if (entity.LogicalName != "new_invoiceheaderId")
decimal amount = ((Money)entity.Attributes["new_amount"]).Value;
int terms = Convert.ToInt32(entity.Attributes["new_terms"]);
int invoiceday = Convert.ToInt32(entity.Attributes["new_invoiceday"]);
for (int i = 0; 1 < terms; i++)
Entity invoicedetails = new Entity();
invoicedetails.LogicalName = "new_invoicedetails";
invoicedetails["new_installmentamount"] = new Money(amount / terms);
invoicedetails["new_invoicedate"] = new DateTime(DateTime.Now.Year, DateTime.Now.AddMonths(1).Month, invoiceday);
invoicedetails["new_invoiceId"] = new EntityReference("new_invoice", entity.Id);
catch (Exception ex)
throw new Exception("Exception from invoice plugin" + ex.Message);
Business Applications communities