Compliance Terms and Requirement – Cloud Computing – Part 3

While selection of cloud providers the important thing to check how the cloud provider can help you to comply the international regulations and standards

Some important questions to ask from the provider:

  • How complaint are the services offered by cloud provider?
  • Terms are part of the privacy statement for the provider
  • Deployment of own cloud based solutions those need accreditation or have compliance requirement?
  • Handling of sensitive data by the cloud provider , how ?


Compliance Offering:

Below is the list of compliance offerings available:

  • Criminal Justice Information Services(CJIS)
    • Any US state or local agency wants to access FBI’s CJIS database is required to adhere to the CJIS security policy.
    • Azure is only major cloud provider that contractually commits to conformance with CJIS security policy
  • Cloud Security Alliance(CSA) Star certification
    • Azure, Intune and Power BI has obtain star certification
    • The star certification is based on achieving ISO/IEC 27001 certification and meeting the specific criteria in Cloud Controls Matrix(CCM).
    • This certificate demonstrates that a cloud service provider:
      • Conforms to the applicable requirements of ISO/IES27001
      • addressed issues that critical to cloud security as described in the Cloud Control Matrix(CCM)
      • Assessed against the Star Capability Maturity Model for the management of activities in Cloud Control Matrix(CCM) control areas.
  • General Data Protection Regulation(GDPR)
    • As of May 2018, a European Privacy law  (GDPR) is in effect.
    • GDPR imposes new rules on companies, government agencies, non-profits and other organizations that offer goods and service to the European Union People or collect and analyze data of European Union resident.
    • The GDPR applies no matter where are you located if your company or agency lies as per above statement.
  • Health Insurance Portability and Accountability Act(HIPAA)
    • Its a US Federal Law that regulates patient Protected Health Information(PHI)
    • Azure offers customers a HIPAA Business Associate Agreement(BAA) which means Azure is adherence to certain security and privacy provisions in HIPPA and the Health Information Technology for Economical and Clinical Health(HITECH) Act.
    • To Assist customers in the individual compliance efforts, Microsoft offers BAA to Azure customers as contract addendum.
  • Multi-tier Cloud Security (MTCS) Singapore
    • After rigorous assessments conducted by MTCS certification body, Microsoft cloud services received MTCS 584:2013 certifications for all three service classification
      • Infrastructure as a Service(IaaS)
      • Platform as a Service(Paas)
      • Software as a Service(SaaS)
    • Microsoft was the first service provider who got this certification for all three service classifications.
  • International Organization for Standardization(ISO) and International Electrotechnical Commission (IEC) 27018
    • Microsoft is the first cloud provider who adopted the ISO/IEC 27018 code of practice, covering the processing of personnel information by the cloud service providers.
  • UK Government G-Cloud
    • The UK Government G-Cloud is a cloud computing certification for services used by government entities in the United Kingdom.Azure has received official accreditation from the UK Government Accreditor.
  • National Institute of Standards and Technology (NIST) Cybersecurity Framework(CSF)
    • NIST CFT is a voluntary framework that consists of standards, guidelines and best practices to manage the cyber-security related risks. Microsoft cloud services have undergone independent, Third-party Federal Risk and Authorization Management program(FedRAMP) Moderate and High Baseline audits, and are certified according to FeRAMP standards. Office 365 is certified to the objectives specified in the NIST CSF.
  • Service Organization control (SOC) 1,2 and 3
    • Microsoft cloud services are audited at least annually according to the SOC report framework by independent auditors.
  • EU model Clauses
    • Microsoft Offers customer EU standard contractual clauses the provides contractual guarantees around transfer of personal data outside of the EU.Microsoft is the first company to receive joint approval from the EU ‘s Article 29 working party that the contractual privacy protections  Azure deliver to its enterprise cloud customers meet current EU standards for international transfer of data. This ensure that Azure customers can use Microsoft services to move data freely through Microsoft cloud rom Europe to the rest of the world.


Get Form Control on Any form – Dynamics 365 for Finance and Operations – X++

To get any form control on any form use below method. Create this method as static and use anywhere in your code.


Just need to provide FormRun and control name as parameters


Public Static FormControl getFormControl(FormRun _formRun, str _controlName)


        FormControl control = _formRun.control(_formRun.controlId(_controlName));

        Debug::assert(control != null);


        return control;


FormDataSource field eventHandlers – Microsoft Dynamics 365 For finance and Operations – D365 FnO Event Handlers

Scenario: Sometime we need to use the form datasource field events to validate or modify the data.

In below code we are updating the data of one field based on modifying the data on the other field

Screen Shot 2019-10-23 at 10.48.34 AM.png



    /// <summary>


    /// </summary>

    /// <param name=”sender”></param>

    /// <param name=”e”></param>

    [FormDataFieldEventHandler(formDataFieldStr(HcmTopicCreate, HcmTopic, Title), FormDataFieldEventType::Modified)]

    public static void Title_OnModified(FormDataObject sender, FormDataFieldEventArgs e)


        HcmTopic hcmTopic = sender.datasource().cursor();

        HcmSkill hcmSkill = HcmSkill::findBySkill(hcmTopic.Title);

        hcmTopic.Description = hcmSkill.Description;


What’s new or changed in Finance and Operations apps version 10.0.6 (November 2019)

Below are summary about the new update of Microsoft Dynamics Finance and Operations apps version 10.0.6

  1. Product Configuration models V2 data entity(2nd version)
  2. Feature Management Enhancements
    • By default not all features are enable
  3. Project contract committed details
    • Now user can drill-down into the details of the committed amount on the funding source
  4. Purchase agreement responsible party
    • Now user can define primary and secondary responsible party on the purchase agreement classification form and resulting purchase agreement
  5. RFQ Link on the Purchase order line
    • Now a reference link can be add from the purchase order line back to the corresponding RFQ lines they originated from


For more details visit Microsoft Documentation using below link


Whats changed in 10.0.6


Temp table(InMemory) buffer usage in the same instance – Microsoft Dynamics 365 for Finance and Operations – Ax2012 – X++

Scenario: Sometime you have to use InMemory table buffer to apply some logic within the same buffer.

Solution: The solution is to use the sameTable variable by using SetTempData


//local variable

TempTable localTempTable;


// set the data to the local tmp table from the original tmp table



while select forupdate localTempTable //where localTempTable.somecoindtion ==


localTempTable.someField = ”;




//at the end  after completing the loop set the tmp data back to the original tmp data





Sandbox UAT SQL server database access – Microsoft Dynamics 365 for Finance and Operations

Scenario: Accessing of Microsoft Dynamics 365 for Finance and Operations database on sandbox environment.

In August 2019 Microsoft did the database scaling and migration in different regions. so might be your Dynamics 365 for Finance and Operations might be changed. When you trying to logon you will face some difficulty.

Below are the steps to access the new sql server and database.

  • Copy the SQL server name from LCS and put on logon screen


Screen Shot 2019-10-15 at 10.33.13 AM.png


  • After adding above information click on options

Screen Shot 2019-10-15 at 10.36.43 AM.png


  • Copy the database name(below screenshot before AXDB) from the LCS environment and paste in the connect to database field as per above screenshot

Screen Shot 2019-10-15 at 10.37.41 AM.png


  • Click on connect and now you are successfully able to connect


Note: Please leave comments if you are facing any issue by following the above steps.

Benefits of Cloud Computing – Cloud Computing – Part 2

Benefits of Cloud Computing

  1. Cost effective
    • Its has pay as you go or consumption based pricing model
    • No upfront infrastructure cost
    • No need to purchase or manage costly infrastructure
    • Based on needs resources can be added or remove which are no longer required
  2. Scalable
    • Its supports  both vertical and horizontal scaling
      • Vertical Scaling – known as ‘Scaling up’ is the process of adding resources to increase the power of an existing server.example of vertical scaling is adding more CPUs or memory
      • Horizontal Scaling – know as ‘Scaling out’is the process of adding more servers that function together as one unit. example more than one server processing request together.
  3. Elastic
    • Based on the workload it automatically adding or removing the resources. Example is website that gain attention overnight because of some article published. Then it automatically assign more computing resources to handle the increased traffic. When traffic is normal than cloud automatically de-allocate the resources.
  4. Reliable
    • Its reliable because it available globally and uptime is 100% for the services.
  5. Global
    • Cloud providers  have fully loaded data centers across the globe on different locations.
  6. Secure
    • Cloud is secure than locally manage services because cloud providers offer wide range of policies, technologies, control and expert technical skills to manage the digital security. Cloud providers invest heavily in the security sector, as walls, electronic gates, cameras to protect physical assets.


Power BI for Desktop – Microsoft Power BI – Part 1

  • What is Power BI for desktop?
    • A free application that can be install on local computer
    • It allows you connect to, transform, visualize data
    • Create visuals, such as charts, or graphs to represent the data
    • Used to create a report data model
    • Share report with others using power BI service
  • Views on Power BI for Desktop
    • Report View – where you create the reports and visuals
    • Data View – here you see the tables, measures, and other data used in the data model
    • Model View – Manage relationship among tables in your data model

delete_from in X++ Ax2012/ D365 F&O – Dynamics 365 For Finance and Operations

Scenario: Delete all record from table at once based on some condition.


//declare table varibale

MyTable  myTable;



// to delete all records with any condition

delete_from myTable;


//delete records based on some condition

delete_from myTable where mytable.Recid = 12345677;



Microsoft Flow vs Azure Logic Apps – Microsoft Flow and Azure Logic Apps


The following table helps you determine whether Microsoft Flow or Logic Apps is best for a particular integration:

Microsoft Flow Logic Apps
Users Office workers, business users, SharePoint administrators Pro integrators and developers, IT pros
Scenarios Self-service Advanced integrations
Design tool In-browser and mobile app, UI only In-browser and Visual StudioCode view available
Application lifecycle management (ALM) Design and test in non-production environments, promote to production when ready Azure DevOps: source control, testing, support, automation, and manageability in Azure Resource Manager
Admin experience Manage Microsoft Flow environments and data loss prevention (DLP) policies, track licensing: Microsoft Flow Admin Center Manage resource groups, connections, access management, and logging: Azure portal
Security Office 365 Security and Compliance audit logs, DLP, encryption at rest for sensitive data Security assurance of Azure: Azure securityAzure Security Centeraudit logs

What is Azure Logic Apps? – Azure Logic Apps -Part 1

Azure Logic apps is a cloud service that helps

  1. Schedule
  2. Automate
  3. Orchestrate

the tasks, business process and workflows when you need to integrate apps, data, systems across the enterprise and organizations.

Logic apps simplifies how you build scalable solutions

  • App integration
  • Data Integration
  • System Integration
  • Enterprise integration

whether on cloud or on-premises or both


Example of logic apps

  1. Send Email notifications from Office 365 when event happen in various systems, apps and services.
  2. Move uploaded files from SFTP or FTP server to Azure Storage.
  3. Process or re-route orders across on-premises system or cloud service.
  4. Monitor tweets with specific text words or lines.
  5. Create records on different system based on event happens on one system.


Unable to connect to Azure Storage )Local VM)- Dynamics 365 for Finance and Operations


Unable to connect to the remote server at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSync[T](RESTCommand`1 cmd, IRetryPolicy policy, OperationContext operationContext)at Microsoft.WindowsAzure.Storage.Table.CloudTable.Exists(Boolean primaryOnly, TableRequestOptions requestOptions, OperationContext operationContext) at Microsoft.WindowsAzure.Storage.Table.CloudTable.CreateIfNotExists(TableRequestOptions requestOptions, OperationContext operationContext) at Microsoft.DynamicsOnline.Infrastructure.Components.TableAccessor.TableStorageAccessor.PerformOperation(CloudStorageAccount storageAccount, String tableName, Func`1 operation) at Microsoft.DynamicsOnline.Infrastructure.Components.TableAccessor.TableStorageAccessor.AddRecord[T](CloudStorageAccount storageAccount, String tableName, T record) at


This issue is coming because Azure emulator is not running.


Issue can be checked and resolved using below commands.

Screen Shot 2019-09-30 at 6.57.04 PM

Get Next Number sequence thru code X++ – Microsoft Dynamics 365 For Finance and Operations

Scenario: Normally next number sequence is created when new record create from the front end but sometimes we need to create next number sequence from code when importing the records thru code

Solution: Below code will be used to get next number sequence


NumberSeq::newGetNum(Number Sequence reference as parameter).num();

Parameters details:

NumberSequenceReference _numberSequenceReference, mandatory

        boolean                 _makeDecisionLater          = false, optional

        boolean                 _dontThrowOnMissingRefSetUp = false optional


        ,UnknownNoYes            _allowManual                = UnknownNoYes::Unknown optional

File locked in another workspace – Team Foundation server , DevOps

Scenario: sometimes items are locked in abandoned workspaces in Team foundation server, DevOps

Solution: In this case you need to remove the abandoned workpsaces from the DevOps server/Collections and below are the steps to resolve

  1. Run the command prompt on visual studio server ‘Developer command prompt for VS2015’
  2. Run the below command “tf workspaces /computer:* /owner:*” to check the workspaces and owner user ids
  3. if you find the workspace present in the list
  4. Then log in with the same user in the team services and click on manage workspaces
  5. click on remote workspaces
  6. Remove the workspace that locked the items (It will unlock all the locked items)

Screen Shot 2019-09-24 at 6.00.03 PM.png



Simple Dialog using X++ – Dynamics 365 for Finance and Operations

Scenario: Sometimes we need a simple dialog having some fields and we do not want to use dialog form ,instead of that we can create dialog thru X++ code.

Below is the code you can use to create simple dialog.

Example Code:


//Declare dialog variables       

Dialog                  dialog;       

DialogField             fieldfDate, fieldtDate;       

FromDate _fromDate, _toDate;       


dialog = new Dialog(“Select start and end date”);       

//define fields to show on the dialog       

fieldfDate = dialog.addField(extendedTypeStr(TransDate));       

fieldtDate = dialog.addField(extendedTypeStr(TransDate));      ;       

if (dialog.closedOk())       


           //get values from the dialog fields

            _fromDate = fieldfDate.value();

            _toDate = fieldtDate.value();