Update Yes/No field for all documents in a service
Updaten van een yes / no veld bij een document, hiervoor kun je de webservice “Services: update document template part numeric value” gebruiken, yes = 1 en no = 0. Ik heb die webservice toegevoegd aan jullie test omgeving. Je kunt dit script gebruiken om alle documenten van een onderzoek die DOC_delete op yes hebben staan aan te passen naar no:
var serviceguid = "12345"; var externalprovidername = "the name"; var externalproviderkey = "the key";
var servicedetail = JSON.parse(ServiceCatalogInterface.getServiceDetail(serviceguid, {PartsAsFlatList: true, PartsUseValue: true, LoadRelations: false})); var toreturn = []; for (var d = 0; d < servicedetail.documents.length; d++) {
var document = servicedetail.documents[d]; var docdeleteparts = document.parts.filter(function (part) { return part.internalname === "DOC_delete"; }).map(function (part) { return part.value; }); if (docdeleteparts.length > 0 && docdeleteparts[0] === true) { //DOC_delete staat op yes, het moet op no gezet worden CommonInterface.callWebservice('Services: update document template part numeric value', { ServiceGuid: serviceguid, DocumentGuid: document.guid, InternalName: "DOC_delete", ActorPerson: "", Numeric: 0, ProviderName: externalprovidername, SecurityCheck: externalproviderkey }); toreturn.push(document.guid); }
} return toreturn.length > 0 ? "Nr of documents updated: " + toreturn.length : "";
Je moet enkel nog de serviceguid, externalprovidername en externalproviderkey aanpassen in het script.