Are you the publisher? Claim or contact us about this channel

Embed this content in your HTML


Report adult content:

click to rate:

Account: (login)

More Channels

Channel Catalog

Channel Description:

A one stop shop where the Microsoft Dynamics ecosystem can learn, share, connect and network with others within the Community. Peer to Peer discussions , product demonstrations, blogs & videos.
    0 0

    Recently we had a requirement to write an SSIS package that will fetch the data from SQL Server and will insert it (or create records) into Dynamics 365 CE. For connecting and fetching data from SQL Server...(read more)

    0 0
  • 10/22/18--10:58: The Munich Hackathon
  • What are Hackathons? A broad way to describe them is problem-solving events. However, two of our UK-based PowerObjects consultants recently made a visit to Munich, Germany to attend one of Microsoft’s annual Hackathons, and they came home suggesting a better description: a whole lot of fun.

    Taking place during the weekend of 13th-14th October, the Microsoft Hackathon was set up as a competition, wherein 50 people were split into approximately 30 groups to devise and deliver a working solution on an issue of their choosing. PowerObjects consultants Pavlos Vasileiadis and Jack Murphy each participated in the Hackathon for a very intense 48 hours of (almost) non-stop technical work, planning and presenting.

    Their motivations and participation throughout the Hackathon completely personify PowerObjects’ 5 Guiding Principles, which are collectively a very strong component of our Company Culture. To that end, let’s highlight each of the Principles and describe exactly how Pavlos and Jack exemplified PowerObjects’ values during the Hackathon.

    “It was a good mixture of competition but also sharing knowledge, all in a really positive atmosphere” – Pavlos


    The key aspect of adding value came in the form of defining and consolidating the pain points relating to the topic and project the PowerObjects team chose. The healthcare solution they devised, which they coined PowerClinic, can add tremendous value back to the clinics and practices experiencing the same pain points. Adding value remained at the core of the team’s practices throughout the intense 48-hour event.

    Whilst not a new player in EMEA scene, PowerObjects is always on the lookout for ways to boost and bolster our Brand image and recognition within EMEA. Adding value to the PowerObjects brand is an important and ongoing process that is always aided by every member of the organisation. Pavlos and Jack, during their weekend of non-stop hacking, became Brand Ambassadors by spreading awareness, throughout all their activities, of who PowerObjects is and what we do.

    True to the guiding principle, our two refined consultants took it upon themselves to add value not only to PowerObjects, but also to themselves. The best way to build and improve anything is to start at the foundation. Pavlos and Jack accomplished that by learning priceless information about themselves, including how they work under pressure, and best practices in delivering solutions. Over the course of 48 hours, they further developed their in-depth knowledge of Microsoft’s platforms and technologies, as well as developed crucial knowledge about themselves.


    Due to the large number of people and the plethora of teams all competing for first prize, there was a naturally incited atmosphere of competition that the PowerObjects representatives were more than eager to meet head on.

    “PowerObjects loves a challenge” – Jack

    Pavlos and Jack volunteered to lead their individual team of five in devising, strategizing and executing their planned solution. This meant that on top of their own specific project responsibilities, their role included delegating tasks, ensuring that timelines were kept to and total organisation of their team. They took PowerObjects’ second principle to heart and created an efficient and productive working environment, boosting their teammates’ spirits and teamwork.

    Within a smaller context, Pavlos and Jack seldom have the opportunity to work this closely together for such an extended period. The 48-hour weekend enabled them to get to know each other much better as working colleagues and cultivate an effective working dynamic. No doubt this will be reflected in their future projects!


    At PowerObjects, it’s highly important that every member of the organisation truly enjoys their role. Passionate involvement in projects and daily tasks helps ensure that solution delivery is consistently successful. During the Hackathon, passions and competition were running high throughout, which helped fuel the PowerObjects team to work harder and achieve more.

    Going up against the clock to complete a task under a great deal of pressure is exactly the type of situation in which PowerObjects thrives and produces exemplary solutions. Competing against other teams at the Hackathon, in such an intense environment, opened another view of the technology and reaffirmed Pavlos’ and Jack’s enjoyment of what they do.

    “There is no point of the Hackathon that you don’t enjoy” – Pavlos


    Having a love for the technology used every day is an important aspect in the life of a PowerObjects employee. The Microsoft Hackathon event shows precisely how Pavlos and Jack live the technology as a key part of their lives. They both researched the event themselves and made conscious and involved efforts to ensure they attended, since the opportunity to work this closely with Microsoft, and regarding Microsoft technology, was too good to pass by. They live the technology right to their cores and their involvement, even on weekends, reflects the commitment to be the best in their respective fields.

    It is important to note that all the work that went into PowerClinic at the Hackathon was completed using current Microsoft technologies. An important learning that Pavlos and Jack gained was the in-depth insights into what is possible with the current technologies, even under strenuous and short timelines. For example, the team managed to successfully “get 3 months of work done in the space of 2 days.” Knowing the technology inside and out is critical to being able to deliver the best solutions, consistently.


    One of the main objectives that Pavlos and Jack had defined, before going into the Hackathon, was to make sure they initiated, worked diligently on, and successfully executed a project they deeply cared about, thereby adding value not only to business operations, but to the betterment of society, as well. After a team brainstorming session, they decided on designing and creating a healthcare-based solution, with the idea of streamlining the patient process.

    “It wasn’t just about adding value to the business, it was about adding value back to society” – Jack

    Even in the face of severe competition and pressure, our PowerObjects ambassadors remained true to the final core of our company culture. They did the right thing by focusing on a project to improve the lives of a much wider range of people: those suffering from almost innumerable issues.


    What benefits do you feel you gained from attending the Hackathon?

    • Pavlos: “Managing a team under constant and absolute pressure teaches you a lot about project and time management. More importantly it teaches you that there is no delivery without the correct attitude of management.”
    • Jack: “Being able to work with similar like-minded consultants, and actually deliver a working solution in that timeframe teaches you a lot about teamwork as well as how important and rewarding good communication is.”

    Did you learn anything new from the experience?

    • Pavlos: “I learnt a lot about myself and how I cope with the pressures of delivering under strict and short deadlines. Sticking to your plan and continuously delivering is crucial.”
    • Jack: “I definitely learnt a lot about how to keep your calm under a lot of time-intensive pressure. Also, that at events like these everyone runs almost purely on energy drinks!”

    Would you do the Hackathon again?

    • Pavlos: “Absolutely, but I need a bit of a break first.”
    • Jack: “I would definitely go back again next year.”


    Happy Dynamics 365’ing!

    0 0

    Having a business system that gives actionable insights is important, allowing staff to be able to take information and turn...(read more)

    0 0
  • 10/22/18--12:54: Article 14
  • Tip #1 Self Service Portal for Users using Kingsway SSIS jobs

    Several self-service tools for CRM users in various departments: bulk file upload mechanisms with necessary validation and error reporting that identifies data mapping points that are discretionary for users to self-resolve.

    One User story: Hey Summer, a new Hospital joined – we have an excel file of Contacts and their various functional roles we need imported into CRM!

    Resolution: the self-service portal allows users to attach their own files they need mapped or audited in CRM and processes the data every 2 hours: sending the notifications and any errors to the users to correct.

    An example of an error notification sent to a user: There is already an active Contact in CRM with that first and last name at that Organization, but the email address and job title differ. Does the contact in CRM need to be updated or do you need to create a new unique Contact? This is a decision highlighted for the business to make, not IT and the errors can also be resolved in a self-service mechanism.

    Tip #2 CRM Performance Center – Just hit Ctrl + Shift + Q in Internet Explorer

    Using the tool to log improved form load times for record

    Example: Consolidated 8 variations of an Account down to 1 with use of field level security and turned legacy form rendering off has improved the form load time of an Account by 5 seconds till an ‘edit-ready load.’

    Resolution: Account forms are now loading 5 seconds faster and we can prove this by using the CRM Performance Center that logs all the events that occur when a form is loaded.

    The post appeared first on CRM Innovation - Microsoft Dynamics 365 Consulting and Marketing Solutions.

    0 0

    The Right Accounting Technology Partner Makes All the Difference in the World – “If another business was asking me, “who would you recommend to help me with my accounting system?,” says Earl Longoria (Texas Direct Auto), “Hands down I would recommend EIS, specifically because their people are very knowledgeable.”

    Selecting a new ERP accounting solution is one of the biggest decisions you’ll make for your business.  Having been through the process with over 600 companies, we understand how important a successful implementation is for the executive team, the people who will use the system every day, and the company itself.

    A lot of second-guessing and doubt can swirl around an ERP accounting software implementation:  What if things go wrong?  Will this perform as promised?  How much disruption will the organization endure?

    But it doesn’t have to be that way.  Not if you have the right technology partner.

    Our team wants to make the process as stress-less as possible.  Express Information Systems 29+ years of experience continues to eliminate the “what if things go wrong” concern as we bring a 100% implementation success rate to your project.

    Express Information Systems’ 96% customer retention rate is evidence that what we demonstrated to you in the sales process will work as promised following implementation.

    Change means disruption.  The benefit of working with Express Information Systems is that we keep the disruption to a minimum.

    “Due to the knowledge and support of the consultant assigned to us from Express Information Systems, we were able to implement the new accounting system without disruption to our business,” reports Susan Quidley (SecureLogix).

    We perform ERP implementations 22% faster than the industry average.  You are up and running quickly, as promised, and on a system optimized for you and your business goals.

    If you are considering a new ERP accounting solution, remember that an equally important aspect of your decision is the technology partner you choose to guide you through selection, implementation and post-implementation support.  Consider our track record – we would bring our industry-leading performance to your project.  A successful ERP project is just a phone call away.

    0 0

    Source: Microsoft Azure Service Fabric helps developers build applications based on microservices to allow better scalability...(read more)

    0 0

    For the first time ever 9 Business Solutions MVP:s will converge on Stockholm to share their knowledge! In the amazing Dynamics 365 Saturday event which will be held on the 10:th of November 2018 at the Microsoft Office in Kista, just outside Stockholm. As usual, the Dynamics 365 Saturdays are free.

    As the main organizer, me, my company CRM-Konsulterna and the MVP Jonas Rapp, will also help out it is of course very satisfying to have so many talented people sign up to speak. A lot is happening, and version 9.1 was just rolled out today in EMEA if you didn't notice. Hence there is a lot to talk about.

    There will be three tracks:

    • Application - sessions on configuration and usage of Dynamics 365
    • Development - sessions on development and configuration that could be viewed as programming like Flow, LogicApps, PowerApps/CanvasApps etc.
    • Business/Project Management - sessions on how to best run projects, businesses, your career and other softer issues but all related to Dynamics 365.
    As the host, I really hope you are able to secure a seat, we are limiting the amount to 150 and we are getting signups by the hour, so be sure to book your seat now.

    Gustaf Westerlund
    MVP, Founder and Principal Consultant at CRM-konsulterna AB

    0 0

    In this post, we will talk about how to copy data of a table from one database to another using Azure. Here we are using the following Azure resources: Azure SQL Server Azure SQL Database Azure...(read more)

    0 0

    In the previous post , we discussed how to create Azure SQL Server and Azure SQL Database. Now that we are ready with source data/table and destination table, let’s create Azure Data Factory to copy...(read more)

    0 0

    You must have heard. Codeunit 1 is a goner! And if you have not heard it – you must have read about it. Because it has been on Microsoft Docks for a while, and also there was a blog that Microsoft spent on it.

    Well, before I managed to find these description, I was working on my own overview ;-). So let me share it – I do believe that I look at it from another angle.

    Where are my events?

    If we want to extend codeunit 1, we have been subscribing to events. And if not – you should have ;-). So, first question would be – where are the events that we were subscribing to??

    Well, I made my own overview of all the published events in codeunit 1, and the mapping to the new event in the table below:

    OnCheckPreconditionsPerCompany Codeunit<Data Upgrade Mgt.>.PROCEDURE<OnCheckPreconditionsPerCompany>
    OnCheckPreconditionsPerDatabase Codeunit<Data Upgrade Mgt.>.PROCEDURE<OnCheckPreconditionsPerDatabase>
    OnInstallAppPerCompany NOT AVAILABLE ANYMORE
    OnInstallAppPerDatabase NOT AVAILABLE ANYMORE
    OnUpgradePerCompany Codeunit<Data Upgrade Mgt.>.PROCEDURE<OnUpgradePerCompany>
    OnUpgradePerDatabase Codeunit<Data Upgrade Mgt.>.PROCEDURE<OnUpgradePerDatabase>
    OnValidateUpgradePerCompany Codeunit<Data Upgrade Mgt.>.PROCEDURE<OnValidateUpgradePerCompany>
    OnValidateUpgradePerDatabase Codeunit<Data Upgrade Mgt.>.PROCEDURE<OnValidateUpgradePerDatabase>
    OnAfterAutoFormatTranslate Codeunit<AutoFormatManagement>.PROCEDURE<OnAfterAutoFormatTranslate>
    OnAfterCaptionClassTranslate Codeunit<CaptionManagement>.PROCEDURE<OnAfterCaptionClassTranslate>
    OnAfterCompanyClose Codeunit<LogInManagement>.PROCEDURE<OnAfterCompanyClose>
    OnAfterCompanyOpen Codeunit<LogInManagement>.PROCEDURE<OnAfterCompanyOpen>
    OnAfterFindPrinter Codeunit<ReportManagement>.PROCEDURE<OnAfterGetPrinterName>
    OnAfterGetApplicationVersion Codeunit<Application System Constants>.PROCEDURE<OnAfterGetApplicationVersion>
    OnAfterGetDatabaseTableTriggerSetup Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterGetDatabaseTableTriggerSetup>
    OnAfterGetDefaultRoleCenter Codeunit<Conf./Personalization Mgt.>.PROCEDURE<OnAfterGetDefaultRoleCenter>
    OnAfterGetGlobalTableTriggerMask Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterGetGlobalTableTriggerMask>
    OnAfterGetSystemIndicator Table<Company Information>.PROCEDURE<OnAfterGetSystemIndicator>
    OnAfterHasCustomLayout Codeunit<ReportManagement>.PROCEDURE<OnAfterHasCustomLayout>
    OnAfterMakeDateFilter Codeunit<TextManagement>.PROCEDURE<OnAfterMakeDateFilter>
    OnAfterMakeDateTimeFilter Codeunit<TextManagement>.PROCEDURE<OnAfterMakeDateTimeFilter>
    OnAfterMakeTextFilter Codeunit<TextManagement>.PROCEDURE<OnAfterMakeTextFilter>
    OnAfterMakeTimeFilter Codeunit<TextManagement>.PROCEDURE<OnAfterMakeTimeFilter>
    OnAfterOnDatabaseDelete Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnDatabaseDelete>
    OnAfterOnDatabaseInsert Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnDatabaseInsert>
    OnAfterOnDatabaseModify Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnDatabaseModify>
    OnAfterOnDatabaseRename Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnDatabaseRename>
    OnAfterOnGlobalDelete Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnGlobalDelete>
    OnAfterOnGlobalInsert Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnGlobalInsert>
    OnAfterOnGlobalModify Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnGlobalModify>
    OnAfterOnGlobalRename Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnGlobalRename>
    OnAfterReportGetCustomRdlc Table<Custom Report Layout>.PROCEDURE<OnAfterReportGetCustomRdlc>
    OnBeforeCompanyClose Codeunit<LogInManagement>.PROCEDURE<OnBeforeCompanyClose>
    OnBeforeCompanyOpen Codeunit<LogInManagement>.PROCEDURE<OnBeforeCompanyOpen>
    OnBeforeOnDatabaseDelete Codeunit<GlobalTriggerManagement>.PROCEDURE<OnBeforeOnDatabaseDelete>
    OnBeforeOnDatabaseInsert Codeunit<GlobalTriggerManagement>.PROCEDURE<OnBeforeOnDatabaseInsert>
    OnBeforeOnDatabaseModify Codeunit<GlobalTriggerManagement>.PROCEDURE<OnBeforeOnDatabaseModify>
    OnBeforeOnDatabaseRename Codeunit<GlobalTriggerManagement>.PROCEDURE<OnBeforeOnDatabaseRename>
    OnBeforeOpenSettings Codeunit<Conf./Personalization Mgt.>.PROCEDURE<OnBeforeOpenSettings>
    OnEditInExcel Codeunit<ODataUtility>.PROCEDURE<OnEditInExcel>
    OnRoleCenterOpen Codeunit<Conf./Personalization Mgt.>.PROCEDURE<OnRoleCenterOpen>

    I indicated in red the ones that need a bit attention, as either they are not available, or are renamed.. .

    Are there new events as well?

    Yes! And quite many of them. I just don’t know how I can give you a complete overview of all the events “that could have been in codeunit 1, but are now spread over multiple codeunits.. “. So, let me just give you a few tips of where you could find such “generic” or “platform wide” or “…” events.

    In my opinion, the below codeunits have these kind of events that I think are very interesting in a application-wide-context:

    • LogInManagement
    • ReportManagement
    • Application System Constants
    • Conf./Personalization Mgt.
    • TextManagement
    • AutoFormatManagement
    • CaptionManagement
    • GlobalTriggerManagement
    • SaaS Log In Management
    • Company Information
    • Custom Report Layout
    • ODataUtility
    • Data Upgrade Mgt.

    So. Just to help you … I created another list with events which I think are quite interesting for you. In bold, you see the ones that didn’t exist in Codeunit 1.

    • Codeunit<LogInManagement>.PROCEDURE<OnAfterCompanyClose>
    • Codeunit<LogInManagement>.PROCEDURE<OnAfterCompanyOpen>
    • Codeunit<LogInManagement>.PROCEDURE<OnAfterLogInEnd>
    • Codeunit<LogInManagement>.PROCEDURE<OnAfterLogInStart>
    • Codeunit<LogInManagement>.PROCEDURE<OnBeforeCompanyClose>
    • Codeunit<LogInManagement>.PROCEDURE<OnBeforeCompanyOpen>
    • Codeunit<ReportManagement>.PROCEDURE<OnAfterGetPaperTrayForReport>
    • Codeunit<ReportManagement>.PROCEDURE<OnAfterGetPrinterName>
    • Codeunit<ReportManagement>.PROCEDURE<OnAfterHasCustomLayout>
    • Codeunit<ReportManagement>.PROCEDURE<OnAfterSubstituteReport>
    • Codeunit<Application System Constants>.PROCEDURE<OnAfterGetApplicationVersion>
    • Codeunit<Conf./Personalization Mgt.>.PROCEDURE<OnAfterCopyProfile>
    • Codeunit<Conf./Personalization Mgt.>.PROCEDURE<OnAfterGetDefaultRoleCenter>
    • Codeunit<Conf./Personalization Mgt.>.PROCEDURE<OnBeforeOpenSettings>
    • Codeunit<Conf./Personalization Mgt.>.PROCEDURE<OnGetBuiltInRoleCenterFilter>
    • Codeunit<Conf./Personalization Mgt.>.PROCEDURE<OnInitializeProfiles>
    • Codeunit<Conf./Personalization Mgt.>.PROCEDURE<OnProfileChanged>
    • Codeunit<Conf./Personalization Mgt.>.PROCEDURE<OnRoleCenterOpen>
    • Codeunit<TextManagement>.PROCEDURE<OnAfterMakeDateFilter>
    • Codeunit<TextManagement>.PROCEDURE<OnAfterMakeDateTimeFilter>
    • Codeunit<TextManagement>.PROCEDURE<OnAfterMakeTextFilter>
    • Codeunit<TextManagement>.PROCEDURE<OnAfterMakeTimeFilter>
    • Codeunit<TextManagement>.PROCEDURE<OnBeforeMakeTextFilter>
    • Codeunit<AutoFormatManagement>.PROCEDURE<OnAfterAutoFormatTranslate>
    • Codeunit<CaptionManagement>.PROCEDURE<OnAfterCaptionClassTranslate>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterGetDatabaseTableTriggerSetup>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterGetGlobalTableTriggerMask>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnDatabaseDelete>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnDatabaseInsert>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnDatabaseModify>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnDatabaseRename>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnGlobalDelete>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnGlobalInsert>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnGlobalModify>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnAfterOnGlobalRename>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnBeforeOnDatabaseDelete>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnBeforeOnDatabaseInsert>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnBeforeOnDatabaseModify>
    • Codeunit<GlobalTriggerManagement>.PROCEDURE<OnBeforeOnDatabaseRename>
    • Codeunit<SaaS Log In Management>.PROCEDURE<OnSuppressApprovalForTrial>
    • Table<Company Information>.PROCEDURE<OnAfterGetSystemIndicator>
    • Table<Custom Report Layout>.PROCEDURE<OnAfterReportGetCustomRdlc>
    • Codeunit<ODataUtility>.PROCEDURE<OnEditInExcel>
    • Codeunit<Data Upgrade Mgt.>.PROCEDURE<OnCheckPreconditionsPerCompany>
    • Codeunit<Data Upgrade Mgt.>.PROCEDURE<OnCheckPreconditionsPerDatabase>
    • Codeunit<Data Upgrade Mgt.>.PROCEDURE<OnIsUpgradeInProgress>
    • Codeunit<Data Upgrade Mgt.>.PROCEDURE<OnUpgradePerCompany>
    • Codeunit<Data Upgrade Mgt.>.PROCEDURE<OnUpgradePerDatabase>
    • Codeunit<Data Upgrade Mgt.>.PROCEDURE<OnValidateUpgradePerCompany>
    • Codeunit<Data Upgrade Mgt.>.PROCEDURE<OnValidateUpgradePerDatabase>

    But that’s not all…

    If you look for example into Codeunit “LoginManagement”, you’ll see that it subscribes to an event called “OnCompanyClose”, which is an event in codeunit “2000000003”.

    I wasn’t able to export that codeunit (with powershell, nor with the classic client) – and even found a few more like those codeunits. In classic environment, this is what I saw:

    So all these codeunits end with “Triggers” – which means in VSCode, we are able to access them with Intellisense like:

    Here is an overview of all the events in these “system trigger codeunits”:

    Company Triggers OnCompanyClose
    Company Triggers OnCompanyOpen
    Debugger Triggers OnDebuggerBreak
    Extension Triggers OnInstallAppPerCompany
    Extension Triggers OnInstallAppPerDatabase
    Global Triggers GetDatabaseTableTriggerSetup
    Global Triggers GetGlobalTableTriggerMask
    Global Triggers OnDatabaseDelete
    Global Triggers OnDatabaseDelete
    Global Triggers OnDatabaseInsert
    Global Triggers OnDatabaseModify
    Global Triggers OnDatabaseRename
    Global Triggers OnGlobalDelete
    Global Triggers OnGlobalInsert
    Global Triggers OnGlobalModify
    Global Triggers OnGlobalRename
    Upgrade Triggers OnCheckPreconditionsPerCompany
    Upgrade Triggers OnCheckPreconditionsPerDatabase
    Upgrade Triggers OnUpgradePerCompany
    Upgrade Triggers OnUpgradePerDatabase
    Upgrade Triggers OnValidateUpgradePerCompany
    Upgrade Triggers OnValidateUpgradePerDatabase
    Version Triggers GetApplicationBuild
    Version Triggers GetApplicationVersion
    Version Triggers GetReleaseVersion
    Reporting Triggers GetPaperTrayForReport
    Reporting Triggers GetPrinterName
    Reporting Triggers HasCustomLayout
    Reporting Triggers MergeDocument
    Reporting Triggers ReportGetCustomRdlc
    Reporting Triggers ScheduleReport
    Reporting Triggers SubstituteReport
    UI Helper Triggers AutoFormatTranslate
    UI Helper Triggers CaptionClassTranslate
    UI Helper Triggers GetApplicationLanguage
    UI Helper Triggers GetCueStyle
    UI Helper Triggers GetDefaultRoundingPrecision
    UI Helper Triggers GetSystemIndicator
    Filter Helper Triggers MakeCodeFilter
    Filter Helper Triggers MakeDateFilter
    Filter Helper Triggers MakeDateTimeFilter
    Filter Helper Triggers MakeIntFilter
    Filter Helper Triggers MakeTextFilter
    Filter Helper Triggers MakeTimeFilter
    System Action Triggers CustomizeChart
    System Action Triggers GetDefaultRoleCenterID
    System Action Triggers InvokeExtensionInstallation
    System Action Triggers OnEditInExcel
    System Action Triggers OpenContactMSSales
    System Action Triggers OpenDebugger
    System Action Triggers OpenSettings

    I’m not sure in how to use all of them – but it is a great help to simply look into the code of Busines Central, as most (if not all) of these events exist because Microsoft needed them. You can figure out how to use them, and in many cases, you’ll find what are the actual events you should use as a developer.


    0 0

    Find resources that help you build and sustain a profitable cloud business, connect with customers and prospects, and differentiate your business. Read previous issues of the newsletter and get real-time updates about partner-related news and information on our US Partner Community Twitter channel.

    Looking for partner training courses, community calls, and events? Refer to the Hot Sheet training schedule for a six-week outlook that’s updated regularly as we learn about new offerings. To stay in touch with us and connect with other partners and Microsoft sales, marketing, and product experts, join our US Partner Community on Yammer.

    New posts on the US Partner Community blog

    New events and webcasts this fall

    Upcoming US Partner Community calls

    Learning news

    MPN news

    Community calls and a regularly updated, comprehensive schedule of partner training courses are listed on the Hot Sheet

    0 0

    The more you learn, the further you go #HoskWisdom

    One of the great things for working for Capgemini is they want individuals to grow and improve.  This means I get to go to training and events.  Early this year I went to Extreme 2018 in Dubrovnik

    This week I am on the Dynamics 365 FastTrack Architect Bootcamp.  The course is run by some of the Fast Track engineers who work on Microsoft biggest projects as part of the FastTrack scheme.

    Phil Hand will be presenting and I read a white paper from him which helped me create this blog post on solutions

    CRM 2016 – What’s the best way to organise solutions in Microsoft Dynamics CRM  

    FastTrack bootcamp is also available for Operations

    What is FastTrack?

    FastTrack is offered to larger customer (250 seats plus) and the FastTrack team get involved to guide the customer and partner to make sure the project is successful.
    This page is offers a good overview of FastTrack and what it’s all about
    FastTrack for Dynamics 365 is our customer success service designed to help you move to Dynamics 365 smoothly and confidently, so you can realize business value faster. When you participate in the FastTrack program, you will receive guidance on best practices and how to plan for successful rollouts. You will also learn ways to enable new users and expand capabilities – all at your own pace. Additionally, you will have access to Microsoft engineering resources committed to make your experience with Dynamics 365 a success.
    The FastTrack offers skype sessions, workshops and regular touch-points to make sure the customer is on track.
    If you are eligible for the FastTrack program then Microsoft will be involved in your project and help ensure the successful implementation of Dynamics 365 by using their FastTrack process and experience implementing Microsoft Dynamics 365.
    Microsoft’s FastTrack team isn’t one or two people but many different experts.

    Whats covered

    It’s a 4 day intensive course, which covers most aspects of a Dynamics project
    You can see the course agenda here
    The highlights are
    • Dynamics 365 Online Architecture
    • ALM and Solution Release Management
    • Integration Architecture / Patterns
    • Data Migration Approaches / Patterns
    • Dynamics 365 Reporting Strategy / Architecture Patterns
    • Field Service Architecture / Best Practices
    • Project Service Architecture / Best Practices
    • Security and Data Modeling
    • Performance Optimization Best Practices
    • Unified Service Desk Architecture
    • Portal Architecture / Best Practices
    •  Microsoft Business Flow/Power App
    • Dynamics 365 Testing

    Pictures of my adventure

    Here are some pictures of my adventure in Frankfurt. I wondered around a lovely day in Frankfurt by myself and had some frites

    Hosk art selfie

    Art Museum

      The bridge 

    Nice River


    Massive Euro?

    The Flight

    Frankfurt river

    0 0

    Introduction This is our third article in the Dynamics 365 and Azure series, in first article we discussed basic introduction about azure function and set azure function app. In second article we discussed how we can connect to Dynamics 365 organization more

    0 0
  • 10/23/18--00:46: Create your first MS Flow
  • Today, I will be discussing about the Microsoft Flow. The first question which will be buzzing in every one mind is What is MS Flow? MS flow is basically a service which will allow you to create automated...(read more)

    0 0

    Microsoft Dynamics 365/CRM

    In Voice of the Customer, after you’ve built your survey, you will want to strategically send it out to get the most and highest quality feedback possible.

    There is a difference in how you will distribute surveys to Non-Anonymous survey-takers and Anonymous survey-takers.

    Non-Anonymous surveys are the most common type of survey, used for lead generation and information gathering.

    For Non-Anonymous survey-takers, you will want to copy the survey code. It is recommended that for you to utilize an email template to send the survey code snippet.

    Email templates allow for easy customization for mass email sends.

    The email template can be sent in many different ways:

    • Directly from the Survey
    • Through Direct Email to a list of Contacts
    • Workflows
    • Quick Campaigns
    • Survey Invitations and Survey Activities 

    With Anonymous surveys, since you don’t know exactly who you are sending your survey to, you simply copy the survey URL, paste the link into a field, and send through the distribution channel you are using.

    Surveys are a great way to gather information about known and unknown audiences. The cost is much lower with online and mobile surveys rather than distributing paper surveys or conducting phone surveys, for example.

    Mobile and online surveys can reach thousands!

    Surveys are useful for describing large groups, offer creators a lot of flexibility with the user-experience, and, best of all – surveys are dependable. Plus, they integrate into your CRM system with Voice of the Customer in Microsoft Dynamics 365/CRM!

    Get the full Voice of Customer demo, including more tips on survey distribution, building survey sections, and more when you watch Ledgeview’s July 2018 User Group Webinar.

    Watch the on-demand demo here.

    Watch Ledgeview CRM Demo

    0 0

    A common saying states that it is better to prevent than it is to heal, or in this case, to fix. This also applies to asset management within businesses. It is preferable to fix an asset malfunction or breakdown before it even happens – a concept often referred to as preventative maintenance. This practice is a must for companies that work with assets on a daily basis.

    Asset breakdown is a costly operational element for any business. Not only does this mean having to repair the asset, it also translates to decreased utilization, which no one strives for. Thus, organizations seek a way to better prepare for these breakdowns or, preferably, to prevent them from ever occurring. Preventative maintenance allows for setting up maintenance cycles based on particular variables, for example based on running hours, mileage, or time – even for future purposes – so your mechanics can be aware of upcoming inspections in a timely manner.

    Image 1: Example of a consumption-based maintenance plan for running hours on an asset

    Setting up maintenance plans

    DynaRent offers all of these benefits – it allows you to set up maintenance plans on a product or asset level. Moreover, if you define your maintenance cycles based on your products, for example, if you know the cycles up front from your supplier, then they can be automatically inherited to related assets. Also, this applies to any meters that are related to the assets. A maintenance cycle based on mileage does not work without an appropriate meter.

    Image 2: Overview of meter readings for an asset

    But does that mean that you can only select a single meter per asset? This is a question we often hear, but fortunately, the answer is no. DynaRent support multiple meters per asset, ensuring that multiple plans work simultaneously. And we do not stop there – each Component (used for asset structures can have its own maintenance plan. For instance, the upper and lower engines in a crane could each have their own cycles. This will trigger a work order once a specific interval or threshold is reached, with no manual interference required. All that you need to do is schedule this work order in our integrated Service Planboard.

    Maintenance can be a tricky part of rental businesses. However, with proper input, a certain amount of data inheritance, and a process you can trust that does not require constant manual work, DynaRent can make life a lot easier. Still, we understand that sometimes even with these tools, carrying out all your work orders in a timely fashion can prove challenging. But not to worry! DynaRent’s delayed maintenance can take you even further by combining work orders that were not completed on time into new counterparts to ensure the proper maintenance your assets deserve.

    Feel free to reach out to us via email at if you have any questions or for a free demonstration of our DynaRent solution within the Dynamics 365 for Finance and Operations application. We are happy to help, we look forward to hopefully meeting with you soon!

    0 0

    Microsoft Dynamics 365 for Talent is a cloud-based Software as a Service (SaaS) human capital management solution that helps organizations strategically attain, empower, and optimize their talent to achieve...(read more)

    0 0

    Microsoft Dynamics GPMicrosoft Dynamics GP 2018 R2 was released on the 2nd October. In this series of posts, I’ll be going hands on and installing the majority of the components; some of them, such as Analysis Cubes for Excel, which are little used, I won’t be covering.

    The series index will automatically update as posts go-live in this series.

    The second element which needs to be completed after the configuration stage, is the installation of the web client help.

    Click Install to begin the installation:

    Microsoft Dynamics Web Components Help: Welcome

    When the installation is complete, click Exit:

    Microsoft Dynamics Web Components Help: Installation Complete

    Click to show/hide the Hands On with Microsoft Dynamics GP 2018 R2 Series Index

    Read original post Hands On with Microsoft Dynamics GP 2018 R2: Install GP Web Resource Cache at azurecurve|Ramblings of a Dynamics GP Consultant

    0 0

    Hi Everyone,   I thought that I would take a few minutes to discuss a few myths that I have heard from people over the years on why they don’t want to become a Dynamics 365 CE JavaScript developer.   1. It is too hard Life is hard – but you still get out of […]

    0 0

    Recently we wanted to remove the Community Portal Solution from one of our Development instances. Here, the solutions admin page doesn’t give the option of deleting or removing it. To remove it,...(read more)

    0 0

    Well, can’t believe #UserGroupSummit is over and we are back home. Year on year it just continues to grow in numbers, groups, sessions and ofcoz more Dynamics friends and leads for us. It’s time...(read more)

    0 0
  • 10/23/18--05:15: Take company offline
  • Today’s #TipTuesday is a feature that was introduced in GP 2013 R2: taking a company offline for maintenance or other periodic routines.

    What is it?

    This is a feature under the Administration page > System > Utilities area. The purpose of it is simply to prevent users from logging into one or more companies so that you can be working in it exclusively. Why might you do this? The most common reasons would be some kind of maintenance like running checklinks, or some routine like year-end close, or some kind of utility operation like using a Combiner/Modifier tool perhaps.

    How to use it

    First, navigate to the Administration page > System > Utilities > Take Company Offline.

    Insert one or more companies from the left hand list of companies in your system, into the box on the right hand side of the window. In my example, I’ve moved over my Test Company. Let’s say I want to refresh the Test Company so I want to keep people from logging into it while I do that.

    I could change the “Offline Message” but I chose not to for this example. This wording is what is displayed to the users selecting an offline company when they log in.

    What happens if a user is already logged in?

    If users are in the company(ies) you are trying to take offline, you will get this warning message:

    At this stage, you can click Yes to open the Send Message window to send a message to those users who are logged in.

    When you do this, it will automatically filter the window to the “Users in Offline Companies” so you don’t bother your other users. In this case, I typed out a custom message and clicked on Send.

    After a brief delay (10-20 seconds perhaps?), my test user “jen” got the notification message as expected:

    At this point, note there is no “automatic” anything, the user is not kicked out of the offline company, so it would be up to you, the administrator to ensure your users get out of the company you want to take offline. The pop message is simply an alert.

    What happens if I try to log in?

    Naturally, I wanted to test a couple of different scenarios to prove how this works with different settings. My “jen” user is a normal user inside of GP in terms of security (i.e. not a POWERUSER). However, that login did have “sysadmin” in SQL (server role).

    So, when “jen” tried to log into GP, here is what happened:

    First, the company shows “*Offline*” in the company drop down list for visual verification for users. I selected it anyway, and clicked OK.

    I was prompted with this message: “Do you want to continue and log on to the company?”. I clicked Yes and sure enough, I could log into the offline company.

    But wait a minute… there is no user set to have “offline” access in this company, so why did that work?

    The simple reason is “jen” has the sysadmin server role in SQL so Dynamics GP must be looking at that and allowing those users to log in even with no specified “User with offline access” in Company Setup. That’s a good thing. If you don’t know which user has offline access, simply log in with ‘sa’ briefly or any other GP login that has SQL sysadmin rights in the back-end.

    What does a regular user see?

    Here is what message a normal user would see:

    Normal users, i.e. users who are not sysadmins in SQL and not the user who has offline access, see this message with only “OK” as an option and no ability to log in.

    That’s it for this one… pretty straight-forward!

    0 0

    When creating a Purchase Order from one or more Purchase Requisitions, you now have the option to purchase a quantity less than what was initially requested in the Purchase Order Preview window. The remaining...(read more)

    0 0

    Tested on: Dynamics 365 version 9.2, PSA solution version 3.1, Unified Interface Version 3 of Dynamics 365 Project Service Automation has changed the way bookings and assignments work in PSA. As they are now only loosely coupled, Project Managers have more flexibility when it comes to resourcing. This vlog will cover resource bookings and assignments in PSA V3. Be sure to also check my previous article about the new Reconciliation View. Disclaimer: All my blog posts reflect my personal opinions...(read more)

    0 0

    One of the most common causes for transaction problems in GP revolves around dates, especially posting dates. Users simply post transactions into the wrong period.  Keeping periods closed when not in use is helpful, however, there is always a time around month end where two periods are open. Date management in GP is just complicated enough that keeping dates straight requires a mix of setup, process, and training.

    In GP, most subledger transactions can be posted at the transaction level or as a batch of transactions. A few transaction types, mostly banking related, can only post per transaction.

    If batch posting is available, use batch posting. In many cases transaction posting ignores posting settings and doesn’t post through the GL, meaning it has to be posted twice, once in the subledger and once in the GL. Obviously, this is less than ideal. Additionally, posting via batch typically uses a single batch for the date making it easier to validate.

    Most subledger transactions have two dates, a transaction date, and a posting date. In AP, for example, the transaction date (technically document date in AP) on a voucher is the date of the vendor’s invoice. This is used to age the invoice properly, regardless of when it arrived. For transaction posting, the posting date defaults to the document data and that’s typically not the appropriate date. The actual posting date is hidden behind an expansion button (blue arrow) where users often don’t see this setting to change the posting date. With subledger batch posting, the posting date is assigned at the batch level and applied to all transactions in that batch.

    It is important to note that for GL transactions, the transaction date is always the posting date. There is no date on journal entry batches.

    The keys to managing dates in GP are:

    1. Post by batch where ever possible.
    2. Disable transaction posting for items using batch posting to prevent rogue transactions.
    3. Train people to double check posting dates for transaction posted items.
    4. Review transaction or batch dates prior to posting.

    Links to all the posts in this series can be found at