iTunes Database FMP
Version 1.8.5
January 23, 2004
by Greg Townsend
Introduction
iTunes Database FMP is a package consisting of FileMaker Pro databases and optional AppleScript files that allows you to export information from iTunes into a database. This database is designed to import songs as whole albums or playlists; if you want to catalogue individual songs, you should try another solution, such as the ones provided at the website Doug's AppleScripts for iTunes (see Websites of Interest ).
Requirements
FileMaker Pro 5.0 or later
iTunes
AppleScript (although the AppleScript files are optional, the databases rely heavily on internal AppleScripts to perform most of their functions related to processing data et al)
GraphicsImporter OSAX scripting addition required to insert downloaded images via AppleScript as stored data rather than as references to files (see below ) and to export images to iTunes that are stored in the databases as references to files
Amazon Developer's Token is needed to use XML to download pictures from Amazon.
N.B. This version has been written specifically to take advantage of
the features in OS X and iTunes 4. It may still work in iTunes 2 and 3,
and may still work in Classic OS, but has not been tested; the script will
determine which iTunes version you are using and attempt to import data
accordingly. Some of the new features, such as using XML to download images
from Amazon, are available only with OS X, and iTunes artwork was introduced
with iTunes 4.
Installation
Put the 3 database documents (the master database "iTunes Database", and the related databases "iTunes Track Database" and "iTunes Artist Database") anywhere on your computer, but put them in the same folder. Do not rename the database files. If you want to use multiple copies of the database (e.g., 1 for classical music and 1 for popular music), just make separate folders for each database set.
Songs are transferred from iTunes to this database through the 'Import' button on the master database, which is the button depicting the transfer of notes from iTunes to the database at the top left. You can also access the script for this button using the provided "Go To iTunes Database" AppleScript. If you choose to use the external script, you can run it as a freestanding applet or as an iTunes Scripts menu item. If you want to do the latter, put the AppleScript file into your iTunes "Scripts" folder. In Classic OS, this folder should be in the same folder as the iTunes application file, or in the iTunes folder in the Documents folder. In OS X it is in the iTunes folder in your home Library. If the Scripts folder does not already exist, you can create it as you would any other folder; it must be named "Scripts".
The GraphicsImporter OSAX by Hikaru Abe is available for free at
http://osaxen.com/graphicsimporter.html
or at
http://www.azug.gr.jp/~h-abe/freeware/gio/index.en.html
; at this writing it is at version 2.2. The documentation
accompanying the file suggests placing the Carbon version of the file
in the "Scripting Additions" folder in the user's folder, but this
did not work for me. If it does not work for you, or if you just want
to cover your bases, try also putting a copy in the "Scripting Additions"
folder in the root Library (/Library/ Scripting Additions) and/or in
the "Scripting Additions" folder in the System Library (/System/Library/Scripting
Additions); there's no drawback to having a copy in each of these folders.
If these folders do not exist, you can create them if you have the appropriate
permissions.
An Amazon Developer's Token is free and easily obtained at https://associates.amazon.com/exec/panama/associates/join/developer/application.html (you can click the Amazon button below the "Amazon Token" field to go to the web page). The database will use an internal token for the first 20 records. After that, you will need to obtain your own token and enter it in the "Amazon Token" field in the lower right corner of the master database.
Usage
The database can be used to transfer data from either a CD or a playlist. The only track data accessible through the master database are those available for CDs (track number, title, album, artist, genre, year, and time), as well as rating, but other available track data are imported to the Track database. Data on individual artists are stored in the Artist database. If you have more than 1 copy of the database, make sure you don't have more than 1 open at any time; the master database may not correctly identify which related database to use.
Importing Data
iTunes must be open. Once all of the tracks on the CD or in the playlist in the front window have been annotated, select the disc/playlist or tracks to be catalogued.
To transfer using the master database 'Import' button, just click the button. You wil be given the option to either import the data to create a new record or to update an existing record. The referenced internal AppleScript will then import all of the data from iTunes into the database.
To use the AppleScript, double-click the "Go To iTunes Database FMP" icon in the Finder, or select "Go To iTunes Database FMP" from the iTunes Scripts menu (the one with the AppleScript icon) to import the data. If the database has not already been identified, you will be asked to find it. If not already opened, you will be given the choice to use the previously identified database or use another database. The database will then be opened. The script will then export all of the data from iTunes to the database.
Before data transfer begins, you will be given the options to:
The Import script will look for duplicates (existing records with the same title and artist name) before importing data. If a duplicate is found, you will be given the choice of cancelling the import process, creating a new record with the data, or adding the tracks to the existing record. The last option may be useful if you want to put all of the tracks for a multidisc set in a single record. Creating duplicate records with identical names is discouraged because it may wreak havoc with the ability to correctly identify relationships between databases (see Bugs and Limitations below). If you have imported tracks from a multidisc set as individual discs, or imported tracks from a large playlist into separate records, you can merge them by selecting "Merge Discs" from the master database Scripts menu; this script will add the tracks from another identified record to the current record in the master database.
Of note, it does not matter if a data column is visible in the iTunes window; the information will be imported regardless.
Exporting Data
The master database and the Track Database each have an 'Export' button to transfer disc and track data from the database to iTunes. This may be useful if you lose data from iTunes that are in your database but are not readily available from other sources. iTunes must be open, and the proper disc/playlist or track(s) must be selected in iTunes.
To export data from the master database, go to the record from which you want the data transferred, then click the 'Export' button. You may transfer the title, artist, year, and genre; in iTunes 3+, you may transfer disc number, compilation, and/or composer.
To export data from the Track Database, go to the first track that you want to transfer. In general, the database should be unsorted and all records should be shown so that all of the tracks will be in the order in which they were imported. You will be given the opportunity to allow the script to find the proper songs from which to export data, based on album or playlist name/artist/length/track count (if exporting to an album or playlist) or track name and artist (if exporting to selected tracks). The script will determine the record number of the first track based on the record being browsed, and will calculate the record number of the last track in the database to be transferred based on the number of tracks in the disc/playlist; if you opted to find the songs yourself, you will be asked to confirm or change these numbers. You may transfer the titles, albums, artists, years, genres, and/or comments; in iTunes 3+, you may transfer disc numbers, compilations, ratings, and/or composers, and in iTunes 4, tempos (beats per minute) of the tracks.
See below
for information on exporting artwork.
Storing & Viewing Data
The master database "iTunes Database" is primarily used for storing and viewing information on whole albums or playlists. The information is presented in 4 views: 1) Album View, which displays information from iTunes on each album; 2) Info View, in which you can enter your own information about the album; 3) List View, which displays a list of all albums with some summary information; 4) and, Table View, which displays a table of all albums with some summary information.
The related database "iTunes Track Database" is used primarily for storing and viewing information on each track. The information is presented in 3 views: 1) Track View, which displays detailed information from iTunes on each track; 2) List View, which displays a list of all tracks with some summary information; and 3) Table View, which displays a table of all tracks with some summary information.
The related database "iTunes Artist Database" is used primarily for storing and viewing information on each artist. The information is presented in 4 views: 1) Artist View, which displays detailed information from iTunes on each artist; 2) Info View, in which you can enter your own information about the artist; 3) List View, which displays a list of all artists with some summary information; and 4) Table View, which displays a table of all artists with some summary information. For each album/playlist and each track added to the database, a new record will be created in the Artist database for the associated artist if not already catalogued. When a new artist record is created, you should enter possible variations on an artist's name in the artist's record in the Artist database; this will avoid the entry of multiple records for the same artist (e.g., "Elvis Presley" and "Presley, Elvis"), and will maintain proper links between artists, albums, and tracks. Artists' names beginning with "The " will be automatically entered as "The Name", "Name", and "Name, The"; comparable variations will be entered for artists' names beginning with "A ". Artists with "and" flanked by blank spaces (i.e., " and ") in the name will be automatically entered as the original name and with an ampersand ("&") in place of "and", and vice versa (e.g., "Bonnie & Clyde" and "Bonnie and Clyde").
Tables in the Table Views may be displayed with predetermined fields, or with fields whose content you determine (although a few fields, such as title or artist, may be predetermined). The columns in the table may be sorted, resized and/or reordered.
Changing Data
You may change the data as needed in the database. If you change the name of an artist or album/playlist in a database, the value in the field for the numerical ID for that artist or album/playlist will be automatically updated. Any data shared between the 3 databases will be automatically updated when changed in one (see Bugs and Limitations below regarding multidisc sets). As noted above, to maintain proper recognition of the albums and tracks related to specific artists, you should enter possible variations on an artist's name in the artist's record in the Artist database.
Sorting Data
The data can be sorted by clicking the icons at the appropriate column or field. There are 2 sets of icons by the Artist field in master database; clicking the icon to the left sorts the records by artist, then album/playlist title, while the icon to the right sorts by artist, then year.
Database Links
You can navigate from a record in one database to a related record in another database for most fields where such links are appropriate, by clicking on the field in question or a related button. For example, one can navigate from an album in the master database, to the record for a specific track from that album in the Track database, to the artist for that track in the Artist database, and then to another album by that artist in the master database.
Working with Pictures and Sounds
There are fields in the databases for adding pictures (such as album covers) and QuickTime-compatible files (such as album tracks); the latter can be played back by clicking the field. A QT-compatible files is always added as a reference to the original file - if the original file is moved or deleted, the referenced file will not be played. Note that any QT-compatible file (e.g., AIFF, WAV, MP3) can be used. Pictures can be added by importing the data into the database or as a reference to the original file; importing the data can make the database rather large, but avoids the problem of the "missing original". The "Album/Playlist Picture" cell in the Track database refers to the corresponding picture in the master database. The "Track Album Picture" cell in the Track database can refer to the corresponding picture in the master database, or can be added independently.
The 'Import' script will automatically assign album artwork from iTunes
to the appropriate record when importing, if the artwork exists for
a track with the same artist and album name. You may also opt to
download and insert pictures from Amazon.com using the markup language
XML when creating records; however, if the appropriate iTune artwork
is found, it will take precedence. You can elect to download the images
to a folder of your choosing, a folder named "ITDB Pix" in your user Documents
folder, or the folder for each specific track if the track exists on your
computer.
There are buttons corresponding to each picture field by which the picture can be inserted. Buttons corresponding to album pictures can also be used to download pictures from Amazon.com. You can download album pictures from Amazon by using a web browser (either Safari or Internet Explorer), or by collecting data without a browser, using XML. If using a browser, the download script relies on recognizing a new URL for the web page from which it is trying to get the picture, so if you use the button consecutively to get the picture for the same album, it will not work after the first attempt unless you change the web page between attempts. While downloading using XML may be faster and more convenient than doing so via a web browser, using a web browser allows you to view the images before selecting one to use. The buttons used to download and insert pictures can also be used to export the pictures to an image file or to iTunes.
There are 6 fields that can be used for storing album pictures in the master
database. Clicking one of the small album pictures beneath the album picture
display field will put that picture in the display.
There is a column in the track window in the master database representing
album covers for the individual tracks. You can click the image at the head
of the column to import artwork from iTunes or from Amazon (via XML), or
export artwork to iTunes or to an image file. You can also choose whether
to display track album covers and/or track artist images in the master database
track window.
When inserting pictures using AppleScript rather than the application's
"Insert Picture" script step, there is no native way to import the
picture as stored data, so the picture would ordinarily be inserted
as a reference to the downloaded image file. This limitation can be
circumvented by using the GraphicsImporter OSAX scripting addition.
If this file is installed, the images will be inserted as stored data;
if it is not installed, they will be inserted as references.
Controlling iTunes
There are buttons in each database to perform basic operations in iTunes - play, pause, stop, go to previous track, and go to next track. The large button behind the function buttons will take you to iTunes. There is a button in the master database that can be used to create a playlist in iTunes from the songs in the current record in the master database, and then play the tracks in the created playlist; the playlist will be titled according to the title of the database record and the artist (e.g., 'Bruce Springsteen - Born to Run'). A similar button in the Artist database will create a playlist with all of the artist's database tracks. There is a button in the Track database that can be used to play the track represented by the current record in the Track database. There are also fields in each database that can be clicked to display the appropriate information from the track playing in iTunes, if there is one playing. These fields will be updated every time iTunes is controlled from the database, or if information about the currently playing tune is accessed.
Toggle Status Area
The Status Area is the area at the left of the database that holds information about number of records, sort status, etc. If you use the Toggle Status Area button supplied by the native application (at the lower left of the database window), the Status Area will toggle between hidden and visible. Unfortunately, the size of the window does not change so that you may be left with extra white space or with a database that is cut off. The Toggle Status Area button (at the bottom right of the database window, except in Table View where it is in the header) will toggle the visibility of the Status Area and resize the window. For this to work properly, you need to resize the window by clicking the resize button (green button at top left) or manually, then click the Toggle Status Area button. The button will record that window size and associate it with the Status Area visibility for that view. The first time you use the button, there may be no size data to use, so it may result in a very small window or an error message. DON'T PANIC - if the window is very small, simply resize the window, and click the Toggle Status Area button again; it should work properly after that.
The information normally available in the Status Area is displayed in the header or footer of all views where space allows.
Just For Fun
There are fields for computing data such as the total time or the number of tracks for the whole database or for each artist. These have no functional significance whatsoever. Note that the data are generally computed only for those records that are available, e.g., if you have just performed a search that produced 10 records, only the information from those 10 records will be tabulated. Also, there are some statistics fields in the Artist database that are dependent on information in the master database; updating these fields is considerably slowed if the master database is in Table View, as it is not possible to place the appropriate sub-summary part in a Table layout.
Help
Most of the functions of the buttons and fields in the databases are fairly self-evident and/or are explained in this document. However, in all databases, some of the views have a Help button in the lower right corner; click the button to bring up a replica of the view with boxes indicating the uses of the fields and buttons that may need some explaining.
Go To iTunes Database FMP
If you have installed this AppleScript in the iTunes Scripts folder, select this item from the iTunes Scripts menu to open the database, if not already opened. The first time you use it you will be asked to identify the database. You can also set the path to the database by drag-and-drop of the database onto the AppleScript file. If you have more than one set of databases, you can copy and rename the AppleScript file to use it for the other database(s). In addition to opening the database, you can import data from iTunes to the database or navigate to the record for the album/artist/track playing or the disc/artist selected in iTunes.
Upgrading from Earlier Versions
From Version 1.2+
You can upgrade from version 1.2 and above by importing the data from your old databases into your new databases. To do so, select the "Upgrade" script from the Scripts menu in the master database. You will be asked to identify, in order, the master database, the Artist database, then the Track database. When given options for importing you should match fields by name and opt to perform auto-entry operations when importing from the master database and the Artist database only; if you perform auto-entry operations when importing from the Track database you may find that some of your track information (e.g., Track Artist) is changed. If upgrading from version 1.2 or 1.3, when importing from the master database, match the old "Volume" field to the new "Disc Number" field. Personnel data from versions 1.4 and above have to be imported in a separate automated process, which unfortunately may take a few minutes.
Of note, before importing you should make sure that the records in the Track database are sorted in the order in which they were entered, i.e., unsorted. If not so sorted, the tracks may appear out of order in the master database. You can easily put them back in order by unsorting them from the Scripts menu (select "Unsort"). The records in the master database and the Artist database may be sorted in any order or unsorted. Also note that the import procedure will import only those records "found" in the database (e.g., if you had performed a find in the master database for albums with the word "Greatest" in the title, and 12 records were found, only those 12 would be imported).
Although I have tried mightily to make this run as smoothly as possible, there have been problems. Namely, the application fails sometimes while importing data or performing other tasks involving AppleScript, but on an inconsistent basis - sometimes AppleScript recognizes database fields or scripts, sometimes it doesn't, et al. Sometimes a script run from the Script Editor will work, while the identical script run from the database results in errors (this is particularly problematic in OS 9). These difficulties appear to be specifically related to AppleScript and the application. Unfortunately, I do not know what to do about this. I have implemented some work-arounds, but some problems may still lurk.
The master database must be in Album View, and the Track and Artist databases must be open for the data to be imported properly. If the data are not being imported, please be sure the master database is in Album View and the related databases are open (they are opened automatically every time the master database is opened).
The scripts that depend on AppleScript, such as the 'Import' script, work slowly and/or poorly when iTunes is converting tracks. It is generally best to wait until iTunes is finished converting before using these scripts.
The 'Import' script always checks for duplicates before transferring data. However, if you are importing "Let It Be" by "The Beatles", and you have already catalogued "Let It Be" by "Beatles, The", it may not recognize the duplication. If it does recognize the duplication, it may not be able to take you to the duplicated record as it ordinarily would with an exact match, but it will inform you of the duplication. Conversely, if you already have "Greatest Hits, (Volume I)" and try to import "Greatest Hits, (Volume II)" by the same artist, the new disc may be identified as a duplication; in that case, simply temporarily change the name of the old disc(s), then change it/them back after the new disc has been entered.
There are fields in the databases that rely on lookups to relate to fields in other databases. Generally these fields lookup the name of the album/playlist or artist being referenced, since those are the data you will most likely be entering. The drawback to this method is that the database may, due to inherent limitations of the application, confuse names that are similar (e.g., "The Who" and "The Guess Who") or even identical (e.g., "Greatest Hits" by different artists). Similarly, the AppleScripts used to identify entries in fields may be led astray by similar names.
The ability to catalogue disc numbers of multidisc sets in iTunes, and in this database, may cause some problems. Most notably, cross-referencing of individual titles of multidisc sets among databases will not be not possible if the individual discs are entered with the same title but different disc numbers. If you want to be able to cross-reference the individual discs, you should enter them with different names (e.g., keep the "Disc 1" in the disc title).
There may be a limit to the number of tracks that can be imported at one time due to the inherent limitations of AppleScript; however, I don't know what that limit is. I have imported 600 tracks at one time without any problems, but another user tried to import about 1800 tracks and was unable to do so; if the problem exists, the magic number is presumably somewhere in between. If you have a large number of tracks to import, it may be best to import them in chunks, and either add the tracks to the existing record at the time of import, or merge the records later.
Acknowledgments
The import AppleScript was based originally to a large extent on 2 AppleScript files by other authors: 1) the "Export iTunes to AW DB v0.1e" AppleScript, written by Doug Adams (from Doug's AppleScripts for iTunes ), which I used to figure out how to extract track info from iTunes; and, 2) the "Download" AppleScript for Music Database for NetCD, written by Omar Shahine, which I used to figure out how to import the data into the database. The master and Track databases originally were also highly modified versions of Music Database by Omar Shahine.
The aforementioned Doug's AppleScripts for iTunes is a great source of AppleScripts and info on scripting for iTunes.
Other good sites with info on scripting in general and with various downloadable scripts include Apple's AppleScript site , the AppleScript Sourcebook , Scotland Software's AppleScript page , AppleScript Central (.com) , and MacScripter.net .
There are buttons in each of the databases linking to websites that provide information on artists, albums, and songs. They are: 1) All Media Guide , which includes the All Music Guide and All Classical Guide ; 2) Get Lyrics ; 3) Rolling Stone ; 4) Absolute Lyric ; 5) VH1 ; 6) Gracenotes's CDDB ; and, 7) iTunes Music Store. The buttons can be used to search for specific artists, albums, and/or songs where appropriate. Of note, searching for albums at the Rolling Stone website via the database or directly on the site is generally unrewarding.
Version History
Version 1.8.5 (January 23, 2004) (inspired by Doug Adams)
• Added the ability to export artwork to iTunes
• Added the ability to have multiple album covers for a single record in the master database
• Added columns for album covers and artist pictures in the track window in the master database, with the ability to import and export album artwork
• Fixed a bug in the script to import rating data in the master database
Version 1.8 (January 12, 2004)
• Fixed a bug in the 'Import' script that would interfere with creating a new record when a record with the same name and artist already existed in the master database
• Fixed a bug in the 'Import' script that would interfere with creating a new record when no records exist in the master database
• Fixed a bug in the 'Import' script that would interfere with transferring track artwork to the database
• Fixed a bug in the 'Import' script that would interfere with creation of the proper ID number for a new record in the master databse and the Artist database
• Fixed a bug in the 'Go to Disc Playing' script
• Added the ability to get album artwork from Amazon via XML (derived in large part from jonn8 at http://bbs.applescript.net/viewtopic.php?p=21020 )
• Added the ability to insert album artwork from iTunes
• Added the ability to add album artwork automatically from iTunes or from Amazon when creating a record
• Added the ability to download multiple album covers for a record
• Added the ability to export pictures from the databases
• Added the ability to create separate records by album and artist for tracks from a single album or playlist
• Added the ability to the click a button to apply ratings from iTunes tracks to the corresponding tracks in the master database and Track database
• Added buttons to sort by average track rating, year, and time in the master database
• Added the ability to create a playlist in iTunes, and play the tracks from it, from a record in the master database and Artist database
• Added the ability to import data from iTunes to update existing records
in the master database and Track database
• Changed the way in which the progress report is displayed during the
import process
• Changed the track information in the master database to display the number
of the track in the album from which it was derived rather than the number
of the track in the import order
• Added the option to allow the 'Export' script to identify the songs from which to export data based on information from iTunes (such as the name and artist for a track, or the title of an album)
• Added a field for "Track Grouping" in the Track database
• Removed the ability to select "Artist" and "Title" by popup list in the
Track Database (takes too long with a large number of tracks)
• Minor cosmetic changes
Version 1.7 (May 25, 2003)
• Changed the name of the package from "iTune FMP Database" to "iTunes Database FMP"; changed the name of the master database from "iTunes FMP Database" to "iTunes Database"
• Fixed bugs in the 'Import' script that could create problems when attempting to import information from iTunes when no information is available (e.g., when the bit rate for an MP3 track is unknown) or when the database has no records
• Added Table Views to all databases
• Added fields to select "Artist" and "Title" by popup list in all databases
• Added a field in the master database to import and export personnel data using a popup list of disc titles
• Added fields to select websites and search criteria for Web searches by popup list
• Added Safari as an option to search All Media Guide sites - thanks to Colin Law's "AMG Scripts" at Doug's AppleScripts for iTunes for demonstrating how to do this
• Added fields in the master database to track loans
• Added buttons to sort in descending order in the master and Artist databases
• Put buttons for navigating records at the bottom of the databases
• Changed the orientation of the Artist and Track databases to "landscape" so that the whole layout may be printed on one page and seen on smaller monitors
• Changed several fields in the master and Track databases to popup fields to facilitate changing info in the fields if needed
• Added a button to play the track represented by the current record in the Track database
• Added buttons to sort by "Track Tempo" and "Compilation" in the Track database
• Added buttons and a popup list to navigate to records
• Added buttons to download pictures from Amazon.com
• Added a button to toggle the visibility of the Status Area in each database
• Implemented a work-around to fix the problem of the statistics fields in the Artist database not updating
• Added help screens
• Minor cosmetic changes
Version 1.6.4 (May 5, 2003)
• Had to change the 'Import' script (and others) again to fix a bug: sometimes the AppleScript command to count the records in the database works, and sometimes it doesn't, so I've implemented a work-around
• Included the "Track Tempo" field in the Track database to record the bpm (beats per minute) data from iTunes
• The Track Album Picture can now be added independently of the picture for the corresponding album in the master database, and will be imported from iTunes if it exists (unfortunately I can't figure out how to export it to iTunes)
• Added ability to search iTunes Music Store
Version 1.6 (April 6, 2003)
• Had to change the 'Import' script again to fix 2 bugs: 1) sometimes the AppleScript "do script" command recognizes a FMP script and sometimes it doesn't, causing an "Object not found" error in the latter case; 2) although the script is supposed to run certain sections only if using iTunes 3 or later, it still runs them in iTunes 2, so I've created separate AppleScripts for iTunes 2 and 3 for the 'Import' and 'Export' scripts
• Fixed a bug in the script to export data from the Track database to iTunes
• Fixed a bug in the script to edit the "Appear(s) On" field in the Artist database
• Fixed a bug in the 'Go To Personnel' script in the master database
• As the Album View in the master database and the Artist View in the Artist database were getting crowded, I split each into 2 views - the original primarily for storing information obtained from iTunes (as well as pictures), and the new Info View for entering your own information
• Added options for importing a disc/playlist with the same title and artist name as an existing record: 1) add the tracks to the existing record; 2) add a new record; or, 3) cancel
• Added the ability to merge tracks from multiple records via the "Merge Discs" script in the master database
• Changed the "Genre" field in the master database back to a list of check-boxes
• Added the ability to import and export personnel data by CD ID number, and to choose between replacing or adding to existing Personnel data
• Added 4 Personnel fields in the master database, bringing the total to 12
• Added buttons to add and play songs in the master database Info View
• Added buttons in the master database to assign disc numbers, composers, and compilation status to tracks
• Added "Number of Discs" (to catalogue the number of discs in a multidisc set if the tracks from the set are imported into a single record) and "Date Obtained/Created" fields in the master database
• Expanded the size and information available in the "Albums/Playlists Catalogued" and "Tracks Catalogued" portals in the Artist database
• Added a button to create a record in the Artist database, and a button to assign numbers to the "Artist ID" field in the Artist database if you create a record manually (since the ID numbers are no longer entered automatically by the database when a record is created)
• Added the ability to export "Track Numbers", "Compilation", "and "Track Rating" from the Track database
• Added fields for "Average Track Rating" and "Total Discs" in the master database
• Added a button and field for "Average Disc Time" in the master database; this value can be calculated automatically as are the other summary fields, but with many records it is a slow calculation and significantly delays the updating process, so I opted to make it an "as needed" calculation
• Realized that although the data in the "Personnel" fields were being imported properly when upgrading, the fields required to connect the "Personnel" fields to the Artist database were not going through the proper look-up procedure on upgrade, so a separate process for importing these data is now part of the upgrade process; if you do not import the data at the time of upgrade, you can do so at any time by running the "Reset Personnel" script through the ScriptMaker menu
• Consolidated the scripts to access All Music Guide, Rolling Stone, and Get Lyrics, adding Absolute Lyric, VH1, and CDDB, with access from a single button in each database; added the ability to access information on the track selected or playing in iTunes
• Revised URL construction to fix compatibility with Get Lyrics (again) and for Rolling Stone - the new search process for albums at the Rolling Stone site is highly unrewarding
• Minor cosmetic changes
Version 1.5 (March 20, 2003)
• Identified and 'fixed' a couple of mysterious bugs in the 'Import' script: 1) the script sometimes fails to create new tracks in the Track database when importing data, so a check and backup method is implemented; 2) although the fields "CD ID" in the master database and "Artist ID" in the Artist database are supposed to enter only unique identifying numbers, apparently FMP allows entry of a duplicated number when a new record is created when the number is entered automatically as a serial number, so now any script creating a record in the master or Artist database determines the highest existing value for each 'ID' field and enters the next number in the field in the new record. These fixes seem to have resolved the problems I have had with importing data.
• The 'Import' and 'Export' scripts now determine which version of iTunes you are using and import/export data accordingly
• Changed the "Personnel" fields in the master database from a repeating field to individual fields; this allows for automatic linking of the "Personnel" fields to the "Appear(s) On" portal in the respective records in the Artist database
• It is no longer critical to use the "Remove Personnel Data" when removing personel data, but it does help to keep the "Personnel" fields organized
• Added button to find names of Personnel (since the personnel fields are now multiple individual fields it would be difficult to search them using the standard Find procedure)
• Added button to edit "Appear(s) On" portal in Artist database
• Added ability to import and export data from "Personnel" fields by album/playlist title, to select specific names of personnel to import/export, and to import to/export from the "Membership" field in the correspondimg artist record in the Artist database
• Added ability to export data for selected tracks from the Track database to iTunes
• Added fields in the respective databases to display the iTunes Disc, Artist, and Track playing when clicked
• Changed the "Go To Track Playing" button in the master database to "Go To Disc Playing" (the former is still available in the Track database)
• Minor cosmetic changes
Version 1.4 (March 13, 2003)
• Fixed some bugs related to importing data in OS X
• Added fields for new features in iTunes 3 (e.g., composer, compilation, rating, disc number); the field "Volume" in the master database has been replaced by the field "Disc Number"
• Added repeating fields for "Personnel" and "Roles" (e.g., performers, conductor, engineer, producer) in the master database; after entering an artist's name in a Personnel field, clicking the arrow and selecting the artist's name establishes a link to that artist's record, if it exists, in the "Appear(s) On" portal in the Artist database
• Added "Appear(s) On" portal in the Artist database to catalogue the albums on which an artist appears (see above)
• Using AppleScript to perform the sort routines consistently caused crashes in OS X, so the sort routines are now executed by a combination of FileMaker Pro script steps (to perform the actual sorting) and AppleScript (to return to the record being browsed)
• Changed the "Genre" field in the master database to a popup menu rather than a list of check-boxes due to space considerations
• Minor changes to the "Go To iTunes FMP Database" AppleScript
• Revised URL construction to fix compatibility with All Media Guide and Get Lyrics - it is now possible to search for albums in All Music Guide
• The URLs constructed for the AMG sites use the character "|" as the text delimiter to replace blank spaces. For reasons beyond my reckoning, when the AppleScript URL command "open location" is used without a specific named browser, the character "|" is replaced by "%7C". The browsers do not always interpret this substitution correctly when accessing a URL. For that reason, when a search at AMG is conducted, the script will first identify a browser so that the application can be named in the script. If one of the commonly used Mac browsers (Internet Explorer, Opera, OmniWeb, iCab, Netscape, Chimera, Mozilla) is open, the script will use that browser. If not, it will ask you to identify a browser by picking it from a list or by finding the file on your disk.
• Included 'Export' buttons in the master database and Track Database to transfer data from the databases to iTunes
• Deleted the 'Info' button from the master database for space considerations - the 'Information' layout can still be accessed from the Layout menu
• Minor cosmetic changes to accommodate the new fields
Version 1.3 (June 26, 2002)
• Fixed a couple of bugs in the "Go To iTunes Disc" script
• You are now given the option to import either the selected tracks only or all of the tracks
• Implemented a more consistent method to check for duplicate albums/playlists
• Implemented a method to enter the correct track album ID number in the Track database when there are multiple albums with the same name
• Added a procedure to enter variations on artists' names beginning with "A "
• Added a procedure to substitute "&" for "and" and vice versa when entering artists' names
• Added fields for "Date Entry Created" in all databases
• Added fields for "Membership", "Tracks Catalogued" and "Artist URL" in the Artist database
• Added fields for "Album Artist", "Album Artist ID", and "Album/Playlist Picture" in the Track database
• Added a button to navigate to the Artist database from the "Artist" field in the master database
• Added buttons to navigate to the master and Artist databases from the Track database via the pictures
• Added buttons to navigate between influences in the Artist database
• Added fields for more meaningless statistics
• Added "Funk" and "newage" to the Genre list (don't know how I missed those)
• The value for the "Artist ID" field in the master database is updated automatically if the name of the artist for a record is changed
• The values for "Total Tracks" and "Total Time" in the master database are calculated automatically
• The "Track Year" field in the Track database is left blank rather than being entered as zero ("0") if no year is recorded for the track being imported
• Eliminated the option to catalogue an album that has not yet been catalogued when trying to insert an album picture
• Added buttons for the Rolling Stone and Get Lyrics websites; eliminated buttons for the ArtistDirect website (most of the useful content at ArtistDirect is taken from the All Media Guide website, so it was redundant)
• Uses AppleScript instead of FileMaker Pro script steps for most "Sort" routines, as the AppleScript method leaves the database at the record being browsed rather than returning to the first record in the database after the sort is performed
• Added the "Go To iTunes FMP Database" AppleScript
• Eliminated the external import AppleScript as the internal script can now be accessed through the "Go To iTunes FMP Database" script
• Minor cosmetic changes
Version 1.2 (April 18, 2002)
• Tried to fix the X vs. Classic FMP bug
• Fixed a missing link for the "Location" field between the master database and the Artist database
• Incorporated the transfer script into a FMP button
• Fixed the X AppleScripts so they actually work
• All of the track information is now exported into the Track database
• Made the Track and Artist databases presentable for public viewing; eliminated "Artist View" in the master database since those data are now all available through the Artist database
• Made buttons to identify the record in FMP corresponding to the track currently playing, and the album/playlist in the front window, in iTunes
• Figured out how to extract data on CD/playlist names, genres, and artists directly rather than through the tracks
• Included buttons linking to All Media Guide and ARTISTdirect
• Included buttons to control iTunes
• Included a button to bring iTunes to the front from FMP
• The related databases now open and close with the master database
• Eliminated the scripts for conversion from Music Database and upgrade from version 1.0
• Minor cosmetic changes
Version 1.1 (March 31, 2002)
• Added "Artist View" with "iTunes Artist Database"
• Increased the font sizes for some fields for easier viewing
Version 1.0 (March 25, 2002)
• Original release
The Fine Print
I made this for fun, and you're getting it for free. That means that in the unlikely event that your computer crashes and burns while you're using it, you can't get anything out of me other than a heartfelt apology and an earnest effort to help you figure out what went wrong. You are free to give this away, but you cannot sell it; please include this Read Me with the package if you do distribute it to others.
Feedback
Please feel free to send reports of bugs or feature requests to me . As I mostly hear about the problems, I'm not sure how well this is working for most people, so I'd appreciate a brief note if it works well for you.