Driving to Insights

I have been waffling between flying and driving to Insights this weekend. The final ‘Nail’ to get me into the desire to drive was when I did the hour budget. That is the time to Drive Vs. Fly and and add on comfort in the equation. When it looked as if either going or returning would have a 8 hour investment with flight heading down and 9 hour returning. With the estimates of driving being just a little over 11 it seemed like the right thing. And with the new car should be a nice ride. I have downloaded hours of content to listen as well as lots of music so I suspect the time will go by quite fast. I am hoping to actually get to the hotel tomorrow night as I have checked for availability and everything is good to go. Now to just get the my ducks in a row and packing done and off I go.

See you all there soon.

Unwrap that object my friend

Lately I have been seeing posts with regards to filtered searching inside of the SalesLogix web client. An example is the contact list where functionality is required to display only the contacts with a certain last name. I had to do this recently and had found the same issues that had been reported in the forums and newsgroups. The problem identified that properties in child entities were not resolvable when bound to a grid. After some head scratching, and inspection using visual studio debugger I noticed that the children were not being resolved (lazy loading) so I wrote a simple method to explicitly unwrap the entity to ensure that the children are resolved.

The simple helper method is as follows

static Sage.SalesLogix.Orm.EntityBase Unwrap(Sage.SalesLogix.Orm.EntityBase value)
   INHibernateProxy proxy = value as INHibernateProxy;
   if (proxy != null)
      value = (Sage.SalesLogix.Orm.EntityBase)

   return value;
Now I will finally iterate through the resultant list in my query and add the result of this method call to a new list and finally return this new list instead of the one that was directly returned from the query.

var list = (IList)queryExecutor.List<IContact>(); // Gets the list from NHibernate

// New resultant list

IList result = new List<IContact>(); 


// Unwrap the entities and add to the new list

foreach (IContact contact in list)




return result;


— Mark

A week till Insights

Next week the Insights business conference is on in Nashville. This is a time where I get to meet up with all my business partner friends and see the great people from Sage. Though I talk to many of them daily meeting up face to face, and having some social time is a great thing to do. I expect that the conference will be somewhat lighter in attendance this year in light of the economic downturn, and the unfortunate spread of the Flu of late. This will I expect equate to those who are going, to more quality one-on-one time with other BPs and with their Sage counterparts. I am hoping for a real ‘Geek’ out while there, having dinner with some of the trainers, and PSG guys and SE’s. I believe it is going to be a great time and I definitely look forward to seeing everyone there.