admin

August 14, 2024

Dynamics CRM Paging Part II – Lazy Paging

Following on from Dynamics CRM Paging Cookies – Some gotchas!, here is a helper class we use for all our paging needs. An example of its usage: [sourcecode language=”csharp”] const string fetchXml = @” <fetch mapping=’logical’ count=’5000′ version=’1.0′ page='{0}’ {1}> <entity name=’account’> <attribute name=’name’ /> </entity> </fetch>”; var accounts = new PagedRetriever<Tuple<Guid, string>>( entity => Tuple.Create( entity.Id, (string)entity.Attributes[“name”]), (page, cookie) => String.Format(fetchXml, page, cookie)) .GetData(service); [/sourcecode]   The utility class has a couple of nice features: Laziness – Extra pages […]
August 14, 2024

Word Redundancy Factors

By Christian Waters, Director, delivery at TrueNorth IT. “Studiously” – 369,000 google hits “Studiously ignored” – 85,500 google hits “Studiously ignores” – 59,700 google hits Here at TrueNorth we like words almost as much as programming, well I do anyway. I have been looking for a good example of this phenomenon for a while, where a regular English word becomes so attached to its partner that it may as well not exist on its own. I think ‘bated’ is one […]
August 14, 2024

The Importance of Code Reviews – Shared Responsibility

Just wanted to share a story from university that taught me early on the importance of peer reviews and your responsibilities as a reviewer. The situation was a group practical during which we were designing a toy 4-bit microcontroller. The whole thing was mainly built out of MOSFETs if my memory is correct (my electronics is definitely rusty ~15 years down the line!). These were plugged together into basic logic gates, logic gates into half-adders and latches and so on. […]
August 13, 2024

Don’t Burn your Free Azure Credits, or Max Out the Corporate Card

Please note, this can be scheduled with azure automation To set up creds to connect see Authenticating to Azure using Azure Active Directory At TrueNorth we try to get the most out azure. We use it for Development, PreSales, Testing infrastructure architectures, Performance testing and more. It so easy to forget to turn a VM off and then you find yourself trying to navigate the site on your mobile to deallocate your VM. So, we have created a PowerShell script […]
August 13, 2024

Dynamics CRM Paging Cookies – Some Gotchas!

If you want to page query results in dynamics CRM then the recommended way is paging cookies: http://msdn.microsoft.com/en-gb/library/cc151070.aspx Sounds straightforward, we get a paging cookie back on each resultset, and we simply add this to our request for the next page. What doesn’t seem well documented is that these paging cookies do not work for a lot of queries, even though they are returned on the first page. Let’s set up a simple example to demonstrate this. First we will […]
August 13, 2024

An Adventure with Tiny Types and Tuples

Here at TrueNorth we love functional programming and if you code in this style you will end up using lots of tuples, and tuples of tuples and…. you get the idea. A lot of bread and butter business software coding is just manipulating sets of data, grouping, selecting, filtering, joining etc… Often whilst transforming your inputs to your outputs there will be some intermediary structures involved. There are a few options for representing these structures:   Wrapper Classes Pros: readable, […]
March 14, 2022

Making the Most out of your CRM IIS Logs

If your system is slow, IISLOGS give you the true server side performance statistics, review this in the first instance. We have recently delivered a large solution with 3000+ users and millions of records. The system went from a low user-base / record count to its current level in a very short period. We were keen to measure the performance of the system early on. We wanted to measure the following: % Slowpages (pages that take longer than 5 seconds […]
March 10, 2022

Data Migration, An Approach

We at trueNorth recently helped our client with their data migration from a legacy system to a Dynamics CRM solution. The main requirement for the business was the dataload had to complete in 1 weekend, this included: Preparation The migration Validation and Testing   We also had to leave enough time to revert back to the existing database if needed, so.. when we say a weekend we really mean 30 hours or so. Many “off the self” products were tried […]