Consider Upgrading Exception

Consider Upgrading Exception

This exception is raised when the number of users using FakeXrmEasy is greater than the maximum number of users your subscription allows.

Please follow the steps below to request an upgrade while also mitigating the impact so you can get back to what you were doing as soon as possible.

1. Request an upgrade

Request an upgrade to DynamicsValue via your line manager and your organisation’s established process. Once you have confirmed this has been requested, then follow the steps below.

Please make sure the new upgrade requested covers the necessary users you’ll need.

2. Enable the ‘upgrade requested’ flag

There is flag that will give you an extra month to use the previous license key that doesn’t have the user limitation while a new license key is generated for you.

In order to do this, a user will need to update their middleware setup to set the upgradeRequested flag to true as follows:

public FakeXrmEasyCommercialLicenseTestsBase()
{
    _context = MiddlewareBuilder
                .New()

                .AddCrud()
                .AddFakeMessageExecutors(Assembly.GetAssembly(typeof(AddListMembersListRequestExecutor)))

                .UseCrud()
                .UseMessages()

                .SetLicense(FakeXrmEasyLicense.Commercial)
                
                //Set upgradeRequested
                .SetSubscriptionStorageProvider(new SubscriptionBlobStorageProvider(), upgradeRequested: true)
                .Build();

    _service = _context.GetOrganizationService();
}

3. Distribute the new license key and disable the upgrade requested flag

Once you receive the new license key, you’ll need to distribute it to your developers following the steps in this guide: Apply your license key.

Once the new key is in place, please disable the upgrade requested flag again, otherwise, you won’t get the 30 day ish window for the next upgrade in time:

public FakeXrmEasyCommercialLicenseTestsBase()
{
    _context = MiddlewareBuilder
                .New()

                .AddCrud()
                .AddFakeMessageExecutors(Assembly.GetAssembly(typeof(AddListMembersListRequestExecutor)))

                .UseCrud()
                .UseMessages()

                .SetLicense(FakeXrmEasyLicense.Commercial)
                
                //Undo upgradeRequested (it'll default to false if not present)
                .SetSubscriptionStorageProvider(new SubscriptionBlobStorageProvider())
                .Build();

    _service = _context.GetOrganizationService();
}