cancel
Showing results for 
Search instead for 
Did you mean: 

COME SI CREA UNA DATALIST ENTRY VIA JAVASCRIPT CODE

marcello_modica
Champ in-the-making
Champ in-the-making
Ho una rule che scatena questo script quando viene inserita una folder. Vorrei creare una nuova voce nella datalist. DAl debugger sembra tutto corretto ma nulla da fare….la datalist resta vuota.

Per creare la datalist custom ho utilizzato i seguenti passaggi operando su questi due file: share-datalist-form-config.xml e datalistModel.xml

Poi questo è lo script:
<javascript>

/*Creo una nuova datalist quando entra nella cartella RNC approvati*/
var futureDate = new Date();
futureDate.setDate(futureDate.getDate() + 7);
var currentDate = new Date();
var RRList = search.findNode("workspace://SpacesStore/3d2e1414-b570-4369-bc83-14185d1e7c8f");
var RECLAMO = RRList.createNode(null, "dl:RegistroReclami");
RECLAMO.properties["dl:RRID"] = "Florian";  //NUMERO DI RNC
RECLAMO.properties["dl:RRCliente"] = "Maul";
RECLAMO.properties["dl:RRComments"] = "info@fme.de";
RECLAMO.properties["dl:RRStatus"] = "fme AG";
RECLAMO.properties["dl:RRPriority"] = "Normal";
RECLAMO.properties["dl:RRDueDate"] = futureDate;
RECLAMO.assocs["cm:attachments"] = null;


RECLAMO.save();
logger.log("Created new contact: " + RECLAMO.nodeRef);

</javascript>
1 REPLY 1

openpj
Elite Collaborator
Elite Collaborator
Hai provato a seguire il wiki?

http://wiki.alfresco.com/wiki/JavaScript_API_Cookbook#Create_and_Assign_a_New_Datalist_Item

A quanto pare vedo che l'unica differenza è la creazione dell'istanza di associazione:


var futureDate = new Date();
futureDate.setDate(futureDate.getDate() + 7);
var currentDate = new Date();
var testList = companyhome.childByNamePath("Sites/sitenamegoeshere/dataLists/b2c74e68-1ccf-494e-83a6-b36049d2607a");
   // note: no error checking, or seeing if dataLists or this particular datalist even exists
var testEntry = testList.createNode(null, "dl:task");
testEntry.properties["cm:title"] = document.name;
testEntry.properties["cm:description"] = document.name;
testEntry.properties["dl:ganttStartDate"] = currentDate;
testEntry.properties["dl:ganttEndDate"] = futureDate;
testEntry.properties["dl:taskPriority"] = "High";
testEntry.properties["dl:taskStatus"] = "Not Started";
testEntry.save();
testEntry.createAssociation(people.getPerson("assigneeusername"),"dl:taskAssignee");