Jump to content
torinwalker

New UPS XML Shipping Module available

Recommended Posts

easy way to prevent the time of delivery date from displaying?
Comment out the code between // BOF Time In Transit and // EOF Time In Transit (line 206-214).

Share this post


Link to post
Share on other sites
Make sure (with phpMyAdmin) that you shorten the last field in the row with Shipping Methods, MODULE_SHIPPING_UPSXML_TYPES etc. to something that has , 'A UPS Method'), at the end. Then if that was the problem, uninstall and install.

JanZ,

I did a search in the database for everything that starts with MODULE_SHIPPING, and came up with i think 17 results... all either UPS or USPS related (since those are the 2 modules installed). Do i need to change something in one of those? The last field in the row is the set_function field.

 

Thanks again for all your time and help =)

Justin

Share this post


Link to post
Share on other sites
I did a search in the database for everything that starts with MODULE_SHIPPING, and came up with i think 17 results... all either UPS or USPS related (since those are the 2 modules installed). Do i need to change something in one of those?
Yes, the one that says: MODULE_SHIPPING_UPSXML_TYPES.
The last field in the row is the set_function field.
Change that field as explained before.

 

Hopefully, that gets you started.

Share this post


Link to post
Share on other sites
Comment out the code between // BOF Time In Transit and // EOF Time In Transit (line 206-214).

 

dont have to worry about the time in transit stuff towards the end of the file?

 

stuff after:

// BOF Time In Transit
// if you choose to use the time in transit API, remove the comment tags below (/* and */)
// there is also another section earlier in this file that will need to have the tags removed

// GM 11-15-2004: renamed from _upsGetTime() 

//********************
function _upsGetTimeServices() {

 

Thanks again

Share this post


Link to post
Share on other sites
Yes, the one that says: MODULE_SHIPPING_UPSXML_TYPES.

I don't have one of those =( They're all either MODULE_SHIPPING_UPS_... or MODULE_SHIPPING_USPS_... none are MODULE_SHIPPING_UPSXML_... and none have _TYPES at the end. It's only displaying ones for the modules i have installed (which are UPS and USPS)... i haven't even gotten as far as to install the UPSXML package in the admin area yet.

Share this post


Link to post
Share on other sites
dont have to worry about the time in transit stuff towards the end of the file?

 

stuff after:

// BOF Time In Transit
// if you choose to use the time in transit API, remove the comment tags below (/* and */)
// there is also another section earlier in this file that will need to have the tags removed

// GM 11-15-2004: renamed from _upsGetTime() 

//********************
function _upsGetTimeServices() {

No, actually the comment is not valid since in version 1.1.3 the function was fixed by Greg MacLellan and as you can see there are no comment tags.

 

If you comment out the part I advised to, then $this->servicesTimeintransit[$type] will not be set and as you can see a few lines further the ", date" will not be added:

			 	if (isset($this->servicesTimeintransit[$type])) {
				$_type = $_type . ", ".$this->servicesTimeintransit[$type]["date"];
			}

Share this post


Link to post
Share on other sites
i haven't even gotten as far as to install the UPSXML package in the admin area yet.
Indeed, but did you upload catalog/includes/languages/english/modules/shipping/upsxml.php ? Pretty essential....

Share this post


Link to post
Share on other sites
Indeed, but did you upload catalog/includes/languages/english/modules/shipping/upsxml.php ? Pretty essential....

Yes i did... the file is on the server, but there is nothing in the database about it. I did a search in the main database for module_shipping, and i got 17 results in the configuration database, but they were all dealing with either UPS or USPS. There was nothing about UPSXML or any of the other shipping modules that are on the server but not installed (like flat, item, or table). So am i searching in the wrong place? Should there be somewhere that lists the UPSXML, flat, item, and table modules even tho they're not installed?

Share this post


Link to post
Share on other sites
Yes i did... the file is on the server, but there is nothing in the database about it. I did a search in the main database for module_shipping, and i got 17 results in the configuration database, but they were all dealing with either UPS or USPS. There was nothing about UPSXML or any of the other shipping modules that are on the server but not installed (like flat, item, or table). So am i searching in the wrong place? Should there be somewhere that lists the UPSXML, flat, item, and table modules even tho they're not installed?
If you look at the code in admin/modules.php you will see that in line 110-122 every file in the directory admin/includes/modules/shipping is read and upsxml will be included the upsxml.php file is there. In this way the code "sees" what modules are or can be installed/activated. Then in line 124-140 the corresponding language files are read and included (if not present: a point of failure).

 

Then a number of things about the module are loaded ('code' => $module->code,

'title' => $module->title,

'description' => $module->description,

'status' => $module->check()) and then the database is queried for configuration values.

 

The loop that ends with </tr> in your HTML end starts with:

  $installed_modules = array();
 for ($i=0, $n=sizeof($directory_array); $i<$n; $i++) {
$file = $directory_array[$i];

include(DIR_FS_CATALOG_LANGUAGES . $language . '/modules/' . $module_type . '/' . $file);
include($module_directory . $file);

Somewhere it that loop, something goes wrong with UPS XML. And if you don't know what error you get, it is hard to guess what goes wrong. My first guess was the "language" file is not there, but you say it is there, so that cannot be it.

Share this post


Link to post
Share on other sites

Hi there,

I'm trying to add the "UPS XML Rates v1.1.5a" fix... but *do not* see the text Michiel Heeringa says to edit:

 

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_checkbox_field('products_ready_to_ship', $pInfo->products_ready_to_ship); ?></td>

 

in:

 

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_checkbox_field('products_ready_to_ship', '1', (($product['products_ready_to_ship'] == '1') ? true : false)); ?></td>

 

Neither of his two statements are found in /admin/categories.php. This is a fresh install and I have only placed Separate Pricing Per Customer onto my osCommerce installation.

 

Can someone please teel me what Michiel Heeringa is talking about? Thank you,

Mark

Share this post


Link to post
Share on other sites
I'm trying to add the "UPS XML Rates v1.1.5a" fix... but *do not* see the text Michiel Heeringa says to edit:

Neither of his two statements are found in /admin/categories.php. This is a fresh install and I have only placed Separate Pricing Per Customer onto my osCommerce installation.

It only applies to the code for the "packaging/dimensions" add-on. If you don't have that installed (don't I would say) nothing to worry about.

Share this post


Link to post
Share on other sites

Hey JanZ,

Thank you... I suppose I'll stop with only the installation of "UPSXML_v1.1.5" and not worry about the "UPS XML Rates v1.1.5a" fix.

 

Thank you!

Share this post


Link to post
Share on other sites

Hi Janz,

 

I got it working now, the only thing is that the time in transit isn't showing correctly

 

upsxml2.jpg

 

This is the code:

DATE AND TIME: 2005-12-13 15:48:29
UPS URL: https://wwwcie.ups.com:443/ups.app/xml/TimeInTransit
UPS REQUEST: <?xml version="1.0"?>
<AccessRequest xml:lang="en-US">
  <AccessLicenseNumber>xxxxxxxxx</AccessLicenseNumber>
  <UserId>xxxxxxxxxxx</UserId>
  <Password>xxxxxxxxxxx</Password>
</AccessRequest>
<?xml version="1.0"?>
<TimeInTransitRequest xml:lang="en-US">
  <Request>
   <TransactionReference>
	   <CustomerContext>Time in Transit</CustomerContext>
	   <XpciVersion>1.0001</XpciVersion>
   </TransactionReference>
   <RequestAction>TimeInTransit</RequestAction>
  </Request>
  <TransitFrom>
   <AddressArtifactFormat>
	   <PoliticalDivision2>Heerenveen</PoliticalDivision2>
	   <PoliticalDivision1>DR</PoliticalDivision1>
	   <CountryCode>NL</CountryCode>
	   <PostcodePrimaryLow>8448EX</PostcodePrimaryLow>
   </AddressArtifactFormat>
  </TransitFrom>
  <TransitTo>
   <AddressArtifactFormat>
	   <PoliticalDivision2>Szczecinek</PoliticalDivision2>
	   <PoliticalDivision1>PL</PoliticalDivision1>
	   <CountryCode>PL</CountryCode>
	   <PostcodePrimaryLow>78-400</PostcodePrimaryLow>
	   <PostcodePrimaryHigh>78-400</PostcodePrimaryHigh>
   </AddressArtifactFormat>
  </TransitTo>
  <PickupDate>20051214</PickupDate>
  <ShipmentWeight>
   <UnitOfMeasurement>
	   <Code>KGS</Code>
   </UnitOfMeasurement>
   <Weight>10</Weight>
  </ShipmentWeight>
  <InvoiceLineTotal>
   <CurrencyCode>USD</CurrencyCode>
   <MonetaryValue>100</MonetaryValue>
  </InvoiceLineTotal>
</TimeInTransitRequest>

UPS RESPONSE: <?xml version="1.0"?><TimeInTransitResponse><Response><TransactionReference><CustomerContext>Time in Transit</CustomerContext><XpciVersion>1.0001</XpciVersion></TransactionReference><ResponseStatusCode>1</ResponseStatusCode><ResponseStatusDescription>Success</ResponseStatusDescription></Response><TransitResponse><PickupDate>2005-12-14</PickupDate><TransitFrom><AddressArtifactFormat><PoliticalDivision2>HEERENVEEN</PoliticalDivision2><Country>NETHERLANDS</Country><CountryCode>NL</CountryCode><PostcodePrimaryLow>8448EX</PostcodePrimaryLow></AddressArtifactFormat></TransitFrom><TransitTo><AddressArtifactFormat><PoliticalDivision2>SZCZECINEK</PoliticalDivision2><Country>POLAND</Country><CountryCode>PL</CountryCode><PostcodePrimaryLow>78400</PostcodePrimaryLow></AddressArtifactFormat></TransitTo><AutoDutyCode>02</AutoDutyCode><ShipmentWeight><UnitOfMeasurement><Code>KGS</Code></UnitOfMeasurement><Weight>10.0</Weight></ShipmentWeight><InvoiceLineTotal><CurrencyCode>USD</CurrencyCode><MonetaryValue>100.00</MonetaryValue></InvoiceLineTotal><Disclaimer>Services listed as guaranteed are backed by a money-back guarantee for transportation charges only. See Terms and Conditions in the Service Guide for details. Certain commodities and high value shipments may require additional transit time for customs clearance.</Disclaimer><ServiceSummary><Service><Code>18</Code><Description>UPS Express Saver</Description></Service><Guaranteed><Code>Y</Code></Guaranteed><EstimatedArrival><BusinessTransitDays>2</BusinessTransitDays><Time>23:30:00</Time><PickupDate>2005-12-14</PickupDate><PickupTime>16:00:00</PickupTime><HolidayCount>0</HolidayCount><DelayCount>0</DelayCount><Date>2005-12-16</Date><DayOfWeek>FRI</DayOfWeek><TotalTransitDays>2</TotalTransitDays><CustomerCenterCutoff>15:00:00</CustomerCenterCutoff><RestDays>0</RestDays></EstimatedArrival></ServiceSummary><ServiceSummary><Service><Code>08</Code><Description>UPS Standard</Description></Service><Guaranteed><Code>N</Code></Guaranteed><EstimatedArrival><BusinessTransitDays>3</BusinessTransitDays><Time>23:30:00</Time><PickupDate>2005-12-14</PickupDate><PickupTime>16:00:00</PickupTime><HolidayCount>0</HolidayCount><DelayCount>0</DelayCount><Date>2005-12-19</Date><DayOfWeek>MON</DayOfWeek><TotalTransitDays>5</TotalTransitDays><CustomerCenterCutoff>15:00:00</CustomerCenterCutoff><RestDays>2</RestDays></EstimatedArrival></ServiceSummary><MaximumListSize>35</MaximumListSize></TransitResponse></TimeInTransitResponse>
------------------------------------------
Business Transit: UPS Express Saver = 2005-12-16
Business Transit: UPS Standard = 2005-12-19
------------------------------------------
Time in Transit: 0
------------------------------------------
DATE AND TIME: 2005-12-13 15:48:31
UPS URL: https://wwwcie.ups.com:443/ups.app/xml/Rate
UPS REQUEST: <?xml version="1.0"?>
<AccessRequest xml:lang="en-US">
  <AccessLicenseNumber>xxxxxxxxxxxxxx</AccessLicenseNumber>
  <UserId>xxxxxxxxxxxx</UserId>
  <Password>xxxxxxxxxxx</Password>
</AccessRequest>
<?xml version="1.0"?>
<RatingServiceSelectionRequest xml:lang="en-US">
  <Request>
   <TransactionReference>
	   <CustomerContext>Rating and Service</CustomerContext>
	   <XpciVersion>1.0001</XpciVersion>
   </TransactionReference>
   <RequestAction>Rate</RequestAction>
   <RequestOption>shop</RequestOption>
  </Request>
  <Shipment>
   <Shipper>
	   <Address>
		   <City>Heerenveen</City>
		   <StateProvinceCode>DR</StateProvinceCode>
		   <CountryCode>NL</CountryCode>
		   <PostalCode>8448EX</PostalCode>
	   </Address>
   </Shipper>
   <ShipTo>
	   <Address>
		   <City>Szczecinek</City>
		   <StateProvinceCode>PL</StateProvinceCode>
		   <CountryCode>PL</CountryCode>
		   <PostalCode>78-400</PostalCode>
	   </Address>
   </ShipTo>
   <Package>
	   <PackagingType>
		   <Code>04</Code>
	   </PackagingType>
	   <PackageWeight>
		   <UnitOfMeasurement>
			   <Code>KGS</Code>
		   </UnitOfMeasurement>
		   <Weight>1</Weight>
	   </PackageWeight>
	   <PackageServiceOptions>
		   <InsuredValue>
			   <CurrencyCode>EUR</CurrencyCode>
			   <MonetaryValue>145</MonetaryValue>
		   </InsuredValue>
	   </PackageServiceOptions>
   </Package>
  </Shipment>
</RatingServiceSelectionRequest>

UPS RESPONSE: <?xml version="1.0"?><RatingServiceSelectionResponse><Response><TransactionReference><CustomerContext>Rating and Service</CustomerContext><XpciVersion>1.0001</XpciVersion></TransactionReference><ResponseStatusCode>1</ResponseStatusCode><ResponseStatusDescription>Success</ResponseStatusDescription></Response><RatedShipment><Service><Code>65</Code></Service><BillingWeight><UnitOfMeasurement><Code>KGS</Code></UnitOfMeasurement><Weight>1.0</Weight></BillingWeight><TransportationCharges><CurrencyCode>EUR</CurrencyCode><MonetaryValue>93.35</MonetaryValue></TransportationCharges><ServiceOptionsCharges><CurrencyCode>EUR</CurrencyCode><MonetaryValue>1.45</MonetaryValue></ServiceOptionsCharges><TotalCharges><CurrencyCode>EUR</CurrencyCode><MonetaryValue>94.80</MonetaryValue></TotalCharges><GuaranteedDaysToDelivery></GuaranteedDaysToDelivery><ScheduledDeliveryTime></ScheduledDeliveryTime><RatedPackage><TransportationCharges><CurrencyCode> </CurrencyCode><MonetaryValue> </MonetaryValue></TransportationCharges><ServiceOptionsCharges><CurrencyCode> </CurrencyCode><MonetaryValue> </MonetaryValue></ServiceOptionsCharges><TotalCharges><CurrencyCode> </CurrencyCode><MonetaryValue> </MonetaryValue></TotalCharges><Weight>1.0</Weight><BillingWeight><UnitOfMeasurement><Code> </Code></UnitOfMeasurement><Weight> </Weight></BillingWeight></RatedPackage></RatedShipment></RatingServiceSelectionResponse>

 

Any idea what could be wrong now?

 

I noticed there is also only showing 1 method? is this ok?

 

ps. sorry for asking all these questions but i really want to use this shipping method :)

Share this post


Link to post
Share on other sites
I got it working now, the only thing is that the time in transit isn't showing correctly

<Weight>10.0</Weight></ShipmentWeight>
------------------------------------------
Business Transit: UPS Express Saver = 2005-12-16
Business Transit: UPS Standard = 2005-12-19
------------------------------------------
		 <Weight>1</Weight>

<Service><Code>65</Code>

Any idea what could be wrong now?

 

I noticed there is also only showing 1 method? is this ok?

For starters you show responses of two different shipments, one of 10 kgs and one of 1 kgs. The puzzling part is that when you ask for all possible rates it only returns the rate for service 65 (UPS Express NA1) but it does not give the estimated time of arrival for that service (only those of Express Saver and Standard which is European code 07 and 11 respectively). So the ETA for the service you got a quote for is simply not given. That is a UPS's matter.

Share this post


Link to post
Share on other sites
For starters you show responses of two different shipments, one of 10 kgs and one of 1 kgs. The puzzling part is that when you ask for all possible rates it only returns the rate for service 65 (UPS Express NA1) but it does not give the estimated time of arrival for that service (only those of Express Saver and Standard which is European code 07 and 11 respectively). So the ETA for the service you got a quote for is simply not given. That is a UPS's matter.

'

It aren't two different shipments: look at the times of them:

 

DATE AND TIME: 2005-12-13 15:48:29

DATE AND TIME: 2005-12-13 15:48:31

 

So it's from the same shipment. For some reason the timeintransit get's 10kg and the rates gets 1 kg (and it should be 1).

Further should i get more shipments then only service 65? Because then i will contact UPS about it.

 

Thanks anyway :)

Share this post


Link to post
Share on other sites
So it's from the same shipment.
You are 100% right.
For some reason the timeintransit get's 10kg and the rates gets 1 kg (and it should be 1).
Yes, this seems to be hard coded (no big deal because you are checking the delivery time). I hadn't checked it with one of my own logs, but this is the normal sequence (time in transit first and then rates).
Further should i get more shipments then only service 65? Because then i will contact UPS about it.
Try changing the wwwcie.ups.com to www.ups.com (a bug in the module that AlecUK came across, I think it is on the page before this one) and check it again before (rightly so) complaining to UPS.

Share this post


Link to post
Share on other sites
You are 100% right.

Yes, this seems to be hard coded (no big deal because you are checking the delivery time). I hadn't checked it with one of my own logs, but this is the normal sequence (time in transit first and then rates).

Try changing the wwwcie.ups.com to www.ups.com (a bug in the module that AlecUK came across, I think it is on the page before this one) and check it again before (rightly so) complaining to UPS.

 

I found the problem i guess:

 

From the UPS RSS_dev_guide:

EU code 65 = UPS Express Saver

 

In the language file:

define('MODULE_SHIPPING_UPSXML_SERVICE_CODE_EU_ORIGIN_65', 'UPS Express NA1');

 

And it should be:

define('MODULE_SHIPPING_UPSXML_SERVICE_CODE_EU_ORIGIN_65', 'UPS Express Saver');

 

 

That's one problem solved :)

 

The other that i'm getting 2 methods back from Time in Transit and one for Rates is under investigation :D

Share this post


Link to post
Share on other sites

Rik,

From the UPS RSS_dev_guide:

EU code 65 = UPS Express Saver

 

In the language file:

define('MODULE_SHIPPING_UPSXML_SERVICE_CODE_EU_ORIGIN_65', 'UPS Express NA1');

 

And it should be:

define('MODULE_SHIPPING_UPSXML_SERVICE_CODE_EU_ORIGIN_65', 'UPS Express Saver');

That's one problem solved :)

Excellent, what should this one be then:

	define('MODULE_SHIPPING_UPSXML_SERVICE_CODE_EU_ORIGIN_69', 'UPS Express Saver');

Where did you found that development guide by the way (never seen it myself)?

Share this post


Link to post
Share on other sites

69 isn't even in the list.

 

You can find the tools by logging into UPS.com

goto business solutions - online tools - UPS tracking.

 

If you have a key you can download it from there.

 

Or just follow this link ;)

http://www.ups.com/e_comm_access/laServ?lo...OOL_ID=TrackXML

 

I'm still having the problem that only 1 method shows up while there are 2 in the xml file :(

 

This is the XML file:

UPS RESPONSE: 
<?xml version="1.0"?>
<RatingServiceSelectionResponse>
<Response>
	<TransactionReference>
		<CustomerContext>Rating and Service</CustomerContext>
		<XpciVersion>1.0001</XpciVersion>
	</TransactionReference>
	<ResponseStatusCode>1</ResponseStatusCode>
	<ResponseStatusDescription>Success</ResponseStatusDescription>
</Response>
<RatedShipment>
	<Service>
		<Code>07</Code>
	</Service>
	<BillingWeight>
		<UnitOfMeasurement>
			<Code>KGS</Code>
		</UnitOfMeasurement>
		<Weight>1.0</Weight>
	</BillingWeight>
	<TransportationCharges>
		<CurrencyCode>EUR</CurrencyCode>
		<MonetaryValue>82.94</MonetaryValue>
	</TransportationCharges>
	<ServiceOptionsCharges>
		<CurrencyCode>EUR</CurrencyCode>
		<MonetaryValue>1.45</MonetaryValue>
	</ServiceOptionsCharges>
	<TotalCharges>
		<CurrencyCode>EUR</CurrencyCode>
		<MonetaryValue>84.39</MonetaryValue>
	</TotalCharges>
	<GuaranteedDaysToDelivery></GuaranteedDaysToDelivery>
	<ScheduledDeliveryTime></ScheduledDeliveryTime>
	<RatedPackage>
		<TransportationCharges>
			<CurrencyCode> </CurrencyCode>
			<MonetaryValue> </MonetaryValue>
		</TransportationCharges>
		<ServiceOptionsCharges>
			<CurrencyCode> </CurrencyCode>
			<MonetaryValue> </MonetaryValue>
		</ServiceOptionsCharges>
		<TotalCharges>
			<CurrencyCode> </CurrencyCode>
			<MonetaryValue> </MonetaryValue>
		</TotalCharges>
		<Weight>1.0</Weight>
		<BillingWeight>
			<UnitOfMeasurement>
				<Code> </Code>
			</UnitOfMeasurement>
			<Weight> </Weight>
		</BillingWeight>
	</RatedPackage>
</RatedShipment>
<RatedShipment>
	<Service>
		<Code>54</Code>
	</Service>
	<BillingWeight>
		<UnitOfMeasurement>
			<Code>KGS</Code>
		</UnitOfMeasurement>
		<Weight>1.0</Weight>
	</BillingWeight>
	<TransportationCharges>
		<CurrencyCode>EUR</CurrencyCode>
		<MonetaryValue>123.59</MonetaryValue>
	</TransportationCharges>
	<ServiceOptionsCharges>
		<CurrencyCode>EUR</CurrencyCode>
		<MonetaryValue>1.45</MonetaryValue>
	</ServiceOptionsCharges>
	<TotalCharges>
		<CurrencyCode>EUR</CurrencyCode>
		<MonetaryValue>125.04</MonetaryValue>
	</TotalCharges>
	<GuaranteedDaysToDelivery></GuaranteedDaysToDelivery>
	<ScheduledDeliveryTime></ScheduledDeliveryTime>
	<RatedPackage>
		<TransportationCharges>
			<CurrencyCode> </CurrencyCode>
			<MonetaryValue> </MonetaryValue>
		</TransportationCharges>
		<ServiceOptionsCharges>
			<CurrencyCode> </CurrencyCode>
			<MonetaryValue> </MonetaryValue>
		</ServiceOptionsCharges>
		<TotalCharges>
			<CurrencyCode> </CurrencyCode>
			<MonetaryValue> </MonetaryValue>
		</TotalCharges>
		<Weight>1.0</Weight>
		<BillingWeight>
			<UnitOfMeasurement>
				<Code> </Code>
			</UnitOfMeasurement>
			<Weight> </Weight>
		</BillingWeight>
	</RatedPackage>
</RatedShipment>
</RatingServiceSelectionResponse>

 

And only method 54 is showing...

 

Any ideas?

Share this post


Link to post
Share on other sites
Try changing the wwwcie.ups.com to www.ups.com (a bug in the module that AlecUK came across, I think it is on the page before this one) and check it again before (rightly so) complaining to UPS.

 

Hello,

Are you saying that this statement is a bug:

 

$this->host = ((MODULE_SHIPPING_UPSXML_RATES_TEST_MODE == 'Test') ? 'wwwcie.ups.com' : 'wwwcie.ups.com');

 

And that it should be this:

 

$this->host = ((MODULE_SHIPPING_UPSXML_RATES_TEST_MODE == 'Test') ? 'wwwcie.ups.com' : 'www.ups.com');

 

Or is that only to be changed for UK use? Thank you,

BD

Edited by BoulderDash

Share this post


Link to post
Share on other sites
And only method 54 is showing...

 

Any ideas?

Yes, since Express (and Expedited) are not in the allowed shipping methods, they are kicked out. The error is in:

		tep_db_query("insert into " . TABLE_CONFIGURATION . " ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Shipping Methods', 'MODULE_SHIPPING_UPSXML_TYPES', 'Next Day Air, 2nd Day Air, Ground, Worldwide Express, Standard, 3 Day Select', 'Select the UPS services to be offered.', '6', '20', 'tep_cfg_select_multioption(array(\'Next Day Air\', \'2nd Day Air\', \'Ground\', \'Worldwide Express\', \'Worldwide Expedited\', \'Standard\', \'3 Day Select\', \'Next Day Air Saver\', \'Next Day Air Early A.M.\', \'Worldwide Express Plus\', \'2nd Day Air A.M.\', \'Express NA1\', \'Express Saver\'), ',  now())");

Expedited and Express should be added (or for European origins it might be simpler to change Worldwide Express above in Express and Worldwide Expedited in just Expedited. You will have to uninstall and install again (or change it in the database, table configuration, row MODULE_SHIPPING_UPSXML_TYPES directly).

To include both US, Canada, and European etc. methods that code should have all the worldwide available types in there (I think only Expedited and Express are missing) e.g.:

		tep_db_query("insert into " . TABLE_CONFIGURATION . " ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Shipping Methods', 'MODULE_SHIPPING_UPSXML_TYPES', 'Next Day Air, 2nd Day Air, Ground, Worldwide Express, Standard, 3 Day Select', 'Select the UPS services to be offered.', '6', '20', 'tep_cfg_select_multioption(array(\'Next Day Air\', \'2nd Day Air\', \'Ground\', \'Worldwide Express\', \'Worldwide Expedited\', \'Standard\', \'3 Day Select\', \'Next Day Air Saver\', \'Next Day Air Early A.M.\', \'Worldwide Express Plus\', \'2nd Day Air A.M.\', \'Expedited\',\'Express\',\'Express NA1\', \'Express Saver\'), ',  now())");

Share this post


Link to post
Share on other sites

BD,

Are you saying that this statement is a bug:
Yes, that is right.
Or is that only to be changed for UK use?
No, see the post just above this one for another bug.

Share this post


Link to post
Share on other sites
Yes, since Express (and Expedited) are not in the allowed shipping methods, they are kicked out. The error is in:

		tep_db_query("insert into " . TABLE_CONFIGURATION . " ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Shipping Methods', 'MODULE_SHIPPING_UPSXML_TYPES', 'Next Day Air, 2nd Day Air, Ground, Worldwide Express, Standard, 3 Day Select', 'Select the UPS services to be offered.', '6', '20', 'tep_cfg_select_multioption(array(\'Next Day Air\', \'2nd Day Air\', \'Ground\', \'Worldwide Express\', \'Worldwide Expedited\', \'Standard\', \'3 Day Select\', \'Next Day Air Saver\', \'Next Day Air Early A.M.\', \'Worldwide Express Plus\', \'2nd Day Air A.M.\', \'Express NA1\', \'Express Saver\'), ',  now())");

Expedited and Express should be added (or for European origins it might be simpler to change Worldwide Express above in Express and Worldwide Expedited in just Expedited. You will have to uninstall and install again (or change it in the database, table configuration, row MODULE_SHIPPING_UPSXML_TYPES directly).

To include both US, Canada, and European etc. methods that code should have all the worldwide available types in there (I think only Expedited and Express are missing) e.g.:

		tep_db_query("insert into " . TABLE_CONFIGURATION . " ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Shipping Methods', 'MODULE_SHIPPING_UPSXML_TYPES', 'Next Day Air, 2nd Day Air, Ground, Worldwide Express, Standard, 3 Day Select', 'Select the UPS services to be offered.', '6', '20', 'tep_cfg_select_multioption(array(\'Next Day Air\', \'2nd Day Air\', \'Ground\', \'Worldwide Express\', \'Worldwide Expedited\', \'Standard\', \'3 Day Select\', \'Next Day Air Saver\', \'Next Day Air Early A.M.\', \'Worldwide Express Plus\', \'2nd Day Air A.M.\', \'Expedited\',\'Express\',\'Express NA1\', \'Express Saver\'), ',  now())");

 

Thanks JanZ,

 

i just completely removed the limit choices function by commenting out the following line:

if (!exclude_choices($type)) continue;

 

I now still have a naming issue, but i will contact UPS for that:

TimeinTransit gives back:

- UPS Worldwide Express

- UPS Worldwide Expedited

 

Rates fives back:

- UPS Express

- UPS Worldwide Express Plus

 

So i think there is something wrong with the naming inside TimeInTransit for EU countries.

 

I will post here what UPS has to say!

Share this post


Link to post
Share on other sites
The root cause is that in includes/modules/shipping/upsxml.php (from 1.1.5) there is a line early in the file that says:

define('DIMENSIONS_SUPPORTED', 1);

Make it:

define('DIMENSIONS_SUPPORTED', 0);

and the error will go away.

 

Hello,

 

So I installed the UPS XML module and I was having the same problem with the table_packaging error. I used the solution JanZ put here and the problem went away...unfortunately instead of opening the checkout page the browser opens a dialog box and asks me where I want to download it.

 

Any one know why that is, or how to fix this? Thanks!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×