v5.03, Apr 01, 2004
v5.02, Jan 22, 2004
- Updated the admin template config files to work with the latest GridMonger release (v4.0).
v5.01, Jan 04, 2004
- Updated the admin template config files to work with the latest GridMonger release (v3.51).
- CFPARAM'd the database username and password (as empty strings) so no external settings are necessary in the tag if you need these parameters in your cfquery statements. These parameters can now also be specified in the UPSR tag call.
- FuelCharge and all other db-based surcharge values can now be specified as parameters in the tag call -- facilitates developer use of an external admin application if your cart has its own.
- Fixed a bug in the UPS Ground Commercial rate call.
- Fixed a bug in the rate admin application.
- Lowercased all tablenames for better *n*x compatibility.
- Added in the 2004 UPS rates. Significant changes in how Worldwide shipping to Canada is handled necessitated a number of code revisions.
- Lowercased the code for readability
- Added CFQUERYPARAM everywhere for safety.
- Since many surcharges are now plan-specific, moved them to a database record (accessed via a cached query).
- Moved the fuel surcharge to a cached query, and added a GridMonger-based interface to facilitate its management
- Broke up some of the sub-tags. On the Worldwide tag this allowed execution. On the USA tag it facilitated debugging and makes for more understandable code.
- Fixed a bug. The 2nd Day Air rates didn't make the needed calls to determine residential rate or extended area status. Thanks go to Forrest Mahannah for spotting this.
- Added the ResCharge parameter and plugged it into the code where needed. Makes for easier upgrading for current and future users.
- Added the EASCharge parameter and plugged it into the code where needed. Same benefits as for the ResCharge parameter.
- Includes 2003 rates, effective Jan 6, 2003.
- The rate download and upgrade process was extensively revised. The system can be accessed via the file /admin/index.cfm.
- Fixed a bug in the WW rates that affected some eastern U.S. region shipments.
- The Canadian zone installer was upgraded to add support for mySQL and MS SQL table types (already supported on the U.S. zone installer).
- Both the U.S. and Canadian zone installers were altered to account for some issues with CFMX and its use of CFRegistry.
- The U.S. zone installer's SQL was altered to create indexes where needed on all table types to speed execution.
- A few small tweaks applied to various portions of the code.
- The old and seldom-used runme.cfm example pages (which demo the system when AutoXArea=Off) were updated to use the current tag call syntax.
- Leftover legacy code which appended the ''temporary'' fuel surcharge (circa 2000) to the returned UPS charge has been removed from the example templates. Its doubtful this well-commented code made it onto any live systems, its presence threw off as-is pricing tests.
- The ups_ww_zones table had the zones for the East and West groups switched. (affected Worldwide Expedited plan only). Minor affect on pricing but needed fixing once discovered.
- Automatic zone table creation templates were somehow left out of the v3.00 release and are now included.
- Includes 2002 rates, effective 1/7/02 (released by UPS 12/7/01).
- The Next Day Air Early AM plan is now supported on U.S.-to-U.S shipments.
- Available plans have been changed a bit according to the new rate rules.
- The Fuel Surcharge, which will become an indexed value that changes monthly beginning in February 2002, has been added as a tag parameter (you can build in any sort of admin function you choose -- or just manually change the tag call, which is probably the easiest thing to do unless you manage a lot of sites).
- All EQ/NEQ statements converted to use the much faster ColdFusion functions Compare() and CompareNoCase().
- The DSN parameter has been changed to a request variable that should be set in your application.cfm, but can in fact be set anywhere.
- Username and password parameters are now in cluded in CFQUERY statements, also transmitted via request variables rather than being passed as tag parameters.
- The last surviving BLOCKFACTOR parameters in CFQUERY statements have been removed.
- A number of templates used to import rates into the database -- found in the /Admin/ folder -- have been left in the distribution version of the tag. These tags are not necessary to use the tag, but may be useful to others customizing to their own db platforms.
- Fixed the missing attributes.CanadaZone parameter in UPSRateMnger.cfm, found by Brian Kohnen.
- Added a feature to allow user to pick the destination db type (MS Access, MS SQL Server, mySQL) in the U.S. and Canadian zone creators. Zone file is now created properly in the chosen format rather than just in Access (thanks to Brian again for giving me the needed push to do this).
- Fixed a few minor inelegances in the code: Removed the last few lingering, unnecessary pound signs, scoped the CFPARAM statements, removed spaces from around all ''='' signs. Scoped any remaining unscoped variables.
- A form-based front end controls zone file importation. In addition to importing zone info from raw UPSÃ?????????? CSV files, also creates the database tables for each imported zone.
- The U.S. zone database (all plans) was revised to allow the U.S.-to-U.S. plans to find the proper zone in a single query. This eliminated a CFLOOP and a second query.
- The Canada Standard zone database was completely revised, as was the code that called it, to work with alphanumeric ranges rather than individual values. This reduced the CanadaZones table to less than 90 records from over 4000 and improving execution time.
- The above change coupled with revised code resulted in much more robust postal code validation. Formerly Canadian postal code validation was a simple alphanumeric test applied to the first 3 characters.
- Support for multiple U.S. shipping origin points to U.S., Canadian and worldwide destinations (produced at the request of ISP's and drop-shippers).
- The author of the original zone creator files, Mary Jo Sminkey at CFWebStore, fixed a minor glitch in the U.S. zone creator.
- Revised error handling.
- The Worldwide plan tag was split into two parts, with WorldWide to Canada getting its own specialized tag. Each now runs faster without the other's baggage.
- Templates are included that create and populate mySQL database tables from the included Access database. Also useful when upsizing for other platforms (just tailor the CREATE TABLE statements to suit your own db).
- Documentation was completely revised.
- Added ISP mode, which allows the optional separation of the database tables into two dsn's: One for the individual site's zones and another for the rates. This allows an ISP to maintain one global rate database and each site to have their own unique zone database as well. Documentation on implementing ISP mode is found within UPSRATEMONGER.CFM.
- Removed the BLOCKFACTOR parameter from all CFQUERY statements.
- Tweaked a couple of error messages.
- Revised the tag's database to incorporate the 2001 rates released by UPSÃ?????????? on 12/28/2000. These rates are effective 2/5/2001.
- Revised all pre-existing rates.
- FYI The WorldWide Extended Area Surcharge database was expanded by UPSÃ?????????? significantly, from 1754 entries to 2320. This is only an issue to international shipping sites using AUTOXAREA= N.</LI>< /LI>
- Added support for domestic Letter rates (signified by a weight of 0) in plans where available
- Minor mods to some db tables (removed identity fields that had, for some reason, been included in the table design for some plans. These conflicted with a seamless 2001 update process).
v1.41, 11/17/2000, (v1.41a, 11/18/2000)
- The automatic zone loader for Canada Standard rates required an update thanks to UPS changing the source file's data format (this was added on 11/18, and is the ''a'' in v1.41a). Thank Mary Jo Sminkey at CFWebStore for keeping this updated.
- Added the AutoXarea parameter, which bypasses the secondary regional entry screen present in some countries when using WorldWide Express and Expedited plans. When this variable is set to ''Y'' and a destination country with Extended Area Surcharge regions is detected, the surcharge is automatically added. This makes the user experience smoother, but results in a potential overcharge. This feature also makes the tag simpler to integrate into an application.
- The tag now checks to see that the destination country picked is correctly matched to the plan selected. Formerly the tag changed the selected plan to Canada Standard when a Canadian postal code was detected and a U.S.-only shipping plan was selected. Now the tag errors out in all cases of mismatches, in addition to its pre-existing error checking.
- Given the above change, the Country parameter is now required in all cases. Easy Instructions on how to adapt entry forms created prior to the release of v1.41 are provided.
- Modified the Origin parameter to allow it to be specified on the UPSRateMonger command line instead of hardwired in as a CFPARAM inside UPSRateMonger.cfm. This behavior is more consistent with how a parameter ought to be handled in a custom tag.
- UPS_WW.cfm now has kinder/gentler error messages that mean something both to the developer and the site visitor. Rather than just pinpointing the error condition, they offer advice to the visitor for fixing the problem (i.e. ''You selected PLAN NAME HERE. That plan is not available to your destination. Please try again.'').
- Revised the in-tag docs found inside UPSRateMonger.cfm to reflect the new options and better describe the tag parameters.
- Added still more descriptive code comments, especially inside UPS_WW.cfm and UPSRateMonger.cfm.
- Created easier example entry forms, both with and without the AutoXArea feature enabled.
- Added support for WorldWide Express, WorldWide Express Plus and WorldWide Expedited rates (for packages up to 150 lbs, from U.S. destinations). A considerable change given the relative complexity of these rates. Seven new db tables added, along with a lot of code. The tag should remain backward-compatible with previous installs, so it shouldn't break your entry forms if you upgrade (test it first!).
- Added the v1.30 files to the v1.40 download in a separate zip file. If you don't need the worldwide shipping plans v1.30 is fully functional. If you use v1.30 don't forget to remove the seven worldwide shipping database tables (they all begin with ''UPS_WW'').
- Revised the parent upsratemonger.cfm considerably to handle errors for all input variables. Previously the tag relied on proper coding of the input form by the developer for it to initially function. The current version will hand out helpful error messages if the developer (that's you) screws up the initial installation.
- Significantly revised the demo runme.cfm to showcase the new error handling functions.
- Added two example templates to the tag package, authored and generously shared by Mary Jo Sminkey at CFWebStore, which enable highly-simplified import of U.S. and Canadian zone files.
- found and eliminated another (the last!) instance of the unscoped variable issue supposedly fixed in the previous release. Argh.
- Fixed an unscoped variable found by Randy Van Vlack that caused an error in CF 4.0x if and only if your source and destination ZIP codes were the same.
- Fixed a bad variable name found by Matt Schultz.
- Added some more descriptive info onto the example runme.cfm.
- Made some minor mods to these docs.
- Improved Documentation of parameters and returned variables.
- Added complete, step-by-step instructions for zone table importation.
- Input variables are now passed back to the original calling template for re-use if desired.
- The example runme.cfm template was modified to re-use its own input parameters (see above).
- Added support for Canada Standard shipping from U.S. origin points.
- The runme.cfm example was originally *very* quick and dirty. This one is much better constructed.
- Better error handling throughout.
- The original one-piece tag broken into three to best accomodate U.S. vs. international shipping, and future growth.