Search Results

27 items found

Blog Posts (14)

  • Power Platform 2022 Release Wave 2

    Microsoft recently released the first version of the 2022 Release Wave 2 for Power Platform and Dynamics 365. Here is a quick article of what I am most looking forward to being released. Detailed plans below Microsoft Dynamics 365 2022 release wave 2 plan overview | Microsoft Docs Microsoft Power Platform 2022 release wave 2 plan overview | Microsoft Docs Features I am looking forward to:

  • Open the Table Browser with a Bookmarklet | Dynamics 365 Finance & Operations

    Quick post about a simple, browser agnostic tool for opening the Table Browser more easily in Dynamics 365 Finance and Operations. Ever want to look at data in the table browser but you cannot/will not install a browser extension? Create a bookmarklet! What is a bookmarklet? A bookmarklet is a browser bookmark that contains JavaScript code, rather than a URL. This code when executed can automate actions on a page, prompt for information, and more. The below bookmarklet will allow a user to store the root URL to a Dynamics 365 Finance and Operations environment. It will then prompt for a short name and a table name to take the user to the table browser! How to use the "Go To Table Browser" bookmarklet Click on the bookmarklet JavaScript prompts for the short name of the environments you defined Next it prompts for the table name A new tab will open (if it does not, check your popup blocker!) taking you to the table browser in the environment and table specified. How to create I would love to give this bookmark out but...it's unique to each situation. Thus, you will have to create this yourself. The following will walk you through how to do this. Start by copying the code below into a code or text editor. Replace the URL in each CASE of the switch statement Rename the CASE for the short name of your environment Remove any CASE that are not needed. Next, minify the code by pasting into an online JavaScript minifier (such as https://jsminify.org/) to make the code into a single line. 🔑 This is key to making the code "paste-able" into the bookmark URL. Once the code is minified, create a new bookmark, and paste the code into the URL attribute Your bookmarklet should be ready to go! Try it out! Note: This bookmarklet assumes using the users default Company. It could be extended to add another prompt for Company. Code javascript: var rootURL, name, environment = prompt("Environment? (Dev1, Dev2, Build, UAT, Prod)", ""), errorMessage = "No Error"; switch (environment) { case "Dev1": rootURL = "https://{replaceme}.cloudax.dynamics.com"; break; case "Dev2": rootURL = "https://{replaceme}.cloudax.dynamics.com"; break; case "Build": rootURL = "https://{replaceme}.cloudax.dynamics.com"; break; case "UAT": rootURL = "https://{replaceme}.cloudax.dynamics.com"; break; case "Prod": rootURL = "https://{replaceme}.cloudax.dynamics.com"; break; default: rootURL = "ERROR", errorMessage = "Invalid Environment Reference" } "ERROR" == rootURL ? alert(errorMessage) : (name = prompt("Table Name?", ""), window.open(rootURL + "?mi=SysTableBrowser&prt=initial&limitednav=false&tablename=" + name.toLowerCase()));

  • Get Choice Label / Option Set Label (Dataverse Reporting)

    What are Choices in Dataverse? Also, and formerly, known as Option Sets and Picklists, Choices are effectively a key-value pair object type in Dataverse that allow for a drop-down list of static options. The end user sees a label and the database stores its corresponding integer value. This is wonderful for application performance but poses a problem when reporting. The Problem While integers are great for performance in the application, they are not so helpful for reporting. Depending on how the data is extracted from the application, one may encounter only having the value of the integer with no label. Users of reports will not want to see the integer value, but the label that they are familiar with in the application. Thus, it is regularly desired to show the label. But how does one retrieve the label in a repeatable way? To address this problem, a SQL function can be used. The Function The function below is an in-line table valued function. This allows for a repeatable, straightforward way to retrieve a label. Not only is it repeatable but using an in-line table valued function instead of a scalar function will yield performant queries over any size of data. Some other solutions using scalar functions in SQL do not scale as well over large data sets. The function assumes using a single language is used. If needing to use multiple languages, need to pass in the language into the function as well. Otherwise leave it hardcoded as 1033 (English) CREATE FUNCTION [dbo].[GetChoiceLabel] ( @EntityName nvarchar(64), @ChoiceName nvarchar(64), @ChoiceValue int ) RETURNS TABLE AS RETURN ( SELECT StringMap.Value AS Label FROM dbo.StringMap AS StringMap WHERE StringMap.AttributeName=@ChoiceName AND StringMap.ObjectTypeCode=( SELECT TOP 1 Entity.ObjectTypeCode FROM dbo.Entity AS Entity WHERE Entity.LogicalName=@EntityName ) AND StringMap.AttributeValue = @ChoiceValue AND StringMap.langid=1033 ) Notes The above function may need to be updated for your exact situation. Using the Dataverse connector in Azure Data Factory does not require the "SELECT TOP 1" to translate the entity name to an objecttypecode. The Implementation To implement the above solution, you use the APPLY operator (similar to a join). APPLY dbo.GetChoiceLabel('Entity', 'Choice Name', Value Field) AS ChoiceLabel Here is another example using a table called item SELECT I.ItemType, ItemType.Label AS ItemTypeLabel FROM dbo.item as I APPLY dbo.GetChoiceLabel('item','itemType',Item.ItemType) AS ItemType Alternatives There are some alternatives to using an inline function. See a quick overview below.

View All

Pages (13)

  • Joe Bonomo | Technology, Microsoft, Power Platform, SQL | Wheaton

    Feb 25 2 min Open the Table Browser with a Bookmarklet | Dynamics 365 Finance & Operations Jul 7, 2021 3 min GoTo Looping in SQL FEATURED POSTS Never Miss a New Post. Enter your email Subscribe Thanks for subscribing! THOUGHTS Jul 13 1 min Power Platform 2022 Release Wave 2 Power Platform Release Wave 2 overview 11 views 0 comments Post not marked as liked Feb 25 2 min Open the Table Browser with a Bookmarklet | Dynamics 365 Finance & Operations Open the Dynamics 365 Finance and Operations table browser without installing an extension! 20 views 0 comments 1 like. Post not marked as liked 1 Dec 9, 2021 2 min Get Choice Label / Option Set Label (Dataverse Reporting) What are Choices in Dataverse? Also, and formerly, known as Option Sets and Picklists, Choices are effectively a key-value pair object... 278 views 0 comments 1 like. Post not marked as liked 1 Jul 7, 2021 3 min GoTo Looping in SQL Overview of GoTo looping technique in Microsoft SQL Server 40 views 0 comments 1 like. Post not marked as liked 1 Jun 25, 2021 2 min Quick Tip: SQL Transaction Log Management Transaction log growing out of control? Encountering error "The transaction log for database is full" Find out how to fix in this post! 10 views 0 comments 1 like. Post not marked as liked 1 Jun 4, 2021 1 min In case you missed it: Microsoft Buys Corp.com A critical cybersecurity action from Microsoft to help the masses went relatively unnoticed. See the below article from ZDNet describing... 4 views 0 comments Post not marked as liked Jun 3, 2021 1 min Dynamics 365 F&O Enums | Project | Project Type As a helpful quick reference to the production order status. 25 views 0 comments 2 likes. Post not marked as liked 2 More Posts ABOUT ME Technology consultant with a focus on business applications. I drive organizational change, solve business problems, and improve processes using technology and creative problem solving techniques. Excels in the design, architecture, development, implementation, and support of business application solutions. Utilizes in-depth technical knowledge, combined with expertise across a broad range of technologies, businesses, and industries, to solve client challenges. Experience partnering with entire client organizations, from manufacturing floor workers, to accounts receivable clerks, to C-level executives. Manages all aspects of the software development lifecycle as a key resource and adviser to both clients and team members. ​ Specialties: -Business Application Design & Architecture -Requirements Gathering -Business Systems Analysis -Power Platform -Microsoft 365 -Dynamics 365 -Azure -Teams -Data Analysis -Business Process Improvement -SQL Server (SSIS, SSRS, T-SQL) Read More > SUBSCRIBE Enter your email Subscribe Thanks for subscribing! Favorite Blogs Name Focus CRM Tip of the Day Microsoft Dynamics, Power Platform Corterra Solutions Microsoft Power Platform, Teams, Microsoft 365, Azure SQL Authority (Pinal Dave) SQL Server Jukka Niranen Microsoft Power Platform ("CRM") Brent Ozar SQL Server Favorite Books Title Author Topic The Art of War Sun Tzu Business 100 Things Every Designer Needs to Know About People Susan Weinschenk Solution design & architecture Doughnut Economics Kate Raworth Economics Extreme Ownership Jocko Wilinek Business How to Win Friends and Influence People Dale Carnegie Business Feature Engineering Bookcamp Sinan Ozdemir Data science Systems Design Interview Alex Xu Solution design & architecture Way of the Wolf Jordan Belfort Business The Goal Eliyahu M. Goldratt Process improvement Solve For Happy Mo Gawdat Mental health

  • Time Collection System

    Time Collection System 2017 Time collection system design and development using Dynamics CRM, SQL Server Integration Services, SharePoint, and Reporting Services. Includes Time Sheet for manual entry labor and Time Clock for clock in/out < Previous Work The Time Collection System is a full featured system for managing employees time. Whether that time be entered by the employee (Time Sheet) or the employee "clocking" into a job (Time Clock), the time collection system handled these scenarios. Additionally, it handles for auto approvals or manual approval of time to allow for organizations to limit approval time if not required, or to ensure accurate recording with a manual review. The system handled different work shift, approval teams, and all other features expected of a time collection system. This time collection system has been enabled in a variety of different software, particularly Dynamics, but can be ported to other software as the concepts remain the same. Contact me to learn more! Next Work >

  • Marketing Interface

    Marketing Interface 2019 Design eCommerce Interface utilizing SSIS and JSON based REST web API calls. < Previous Work Interface item and inventory information from Dynamics 365 to the Magento eCommerce site. This interface prevented mistakes and saved time performing dual entry in both systems. Dynamics 365 is desired to be the master. Interface incrementally pushed only the necessary changes to limit load on the API by storing last sync time for each part. Next Work >

View All