Try something like this. Load a table relating the number code of each department to the department name.
You can load it from an excel sheet or enter the lines into an inline table.
When you load your gift data include a line that creates the field DeptNo.
Text(Left(AccountNumber,9)) as DeptNo,
Any records of a gift for account 345.89034.xxxx.xxxxxx.xxxxx will have a value of 345.89034 in field DeptNo.
I used the Text function to stop DeptNo being interpreted as an actual number. Make sure that when creating the Department table the field DeptNo is a string, use Text() if you have to.
Now you will have a dimensional table Department that will be associated with records in your Gift Table.
I can certainly attempt to mock it up.
Seperate from the data is the departments: English, History, Science
The data set includes a lot of extra information, but it boils down to this:
ENTITY ID ENTITY NAME GIFT AMOUNT ACCOUNT
0001234567 Bob Johnson $2,000 345.45678.432587.9004.8888
0004356722 Sally Jennings $100 345.45678.875904.9006.9999
0005567321 Dale Billings $300,000 432.84256.890769.0098.1111
0006743213 Albert Molar $50 432.84256.124356.9990.7789
The department information is not currently tracked in the system, but you know that all History accounts start with 432.84256.xxxx and all Science accounts start with 345.45678.xxxx. The solution needs to work with multiple accounts for each department.
May be create a department name from the Account like
LOAD ENTITYID, ENTITYNAME, GIFTAMOUNT, ACCOUNT,
IF(Left(ACCOUNT, 9) = 345.45678, 'History',
IF(Left(ACCOUNT, 9) = 432.84256, 'Science',
IF(Left(ACCOUNT, 9) = somenumber, 'English',
....... ))) AS Department
Something like above will create a department and use this new Department field for selections.