Right you are.  Some days the brain doesn't work as good as others.  I
tend to (always) go for the options that should never break.

Axton

On Mon, Jun 8, 2009 at 4:40 PM, Thad K Esser<[email protected]> wrote:
> I agree that InstanceIDs would be better, however my code wouldn't break
> unless the values themselves had semi-colons in them.
>
> ;eBiz;
> wouldn't overlap
> ;eBiz eCommerce;
> (note the semicolons at the beginning and ending of each value in the list
> - as well the role they play in the qualification).
>
> But yeah, use the instance ids if you have them available (or make 'em
> available).
>
> 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:      |
> |------------>
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
>  |Axton <[email protected]>                                               
>                                                                       |
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
> |------------>
> | To:        |
> |------------>
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
>  |[email protected]                                                         
>                                                                       |
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
> |------------>
> | Date:      |
> |------------>
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
>  |06/08/2009 02:27 PM                                                         
>                                                                       |
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
> |------------>
> | Subject:   |
> |------------>
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
>  |Re: 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)" <[email protected]>      
>                                                                       |
>  >--------------------------------------------------------------------------------------------------------------------------------------------------|
>
>
>
>
>
> 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<[email protected]> 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" <[email protected]>
> |
>>
>>--------------------------------------------------------------------------------------------------------------------------------------------------|
>
>> |------------>
>> | To:        |
>> |------------>
>>
>>--------------------------------------------------------------------------------------------------------------------------------------------------|
>
>>  |[email protected]
> |
>>
>>--------------------------------------------------------------------------------------------------------------------------------------------------|
>
>> |------------>
>> | 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)" <[email protected]>
> |
>>
>>--------------------------------------------------------------------------------------------------------------------------------------------------|
>
>>
>>
>>
>>
>>
>> **
>> 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
>> [email protected]
>>
>>
>> _Platinum Sponsor: [email protected] 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:[email protected] ARSlist: "Where the Answers
> Are"
>>
>
> _______________________________________________________________________________
>
> UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
> Platinum Sponsor:[email protected] 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:[email protected] ARSlist: "Where the Answers Are"
>

_______________________________________________________________________________
UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
Platinum Sponsor:[email protected] ARSlist: "Where the Answers Are"

Reply via email to