Axton, 

In your 3rd example, 
** On modify with qual: 'TR.Assigned To' != $NULL$ 

What shows up in the log when you use 'Assigned To' in a push fields from 
somewhere else to this record, pushing the value that is already in the 
'Assigned To' field?  If the goal of using a TR value is "to detect a 
change in value", you'll find that the above is true when there is no 
change. 

(And are there any situations where you'd use TR and the goal is something 
other than "to detect a change in field value") 

Thad Esser
Remedy Developer
"Argue for your limitations, and sure enough, they're yours."-- Richard 
Bach



"Axton" <[EMAIL PROTECTED]> 
Sent by: "Action Request System discussion list(ARSList)" 
<arslist@ARSLIST.ORG>
10/04/2007 11:26 AM
Please respond to
arslist@ARSLIST.ORG


To
arslist@ARSLIST.ORG
cc

Subject
Re: Filter Problem






I only see the db call if using DB.  I chopped the log lines so they
are readable in most mail readers.

** On modify with qual: 'Assigned To' != $NULL$

+SE     ARSetEntry -- schema zBug_TableDrag-SampleData entryId 00
UPDATE T1160 SET C4='aasdfaaaaaaa',C5='AGADMIN',C6=1191521727 WHE
OK
COMMIT WORK
-SE               OK
+GE     ARGetEntry -- schema zBug_TableDrag-SampleData entryId 00
SELECT C1,C2,C3,C4,C5,C6,C7,C8,0 FROM T1160 WHERE C1 = '000000000
OK
SELECT entryId,T0,U0,T1,U1,T2,U2,T3,U3,T4,U4 FROM H1160 WHERE ent
OK
-GE               OK


** On modify with qual: 'DB.Assigned To' != $NULL$

+SE     ARSetEntry -- schema zBug_TableDrag-SampleData entryId 00
SELECT C1,C2,C3,C4,C5,C6,C7,C8,0 FROM T1160 WHERE C1 = '000000000
OK
SELECT entryId,T0,U0,T1,U1,T2,U2,T3,U3,T4,U4 FROM H1160 WHERE ent
OK
UPDATE T1160 SET C4='aaasdfaaaaaaa',C5='AGADMIN',C6=1191521782 WH
OK
COMMIT WORK
-SE               OK
+GE     ARGetEntry -- schema zBug_TableDrag-SampleData entryId 00
SELECT C1,C2,C3,C4,C5,C6,C7,C8,0 FROM T1160 WHERE C1 = '000000000
OK
SELECT entryId,T0,U0,T1,U1,T2,U2,T3,U3,T4,U4 FROM H1160 WHERE ent
OK
-GE               OK


** On modify with qual: 'TR.Assigned To' != $NULL$

+SE     ARSetEntry -- schema zBug_TableDrag-SampleData entryId 00
UPDATE T1160 SET C4='aaasdfaaaaaaaa',C5='AGADMIN',C6=1191521833 W
OK
COMMIT WORK
-SE               OK
+GE     ARGetEntry -- schema zBug_TableDrag-SampleData entryId 00
SELECT C1,C2,C3,C4,C5,C6,C7,C8,0 FROM T1160 WHERE C1 = '000000000
OK
SELECT entryId,T0,U0,T1,U1,T2,U2,T3,U3,T4,U4 FROM H1160 WHERE ent
OK
-GE               OK

Axton Grams

On 10/4/07, Misi Mladoniczky <[EMAIL PROTECTED]> wrote:
> Hi,
>
> As the logs show in my 7.0.1 examples, this is usually true.
>
> The only time it is not true is when no filter at all uses
> 'DB.Field'-syntax or 'Field'-syntax. If this is the case, no fetch is
> made, as it is not neccessary.
>
> You could argue that it the code should not retrieve more columns than
> neccessary, but they apparently decided to simplify things. It is better
> to get all fields from the database, even if only one is needed, as it 
is
> likely that more fields are required later.
>
> The other time, where I think the system refrains from the fetch, is 
when
> you have an early filter triggering on ('TR.Goto1000' = "Yes"), and then
> makes a GOTO 1000 action that skips the rest of the filters.
>
> The fetch appears to be done when the first filter is run where the
> DB-data is needed: http://www.rrr.se/tmp/TestAssignedToMostCurrent.html
>
>         Best Regards - Misi, RRR AB, http://www.rrr.se
>
> Products from RRR Scandinavia:
> * RRR|License - Not enough Remedy licenses? Save money by optimizing.
> * RRR|Log - Performance issues or elusive bugs? Analyze your Remedy 
logs.
> * RRR|Translator - Manage and automate your language translations.
> Find these products, and many free tools and utilities, at http://rrr.se
.
>
> > As I recall from Lenny's Performance Tuning class this summer that
> > nothing on the Run If of a Filter causes an additional query of the
> > database.  The database record is retrieved at the start of the
> > processing and used for comparison throughout the process.
> >
> > This is just for the Run If...the action items inside the filters can
> > and do perform additional queries of the database.
> >
> > Stephen
> > Remedy Skilled Professional
> >
> >> >
> >> > --- Thad K Esser <[EMAIL PROTECTED]> wrote:
> >> >
> >> >> Also, it could have a value if the record update is
> >> >> the result of a push
> >> >> fields from somewhere else.  One way to get a handle
> >> >> on this is to run a
> >> >> short SQL log and find the update statements.  If a
> >> >> field is included in
> >> >> the SET clause, the "TR" concept applies, whatever
> >> >> the actual value.
> >> >>
> >> >> My two rules for TR and DB values:
> >> >>         1.  Don't use TR values (DB values are
> >> >> useful & good).
> >> >>         2.  If you need to use a TR value, see rule
> >> >> #1.
> >> >>
> >> >> Thad Esser
> >> >> Remedy Developer
> >> >> "Argue for your limitations, and sure enough,
> >> >> they're yours."-- Richard Bach

***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 ARSlist:"Where the 
Answers Are"

Reply via email to