Category Archives: Blog
Filter records in gallery control based on value selected in other gallery control in PowerApps.
Introduction: This blog explains how to Filter records in gallery control based on value selected in other gallery control in PowerApps. Scenario: I am using Dynamics 365 Connection. I have data source named as Time Entry within that data source I have fields named as Projects and Project task and data type of both fields is lookup. Values in Project Task is filtered based on value selected in Project field. Implementation Steps for Filtering Project Task based on Project: We must add Projects and Project Task data source in PowerApps because their data type is Lookup.(If you don’t know how to work with lookup fields Refer: https://www.cloudfronts.com/connect-dynamics-365-use-lookup-field-dynamics-crm-powerapps/ ) Add New screen name it Project Lookup and add gallery control on that screen. Select gallery control and set its item property to:SortByColumns(Search(Filter(Projects,statecode=0 ), TextSearchBox1_1.Text, “cf_name”), “cf_name” ) Add new Screen and name it Project Task Lookup and add gallery control on that screen. Select gallery control and set its item property to:SortByColumns(Search(Filter(‘Project Tasks’, _cf_project_value =Gallery1.Selected.cf_projectid),TextSearchBox1_2.Text,”cf_name”),”cf_name”)here: Gallery1 is the name of gallery control on Project Lookup screen.
Share Story :
Business Process flows process stage name blank in D365 v9 Customer Engagement
Introduction: In this blog, we will demonstrate a way to display the current active stage of a business process flow in views in D365 v9 as the out of box process stage name field does not show any value in the views. Implementation: Step 1: We have created a basic Business Process flow on contacts which has two stages “Basic Information” and “Contact Details”. Step 2: If we want to create a view with the active stage of the business process flow displayed in the column, we first create a new view and in the Record Type we Select Process Stage(Process Stage) and in the columns we select “Process Stage Name” Step 3: Now when we check the view in Contacts we see that the Process Stage Name is blank. Step 4: One workaround for this is to design a Workflow on the Business Process flow entity that was created as shown in the below image . Here “Contact Infor” is the business process flow entity. Step 5: The workflow will be a Real time workflow and will be triggered when process is applied and on change of “processid” field. When the workflow triggers it will copy the name of the field in a new Text field and this can be used in views to display the current Stage as seen below.
Share Story :
Change Tracking for Data Entities in D365 Operations
Introduction: In this blog article, we will see how we can track changes in data made since last export using Data Entities in D365 Operations. It is basically an SQL Change Tracking feature. Steps: Go to Data Management -> Data Entities. Select the Entity for which you want to enable Change Tracking. In the Action Pane, go to Change Tracking. There are 3 options: Enable primary table – It will only track changes made on root table. Enable entire entity – It will enable tracking for all Writable Datasource used in the entities. Enable custom Query – You can create a custom query to track changes on the required tables. You can also disable the change Tracking by clicking on ‘Disable Change Tracking’ option. You should be careful while enabling change tracking as it will require additional processing for maintaining data for changed records.
Share Story :
How to update the selected line in the Subform on click of an action button in the Mainform in NAV
Introduction: The requirement was such that , the user will select a line in the subform. The subform has fields like the Customer ID, Customer Name, and a field Recieved Crates. On click of the action button in the Main form, a page opens which contains the details of the selected line in the subform like Customer ID and Customer Name also a field Crate recieved(Integer Datatype). User will enter Crate Recieved and click on OK. The number entered in the Crate received will modify in the Recieved crates field in the subform. This blog explains the step wise procedure to achieve the above output. Pre-Requisites: Microsoft Dynamics NAV 2017 Steps: 1. Open the Developement Environment of Microsoft Dynamics NAV and open the Main form(card Page) and create an action button Received Crate and write the below code. Here, “Crate Lines” is the Page control (subform), Here a call is made to CallLinesfromCard function with Parameter CratesLine. CallLinesfromCard is a global function made in “Crate Lines”Subform. 2. In the function CallLinesfromCard in the subform. Below is the code. Here ReceiveCrate is a page. Its the page that open on click of the action button. A function is called CrateReceivedFromCust with parameter CrateLinesTable. 3. A global function is made CrateReceivedfromCust in the page ReceiveCrate. Here global fields variables are made CustomerID,CustomerName,NoOfcratesShipped. Theses fields are autopopulated with values from the selected line. A field Crates Received is also created where the user will enter data. 4. OnQueryClosePage of Receive Page, below code is written to modify the Record of the Subform. 5. Set the property RefreshOnactive to yes on the Subform and Mainform.
Share Story :
Files restore feature in OneDrive for Business
Introduction: Restore feature has been added to OneDrive for Business, this feature allows to restore files any time during the last 30 days. So, users will be able to use this feature and restore file to a specific period of time. Restoring file: Sign in to your OneDrive for Business using work account credentials. Choose Settings. Then choose “Restore your OneDrive”. Select a Date, you can select either ‘One week ago’, ‘Three weeks ago’ or you can also select a custom date and time. So, in this case I am choosing custom date and time. Also choose the period of days and files you need to restore. After choosing the files click on ‘Restore’. Click on Restore on the confirmation pop up. Once the files are restored click on ‘Return to my OneDrive’ and you will be able to see your restores files. Conclusion: This is a great and very much wanted feature has been added in OneDrive for Business that will save a lot of efforts and users will be no more worried about OneDrive data.
Share Story :
IT and Business Systems for a Small and Medium Business in India
In this article, we highlight the key cloud-based IT and business systems that a Small and Medium Enterprise in India could use to improve efficiency while keeping costs low. These are also systems that we use to run our day to day operations. 1. Office 365 Business Premium – Email, Microsoft Office, Document Management, Security and Microsoft Teams. 2. QuickBooks Online Accounting Platform 3. PayBooks – India Payroll with integration to QuickBooks Online and optional biometric attendance integration. 4. Zoho Recruit – Recruitment Platform 5. Zoho People – HR Management Platform 6. Exotel – Cloud EPBAX business phone system 7. QuickHeal firewall for our network. Additional systems (once you grow to a certain size and need more processes and reporting. We use all of the below systems)– 1. Microsoft Dynamics 365 – Dynamics 365 Sales with lead integration with your website (typically WordPress). Dynamics 365 for Customer Support. Dynamics 365 Customer Support Portal for customer self service. Dynamics 365 Project Service Automation for Project Management. MailChimp for Marketing Automation or ClickDimensions. 2. PowerBI Analytics Platform. 3. GoToMeeting and GoToWebinar for Meetings and Webinars. Connect with us!
Share Story :
D365 V9 Alert Dialog
Introduction: This blog explains how to show alerts in D365 V9. Details: We often get requirement to show alerts in D365 V9 Forms and can be achieved using below syntax. Xrm.Navigation.openAlertDialog(alertStrings,alertOptions).then(closeCallback,errorCallback); Example: 1. Alert with no callbacks. var alertStrings = { text: “successfully checkedin.” }; var alertOptions = { height: 120, width: 260 }; Xrm.Navigation.openAlertDialog(alertStrings, alertOptions).then( function () { } ); 2. Alert with callback method. var alertStrings = { confirmButtonLabel: “Yes”, text: “This is an alert.” }; var alertOptions = { height: 120, width: 260 }; Xrm.Navigation.openAlertDialog(alertStrings, alertOptions).then( function success(result) { console.log(“Alert dialog closed”); }, function (error) { concole.log(error.message); } ); Note: Xrm.Utility.alertDialog(message,onCloseCallback) is been deprecated.
Share Story :
Calculated Currency Field doesn’t support Min or Max values
Introduction: This is an observation I made when one of our clients wanted to have a limit on the calculated fields. Let’s say, a lower limit of the currency field that is expected to throw an error (or somehow not allow) the currency going in negative values for a calculated field. Observation: Now, I want to keep the Minimum Value as $0. I’ll keep the Minimum value as 0 so that when I can make it as Calculated Field, the Minimum Value gets locked by $0 I’ve entered. See screenshot below: But, as soon as I make it as Calculated Field and click on Save, this happens- It still appears that I will save it as 0 But, it creates the field, locks the minimum field and then defaults it back to the original minimum value. Bottom line: We cannot have our own Minimum Value on the Calculated Currency fields. But however, I found that this is allowed for other calculated fields. Like the Whole Number.
Share Story :
Error During Email Activity Migration: ActivityPointer Does Not Exist
Introduction: While migrating Email Activities from D365 v8.2 to v9, I came across the following error: “Operation failed. Label: Create email, Name: emailCreate2, Message: -2147220969: ActivityPointer With Id = XXXXXXXXXXXX Does Not Exist” This can cause some confusion as activitypointers do not need to be migrated before you begin migrating emails. What are ActivityPointers? The activity pointer (activity) entity represents any activity or task that is performed, or to be performed by a user. An activity is any action for which an entry can be made on a calendar. Whenever you create an activity record in Microsoft Dynamics 365, a corresponding activity pointer record is created. This indicates that the activity record and the corresponding activity pointer record have the same value for the ActivityId attribute. For example, if you create an Email record, the attribute values of Email.ActivityId and the corresponding ActivityPointer.ActivityId will be the same. This should not be confused with ActivityParties which represent a person or group associated with an activity. An activity can have multiple activity parties. Cause: Upon inspection, I discovered that those emails are linked to themselves, having the ‘parentactivityid’ field populated with its own activity GUID. The error was being caused because Scribe could not find the parent activity in the Target environment (since it had not yet been created). Solution: Remove the ‘parentactivityid’ mapping from the ‘Create Email’ block. Add an If-Else Block below the Create block to check if the Email has been created, and if true, use an Update block to update the Email with the ‘parentactivityid’. Now, the Email activity will be created with the correct GUID and once created, will be updated with the required GUID as ‘parentactivityid’. This solution resolved the above issue and email activities can now be created without this error occurring.
Share Story :
Enable IIS to deploy Web Service
Introduction: In this blog, we will have a look on how IIS can be enabled for Web Service Deployment Steps to be followed: 1) Search for Windows features in your PC. 2) Check the box for Internet Information Services and click OK. A confirmation screen appears. Sometimes there are cases after the above procedure that it does not works. At such times, check all the options in windows features under IIS.