[ic] shipping.asc not working right
kerry blalock
kerry at basicq.com
Mon Jun 24 15:06:05 UTC 2013
On 06/24/2013 10:32 AM, Paul Jordan wrote:
>> From: interchange-users-bounces at icdevgroup.org
>> [mailto:interchange-users-bounces at icdevgroup.org] On Behalf Of kerry
>> blalock
>> Sent: Sunday, June 23, 2013 7:19 AM
>> To: interchange-users at icdevgroup.org
>> Subject: [ic] shipping.asc not working right
>>
>> I am trying to add an additions shipping method to my site and seem to be
>> having a problem with the logic. Here is the code that is giving me an
> error on
>> the truckbig method:
>>
>>
>> truckbigger: Oversize Truck Shipping
>> criteria <<EOC
>> [calcn]
>> foreach my $item (@$Items) {
>> if ($item->{width} >= 160) {
>> # We have to use this shipping method
>> return 1;
>> }
>> }
>> return 0;
>> [/calcn]
>> EOC
>> min 1
>> max 1
>> cost 170.00
>>
>> truckbig: Truck Shipping
>> criteria <<EOC
>> [calcn]
>> foreach my $item (@$Items) {
>> if (($item->{width} >= 108 and ($item->{width} <=160)) {
>> # We have to use truckbigger shipping method
>> return 1;
>> }
>> }
>> return 0;
>> [/calcn]
>> EOC
>> min 1
>> max 1
>> cost 85.00
>>
>> Truckbigger works as is. But when I want to charge less for rods between
> 108
>> and 160, I get an error,
>>
>> Note: No match found for mode 'ground', quantity '', returning 0.
>> Shipping defaults to the shippin method just below truckbig method. Need
>> fresh eyes to help me figure out why this is not working.
>
> I know this might sound crazy, but try putting the truckbig above the
> truckbigger method. I have found oddities in the past that lead me to
> believe (at times), the system does a substring match on shipping methods. I
> think your truckbig is never getting found because of it. I am most likely
> wrong, but try it for giggles.
>
> If all you are doing is raising the price on these (assuming these are not
> simplified for your question), you can combine them, just return a '2' for
> above 160 and have 2 cost 170. You can also explicitly call truckbigger from
> inside of truckbig like this:
>
> min 2
> max 2
> cost >>truckbigger
>
> Your #comment in truckbig is incorrect BTW.
>
> Oh, one other thing (that I am probably also wrong about). At times, I have
> noticed that things don't work as I expect if they don't have one-more-final
> cost above my maximum. IIRC I may have reported this and it may have been an
> actual bug (and fixed) but I have a habit of adding just one more anyways.
> So for you, you can add a...
>
> min 3
> max 3
> cost 200
>
> It will never be invoked, but things have led me to believe it is necessary.
>
> As you can see, my shipping.asc is by habit built upon folklore and
> wives-tales, but probably like you, once I get it working, I don't dare
> question anything I have done.
>
>
> Paul
>
Tried switching and truckbig works but I get same error when I add one
that should be truckbigger. Where would I insert the
min 2
max 2
cost >>truckbigger
?? And should I use two if statements instead of the two conditions?
I missed the comment as I have tried using two if statements and some other attempts to get it to work.
Also found missing ), but adding it did not help.
I do have other shipping methods in shipping.asc it is just these two that are not playing nice together.
Kerry
More information about the interchange-users
mailing list