Quantcast
Channel: Microsoft Dynamics 365 Community
Viewing all 77179 articles
Browse latest View live

From AppSource to Solutions to Dynamics 365 Apps

$
0
0

In my previous blog post I presented the various different meanings that an App can have in Dynamics 365 Customer Engagement. Now that we’re aware of this jungle, let’s grab a machete and start making our way deeper into the heart of it, to understand how a system customizer can survive in there.

Before there was Microsoft AppSource for Dynamics 365, the methods available for distributing apps in a generic sense were pretty basic: you downloaded a zip file (or several) from a location provided by some party, then navigated to the solutions menu in your XRM environment and started importing them. When there were updates to those apps, you needed to repeat the procedure. If there were some other configuration steps needed in getting the application properly set up, you had to read the friendly manual and complete those. In a more tech savvy environment the Package Deployer might have been used here, but that was hardly a task for the accidental CRM administrator.

What AppSource aims to change in the Dynamics 365 app distribution process is similar to what the smartphone app stores did a decade ago, i.e. simplify the steps for the customer and also provide a better channel for app developers to deliver their updates. When you go to AppSource and choose to either install a free App or start a trial on a paid one, the next screen will provide an instance selector to determine where in your Office 365 tenant you want to put this App in. Also presented are the checkboxes for agreeing on both Microsoft’s as well as the ISV’s legal terms.

From here you’ll be taken into Dynamics 365 Administration Center. This part of the process nor the UI of the admin center isn’t very intuitive, so let’s pause here for a moment. While you’ll land on the Solutions view of an Instance after clicking on “Agree”, on the logical level we should be paying attention to the Applications tab instead. The chosen ISV (or MS) App will have been added as a row in the applications list, which applies to the whole tenant. In this example we see that North52 Business Process Activities is now available in our tenant. It doesn’t have any configuration options in this UI, but the Microsoft apps like Portal Add-on or Voice of the Customer both have an additional “Configure” button that is accessed via this Manage Applications screen.

If we click back to the Instances tab in the admin center, select one of our instances and click the Solutions icon on the right side, we’re now presented with the list of solutions available to this instance via the AppSource delivery channel. It is not the same as going to your XRM instance and clicking Settings – Solutions, as there can be more solutions within that instance. For example, the organization specific solutions that you’ve created as a container for your own customizations. Not even the managed/unmanaged status of those solution has anything to do with what’s shown in the admin center, because whatever zip files you imported directly into your XRM instance as a solution is only visible from within the XRM UI.

The solutions list in the admin center is also different in the way that it shows also the solutions you haven’t installed in the instance. These are applications that someone, either MS or your D365 admin, has made available in your tenant and possibly installed them into some other instance (a test sandbox, for example). To get them installed you don’t have to go to AppSource, rather you can start the process from here.

What makes this view so relevant for the Dynamics 365 instance administrator is that here’s where you’ll see what solutions have upgrades available. In the above example, Microsoft has released a new version of the Relationship Insights solution. Since they don’t want to accidentally break your dev/test/production orgs by changing the solutions on their own, they are rather giving you the controls to click on the “Update” icon for the particular instance when you’re ready for it. This same process is applied also for third party ISV solutions to deliver updated versions of their apps.

Now when we have deployed the app from AppSource and the Solutions view in the Dynamics 365 Administration Center for our chosen instance shows the status as “installed”, let’s use the Office 365 app launched to navigate to our Dynamics 365 start page, meaning home.dynamics.com. And… there’s nothing new here. Even if we click the “Sync” button to refresh the My Apps view, our AppSource app doesn’t appear. What gives?

At this point we need to take a step back from the UI and think about how these different components relate with one another. On the highest level we have AppSource, which is more of a marketing UI for products. From there we get Applications into our Dynamics 365 Administration Center. These manifest themselves as single solution rows for an instance when viewed via the admin center, but they can actually contain N separate solution files (look at Dynamics 365 Portals, for example). Finally, these solutions may or may not contain Apps – from 0 to N. This diagram illustrates these four conceptual levels and their relationships:

In our example we’ve installed North52, which is an administrator/customizer tool designed for “building simple or complex business rules using point-click editor, eliminating C# and JavaScript coding”. In short, it’s an app for configuring apps, but it’s not a business app in itself. That doesn’t mean it wouldn’t need a UI, of course, but the Command Bar shortcuts and the dedicated home page web resource with navigation options quite frankly is much better suited for this type of a power user tool than the new Unified Interface apps that are supposed to work even on 4″ mobile phone screens.

This brings us back to the App Module concept that was briefly mentioned in my earlier blog post. Before V9 and the Unified Interface there wasn’t so much benefit in building separate Apps for different functional areas of the XRM platform, as we had the one master UI for the instance available anyway. When the features are migrated over to the new Unified Interface, basically everything must be an App. In v9.0 we’ve yet to see how the more complex admin features will be implemented as Unified Interface versions, so currently it’s a somewhat jarring experience of 2011 meets 2018 for the system customizers.

Even when all the actual business application functionality has moved over to Unified Interface, there will still be many scenarios in which presenting an AppSource app as a Dynamics 365 App Module App doesn’t necessarily make any sense. UI extensions like Checklists will not have much use outside the actual business entity in which they are used. Any app that connects to an external web service to enrich the contents of Dynamics 365 records mainly needs a configuration admin UI somewhere. Sure, there’s nothing stopping developers from using the App Designer to define an App for their solutions, since all you technically need is a single HTML web resource to publish an App with a single menu item. However, separating the tool from the XRM instance in which it lives isn’t going to make the UX of configuring features any easier, so I’m not really hoping for the app clutter to increase this way.

Both the AppSource marketplace and the App Module in Dynamics 365 Customer Engagement provide significant improvement on how the business application features can be presented to business users and decision makers. What they don’t do is completely remove the need for Dynamics 365 system administrators to understand how the various layers and parts of the application platform are wired. XRM will likely remain an environment that’s just inherently more complex than an iPhone screen with its pretty app icons lined up just the way the single device user likes to see them.

The post From AppSource to Solutions to Dynamics 365 Apps appeared first on Surviving CRM.


You Gain by Using Software, Not Just Owning It

$
0
0
January is the time for New Years resolutions and for planning new initiatives. The gym is getting crowded with new members who have vowed to exercise more. Others are trying out new treadmills, stationary...(read more)

[D365/AX7] How to: Use number sequence on forms

$
0
0

Continuing from my post How to: Create number sequence, today I show how to use number sequence on forms.

On AX 2012 we have a class called NumberSeqFormHandler which is used to simplify the usage of record numbering on forms. This is still valid for Dynamics 365 for Finance and Operations.

First of all, we are going to create a new extension class for CustGroup form and add the class NumberSeqFormHandler to its class declaration.

[ExtensionOf(formStr(CustGroup))]
final class CustGroup_Extension
{
    public NumberSeqFormHandler numberSeqFormHandler;
}

Next we create a new method called numberSeqFormHandler() in the same class:

public NumberSeqFormHandler numberSeqFormHandler()
{
	if(!numberSeqFormHandler)
	{
	numberSeqFormHandler = NumberSeqFormHandler::newForm(
		CustParameters::numRefCustGroupId().NumberSequenceId, this, this.CustGroup_ds, fieldNum(CustGroup, CustGroup));
	}
	return numberSeqFormHandler;
}

This method instantiates the object if it has not been instantiated yet and returns it.

Now, we are going to create a method for each NumberSeqFormHandler’s methods, each one correspond to a form event.
2018-01-09 23_50_56-

To create an Event Handler go to CustGroup form and go to form’s datasource, expand Events node, right click on desired event and select Copy event handler method and paste it on our class.
2018-01-09 22_36_31-D365_NumberSequence - Microsoft Visual Studio (Administrator)

This is the result:

[ExtensionOf(formStr(CustGroup))]
final class CustGroup_Extension
{
    public NumberSeqFormHandler numberSeqFormHandler;

    public NumberSeqFormHandler numberSeqFormHandler()
    {
        if(!numberSeqFormHandler)
        {
          numberSeqFormHandler = NumberSeqFormHandler::newForm(
              CustParameters::numRefCustGroupId().NumberSequenceId, this, this.CustGroup_ds, fieldNum(CustGroup, CustGroup));
        }
        return numberSeqFormHandler;
   }

   [FormDataSourceEventHandler(formDataSourceStr(CustGroup, CustGroup), FormDataSourceEventType::Creating)]
   public void CustGroup_OnCreating(FormDataSource sender, FormDataSourceEventArgs e)
   {
   }

}

Now add the following code to our method:

this.numberSeqFormHandler().formMethodDataSourceCreatePre();

Now, repeat the above steps for the events OnCreated, OnDeleting, OnWritten, OnValidateWrite and OnClosing. The closing event belongs to form Event, not form datasource like the others.
At the end, this is the whole code for our class.

[ExtensionOf(formStr(CustGroup))]
final class CustGroup_Extension
{
    public NumberSeqFormHandler numberSeqFormHandler;

    public NumberSeqFormHandler numberSeqFormHandler()
    {
        if(!numberSeqFormHandler)
        {
            numberSeqFormHandler = NumberSeqFormHandler::newForm(
                CustParameters::numRefCustGroupId().NumberSequenceId, this, this.CustGroup_ds, fieldNum(CustGroup, CustGroup));
        }
        return numberSeqFormHandler;
    }

    [FormDataSourceEventHandler(formDataSourceStr(CustGroup, CustGroup), FormDataSourceEventType::Creating)]
    public void CustGroup_OnCreating(FormDataSource sender, FormDataSourceEventArgs e)
    {
        this.numberSeqFormHandler().formMethodDataSourceCreatePre();
    }

    [FormDataSourceEventHandler(formDataSourceStr(CustGroup, CustGroup), FormDataSourceEventType::Created)]
    public void CustGroup_OnCreated(FormDataSource sender, FormDataSourceEventArgs e)
    {
        this.numberSeqFormHandler().formMethodDataSourceCreate();
    }

    [FormDataSourceEventHandler(formDataSourceStr(CustGroup, CustGroup), FormDataSourceEventType::Deleting)]
    public void CustGroup_OnDeleting(FormDataSource sender, FormDataSourceEventArgs e)
    {
        this.numberSeqFormHandler().formMethodDataSourceDelete();
    }

    [FormDataSourceEventHandler(formDataSourceStr(CustGroup, CustGroup), FormDataSourceEventType::Written)]
    public void CustGroup_OnWritten(FormDataSource sender, FormDataSourceEventArgs e)
    {
        this.numberSeqFormHandler().formMethodDataSourceWrite();
    }

    [FormDataSourceEventHandler(formDataSourceStr(CustGroup, CustGroup), FormDataSourceEventType::ValidatedWrite)]
    public void CustGroup_OnValidatedWrite(FormDataSource sender, FormDataSourceEventArgs e)
    {
        boolean ret = true;
        ret = this.numberSeqFormHandler().formMethodDataSourceValidateWrite();
    }

    [FormEventHandler(formStr(CustGroup), FormEventType::Closing)]
    public void CustGroup_OnClosing(xFormRun sender, FormEventArgs e)
    {
        numberSeqFormHandler.formMethodClose();
    }

}

Now build the code, open Dynamics and go to Accounts Receivable/Setup/Account Groups. Create a new record and check if the Customer group ID was automatically filled.
2018-01-14 22_35_11-Customer groups -- Finance and Operations - Internet Explorer

Print the document to a specific printer

$
0
0
In one of my previous posts, I have discussed how to download and print a remote file. Here is the blog link http://www.navisionworld.com/2017/09/how-to-print-remote-file-from-nav.html The solution in...(read more)

MB2-718 Certification: (Microsoft Dynamics 365 Customer Service) – Dashboards

$
0
0
As I revised for the MB2-718 exam (Microsoft Dynamics 365 Customer Service) I’m creating blog posts detailing all aspects of my revision. I hope these posts will aid anyone who is also revising for...(read more)

How to assign number sequence for sales invoice per customer group in Dynamics 365?

$
0
0
many customers need serial sales invoice for retail customer and other wholesales...etc How can we implement? I suppose this scenario for customer groups (10, 20) as the below Setup 1-create two number...(read more)

MS Dynamics Plugin execution pipe line and stages

$
0
0
Plugins are used to achieve custom functionalities before or after core application execution. To developed plugin Microsoft Software Development Kit is required. You can download CRM SDK from Microsoft...(read more)

Manually deploy all reports on a D365 for Finance and operations one box

$
0
0

Run power shell as an admin and run below command (change path if needed) J:\AosService\PackagesLocalDirectory\Plugins\AxReportVmRoleStartupTask\DeployAllReportsToSSRS.ps1 -PackageInstallLocation “J:\AosService\PackagesLocalDirectory”

 

Reference:


Hands On With MDGP 2018 RTM: Install GP PowerShell

$
0
0

Microsoft Dynamics GPMicrosoft Dynamics GP 2018 RTM has now been released. In this series of posts, I will be stepping through the installation of Microsoft Dynamics GP and additional products and then will move on to taking a look at the new functionality which has been introduced.

The series index for this series of posts is here and will automatically update as posts go live.

The next of the additional products, I am going to install, is the GP PowerShell; this allows you to use PowerShell cmdlets to, for example, deploy companies additional tenants if using a multi-tentnqat implementation.

There is a problem with the GP PowerShell on the installation media. Instead of using this, you need to download a new installer for it, which is available from CustomerSource (login required.

Once you have downloaded the file, and unzipped it, launch the Microsoft_DynamicsGP18_PowerShell.exe:

Windows Explorer

When the serup utility launches, on the Welcome step, click Next:

Microsoft Dynamics GP PowerShell: Welcome

Accept the terms of the License Agreement and click Next:

Microsoft Dynamics GP PowerShell: License Agreement

Once the installation is complete, click Finish to close the installer:

Microsoft Dynamics GP PowerShell: Installation Complete

Click to show/hide the Hands On With MDGP 2018 RTM Series Index

Read original post Hands On With MDGP 2018 RTM: Install GP PowerShell at azurecurve|Ramblings of a Dynamics GP Consultant

Add image to an action with the power of AI

$
0
0
Story Did you ever thought, how much time developer spend on selecting the right image to NAV action ? In NAV 2017 there were 1049 images, and in NAV2018 we have 1104! So every time developer add...(read more)

Fixed – “Unable To Load Plug-in Assembly” Error in Dynamics 365

$
0
0
Introduction: Recently we had a business requirement where we created plug-ins and asynchronous workflows for ON-Premise CRM and in the plug-ins, we used some third party dll like Newtonsoft.Json.dll...(read more)

Item Attributes are Missing from Item “Fact Box”

$
0
0
In a recent implementation of Dynamics NAV, we have imported a huge number of items with several characteristics. The “Item Attribute” have been intensively used for this company in order to...(read more)

At NRF 2018, LS Retail notes vertical successes, plans for Microsoft Dynamics 365

$
0
0

Veteran Microsoft Dynamics NAV retail solution provider LS Retail is ramping up its NRF BIG Show presence in 2018 with a larger booth and new customers to appreciate. The company also enters 2018 with a solid plan for navigating the upcoming transition from Microsoft Dynamics NAV to Dynamics 365 Tenerife - and for bringing existing customers forward, too.

A year of growth

LS Retail added hundreds of customers in 2017, says Eloise Freygang, the company's chief marketing officer. And perhaps even better, she says, is that growth is coming from markets around the world.

"We're seeing more retailers who know our brand [separate from Microsoft]" at this week's NRF event, she says, espe...

read more

13 Signs That Your CRM Sucks

$
0
0
So you think your CRM sucks? If you think your CRM sucks , then it probably does. Our nine years of experience with Dynamics 365 has shown us more sucky CRMs than you would believe. We’ve compiled...(read more)

Experiencing a gap? Attend Focus for advanced Dynamics 365 & AX training

$
0
0

In 2018, are you looking to challenge yourself to grow professionally?

If so, look no further than Focus, an upcoming deep-dive, advanced training conference in Indianapolis, IN. Content is split into two-day mini-conferences for Microsoft Dynamics 365, AX, CRM, NAV and Power BI users, held between May 21 and 24, 2018. D365UG/AXUG sessions will be held May 23-24.


Expect deep-dive learning

Focus is unlike other user group conferences because it’s about diving deeper into exclusive topics geared towards specific roles. There will be no general sessions – just two days’ worth of rolling up your sleeves and spending more time in a targeted track for YOU. Each 90-minute session is taught by a technical expert featuring intermediate and advanced-level content for all products, additionally beginner content for Power BI. Learn more about what Focus will offer.

According to the Pew Research Center, 75% of professionals say extra training helped them advanced within their current company. Click on the icon for statistics regarding Focus.

D365UG/AXUG sessions run concurrently with and in the same location as D365UG/CRMUG sessions. Additional training opportunities include Hands on Labs and AX 2009 and AX 2012 Migration Workshops. D365UG/AXUG session tracks include: 

  • Project Accounting
  • Functional
  • Technical Dynamics 365 for Operations
  • Master Planning
  • Security and Compliance

“Focus allows participants to go beyond the basics of a topic. Each deep-dive session offers more time to reinforce a concept, process or feature. Equipped with this deeper understanding, participants can leave with practical examples, things to consider and best practices.” - Sarah Jelinek, Focus 2017 Programming Committee Member


Call for Proposals open until January 19

As a community built by users for users, the Focus programming committee relies on the volunteer efforts of the community to provide the most relevant and useful session topics. If you are knowledgeable in any of the above tracks, submit your Dynamics 365 & AX session ideas before the January 19 deadline.

Discounted registration available
You will leave Focus feeling more empowered and educated about the products you work in every day. If you are a member of the user group, register before the Early Bird pricing deadline on February 28 to get the lowest price available!


Not yet a member? Learn more about the year-round benefits of membership, including discounted conference registration


Experiencing a gap? Attend Focus for advanced Dynamics 365 & CRM training

$
0
0

In 2018, are you looking to challenge yourself to grow professionally?

If so, look no further than Focus, an upcoming deep-dive, advanced training conference in Indianapolis, IN. Content is split into two-day mini-conferences for Microsoft Dynamics 365, AX, CRM, NAV and Power BI users, held between May 21 and 24, 2018. D365UG/CRMUG sessions will be held May 23-24.

Expect deep-dive learning
Focus is unlike other user group conferences because it’s about diving deeper into exclusive topics geared towards specific roles. There will be no general sessions – just two days’ worth of rolling up your sleeves and spending more time in a targeted track for YOU. Each 90-minute session is taught by a technical expert featuring intermediate and advanced level content for all products, additionally beginner content for Power BI. Learn more about what Focus will offer.

According to the Pew Research Center, 75% of professionals say extra training helped them advanced within their current company. Click on the icon for statistics regarding Focus.


D365UG/CRMUG sessions run concurrently with and in the same location as D365UG/AXUG sessions. D365UG/CRMUG session tracks include:

  • Advanced Functional
  • Customizer
  • Deployment & Upgrades
  • Developer


“Focus allows participants to go beyond the basics of a topic. Each deep-dive session offers more time to reinforce a concept, process or feature. Equipped with this deeper understanding, participants can leave with practical examples, things to consider and best practices.” 
- Sarah Jelinek, Focus 2017 Programming Committee Member

Call for Proposals open until January 19

As a community built by users for users, the Focus programming committee relies on the volunteer efforts of the community to provide the most relevant and useful session topics. If you are knowledgeable in any of the above tracks, submit Dynamics 365 & CRM session ideas before the January 19 deadline.

Discounted registration available
You will leave Focus feeling more empowered and educated about the products you work in every day. If you are a member of the user group, register before the Early Bird pricing deadline on February 28to get the lowest price available!

 

Not yet a member? Learn more about the year-round benefits of membership, including discounted conference registration.

Experiencing a gap? Attend Focus for advanced Dynamics NAV training

$
0
0

In 2018, are you looking to challenge yourself to grow professionally?

If so, look no further than Focus, an upcoming deep-dive, advanced training conference in Indianapolis, IN. Content is split into two-day mini-conferences for Microsoft Dynamics 365, AX, CRM, NAV and Power BI users, held between May 21 and 24, 2018. NAVUG sessions will be held May 21-22.

Expect deep-dive learning
Focus is unlike other user group conferences because it’s about diving deeper into exclusive topics geared towards specific roles. There will be no general sessions – just two days’ worth of rolling up your sleeves and spending more time in a targeted track for YOU. Each 90-minute session is taught by a technical expert featuring intermediate and advanced level content for all products, additionally beginner content for Power BI. Learn more about what Focus will offer.

According to the Pew Research Center, 75% of professionals say extra training helped them advanced within their current company. Click on the icon for statistics regarding Focus.


NAVUG sessions run concurrently with and in the same location as PUG sessions. NAVUG session tracks include:

  • CFO/Controller
  • Developer
  • Distribution/Logistics Manager
  • NAV Administrator

“Focus allows participants to go beyond the basics of a topic. Each deep-dive session offers more time to reinforce a concept, process or feature. Equipped with this deeper understanding, participants can leave with practical examples, things to consider and best practices.” - Sarah Jelinek, Focus 2017 Programming Committee Member

Call for Proposals open until January 19

As a community built by users for users, the Focus programming committee relies on the volunteer efforts of the community to provide the most relevant and useful session topics. If you are knowledgeable in any of the above tracks, submit Dynamics NAV session ideas before the January 19 deadline.

Discounted registration available
You will leave Focus feeling more empowered and educated about the products you work in every day. If you are a member of the user group, register before the Early Bird pricing deadline on February 28 to get the lowest price available!


Not yet a member? Learn more about the year-round benefits of membership, including discounted conference registration.
 

Customer Driven Updates are live for V9.x

Microsoft Dynamics GP 2018 Feature of the Day-Display Hold Status

$
0
0
Display hold status on Sales Transaction Entry and Sales Transaction Inquiry Zoom​ Enable click to open icon​ Are you a CAL client interested in installing Microsoft Dynamics GP 2018? Contact us...(read more)

7 Emerging Finance Trends

$
0
0
Technology was identified by business executives as the most important external force shaping businesses, according to a recent whitepaper published by Microsoft. Seventy-five percent of CFOs reported...(read more)
Viewing all 77179 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>