The idea behind this feature was to have an easy way to import an Excel file of names into Student Manager.
Unfortunately, prior to this, the easiest way to import was to convert the spreadsheet before doing convertw or quickie. Even then, it was hard to format things.
Let me explain.
With Office 2007, Excel took out the ability to save your spreadsheet as a .dbf (DataBase File format). They also introduced the .xlsx format for Excel spreadsheets as the new way forward. Visual FoxPro and, by extension, Student Manager had no way to read .xlsx format. Before that even, it was hard for Student Manager to read .xls format (vrunfox could do it if you knew the proper commands).
Now, we did have workarounds by utilizing OpenOffice to help with data conversions (using convertw with .dbf formats). Unfortunately, most customers were not allowed to get open source software installed on their computers.
Doing some research one day, I came upon a blog written by Jun Tangunan who I met at a Visual FoxPro conference. In the blog, he showed a very simple way to open an Excel spreadsheet in .xlsx format and read from it. He hinted that it could be extended to import data. Also, if the Excel spreadsheet had multiple workbooks, you can pick which workbook you wanted to work with.
So, I took the simple approach he took and complicated the heck out of it. A week later I was able to read in a .xlsx or .xls format, allow the user to specify what Student Manager fields to put the Excel columns in (see image), do some complicated formatting checks (zip code is a character, not a number!), and write the data into the names table. I then spent another couple of days cleaning up (added source code and interest code) and putting in additional checking. I also added in the name UDFs to be selected as well.
This can be accessed if you go to Tools -> Import/Export -> Name Import Wizard in Student Manager 7.2.A.014 or later. You can also go from the Speed Registration Entry (under Module -> Registrations) and click on the Import Wizard button from there to not only import the names but also register them all in a single class (you can then use Mass Register on the Course screen if you need to add them to other courses).
The downside is that there is no duplicate checking done with this unless the Student Manager ID is also imported in with the spreadsheet. In this case, if the ID is already in the system, it will not be added to the names table, but will still register the person if you are doing the Speed Registration Entry. If you do not include the ID field or have some that are blank, Student Manager will generate an ID for you just like when you add any other name.
In my opinion, all of this adds up to being the awesomest (ED Note: This is a technical term :) ) thing I have ever programmed. I hope you find it useful for your situation.
Until next time...
Editor's Note: We are working on a video to show how this feature works.