UPDATE: I apologize for the missing images. They were Blogger hosted originally and seem to have been corrupted/went missing in the transition to Google+/Picasa. You should still be able to get the gist of the solution without them, but if you still have problems, please contact me directly for more information.
Having just worked through a migration from Vista 8 to Blackboard’s Learn 9.1 LMS platform, there were some challenges around translating the formerly “live” integration achieved from Banner to to Vista via the LMB to the new XML Feed file integration provided by Blackboard’s Learn 9.1 platform.
I should start this post with the caveat that LMS Administration is a fairly new pursuit to me, by virtue of some staffing transitions at Marshall University – so it’s possible (likely even) that if you’ve been doing LMS administration for some time, much of what I describe as I walk through how we achieved our integration will be second nature to you. It’s also likely that you’ll laugh at a few of my silly mistakes – but I’ll discuss each of them anyway, in the hope that someone else in my shoes can benefit from the experience.
Our Environment
In the interest of background to help you determine if this post is right for you – as well as in an effort to hit on some of the keywords most likely to bring the right information seekers to this post, I’ll talk through our previous and current environments.
The old environment
Blackboard/WebCT Vista 8 Enterprise
Banner SIS sending person and membership record updates via the Luminus Message Broker
The new environment
Blackboard Learn 9.1 SP8
Banner SIS providing XML exports of person and membership records
Export files posted and processed by Learn 9.1 via the IMS Enterprise 1.1 Vista XML Feed File integration
Our Situation
The previous semester, we had run a dual environment where Learn 9.1 was our “pilot” LMS with a limited number of live course offerings, while Vista remained our core LMS.
We had always planned to migrate all of our live courses to Learn 9.1 for the new spring semester, and
with staff transitions happening, and the reality that someone with little knowledge or history of the LMS was going to have to quickly get up to speed, it made more sense to push forward on one system than to try to put on the brakes on our planned rollout and continue to support both systems.
Pushing forward meant quickly figuring out how to make integration between the SIS and the new Learn 9.1 system as seamless as possible with the loss of the “live” LMB integration. It also meant that there would be a lot of trial and error, and learning from silly mistakes along the way.
Making Integration Work
Let’s walk through the steps we took to get our integration working. Along the way, where we encountered problems, made mistakes, or had to work around an issue, I’ll call that out along with any additional information that might prove helpful to someone else in a similar situation.
Step One – Setting up a semester data source
The first step I took was to set up a new datasource in the Learn 9.1 admin to handle the new semester course and enrollment data. By assigning a new data source key to each term, data can be manipulated in sets that correspond to logical term dates. This way, if a change needs to occur that impacts courses, courses can be manipulated by term without affecting other data in the database. Additionally, setting up a new data source key for each term eases reporting later, when you want to pull out information about a specific time period.
To create a new data source, log in as a system administrator, and click on the Data Integration building block link:
Click the button labeled “Create Data Source” at the top of the page:
Since we are using banner as our SIS, and we know that it’s producing IMS Enterprise 1.1 – Vista compliant XML files when we run our user and enrollment queries, we selected “IMS Enterprise 1.1 – Vista” when creating the new integration.
Important note: You can have more than one integration tied to a given data source. In fact, there are some cases where you may need to perform an administrative level action on data in your database that will require you to create a flat file integration. I ran in to two of these cases myself when I needed to change the data source an existing user record was associated with. The important thing to understand is that it’s not a big deal to have more than one integration set up for a given data source at the same time.
Once you click on the type of integration you want to create, you are taken to the configuration page for that type of integration. The information that you need is going to vary depending on the type of integration that you’re setting up. Since, in our case, we were focusing on IMS Enterprise 1.1 – Vista, that’s what the screenshots I’m providing will be of.
This type of integration will present you with three primary configuration sections: Integration Properties, Data Support, and Advanced Configuration. Let’s break each of these sections down and talk about key components.
Integration Properties
The custom script essentially tells learn how to properly interpet the status values coming in from Banner in the XML so that users can be marked as unavailable when they drop a course.
var rs = true;
if ( data.rolesToAddOrUpdate.get(0).status == ‘Inactive’ ) {
rs = false;
}
rs;
Moving Forward
I expect to have additional issues as we move through the semester, and I’ll come back and update periodically. If you have any useful information or insight based on experience at your own school, please share in the comments.
We are having exactly the same problem. And I applied the steps you suggest exactly the way you recommend it. However, I am getting an error message after the xml file upoad:
Error in script execution for attribute: rowStatus.
blackboard.platform.script.ScriptingException: javax.script.ScriptException: sun.org.mozilla.javascript.internal.EvaluatorException: Cannot convert 0.0 to blackboard.dataintegration.ims.data.Role$Status (#3)
Any advice will be greatly appreciated.
Dr. Irena Markova
Programmer Specialist
Connecticut State Colleges and Universities
Irena, did you get this resolved? The error that you’re experiencing should be corrected by modifying the custom script in your enrollment configuration to the following:
var rs = true;
if ( data.rolesToAddOrUpdate.get(0).status == ‘Inactive’ ) {
rs = false;
}
rs;