Hey John,

The only small thing you're missing, is removing the empty space from the
array before assigning the variables.

So, if you do a view source on the page: www.webenergy-sw.com/arraytest.taf
you'll see some extra BR tags because of the extra empty rows.

Since the variables have to be dynamic, we really don't know if there'll be
8, 9, or 12 lines of information. So, we have to loop around the array, and
display the variables we assigned. Therefore, the array & variables must
have the same amout of rows with data.

The other tricky part, was to ensure that data line 1 was spaced1 and the
next line of data would be spaced2 etc... hence, why I had to sort the
array.

Rick Sanders
Vice President of I.T.
Webenergy-Icantec
Kitchener - Waterloo:(519) 741-2117
Montreal: (514) 808-0788
www.webenergy-sw.com
www.icantec.ca

----- Original Message ----- 
From: "John McGowan" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, July 28, 2004 9:18 AM
Subject: Re: Witango-Talk: ARRAY?? SOLUTION!!!


> Am I missing something here?  wouldn't these 6 lines of tml solve the
> problem?
>
> <@assign scope="Local" name="spacedIndex" value="0">
> <@rows scope="local" array="originalarray">
>  <@ifempty <@col num=1>><@else>
>   <@assign scope="Local" name="spaced<@nextval scope='Local'
> name='spacedIndex'>" value=<@col num=1>>
>  </@if>
> </@rows>
>
> [EMAIL PROTECTED] wrote:
>
> > Very good Rick.
> >
> > I had ended up with something similar, but your way is much slicker. I
> > was actually messing with the <@CALC> tag for the naming. It got ugly.
> >
> > Thanks!
> >
> > WebDude
> >
> >
> >> Hey Webdude,
> >>
> >> I totally understand what you need. I've done this before.
> >>
> >> Here's the taf with the code on how to do it.
> >>
> >> Also, follow this link to see the results:
> >> www.webenergy-sw.com/arraytest.taf
> >>
> >> Rick Sanders
> >> Vice President of I.T.
> >> Webenergy-Icantec
> >> Kitchener - Waterloo:(519) 741-2117
> >> Montreal: (514) 808-0788
> >> www.webenergy-sw.com
> >> www.icantec.ca
> >>
> >> ----- Original Message -----
> >> From: <[EMAIL PROTECTED]>
> >> To: <[EMAIL PROTECTED]>
> >> Sent: Tuesday, July 27, 2004 2:11 PM
> >> Subject: RE: Witango-Talk: ARRAY??
> >>
> >>
> >>>  Hi Gene and Dave,
> >>>
> >>>  Thanks for the snips. They both work well. Unfortunately, I already
> >>>  have gotten this far. I understand how to assign and filter arrays.
> >>>
> >>>  Maybe I should explain myself more fully...
> >>>
> >>>  It's not the values I am concerned about, but the naming of
> >>>  individual variables in ascending order. I need the final result
> >>>  taken out of the array and put into individual variables named
> >>>  whatever1, whatever2, whatever3 and so on with no variables being
> >>>  empty. So in your example. I would nee variables with no null
> >>>  variables named spaced1, spaced2 spaced3 and so on.
> >>>
> >>>  Example
> >>>
> >>>  (original array)
> >>>  A (row1)
> >>>  B (row2)
> >>>  C (row3)
> >>>      (row4)
> >>>      (row5)
> >>>  D (row6)
> >>>  E (row7)
> >>>      (row8)
> >>>  F (row9)
> >>>      (row10)
> >>>  G (row11)
> >>>  H (row12)
> >>>
> >>>  (what I need)
> >>>  <@ASSIGN spaced1 "A">
> >>>  <@ASSIGN spaced2 "B">
> >>>  <@ASSIGN spaced3 "C">
> >>>  <@ASSIGN spaced4 "D">
> >>>  <@ASSIGN spaced5 "E">
> >>>  <@ASSIGN spaced6 "F">
> >>>  <@ASSIGN spaced7 "G">
> >>>  <@ASSIGN spaced8 "H">
> >>>
> >>>  The reason I need these variables named this way is because I am
> >>>  going to pass them as hidden arguments to an ASP program that writes
> >>>  out a business card. Now it would look funny if the cards had blank
> >>>  lines in them. Yet I need to name the cells in Acrobat specifically
> >>>  for each line on the card. So if a person wants their name, address
> >>>  and email but not there phone or fax, the args passed would go to the
> >>>  top cells.
> >>>
> >>>  Business Card Cells on original card
> >>>
> >>>  ____Name_________(Named spaced1)
> >>>  _____Address1_____(Named spaced2)
> >>>  _____Address2_____(Named spaced3)
> >>>  _____City, State Zip_ (Named spaced4)
> >>>  _____phone________(Named spaced5)
> >>>  _____fax__________(Named spaced6)
> >>>  _____email_________(Named spaced7)
> >>>  _____cell__________(Named spaced8)
> >>>  _____route________(Named spaced9)
> >>>  _____whatever_____(Named spaced10)
> >>>
> >>>  would turn into...
> >>>  ____Name__________(Named spaced1)
> >>>  ______Address1_____(Named spaced2)
> >>>  ______Address2_____(Named spaced3)
> >>>  _____City, State Zip__(Named spaced4)
> >>>  ______email________(Named spaced5)
> >>>  ______(blank)_______(Named spaced6)
> >>>  ______(blank)_______(Named spaced7)
> >>>  ______(blank)_______(Named spaced8)
> >>>  ______(blank)_______(Named spaced9)
> >>>  ______(blank)_______(Named spaced10)
> >>>
> >>>  Is this making sense???
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>  >Another way to do the same thing would be to use the filter tag:
> >>>  >
> >>>  ><@Assign Local$SpacedArray <@ARRAY VALUE="A;B;C; ; ;D;E; ;F;
;G;H;">>
> >>>  >Spaced Array Begins as = <@Var Local$SpacedArray><p>
> >>>  ><@Assign local$SpacedArray <@filter array=local$SpacedArray
> >>>  >expr="len(<@trim str='#1'>)">>
> >>>  >Spaced Array now = <@Var Local$SpacedArray><p>
> >>>  >
> >>>  >Dave Shelley
> >>>  >
> >>>  >-----Original Message-----
> >>>  >From: Wolf, Gene [mailto:[EMAIL PROTECTED]
> >>>  >Sent: Tuesday, July 27, 2004 1:05 PM
> >>>  >To: [EMAIL PROTECTED]
> >>>  >Subject: RE: Witango-Talk: ARRAY??
> >>>  >
> >>>  >    Sure. Here's sample code. I've tested it, it works.
> >>>  >
> >>>  ><@Assign Local$SpacedArray <@ARRAY VALUE="A;B;C; ; ;D;E; ;F;
;G;H;">>
> >>>  >
> >>>  >Spaced Array Begins as = <@Var Local$SpacedArray><p>
> >>>  ><@Assign Local$RowCount <@Numrows Array=Local$SpacedArray>>
> >>>  ><@Assign Local$Ptr 1>
> >>>  >
> >>>  ><@FOR START="1" STOP="<@Var Local$RowCount>">
> >>>  > <@IFEMPTY VALUE="<@Trim Str=<@Var
> >>>  >Local$SpacedArray[<@Currow>,1]>>">
> >>>  > <@ELSE>
> >>
> >>  > > <@Assign Local$SpacedArray[<@Var Local$Ptr>,1] <@Var
> >>
> >>>  >Local$SpacedArray[<@Currow>,1]>>
> >>>  > <@IF EXPR="<@Currow>!=<@Var Local$Ptr>">
> >>>  > <@Assign Local$SpacedArray[<@Currow>,1] ' '>
> >>>  > </@IF>
> >>>  > <@Assign Local$Ptr <@Calc EXPR="<@Var Local$Ptr>+1">>
> >>>  > </@IF>
> >>>  ></@FOR>
> >>>  >Spaced Array now = <@Var Local$SpacedArray><p>
> >>>  ><@Assign Local$Ptr <@Calc EXPR="<@Var Local$Ptr>">>
> >>>  >
> >>>  >
> >>>  ><@Comment>Delete Remaining blank rows in the Array</@Comment>
> >>>  ><@FOR START="<@Var Local$Ptr>" STOP="<@Var Local$RowCount>">
> >>>  > <@Delrows Array=Local$SpacedArray>
> >>>  ></@FOR>
> >>>  >Spaced Array now = <@Var Local$SpacedArray><p>
> >>>  >
> >>>  >
> >>>  >Hope this helps!
> >>>  >
> >>>  >
> >>>  >-----Original Message-----
> >>>  >From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> >>>  >Sent: Tuesday, July 27, 2004 9:50 AM
> >>>  >To: [EMAIL PROTECTED]
> >>>  >Subject: RE: Witango-Talk: ARRAY??
> >>>  >
> >>>  >
> >>>  >Hey Gene,
> >>>  >
> >>>  >I have been trying to wrap my arms around this one. Do you have a
> >>>  >simple example you could show/send me? For some reason the second
> >>>  >loop never counts.
> >>>  >
> >>>  >Also,
> >>>  >
> >>>  >is it possible to do this using the <@for> tag?
> >>>  >
> >>>  >Thanks for any help.
> >>>  >
> >>>  >>May I suggest a solution? Introduce another variable called Ptr.
> >>>  >>Initialize it to one. Walk through your loop testing each element
> >>>  >>for values. For examining array fields for nulls I typically use
> >>>  >><@Trim Str="<@Var...
> >>>  >>
> >>>  >>     Now, if you do NOT find the array element empty increment
> >>> Ptr by
> >>>  >>one. As long as the array elements have valid values Ptr will keep
> >>>  >>pace with your look counter. When the first empty spot is detected
> >>>  >>both counters will be the same.
> >>>  >>
> >>>  >>     At the bottom of the loop you test to see the array element
> >>>  >>pointed to by your loop index is empty. If not, test to see if loop
> >>>  >>index and Ptr are the same. If so, do nothing. If not, assign the
> >>>  >>element pointed at by your loop variable to the location pointed at
> >>>  >>by Ptr and empty the element pointed at by your loop counter. Then
> >>>  >>increment your loop counter and Ptr. When you run across an empty
> >>>  >>cell, with your loop counter, you do not increment Ptr.
> >>>  >>
> >>>  >>     This will collapse all of the empty space out of your array
and
> >>>  >>condense it at the end of your array.
> >>>  >>
> >>>  >>     It is complicated to explain but very easy to do. A small loop
> >>>  >>and a couple of if statements.
> >>>  >>
> >>>  >>-----Original Message-----
> >>>  >>From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]
> >>>  >>Sent: Wednesday, July 21, 2004 4:20 PM
> >>>  >>To: [EMAIL PROTECTED]
> >>>  >>Subject: Witango-Talk: ARRAY??
> >>>  >>
> >>>  >>
> >>>  >>Okay,
> >>>  >>
> >>>  >>I'm tired and crabby and need help. This should be simple, but for
> >>>  >>some reason, I am just not seeing it.
> >>>  >>
> >>>  >>I have variables that I am populating with small amounts of text.
> >>>  >>They are named ...
> >>>  >>
> >>>  >><@VAR lcell1> = test1
> >>>  >><@VAR lcell2> =
> >>>  >><@VAR lcell3> = test3
> >>>  >><@VAR lcell4> = test4
> >>>  >>etc.
> >>>  >>etc.
> >>>  >>etc.
> >>>  >>
> >>>  >>Let's just stop at 4 for now to keep this simple (simple is good!
> >>> Good
> >>>  >simple)
> >>>  >>
> >>>  >>Now I created a loop and a counter that counts up to 4 and I have
> >>>  >>added this in the loop...
> >>>  >>
> >>>  >><@IFEMPTY <@VAR 'lcell<@VAR l_counter>'>>
> >>>  >><@ELSE>
> >>>  >><@ASSIGN NAME="llcell<@VAR l_counter>" VALUE="<@VAR 'lcell<@VAR
> >>>  >l_counter>'>">
> >>>  >></@IF>
> >>>  >>
> >>>  >>And when I display the results I can see the values correctly. It
is
> >>>  >>working as expected BUT I would like to skip the counter on every
> >>>  >><@VAR lcell that is empty. I other words, If <@VAR lcell2> is
empty,
> >>>  >>move the values from <@VAR lcell3> into <@VAR lcell2> and also move
> >>>  >>the values from <@VAR lcell4> into <@VAR lcell3>. Is this making
> >>>  >>sense? I would like to get all the variables named 1, 2, 3, 4 etc.
> >>>  >>with no empty variables between.
> >>>  >>
> >>>  >>The final result should be a list of numbered variable that contain
> >>>  >>no empty variables or empty variables in the end...
> >>>  >>
> >>>  >>Original Variables...
> >>>  >>
> >>>  >><@VAR lcell1> = test1
> >>>  >><@VAR lcell2> =
> >>>  >><@VAR lcell3> = test3
> >>>  >><@VAR lcell4> = test4
> >>>  >>
> >>>  >>Modified Variables
> >>>  >>
> >>>  >  ><@VAR llcell1> = test1
> >>
> >>  > >><@VAR llcell2> = test3
> >>
> >>>  >><@VAR llcell3> = test4
> >>>  >  ><@VAR llcell4> =
> >>>  >>
> >>>  >>Thanks
> >>>  >>
> >>>  >>There's gotta be an easy way to do this
> >>>  >>
> >>>
>>_______________________________________________________________________
> >>>
> >>>  >_
> >>>  >>TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
> >>>
>>_______________________________________________________________________
> >>>
> >>>  >_
> >>>  >>TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
> >>>  >
> >>>
>________________________________________________________________________
> >>>
> >>>  >TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
> >>>
>________________________________________________________________________
> >>>
> >>>  >TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
> >>>  >
> >>>
>________________________________________________________________________
> >>>
> >>>  >TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
> >>>
> >>>
________________________________________________________________________
> >>>
> >>>  TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
> >>>
> >>
________________________________________________________________________
> >> TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
> >>
> >> Content-Type: application/octet-stream;
> >>     name="arraytest.taf"
> >> Content-Disposition: attachment;
> >>     filename="arraytest.taf"
> >>
> >> Attachment converted: MediaBlitz2:arraytest.taf (????/----) (00001610)
> >
> >
> > ________________________________________________________________________
> > TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
> >
>
> ________________________________________________________________________
> TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
>


________________________________________________________________________
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf

Reply via email to