cancel
Showing results for 
Search instead for 
Did you mean: 

MultiValue props config

7joeblack8
Champ in-the-making
Champ in-the-making
Hi there!


i recently made up a model, firstly with usual properties and then i turned one of then in a multivalue one.

At that change WorkDesk stopped to work when i click the search button, it gaves error.

Is there any special config for the SearchTemplate.xml ?

thanks
5 REPLIES 5

scouil
Star Contributor
Star Contributor
The problem is that you reuse the same property and affect it a different type (a multivalue property isn't stored as a simple value one).
Try renaming your property to something different and it should go back to normal.

7joeblack8
Champ in-the-making
Champ in-the-making
…mmm…not sure. The cmis query works via WorkBench…

actually the error is on the translate of the array cmis query operator wich doesn't recognize my locale…:

<javascript> LOG.error("OwCSQLCProcessor.createLiteral : Array literals are not valid. Found array value for " + criteria_p.getClassName() + " with operator \"" + OwSearchOperator.getOperatorDisplayString(Locale.ENGLISH, criteria_p.getOperator())
                    + "\" .");</javascript>

Locale.ENGLISH <—-this piece is wrong…

deko
Star Contributor
Star Contributor
I dont think that the locale is the issue. Searching for Multivalue properties works great with Workdesk, the only thing is that you are limited to some operators for them only. See following example for searching for different multivalues of a property "FSmiley Surprisedwd:dossier.owd:knowledge":


<where>

      <in>
         <whereprop editproperty="editable" symname="F:owd:dossier.owd:knowledge" />
      </in>
                   
                <!– Following operators can be used for multivalue fields –>
                <!–
                <notin>
                        <whereprop editproperty="editable" symname="F:owd:dossier.owd:knowledge" />
                </notin>
                <isin>
                        <whereprop editproperty="editable" symname="F:owd:dossier.owd:knowledge" />
                </isin>
                <isnotin>
                        <whereprop editproperty="editable" symname="F:owd:dossier.owd:knowledge" />
                </isnotin>
                –>

</where>

The above example is also part of the HR scenario as part of Workdesk community. Hope this pointed it out and you are not getting errors any more. Have a great weekend!

d_evil
Champ in-the-making
Champ in-the-making
Hi 7joeblack8,

the LOG entries are always in english, so that should not be the issue.
Maybe you now need to change the operator itself, since the type of the property changed from single to multi value.

One thing you should know, is that even if the OpenCMIS Workbench query is working fine,
the workdesk does additional checks on property type and query operator. You can find a lot of extension for the CMIS-query in alfresco which is not part of the CMIS spec itself.

Hope that helps a bit.

7joeblack8
Champ in-the-making
Champ in-the-making
it worked!

yeah it was a log entry locale…i took too many hour in front o my pc obviously.

It still gives me error on <literal> tag…and i was fighting with CSQLProcessor class…but the hint of Deko is absolutely right, and (without literal…wich anyways is not so important here) it works like a charm!