Removing Values from the Network Address Field
Novell Cool Solutions: Tip
By Lothar Haeger
Reader Rating 
|
Digg This -
Slashdot This
Posted: 30 May 2007 |
Problem
A Forum reader recently asked:
"The "Network Address" field is usually cleared of the previous value, but it is not reliably removed. I'm thinking about using the WorkOrder driver to schedule a <remove-all-values/> for that particular attribute to happen some number of hours after they log in. I was thinking it'd be better if I could schedule it for some number of minutes or hours after they log out."
And here's the response from Lothar Haeger ...
Solution
Have you tried running a regular query for network addresses that have an attribute value timestamp older than xxx hours? You could use something like this:
<do-set-local-variable name="ExpireBefore" scope="policy">
<arg-string>
<token-xpath expression="round(jdate:getTime(jdate:new()) div 1000)-~GracePeriod~"/>
</arg-string>
</do-set-local-variable>
<do-for-each>
<arg-node-set>
<token-xpath expression='query:search($srcQueryProcessor, "~WksSearchScope~","","~WksSearchBase~","Workstation","Network Address","*","Network Address")[attr[@attr-name="Network Address"]/value/@timestamp<$ExpireBefore]'/>
</arg-node-set>
<arg-actions>
<do-clear-src-attr-value name="Network Address">
<arg-dn>
<token-xpath expression="$current-node/@src-dn"/>
</arg-dn>
</do-clear-src-attr-value>
</arg-actions>
</do-for-each>
Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com
