MiniVend Akopia Services

[Date Prev][Date Next][Thread Prev][Thread Next][Minivend by date ][Minivend by thread ]

Re: Using variables in [data ...] statement



******    message to minivend-users from Mike Lerley <mike@bfent.com>     ******

I must thank you for your inspiration!  What you suggested worked fine
in one situation but the other was inside embedded perl that was
performing a couple of nested loops.  I took another look at it,
however, and managed to rewrite the loops entirely in minivendish using
[loop].  Now it works fantastically!  Thanks.
-mike

> mike wrote:
> 
> You problem seems to be more that you are trying to test for a null
> value than that of returning a value in the data element.  Why not use
> Minivend's very useful built in functions to accomplish this instead
> of embedded perl? The following code shows how to do this in order to
> accomplish a neato-keano feature, alternating background colors for a
> product listing.
> 
> Try a variation of this:
> 
> [comment}
> Put this outside of your main loop
> This set the "count" variable to a null value
> [/comment]
> [set count][/set]
> 
> [comment]
> Put this in place of the table tag you will be using
> for your display, inside the main loop.
> [/comment]
> 
> [if scratch count]
> <TABLE BORDER="0" WIDTH="600" BGCOLOR="#FFFFFF">
> [set count][/set]
> [else]
> <TABLE BORDER="0" WIDTH="600" BGCOLOR="[var BARBG]">
> [set count]1[/set]
> [/else]
> [/if]
> 
> [comment]
> notice that the statement [if scratch count] actually
> tests for any non-null value, if the value of count is
> any non-null value, the color white is used as the background
> and the value is set to a null with [set count][/set]
> otherwise the color light beige is used as the background
> and the value of count is set to a non-null value,
> in this case the number 1 with [set count]1[/set] however
> you could set it to anything you wish
> [/comment]
> 
> Your variation might be:
> 
> [if data songs name $upc]
> blah
> [else]
> blahsey blah
> [/else]
> [/if]
> 
> vandy
> Keeping the GNU spririt alive with neeto-keeno code examples!
> 
> -----Original Message-----
> From: Mike Lerley [mailto:mike@bfent.com]
> Sent: Friday, April 23, 1999 9:19 AM
> To: minivend-users@minivend.com
> Subject: Re: Using variables in [data ...] statement
> 
> ******    message to minivend-users from Mike Lerley
> <mike@bfent.com>     ******
> 
> Ahhh.... I understand now.
> However:  I think this is a related question.
> 
> Trying to determine whether or not [data...] returns a value.
> Snippet:
> 
> my $sname;
> $sname="[data songs name $upc]";
> 
> if(length($sname)>0) {
>         blah;
> }
> 
> But upon inspection, length($data) ALWAYS returns 33.  Doesn't matter
> what's in there.  $data always contains the correct stuff (i.e. song
> name or nothing if not found), but length() never returns the length!
> 
> On the other hand:
> 
> my $hi;
> $hi="1234567";
> length($hi);
> 
> returns 7.
> 
> Argh!  Please help.  I don't have to use length() to determine
> results;
> if anyone has better ideas I'm quite open.  Thanks...
> 
> -mike
> 
> Frank Miedreich wrote:
> > This works exactly as advertised:
> >
> > 1st step: minivend tag Interpolation
> > 2nd step: Execution of perl code
> >
> > This means that ALL your minivend tags in your perl code are
> interpolated,
> > before any perl will be executed, thus the code fails during the
> > interpolation step.
> >
> > You could do:
> > [data base="albums" field="small" key="[perl interpolate=1]
> > $sku="12345";
> > $sku;
> > [/perl]"]
> >
> > or:
> > [perl]
> > $sku="12345";
> > "\[data albums small $sku\]";
> > [/perl]
> 
> --
> Mike Lerley, Technical Systems Administrator
> Goold Health Systems
> 24 Stone Street
> Augusta, ME 04330
> Email mike@bfent.com
> Phone (207) 622-3298
> Fax   (207) 623-5125
> -
> To unsubscribe from the list, DO NOT REPLY to this message.  Instead,
> send
> email with 'UNSUBSCRIBE minivend-users' in the body to
> Majordomo@minivend.com.
> Archive of past messages:
> http://www.minivend.com/minivend/minivend-list

-- 
Mike Lerley, Technical Systems Administrator
Goold Health Systems
24 Stone Street
Augusta, ME 04330
Email mike@bfent.com
Phone (207) 622-3298
Fax   (207) 623-5125

-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCS$/CM d- s:+ a-- C++++ UL++++U+CA+ P++++$ L++++
E--- W+++ N !o K- w--- !O M-- V PS PE++ Y PGP- t+ 5+
X+++ R- tv+ b+ DI++ D++ G e++ h--- r+++ y+++
------END GEEK CODE BLOCK------
http://www.ebb.org/ungeek/
-
To unsubscribe from the list, DO NOT REPLY to this message.  Instead, send
email with 'UNSUBSCRIBE minivend-users' in the body to Majordomo@minivend.com.
Archive of past messages: http://www.minivend.com/minivend/minivend-list


Search for: Match: Format: Sort by: