New Support Resources

News No Comments »

Since the switch to WebsitePanel I have been busy updating a lot of the support docs and related pages.

If you look on the manu menu at the top of the site you will see there is now a "Support" menu and everything is now under here. the main support page now contains links to all the user guides and documentation you will need.
The FAQ's have been updated with more WebsitePanel specific info and common answers, and there is now a whole new support ticketing system. I was planning to use getSatisfaction as the sole support solution, which would be fine aside from the fact that all posts are public, so it is not ideal for requests that require the sharing of login details such as DSN and RDS setup. So I started searching around for an alternative FREE solution and came across Assistly.com in the google Apps marketplace, which is FREE for the first support agent (an agent is a person who logs into the ticket system).  If you only need a single support agent then the free version off Assistly is pretty good, it integrates automatically with gmail for your email support mailbox and has a fair amount of customisability if you know HTML, CSS and Jquery in the email templates. Unfortunately you can only use these customisations in the  widgets that you place on your own site and not directly on the support portal unless you pay $20 per month for the advanced editor.

So the current support options are :-

 

  • for general questions, feedback, suggestions, praise please use getSatisfaction FEEDBACK button at the side of the site, but please do check the support pages and FAQ first.
  • for account specific questions, login issues, RDS or DSN  requests please use the new "contact support" page in the support menu.
It would also be great if you could spare 5 minutes to come and leave some feedback as this section is rather empty so far. Which in a way is good as it means the system I have built is so easy to use that no-one ever needs to ask questions :-)

 

 

Helicon APE now available on cfmldeveloper

News No Comments »

 

I thought this would make a handy addition to the developer hosting so I asked the nice folks at Helicon if they would donate a copy and they said yes.
Note that this is only available on the new servers running WebsitePanel, it is not available on the old HELM system.

Helicon Ape provides support for Apache .htacces and .htpasswd configuration files in Microsoft IIS. It literally implements Apache configuration model and nearly all Apache modules in a single IIS add-on, not only making IIS compatible with Apache, but also extending it’s functionality by a number of highly essential features.
What this means is that if you have an .htaccess file from Apache then it should work here, or if you have some Apache mod_rewrite rules, you can use them on your site without any modification.

Includes following modules: mod_rewrite, mod_proxy, mod_auth, mod_gzip, mod_headers, mod_cache, mod_expires, mod_replace and others. You can check all currently available modules in the compatibility chart (the list is growing with new builds).

If you have an area of your website that you need to password protect, then .htaccess is the way to do it. Using ColdFusion will only secure .cfm files, so for a basic admin system it works fine, but if you have other resources/documents you need to secure such as pdf/images/word docs etc, then using a ColdFusion login system will not stop anyone accessing those files unless you deliver them via CFcontent.
.htaccess files can also be managed directly via CF, so you can still create and manage your users and groups within your CFML app and pass the authentication details to CF after login for more granular control within your application, such as controlling roles based permissions.

To enable APE simply login to WebsitePanel, select your website, click the ".htaccess" tab on the web site properties page, then click the enable button.

For more details on using APE please see the documentation. There are lots of good example son the site showing you how to do the common stuff. Remember that you will not have direct access to the server or the APE interface, so you will need to create and edit the .htaccess and other files by hand, or you can download the FREE edition APE locally in order to generate the files and then upload to your site.

 

Migration deadline for new servers is March 2012

News No Comments »

In case you missed September's newsletter, HELM and the old developer hosting servers will be taken offline at the end of March 2012. After this date anything still on the old servers will be gone forever. So if you want to keep any of the data in your account please be sure to back it up and migrate it to the new systems ASAP. On the new control panel you have automated backup tools that will make this a lot easier.

If you have no idea what i'm talking about, then you probably did not get the newsletter for some reason or it ende dup in your junk email folder, in which case please rmemeber to add cfmldeveloepr.com to your whitelist/filters so that you receive future emails.

You can view the aforementioned newsletter HERE which explains how to migrate your data to the new systems.

Read more...

SSMS Tools Pack 2.0 for SQL Server

SQL Server No Comments »

Now that CFMLDeveloper.com supports SQL Server, I thought some SQL Server articles may be appropriate.

You know all those little things that make you crazy when you’re developing in SQL Server Management Studio? Those pieces of functionality that you just can’t understand why Microsoft didn’t just include it? Stuff like generating a set of CRUD statements (Create, Read, Update Delete), or running custom scripts right from the SSMS GUI, or even a way to analyze execution plans rather than read through them? Yeah, Mladen Prajdic felt exactly the same way. Except unlike the rest of us, instead of sitting around moaning about how the software doesn’t do this or that for me, Mladen just started building it for himself. Then he went one step farther, he let the rest of us have it too. That’s right, SSMS Tools Pack is a free piece of software that patches over a lot of the little cracks in SSMS (although I’m certain that Mladen wouldn’t mind contributions if you really love his work). It works with SQL Server versions from 2000 to Denali and it does everything that it does working directly within SSMS so you can stay well and truly inside your comfort zone, developing with the toolset that you’re used to. In fact, SSMS Tools Pack will quickly become one of those pieces of software that you won’t want to live without.

Download and Install

When I heard that a whole new version was becoming available, I couldn’t wait to try it out. I downloaded it the first day it was available. Here is the exhaustive list of actions and requirements to download the software:

That’s right. No registration, no email address, no home phone, none of the standard stuff that you have to supply in order to get a piece of software. Did I mention that this is free software and that Mladen doesn’t really want to know who you are in order to supply you with it?

After you launch the installer, it will recognize what version of SQL Server you have installed on your desktop. I tried the install on a 2008R2 instance and on a Denali instance and didn’t have any troubles with it whatsoever.

On the Denali instance, I had SQL Server Management Studio open when I did the install. I didn’t get any error messages, but when I went to SSMS I also didn’t see any of the new tools available. Upon restarting SSMS, the tools loaded right up.

Functionality

There’s a shocking amount of functionality built into this piece of software. Because it covers so much different functionality trying to find a handle for how to approach the evaluation isn’t entirely simple. So, with the full set of functionality in front of me, I’m going to cover the stuff that I find cool or intriguing. If I leave out your favorite function, there’s your chance to post a comment or write up an article of your own.

Mind you, I’m not going right to the coolest stuff. We’ll start slow and build.

Generate CRUD

There’s a small market on code generators for SQL Server. Why? Because most of the queries, the CUD part of CRUD, can be built completely through generation. There just is no reason why SSMS can’t do this on its own. But, instead of having to go to an outside tool or work with code bases other than TSQL, you can just right click on the table you’re interested in and one of the new context menu choices is “SSMS Tools” and right under that, “Create CRUD…” Clicking on it opens a new query window with a set of stored procedures all set up to add, update, remove or read the data from the table selected. It’s that easy. The statements are well formatted too with DROP statements before the create statements so that you can run this as needed when you change your structures.

It gets better though. You’re not dependent on the structures that Mladen has provided. If you go to the SSMS Tools menu, there’s a list of options to modify different functionality. CRUD Generation is right there with some of what you can control as shown in Figure 1:

CRUD generator options

Figure 1

As you can see you can turn the functionality on or off. More importantly, you can control column order, set stored procedure prefixes and others. But the important stuff is on the next four tabs. You’re not dependent on Mladen’s choices for how to format and layout your procedures (although I don’t have any problems with his choices). If you wanted to put a standard TRY/CATCH error handler in your Insert statements, all you have to do is click on the tab and modify the query you find there, just like you see in Figure 2:

Modifying the query

Figure 2

All you have to do is follow the instructions and you can modify these procedures so that they work exactly the way you’d want them to.

One change I’d like to see, make it so that I don’t have to generate the Read procedure because those are mostly not simple, select from one table, affairs on systems I’ve worked with.

Connection Coloring

I’ve never in my life done something like what I’m about to describe, but I’ve heard that others have done so. You hit execute on that RESTORE DATABASE script and you set it to restricted user and put ROLLBACK IMMEDIATE in there because the developers on the development server where you’re restoring the database are never logged out even though they say they are and then your eye drifts down to the bottom of the screen… wait, that’s not DEV02\BoringOldDevServer. It’s PROD42\YouBetterGetYourResumeCleanedUpServer. Oh… *******…

Not that I’ve ever done that, or at least, there are no living witnesses that I’ve ever done that. Same thing really.

That’s where Windows Connection Coloring comes in handy. If you go back to the SSMS Tools menu you can find the appropriate menu and open the options window. Once the window is open, you can supply a server name, or, you can use regular expressions to define a pattern, so that you can set a group of servers up to behave a certain way. Figure 3 shows how I configured it locally:

Configuring Connection Coloring

Figure 3

If you do type in a regular expression, make sure you also select the “IsRegex” checkbox. Once you have things set up appropriately, you’ll see a colored bar at the top of your query window so you can be very aware of which server or set of servers you’re currently connected to. Figure 4 shows the bar on display:

The colored bar displays

Figure 4

I realize this is a pretty simplistic little thing, but if a simple little thing can prevent a production outage, it’s pretty cool. In keeping with my irritate Mladen with more suggestions though, since you can format the bottom color on connections individually, it would be good if this also updated that color so that you could see the color chosen for a particular connection on the top and the bottom of the query window.

Tab Sessions

New with Version 2 of SSMS Tools Pack is the Tab Sessions. This little bit of functionality keeps track of the tabs that you have open in SSMS and the TSQL inside those tabs. On a periodic basis (set within the options screen) it will save the tabs and the code. Then, say after a exiting and reentering SSMS you can hit the Restore Session button on the toolbar and it will reopen your tabs. Which is really cool, but it gets better.

If you go to the SSMS Tools menu and to the “SQL History” menu there, you can see the “Tabs History Management” menu choice. Clicking on that will open up a collection of different sets of tabs going back in time. You can see an example in Figure 5:

Tab selections history

Figure 5

It’s cool that you can scroll through these and pick one to restore, but what’s really cool is that you can then click on the tabs, like I have on the center one, and scroll through the code on that tab to ensure it’s the one you want. I’m digging this in a major way.

One major issue that I do have with it though, and this isn’t just another irritate Mladen request, is that while it knows which TSQL I have in a tab, it’s ignorant of the fact that that TSQL is from a file, so it will restore the TSQL to the appropriate tab on your window, but it won’t link it back up with the file that you had it open from. If you continue editing that TSQL, it won’t be saving to the file until you choose save and overwrite what you saved originally.

Execution Plan Analyzer

I’ve saved the coolest new feature for last. SSMS Tools integrates with your execution plans. There’s a button on the SSMS toolbar, “Show/Hide Execution Plan Analyzer.” Click on that button when you have an execution plan open in SSMS, any plan, even from a file, and your execution plan screen will suddenly change to look like Figure 6:

The Execution Plan Display

Figure 6

What you’ve got are different sets of functionality. Across the top are three buttons, offering you the ability identify the highest cost operation, search operators, and get suggestions on plan improvements. Yeah, you heard me, it’ll help you turn your queries.

The first piece of functionality, identify the highest cost operation, that’s hardly worth talking about on a plan that looks like the one above. But how a plan that looks like Figure 7?

Complicated Execution Plan

Figure 7:

Yeah, that’s one of the hairiest plans I’ve ever seen and I sure would have used this to browse through that plan (I used XQuery to find the costliest operators, worked, but it wasn’t pretty like this). You can adjust it too so that it shows more or less operations based on their cost by using the little slider bar right above it. The tool tip will show the name of the operator and the cost and clicking on it will take you to that operator within the plan. That’s extremely handy.

But, you can adjust the default values, and you can pick other properties from the Options window and have them bubble to the top. More interested in high numbers of Estimated Rows, change the property and you’ll see those operations that exceed the value that you supply on the bar on the left side of the screen. Again, very handy.

Next, you can search for operators. Want to know if you have a Sort operation in that mess of icons? Click the button and type in the term. You’ll see any and all Sort operations. But, it gets better. What if you’re curious that the primary key was used in the query. Type that in and you’ll see results like Figure 8:

Displaying the Primary Key

Figure 8.

I left the tooltip up so that you can see that SSMS Tools Pack searches inside the operators to find the things you were interested in.

Now, what about this tuning help? I’ll quote Mladen on this one:

It goes through your plan finding most common problems and gives you the usual solution for each one. This feature isn't meant to replace manual analysis but it will find the usual problematic spots that you can fix up fast.

The query I gave it is very simple and has a couple of issues, primarily structural. You can see that SQL Server thinks I need a different index. Let’s see what SSMS Tools Pack says I ought to do about it.

Spotting the Errors

Figure 9:

It called out two issues, the Merge Join, and the Clustered Index scan that you can see in Figure 9. On both it pointed out that my estimated number of rows and my actual number of rows differed by a significant amount. This is true. I use this query to demonstrate bad parameter sniffing. The suggested solutions were to update the statistics on all tables used in the query or to check for missing indexes. These are excellent suggestions. Neither will work in this case because I’ve got a skewed data set (like I said, this is my demo code and it’s broken on purpose), but nonetheless, based on the information provided, these are the same recommendations I’d make myself. I’m impressed.

And More

Yes, there’s more. I can’t cover everything without generating about 50 pages of documentation to go through all the functionality and all the control over that functionality that you get. Here’s a quick run-down on some of the stuff I didn’t cover:

SQL SnippetsSearch Table/View/Database DataRun Scripts on Multiple ServersSearch Results in GridCustom Scripts from Object Explorer

Mladen did a nice job of documenting all the functionality, including the parts I didn’t mention.

 

This article was syndicated from simple talk.

Mura CMS in London: CFUG presentation & Training Courses

News No Comments »

Mura CMS at the UK CFUG  in London - October 20th

Blue River's Grant Shepert will be presenting an overview of Mura CMS at the UK CFUG in London on October 20th. Grant will show how you can quickly create a full-featured website in Mura CMS while covering an overview of Mura CMS features, plugins & plugin development, creating & deploying site bundles, and more.

The doors open at 7:00 PM for a 7:30 start - don't miss this opportunity to catch up on the latest developments in Mura CMS. Also, attendees of this event will get a 25% discount on the upcoming UK Mura CMS training courses. Click here for more information. 

London Mura CMS training courses - November 14-18

Blue River will be offering London-based Mura CMS training November 14-18, 2011. These full-day training courses will provide you with in-depth understanding of how to get the most out of Mura CMS, from simple content updates all the way to creating new Mura CMS plug-ins.

We have 3 courses available, each tailored to the unique needs of your different team members.

Admin/User Training Course: In this one-day course, you will learn how to use Mura CMS's administration screens to build, configure and maintain your site. This course will include an overview of Mura CMS's functionality, with a focus on the tools and processes used during site creation and content updates.

Front-End Developer Training Course: In this two-day course, we will cover a wide range of front-end development. You'll get an in-depth understanding of how to create and modify Mura CMS templates and CSS to create your site's layouts and design, and how to use JavaScript to manipulate page elements dynamically. We will also show you how to rapidly build-out a site with common functionality by leveraging the built-in features of Mura.

Back-End Developer Training Course: In this two-day course, you will get a hands-on "deep dive" into Mura CMS. You'll learn the fundamental principles at work in Mura CMS, and how to programatically manipulate, extend and customize Mura CMS. We'll cover topics ranging from the accessing the Mura API to creating plugins, performance tuning and much, much more. This course will enable you to take full advantage of all that Mura CMS offers.

We'll be presenting this training at Adobe's London offices at 12 Regent Park. Many thanks to Adobe for their assistance and support of Mura CMS.

Powered by Mango Blog. Design by Russ Michaels and inspired by styleshout
RSS Feeds