martes, noviembre 25, 2025

Funciones ocultas para utilizar en reportes de EspoCRM

En este archivo se pueden encontrar funciones para filtrar los reportes que se usan en el paquete avanzado de EspoCRM.

Por ejemplo me sirvió para obtener registros modificados dentro de los últimos 15 minutos:

 LESS_THAN_OR_EQUAL:(
    TIMESTAMPDIFF_MINUTE:(
        modifiedAt,
        NOW:()
    ),
    15

viernes, noviembre 21, 2025

ALERT: (0) Could not handle 'order' for 'Entidad'

El error está relacionado a la falta del parámetro de ordenamiento (probablemente bug de Espo ya que en la documentación se ve que es opcional), por ejemplo:


$idActivoPuente=record\findRelatedOne('Entidad', id, 'relacion');


Produce el error: 

ALERT: (0) Could not handle 'order' for 'EntidadRelacionada'


Se soluciona agregando el parámetro faltante (por ejemplo createdAt):


$idActivoPuente=record\findRelatedOne('Entidad', id, 'relacion', 'createdAt', 'asc');

jueves, noviembre 20, 2025

Obtener datos de una entidad

 No hagas esto en EspoCRM

$dato1 = record\attribute('Entidad', $id, 'campo1');

$dato2 = record\attribute('Entidad', $id, 'campo2');

Cada vez se trae un dato ¡Se realiza una consulta a la base de datos!


En reemplazo haz esto

$o = record\fetch('Account', $accountId);

if ($o) {

    $dato1 = object\get($o, 'campo1');

    $dato2 = object\get($o, 'campo2');

}

ref: https://docs.espocrm.com/administration/formula/record/#recordfetch