Working on Hy-tek Entries

Over the last few days I have been working the Hy-tek HY3 equivalent of exporting SDIF meet entries.  For the most part the logic is largely the same but the Hy-tek Meet Entries format is different enough that it isn’t a simple port.  In particular, relay entries have me a bit stumped.

In SDIF it is possible to assign any number of swimmers to a relay event as an “Alternate” using the “A” designation in the leg field of the F0 record.  As near as I can tell, the Hy-tek equivalent doesn’t exist.  A relay team can be defined in the HY3 F1 record and the heat and lane assignment can be set in the F2 record.  Swimmers are designated in the F3 record.  So I am somewhat stumped – do I just define the relay teams and then let the assignment of swimmers to the relay teams happen within either Team Manager or Meet Manager or do I keep track of the number of potential swimmers and create the maximum number of relay teams and simply assign swimmers to each team so they can be sorted out later?

The other dilemma I face has to do with the swimmer id field which is not the same as the registration number field.  The swimmer id field is an internal database field which connects D1, E1, and F3 records to the same swimmer.  Within my plugin I have unique swimmer ids in the form of database record identifiers that I know will be unique.  Should I use them or is simply starting at 1 and sequencing the number of swimmers as using that as an id sufficient?

My guess is the answer to both of these questions will be “it depends” and I’ll need to experiment.  Life would be so much easier if Hy-tek would simply support the SDIF format correctly instead of the half assed way they do it now.

wp-SwimTeam v1.31.918 now available

This morning I released an update for wp-SwimTeam.  This version addresses a few issues and completes the Hy-tek Team Manager Roster Import functionality.  You can find it on the Download and Installation page or through the WordPress Dashboard and the Plugin Repository.

  • Completed Hy-tek Roster export. All fields that can be mapped into some sort of logical Hy-tek Team Manager field are now supported. TM supports up to three custom fields in the roster import file, if optional swimmer fields are enabled, the first three (or fewer) will be mapped into the corresponding TM custom field.
  • Fixed bug where in some instances, the first name would be blank.
  • Fixed alignment (right instead of left) of Swimmer Id field on SDIF F0 records in entries export.
  • Fixed minor white space issue in PHP source code which in some cases seems to cause the Job Commitment Report to hang.

Early build of wp-SwimTeam v1.31 now available

This afternoon I posted an early build of wp-SwimTeam v1.31.  You can download and manually install it if you want to try it.  This build completes the work for exporting the roster to Hy-tek Team Manager.  All of the swimmer and parent fields that can be logically mapped into the Team Manager Athlete profile have been mapped.  I was even able to map some of the Swimmer Optional fields (if they’re used) as Hy-tek Team Manager supports importing up to three custom fields.

Download:  [download#14]

If you run into any problems, please let me know.  I’d like to release this update in the next day or so.

wp-SwimTeam v1.29.903 now available

I have just pushed out v1.29.903 of wp-SwimTeam.  This update addresses a couple of bugs, notably with the Job Commitments report, and adds some new functionality.

New in v1.29:

  • Fixed bug which prevented the Job Commitment report from running correctly.
  • Fixed bug which caused “$credit” to appear in the CSV version of the Job Committment Report instead of the actual number.
  • Added new option to set initial value on swimmer labels with numeric sequences.
  • Fixed bug with SDIF profile when Geography was set to US which resulted in a broken form.
  • Elimited some debug code which generated output when exporting entries.

Also included in this build are all of the changes included in the v1.28 beta release which I never formally made available.

  • Added button to Swim Team User Profile form to quickly open user’s WordPress User Profile form.
  • Tidied up several of the reports to make them consistent. Each should now display the HTML report on screen when exporting another format.
  • Re-implemented download solution for actions which generate downloadable files (e.g. CSV, SDIF, etc.)
  • Phase 1 of Hy-tek HY3 export support. Roster can be exported in HY3 format which imports into Hy-tek Team Manager.
  • Fixed bug which enabled job signup for all users regardless of setting on Jobs Options tab.

This update has been committed to the WordPress Plugin Repository and should appear on your WordPress Dashboard shortly and is also available from the Download and Installation page.

And there was much rejoicing – Hy-tek HY3 export now in beta!

I have made an early release of wp-SwimTeam v1.28 available for download.  This new version introduces a long requested a feature:  Hy-tek HY3 format export of the roster!  The exported HY3 can be read into Hy-tek Team Manager eliminating the need to hand enter your roster.

The Hy-tec HY3 support is not complete but I wanted to get it out there.  Currently only D1 records are exported, the other record types which contain the contact information and address for the swimmer will be added soon.  Once the roster is complete I plan to move on to meet entries in HY3 format.

Special thanks to Joe Hance and Troy Delano both who have helped me with the Hy-tek checksum and file format.

Download:  [download#14]

Please give it a shot and let me know if you run into any issues.

wp-SwimTeam v1.25.865 now available

This afternoon I released an update to wp-SwimTeam.  This update, v1.25.865, fixes a number of issues and adds some new features.  Key in this build are a number of fixes to allow wp-SwimTeam to work under WordPress Multi-Site.

  1. Fixed issue with missing users when running under Multi-Site.
  2. Fixed User Drop Down select lists to work when running under Multi-Site.
  3. Fixed display of swim meet date in several locations eliminating PHP warning message.
  4. Updated SDIF profile success message presentation.
  5. Added support for Swimmer Labels in SDIF Roster export.
  6. Added support for Swimmer Labels in SDIF Meet Entries export.
  7. Fixed default sort order on Age Groups so it is predictable.

The new build replaces the latest beta release and is available from the Download page and from the WordPress plugin repository.

wp-SwimTeam v1.24.846 now available

This afternoon I posted an update to wp-SwimTeam.  This release, v1.24.846, addresses a couple of issues.

  1. In ability to add a new season to a new installation.  Made it kind of hard to get started!  This bug was introduced when I added action checking and the action checking on the Seasons had a flaw in it.
  2. Added B1 and B2 records to the SDIF export of Meet Entries.  These records are required and I had simply overlooked them.  The Meet Entries successfully import into WinSwim, I hope to validate with Team Manager in the next day or two.

WordPress multi-site is not functional at this time.  I’ve been alerted to a bug which I am chasing which prevents the Users from being displayed.  Access to the user tables is critical and multi-site handles it differently than regular WordPress does so I need to account for it.

wp-SwimTeam v1.22.831 now available

This evening I committed v.122 of wp-SwimTeam to the WordPress plugin repository.  This update completes the work I started about a month ago to overhaul the Event Model and add the ability to Export Meet entries in SDIF format such that they can be imported directly into any of the Meet Management applications.

I have made a lot of changes while working on this new functionality.  If you run into anything unusual, please let me know ASAP so I can fix it.

  • Added new Team Profile field to identify Coach by WordPress username.
  • Fixed numerous potential issues when either Swimmer or User option count was set to zero. The comparison was not accounting for the difference between zero and non-existant which resulted in using the default value of 5 in many instances.
  • Initial support for Meet Entries SDIF export. The current implementation makes some assumptions which will eventually be under user control via a form. The exported SDIF validates with the WinSwim SDIF Checker application but has not been tested extensively with any of the Hy-tek tools nor with WinSwim itself.
  • Added checking and error messages for all Actions to ensure something is selected when required.
  • Added GUI for Meet Entries Export.

Export Meet Entries from wp-SwimTeam!

For the last week or so I’ve been working on a significant chunk of new functionality to export a Meet Entries file directly from wp-SwimTeam.  I’ve got a preliminary version of it working and I am able to generate a SDIF file which passes validation with the WinSwim SDIF Checker (which is absolutely invaluable if you work with SDIF data!).

The current implementation makes some assumptions (e.g. how zero times should be handled) which need to be under the control of the end user via a form. Now that I have it working, building the form should go pretty quickly.

The basic premise of exporting meet entries works is like this:

For each event in a swim meet (a meet must have a set of events connected to it), the active roster is compared against the scratch list and the remaining eligible swimmers have entries created for them.  For relay events, all eligible swimmers are listed as alternate swimmers for the ‘A’ relay team.  Once the entries are in your Meet Management tool, you can re-arrange swimmers into lanes and heats as you would normally do.

I know this new feature will save our team a ton of time as we try to reconcile our scratch list against the WinSwim database – now we won’t have to.  We’ll just import the entries and not have to worry about activating or deactivating swimmers.

I’ve also fixed a number of bugs so I am considering releasing an update with the functionality as it stands so people can try it out.  The bugs would be most obvious when either the User or Swimmer option count was set to zero.  In a number of places, the comparison was wrong and it result in using the default number of options which is 5.


wp-SwimTeam v1.19.783 released

This afternoon I released an update to wp-SwimTeam.  This latest update continues work on the new Event Model.  Events can now be imported from a Hy-tek Events File (.hyv) and connected to a swim meet.  I also made a number of GUI improvements to fix flow control and be more intuitive.  Other changes include:

  • Fixed wp-SwimTeam so it will work in sub-directory installations and WordPress multi-site.
  • Added new option to toggle message verbosity. Some actions generate numerous messages, this option will reduce and summarize messages.
  • Fixed Event Opt-In/Opt-Out which was broken with Event Model changes in v1.18.
  • Added ability to load Meet Events from an Event Group into a swim meet.
  • Fixed broken GUI controls for Events (expand, collapse, page forward and back).
  • Tightened up flow control between Event Groups and Events and Swim Meets and Events.
  • Changed buttons on for some actions (events, swim meets) to return to a logical place. “Back” and “Home” didn’t really mean anything in most cases. In particular, “Back” has been a reliability challenge so in most cases it has been eliminated.
  • Fixed several bugs in report generator which manifested themselves when User or Swimmer optional field count was set to zero.
  • Fixed bug which resulted in broken Opt-In and Opt-Out actions on the drop down lists.
  • Fixed bug which incorrectly entered Opt-In/Opt-Out information in Stroke format even when set for Event Mode.

This update is available now from the WordPress Plugin Repository or from the Download and Installation page.  Existing users should see an update notification appear on the WordPress Dashboard.

If you run into any problems, please let me know and I will try and fix them ASAP.  We’re gearing up for swim team season so I am actively engaged in adding features and fixing bugs right now.  My next effort, which I’ve already started, is what I refer to as Phase 3 of the new Event Model which will provide the ability to export a Meet Entries file accounting for scratches and/or registrations which can be loaded directly into one of the various Swimming applications (e.g. Hy-tek, WinSwim, and others).