Category Archives: Blog
Using Integrated GP Customers for creating Sales Order through TIBCO Cloud Integration
Introduction: Recently, we came across an issue where we were integrating Customer and Sales Order from Dynamics 365 CRM and GP. Customers and Sales Orders were successfully integrated except when Sales Order was created using the Integrated Customers; an error regarding Credit Limit would occur. The TIBCO Cloud Integration GP connector does not support the ability to set a customer credit limit, which in turn will not allow you to use that Customer for creating a Sales Order. Resolution: In GP Web Service Security Console, under Create Customer Policy: Change the Behaviour of Customer Class Defaulting from “Do Not Use Customer Class” to “Use Customer Class”. In the Scribe Mapping, pass a ClassKey_Id. For ClassKey_Id, setup a Customer Class with no Shipping Method or Tax schedule ID and specify the credit Limit properties.
Share Story :
Bug fixing for the error ‘The request for path /NAV2018/dev/apps failed with code 422.’
Introduction: Work around to solve the error ‘The request for path /NAV2018/dev/apps failed with code 422. Reason: The value “1473493” can’t be evaluated into type Date’. This is a bug accepted by Microsoft. Thus this blog demonstrate the workaround to the bug until it gets fixed. Pre-requisite: NAV 2018 Demonstration: Converting the text files to AL files from C/AL suing TEXT2AL utility, Thus, InitValue property of the field is set as per the C/AL object but, it throws the following error Workaround to this is either comment out the code and validate the field and add the data. Conclusion: This is a bug and the following method is only a quick fix until a new version is released.
Share Story :
Saving the Data of NAV 2018 after upgrading the extension in Visual Studio Code
Introduction: In NAV 2018, after installing the extension the data of the newly created fields using extension is to be filled. But after upgrading the extension the data of the added field gets flushed out. Thus, this blog demonstrates how to configure to prevent the data from getting flushed. Pre-requisites: NAV 2018 CU2 along with its Installation DVD Zip Demonstration: Goto Visual Studio Code and uninstall the previous version AL Language Extension. Install the extension from AL Language from the path “C:\Users\<Username>\Downloads\CU 02 NAV 2018 NA\NAV.11.0.20348.NA.DVD\ModernDev\program files\Microsoft Dynamics NAV\110\Modern Development Environment/ALLanguage.VSIX” file. Select the .VSIX file. Reload the AL Language Extension. Adding the following lines to ‘launch.json’ file If the data is to be saved :- “schemaUpdateMode”: “Synchronize” If the data is to be flushed :- “schemaUpdateMode”: “Recreate” Conclusion: This feature wasn’t included NAV 2018 and the data used to get flushed everything the extension was upgraded. Thus, the data flushing issue was resolved in NAV 2018 CU2 version.
Share Story :
Barcode Control in Dynamics 365
Overview: Here’s a quick helpful control to enter barcodes in D365 fields. Here is how it goes – Adding Barcode Control: Here’s how you can add the Barcode Control. Select Add Control in the Field Property section. Select Barcode Scanner and click on Add. Select the appropriate configuration of devices for the control and click OK Finally, save and publish your customization. Seeing it Work: Now, since I have published a field called Brochure Barcode. I can use the same on the mobile device to capture barcodes without having to type them manually I can see the icon on the right end of the text box of type Barcode. On clicking the barcode icon, my phone’s camera opens. Show it in front of the barcode. And it automatically detects and enters the same in the textbox. That’s it. Hope this helps!
Share Story :
Editable Grid Validation
Introduction: In this blog we will be discussing about the Business Rule validation issue in Editable grids caused when the fields are not present in the views. Scenario: In our demonstration we will take the example of a contact form and design a business rule to lock the email field if the Job Title field is blank. Implementation: Step 1: First we enable editable gird for the contact entity as shown in the image below. Step 2: Then we create a business rule for the contact form to lock the Email field if the Job Title field is blank. The Business Rule is shown below. Step 3: Now in the editable grid we can see that the Email field is locked as the Job Title is blank. The field is unlocked once the job title is entered. Step 4: Now we edit the criteria of the Business Rule and add a new condition to also check if the Description field contains data as shown in the image below. Step 5: When we go to the editable grid we see that even though the Job Title field is blank the Email field is unlocked which should have been locked. Step 6: The reason behind this is that the My Active Contacts view does not contain the field description hence the validation fails. Step 7: To solve this we add the Description column to the view as shown below. Step 8: Now if we check in the editable grid we see that the validation works correctly and the email field is locked. Conclusion: This is important to be noted as, if there is some validation done using business rules, JavaScript and field is not present in the views the validation wont work and there will be incorrect data entries made using the editable grid.
Share Story :
Email Migration from D365 CRM v8.2 to D365 CRM v9 using TIBCO Cloud Integration: Activity Parties
Introduction: In this blog, I will detail how to migrate Activity Parties of Emails from one CRM to another. In my previous blog, I outlined the first step of the Email migration process which is migrating the body of the email. Migrating the corresponding Activity Parties of an Email is the second step of this process, as the Email body now exists in the Target CRM. What are Activity Parties? Other than the Body, an Email Activity consists of: Sender: The person(s) sending the email. Recipient: The person(s) receiving the email. CC & BCC: The person(s) that are copied in the email. Owner: The person who is the owner of the email. Regarding: This generally links to an entity in CRM which pertains to the email. For example, a Case or a Project in CRM. ‘Sender’, ‘Recipient’, CC’, ‘BCC’, ‘Owner’ and ‘Regarding’ are each stored in CRM as a separate Activity Party of that email with a ‘Participation Type’ code (field name: ‘participationtypemask’) to establish the field that specific party belongs to i.e. 1 = Sender, 2= To Recipent and so on (as shown below). Generally, in an Activity Party, the person(s) are either System Users or Contacts. This is specified in the field ‘partyobjecttypecode’ as shown above. Keeping this in mind, one can lookup to these entities to obtain the corresponding GUIDs in the Target System and map it as the ‘partyid ‘. After the Activity Party is created, the owner of the Activity Party should be updated as per its owner in the Source environment. The ‘Owner’ Activity Party is automatically created by CRM as the same User as the Owner of the Email (configured when you migrate the Email Body in Step 1). The ‘Regarding’ Activity Party links to a Case/ Project and not a ‘person’, however, the same logic applies i.e. map the required GUID and its type. Migrating Activity Parties is not as complicated once understood. Unfortunately, not much is easily available online about this. I hope this blog demystified a few concepts about Activity Parties of an Email and how they can be migrated from one CRM to another. My next blog will detail how to migrate Email Attachments and update the status of an Email.
Share Story :
Email Migration from D365 CRM v8.2 to D365 CRM v9 using TIBCO Cloud Integration: Email Body
Introduction: Data migration can be a little challenging, especially when it comes to Emails. In this blog, I will outline the steps that need to be followed to successfully migrate Emails as well as important things to keep in mind during the process. Steps: There are four main steps to follow to successfully migrate an Email from Source to Target: Send the body of the Email. Send all the related Activity Parties. Send the details of the related Email Attachment(s). Update the Status of the Email. In this blog, we will be dealing with the first step i.e. creating the map in TIBCO Cloud Integration to send the Body of an Email. Migrating the body of the Email is straightforward compared to the next step but there are a few aspects to keep in mind: 1) Send the email as Open so that Activity Parties and Attachments can be migrated in the following steps. Not sending the email with an “Open” status could lead to Activity Parties and Attachments not being migrated to the corresponding email. 2) When an email is migrated, the owner of the email will be the User configured in the CRM Connection in Scribe. In order to maintain the same owner as in the Source, you can update the email with the correct owner after it is created. In the screenshot below, I am using a Lookup Table in Scribe to map the User GUID of the Target System. 3) If you want the GUID of the email to remain the same in Source and Target, do not forget to map the ‘activityid’ of the Email entity. Conclusion: I hope this blog provided some insight into the migration process for Email Activities. In the next blog ‘Email Migration from CRM v8.2 to CRM v9 using TIBCO Cloud Integration: Activity Parties‘, I will talk about migrating ‘Activity Parties’ which can be the most challenging part of Email Migration.
Share Story :
Rollling up the multiple rows into a single row and column for SQL Server.
Problem: Need a way to roll-up multiple rows into one row and one column. There is a way we can roll-up multiple rows into one row using pivot, but we need all of the data concatenated into a single column in a single row. Solution: To achieve this we will use For XML Path Clause and STUFF Commands. STUFF() Function STUFF function is used to insert a string into another string. Basically, it deletes the characters from a source string and inserts another string at the specified position. Syntax: STUFF(Expression,Start, Length,Replacement_expression) Here, Expression is an expression of the character data to be modified. Start is an integer, which specifies start position in Expression to delete and insert another string (i.e. Replacement_expression) from here and length is an integer, which specifies the number of characters to be deleted. Replacement_expression is a character expression to be inserted at the start position. Example: Data in table like this: Query : Output :
Share Story :
Print Custom Size Report using Document Routing in D3FOE
Introduction: Recently I was working on Cheque Report. I created a custom size Cheque design and it was working fine while downloading it. Then the task was to print the cheque and test but the printout was off size. In this blog I will guide you how the custom size report prints using document routing agent in Dynamics 365 for Operations. Pre-requisites: Install Document Routing agent Configure Network Printers Adobe Reader Note: Click here to refer how to configure Document routing and network printer Steps: 1. Setup Printer Page Size You need to configure your printer to print custom size report. Go to Printer Paper size and select custom. A new dialog will ask for page size. Enter the Custom Paper size. Make this custom size as your default size. 2. Setup Adobe Reader Once you print the report from Operations with Print Destination as Printer, The Document Routing will take the command and send the document to Adobe Reader. Thus, it takes printing configurations of Adobe Reader and send it to Printer for printing. So, we need to setup the Adobe Reader as well. Please refer below screenshot for Adobe Reader Settings. Conclusion: After setting up Printer size and Adobe Reader with same orientation and page size you can print the Custom size report from D365 Operations directly to Printer with correct print layout.
Share Story :
Connecting Dynamics 365 Contact packs in Power BI
Introduction: In this blog you will see how we you can use content pack for D365 in Power BI. Content package that are created are easy for your team to find — they are all in AppSource. Because they’re part of Power BI, they leverage all the features of Power BI, including interactive data exploration, new visuals, Q&A, integration with other data sources, data refresh, and more. Steps: Login to your Power BI Account > Click on Get Data. Click on Services. Select the proper content pack from the AppSource. Click on Sales Analytics for Dynamics 365 > and click on “Get it now”. It will as about the CRM account, and the Fiscal Year End Month Number, fill in the details and click next. By default, it will use OAuth with the current account that is logged in. After successfully login, dashboard will start with pumping up with data. Importing data will take some time, and after successful login you will get the ready content package Dashboards and report. You are set and good to go, try other content pack as well. Currently there are 21 Content pack available for different flavour of D365, try them there are superb.
 
								 
								