<h1>Dynamic Folders</h1>
<p>In their life cycle, contracts go through different states and statuses. The objective of contract monitoring is to keep track of contracts and to ensure fast access to them. </p>
<p>Dynamic folders help here and provide different views of contracts. The standard solution provides searches for contracts based on their <span
style='font-weight:bold;font-style:italic'>relation</span>, <span
style='font-weight:bold;font-style:italic'>deadlines</span>, <span
style='font-weight:bold;font-style:italic'>risk classification</span>, <span
style='font-weight:bold;font-style:italic'>status</span>, and their <span
style='font-weight:bold;font-style:italic'>state</span>.</p>
<p>{@img img1.png}</p>
<h2>Dynamic folders as a view filter</h2>
<p>If a dynamic folder is saved as a<span
style='font-weight:bold;font-style:italic'> view filter</span>, you can display the number of entries contained in the client.</p>
<p>The view filter can be configured in the tile settings (ELO&nbsp;10). In the options, you can define whether to <span
style='font-weight:bold;font-style:italic'>pin view filters to the navigation bar </span> or show the <span
style='font-weight:bold;font-style:italic'>number of entries for a filter</span>.</p>
<p>{@img img3.png}</p>
<h2>Creating custom folders</h2>
<p>Custom views can be created using the <span
style='font-weight:bold;font-style:italic'>Create dynamic folder</span> function offered by the ELO Java Client search. </p>
<p><span class="tag_warning">When adding contracts, make sure the contracts are identified by their object type (index field <span
style='font-weight:bold;font-style:italic'>SOL_TYPE = CONTRACT</span>). For multilingual environments, you should also identify the status by its prefix. (S* instead of S - concluded)</span></p>
<p><span class="tag_important">Starting with ELO version 10.1, you can perform relative date range searches (starting from the current day), for example for contracts from the past 30 days. The ELO Indexserver supports this function starting with version 9.3.</span></p>
<p><span
style='font-weight:bold'>Creating relative date ranges with ELO 10 or lower</span></p>
<p>Relative date ranges can be created manually for ELO 9.3 and ELO 10. For this, you have to create a form search that contains all required criteria. After you have saved this form as a dynamic folder, the extra text contains a JSON search definition for the Indexserver.</p>
<p>Information on the structure of date searches can be found in the version history and Indexserver JavaDoc. The ObjKey data object has to be modified.</p>
<pre><code>&quot;data&quot;:[&quot;+0000-00-00...+0000-00-30&quot;]
</code></pre>
<p>The entire content of the extra text (here, for <span
style='font-weight:bold;font-style:italic'>contracts expiring in the next 30 days</span>) then looks as follows.</p>
<pre><code>!=JSON10{&quot;findByIndex&quot;:{&quot;delDateIso&quot;:&quot;&quot;,&quot;kind&quot;:&quot;&quot;,&quot;maskId&quot;:&quot;&quot;,&quot;exactName&quot;:false,&quot;acl&quot;:&quot;&quot;,&quot;pathId&quot;:&quot;&quot;,&quot;objKeys&quot;:[
{&quot;data&quot;:[&quot;CONTRACT&quot;],&quot;name&quot;:&quot;SOL_TYPE&quot;,&quot;objId&quot;:0,&quot;id&quot;:0,&quot;clazz&quot;:&quot;de.elo.ix.client.ObjKey&quot;},
{&quot;data&quot;:[&quot;+0000-00-30...+0000-00-00&quot;],&quot;name&quot;:&quot;NEXT_POSSIBLE_TERMINATION&quot;,&quot;objId&quot;:0,&quot;id&quot;:0,&quot;clazz&quot;:&quot;de.elo.ix.client.ObjKey&quot;}, 
{&quot;data&quot;:[&quot;CONTRACT&quot;],&quot;name&quot;:&quot;SOL_TYPE&quot;,&quot;objId&quot;:0,&quot;id&quot;:0,&quot;clazz&quot;:&quot;de.elo.ix.client.ObjKey&quot;},
{&quot;data&quot;:[&quot;S*&quot;],&quot;name&quot;:&quot;CONTRACT_STATUS&quot;,&quot;objId&quot;:0,&quot;id&quot;:0,&quot;clazz&quot;:&quot;de.elo.ix.client.ObjKey&quot;}],
&quot;ownerId&quot;:&quot;&quot;,&quot;xDateIso&quot;:&quot;&quot;,&quot;iDateIso&quot;:&quot;&quot;,&quot;name&quot;:&quot;&quot;,&quot;clazz&quot;:&quot;de.elo.ix.client.FindByIndex&quot;,&quot;desc&quot;:&quot;&quot;},&quot;clazz&quot;:&quot;de.elo.ix.client.FindInfo&quot;,&quot;findOptions&quot;:{&quot;searchLifetimeSeconds&quot;:0,&quot;escapeChar&quot;:&quot;&quot;,&quot;evalCount&quot;:false,&quot;searchMode&quot;:{&quot;_bs&quot;:[0,0,0,0],&quot;clazz&quot;:&quot;de.elo.ix.client.SearchModeZ&quot;},&quot;wildcards&quot;:&quot;&quot;,&quot;orderBy&quot;:&quot;&quot;,&quot;onlyDeleted&quot;:false,&quot;lockZ&quot;:{&quot;_bs&quot;:[0,0,0,0],&quot;clazz&quot;:&quot;de.elo.ix.client.LockZ&quot;},&quot;totalCount&quot;:0,&quot;TStamp&quot;:&quot;&quot;,&quot;searchId&quot;:&quot;&quot;,&quot;rangeDelimiter&quot;:&quot;...&quot;,&quot;reserved&quot;:&quot;0&quot;,&quot;sortOrder&quot;:1005,&quot;excludeSummary&quot;:true,&quot;timeoutSeconds&quot;:0,&quot;clazz&quot;:&quot;de.elo.ix.client.FindOptions&quot;,&quot;inclDeleted&quot;:false}}
</code></pre>
