Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

pvallen

Archived
  • Posts

    11
  • Joined

  • Last visited

Profile Information

  • Real Name
    Paul Allen

pvallen's Achievements

  1. Oh yes, this really drove me crazy. I followed the install instructions (which were written for MS1) to install into MS2. When I did this I got "Error 404 doucment '_' not found" whenever I clicked on the "recalculate" or "select" links. It took me quite a while to figure out that when I followed the install intructions to the letter I placed the ship in cart form (<form></form) tags inside the shopping cart form tags. This is an invalid construct in HTML. So, I needed to move the code in shopping_cart.php to include the ship in cart module immediately after the shopping cart </form> tag, but before the </td> that appeared after the </form>. Sheeesh, I hope that makes sense. Anyway, there are still problems with the module on MS2 related to the bottom infobox showing "Total cost if you order today". I looked at it briefly and think it is related to how the check out process was reworked for MS2 (possibly involving use of session variables to maintain check out choices). I decided, for now, that the totals including tax and being able to change totals by selecting different shipping choices was a relatively unimportant feature. My main concern is not losing shoppers (like me) who want to know what it will cost to ship without having to create an account first. I can't remember how many shopping carts I have orphaned on web sites that would not provide shipping costs without me first giving my personal information. So, I set the one flag to turn off the order total box and (by hand) removed the "select" links that appear to the right of each shipping choice. Good luck, Paul
  2. Those are the only two lines in the service codes arrays that changed from v1.01 and v1.02 of Torin's code. The UPS XML spec shows valid service codes for EU Origin as 07, 08, 11, 54, 64 & 65. So, my guess would be that Torin corrected a bug in the numeric code values but chose not to rename the constants (which will have no ill effects except to cause confusion).
  3. Just a guess without seeing your code... Take a look at line 170 in catalog/product_info.php. It probably looks something like: <?php include('DIR_WS_MODULES' . 'FILENAME_DYNAMIC_MOPICS'); ?> But should be more like: <?php include(DIR_WS_MODULES . FILENAME_DYNAMIC_MOPICS); ?> Notice the missing quotes in the changed line. If this is not the problem post the several lines of code spanning line 170 so folks can take a look at it.
  4. I have it working with MS2, as I recall the necessary changes were fairly minor. I can run a compare and post changes tonight, if you would like. FYI, I am only using the UPS XML shipping module. I have no experience using ship in cart with other shipping modules.
  5. If you are referring to removing certain UPS package services from the array of quoted rates, here is how I did it for UPS XML Rates and Services v1.01 posted Torin Walker on July 11. For reference, these instructions apply to v1.01 of contribution: http://www.oscommerce.com/community/contributions,1323 This requires the following four changes to catalog/includes/modules/shipping/upsxml.php At original line 118 are a series of arrays of services. The following is the one or US origin: 'US Origin' => array( '01' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_01, '02' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_02, '03' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_03, '07' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_07, '08' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_08, '11' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_11, '12' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_12, '13' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_13, '14' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_14, '54' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_54, '59' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_59, '65' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_65 ), Simply comment out the UPS package services you do not want to quote/provide. So, if all you want to provide is UPS Ground from a US origin, change the above to: 'US Origin' => array( // '01' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_01, // '02' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_02, '03' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_03, // '07' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_07, // '08' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_08, // '11' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_11, // '12' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_12, // '13' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_13, // '14' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_14, // '54' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_54, // '59' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_59, // '65' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_65 ), Removing package services for other shipping origins should be obvious. Second, at original line number 650, you should find: for ($i = 0; $i < count($ratedShipments); $i++) { Place the following line ABOVE this line: $j = 0; Third, at original line number 652 you should find: if (!($serviceCode && $totalCharge)) { continue; } Place the following lines BELOW the these lines: $title = $this->service_codes[$this->origin][$serviceCode]; if ( !isset($title) ) { continue; } Fourth (and last), at original line 669, you should find: $aryProducts[$i] = array($title => $totalCharge); Replace this line with the following line: $aryProducts[$j++] = array($title => $totalCharge); Note: this last change replaces "$i" with "$j++". Good luck, Paul
  6. Ok, I should not have posted my previous changes late at night, or without running a compare, or both. In addition to the code I mentioned above, you need to make the following two changes to remove the extraneous entries from the array returned: First, look for the following around line 650: for ($i = 0; $i < count($ratedShipments); $i++) { Place the following line BEFORE the above line: $j = 0; /* PVA Remove Services */ Second, look for the following line around line 676 (after making previous changes): $aryProducts[$i++] = array($title => $totalCharge); And change it to: $aryProducts[$j++] = array($title => $totalCharge); /* PVA Remove Services */ The only difference in the second change is changing $i to $j.
  7. Sorry, you will have to imagine proper indentation which I thought would be preserved when I pasted into my post....
  8. I have the same problem trying to get this working on MS2. Fortunately, I have not gone live yet. But I'm definitely going to get the XML based UPS rates working. I figured out how to disable rates with very minor changes. First, comment out all the rates you don't want starting at around line 116: $this->service_codes = array( // US Origin 'US Origin' => array( // '01' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_01, // '02' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_02, '03' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_03, // '07' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_07, // '08' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_08, // '11' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_11, // '12' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_12, // '13' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_13, // '14' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_14, // '54' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_54, // '59' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_59, // '65' => MODULE_SHIPPING_UPSXML_SERVICE_CODE_US_ORIGIN_65 ), Next, around line 650 look for: for ($i = 0; $i < count($ratedShipments); $i++) { $serviceCode = $ratedShipments[$i]->getValueByPath("/Service/Code"); $totalCharge = $ratedShipments[$i]->getValueByPath("/TotalCharges/MonetaryValue"); if (!($serviceCode && $totalCharge)) { continue; } and place the following under the above line: // Begin PVA Remove Service by commenting out in service code table $title = $this->service_codes[$this->origin][$serviceCode]; if ( !isset($title) ) { continue; } // End PVA Remove Service by commenting out in service code table This should cause the module to return only the rates whos title is included in the constant array of titles.
  9. Not sure if I would have time to do any of this soon. I looked at the descriptions of the previous QB contribs the other day. I suppose if they work well they would not be hard to rework for MS2. I just don't know if I want to go the IIF import route. I've thought about something more along the lines of an OSC export engine that receives and sends XML over HTTP (similar to the UPS APIs). Then I would write either a Windows or Java Swing client that would bridge between the OSC export engine and QB APIs. It's been a while since I peeked at the QB APIs. I know this is much bigger than a IIF generator and I'm not sure if I will have the time or motivation to do this. Truth be told, although we are pretty well invested in QB, I am not a big fan of Intuit and would consider switching to an open source accounting package if I felt there was a robust, stable one available. Or maybe even some other proprietary non-Intuit solution. I'm just tired of the many lame and restrictive implementations that tyr to bring you down the Intuit revenue generation trail... Oh well, I guess you weren't asking for an Intuit rant.
  10. I am in the process of setting up a new site and doing some of what you mention but it is not totally seamless. Basically, I added the UPS XML Rates contribution. This does real time rate quotes from UPS servers during on the order shipping page. We use the UPS WorldShip PC program to assign tracking numbers and laser print the labels. This is a client/server program provided by UPS. This program puts the tracking number on the clipboard. I modified the UPS XML tracking contribution. It allows you to enter up to 10 (comma separated) tracking numbers to the order database when you change the order to mark as shipped. The customer email sent when the order status changes includes a link to the order history detail. On this page appears the tracking number with a "View" button. When the customer clicks this button it redisplays the order history page with the UPS tracking info retrieved using the UPS tracking XML APIs. Our biggest redundancies in data entry are entering customer name and address into both QuickBooks and UPS WorldShip, and moving the tracking number from WorldShip to OSC. But we are fairly low volume shipper so this is not a big burden. Good luck, Paul
×
×
  • Create New...