Previously Tecnoteca wrote:
Mi sorge un dubbio: per quel processo è stato usato il template generato da CMDBuild oppure è stato creato da TWE?
Inoltre la definizione corretta del controllo visuale linkCards è la seguente:
ClassName="NomeClasse"
ButtonLabel="Seleziona Classe"
Required=1
ListaOggetti
Infine non è necessario definire il processo di tipo public o lo start automatico dell'attività.
Paolo
Salve,
innanzitutto grazie per l'aiuto.
Il processo è stato creato all'interno di CMDBuild ed esportato tramite il pulsante "Scarica template" (nel TAB XPDL). In seguito ho aggiunto l'attività linkCards (utilizzando la definizione corretta fornita nella precedente risposta) e ho collegato tale attività agli elementi Start/End utilizzando delle transizioni di tipo "Unconditional". Il passo finale è stato l'import in cmdbuild del file xpdl per il processo creato (lasciando unchecked la voce "Fermabile dall'utente"). Ho evitato di dichiarare il processo public e di esplicitare il tipo di avvio dell'attività linkCards.
Per l'avvio del processo sono passato nel modulo Gestione Dati e ho selezionato il processo di interesse, quindi ho utilizzato il tasto di avvio del processo selezionato. L'errore è sempre lo stesso. Come informazione aggiuntiva posso dire che nella command prompt associata all'istanza di cmdbuild compare il seguente messaggio:
...
INFO:server startup in XXX ms
WAPI endpoint port requested, url: http://localhost:8200/shark
register custom cmdbuild types for shark webservices ...
Per completezza di seguito riporto l'intero xpdl del processo modificato all'interno di TWE
<WorkflowProcess Id="Process_testselezione" Name="Process_testselezione">
<ProcessHeader>
<Created>2010-12-30 09:56:56</Created>
</ProcessHeader>
<DataFields>
<DataField Id="ProcessId" IsArray="FALSE" Name="ProcessId">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</DataField>
<DataField Id="ProcessClass" IsArray="FALSE" Name="ProcessClass">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</DataField>
<DataField Id="ProcessCode" IsArray="FALSE" Name="ProcessCode">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</DataField>
<DataField Id="ActivityDescription" IsArray="FALSE" Name="ActivityDescription">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</DataField>
<DataField Id="Code" IsArray="FALSE" Name="Code">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</DataField>
<DataField Id="Description" IsArray="FALSE" Name="Description">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</DataField>
<DataField Id="FlowStatus" IsArray="FALSE" Name="FlowStatus">
<DataType>
<DeclaredType Id="Lookup"/>
</DataType>
</DataField>
<DataField Id="Notes" IsArray="FALSE" Name="Notes">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</DataField>
<DataField Id="Priority" IsArray="FALSE" Name="Priority">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</DataField>
<DataField Id="ListaOggetti" IsArray="FALSE" Name="ListaOggetti">
<DataType>
<DeclaredType Id="References"/>
</DataType>
</DataField>
</DataFields>
<Participants>
<Participant Id="System" Name="System">
<ParticipantType Type="SYSTEM"/>
</Participant>
<Participant Id="SuperUser" Name="SuperUser">
<ParticipantType Type="ROLE"/>
</Participant>
<Participant Id="GestioneTecnica" Name="GestioneTecnica">
<ParticipantType Type="ROLE"/>
</Participant>
<Participant Id="GestioneAmministrativa" Name="GestioneAmministrativa">
<ParticipantType Type="ROLE"/>
</Participant>
</Participants>
<Applications>
<Application Id="boolCopy" Name="boolCopy">
<Description>copy a boolean into another</Description>
<FormalParameters>
<FormalParameter Id="From" Index="From" Mode="IN">
<DataType>
<BasicType Type="BOOLEAN"/>
</DataType>
</FormalParameter>
<FormalParameter Id="To" Index="To" Mode="OUT">
<DataType>
<BasicType Type="BOOLEAN"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="To = new java.lang.Boolean(From.booleanValue());"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="boolToString" Name="boolToString">
<Description>convert a Bool to a String</Description>
<FormalParameters>
<FormalParameter Id="InputBool" Index="InputBool" Mode="IN">
<DataType>
<BasicType Type="BOOLEAN"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputString" Index="OutputString" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputString = String.valueOf(InputBool);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="clearIterator" Name="clearIterator">
<Description>clear an iterator object (set Array to null, HasNext to false and Index to 0)</Description>
<FormalParameters>
<FormalParameter Id="Array" Index="Array" Mode="INOUT">
<DataType>
<DeclaredType Id="References"/>
</DataType>
</FormalParameter>
<FormalParameter Id="HasNext" Index="HasNext" Mode="INOUT">
<DataType>
<BasicType Type="BOOLEAN"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Index" Index="Index" Mode="INOUT">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="Array=null; Index=0; HasNext=false;"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="clearLookup" Name="clearLookup">
<Description>clear a lookup object (set id = -1)</Description>
<FormalParameters>
<FormalParameter Id="Lookup" Index="Lookup" Mode="IN">
<DataType>
<DeclaredType Id="Lookup"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="Lookup.id = -1;"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="clearReference" Name="clearReference">
<Description>clear a reference object (set id = -1)</Description>
<FormalParameters>
<FormalParameter Id="Ref" Index="Ref" Mode="IN">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="Ref.id = -1;"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="concat" Name="concat">
<Description>concatenate 2 strings</Description>
<FormalParameters>
<FormalParameter Id="InputString1" Index="InputString1" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString2" Index="InputString2" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputString" Index="OutputString" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputString = InputString1.concat(InputString2);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="concat3" Name="concat3">
<Description>concatenate 3 strings</Description>
<FormalParameters>
<FormalParameter Id="InputString1" Index="InputString1" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString2" Index="InputString2" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString3" Index="InputString3" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputString" Index="OutputString" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputString = InputString1.concat(InputString2).concat(InputString3);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="concat4" Name="concat4">
<Description>concatenate 4 strings</Description>
<FormalParameters>
<FormalParameter Id="InputString1" Index="InputString1" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString2" Index="InputString2" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString3" Index="InputString3" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString4" Index="InputString4" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputString" Index="OutputString" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputString = InputString1.concat(InputString2).concat(InputString3).concat(InputString4);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="concat5" Name="concat5">
<Description>concatenate 5 strings</Description>
<FormalParameters>
<FormalParameter Id="InputString1" Index="InputString1" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString2" Index="InputString2" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString3" Index="InputString3" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString4" Index="InputString4" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString5" Index="InputString5" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputString" Index="OutputString" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputString = InputString1.concat(InputString2).concat(InputString3).concat(InputString4).concat(InputString5);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="concat6" Name="concat6">
<Description>concatenate 6 strings</Description>
<FormalParameters>
<FormalParameter Id="InputString1" Index="InputString1" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString2" Index="InputString2" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString3" Index="InputString3" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString4" Index="InputString4" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString5" Index="InputString5" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString6" Index="InputString6" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputString" Index="OutputString" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputString = InputString1.concat(InputString2).concat(InputString3).concat(InputString4).concat(InputString5).concat(InputString6);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="concat7" Name="concat7">
<Description>concatenate 7 strings</Description>
<FormalParameters>
<FormalParameter Id="InputString1" Index="InputString1" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString2" Index="InputString2" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString3" Index="InputString3" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString4" Index="InputString4" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString5" Index="InputString5" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString6" Index="InputString6" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString7" Index="InputString7" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputString" Index="OutputString" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputString = InputString1.concat(InputString2).concat(InputString3).concat(InputString4).concat(InputString5).concat(InputString6).concat(InputString7);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="concat8" Name="concat8">
<Description>concatenate 8 strings</Description>
<FormalParameters>
<FormalParameter Id="InputString1" Index="InputString1" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString2" Index="InputString2" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString3" Index="InputString3" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString4" Index="InputString4" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString5" Index="InputString5" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString6" Index="InputString6" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString7" Index="InputString7" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="InputString8" Index="InputString8" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputString" Index="OutputString" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputString = InputString1.concat(InputString2).concat(InputString3).concat(InputString4).concat(InputString5).concat(InputString6).concat(InputString7).concat(InputString8);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="createCard" Name="createCard">
<Description>create a card</Description>
<FormalParameters>
<FormalParameter Id="ClassName" Index="ClassName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="CardCode" Index="CardCode" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="CardDescription" Index="CardDescription" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="CardId" Index="CardId" Mode="OUT">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.CreateCardToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="createCardRef" Name="createCardRef">
<Description>create a card and get the reference</Description>
<FormalParameters>
<FormalParameter Id="ClassName" Index="ClassName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="CardCode" Index="CardCode" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="CardDescription" Index="CardDescription" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="CardReference" Index="CardReference" Mode="OUT">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.CreateCardToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="createReferenceObj" Name="createReferenceObj">
<Description>create a reference object from classname, objid and description</Description>
<FormalParameters>
<FormalParameter Id="ClassName" Index="ClassName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ObjId" Index="ObjId" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Description" Index="Description" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutRef" Index="OutRef" Mode="OUT">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="tmp = org.cmdbuild.shark.util.CmdbuildUtils.getInstance().getStructureFromName( ClassName ).getId(); OutRef = new org.cmdbuild.workflow.type.ReferenceType( ObjId.intValue(),tmp,Description );"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="createRelation" Name="createRelation">
<Description>create a relation</Description>
<FormalParameters>
<FormalParameter Id="DomainName" Index="DomainName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ClassName1" Index="ClassName1" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ClassName2" Index="ClassName2" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ObjId1" Index="ObjId1" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ObjId2" Index="ObjId2" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Done" Index="Done" Mode="OUT">
<DataType>
<BasicType Type="BOOLEAN"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.CreateRelationToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="createRelation1Ref" Name="createRelation1Ref">
<Description>create relation between 2 cards, the first use a reference variable</Description>
<FormalParameters>
<FormalParameter Id="DomainName" Index="DomainName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ObjReference1" Index="ObjReference1" Mode="IN">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ClassName2" Index="ClassName2" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ObjId2" Index="ObjId2" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Done" Index="Done" Mode="OUT">
<DataType>
<BasicType Type="BOOLEAN"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.CreateRelationToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="createRelation2Ref" Name="createRelation2Ref">
<Description>create relation between 2 cards, the second use a reference variable</Description>
<FormalParameters>
<FormalParameter Id="DomainName" Index="DomainName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ClassName1" Index="ClassName1" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ObjId1" Index="ObjId1" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ObjReference2" Index="ObjReference2" Mode="IN">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Done" Index="Done" Mode="OUT">
<DataType>
<BasicType Type="BOOLEAN"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.CreateRelationToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="createRelationRefs" Name="createRelationRefs">
<Description>create a relation between two references</Description>
<FormalParameters>
<FormalParameter Id="DomainName" Index="DomainName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ObjReference1" Index="ObjReference1" Mode="IN">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ObjReference2" Index="ObjReference2" Mode="IN">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Done" Index="Done" Mode="OUT">
<DataType>
<BasicType Type="BOOLEAN"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.CreateRelationToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="dateCopy" Name="dateCopy">
<Description>copy a date into another</Description>
<FormalParameters>
<FormalParameter Id="From" Index="From" Mode="IN">
<DataType>
<BasicType Type="DATETIME"/>
</DataType>
</FormalParameter>
<FormalParameter Id="To" Index="To" Mode="OUT">
<DataType>
<BasicType Type="DATETIME"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="To = From.clone();"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="dateToString" Name="dateToString">
<Description>convert a Date to a String</Description>
<FormalParameters>
<FormalParameter Id="InputDate" Index="InputDate" Mode="IN">
<DataType>
<BasicType Type="DATETIME"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputString" Index="OutputString" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputString = "";if(InputDate!=null){OutputString = new java.text.SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss").format(InputDate.getTime());}else{System.out.println("null date: " + InputDate);}"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="externalSync" Name="externalSync">
<FormalParameters>
<FormalParameter Id="XMLString" Index="XMLString" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Out" Index="Out" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.ExternalSyncToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="floatCopy" Name="floatCopy">
<Description>copy a float into another</Description>
<FormalParameters>
<FormalParameter Id="From" Index="From" Mode="IN">
<DataType>
<BasicType Type="FLOAT"/>
</DataType>
</FormalParameter>
<FormalParameter Id="To" Index="To" Mode="OUT">
<DataType>
<BasicType Type="FLOAT"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="To = new java.lang.Double(From.doubleValue());"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="floatToString" Name="floatToString">
<Description>convert a Float to a String</Description>
<FormalParameters>
<FormalParameter Id="InputFloat" Index="InputFloat" Mode="IN">
<DataType>
<BasicType Type="FLOAT"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputString" Index="OutputString" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputString = String.valueOf(InputFloat);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="getCurrentTimestamp" Name="getCurrentTimestamp">
<Description>get the systen timestamp</Description>
<FormalParameters>
<FormalParameter Id="TheDate" Index="TheDate" Mode="OUT">
<DataType>
<BasicType Type="DATETIME"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="TheDate = java.util.Calendar.getInstance();"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="getCurrentUserReference" Name="getCurrentUserReference">
<Description>get the reference to the current user</Description>
<FormalParameters>
<FormalParameter Id="UserRef" Index="UserRef" Mode="OUT">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.GetCurrentUserReferenceToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="getLookupCode" Name="getLookupCode">
<Description>extract the Code of the LookupType variable</Description>
<FormalParameters>
<FormalParameter Id="Lookup" Index="Lookup" Mode="IN">
<DataType>
<DeclaredType Id="Lookup"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Code" Index="Code" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="if( Lookup == null ){ Code = ""; } else { Code = Lookup.code; }"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="getLookupDescription" Name="getLookupDescription">
<Description>extract the description of the LookupType variable</Description>
<FormalParameters>
<FormalParameter Id="Lookup" Index="Lookup" Mode="IN">
<DataType>
<DeclaredType Id="Lookup"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Description" Index="Description" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="if( Lookup == null ){ Description = ""; } else { Description = Lookup.description; }"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="getLookupId" Name="getLookupId">
<Description>extract the id of the LookupType variable</Description>
<FormalParameters>
<FormalParameter Id="Lookup" Index="Lookup" Mode="IN">
<DataType>
<DeclaredType Id="Lookup"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Id" Index="Id" Mode="OUT">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="if( Lookup == null ){ Id = -1; } else { Id = Lookup.id; }"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="getReferenceClassId" Name="getReferenceClassId">
<Description>extract the classId from a ReferenceType variable</Description>
<FormalParameters>
<FormalParameter Id="Ref" Index="Ref" Mode="IN">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ClassId" Index="ClassId" Mode="OUT">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="if( Ref == null ){ ClassId = -1; } else { ClassId = Ref.idClass; }"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="getReferenceDescription" Name="getReferenceDescription">
<Description>extract the description from a ReferenceType variable</Description>
<FormalParameters>
<FormalParameter Id="Ref" Index="Ref" Mode="IN">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Description" Index="Description" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="if( Ref == null ){ Description = ""; } else { Description = Ref.description; }"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="getReferenceFromArray" Name="getReferenceFromArray">
<Description>get the nth reference from the given reference array. If array is null or shorter than Index, then null is returned.</Description>
<FormalParameters>
<FormalParameter Id="RefArray" Index="RefArray" Mode="IN">
<DataType>
<DeclaredType Id="References"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Index" Index="Index" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutRef" Index="OutRef" Mode="OUT">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="if(RefArray==null || RefArray.length <= Index){OutRef=null;} else {OutRef = RefArray[Index.intValue()];}"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="getReferenceId" Name="getReferenceId">
<Description>extract the id from a ReferenceType variable</Description>
<FormalParameters>
<FormalParameter Id="Ref" Index="Ref" Mode="IN">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
<FormalParameter Id="CardId" Index="CardId" Mode="OUT">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="if( Ref == null ){ CardId = -1; } else { CardId = Ref.id; }"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="getReportFullUrl" Name="getReportFullUrl">
<Description>obtain the full Url to a report created by cmdbuild and returned by the createReport ext.attr.</Description>
<FormalParameters>
<FormalParameter Id="ReportUrl" Index="ReportUrl" Mode="INOUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.FullReportURLToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="intCopy" Name="intCopy">
<Description>copy an intenger into another</Description>
<FormalParameters>
<FormalParameter Id="From" Index="From" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="To" Index="To" Mode="OUT">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="To = new java.lang.Long(From.longValue());"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="intToString" Name="intToString">
<Description>convert an Int to a String</Description>
<FormalParameters>
<FormalParameter Id="InputInt" Index="InputInt" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputString" Index="OutputString" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputString = String.valueOf(InputInt);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="lookupToString" Name="lookupToString">
<Description>extract the lookup id and convert it to string</Description>
<FormalParameters>
<FormalParameter Id="InputLookup" Index="InputLookup" Mode="IN">
<DataType>
<DeclaredType Id="Lookup"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputString" Index="OutputString" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputString = InputLookup.id + "";"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="nextInt" Name="nextInt">
<Description>return the passed int incremented by 1</Description>
<FormalParameters>
<FormalParameter Id="InputInt" Index="InputInt" Mode="INOUT">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="InputInt++;"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="nextRef" Name="nextRef">
<Description>get the next reference element in an array, update hasNext boolean value and currentIndex index</Description>
<FormalParameters>
<FormalParameter Id="RefArray" Index="RefArray" Mode="IN">
<DataType>
<DeclaredType Id="References"/>
</DataType>
</FormalParameter>
<FormalParameter Id="HasNext" Index="HasNext" Mode="OUT">
<DataType>
<BasicType Type="BOOLEAN"/>
</DataType>
</FormalParameter>
<FormalParameter Id="CurrentIndex" Index="CurrentIndex" Mode="INOUT">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="CurrentValue" Index="CurrentValue" Mode="OUT">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="CurrentValue = RefArray[CurrentIndex.intValue()];CurrentIndex++;HasNext = ( CurrentIndex < RefArray.length );"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="referenceToString" Name="referenceToString">
<Description>extract the reference id and convert it to string</Description>
<FormalParameters>
<FormalParameter Id="InputReference" Index="InputReference" Mode="IN">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputString" Index="OutputString" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="if(InputReference==null) OutputString =null; else OutputString =InputReference.id + "";"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="resetIterator" Name="resetIterator">
<Description>set CurrentIndex to 0 and HasNext to (RefArray.length gt. 0)</Description>
<FormalParameters>
<FormalParameter Id="RefArray" Index="RefArray" Mode="IN">
<DataType>
<DeclaredType Id="References"/>
</DataType>
</FormalParameter>
<FormalParameter Id="HasNext" Index="HasNext" Mode="OUT">
<DataType>
<BasicType Type="BOOLEAN"/>
</DataType>
</FormalParameter>
<FormalParameter Id="CurrentIndex" Index="CurrentIndex" Mode="OUT">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="CurrentIndex = 0; HasNext = ( RefArray != null && RefArray.length > 0 );"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="resumeProcess" Name="resumeProcess">
<Description>resume the process</Description>
<FormalParameters>
<FormalParameter Id="ProcessInstanceId" Index="ProcessInstanceId" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Complete" Index="Complete" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.ProcessChangeStateToolAgent"/>
<ExtendedAttribute Name="State" Value="Resume"/>
</ExtendedAttributes>
</Application>
<Application Id="selectAttribute" Name="selectAttribute">
<Description>select an attribute</Description>
<FormalParameters>
<FormalParameter Id="ClassName" Index="ClassName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="AttributeName" Index="AttributeName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ObjId" Index="ObjId" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="AttributeValue" Index="AttributeValue" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.SelectAttributeToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="selectAttributeFromReference" Name="selectAttributeFromReference">
<Description>select an attribute from a reference variable</Description>
<FormalParameters>
<FormalParameter Id="ObjReference" Index="ObjReference" Mode="IN">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
<FormalParameter Id="AttributeName" Index="AttributeName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="AttributeValue" Index="AttributeValue" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.SelectAttributeToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="selectLookup" Name="selectLookup">
<Description>select a lookup description from its id</Description>
<FormalParameters>
<FormalParameter Id="LookupId" Index="LookupId" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="LookupDescription" Index="LookupDescription" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.SelectLookupToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="selectLookupById" Name="selectLookupById">
<Description>select a lookup from it's id</Description>
<FormalParameters>
<FormalParameter Id="LookupId" Index="LookupId" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Lookup" Index="Lookup" Mode="OUT">
<DataType>
<DeclaredType Id="Lookup"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.SelectLookupToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="selectLookupByTypeCode" Name="selectLookupByTypeCode">
<Description>select a lookup from it's type and code</Description>
<FormalParameters>
<FormalParameter Id="Type" Index="Type" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Code" Index="Code" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Lookup" Index="Lookup" Mode="OUT">
<DataType>
<DeclaredType Id="Lookup"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.SelectLookupToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="selectLookupByTypeDesc" Name="selectLookupByTypeDesc">
<Description>select a lookup from it's type and description</Description>
<FormalParameters>
<FormalParameter Id="Type" Index="Type" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Description" Index="Description" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Lookup" Index="Lookup" Mode="OUT">
<DataType>
<DeclaredType Id="Lookup"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.SelectLookupToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="selectReferenceByCode" Name="selectReferenceByCode">
<Description>select a reference by classname and code attribute</Description>
<FormalParameters>
<FormalParameter Id="ClassName" Index="ClassName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Code" Index="Code" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutRef" Index="OutRef" Mode="OUT">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.SelectReferenceToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="selectReferenceByCustomAttribute" Name="selectReferenceByCustomAttribute">
<Description>select a reference by classname and an attribute (the first matching reference will be returned)</Description>
<FormalParameters>
<FormalParameter Id="ClassName" Index="ClassName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="AttributeName" Index="AttributeName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="AttributeValue" Index="AttributeValue" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutRef" Index="OutRef" Mode="OUT">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.SelectReferenceToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="selectReferenceByReference" Name="selectReferenceByReference">
<Description>select a reference from another reference using its attribute name</Description>
<FormalParameters>
<FormalParameter Id="ObjReference" Index="ObjReference" Mode="IN">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
<FormalParameter Id="AttributeName" Index="AttributeName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutRef" Index="OutRef" Mode="OUT">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.SelectReferenceByReferenceToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="selectRelations" Name="selectRelations">
<Description>select the card in relations with a specific card on a specific domain by classname, cardid and domainame</Description>
<FormalParameters>
<FormalParameter Id="DomainName" Index="DomainName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ClassName" Index="ClassName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="CardId" Index="CardId" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Refs" Index="Refs" Mode="OUT">
<DataType>
<DeclaredType Id="References"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.SelectReferenceToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="selectRelationsByReference" Name="selectRelationsByReference">
<Description>select the card in relations with a specific card on a specific domain by reference card and domainame</Description>
<FormalParameters>
<FormalParameter Id="DomainName" Index="DomainName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Ref" Index="Ref" Mode="IN">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Refs" Index="Refs" Mode="OUT">
<DataType>
<DeclaredType Id="References"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.SelectReferenceToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="sendMail" Name="sendMail">
<Description>send an email</Description>
<FormalParameters>
<FormalParameter Id="FromAddresses" Index="FromAddresses" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ToAddresses" Index="ToAddresses" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="CcAddresses" Index="CcAddresses" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="BccAddresses" Index="BccAddresses" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Subject" Index="Subject" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Content" Index="Content" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="UrlAttachments" Index="UrlAttachments" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.MailToolAgent"/>
<ExtendedAttribute Name="AppMode" Value="0"/>
<ExtendedAttribute Name="AppName" Value="org.cmdbuild.shark.toolagent.SafeMailToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="stringCopy" Name="stringCopy">
<Description>copy a string into another</Description>
<FormalParameters>
<FormalParameter Id="From" Index="From" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="To" Index="To" Mode="OUT">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="To = new java.lang.String(From);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="stringToBool" Name="stringToBool">
<Description>convert a string to a boolean</Description>
<FormalParameters>
<FormalParameter Id="InputString" Index="InputString" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputBoolean" Index="OutputBoolean" Mode="OUT">
<DataType>
<BasicType Type="BOOLEAN"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputBoolean = new java.lang.Boolean(InputString);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="stringToDate" Name="stringToDate">
<Description>convert a string into a date - accept YY/mm/dd or YY/mm/dd HH:mm:ss formatted strings</Description>
<FormalParameters>
<FormalParameter Id="InputString" Index="InputString" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputDate" Index="OutputDate" Mode="OUT">
<DataType>
<BasicType Type="DATETIME"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="if (InputString == null || InputString.trim().length() == 0) { OutputDate=null; } else { if (InputString.length() == 8) { sdf = new java.text.SimpleDateFormat("dd/MM/yy"); } else if (InputString.length() == 17) { sdf = new java.text.SimpleDateFormat("dd/MM/yy HH:mm:ss"); } else { throw new IllegalArgumentException(String.format("Unrecognized format: "%s"", InputString)); } calendar = java.util.Calendar.getInstance(); date = sdf.parse(InputString); calendar.setTime(date); OutputDate=calendar; }"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="stringToFloat" Name="stringToFloat">
<Description>convert a string to a float</Description>
<FormalParameters>
<FormalParameter Id="InputString" Index="InputString" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputFloat" Index="OutputFloat" Mode="OUT">
<DataType>
<BasicType Type="FLOAT"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputInteger = new java.lang.Double(InputString);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="stringToInt" Name="stringToInt">
<Description>convert a string to an integer</Description>
<FormalParameters>
<FormalParameter Id="InputString" Index="InputString" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="OutputInteger" Index="OutputInteger" Mode="OUT">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="OutputInteger = new java.lang.Long(InputString);"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="suspendProcess" Name="suspendProcess">
<Description>suspend the process. Use "CURRENT" as process instance id to pause the current process (paused to the next manual activity)</Description>
<FormalParameters>
<FormalParameter Id="ProcessInstanceId" Index="ProcessInstanceId" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.ProcessChangeStateToolAgent"/>
<ExtendedAttribute Name="State" Value="Suspend"/>
</ExtendedAttributes>
</Application>
<Application Id="updateAttribute" Name="updateAttribute">
<Description>update an attribute</Description>
<FormalParameters>
<FormalParameter Id="ClassName" Index="ClassName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="AttributeName" Index="AttributeName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="ObjId" Index="ObjId" Mode="IN">
<DataType>
<BasicType Type="INTEGER"/>
</DataType>
</FormalParameter>
<FormalParameter Id="AttributeValue" Index="AttributeValue" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Done" Index="Done" Mode="OUT">
<DataType>
<BasicType Type="BOOLEAN"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.UpdateAttributeToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="updateAttributeRef" Name="updateAttributeRef">
<Description>update an attribute of a reference object</Description>
<FormalParameters>
<FormalParameter Id="ObjRef" Index="ObjRef" Mode="IN">
<DataType>
<DeclaredType Id="Reference"/>
</DataType>
</FormalParameter>
<FormalParameter Id="AttributeName" Index="AttributeName" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="AttributeValue" Index="AttributeValue" Mode="IN">
<DataType>
<BasicType Type="STRING"/>
</DataType>
</FormalParameter>
<FormalParameter Id="Done" Index="Done" Mode="OUT">
<DataType>
<BasicType Type="BOOLEAN"/>
</DataType>
</FormalParameter>
</FormalParameters>
<ExtendedAttributes>
<ExtendedAttribute Name="ToolAgentClass" Value="org.cmdbuild.shark.toolagent.UpdateAttributeToolAgent"/>
</ExtendedAttributes>
</Application>
<Application Id="voidApp" Name="voidApp">
<Description>this tool does nothing</Description>
<ExtendedAttributes>
<ExtendedAttribute Name="Script" Value="foo = true;"/>
<ExtendedAttribute Name="ToolAgentClass" Value="org.enhydra.shark.toolagent.BshToolAgent"/>
</ExtendedAttributes>
</Application>
</Applications>
<Activities>
<Activity Id="selDipendente" Name="Selezione Dipendente">
<Implementation>
<No/>
</Implementation>
<Performer>SuperUser</Performer>
<ExtendedAttributes>
<ExtendedAttribute Name="JaWE_GRAPH_PARTICIPANT_ID" Value="SuperUser"/>
<ExtendedAttribute Name="JaWE_GRAPH_OFFSET" Value="392,67"/>
<ExtendedAttribute Name="linkCards" Value="ClassName="Dipendente" ButtonLabel="Seleziona Dipendente" Required=1 ListaOggetti"/>
</ExtendedAttributes>
</Activity>
</Activities>
<ExtendedAttributes>
<ExtendedAttribute Name="JaWE_GRAPH_END_OF_WORKFLOW" Value="JaWE_GRAPH_PARTICIPANT_ID=System,CONNECTING_ACTIVITY_ID=selDipendente,X_OFFSET=769,Y_OFFSET=82,JaWE_GRAPH_TRANSITION_STYLE=SIMPLE_ROUTING_BEZIER,TYPE=END_DEFAULT"/>
<ExtendedAttribute Name="JaWE_GRAPH_START_OF_WORKFLOW" Value="JaWE_GRAPH_PARTICIPANT_ID=System,CONNECTING_ACTIVITY_ID=selDipendente,X_OFFSET=74,Y_OFFSET=77,JaWE_GRAPH_TRANSITION_STYLE=SIMPLE_ROUTING_BEZIER,TYPE=START_DEFAULT"/>
<ExtendedAttribute Name="cmdbuildBindToClass" Value="testSelezione"/>
<ExtendedAttribute Name="userStoppable" Value="false"/>
<ExtendedAttribute Name="JaWE_GRAPH_WORKFLOW_PARTICIPANT_ORDER" Value="System;SuperUser;GestioneTecnica;GestioneAmministrativa"/>
</ExtendedAttributes>
</WorkflowProcess>