Meet Entries for Team Manager vs. Meet Manager

846 views
Skip to first unread message

Mike Walsh

unread,
Jul 6, 2012, 1:20:12 PM7/6/12
to sdif-...@googlegroups.com

For those of you who have already figured this out, when you generate a HY3 entries file, do you target TM, MM, or both?

 

I am not sure both is possible based on what I am seeing but am hoping I am wrong.  For the past several hours I have been tweaking and comparing HY3 files that I am generating with those generated by Meet Manager yet I cannot get MM to import my file.  It doesn’t complain about the content, it just doesn’t do anything with it.

 

On a whim I decided to try and import it into Team Manager and what do you know, it works.  I am somewhat stumped as what to do next:

 

1)      Just target Team Manager and call it done?

2)      I know some teams only have TM, do any teams only have MM?

3)      Is it safe to assume that a path would be Export to TM, then export entries again for MM?  I wanted to be able to go directly from web site to MM if possible but going through TM is better than nothing.

 

Some other questions I have:

·        Are the B1 and/or B2 records required in order to import entries into Meet Manager?

·        In Meet Manager - what is the difference between “Importing Entries” and “Merging Entries”?  Do I care?

·        The D, E, and F records use a “database id” of sorts to connect the various records together:

o   As long as these numbers are unique in the entries file, is that sufficient? 

o   Do the numbers have to match from one import to another?

·        If I export entries from MM and TM, the A1, B1, B2, records (as well as some others) seem to be slightly different.  Does this matter?

·        Does anyone have the fields and columns for the B1 and B2 records?  I can figure them out but would rather not reinvent the wheel if it has already been done.  They don’t seem to be in any of the Hy-tek file descriptions that have been shared here.

 

I am sure there are more but these are the ones I’ve come up with this morning.

 

Mike

--

Mike Walsh – mi...@walshcrew.com

 

Jeffrey Allen

unread,
Jul 6, 2012, 5:24:59 PM7/6/12
to sdif-...@googlegroups.com
Mike,

I am a novice but I recall a problem like this.  And this may be completely ignorant but have you made sure the meet dates are the same?  The programs import based on meet date.

Sorry if I misread your question but just recall an issue that sounds like yours. 

Jeff

Sent from my iPhone
--
You received this message because you are subscribed to the Google Groups "SDIF Forum" group.
To post to this group, send email to sdif-...@googlegroups.com.
To unsubscribe from this group, send email to sdif-forum+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/sdif-forum?hl=en.

Bill Moore

unread,
Jul 6, 2012, 5:36:24 PM7/6/12
to sdif-...@googlegroups.com
My team only uses TM, so the following is based on the Python scripts I've written around that.  If anyone posts some MM files, I'd be happy to look over them, as well.

On Jul 6, 2012, at 10:20 AM, Mike Walsh wrote:
Some other questions I have:
·        Are the B1 and/or B2 records required in order to import entries into Meet Manager?

They are required for TM, so I would assume the same is true for MM since the B1/B2 records contain the meet metadata (start date, end date, meet name, ageup date, etc.).

·        The D, E, and F records use a “database id” of sorts to connect the various records together:
o   As long as these numbers are unique in the entries file, is that sufficient? 
o   Do the numbers have to match from one import to another?

As far as I can tell, the IDs are unique identifiers for the swimmers and must not only be unique, but must match between imports.  MM could treat them independently, but I have no way to check it out.

·        If I export entries from MM and TM, the A1, B1, B2, records (as well as some others) seem to be slightly different.  Does this matter?

Hard to say without seeing  the differences.  The A1 records contains information about the file format, as well as some metadata about the time the file was generated, version of the program used to generate the file, as well as information about the Hy-Tek software license owner.

·        Does anyone have the fields and columns for the B1 and B2 records?  I can figure them out but would rather not reinvent the wheel if it has already been done.  They don’t seem to be in any of the Hy-tek file descriptions that have been shared here.

The format I've been using (successfully, so far) is the following:

field:width - description

B1:2 - Meet name and date record
MeetName:90 - Descriptive name of the meet (ex: "Us vs Them at Some Pool")
MeetStart:8 - Meet start date MMDDYYYY
MeetEnd:8 - Meet end date MMDDYYYY
AgeUpDate:8 - Date to use for swimmer's age calculation MMDDYYYY
Blank:12 - unknown content - always blank from what I've seen
Checksum:2 - two digit line checksum

B2:2 - Meet course information record
Unknown:96 - Always blank in the files I've seen
CourseType:2 - Course type (ex: "Y " - yards).
TimeConversion:7 - Something to do with converting times between course types.  (ex: "  0.00Y")
Blank:21
Checksum:2

Not the most complete information, but in our league (all yards-based) this is what I've been able to come up with.

Hope this helps.


--Bill

Mike Walsh

unread,
Jul 6, 2012, 7:03:10 PM7/6/12
to sdif-...@googlegroups.com
The information you have below on the B records pretty much jives with what I was able to ascertain this afternoon while I was working on my code.

With respect to the database id for the D,E, and F records, other than being a really crappy scheme, I was worried that the ids might matter in TM based on some error messages I have seen.  However, since MM can take entries from multiple teams, I don't see how MM can assume they would be unique.

All of my swimmers have a unique database record in our MySQL database so I can certainly use that value when I build the entries file.  I guess I will give it a try and see how it goes.  I had actually coded up a solution that always starts the id at 1 and sequence them from there.

Mike


Sent from my iPad
--

Troy DeLano

unread,
Jul 6, 2012, 7:54:10 PM7/6/12
to sdif-...@googlegroups.com
Mike,

Sorry for the delay I have been busy lately.  This was some old info I had and it probably needs to be verified.  I am digging for an updated version I had...I keep looking.  Also team ID is unique to the TM database.  When entries are imported to Meet Manager the meet assigned new ID according to import order.  The results that are exported from meet manager will have the meet ID.  Team manager uses DOB and name when importing results to associate them with swimmer on the roster (maybe a couple other things like gender).  If it can't find a match a new swimmer is added and you will have to them merge the "two" swimmers in TM.  I would think that MM would do something similar if re-importing a teams entries.  Although most of the meets in which we submit updates usually say they will overwrite all entries with the new file (blow away all the teams entries and then import the new list)  I am not sure if this is easier, cleaner or less prone to issuse...then again we are talking Hy-Tek.  MM can store the swimmers original ID though.  When results are exported the original TM swimmer ID can be located in positions 83-87 between USSNUM and DOB.

// Each line in Hy-Tek is 130 characters long with the last 2 being a checksum.
// The first 2 characters of each line describe the format for the rest of the
// the line.  The "A1" code is important as it provides information about the
// type of file.
//
// A107...
// \/\/\__...
// | |          The A1 line also provides information about when the file was
// | |          generated, the Hy-Tek version, who the software is register to.
// | |
// | |
// | +--File type (01 = Merge Meet Entries)
// |              (02 = Meet Entries)
// |              (07 = Results From MM to TM)
// +----Line code (A1 = File Descriptor)
//                (B1 = Meet Information)
//                (B2 = Meet Address)
//                (B3 = Meet Contact)
//                (C1 = Swim Team Name Information)
//                (C2 = Swim Team Address Information)
//                (C3 = Swim Team Contact Information)
//                (D1 = Swimmer Information)
//                (E1 = Individual Event Entry Information)
//                (E2 = Individual Event Results)
//                (F1 = Relay Event Entry Information)
//                (F2 = Relay Event Results)
//                (G  = Split Times)
//                (H1 = DQ Description)
//
//*************************************************************************************************************************************//
// Swim Team Name Information
//
//                                                                                                     1 1 1 1 1 1 1 1 1 1 1 1 1 1 11
//           1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5 6 6 6 6 6 7 7 7 7 7 8 8 8 8 8 9 9 9 9 9 0 0 0 0 0 1 1 1 1 1 2 2 2 2 22 
// 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 89
// |         |         |         |         |         |         |         |         |         |         |         |         |        |
// B1NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLSSSSSSSSEEEEEEEEUUUUUUUUAAAA        56
// \/\___________________________________________/\___________________________________________/\______/\______/\______/\__/
// |    Meet Name                                        Meet Location                          Start    End    Age Up Alt.
// |                                                                                             Date    Date    Date
//
//
//
//
//
//
//
//*************************************************************************************************************************************//
// Swim Team Name Information
//
//                                                                                                     1 1 1 1 1 1 1 1 1 1 1 1 1 1 11
//           1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5 6 6 6 6 6 7 7 7 7 7 8 8 8 8 8 9 9 9 9 9 0 0 0 0 0 1 1 1 1 1 2 2 2 2 22 
// 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 8 0 2 4 6 89
// |         |         |         |         |         |         |         |         |         |         |         |         |        |
// B2                                                                                            06HSS   0.00SL                    32
// B2                                                                                              AGY 499.25Y                     02
// B2                                                                                            06SRS   0.00SL                    42
// \/                                                                                           /\/\/  \____/\/
//                                                                                                | |     |   |
//                                                                                  Masters Meet--+ |     |   +--Course
//                                                                                   (06)           |     |       Y
//                                                                                                  |  Swimmer    YO
//                                                                                                  | Surcharge   S
//                                                                                                  |             SO
//                                                                                                  |             L
//                                                                                                  |             LO
//                                                                                                  |             YS   YSL
//                                                                                                  |             YL   YLS
//                                                                                                  |             LS   LSY
//                                                                                                  |             SL   SLY
//                                                                                                  |
//                                                                                                  +--Meet Type
//                                                                                                      AG  Age Group
//                                                                                                      HS  High School
//                                                                                                      SR  Senior
//                                                                                                     
//
//
//
//

Troy DeLano

unread,
Jul 6, 2012, 8:17:04 PM7/6/12
to sdif-...@googlegroups.com
I have to reply to my own thread because after writing it I should have grammar checked it before sending!

A question on your targeting TM or MM...what is the use?  I would say target MM for import of entries and TM for importing results files.  I think this is following what you stated.  You mentioned that exports were slightly different, could you post those lines?  I have access to an older version of MM so I could try to run some tests too.  I attached a PDF with the D1 format which has a little more detail than the Athl. Info one I made.  For the
A1 line I have just been using an export of the file type and then cutting and pasting as needed. 

Damn you Mike!  You are really going to make me document these aren't you! ;)
D1_record.pdf

Mike Walsh

unread,
Jul 6, 2012, 9:39:06 PM7/6/12
to sdif-...@googlegroups.com
I have a WordPress plugin (http://www.wp-swimteam.org) which I've worked on off an on over the past few years.  Each summer season I add some more functionality too it.  It handles registration, volunteers, scratches, etc.  Basically, our entire process is driven from our web site as our source data and everything is linked together.

I've been able to export our roster in SDIF format for a number of years which was useful but nearly as useful as being able to export the specific meet entries for each meet.  I added meet entry export functionality this season which is based and it works well and has saved a ton of time.  Sometime before the meet each week parents will scratch their swimmers.  On the day of the meet our coach exports an entries file and imports into WinSwim (our tool of choice), seeds the meet and generates heat sheets, etc.  The process works pretty well and as long as our scratch sheet is correct, our meet entries are pretty accurate. We still have some "no-show" swimmers but putting our scratch sheet online was by far the best thing we ever did.

I have a number of other teams, some local, some not, who also use my WordPress plugin.  Since Hy-tek is the dominant meet management solution AND it does such a poor job of importing SDIF data, I get asked fairly regularly if I can generate Hy-tek data instead of SDIF data.  About a month ago I added the ability to export the roster in HY3 format and Team Manager imports it without any issues.  Now I am working on generating meet entries in HY3 format.

When we swim against teams who use Hy-tek (usually, but not always Meet Manager) we'd like to look at a combined seeding to see how much we can optimize the heats and run a more efficient meet.  I'd like to be able to generate an entries file that Meet Manager can import but right now I'd settle for something Team Manager can import as a start.  I am close - I have the individual entries working although I am worried about the database id.  I am missing something on the relays though as TM says it imports them but there are no entries.

Troy - I made a copy of your ASCII version of the Hy-tek formats Google Doc and have been adding to it and making some corrections as I've been working on this.  I was reluctant to edit the version you had shared with me a while back but am happy to do so if it is ok with you.  I've added the B1, B2, F3 records and clarified a few other things.

Mike

Mike Walsh - mpwa...@gmail.com

Mike Walsh

unread,
Jul 6, 2012, 10:36:36 PM7/6/12
to sdif-...@googlegroups.com
It turns out my relay problem was due to the fact that I never bothered to check the formatting of the F1 record.  It looks like I started working on it, got all of the data printed but never verified the data was in the correct columns.  Once I fixed that I was able to import my relays!

Mike

Troy DeLano

unread,
Jul 7, 2012, 8:26:48 AM7/7/12
to sdif-...@googlegroups.com
Mike,

Yes please feel free to make updates.  If you would like we could work together and I would be happy to create graphical description for each line like I have for the records and athlete info files and then put them all into a single PDF.  I have wanted to do it for a while but it has been pretty low on the priority list for me.  I should be able to generate them pretty quickly with another set of eyes and some help .  Was the example on the checksum and roster info helpful?  If not let me know where or why and I will make updates.

-Troy

Mike Walsh

unread,
Jul 7, 2012, 8:34:40 AM7/7/12
to sdif-...@googlegroups.com
Troy - 

I will roll all of my edits into your Google Doc later today when I get back to the house.

Mike

Sent from my iPhone
Reply all
Reply to author
Forward
0 new messages