I haven’t had a lot of time to work on the plugin but got back to it last night and am really trying to get the roster export completed. It isn’t hard but it is tedious as there is lots of data to output in the SDIF format. I am close to being done and found an inconsistency with the D1 record. It allocates 12 characters for the USS# field however the USS# field is 14 characters long. Since it looks like it is only mandatory for submitting data to USS, I may omit it. I also sent an e-mail to Hy-Tek to see how they handle it, we’ll see if they respond. For now I think I will omit it and move on. I need a copy of Team Manager to test with – that is my next dilema.
Last night I completed the initial PHP include file for SDIF support. As I mentioned previously, I thought it would take a while and it did. The upside is taking the time to go through the specification to create all the PHP constants has made me more familiar with SDIF. I don’t think it will be too hard to generate SDIF from the registration information the plugin already collects however, there are parts of the plugin which will need some additions. For example – the SDIF team records (there are two of them) require detail which wasn’t collected previously and the swimmer records prefer to have the middle name because the USA Swimming Id is constructed from portions of the swimmer’s first, middle, and last names along with their birthdate. Looks like to me like you can still end up with conflicts but that is what the specification outlines. So now off to enhance the team and swimmer forms.
I have learned quite a bit about Swim Team software in the past month or so that I have really been working on this project. Once I got the basic plugin working, I started looking into how we can use the registration data we collect with some of the commercial Meet Manager software. Hy-Tek seems to have the vast majority of the market for Swim Team and Meet management. Unfortunately Hy-Tek has a really closed software solution and have no plans to open it up.
I find it amazing that Team Manager cannot import a roster from Excel or other ASCII (CSV, tab delimited, etc.) file. I spoke at length with their tech support yesterday and they fully believe all of the data entry should happen in their tool. That would be ok if it was the least bit user friendly but it isn’t. One of our coaches shuddered at the thought of entering the roster in Team Manager this year – after enter a couple of swimmers, I completely understand why. It will take a long time. A really long time.
I am now on a mission to produce US Swiming’s SDIF v3 files from our database to try and import them into Team Manager. If this works, then we should be ok. The SDIF v3 specification is old – about 10 years old and reminds of old FORTRAN punched cards or CoBOL. Each record has specific character widths and positions. It doesn’t look to hard. USA Swiming’s new XSDIF specification would be better but Hy-Tek has no plans to support it. XML is absolutely the way to go with this sort of interchange data.