How to Migrate your Sitecore 8.x MongoDB Contacts to xConnect

With Sitecore 9.0 and the introduction xConnect you might be wondering what you are going to do with all that analytics data sitting in MongoDB, when you upgrade your Sitecore 8.x instance to Sitecore 9. Well, Sitecore have created a tool called the xDB migration tool. The tool uses the Sitecore Data Exchange Framework 2.0 and it provides the ability to read from MongoDB (source system) and write to the xConnect server (target system). If you are not familiar with the Data Exchange Framework I have covered it in an earlier post.

The xDB migration Tool provides a pre-configured mapping of data from the MongoDB database to the xConnect server in the form of a DEF Tenant. The Tool includes two data migration processes.

  1. MongoDB Contacts to xConnect Contacts – Reads contact data and related device and interaction data for each contact – from a MongoDB database and writes it to xConnect.
  2. MongoDB Reference Data to xDB – Reads geo IP and location data from a MongoDB database and writes it to xConnect.

Continue reading

Sitecore Data Exchange Framework the SQL Provider

I recently presented at Atlanta Sitecore Usergroup and gave a demo using Data Exchange Framework (DEF) 2.0 and the SQL Provider – to read customer records from a SQL table and create items in Sitecore. You can read more about the DEF 2.0 here.  In this follow-up post, I’ll walk through the DEF configuration required for the demo.

def_sqlcustomerdemo3

Continue reading

Leveraging Sitecore Data Exchange Framework to access your Data

Eric Stafford (aka Sitecore Superman) and myself had the opportunity to attend the Integration Bootcamp at Symposium.  The day was divided into 2 sections: xConnect in the morning with Todd Mitchell (xConnect Product Manager) and Niels Kuhnel (Sitecore Architect) in the afternoon Adam Conn (Director of Product Management) did a deep dive into the Data Exchange Framework. In this post will I take you through some of my takeaways on Data Exchange Framework which I shared recently with the Atlanta Sitecore User Group.

What do we call it?

First, we need to clarify one thing and that’s how Data Exchange Framework is abbreviated. There appears to be some confusion in the community and that’s because Sitecore has a fondness for the letter x.

Adam Conn was insistent that if we left the boot camp knowing one thing – it should be: “the Data Exchange Framework is DEF, not DXF!! And that referring to is as DXF is like Sitecore with a capital ‘C'”.

Enough said!!

What is it?

  • A Framework Designed for transferring Data into and out of Sitecore.
  • It’s an ETL – Extract, Transform and Load the 3 steps of data integration.
    • Extract – you’ve got a source system you are extracting data from.
    • Transform – we change the data to be compatible with the target system.
    • Load – we load the data it into the target system.

DEF_ETL

  • It standardizes how we do data integrations with Sitecore.
  • It promotes re-usability by providing patterns and components that help you with your integration leaving you to focus on the other tasks associated with data integration.
  • It is highly configurable and extendable allowing you to integrate with almost any 3rd party system.
  • It enables Synchronization of Systems and processes.
  • It reduces the amount of effort required to integrate 3rd party systems.

Continue reading

Sitecore 9.0 SIF – Windows 8.1 & Server 2012 Gotchas

While attempting to install Sitecore 9.0 on a Windows 8.1 machine I ran into a few gotchas I thought worth sharing.

Gotcha #1 – Powershell Version

SIF requires Powershell 5.1 or later not 5.0 as stated in the install guide Section 2.3.2.

Sitecore9powershellerror

Sitecore Support have stated the documentation will be updated to show the correct prerequisites, i.e. PowerShell 5.1 instead of 5.0.

Gotcha #2 – Sitecore Fundamentals Not Supported

Having upgraded powershell I happily and very eagerly carried on. Util my install script hit another error:

SIFFundamentalissue

I checked my the xconnect-createcert.json settings and everything looked fine and I could see Signer as one of the params specified for the NewSignedCertificate task:

"CreateSignedCert": {
// Create a certificate signed by the root authority.
"Type": "NewSignedCertificate",
"Params": {
"Signer": "[GetCertificate(variable('Root.Cert.DnsName'), variable('Root.Cert.Store'))]",
"Path": "[parameter('CertPath')]",
"CertStoreLocation": "[variable('Client.Cert.Store')]",
"Name": "[parameter('CertificateName')]",
"DnsName": "[parameter('CertificateName')]",
"ErrorAction": "Continue"
}
}

I took a closer look at the script New-SignedCertificate.ps1, part of Sitecore Fundamentals module. This calls a Windows Cmdlet: New-SelfSignedCertificate, however the version of this cmdlet on Windows 8.1 and Server 2012 does not have a param called Signer, hence the error.

Continue reading

Sitecore Symposium 2017 is here!!

With Sitecore Symposium 2017 about to kick off, the excitement is building. Everyone and anyone that has ever touched Sitecore knows about the Symposium.  If you haven’t then you are probably only starting out or have recently been introduced to Sitecore.

So whats the big deal? You might ask!!

Well, it’s a probably a bit like what the Oscars are to the Film industry except instead of red carpet we have a red logo that’s instantaneously recognizable. You won’t see any of Hollywood’s celebrities here either… Erm, actually that’s not entirely true!! This year we will be joined by Mark Hamill aka Luke Skywalker who will be sharing an insight on playing his famous Star Wars character, and more recently the Joker, also his career as a voice actor and how he managed to establish a whopping 2 million followers on social media.  Okay, so Mark may be the exception if that are other celebs I don’t think you’ll be that interested!! That’s because the Symposium attracts people in a completely different league.  These are some of the greatest minds and thinkers in business, marketing, and the technology industry today.

Continue reading

Sitecore PXM & Adobe InDesign Compatibility Gotcha

While visiting with a client recently, there was a slot on the agenda to discuss Sitecore Print Experience Manager (PXM) and how its potential as part of their Sitecore ecosystem. Early that morning while sitting in my hotel room, I thought wouldn’t it be great if I could fire up a quick demo, for the benefit of anyone who wasn’t familiar with the product and show them it in action using actual content from their Sitecore instance.

The customer is currently running Sitecore 8.1 update 3 (rev. 160519).  So I headed over to Developer Portal Downloads to locate a compatible version of Sitecore Print Experience Manager (PXM):

Sitecore PXM Version Sitecore Compatibility
Sitecore PXM 8.2 rev. 170509
(released May 16, 2017)
Sitecore 8.2 update 3
Sitecore PXM 8.0 update 2
(released Jan 12, 2017)
Sitecore 8.0, 8.1 and 8.2 (and also Sitecore 7.1 – 7.5)
Sitecore PXM 8.0 update 1
(released Dec 11, 2015)
Sitecore 8.0, 8.1 and 8.2 (and also Sitecore 7.1 – 7.5
Sitecore PXM 8.0
(released Feb 12, 2015)
Sitecore 7.1 – 7.5

Continue reading

Download Sitecore Support patches directly: An Urban Legend?

How often have you had to install Sitecore support dll and wondered where on earth do I download it from? I know I have.

My good friend and MVP Ian Graham did a pretty good job at answering this question on Sitecore.StackExchange back in November 2016, excerpt included for reference:

You can try searching for it here:

https://kb.sitecore.net

The dll will have a reference number associated with it Sitecore.Support.xxxxx.dll.

For example: https://kb.sitecore.net/SearchResults#term=442487

If you can’t find it just raise a ticket with Sitecore and they will provide you with the dll.

Also recently released is this Github project containing source code for support fixes

https://github.com/SitecoreSupport

Yes, you can search and download support dll’s from https://kb.sitecore.net but only if the support patch has been written up and article relating to it exists on the KB.

If you can find it on the KB then you will be provided with a link to the dll and any supporting config which you can easily download.

What about https://github.com/SitecoreSupport?

If you have recently tried to access a support dll on https://github.com/SitecoreSupport, using a path you were previously given by Sitecore Support you will receive a 404 error.

Why? I asked the question recently on Slack and Rob Earlam, Technical Evangelist @ Sitecore answered: “We don’t have Support DLL’s on GitHub anymore, if you need a specific fix then you’ll need to open a Support ticket yourself and make the request there.”

So, there you have it – if you cannot find the Support patch publicly available on Sitecore’s KB you need to raise a support ticket requesting the support patch.  Any other method of accessing a support dll is most likely an Urban Legend!!