Script para automatización - Autonumérico
Crea un número único para cada documento nuevo.
Definición del grupo de metadatos:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE property-groups PUBLIC "-//OpenKM//DTD Property Groups 2.1//EN""http://www.openkm.com/dtd/property-groups-2.1.dtd"><property-groups> <property-group label="Autonumeric" name="okg:autonumber"> <input label="Document ID" name="okp:autonumber.id" type="text" readonly="true"/> <input label="Revision" name="okp:autonumber.revision" type="text" readonly="true"/> <input label="Code" name="okp:autonumber.code" type="text" readonly="true"/> </property-group></property-groups>El script de automatización:
import com.openkm.api.OKMPropertyGroup;import com.openkm.api.OKMRepository;import java.util.*;import com.openkm.dao.DatabaseMetadataDAO;
String grpName = "okg:autonumber";String table = "autonumber";String sequenceName = "doc_id";String path = OKMRepository.getInstance().getNodePath(null,uuid);
// Add GroupOKMPropertyGroup.getInstance().addGroup(null, path, grpName);
// Setting propertiesString id = String.valueOf(DatabaseMetadataDAO.getNextSequenceValue(table, sequenceName));
switch (id.length()) { case 1: id = "00000" + id; break; case 2: id = "0000" + id; break; case 3: id = "000" + id; break; case 4: id = "00" + id; break; case 5: id = "0" + id; break;}
String revision = "1";String code = id + "-" +revision;
Map map = new HashMap();map.put("okp:autonumber.id",id);map.put("okp:autonumber.revision",revision);map.put("okp:autonumber.code",code);OKMPropertyGroup.getInstance().setPropertiesSimple(null, path, grpName, map);Imágenes
Sección titulada «Imágenes»Registrar el grupo de metadatos
Sección titulada «Registrar el grupo de metadatos»
Registrar la regla de automatización
Sección titulada «Registrar la regla de automatización»


Resultado tras subir un documento nuevo
Sección titulada «Resultado tras subir un documento nuevo»