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"

