I use this workflow for the last couple of years and it works very fine for me:
1. For adding a file creation date there is a component foo_filedate which seems to be from 2007 but still works very fine:
foo_filedate.dll (2007-09-19 11:07:14 UTC)
File date 1.0.4
From the components properties:
Right-click and add a file date tag.
Use config page to choose date format.
For foobar2000 v0.9.x
Created by Vassilis Androutsopoulos.
Ported by T.P. Wang
Build on: Sep 19 2007 - 19:07:00
With a right on a file it creates a file tag %created% with the file creation date yyyymmdd.
2. For adding an added to library date tag I use the foo_new_file_stamper_mod
foo_new_file_stamper_mod.dll (2008-12-21 00:05:19 UTC)
New file stamper 1.0.0 [Dec 21 2008 - 01:05:11]
From the components properties:
Component, which let you apply an action to new files in the library
By Christopher Bowron <chris@bowron.us>
Recompiled by Juergen Palm <fbuser@web.de>
This allows you to perform a tagging action for every new file added to the library.
I created a script "added":
$if(%added%,%added%,%now%)
This will write YYYY-MM-DD HH:MM:SS into the file tag.
I use this %added% tag for all kind of things. It enables me to sort the library and I even do tweeks like having a script for ipod manager where I write the YYYY-MM into the componist field so that I can access the music on my ipod by month added.
In order to update a whole library one could copy over the %created% tag to the %added% tag taking into account the different formats YYYY-MM-DD and YYYYMMDD
The advantage for me to have hard coded date fields is that once a file changes let's say you convert from ape to flac the created / added tag will convert as well.
If any further advice is needed on this topic I'll be glad to help.