Uncategorized Archives - Page 9 of 12 - - Page 9

Category Archives: Uncategorized

How to Pin Entire Report Page to Dashboard in Power BI

Dashboard is created to get a brief overview of your report by pinning visuals to an Existing dashboard or to a new dashboard. But sometimes it might be required to pin all the visuals of your page in the report to your dashboard. This blog will guide you through how this can be achieved.

Share Story :

Creating Azure Data Factory

Login to azure portal, click on create a resource>Analytics>Data Factory Enter the required details and data factory gets created, enable git option will prompt to enter the git repository details which can later be used for CI/CD. In this way we can create Azure Data factory.

Share Story :

Creating Azure blob container

Azure blob container is a service for storing large amount of unstructured object data, text files or binary. We can publicly expose or can use blob storage privately. Below are the steps to create Azure blob container: Go to Storage account, select storage account (In this case cloudstorage123) > overview and click on containers. When we go inside of container, click on ‘+ container’ to create new container, then it will prompt to enter the container name and public access level. Below are public access levels, Private: By Default, it is private, and it is accessible to account owner. Blob: Allows public read access to blob. Container: Allows public read and list access to entire container. after entering above details container gets created, Now we will create blob storage, to do we have to click on upload Now we can see that Csv file uploaded and under the Input folder. Each step description, Select file from local system. In advanced section, Select Authentication type either using account key or Azure AD user account. Select the blob type: It can be Block blob, page blob and append blob. Block blob: It stored text and binary data, up to 4.7 TB Block blobs are made up of blocks of data and managed individually. Appends blob: This blob is like Block lob and it is optimized to appends operations. e.g. it can be used for logging Page blob: It stored random access file up to 8 TB in size, page blobs stores virtual hard drive and serve as disks for VM. Block size: select as per requirement, it can be 64KB,128KB,256KB,512KB,2MB,4MB,100MB Enter the folder name in which we wanted to upload blob, if we enter the folder name which does not exists it will create new folder. Hope above helps!

Share Story :

Incremental refresh in Azure Data Factory

In this article we are going to do Incremental refresh for Account entity from Dynamics 365 CRM to Azure SQL. Steps: Create Linked Service for Azure SQL and Dynamics 365 CRM and create a table in Azure SQL DB Now we will create pipeline, in the pipeline we have two blocks, one is for getting data from last modified date and other block is used to Copy data from D365 CRM to Azure SQL recordmark block:In the Query Section we are retrieving latest modified data, if there is no data in Azure SQL database for modified on column it will take ‘01-01-1999’ and start integrating data after this date. In preview section we can see the last modified data. Copy data from D365 CRM to ASQL block Source In this block we will get last modified date from recordmark block and based on this it will fetch data for account, In the query section we are retrieving the account data from D365 CRM. SinkNow we will create UDT (User Defined Datatype) in Azure SQL, it will take care of update operation of existing records and insertion of new records based on “code” column using user defined stored procedure. MappingBelow is mapping details, once completed with above steps we are good to run Pipeline. first we will check last modified date in Destination Now we will create Account in CRM Now we will run the pipeline. Now will check in destination, as we can see modified date/time is “2020-04-13 07:08:35.000” Now let us modify this record(Change Phone number to “987654321” Now run the pipeline again, Now we will check the data in Destination(Azure SQL Database) In this way we can perform incremental refresh in Azure data factory.

Share Story :

How to Install and Locate new Plugin in XRM

This Blog will show you how you can Install and locate your Plugins in XRM new interface.

Share Story :

AutoNumber field in CDS

Posted On April 6, 2020 by Priyesh Wagh Posted in

The most desired feature is ability to create/customize your own auto-number field. ANd CDS let’s your do just that! I remember the good old days when I had to write a plugin to function for AutoNumber which used to configuration from a supposedly separate Configuration entity and it scary to maintain the code and entity. But this solves all that with so much ease! Create an AutoNumber field in CDS Now, you can start by creating a field in CDS’ Solutions > [YourSolution]> [YourEntity]  Then, under Accounts, you can see that you can actually create an Autonumber. This is not available in Classic UI.Also, please note that you’ll need to keep this field Not Required and Locked (on the form) in order to function. Give it  a suitable name and then you have 3 options to format your auto-number field.String Prefixed numberYou’ll need to define the Prefix, Min Digits, Seed value Date prefixed numberWith Date prefixed, you’ll need to define Date Format, Min Digits of Seed ValueCustomWith custom, you can define the Format. Refer Microsoft’s Documentation for the same – AutoNumberFormat options Save and Publish as you usually would and place your field on the form you want. Working I used String method to design my AutoNumber field. Let’s see how it looks –Once I save the record, the Auto-number will be filled in. If you happen to delete any records already created in the sequence, the auto-number functionality will continue counting upward and not fill out previous backlogs/last deleted auto-number records. Hope this helps!

Share Story :

Where is the Refresh Button on Roll-up fields in UCI?

Posted On April 6, 2020 by Priyesh Wagh Posted in

As we are transitioning to the Unified Interface, some visual cues are a little misplaced or say, hidden. If your Roll-up field on the Classic UI appeared like this where you could simply click on refresh and update the Roll-up field It doesn’t seem to be the case in terms of UCI- It’s Hidden! So, simply click on the Calculator icon –And the Recalculate button will be revealed which updates the valueAnd results into the below in my case –Note: Toggling the calculator icon will reveal/hide the button. Hope this quick tip helps!!

Share Story :

Develop Number Sequence for custom module In D365 Finance and Operations

In Finance and Operations system provide you unique number feature for new record that has been created known as Number Sequence.In most of the cases it is provided by system wherever it is necessary,and it also possible to use existing number sequence using environment only. When you create new module there you might need to setup new number sequence exclusive for that module.In such cases we might need to consider custom number sequence development,so in this blog we will see how to achieve that. In D365 Fo number sequence development is same as that of Ax 2012 but instead of over layering we have to achieve that using extension.Following diagram will help you to get overview of development. following are the steps which need to be performed and screenshots are also there for better understanding. Steps:- 1.       Create an extension of NumberSeqModule Base Enum and add a new element and name it with our Module name and label as well. 2.       Now create New EDT string with the name of PayId and set its properties as follows  3.       Now create parameter table and set its properties as follows and add key field to it       Set its property visible as no create new index and name it as keyIdx and add key field to it 4.       Now create another table where  number sequence is generated on its respective field of table in our case known as PayTable and field where number sequence will be applied is PayId 5.       Create new parameters form and apply table of contents pattern and add required elements(for reference you can use ProjParameters form) as follows Now to add second tab for number sequence setup.Since number sequence is complex for beginner you can simply copy NumberSeq tab of ProjParameters form and paste in Tab form control as follows 6.     Now create form where number sequence will be implemented where PayTable will be datasource and drag its fields to form as displayed. 7. Now add the class with name of NumberSeqModulePay and extend it with NumbeSeqApplicationModule and code for that as follows :- class NumberSeqModulePay extends NumberSeqApplicationModule{     /// <summary>    /// standard method for implementing new number sequence module    /// </summary>    /// <returns>NumberSeqModule value</returns>    public NumberSeqModule numberSeqModule()    {        return NumberSeqModule::Pay;//module name from NumberSeqModule enum extension    }     /// <summary>    /// standard method for implementing new number sequence module    /// sets up number sequences for module identifiers    /// </summary>    protected void loadModule()    {        NumberSeqDatatype datatype = NumberSeqDatatype::construct();        datatype.parmDatatypeId(extendedTypeNum(Payid));//EDT created in previous step        datatype.parmReferenceHelp(“Pay Id”);        datatype.parmWizardIsContinuous(false);        datatype.parmWizardIsManual(NoYes::No);        datatype.parmWizardIsChangeDownAllowed(NoYes::No);        datatype.parmWizardIsChangeUpAllowed(NoYes::No);        datatype.parmSortField(1);        datatype.parmWizardHighest(999999);         datatype.addParameterType(NumberSeqParameterType::DataArea, true, false);        this.create(datatype);         // TODO: Add code for data types associated with the module    }     /// <summary>    /// event handler for implementing new number sequence module    /// adds the module to the global map    /// </summary>    /// <param name=”numberSeqModuleNamesMap”>global map for number sequence modules</param>    [SubscribesTo(classStr(NumberSeqGlobal), delegateStr(NumberSeqGlobal, buildModulesMapDelegate))]    public static void NumberSeqGlobal_buildModulesMapDelegate(Map numberSeqModuleNamesMap)    {        NumberSeqGlobal::addModuleToMap(classnum(NumberSeqModulePay), numberSeqModuleNamesMap);    }     public static NumberSequenceReference numRefPayId()    {        NumberSeqScope scope = NumberSeqScopeFactory::createDataAreaScope(curext());        return NumberSeqReference::findReference(extendedtypenum(PayId), scope);    } }this class  is used to provide number sequence setup parameters 8.       Now we need to load our number sequence to system for which create loadmodule classcode:-class loadmodulePay{       public static void main(Args _args)    {            NumberSeq PayNumSeq;        PayId payid;            ttsbegin;        PayNumSeq = NumberSeq::newGetNum(NumberSeqModulePay::numRefPayId());        payid = PayNumSeq.num();                     ttscommit;         Info(strFmt(“Payslip Id  is :%1 “,payid));    }} 9.       Add number sequence handler to form for that add following code to PayParameter form by selecting view code option on the form this    [Form]public class PayParameters extends FormRun{       #ISOCountryRegionCodes     boolean runExecuteDirect;    TmpIdRef tmpIdRef;     NumberSeqScope scope;    NumberSeqApplicationModule numberSeqApplicationModule;    container numberSequenceModules;       public void init()    {        this.numberSeqPreInit();        PayParameters::find();         super();        this.numberSeqPostInit();    }     void numberSeqPostInit()    {        numberSequenceReference_ds.object(fieldNum(NumberSequenceReference, AllowSameAs)).visible(numberSeqApplicationModule.sameAsActive());        referenceSameAsLabel.visible(numberSeqApplicationModule.sameAsActive());    }     void numberSeqPreInit()    {        runExecuteDirect = false;         numberSequenceModules = [NumberSeqModule::Pay];        numberSeqApplicationModule = new NumberSeqModulePay();        scope = NumberSeqScopeFactory::createDataAreaScope();        NumberSeqApplicationModule::createReferences(NumberSeqModule::Pay, scope);        tmpIdRef.setTmpData(NumberSequenceReference::configurationKeyTableMulti(numberSequenceModules));    }     public  NumberSeqModule numberSeqModule()    {        return NumberSeqModule::Pay;// module literal crated in NumberSeqModule enum extension previously     }     public Common resolveReference(FormReferenceControl _formReferenceControl)    {        NumberSequenceCode code = _formReferenceControl.filterValue(                AbsoluteFieldBinding::construct(fieldStr(NumberSequenceTable, NumberSequence),                tableStr(NumberSequenceTable))).value();         // Do not call super as we’re providing our own disambiguation logic.        // resolvedRecord = super(_formReferenceControl);         return NumberSequenceTable::findByNaturalKey(code, scope.getId(true));    }     public Common lookupReference(FormReferenceControl _formReferenceControl)    {        NumberSequenceTable selectedRecord;        SysReferenceTableLookup sysTableLookup = SysReferenceTableLookup::newParameters(tableNum(NumberSequenceTable), _formReferenceControl, true);        Query lookupQuery;         // Do not call super as we’re providing our own custom lookup logic.        // selectedRecord = super(_formReferenceControl);         // Display the Title and Department fields in the lookup form.        sysTableLookup.addLookupfield(fieldNum(NumberSequenceTable, NumberSequence));         // Create a custom Query that filters on NumberSequenceScope.        lookupQuery = new Query();        lookupQuery.addDataSource(tableNum(NumberSequenceTable)).addRange(fieldNum(NumberSequenceTable, NumberSequenceScope)).value(queryValue(scope.getId(true)));        sysTableLookup.parmQuery(lookupQuery);         // Return the record selected by the user.        selectedRecord = sysTableLookup.performFormLookup();         return selectedRecord;    }     [DataSource]    class NumberSequenceReference    {        /// <summary>        ///        /// </summary>        void removeFilter()        {            runExecuteDirect = false;            numbersequenceReference_ds.executeQuery();        }         public display TaxBookSectionId taxBookSectionId(NumberSequenceReference _numberSequenceReference)    … Continue reading Develop Number Sequence for custom module In D365 Finance and Operations

Share Story :

How to delete old backup file automatically in SQL Server using Maintenance Plan

Posted On April 6, 2020 by Sandip Patel Posted in

There are different ways to delete old backup file, in this blog we will learn how to delete old backup file automatically in SQL Server Maintenance plan using the cleanup task. Step 1: Connect to the SQL Server, expand it and the Management folder after. Then right click on Maintenance Plans and click on Maintenance Plan Wizard. Step 2: In the Maintenance Plan Wizard, click Next Step 3: Enter a meaningful name and, optionally, a description, and in the bottom right click on Change.. Step 4: When the new job schedule window pops up, check if the Schedule type is set to Recurring. After that, we can set up the schedule using the option below. After that click OK. Step 5: Check if everything is correct before clicking on Next. Step 6: In the next window, check Maintenance Cleanup Task and click on Next. Step 7: In the following window, because we have only one task, there is no ordering, so we proceed by clicking on Next. Step 8: In the following window Under Delete files of the following type: we select Backup files by clicking on the radio button. Under File location: we select Search folder and delete files based on an extension. Under that, we specify where to search for the folders and what type of an extension to look for. Also, we can check the Include first-level subfolders option if the backups are stored in separate subfolders. Note : The file extension we input must not contain dot (‘.’) – ‘.bak’ is incorrect, ‘bak’ is correct Under File age: we check the option Delete files based on the age of the file at task run time and specify the age of the files below After checking that everything is correct, we proceed by clicking Next: Here you have the list of time frame options like Hour(s), Day(s), Week(s), Month(s) and Year(s). You can select accordingly your requirements. Step 9: In the next window, we may select that a report is written and/or mailed to the email address we input every time the Maintenance plan runs. Step 10: In the next window we press Finish to complete the creation of our Maintenance Plan. After that we can check under Management -> Maintenance Plans for our newly created plan: Click on Finish button. Hope this helps!

Share Story :

Resolve the dependency between multiple solutions in D365 Customer Engagement / CRM Solution using Solution Component Mover.

You have might question in your mind that why we need to move the components from one solution to another solution in D365 Customer Engagement So, let’s consider a scenario you and your team is working on D365 CRM customization and created the two solution — ‘ Solution A’ and ‘Solution B’. While customization development when you are moving the ‘Solution A’ on the Production instance but you are not able to move it. Because some of the missing components are present in the ‘Solution B’. Then you have decided to move the ‘Solution B’ first, but again while moving the ‘Solution B’ its failed because of some of the missing components present in ‘Solution A’. It means ‘Solution A’ and ‘Solution B’ are dependent on each other and you can’t move either of the solutions in the Production Environment or Target Environment. There are two solutions to the above problem Add the missing components in the one solution and move that solution to production. Merge the dependent solution into one solution using Solution Component Mover. Now, the First solution is time-consuming as well as effort making and developers need to track all the missing components and add them manually. But using Solution Component Mover, you can merge solutions in 10 to 15 min just by selecting the component from Source Solution and Target solution to which you need to move the components. So, let us see how to do it. Perquisites: XrmToolBox You can download the XrmToolBox from https://www.xrmtoolbox.com/ Steps to follow: Open the XrmToolBox and connect to your D365 CRM environment. Search for the Plugin “Solution Components Mover” Image: Search Solution Components Mover in XrmToolBox 3. Once the plugin will be load, click on load solution — it will load all the solutions present in the Environment. Image: Click on Load Solution After solutions are loaded you can see I have two solutions in my Environment “Solution A” and “Solution B” which have dependent components and one “Target Solution” on which I m going to copy the component so that “Target Solution” will become a master solution. Solution A Image: Solution A has Account entity and it’s subcomponents Solution B Image: Solution A has Case entity and it’s subcomponents Target Solution Image: Target Solution doesn’t have any entity or component. 4. Move the solution component by select the Source solution and Target Solution 5. Click on the Copy component, a popup will open where you can select the component type to move to the target solution. 6. Click on “Ok” and component from both solutions will be moved to Target Solution. You can see the following screenshot in which Target Solution has a component from “Solution A” and “Solution B”. You can see XrmToolBox Plugin how it helps to reduce your time and effort to which are required to move the component from solution to solution manually one by one.

Share Story :

SEARCH BLOGS:

FOLLOW CLOUDFRONTS BLOG :


Secured By miniOrange