[ic] Help! Pricing routines fail in receipt.html (but work otherwise)

Ed LaFrance interchange-users@interchange.redhat.com
Wed May 22 12:29:00 2002


At 03:23 PM 05/22/2002 +0200, you wrote:

>  Dear all,
>
>  I'm struggling against a very hard problem with Interchange (4.8.3,
>4.8.5)...
>
>  I'm using some custom tags to calculate the prices of items,
>in pages basket.html, checkout.html, receipt.html
>
>  The problem is that, when it comes to page receipt.html, Interchange
>seems to have forgotten about item modifiers ( [item-modifier formats]
>does not work too, and returns empty values) and my calculation of prices,
>done via proprietary tag mix-sale-off:
>
>  [mix-sale-off number="[nitems]" prodformat="[item-modifier formats]" ]
>
>always returns 30 per discount percentage (see variable curr_prc) whereas
>it should return 30 or 9 or 4 or 3 per discount percentage.
>
>  Is it this an Interchange problem, or I am doing something nasty here???
>
>
>--- THIS IS THE (TRIVIAL) TAG
>
>UserTag mix-sale-off Interpolate
>UserTag mix-sale-off Order number prodformat
>UserTag mix-sale-off Routine <<EOR
>sub {
>         my $nitems = shift;
>         my $prodformat = shift;
>         my $perc_mod = 1;
>
>         my $curr_prc = 30;
>         if ($prodformat eq "s1600x1200") { $curr_prc = 9 };
>         if ($prodformat eq "s1024x768")  { $curr_prc = 4 };
>         if ($prodformat eq "s800x600")   { $curr_prc = 3 };
>
>         if ($nitems == 2)                    { $perc_mod = .95 };
>         if (($nitems > 2) && ($nitems < 5))  { $perc_mod = .90 };
>         if (($nitems > 5) && ($nitems < 10)) { $perc_mod = .85 };
>         if ($nitems > 10)                    { $perc_mod = .80 };
>
>         $curr_prc = $curr_prc * $perc_mod;
>         return $curr_prc;
>}
>EOR
>
>
>-- THIS IS THE DATABASE DEFINITION:
>
>Database            products products.txt __SQLDSN__
>Database            products KEY    code
>Database            products ChopBlanks   1
>Database            products COLUMN_DEF   price=float
>Database            products COLUMN_DEF   print_price=float
>Database            products COLUMN_DEF   code=char(20)
>Database            products COLUMN_DEF   image=char(255)
>
>NoImport            products
>
>
>
>-- THIS IS WHERE I RECALL THE TABLE FIELD "formats"
>    (which maybe even unnecessary, given that I only use custom tags)
>
>UseModifier formats
>

Does the problem also exist on the order report and customer receipt 
emails, or just on the receipt page?

- Ed L.


===============================================================
New Media E.M.S.               Software Solutions for Business
463 Main St., Suite D          eCommerce | Consulting | Hosting
Placerville, CA  95667         edl@newmediaems.com
(530) 622-9421                 http://www.newmediaems.com
(866) 519-4680 Toll-Free       (530) 622-9426 Fax
===============================================================