Skip to main content

Posts

Showing posts from July, 2017

Dynamics 365 For Operations: Keyboard shortcuts

Action Shortcuts: 1. Open Action Search: Ctrl + ‘ and Alt + Q
2. Move to the Standard Action Pane: Ctlr + F6
3. To Open a Tab in the Action Pane or a Menu: Enter/Space/Alt+Down Arrow
4. Go to Next/Previous Option in a Menu: Down Arrow/Up Arrow
5. To Close a Tab in the Action Pane/Menu: Esc
6. Simulate a Right-Click: Shift + F10
7. To Open Dynamics 365 for Operations Context Menu: Ctlr + F10
8. To Execute the Default Button on a Form/Dialog: Alt + Enter
9. Click a Button or Tile: Enter/Space
10. View Refresh Information for a Count Tile: Alt + Up Arrow Date Picker Shortcuts: 1. To Open the Date Picker: Alt + Down Arrow
2. Move between Dates in the Date Picker: Ctlr + Arrows
3. Move to Next/Previous Month: Page Down/Page Up
4. Move to the Next/Previous Year: Ctrl + Shift + Page Down/Ctlr + Shift + Page Up FactBox Shortcuts: 1. Open the FactBox Pane: Ctrl + F2
2. Close FactBox Pane: Esc
3. Move to Previous/Next FactBox: Alt + Shift + Down Arrow/Alt + Shift + Up Arrow
4. Move to the th Factbox…

Dynamics 365 for Operations: Class extensions and Chain of Command (COC)-Next keyword

The functionality of extension classes (also known as class augmentation) is being improved to allow developers to wrap logic around methods defined in a base class. This allows extending the logic of public and protected methods without the need to use event handlers. When you wrap a method, you can also access other public and protected methods and variables of the class. This way, you can start transactions and easily manage state variables associated with your class. Class Student
{
    real studentAge(int arg)    {
    …
    }
} It is now possible to extend the functionality of method1 using an extension class by reusing the same name to add pre-and post-logic to it. [ExtensionOf(ClassStr(Student))]
class Student_Extension
{
    real studentAge (int arg)     {
     var s = next studentAge(arg + 4);

      return s;
    }
}
Wrapping studentAge and the required use of the next keyword creates a Chain of Command (CoC) for the method. Here is what happens when the following code executes. …

MS Dynamics 365 for Operations: Class extensions (ExtensionsOf[])

Hello J I would be discussing on how easily classes can be extended in Dynamics 365 for Operations. As we are aware that classes can be easily customizable by writing delegate and subscribing the method in the new extension class. But this could be sometime hectic and cumbersome as it consume lot of time when complex logic (Multiple scenarios or method) needs to be written. So in order to save time and effort, extension of class features can be easily adopted. Below syntax shows you how we can write extensions of for a particular class: Class Student
{
    real studentAge(int arg)    {
    …
    }
}
[ExtensionOf(ClassStr(Student))]
class Student_Extension
{
    real studentAge (int arg)     {
     var s = next studentAge(arg + 4);

      return s;
    }
}
We have observed a new keyword here “next” in the extension class. For the time being I would just say it creates a Chain of Command,  We will learn more about it in my next blog post. J

Dynamics 365 For Operations: Pack your data in ZIP folder

Hello guys,
Today, I would be sharing the code in D365 FO to pack your data (can be Xml, Excel, Word etc.) in ZIP folder.

using System.IO.Compression; classSBSCreateZipFile {       
/// <summary> /// Runs the class with the specified arguments. /// </summary> /// <param name = "_args">The specified arguments.</param> publicstaticvoid main(Args _args)     { SBSCreateZipFile file = newSBSCreateZipFile();         File.createAndDownloadExcelFileViaZip();     }
publicvoid createAndDownloadExcelFileViaZip()     { conststr extensionZIP = '.zip'; conststr extensionExcel =