I need a Delphi application that will: 1) Allow the user to pick an existing MS Access MDB file 2) Display the available tables within the MDB in a TChecklist 3) Once a table is checked display all the available fields in that selected table in another TCheckList 4) User input a 5 digit USA ZIP Code in a TEdit 5) User inputs a distance (miles) in a TEdit 6) When the user clicks a TButton the application will: I) Determine the latitude and longitude values for the ZIP Code entered in #4 II) Iterate through the entire MDB table (see #2) and determine the distance (as the bird flies) from the ZIP Code entered in #4 to each of the ZIP Codes found in each record (#3 defines the ZIP Code field for the selected table). III) Those records where the distance calculated is less than or equal to the distance specified in #5 should be stored in new temporary table. IV) Once the entire database has been stepped through, record by record, close the MDB 7) Using the temp database that was created, sort the distances in ascending order. 8) Display to user the number of records found 9) Give the user the option to export the results to a CSV file. User will choose the fields from the original MDB that will be exported using a TCheckList. The values for items 1, 2, 3, 4, 5, 9 should be saved to an INI file and restored back when the application restarts. IOW, I want the previously used values to be sticky. I will provide the ZIP Code database & trigonometric algorithms used to calculate distances between latitude and longitudes. The application can be written in Delphi 3 to D2005. The application must not use the BDE. The application should make accessing the MDB file as simple as possible on the user. I would like to avoid having to create ODBC data source. The ideal solution is simply to have the Delphi app display a File Selection window and allow the user to point to a MDB file and that's it!
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows? (depending on the nature? of the deliverables):
a)? Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software? installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
Windows 2000, XP, Vista