I posted a new update online. Small changes only — again, still adding a few more polish to the program. The two primary changes affect the Extract Selected MARC Records, Delete Selected MARC Records and Export Tab Delimited MARC records. Moreover, in changing the Export Tab Delimited MARC Records, I had to make a change to the mengine60.dll and the COM MARCEngine.dll (I had to recompile because of the strong named files) to support the new options in the Export Tab Delimited Function. Anyway, here are the changes:
Extract/Delete Selected Records:
This is a minor change. One of the special search functions in these tools is a select records by field. The syntax would be to add: F#: within the search box. This tells the tool, we are looking for a field. So if you typed: F#:090 or F#:090$a the program would look for records with a 090 (in the first example) and 090$a in the second example. However, if you wanted to query on multiple fields, you couldn’t…until now. After tonights update, you can query for multiple fields by using: F#:090:100:800:440:490. This will search for records with an 090 or a 100 or an 800 or a 440 or 490. So it would look something like:
Tab Delimited Export Tool:
The second change relates to the Tab Delimited Export tool. Some folks working with CONTENTdm needed to have a couple of new features. First, they needed multiple export types (so the program now supports Tab Delimited and CSV). Second, they needed to have data normalized. In most cases, there is no need to have the indicator or subfield data when they want an entire MARC field extracted. So, I’ve added two new features. First, you can select either a save type of CSV or Tab Delimited. Second, there is a new option (normalize field data) which will remove the subfield and indicator data from the MARC field. Anyway, the new window looks like the following:
So, because of the changes, I had to recompile the mengine60 and marcengine.dll files. The marcengine file is the COM component and the mengine60 is the actual MARCEngine itself. In testing upgrades, I was somewhat annoyed with the way that Microsoft handles installation into the GAC. When I overwrite the changed files, Microsoft essentially is installing a new version of the assembly into the GAC for side-by-side installation. I can see a lot of good reasons to do this, but for my uses, I only want one version of MarcEdit always in the GAC. I suppose if someone can give me a compelling reason to simply leave older versions in the GAC, I’ll consider it, but at this point, I don’t see a good reason to. In fact, while I encourage folks building in .NET to use these components, I would hope that when folks are linking references, they are linking to local copies of the assembly to protect from build changes. Anyway, I modified how the bootloader function works and now it checks before installing the program to see if an older version of the files exists in the GAC and removes them — then runs after installation to reregister and reinstall the new components into the GAC. Now it works like I want it to.
As always, the program can be downloaded from: MarcEdit50_Setup.exe