FAQ
¿Tienes dudas? No te preocupes, aquí encontrarás las soluciones.
Búsqueda Completa en el Sitio

Generar fecha y hora de última modificación de un campo específico en un registro

En Ragic, puedes configurar valores predeterminados para autorellenar un campo de fecha con la última fecha y hora de modificación. Sin embargo, si necesitas autorellenar estos campos, deberás agregar un script para lograrlo.

Por favor sigue esta guía para agregar tu script:

Paso 1: Abre el Editor de Workflow de Ragic

Haz clic derecho en cualquiera de las pestañas y selecciona Workflow Javascript o Workflow Javascript Global, el cual te llevará al módulo de workflow.

Paso 2: Cambia a la página “Workflow Global”

Paso 3: Pega el siguiente código y guárdalo

Campos independientes :

function setLastModifiedOnField(pathSheet, observeField, recordField) {
    if (param.getOldValue(observeField) !== param.getNewValue(observeField) || 
        param.isCreateNew()) {
        var today = new Date(new Date().getTime() + account.getTimeZoneOffset());
        function pad2(n) { return n < 10 ? '0' + n : n }
        var fmtValue = today.getFullYear() + "/" +
            pad2(today.getMonth() + 1) + "/" +
            pad2(today.getDate()) + " " +
            pad2(today.getHours()) + ":" +
            pad2(today.getMinutes()) + ":" +
            pad2(today.getSeconds());
        
        var query = db.getAPIQuery(pathSheet);
    	query.addFetchDomains(recordField);
        var entry = query.getAPIEntry(response.getRootNodeId());
        entry.setFieldValue(recordField, fmtValue);
        entry.save();
    }
}

Campos de subtabla :

function setLastModifiedOnSubtableField(pathSheet,observeSubtableKeyField, observeSubtableField, recordField) {
    var list = param.getSubtableEntry(observeSubtableKeyField);
    var entry = param.getUpdatedEntry();
    var today = new Date(new Date().getTime() + account.getTimeZoneOffset());
    function pad2(n) { return n < 10 ? '0' + n : n }
    var fmtValue = today.getFullYear() + "/" +
        pad2(today.getMonth() + 1) + "/" +
        pad2(today.getDate()) + " " +
        pad2(today.getHours()) + ":" +
        pad2(today.getMinutes()) + ":" +
        pad2(today.getSeconds());
    for (var i = 0; i < list.length; i++) {
      if(list[i].getOldValue(observeSubtableField) != list[i].getNewValue(observeSubtableField) && (list[i].getOldValue(observeSubtableField) !== null || list[i].getNewValue(observeSubtableField) !== "" )){
          var subRootNodeId = list[i].getSubRootNodeId();
          entry.setSubtableFieldValue(recordField, subRootNodeId, fmtValue);
          entry.save();
      }
    }
}

Paso 4: Selecciona Post-workflow de la hoja en la deseas agregar el script

Si tu URL de hoja es https://www.ragic.com/accountname/tabname/1

Y el campo cuya fecha y hora de modificación deseas generar es “Estado Activo” (ID de campo 1003114), y el campo donde deseas registrar la fecha y hora de modificación es “Última edición” es (ID de campo 1003115).

Agrega esto al Post-workflow:

Campos independientes :

setLastModifiedOnField("/tabname/1", 1003114, 1003115);

Para saber más sobre cómo buscar un ID de campo has clic aquí.

*Por favor nótese que al crear un nuevo registro, la fecha y hora de la última notificación será autogenerada después de guardar incluso si el campo específico no está rellenado. Si deseas conservar la fecha y hora de la última notificación, hora vacía en este caso, puedes reemplazar con el siguiente código en tu Post-workflow:

if(param.getOldValue(1003114) !== null || param.getNewValue(1003114) !== "" ){
       setLastModifiedOnField("/tabname/1",  1003114,  1003115);
}

Campos de subtabla :

setLastModifiedOnSubtableField("/tabname/1", subtablekeyField, 1003114, 1003115);

Puedes encontrar el campo clave de subtabla en el Diccionario de Datos

No olvides guardar tus cambios.

(El valor de hora y fecha generado está basado en la zona horaria configurada en el Perfil de la empresa.)

Comparte tu opinión con Ragic

¿Qué te gustaría comentarnos?(obligatorio, selección múltiple)


Capturas de pantalla para ayudarnos a comprender mejor tus comentarios:

¡Gracias por sus valiosos comentarios!

    Iniciar Ragic Gratis

    Registrarse con Google

    Términos de Servicio | Política de Privacidad