June 17, 2023

Step-by-Step Guide to Azure App Registration Process

Introduction:

Azure App Registration is a crucial step when developing applications that integrate with Azure services. It allows your application to authenticate and access resources securely within the Azure ecosystem. In this blog post, I will provide a comprehensive, step-by-step guide to the Azure App Registration process, helping you understand the necessary steps to register your application.

App registration is required for a lot of purposes in D365FO, for example

1.    To set up Warehouse mobile

2.    Setup out of box Power BI report

3.    Postman configuration

4.    Various integration scenarios

 

Prerequisite: Just one, get the admin account and use the same account for all the steps, this account should have access to D365FO as well.  (I know it's not mandatory but I would recommend this.)

Step 1: Access the Azure Portal:

To begin the Azure App Registration process, log in to the Azure Portal (https://portal.azure.com) using your Azure account credentials. Once logged in, you'll have access to the Azure dashboard.

Step 2: Navigate to Azure Active Directory:

From the Azure dashboard, locate and select "Azure Active Directory" from the list of available services. Azure Active Directory is a comprehensive identity and access management solution provided by Microsoft. (To make sure you choose the right directory).

Step 3: Choose "App Registrations":

Within Azure Active Directory, navigate to the "App registrations" section. This section allows you to manage all your application registrations. You can search for the same in the top search bar.

Step 4: Click "New Registration":

Click on the "New Registration" button to initiate the app registration process. You will be prompted to provide essential details about your application.

 

Step 5: Fill in Application Details:

In this step, you need to provide the following details:

- "Name": Enter a unique name for your application.

- "Supported account types": Choose the appropriate account type (such as "Accounts in this organizational directory only" or "Accounts in any organizational directory"). Mostly it will be within the same organization.

- "Redirect URI": Specify the URI where Azure will redirect users after authentication. This is typically the URI of your application. In our case, it will be the URL of D365FO environment.

Step 6: Register the Application:

After providing the necessary details, click on the "Register" button to create the application in Azure. Azure will generate a unique "Application (client) ID" that you will need to use during the development and configuration of your application.

 

Step 7: Configure API Permissions:

To access Azure resources from your application, you need to grant it appropriate permissions. In the app registration page, navigate to "API permissions" and click on "Add permission." Here, you can select the APIs and permissions required for your application. This section is used if you are going to use this for Power BI.

 

Step 8: Grant Admin Consent:

Once you have configured the necessary API permissions, you need to obtain consent from an Azure administrator. Click on the "Grant admin consent for <your organization name>" button to initiate the consent process.

 

Step 9: Generate Client Secrets:

If your application requires a client secret, such as when using the OAuth 2.0 client credentials flow, navigate to the "Certificates & secrets" section within the app registration page. Here, you can create and manage client secrets securely. Copy the value securely as it will not visible after this step and you need this for most of the applications eg. the Warehouse mobile app, and Power BI configuration.

 

Step 10: Application Configuration (Optional):

After completing the app registration process, you can configure additional settings specific to your application, such as branding, authentication options, and more. Explore the app registration page and adjust the settings as per your requirements.

 

Conclusion:

The Azure App Registration process is a vital step when building applications that integrate with Azure services. By following this step-by-step guide, you can successfully register your application in Azure Active Directory, configure necessary permissions, and obtain the required credentials for secure authentication and access to Azure resources. Properly registered applications can take advantage of various Azure services and APIs while ensuring a streamlined and secure development process.


-Harry Follow us on Facebook to keep in rhythm with us. https:fb.com/theaxapta

June 09, 2023

How to add security on a specific control on form

Hi Folks, 

In this post, I will discuss how to enhance security for a specific form control, such as a button or checkbox. Typically, we would use the DisplayMenuItem feature to manage security privileges. However, things can become a bit different when you want to assign special security privileges to a particular form control.

Here's a standard approach to achieving this. Please follow the steps below:

1.              Begin by navigating to the form design and selecting the desired form control to which you want to add additional security privileges.

a.     Set the property 'Need permission' to 'Yes'. This step will make the field available in Step 5.

2.         Create a new privilege. If an existing one suits your requirements, feel free to use it.

3.         Within the privilege settings, locate the 'Form control permission' section.

4.         Add a new form here.

5.         Include the control on this form and adjust its properties accordingly.

By following these steps, you can implement enhanced security measures for specific form controls.






-Harry Follow us on Facebook to keep in rhythm with us. https:fb.com/theaxapta

June 06, 2023

Simplifying Data Retrieval with D365FO X++ Lookup Method

Simplifying Data Retrieval with D365FO X++ Lookup Method

Simplifying Data Retrieval with D365FO X++ Lookup Method

Introduction

Microsoft Dynamics 365 for Finance and Operations (D365FO) is a powerful ERP system that offers robust customization capabilities. One such customization option is the ability to write X++ code for lookup methods. These methods can greatly simplify data retrieval and enhance the user experience within the application. In this blog post, we will explore the lookup method in D365FO X++ code and provide a sample code snippet to demonstrate its usage.

Understanding the Lookup Method

The lookup method in D365FO X++ code allows developers to retrieve data from related tables or data sources based on specified criteria. It enables users to select a value from a predefined set of options, providing a seamless way to populate fields with accurate and relevant information. The lookup method essentially acts as a search functionality within the application, making it easier for users to find and select the desired data.

Sample Code

    
public static void lookupDemo(FormStringControl _control)
{
    SysTableLookup        sysTableLookup;
    QueryBuildDataSource  queryBuildDataSource;
    QueryBuildRange       queryBuildRange;

    sysTableLookup = SysTableLookup::newParameters(tablenum(CustTable), _control);
    queryBuildDataSource = sysTableLookup.addDataSource(tablenum(CustTable));

    // Adding a range to filter the lookup results
    queryBuildRange = queryBuildDataSource.addRange(fieldNum(CustTable, AccountNum));
    queryBuildRange.value("1001");  // Setting the filter value

    sysTableLookup.performFormLookup();  // Opening the lookup form
}
    
  

Explanation

In the above code, we start by creating a new instance of the SysTableLookup class, passing the target table and the control where the lookup will be displayed as parameters. In this case, we use the CustTable table and the _control argument, which represents the form string control.

Next, we add a data source to the lookup using the addDataSource() method. Here, we specify the table we want to retrieve data from (in this case, CustTable).

To filter the lookup results, we add a range using the addRange() method on the queryBuildDataSource. In this example, we filter the results based on the AccountNum field and set the filter value to "1001".

Finally, we call the performFormLookup() method on the sysTableLookup object, which opens the lookup form for the user to select the desired value.

Conclusion

The lookup method in D365FO X++ code provides a convenient way to retrieve and display data from related tables or data sources. By implementing lookup functionality, developers can enhance the user experience by simplifying data selection and ensuring the accuracy of entered values. The code snippet provided above serves as a starting point for utilizing lookup methods in your D365FO customization projects. Experiment with different tables, filters, and fields to tailor the lookup functionality to meet your specific business requirements.

-Harry Follow us on Facebook to keep in rhythm with us. https:fb.com/theaxapta