DrewSK.Tech

Databases, Development, and Other Anecdotes

0%

“Why do you do what you do?” What Do I Do? I solve problems. I build solutions using technology. I keep a small-medium business humming along with systems and infrastructure to support the growth that drives employee-owner shareholder value. The title that I’ve been dubbed is Director of IT, and I get to work with a great group of talented technologists and lead them as the application architect. My involvement with SQL Server is as a database developer and on bad days, a DBA.

Pick one thing you want to learn that is not SQL Server. Write down ways and means to learn it and add it as another skill to your resume. If you are already learning it or know it – explain how you got there and how it has helped you. Your experience may help many others looking for guidance on this.

 

In my day job, one of my hats is systems architect and integrator. One of those systems is a traditional on-premises ERP, while others are web applications and native mobile applications.  We’re a small team, but we make an honest effort to perform scalable and repeatable development practices.  The next improvement we’re making is a move towards **continuous deployment (CD). **As a team lead, I don’t enforce process changes with unknown consequences, so the CD shift requires me to get my feet wet with NodeJS.

While the first Azure Data Studio extension I developed (First Responder Kit extension) made HTTP GET requests, it did not pass information to external services. The next extension, an extension for Paste the Plan, does send plan information to the external service via HTTP POST requests. I understand that public exposure of information isn’t for everyone – but simply installing the extension doesn’t send data to Paste the Plan.

I can be very particular about the strangest things, and when I picked up Azure Data Studio (pka SQL Operations Studio) I immediately noticed that the syntax coloring wasn’t quite what I wanted.  Since Azure Data Studio has VS Code under the hood, you can install any theme you find on the VS Code marketplace into Azure Data Studio.  The trouble with those themes is that they aren’t usually focused on TSQL syntax.

The folks at Microsoft were so kind as to include a quote from me on my experience creating the First Responder Kit extension. “I want everyone to understand that in 1-2 hours you can go through an extension writing tutorial and start working on crafting your own solutions. The development platform is just as accessible as the application itself – Windows, Mac, and Linux. Building a SQL Operations Studio extension is a great way to be a data community contributor, especially for someone who might not be keen on giving talks or writing blog posts.

This post is going to assume you are familiar with the .xlsx/.zip conversion that was used in a previous post on BI360.

I have a report that I would like to distribute the summary information without any drill-to capabilities. After triple checking all of the report options, I came to the conclusion that I would have to edit each individual cell and uncheck the “use default drilldown” option in the layout editor under drill-to.  That felt unsatisfactory, so I found another way to disable all drilldowns in a BI360 report.

Solver Global’s flagship reporting tool, BI360 Report Designer has several strong features and enables many businesses to create financial and operational reports. Unfortunately, one of the limitations of the report designer (v4.6 at this time) is that creating custom drill-down views is extremely repetitive.  There isn’t a built-in copy function for the drill-to definitions, which would be especially handy for reports where the row filters deviate just slightly (such as a P&L statement).

Earlier today I needed to create a ton of nearly identical drill-to definitions in BI360 report designer (~40) for a single report and cut a corner using the XML definitions inside the Excel file.  This isn’t as user-friendly as the Excel report designer interface, but it saved me about 3-7 minutes per drill-to definition. 

If you’re not familiar with SQL Operations Studio – here’s my quick take on the application: it’s a cross-platform open-source data platform tool built by Microsoft on the groundwork of VS Code. Current functionality is a fundamental and can be extended or customized to fit your required toolset through available APIs and an extension marketplace.

I LOVE extensibility. Especially for small/medium businesses, extensibility of software can extend the usefulness of software to the business in both impact and longevity. Here’s how you can take the reins and get started creating extensions for SQL Ops Studio.

I’m a player/coach, a developer/manager. I spend part of my day elbows deep in SQL Server or web development but the other part knees deep in interdepartmental discussions. Switching gears between the 2 is an acquired skill. Ultimately, the velocity of productivity by myself and my team relies on a steady output. Some days are easier than others – but when 5, 6, 7, or more meetings pile up the output comes to a screeching halt.

I’m going to talk about a bad day. It could have been a very very bad day, but it wasn’t.

Around 3am, one of our main storage devices restarted and when it booted - BAM “Pool 1 RAID Group 1 is inactive.” Excuse me?  The drives are in RAID 10 and hadn’t reported any faults until this moment.  Granted, this particular model of QNAP device, the QNAP TS-879U-RP, has caused us significant heartache in the past.

There are only a handful of things I despise more than Crystal Reports. We’ve been using SSRS reports for Flexible Billings invoices ever since we deployed Dynamics SL in 2013. We have over 15 (!) invoice formats in use, all branched from this main report format. The RDL file is enclosed in the zip folder here: DefaultBI_Invoice Feel free to download and use with your own SQL Server Reporting Services setup with Dynamics SL.

On a Gantt chart of tasks we’ve been displaying a highly dynamic attribute next to the task. The attribute is dynamic in 2 ways: The information changes daily The requested information changes for particular tasks types on a quarterly to yearly basis. When the attribute was first introduced, it was changed almost weekly while we tested what information was most useful. The original rendering was a scalar-valued function in the SQL query.

I’m interested in opportunities to share knowledge of: <ul> <li> Open-source software and communities </li> <li> Azure Data Studio, capabilities and extension development </li> <li> Serverless in Microsoft Azure </li> </ul> <p> </p> </div> <div class="is-layout-flow wp-block-column" style="flex-basis:60%"> </div> </div> <p> </p> <div class="tm_timeline__event tm_timeline__event-odd"> <div class="tm_timeline__event__dot"> </div> <div class="tm_timeline__event__date"> 2021/07/28 </div> <div class="tm_timeline__event__title"> Data Exposed Live </div> <div class="tm_timeline__event__description"> <a href="https://youtu.be/_I0sPvQonus" target="_blank" rel="noopener noreferrer">Azure Data Studio Power Hour</a> </div> </div> <div class="tm_timeline__event tm_timeline__event-even"> <div class="tm_timeline__event__dot"> </div> <div class="tm_timeline__event__date"> 2021/06/12 </div> <div class="tm_timeline__event__title"> Data Toboggan </div> <div class="tm_timeline__event__description"> <p> <a href="https://www.