I guys,
I've followed the Content Server Facets and Column API Documentation (https://knowledge.opentext.com/knowledge/llisapi.dll/fetch/2001/15080935/-15106263/15106294/16376487/15386351/18858498/customview.html?func=ll&objId=18858498&objAction=browse&viewType=1) in order to create a custom column and a custom facet. The information that is shown is the user who have a specific permission to the file.I've created the facet and the column and after firing "Rebuild column" and "Rebuild facet" are populated correctly. Now the problem is that If I change the user who have that permission the column and the facet are not updated. To have the correct value I have to rebuild both facet and column.
BTW I'm on CS 16.0.3
Does anyone have any suggestion?
Thank you, R.
Hi Roberto: The Rebuild column and Rebuild facet operations are typically meant for the initial data population. You must still make calls to the appropriate functions in $LLIAPI.ColumnUtil and $LLIAPI.FacetUtil to insert, update, or delete values when your data changes.
$LLIAPI.ColumnUtil
$LLIAPI.FacetUtil
If you search through LLIAPI for ColumnUtil.SetColumnValue or ColumnUtil.DeleteColumnValue you'll find many examples where this is done.
LLIAPI
ColumnUtil.SetColumnValue
ColumnUtil.DeleteColumnValue
Hi Roberto,
a valid alternative for creating a datasource for a custom column is to create a Content Script backed datasource. In order to do so, you have just to create a Content Script into "Content Script Volume:CSSource", the new datasource will be immediately available among the others in the custom colum creation dialog.The CSSource script will be used for performing initial build (or subsequent rebuild).To keep up-to-date your columns you can leverage: Content Script synch callbacks (scripts stored under "Content Script Volume:CSSynchEvents"), Content Script asynch callbacks (scripts stored under "Content Script Volume:CSEvents"), or scheduled Content Scripts.
The APIs you should use are:
docman.updateColumnValue(CSNode node, String dataSourceIdentifier, String columnValue) //for updating non CS backed columsdocman.updateContentScriptColumnValue(CSNode node, String scriptName, String columnValue) //for updating CS backed colums
Ciao
Thank you Chris, you are right. This is well described in the documentation.