M416 AUTOMATED STEP Paso Automatizado
Last updated Sep 04, 2017

Creación de Pasos automáticos propios para ser utilizados en la Definición de Procesos de Negocio

Cuando se requiere automatizar los Pasos de Processamiento, tales como "Obtener un número de caracteres y valor Hash" , necesita escribir Scripts utilizando [Tarea Script]. Si necesita utilizar la misma [Tarea Script] en lugares distintos, debe considerar empacar el Script como un [Addon XML]. (Tarea de Servicio Addon)

M416-1-en


a. Aspectos de Habilidades de TI (Comparadas con Tareas Script)
Un Diseñador de Flujo que no tenga conocimientos de Script debe ser capaz de promover la automatización del procesamiento también.
b. Aspectos de Costo de Modelado (Comparados con Tareas Script)
No hay necesidad de escribir el mismo Script una y otra vez
  • Puede ser considerado como la Frontera de responsabilidad entre el Departamento de TI y el Dueño del Proceso
  • En M415 encontrará más información acerca de cómo importar un [Addon XML] previamente creado
  • En M416 (Parte inferior de esta página) o “Descargas” en M415 para Ejemplos de código
a. Aspectos de la Salida del Paso automático
Por ejemplo: Contenidos de Datos a ser almacenados, Contenidos de Operaciones automáticas de sistemas externos, etc.
b. Aspectos de entradas en Pasos automáticos
Por ejemplo: Datos del Negocio a ser examinados, Nombre de Datos en sistemas externos a ser extraídos, etc.
  • Nombres de Pasos automáticos (Tareas de Servicio) están definidas en elementos <label>
  • Ejemplo de a: <label>Generador de Número aleatorio</label>
  • Ejemplo de b: <label>Getter de Información del Clima</label>
a. Los Elementos de Datos de Negocio a los que debe referirse en el Paso (SELECT)
Por ejemplo: Escribir un Dato A, Leer un Dato B, etc.
b. Un valor fijo utilizado en el Paso (TEXTFIELD, TEXTAREA)
Por ejemplo: Valor máximo: “100”, Estado: Este Borrador está en estado “pendiente de aprobación”, etc.
  • Enumerar los Elementos de Configuración con <config> el cual es Elemento Hijo de <configs>

R4160 Atributos Addon-XML de elemento config

1. Escribir un Script del lado del Servidor
Escribir en código ECMA code disponible en el Paso Script (M230)
  • Conocimiento de ECMAScript (JavaScript) es requerido
  • Partes de Clases Java class también están disponibles
  • Usar métodos especiales de configs.get("♦configName♦") para obtener config
  • configs.get("♦configName♦"): instanceof java.lang.String
  • Usar métodos especiales de data.get( ♦dataId♦ ) para obtener Datos del Negocio (M230)
  • Usar métodos especiales de retVal.put( ♦dataId♦, ♦value♦ ) para la actualización de Datos del Negocio (M230)
<script><![CDATA[
var dataItemId = configs.get("conf_updateDataItem"); 
retVal.put( dataItemId, "Hello World" );
]]></script>
R2300 Funciones disponibles en Script
1. Preparar un archivo de imagen
Preparar un archivo de imagen de menos de 64px (JPEG, GIF, PNG only)
2. Cifrar a Base64
Mediante Software de Conversión o Servicio Web
  • Definir por dato de ícono <icon>
  • El Logo será desplegado cuando se coloque mediante Arrastrar&Soltar
1. Agregar un elemento de etiqueta con atributo local
Agregar <label> tantos como sean el número de idiomas utilizados por sus Diseñadores de Flujo
  • Por ejemplo: Configure <label locale="es">Generador de Numeros aleatorios</label> para Diseñadores de habla hispana
  • en(default), ja, de, es, fr, ko, pt, zh_CN

M416-2-en

M416-3-en



<?xml version="1.0" encoding="UTF-8"?><service-task-definition>

<label>Random Number Generator</label>
<label locale="es">Generador de Numeros aleatorios</label>


<configs>
 <config name="conf_MaxNum" required="true" form-type="TEXTFIELD">
 <label>Set MAX NUMBER (100 returns 0 - 99)</label>
 <label locale="ja">Establece el numero maximo (100: 0 - 99)</label>
 </config>
<config name="conf_UpdateDataId" required="true" form-type="SELECT" select-data-type="DECIMAL">
 <label>Select RANDOM NUMBER DATA</label>
 <label locale="es">Seleccione unos datos de numericos que se almacena un numero aleatorio</label>
 </config>
</configs>


<script><![CDATA[
var maxNum = configs.get( "conf_MaxNum" ); 
var dataId = configs.get( "conf_UpdateDataId" ); // (returns Number)
var tmpNum = Math.random() * maxNum; // Math.random() -> 0.00 ~ 0.99
var retNum = Math.floor( tmpNum );
retVal.put( dataId, java.math.BigDecimal( retNum ) );
]]></script>


<icon>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAEFUlEQVRYR8VXQVIbORT9X2bVXgROEDjBhBPE2YFEVcgJEk4w5ASBE4w5QewT4FQhwS7mBIETBE4wnkU3G7p/6mkkl1rT7ZhJqugqqgC1paf333v/m+mZH37m8+mXAezt7W0z80tc5OHh4XY+ny+ecqn/DUBr/YmIPjDzdnqgiNwR0biqquk6YJ4MQGv9iojO84PzW4vITdM0766urgCo93kSANA9GAy+EdEmdhSRM6XU7OLiYo6/sa6U+kBEx8z8gojm1to3vw2A1vobM78SkX+IaOScuxmNRh5MSvfBwcFIRL4GkLt4rw/E2gxorVHvz+mmOLwoCoDarOt6N6XbGCN4l5nfRIa6QDwFwPdQ96m1FjRTBmrmnHuH/6cM1HW9s0oHawGA8JgZtad0w1iSeDMIj5lhw1Fg6otz7vCXNaC1PmFm2O7WWgsXEOgfDod/h4Oumfl1ZsfrqqoOf2bFlQzEkGHmcRDfmXPuOKe/LMutoiiQB/62YOLy8nK2TiD1AtBaf2ZmX+v4pIIyxkyI6H2y/NFaO17n0NaeXR8Ifv+er1lrl4Dz+od3fR4Q0cRaO8UvxhiARNlg33nTNNNUlJ0MGGNA818icu+ca0VtDioVaKYBeH+zKzFF5Ng5d+Zt2sWA1nrGzG+RL03TnIS63kfkaQNCmfCDVCSiRThwWRqEFjPPQo/Au75xEZEvWR8AiO7P7EbLRNNa5+ut+kcG4Zq6rr0wlVJIzknUDgA553Y6AYSEAwveWriFc85HLp6O+o+bprlOlW+MucHhYC28v22t3drf3z9USp1jH2hqpQ0TtK1AiTGbl09ETp1zvmS4BDIgyRBc5A6xDW2IyLVzbrQSgNY6xu+S4vQGHfpZlGW5E8Mn757x/bSZ9QJIrSgiq+rfwiEiR6h1sKDPCrgphBT0AHGDiRmsmvoaovMxy8zw81aXFRNWugzkZ4SYlomd76qq2i2K4isSNWHilIPgWguZ+pcbpl2u63RQW1XVdlYCH2giAlEfBvrRtCDwBaeWAvogkqWP0+5njMGQ4TtdDwAvwijA4JiWZSE+ERlHJwDAf4SGPo/BEqNVUk+fjhk7pygbQiumZhjLzp1zu9ENw+FwLCIAjnREZ8Ve0MYXjpbCANnXwdLBA+FCRH9EH4cDsbEf0RKWOptTNsQcgQEfu2ihSqmPcXwK2ngd0Ebap3VdnwwGg9io5nVdHyFsgmswsi1LJCKTpmlO47pS6j0zx2j/NwfCmD0PU2xfeVvqzhjp+sySpZ4Nb8uyHEGs3oYBBMTSmmrCh6fMPMkHSwRSGFRicwHIe4zleBcJmIznfqvgAHxpGUentIIING5sbPj2+/j4ePezLxURvFJqs2maRdf4jcthHe92TcdrDaW9dfkNC88O4AcIzqgZxW8imAAAAABJRU5ErkJggg==
</icon>

</service-task-definition>

Por el momento disponible únicamente en Inglés