Monday, April 15, 2013

Kilts and Such: Sporran #2

Whether to Leather
There are a lot of leather sporrans out there. Not that there's anything wrong with that. I'm not a vegetarian and I enjoy venison although I'm not a hunter. My first purchased sporran is made from leather. Aside from the PETA argument, there are many who desire non-leather sporrans, either for the look or just to wear something different.

Leather Alternatives
I started searching the Internet for different sporran construction materials and examples. There a quite a few leather hybrid sporrans with different materials to cover the front panel or the flap. These still are primarily constructed from leather. Sporran Nation has many that are made from a vegan leather called Lorica. Some of the best examples I found were of sporrans either made entirely from tweed or faced with tweed. I've seen humorous and slightly disturbing versions using un-stuffed animals or other toys. Elmo never looked so good!

Tweed
According to Wikipedia, "Tweed is a rough, unfinished woollen fabric, of a soft, open, flexible texture, resembling cheviot or homespun, but more closely woven." It's a twill that is becoming a popular alternative to tartan for kilts. Harris Tweed is, in my opinion, tweed at it's best. Someday I'd love to have a Harris Tweed jacket or three, but it's pretty expensive stuff.

Just $3.00 from the Salvation Army!
I've found an awesome alternative source for tweed - recovered material from used tweed jackets. I can usually find several in excellent shape at the Salvation Army. There's quite a bit of material to be recovered, although the pieces are not large. The sleeves and back provide the most useful material. You do need to check the label to make sure it's 100% wool. Many are a wool blend or polyester.

I haven't run into any Harris Tweed jackets yet. If I did I'd probably put it up on Ebay rather than harvest cloth from it. It'd be a shame to disassemble on.


Sporran #2
My first sporran was a simple Rob Roy style made with pleather. It was okay for my renaissance fair outfit, but isn't going to last very long. For my second sporran, I'm using duck canvas as a foundation for the inner lining, with a plastic canvas interfacing, a tweed outer lining, all sewn together with upholstery thread. The gusset will be a single layer of duck canvas.

Since this is a construction experiment, I'm going to copy the pattern from my cheap stiff leather sporran. It's provided great service for the price, but it's less than a year old and I've already had to re-stitch sections of it.

Interfacing
I traced a pattern from the cheap sporran onto stiff card, cut them out, and used them and an x-acto knife to cut out plastic canvas for the front and back panels. The back panel also includes the top flap.

Pattern and plastic canvas inner lining.
Inner Lining
As with my doublet construction, the same pattern is used to measure the black canvas inner lining adding an extra three quarters of an inch around the pattern to wrap around the plastic canvas.

Duck canvas with pattern traced in chalk. Cut 3/4 inch around markings.
Using barrettes to hold the layers together didn't work as well as with the doublet, due to the inflexibility of the plastic canvas. Later, I brushed a think layer of tacky glue onto the plastic canvas to hold the tweed in place so that it wouldn't distort. If I use this material again, I'll do the same with the duck canvas. However, I may switch to a heavy fusible interfacing.

Sewing the inner layer of duck canvas to the inner lining.
Normally, I'd sew the outer lining to the interfacing with a stitch that's hidden from view. Unfortunately, the plastic canvas doesn't lend itself to this. At least the black duck canvas hides the stitches well. Another reason to use fusible interfacing.

Outer Lining
After stitching the duck canvas, I once again attempted using barrettes on the tweed out lining. With three layers, the barrettes failed to stay closed. The tweed also proved to be so flexible, it distorted while holding it. I removed the barrettes, brushed a thin layer of tacky glue to the plastic canvas, and pressed the tweed down into the correct position. A few minutes later, it was ready to trim and sew.

Tacky Glue to the rescue!

Turn the tweed edge under facing the interfacing layer and stitch the tweed to the duck canvas along the edge. This was much easier than the duck and plastic canvas layer. Instead of the upholstery thread, I used a thinner polyester. A tight whip stitch along the edge took no time at all and is virtually invisible.

Whip stitching the tweed and canvas together.

The finished panel looks pretty good. As I said earlier, I'd rather not show any stitches at all. If I had used thick fusible interfacing or a heavy hair canvas instead of plastic canvas, I could have avoided the stitches in on the inner lining. At least the outer lining hasn't any exposed stitches.


Inner lining in duck canvas. Please ignore the stitching ;-(


Outer lining in tweed

Belt Loop
I considered several options for the belt holder on the back of the sporran. For example, sewing a pair of "D" rings to the back. Since I want to compare the performance of this sporran with my cheap leather one, I decided to construct a belt loop.

I used the same construction as the front and back panels, and attached the loop with the duck canvas facing toward the front of the sporran, assuming it would get the most wear. A double row of upholstery thread sewn through to the six layers of belt loop and back panel should hold. I found sewing through the plastic canvas a bit of a challenge. I tried to follow the curve of the belt loop and kept running into plastic. I was able to reposition the needle most of the time, but with two layers of plastic canvas, the holes sometimes just don't line up where I need them. Yet another reason to use fusible interfacing.

Belt loop attached
Gusset
I've decided to use a button and loop as a latch. I should probably sew them on before sewing the gusset to the back and front. Since my gusset is pretty wide, I'm going to wait so I can optimize their placement.

The gusset is a double layer of duck canvas, sewn together and turned inside out to hide the seam. Although I could have used the sewing machine to do this, the rest of the sporran is hand sewn so I took the time to hand sew it. Didn't take long.

To give me some room for adjustment, I left one end of the gusset unfinished. The gusset is sewn to the front panel so that it can be reversed, giving the front a smooth roll of cloth and a hidden seam. When sewn to the back panel, the gusset forms an "S" shape encouraging it to fold inward when compressed.

Sew the gusset to the outside of the panel

More sewing o' the gusset
After sewing the gusset to the front panel and reversing, I noticed that the rolled edge doesn't stay in place as well as the leather. Normally, when attaching a leather gusset, the leather is dampened to encourage it to stretch and form a nice rolled edge. Which, of course, I cannot do with the duck canvas. I thought it was going to stay once it was sewn to the back panel. I ended up stitching the top portion of the roll to the inside edge of the front panel about half inch an inch down to encourage it to stay rolled. Now would be a good time to do this.

Gusset rolled toward inside of front panel
View of rolled gusset from the front panel
Before sewing the gusset to the back panel you will want to line up the two panels so that they are parallel to each other and not rotated, then mark the top edge of the gussets to the back panel with chalk. I also pinned the gusset to the back panel to keep it from rotating while sewing. It still was off a bit and I had to make some adjustments to the top edge of the gusset to keep it from looking higher on one side relative to the other.

I think it would have been better to have found the exact bottom of the gusset relative to the front panel and started sewing it to the back from their. Using two needles and thread, progressing from the bottom toward the top edge. This would have probably helped keep the finishing position from sliding higher. At least it wasn't too far off.

Finishing the edge of gusset off


Tacking the roll to the panel to encourage it to stay rolled
Wide and deep
Closure
With such a wide gusset I was concerned with latch placement. Sporran #1, the Rob Roy style, has a loop and knot closure that is a bit annoying. To keep it closed, you have to tie the loop, otherwise it cannot be adjusted for the volume of stuff you're carrying around. I was afraid this would be an issue. If you collapse this sporran flat, the top flap extends a good two inches farther down the front panel than when fully extended.

As a compromise, I attached two buttons, one to the flap and one to the front panel just far enough that it won't get in the way when the sporran is fully collapsed. To allow for adjustment, I'll tie a cord to the top button, and loop a cord around both buttons in a figure eight pattern. The friction looks like it will be enough to hold it without a knot. I'll give it a try for a while and see how it works out. I can always change it later.

Two button with cord closure

Friday, April 12, 2013

Microsoft Dynamics CRM: Not Quite Multi-Tenancy

Multi-Tenancy or Bust
One of my challenges with the current project I'm working on is to make our solution behave for each franchise owner as if they are in a system of their own, completely separate from each other. Yet, allow the home office to easily roll-up data from each franchise, push leads and other commonly shared data to each franchise, and run scheduled and manually initiated workflows for every franchise.

By far the easiest and most effective way to keep franchise owners separate is to use a multi-tenant solution. If each franchise were in their own CRM Organization, they cannot see the other franchise data. This also lends itself to developing a common core solution, applied to all organizations, yet allow each franchise to make modifications above and beyond the core solution.

However, a multi-tenant solution complicates the home office solution. You can easily end up with disparate and incompatible solutions that are impossible to merge or roll-up.

We've decided to use the built in business unit structure in Microsoft Dynamics CRM 2011 to keep each franchise separate. Each user role has been duplicated to give the franchisees roles that limit their data access to their respective business unit. For the most part this appears to solve our problem. We can easily roll-up data to the home office root business unit level and enforce a common core solution for each franchise. Business rules can be easily deployed and enforced across the network. The rate situation where a franchisee needs to create additional entities, forms, and workflows can be handled and controlled with business unit specific modifications.

Um, now what?
We ran into a situation that, at first, looked like we weren't going to get around. In a multi-tenant environment, this would have been somewhat simpler to implement, but would have involved denormalization of the data. We have hierarchical accounts where the topmost account represents a national service provider, an NSP. The home office would like to track the business each franchise conducts with the local NSP accounts. At the same time, each franchise wants easy access to common NSP account information and contacts without maintaining their own version.

Altered Access
This sounded like a pretty simple problem, I just need to create a commonly accessible NSP account at the home office level and allow each franchise business unit read-only access to it. They can pick it as the parent for their local NSP account.

In order for the franchise business units to see the home office NSP account, I altered their security role giving them Organization level "Read" and "Append To" access to the Account entity. This wasn't quite what I wanted. Each franchise business unit now had read-only access to each other's accounts.

Let's Share
After undoing this, I changed the sharing permissions on the home office NSP account, allowing each franchise business unit "Read" and "Append" access to the account. It's not quite as easy to maintain, I'll have to write a workflow activity to automate sharing NSP accounts, but it's not bad.


... but not this much!
At first, this looked like it was going to work. However, once you select the home office NSP account as the parent account, any franchise business unit could read the local NSP account. The read permissions on the home office NSP account were applied to the franchisee's local account. Not what I was expecting at all.

It's all about Relationships
After further digging, I ran across Cascading Team Permissions in Microsoft Dynamics CRM, a blog post by    Benjamin Whitestone, a CRM Analyst at Armanino McKenna. In it, he explains how the default Parental Account to Account relationship behavior causes the user rights of the parent record to be applied to the child record. Fortunately, Microsoft allows you to customize this behavior.

Change the Type of Behavior from Parental to Configurable Cascading. Then change Assign and Reparent from Cascade All to Cascade None. This prevents selecting the home office NSP account as parent from cascading the organization level read privileges to the franchisee child account. 


Now, when the home office NSP account is selected as the parent of a franchisee's local NSP account, only the home office business unit and the owning franchise business unit can see it. On to the next challenge.