This one is almost there.  It will break when you have values in the
table that are substrings of other rows or values in the table that
are the same value as other rows.

Try adding this to Thad's response:
 - Add a hidden column in the table for the instanceid for both tables
 - Store the list of values in the char field as described (but store
the instanceid for each record, not a text value);
 - create a new display-only field to store an external qual (qualfield)
 - parse the semi-colon separated list of values and generate a
qualification, e.g.:
    '179' = "guid1" OR '179' = "guid2" ...

Set the left table to use External Qual: NOT(EXTERNAL($qualfield$))
Set the right table to use External Qual: (EXTERNAL($qualfield$))

You will need to set the qualfield to "1=1" if it gets set null.

The one limitation is that the qual can only be 4k chars on Oracle.
Not sure of where clause limits with SQL Server and others.  Assuming
a 30 char instanceid and the overhead of the rest of the qualification
(14 chars), you will be limited to a selection of ~90 items.

If ARS supported using IN, the list could be longer at ~121 items.

You could opt to use the entry_id instead of the instanceid, which
would buy you more selections (137, or 222 if ARS supported IN sql
token), the key here is to use a unique value to represent the
selection of each record.  Failure to adhere to this will result in
breakage at some point.

Axton Grams

The opinions, statements, and/or suggested courses of action expressed
in this E-mail do not necessarily reflect those of BMC Software, Inc.
My voluntary participation in this forum is not intended to convey a
role as a spokesperson, liaison or public relations representative for
BMC Software, Inc.

On Mon, Jun 8, 2009 at 3:22 PM, Thad K Esser<tkes...@regence.com> wrote:
> Curt,
>
> You have two tables:
> Table A is on the left, with "A.Value" referring to what's showing in the
> list.
> Table B is on the right, with "B.Value" as the values.
>
> Create an unlimited length, temporary character field (zTmpChar).
>
> Any time Table B gets changed (don't forget window open if appropriate),
> call a guide that walks the B table (make sure the table is refreshed
> first), and sets the zTmpChar field to a list of the B.Values.  Use
> whatever you want as separators, I'll use semi-colons here (if you make
> sure the list starts and ends with semi-colons, things are easier).  In
> your screenshot, after the table walk, the zTmpChar field would look like:
> ;eBiz Catalog;eBiz eCommerce;Engineering Tools;
>
> Set the table qualification on Table A to be:
> NOT($zTmpChar$ like "%;" + 'A.Value' + ";%")
>
> Refresh Table A.
>
> The "tricky part", if you will, is to put the zTmpChar field to the left in
> the LIKE clause, and have the Table A value on the right.
>
> Its been a while since I did this and I don't have access to that code
> anymore, so hopefully I remembered enough to be helpful.
>
> Thad Esser
> Remedy Developer
> "Did you ever wonder why we had to run for shelter when the promise of a
> brave new world unfurled beneath a clear blue sky?" - Pink Floyd
>
>
> |------------>
> | From:      |
> |------------>
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
>  |"Schryver, Curt" <cschry...@tycoelectronics.com>                            
>                                                                       |
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
> |------------>
> | To:        |
> |------------>
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
>  |arslist@ARSLIST.ORG                                                         
>                                                                       |
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
> |------------>
> | Date:      |
> |------------>
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
>  |06/08/2009 12:28 PM                                                         
>                                                                       |
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
> |------------>
> | Subject:   |
> |------------>
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
>  |Creating the "two tables with the add/remove buttons in between to swap 
> data between tables" effect                                               |
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
> |------------>
> | Sent by:   |
> |------------>
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
>  |"Action Request System discussion list(ARSList)" <arslist@ARSLIST.ORG>      
>                                                                       |
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
>
>
>
>
>
> **
> Has anyone come up with a means to replicate this functionality in AR? The
> list on the left needs to be dynamic. Once an item has been selected and
> "moved" to the right, it should no longer appear in the left side.  See
> image for a better example of what I mean.
>
> http://arsystem.comxa.com/2tables.jpg
>
> ARSystem 7.0.01 patch 3
> Windows 2003 Server
> Oracle 10i
>
> Thanks,
>  Curt
>
> Curt A. Schryver
> Action Request System Administrator
> Tyco Electronics
> 100 AMP Drive
> MS 161-043
> Harrisburg, PA 17105
> 717-810-2109 tel
> 717-810-2124 fax
> cschry...@tycoelectronics.com
>
>
> _Platinum Sponsor: rmisoluti...@verizon.net ARSlist: "Where the Answers
> Are"_
>
>
>
> *IMPORTANT NOTICE: This communication, including any attachment, contains 
> information that may be confidential or privileged, and is intended solely 
> for the entity or individual to whom it is addressed.  If you are not the 
> intended recipient, you should delete this message and are hereby notified 
> that any disclosure, copying, or distribution of this message is strictly 
> prohibited.  Nothing in this email, including any attachment, is intended to 
> be a legally binding signature.
> *
>
> _______________________________________________________________________________
> UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
> Platinum Sponsor:rmisoluti...@verizon.net ARSlist: "Where the Answers Are"
>

_______________________________________________________________________________
UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
Platinum Sponsor:rmisoluti...@verizon.net ARSlist: "Where the Answers Are"

Reply via email to