Category Archives: Blog
New Dynamics 365 Financials connector for Power BI
In this blog article, we will explain you on how to connect dynamics 365 financials service inside of Power BI. Earlier Microsoft dynamics 365 gives out of the box connectors for Sales, service Manager and Marketing to connect over Power BI for readymade dashboards but on the new powerbi updates we have direct connector for Dynamics Financial 365. Below are the steps to connect over Financial OData: Open the Power BI desktop tools and clicked on getdata Select “Dynamics 365 for financial” in Online services. When Promoted, enter your Microsoft Dynamics Financial OData URL For getting this ODAT URL, you need to first login on dynamics 365 portals and then search web services in the search button, so you get below screen and copy the OData url. Please use url up to “OData” flag only. After connecting this ODATA URL, it will ask for the authentication so choose basic authentication Mode and your User Details. Your password is the web service access key of the Admin user and you can get it from users tab. So, after connecting to the financial ODATA you will get all the tables loaded in to powerbi desktop tools and from that we can design a dashboard.
Share Story :
Deploy Dynamics 365 Operations Environment using LCS
In this blog article, we will see how we can create a Project and Deploy a Dynamics 365 Operations Environment using Microsoft Dynamics Lifecycle Services. Prerequisites: Lifecycle Service Account Azure Subscription Steps: Create a new project in Lifecycle Service Account. Azure Settings Deploy Environment. Create New project in Lifecycle Services Navigate to https://lcs.dynamics.com/Logon/Index Click Sign in. Loginwith the account you used to subscribe. Click the + icon to create a new project. Select the project type- “Migrate, create solutions and learn Dynamics 365 for operations”. See below screenshot for reference. Enter the project information and then clickCreate. Azure Settings: Follow this link to setup your Azure connector settings, https://ax.help.dynamics.com/en/wiki/arm-onboarding/ Deploy Environments: In newly created Project, go to Environmentssection, click the plus sign (+). Refer screenshot below You can click either the Downloadlink to download the VHD or Next to deploy on Azure. Azure is the preferred path. Enter the environment name. Read the terms, and then select the check box to indicate you understand them. Click Next. Confirm the details, and then click Deploy. So, this will deploy the D365 Operations Environment. Let me know your reviews. I will soon come up with more articles, as I further explore D365 Operations.
Share Story :
Auto Capture – Dynamics 365
Auto Capture is a feature introduced in D365 so that you don’t need to go to your Outlook and explicitly tracked Emails to Dynamics 365. This is one cool feature that can help you poll your personal emails and show you if you want to track it or not! Overview Auto Capture is a sub-feature of Relationship Insights. Relationship Insights is a preview feature in December 2016 update for MS Dynamics 365 Online. Integrates with Microsoft Exchange to find and display relevant emails with other activities that are related to a given record in Dynamics 365. Auto Capture shows you message in private i.e. only to the logged in user. System Administrators too don’t see these emails. Server Side Synchronization must be enabled to use this feature. Enable the Preview Since this is in preview, you’ll need to enable it for the organization in the following manner: Navigate to Settings > Administration > System Settings. Go to the last tab, Previews. Agree to the terms on the top and scroll down to the very bottom. Select Yes for the Enable Auto Capture feature as shown below: Then, navigate to Settings > Relationship Insights. You can choose the same and agree to the terms as shown: Upon agreement, you’ll see the three tabs as shown below: Make sure the Turn on Auto Capture for your organization is already checked. If not, check it and Save the same. Auto Capture has now been enabled for your organization. Auto Capture Auto Capture messages are queried to your Microsoft Exchange account every time you open the Activities section of a record. Once this has been enabled, you can navigate to different records like Accounts, Contacts etc. and see under Activities that certain emails which are relevant to the record you are viewing have been polled and are marked with dotted border: This email is only visible and is not yet tracked into Dynamics 365. It will be tracked only once you chose to do so. You can track this email in Dynamics 365 by hovering over the email in Activities and you’ll see a TRACK link on the same as shown below: Once you click on track, the Email will be queued to pull in Dynamics 365. Once the email is successfully tracked, it will appear like a usual Activity item shown on the form under Activities: This email can then also be seen in the Activities in Dynamics 365. What Messages are captured? Below are the criteria for polling messages from your Exchange Account.
Share Story :
Connecting to Dynamics 365 Operations through Scribe
TIBCO Cloud Integration AX Connector is compatible with Dynamics 365 Operations. Connecting to D3fO is similar to that of Microsoft Dynamics AX. Prerequisite: Dynamics 365 Operations Development environment. TIBCO Cloud Integration Subscription. Global admin credentials in Azure: Registering ERP application in Azure. Steps: Login to TIBCO Cloud Integration URL: https://app.scribesoft.com/ Create a new connection by selecting the connector type as Microsoft Dynamics AX. Fill in the required details. OData Service URL: This URL must end in /data. Process to get the Client Id and Authentication URL. Steps: Login to Microsoft Azure URL: https://portal.azure.com In the left navigation bar, select Azure Active Directory Select App Registrations Click on Add. Fill in the details. Enter the name of the app. Select Application Type as Native Redirect URI: https://login.microsoftonline.com/domainname.com This redirect URI is the Authentication URL required in TIBCO Cloud Integration AX Connector. On creation, the registered app details will be displayed The Application ID in the Registered app is the Client Id required in TIBCO Cloud Integration AX Connector. Click on Required permission in the settings. Click on Add Select Microsoft Dynamics ERP (Microsoft.ERP) Select all three Delegated Permissions. For more details, check this link. Click on Grant Permission. Global Admin credentials are required for the same.
Share Story :
How to display Status Reason conditionally in Case Management
Introduction This blog resolve a scenario requested by client to display Status Reason conditionally on Case entity. This requirement can be fulfilled by using Transitions functionality on Status Reason field on Case entity in D365 Sales. Steps of Implementation Open Status Reason field on Case entity Click on Edit Status Transitions and check the checkbox for Enable Status Reason Transitions. Select New Status Reasons for Current Status Reasons by clicking ellipses button After selecting values and click OK button. Click OK on Status Reason Transactions page Click OK on warning message Click Save and Close button on Status Reason field Publish All Customizations from Solution and Status Reason are displayed conditionally as seen below. Note: “Edit Transitions in Status Reason” functionality is only available on Case and Custom Entities.
Share Story :
Useful tips and tricks for Scribe Insight
Scribe Insight is widely used for Integration between On-Premise and Online Applications. (Example Microsoft Dynamics CRM online 2016 and AX 2012) Scribe is also used for data migration between CRM systems. (Example CRM 4.0 On-premise to CRM 2016 Online) Below are the list of the useful tips and tricks that can be handy while you are working with Scribe Insight. If you have Scribe DTS file (.dts) from another environment and want to see the fields mapping without the hassle of creating similar source/target connections, then you can use “Open Offline” feature of Scribe Insight. This will open any DTS file and you can view the mapping logic. When we set up “Multi-Company Parameters” for integration between CRM and AX System with multiple legal entities, we need to ensure below settings. (i) Go to Configure Steps -> Data Objects -> Ensure the option “This connection can receive command line switched” is ticked on. (ii) In Scribe Console, ensure the DTS Parameters are correctly set. Verify the XPath is correct as per the source XML\Schema. (iii) Under connection settings for AX web service, Go to DTS Connection Settings, ensure the option “Keep this connection open if it was used in the previous DTS” is NOT ticked. ( This was recommended by Scribe Support personnel while working on issue related to Multi company parameter. I have found that Scribe works even if you have this option as ticked ON). Whenever you make any changes in the XML source file and Schema file and you want to test the same, always close and reopen the DTS file. Scribe shows the cached values even after the XML source file is updated in source path. While working with Microsoft Dynamics CRM connections, Scribe hides some fields like “CreatedOn”. In order to see such hidden fields, Go to Scribe Menu Bar and select the option “View” -> Hidden Data Objects and Fields -> Select the option. Whenever you use jumpstart provided by Scribe Insight, always ensure the schema file by name “SharedTypes.xsd” is present in the path \\Machine-Hostname\Collaborations\Dynamics AX to Dynamics CRM Jumpstart If you are creating your own scribe DTS, its advised to copy this schema file in your working folder. Sometimes you get error related to Incorrect DBLOOKUP formula after you update the same in DTS, even though the formula is correct. Simply close the DTS and re-open the same. I am not sure why Scribe this, but it is what I do and works always for me. Sometimes you notice that even though you add new updated Schema file with new fields and Update the XML source connection, you still don’t see the new fields in Scribe for field Mapping. Check the scribe XML connection for Source XML file and Source Schema file. Scribe by default if you don’t supply the schema path, takes the XML file as the schema file. Then no matter you much time you replace the schema file, it does not get reflected in the DTS. Always provide the SourceKey Fields in the source connection. This is useful during error troubleshooting. If you want to enable “re-try processing of XML messages in Scribe In queue”, in configure steps, under Exit Status , ensure radio button for “Retry” is selected. In Integration process, specify the re-try count. This ensure if the initial processing is failed, scribe will re-try that message the number of times, the re-try count is specified. If you need to create a new Integration process in Scribe Console, always create new integration process under the specific “Collaboration” in which rest of other Integration Processes are present. Scribe support service has been updated from “email support “ to “web Support”. If you need any scribe related support, you need create support ticket / case from url http://success.scribesoft.com/ You will need to supply the below details during ticket creation, Scribe Insight version and serial number details Version of applications that you are integration using Scribe Insight Scribe DTS Detailed description of error issue. Scribe Work Bench Tracelog files.
Share Story :
SSRS reports Issues and tips and tricks to get around them (Part 1)
As a BI resource you may often be asked to design and develop SSRS reports. While these SSRS reports development is straightforward, sometime we get host of issues that irritates and create bad impression of report developer. Below is one such issue that I came across and resolution to get around it. Issue 01: When the report is run and user does “export-as-pdf”, the pdf file consists of blank pages. Cause of the issue: This issue is usually result of default option “Keep Together” that by default is set to “True”. (Indicates whether to keep all sections of the data region together on one page.) Other issue could be related to mismatch in the width of the report. Resolution: (1) In the report designer, open the properties tab of the container that you are using in the report to display the data. Go to General section of the report and check the value for property “Keep Together”. Its value should be “False”. Resolution: (2) If the default value for “Keep Together” is False and you still get the issue, then do as below. Go to Report à Report Properties à Page Setup à Note the Width and Margin Details. (Example Here Width = 8.27 in (Inches) Left Margin = 0.25 in Right Margin = 0.25 in Now Go to actual report body and note the size of the report Body. Calculate the Width occupied by the Report as below: Body Width + Left Margin + Right Margin < Report Width 7.73 in + 0.25 in + 0.25 in < 8.27 in Always ensure that above width and margin sum is less that the report width. This would ensure there are no blank pages during report rendering or when user exports the report as pdf.
Share Story :
Use of EVENT in Dynamics 365 for Operations
In legacy X++, it was possible to prescribe in metadata that certain methods were to be executed prior to and after the execution of a method. The information about what subscribes call was recorded on the publisher, which isn’t useful in the Dynamics AX environment. It’s now possible to provide Pre and Post handlers through code, by providing the SubscribesTo attribute on the subscribers. Here is a blog showing some of basic use of EVENTS handlers of the Form with respective syntax for logics. Form datasource from xFormRun [FormEventHandler(formStr(SomeForm), FormEventType::Initialized)] public static void SomeForm_OnInitialized(xFormRun sender, FormEventArgs e) { FormDataSource MyRandomTable_ds = sender.dataSource(formDataSourceStr(SomeForm, MyRandomTableDS)); … } Get FormRun from form datasource [FormDataSourceEventHandler(formDataSourceStr(MyForm, MyRandomTableDS), FormDataSourceEventType::Written)] public static void MyRandomTableDS_OnWritten(FormDataSource sender, FormDataSourceEventArgs e) { FormRun formRun = sender.formRun() as FormRun; formRun.myCustomMethod(); } Get FormRun from form control [FormControlEventHandler(formControlStr(MyForm, MyButton), FormControlEventType::Clicked)] public static void MyButton_OnClicked(FormControl sender, FormControlEventArgs e) { FormRun formRun = sender.formRun() as FormRun; formRun.myCustomMethod(); } Access form control from xFormRun [FormEventHandler(formStr(SomeForm), FormEventType::Initialized)] public static void SomeForm_OnInitialized(xFormRun sender, FormEventArgs e) { sender.design().controlName(formControlStr(SomeForm, MyControl)).visible(false); } Get current record in form control event [FormControlEventHandler(formControlStr(SomeForm, SomeButton), FormControlEventType::Clicked)] public static void SomeButton_OnClicked(FormControl sender, FormControlEventArgs e) { SomeTable callerRec = sender.formRun().dataSource(1).cursor(); }
Share Story :
Fixed Assets – Books (Microsoft Dynamics 365 Operations versions 1611)
There were value models and depreciation books valuation concept for fixed assets in earlier releases. Value models and depreciation books functionality have been combined into a single platform that is known as a Books. This is new in Microsoft Dynamics 365 Operations version 1611. Value Models and Depreciation Books (earlier versions): Books (Microsoft Dynamics 365 Operations version 1611) Value Models: Value Models are important for fixed assets. Value Models are used to track financial values of fixed assets like accounting acquisition, depreciation, adjustment, net book value, revaluation, disposal sales, disposal scarp etc. In short, useful to get fixed assets financial information. Depreciation Books: Depreciation books are used to post depreciation that does not affect the General ledger. Books (Microsoft Dynamics 365 Operations version 1611): Books are useful to post depreciation that does not affect General ledger or useful to track financial information of fixed assets. Books have a new Post to general ledger option. If enable it behaves as Value Model and if disable this option then it behaves as Depreciation books. Below is setup comparison between Depreciation Books, Value Models and Books. Conclusion Books is simplified combine functionality of Value models and Depreciation books. You can track financial information or use to post depreciation without affect the General ledger by using Books.
Share Story :
PowerApps
What is PowerApps? PowerApps is a Microsoft product which allows developer/non-developer to build an application without writing a single line of code. PowerApps creates custom business apps for web and mobile devices that help you do your job more efficiently and collaborate better with your co-workers. Use PowerApps to solve problems specific to your business and extend the software you’re already using such as apps for custom site inspections, cost estimators, budget tracking, or managing customer opportunities You can use PowerApps in any web browser, including the mobile web. You can also download PowerApps Mobile for iOSor Android to use apps on your phone or tablet. No matter where you’re working, just open PowerApps to find the apps available to you. What data sources can my apps connect to? PowerApps connects to a range of data sources out of the box, and Microsoft adding more all the time. Some examples of data sources and services include: Excel files stored on OneDrive for Business, Dropbox, or Google Drive SharePoint Online lists Salesforce objects Microsoft Dynamics CRM Online records Azure SQL Database tables Office 365 Exchange data Twitter Microsoft Translator Your own custom APIs And many more applications. What’s a work or school account, and why do I need one to use PowerApps? Because PowerApps is built for business apps that you share with your team, we require you to use an email address associated with an organization (your work or school account) to sign up. Shared email providers like Hotmail or Gmail won’t currently work with PowerApps. Who can I share apps with You can share apps with anyone in your organization, that is, anyone who has your same email domain—for instance, anyemployee@contoso.com. Anyone who uses your apps will also need access to any data sources those apps connect to. For example, if you build an app that uses an Excel file on OneDrive, people you share the app with will also need to have access to the Excel file in order to fully use the app Connection: Go to: https://powerapps.microsoft.com/ You need to sign in the powerApps portal using the given link and signin/singup Once you are logged in successfully, you can create a new app from the portal. Click on create new App. You can develop PowerApps either on desktop application or on the browser, you can download it from the Store or you can directly edit in browser. Once you have installed the PoweApps from the Store now you can develop your own application by click on the new button. Select from the existing app which is a predefined template Establish your connection with CRM: If you have already connected with the existing CRM than you don’t required to connect. If your login for the first time you need provide the connection details. Click on the Dynamics CRM Online. To design the PowerApps you need to select a table from the available list, select the table(entity) Once you have done with your app is ready and you are able to see the app with 3 different type of forms. Design app BrowseScreen1:shows a list of all items and some information about them so that users can easily browse for the item they want. DetailScreen1:shows all information about a single item. EditScreen1:provides an Edit form control for adding an item or updating information about an item. Page Search and sort the contact User can search for one or more records, sort the list of records in ascending or descending order, or both. Form Type Display Screen: You can add the records from the right side pane. this only displays the records. Edit screen: Here user can change the value of a record. Update: Controls Formula: Looking value from other data set from the other data set LookUp(Accounts, accountid=ThisItem._parentcustomerid_value).name Table– Required. Table to search. Formula– Required. This formula is evaluated for each record of the table, and the first record that results in true is returned. You can reference columns within the table. ReductionFormula– Optional. This formula is evaluated over the record that was found, reducing the record to a single value. You can reference columns within the table. If this parameter is not supplied, the function returns the full record from the table. Update = DataCardValue9.Text; Search(Contacts, TextSearchBox1.Text, “firstname”, “_defaultpricelevelid_value”, “_ownerid_type”, “_ownerid_value”) Table – Required. Table to search. SearchString – Required. The string to search for. If blank or an empty string, all records are returned. Column(s) – Required. The names of columns within Table to search. Columns to search must contain text. Column names must be strings and enclosed in double quotes. If SearchString is found within the data of any of these columns as a partial match, the full record will be returned. SortByColumns( Contacts, ” firstname “, SortOrder.Descending ) Bind data to Dropdown Table – Required. Table to sort. ColumnName(s) – Required. The column names to sort on, as strings. SortOrder(s) – Optional. SortOrder!Ascending or SortOrder!Descending. SortOrder!Ascendingis the default. If multiple ColumnNames are supplied, all but the last column must include aSortOrder. SortByColumns(Search(Contacts, TextSearchBox1.Text, “firstname”, “_defaultpricelevelid_value”, “_ownerid_type”, “_ownerid_value”), “_defaultpricelevelid_type”, If(SortDescending1, Descending, Ascending)) Reference Link 1. https://powerapps.microsoft.com/en-us/tutorials/getting-started/ 2. https://powerapps.microsoft.com/en-us/tutorials/formula-reference/ 3. https://powerapps.microsoft.com/en-us/tutorials/working-with-cards/
