Hi again Wolfgang:<div><br></div><div>Thank you for your quick answer. getFactHandle is the method I needed.</div><div><br></div><div>Concerning the second question, I&#39;m using Drools 5.1.1 and yes, I imported AlarmFact. Below you can find the relevant lines of the drl file, in which the &#39;real name&#39; of AlarmFact is MDSVHechoAlarma:</div>
<div><br></div><div><div>#created on: 14-mar-2011</div><div>package es.simcasva.alarmas.rules</div><div><br></div><div>#list any import classes here.</div><div><br></div><div>//......</div><div>import es.simcasva.alarmas.src.MDSVHechoAlarma;</div>
<div><div>//......</div></div><div><br></div><div><br></div><div><br></div><div>#declare any global variables here</div><div><br></div><div><div>//......</div></div><div><br></div><div>query &quot;existe Alarma&quot;  (MDSVHechoAlarma referencia)</div>
<div>    $alarma : MDSVHechoAlarma(   iIdAlarma == referencia.iIdAlarma, </div><div>                   strAgrup1 == referencia.strAgrup1,</div><div>                   strAgrup2 == referencia.strAgrup2,</div><div>                   strAgrup3 == referencia.strAgrup3,</div>
<div>                   strAgrup4 == referencia.strAgrup4,</div><div>                   strAgrup5 == referencia.strAgrup5,</div><div>                   strAgrup6 == referencia.strAgrup6,</div><div>                   strAgrup7 == referencia.strAgrup7,</div>
<div>                   strAgrup8 == referencia.strAgrup8,</div><div>                   strAgrup9 == referencia.strAgrup9,</div><div>                   strAgrup10 == referencia.strAgrup10</div><div>                   )</div>
<div><br></div><div>end</div><div><br></div><div>The reported errors are:</div><div><br></div><div><div>Description<span class="Apple-tab-span" style="white-space:pre">        </span>Resource<span class="Apple-tab-span" style="white-space:pre">        </span>Path<span class="Apple-tab-span" style="white-space:pre">        </span>Location<span class="Apple-tab-span" style="white-space:pre">        </span>Type</div>
<div>BuildError: Not possible to directly access the property &#39;iIdAlarma&#39; of declaration &#39;referencia&#39; since it is not a pattern<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>Unknown<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Not possible to directly access the property &#39;strAgrup1&#39; of declaration &#39;referencia&#39; since it is not a pattern<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>Unknown<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Not possible to directly access the property &#39;strAgrup10&#39; of declaration &#39;referencia&#39; since it is not a pattern<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>Unknown<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Not possible to directly access the property &#39;strAgrup2&#39; of declaration &#39;referencia&#39; since it is not a pattern<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>Unknown<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Not possible to directly access the property &#39;strAgrup3&#39; of declaration &#39;referencia&#39; since it is not a pattern<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>Unknown<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Not possible to directly access the property &#39;strAgrup4&#39; of declaration &#39;referencia&#39; since it is not a pattern<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>Unknown<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Not possible to directly access the property &#39;strAgrup5&#39; of declaration &#39;referencia&#39; since it is not a pattern<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>Unknown<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Not possible to directly access the property &#39;strAgrup6&#39; of declaration &#39;referencia&#39; since it is not a pattern<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>Unknown<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Not possible to directly access the property &#39;strAgrup7&#39; of declaration &#39;referencia&#39; since it is not a pattern<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>Unknown<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Not possible to directly access the property &#39;strAgrup8&#39; of declaration &#39;referencia&#39; since it is not a pattern<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>Unknown<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Not possible to directly access the property &#39;strAgrup9&#39; of declaration &#39;referencia&#39; since it is not a pattern<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>Unknown<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Unable to create restriction &#39;[QualifiedIndentifierRestr: == referencia.iIdAlarma ]&#39; for field &#39;iIdAlarma&#39; in the rule &#39;existe Alarma&#39;<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>line 185<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Unable to create restriction &#39;[QualifiedIndentifierRestr: == referencia.strAgrup1 ]&#39; for field &#39;strAgrup1&#39; in the rule &#39;existe Alarma&#39;<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>line 186<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Unable to create restriction &#39;[QualifiedIndentifierRestr: == referencia.strAgrup10 ]&#39; for field &#39;strAgrup10&#39; in the rule &#39;existe Alarma&#39;<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>line 195<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Unable to create restriction &#39;[QualifiedIndentifierRestr: == referencia.strAgrup2 ]&#39; for field &#39;strAgrup2&#39; in the rule &#39;existe Alarma&#39;<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>line 187<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Unable to create restriction &#39;[QualifiedIndentifierRestr: == referencia.strAgrup3 ]&#39; for field &#39;strAgrup3&#39; in the rule &#39;existe Alarma&#39;<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>line 188<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Unable to create restriction &#39;[QualifiedIndentifierRestr: == referencia.strAgrup4 ]&#39; for field &#39;strAgrup4&#39; in the rule &#39;existe Alarma&#39;<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>line 189<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Unable to create restriction &#39;[QualifiedIndentifierRestr: == referencia.strAgrup5 ]&#39; for field &#39;strAgrup5&#39; in the rule &#39;existe Alarma&#39;<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>line 190<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Unable to create restriction &#39;[QualifiedIndentifierRestr: == referencia.strAgrup6 ]&#39; for field &#39;strAgrup6&#39; in the rule &#39;existe Alarma&#39;<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>line 191<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Unable to create restriction &#39;[QualifiedIndentifierRestr: == referencia.strAgrup7 ]&#39; for field &#39;strAgrup7&#39; in the rule &#39;existe Alarma&#39;<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>line 192<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Unable to create restriction &#39;[QualifiedIndentifierRestr: == referencia.strAgrup8 ]&#39; for field &#39;strAgrup8&#39; in the rule &#39;existe Alarma&#39;<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>line 193<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
<div>BuildError: Unable to create restriction &#39;[QualifiedIndentifierRestr: == referencia.strAgrup9 ]&#39; for field &#39;strAgrup9&#39; in the rule &#39;existe Alarma&#39;<span class="Apple-tab-span" style="white-space:pre">        </span>AlarmaReglasGenerales.drl<span class="Apple-tab-span" style="white-space:pre">        </span>/aitor/es/simcasva/alarmas/rules<span class="Apple-tab-span" style="white-space:pre">        </span>line 194<span class="Apple-tab-span" style="white-space:pre">        </span>Drools Error</div>
</div><div><br></div>Thank you very much for your time, Wolfgang.</div><div><br></div><div>Best regards,</div><div><br></div><div>Manuel Ortiz.</div><div><br></div><div><br><div class="gmail_quote">2011/4/29 Wolfgang Laun <span dir="ltr">&lt;<a href="mailto:wolfgang.laun@gmail.com">wolfgang.laun@gmail.com</a>&gt;</span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">You can call<br>  FactHandle fh = kSession.getFactHandle( factObj );<br><br><br>   query &quot;alarmExists&quot;  (AlarmFact key)<br>
should work in 5.1.1 and 5.2. Did you import AlarmFact in the DRL? Otherwise, what message are you getting in which version?<br>
<br>-W<br><br><div class="gmail_quote"><div><div></div><div class="h5">2011/4/29 Manuel Ortiz <span dir="ltr">&lt;<a href="mailto:manuel.ortizramos@gmail.com" target="_blank">manuel.ortizramos@gmail.com</a>&gt;</span><br>
</div></div><blockquote class="gmail_quote" style="border-left:1px solid rgb(204, 204, 204);margin:0pt 0pt 0pt 0.8ex;padding-left:1ex"><div><div></div><div class="h5">
Hello everybody:<div><br></div><div>I have two question related to queries:</div><div><br></div><div>First one, the one in the subject, I have a query which retrieves facts which have to be modified and updated in working memory. I&#39;ve seen that the StatefulKnowledgeSession.update() method has the fact handle as input. Is it possible to set the fact handle to null? If it isn&#39;t, how can I get the fact handle using the fact retrieved with the query?</div>


<div><br></div><div>Second one, related to writing, I though of parameterizing the query using the fact pattern, something like this, </div><div><br></div><div><div>query &quot;alarmExists&quot;  (AlarmFact key)</div><div>


    $alarm : AlarmFact(key1 == key.key1,</div><div>                   key2 == key.key2,</div><div>                   key3 == key.key3</div><div>                   )</div><div><br></div><div>end</div></div><div><br></div>

<div>
<br></div><div><br></div><div>but the rule compiler doesn&#39;t accept this sintax. Is it a requirement that query parameters are basic java types or is there a way to write this query using more complex Object parameters?</div>


<div><br></div><div>Thank you for your time.</div><div><br></div><div>Best Regards,</div><div><br></div><font color="#888888"><div>Manuel Ortiz.</div><div><br></div>
</font><br></div></div>_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org" target="_blank">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
<br></blockquote></div><br>
<br>_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
<br></blockquote></div><br></div>