<< Visión general |
Contenido
Registros, Contenido de la páginaRegistro, RegistrosRecord RECORDRegistro actualmente abiertoList<Value> values = RECORD.getValues(); O: Record record = RECORD;List<Value> values = record.getValues(); Lista<Record> RECORDSRegistros de la vista actual// Registros en vistaList<Record> records = RECORDS; for(Record record : records) { } ValoresLeer valoresLectura de los valores de un registro (valores visibles en la tabla o en todos los valores)// Columnas/valores visiblesList<Value> values = record.getValues(); for(Value value : values) { String name = value.getName(); // Nombre técnico String text = value.getText(); // Texto String obj = value.getObject(); // Java-Object (String, Long, Double, Date, Boolean) }Más contenido:// Todas las columnas/valores List<Value> values = record.getValuesAll(); // Valor único Value value = record.getValue("country"); String color = record.getBackgroundColor(); List<Annotation> annotations = record.getAnnotations(); // Subtables (Contenidos: tables.title, tables.records, tables.columns) List<Table> tables = record.getTables(); // Attachments List<Attachment> attachments = record.getAttachments(); Agrupación, PáginaAgrupación de la páginaList<Group> groups = PAGE.getGroups();for(Group group : groups) { // También Título/Nivel/Número: group.title, group.level, group.count List<Column> columns = group.getColumns(); List<Grabar> records = group.getRecords(); for(Column column : columns) { String name = column.getName(); String label = column.getLabel(); } } Página actualPAGE.isView: Es vista con registros PAGE.isRecord: El registro abierto PAGE.isWebserver: La aplicación se está ejecutando en Webserver PAGE.title: Título de la página actualif (PAGE.isRecord) { } if (PAGE.isView) { } if (PAGE.isWebserver) { } String title = PAGE.title AyudantePlantillas/RetornoLeer plantillaPermite leer un archivo de texto, útil si el contenido se debe agregar a un archivo existente. Las plantillas se leen desde:scripts/templates/ (Predefinido o su propia aplicación)// Leer plantilla String templateContent = TEMPLATE.read("HTML_Template1.html"); // Realizar reemplazos (Ejemplo) String page = templateContent.replace("%CONTENT%", "MY CONTENT").replace("%PAGE_TITLE%", PAGE.title); Valor de retorno// Script proporciona un valor de retornoRESULT.set("Sum for year: xx"); // Añadir texto a valor de retorno; set() no es necesario para append() RESULT.append("\nSuma por mes: xx"); Escape/FormatoEscape para caracteres especiales// Reemplaza caracteres especiales, por ejemplo: <, >ESCAPE.forHtml(String text) ESCAPE.forXml(String text) ESCAPE.forJson(String text) ESCAPE.forJava(String text) HTML-Output// Crea HTML-Code para los parámetros (también images)HTML.toHtml(Value value) HTML.toHtml(String text) HTML.toHtml(List<Annotation> annotations) HTML.toHtml(Annotation annotation) HTML.toHtml(Attachment attachment) Información de objetotoString() para objetos y variablesLos objetos y las variables proporcionan información al contenido y a los métodos disponibles mediante toString()// Ejemplos de resumen de toString()String summary = ""; summary += RECORD.toString()+"\n"; summary += RECORDS.toString()+"\n"; summary += PAGE.toString()+"\n"; summary += TEMPLATE.toString()+"\n"; summary += RESULT.toString()+"\n"; summary += READ.toString()+"\n"; summary += WRITE.toString()+"\n"; summary += UPLOADS.toString()+"\n"; summary += FILE.toString()+"\n"; RESULT.set(summary); Lectura/escrituraLectura/CambioLectura de registros// Lee todos los registros de la tabla nombrados por el parámetro// Los registros solo contienen valores, sin más detalles (Anotaciones, Subtablas, ...) List<Record> recordsWithValues = READ.getRecords(String tablename); Cambiar valores// Aplicar nuevo valorWRITE.setValue(Record record, String fieldname, String newValue); Crear/EliminarInsertar un registro vacío// Añadir nuevo registroRecord newRecord = WRITE.insertNewRecord(String tablename); Insertar registro// Agregar nuevo registroString tablename = "..."; Record record = new Record(tablename); record.setValue("firstname", "theodora"); WRITE.insertRecord(record); Eliminar un registro// Eliminar un registroRecord myrecord = RECORD; WRITE.deleteRecord(myrecord); WRITE.deleteRecordLogical(myrecord); // Eliminar LogicalO:// Eliminar registro, establecer con Tablename, ID String tablename = "..."; Long id = 1122; Record record = new Record(tablename, id); WRITE.deleteRecord(record); ArchivosCampos, SubidasCampos// Leer bytes de valorbytes[] bytes = FILE.readBytes(Value value); // Leer bytes de carga bytes[] bytes = FILE.readBytes("file.txt"); // Leer varios archivos List<byte[]> filesBytes = FILE.readBytesList(Value value); Agregar subidasUPLOADS.add("file.txt", String text);UPLOADS.add("file.bin", byte[] bytes); Acceso a archivosTemp-Files, Abrir/Editar// Archivos temporalesArchivo tmp = FILE.temp(); Archivo tmp = FILE.temp(String ending); Archivo tmp = FILE.temp(String ending, String prefix); // Abrir/Editar en el sistema operativo (menos Webserver) FILE.open(File file); FILE.edit(File file); FILE.browse(String url); Sistema de archivosFILE.write(File file, String text);FILE.write(File file, byte[] bytes); String filetext = FILE.read(File file); bytes[] bytes = FILE.readBytes(File file); AvanzadaClases JavaClases en scriptsLos scripts permiten definir clases propias.Variables para usar en scripts sólo están disponibles fuera de Java-Classes. Debido a esto, es necesario proporcionarlos en el constructor, un ejemplo:// Variables PAGE, ESCAPE, UTIL, RESULT, ... sólo están disponibles fuera de las clases // Solución: Utilice la variable SCRIPT como parámetro, contiene todas las demás variables new Demo(SCRIPT); public class Demo { private Script s; public Demo(Script script) { this.s = script; Ahora disponible: // s.PAGE // s.ESCAPE // s.UTIL // s.RESULT // s.RECORD // s.RECORDS // ... execute(); } private void execute() { s.RESULT.set("My Result"); } }Variables: RECORD, RECORDS, PAGE, ESCAPE, UTIL, TEMPLATE, FILE, HTML, READ, WRITE, RESULT, UPLOADS Ejemplo PlantillaLeer plantilla, rellenar contenido y escribir en archivoRellena una nueva plantilla y la escribe en un archivo temporal. A continuación, el archivo se abre en el sistema de sistema operativo.// Leer la plantilla y reemplazar String content = "MY CONTENT"; String templateContent = TEMPLATE.read("TEMPLATE_HERE.html"); String page = templateContent.replace("%CONTENT%", content).replace("%PAGE_TITLE%", PAGE.title); // Archivo temporal File file = FILE.temp(".html"); // Escribir archivo FILE.write(file, page); // Abrir archivo en sistema operativo FILE.open(file); |