Hi Yusuf,
Sorry, but I can not verify what you are writing.
I have create a Form with two fields "Cat" and "Value", and created 4 documents:
1. "Cat": 1, "Value": ABC
2. "Cat": 1, "Value": DEF
3. "Cat": 2, "Value": ABC
4. "Cat": 2, "Value": DEF
A view "CatView" with two columns: First Column categorized, field "Cat", second column "Value".
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:viewPanel rows="30" id="viewPanel1">
<xp:this.facets>
<xp:pager partialRefresh="true" layout="Previous Group Next"
xp:key="headerPager" id="pager1">
</xp:pager>
</xp:this.facets>
<xp:this.data>
<xp:dominoView var="view1" viewName="CatView" search="ABC"
categoryFilter="1">
</xp:dominoView>
</xp:this.data>
<xp:viewColumn columnName="Cat" id="viewColumn1">
<xp:viewColumnHeader value="Cat" id="viewColumnHeader1"></xp:viewColumnHeader>
</xp:viewColumn>
<xp:viewColumn columnName="Value" id="viewColumn2">
<xp:viewColumnHeader value="Value" id="viewColumnHeader2"></xp:viewColumnHeader>
</xp:viewColumn>
</xp:viewPanel>
</xp:view>
This shows two entries: "ABC"
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:viewPanel rows="30" id="viewPanel1">
<xp:this.facets>
<xp:pager partialRefresh="true" layout="Previous Group Next"
xp:key="headerPager" id="pager1">
</xp:pager>
</xp:this.facets>
<xp:this.data>
<xp:dominoView var="view1" viewName="CatView" search="ABC"
keys="1">
</xp:dominoView>
</xp:this.data>
<xp:viewColumn columnName="Cat" id="viewColumn1">
<xp:viewColumnHeader value="Cat" id="viewColumnHeader1"></xp:viewColumnHeader>
</xp:viewColumn>
<xp:viewColumn columnName="Value" id="viewColumn2">
<xp:viewColumnHeader value="Value" id="viewColumnHeader2"></xp:viewColumnHeader>
</xp:viewColumn>
</xp:viewPanel>
</xp:view>
This shows two entries: "ABC"
There is no difference, in both cases the categorization gets lost.
But in your code you are searching for the username, maybe this is why the categoryFilter seems to work.
...
<xp:this.categoryFilter><![CDATA[#{javascript:@Name("[CN]",@UserName())}]]></xp:this.categoryFilter>
<xp:this.search><![CDATA[#{javascript:var tmpArray = new Array("");
var cTerms = 0;
tmpArray[cTerms++] = "(FIELD txtInitiatorServiceNo = \"" + @Name("[CN]",@UserName()) + "\")";
...
Am I right?
Sven