Urgando en SuiteCRM

marzo 20, 2016 Publicado en Software y Hardware
Etiquetas:

Supongamos que deseamos crear una acción para un módulo específico y supongamos además que queremos generar una vista en la cuál mostrar los datos que resulten de esta acción. SuiteCRM ofrece un framework MVC con el cual realizar estas acciones será cuestión de ubicar los archivos en los directorios correspondientes y ejecutar una acción de reconstrucción del entorno.

La C del MVC

El primer paso para agregar controles a un módulo es determinar si existe el archivo controlador propio, el cual debería estar ubicado en

/<directorio_crm>/modules/<Módulo>/controller.php

Si no existe, esto indicaría que el módulo emplea el controlador por defecto y que por lo tanto podríamos crear un nuevo controlador en custom para este módulo particular. Pero si por el contrario el archivo existe, habrá que optar entre extender las acciones disponibles o crear un nuevo controlador.

El primer paso es crear el archivo de control personal en

/<directorio_crm>/custom/modules/<Módulo>/controller.php

Dependiendo de la situación en que nos encontremos usaremos uno de los siguientes encabezados (mucha atención, debe usar las mayúsculas tal cual en el nombre del módulo):

  1. Si existe archivo de control en /<directorio_crm>/modules/<Módulo>/ y queremos reusar las acciones declaradas:
  2. Cualquier otro caso.

Una vez creado el archivo de control el siguiente paso está en agregar las acciones a la clase a partir del siguiente esquema

Por último ejecutamos la acción de “Reparar y Reconstruir“ y paso seguido lo que tendremos ahora es la posibilidad de ejecutar esta función usando la siguiente URL

http://<host_crm>/<directorio_crm>/index.php?module=<módulo>&action=<nombreAcción>

Esta función de control podrá recibir variables por GET o por POST (igual que cualquier otro script php), incluirá el entorno global ( por ejemplo $this->currentBean ) y tendremos además acceso a todas las primitivas de SuiteCRM para administrar las instancias de los módulos.

Sin embargo este tipo de declaraciones tiene una limitante, y es que por tratarse de un controlador es de esperar que no podamos hacer una impresión directa en pantalla. Al fin de cuentas se trata de la C en un MVC. ¿Entonces cómo hacer uso de la V?

La respuesta se encuentra en las últimas líneas de la función donde se indica cuál será la instancia a mostrar y cuál será la vista que presentará SuiteCRM a continuación. En el código de ejemplo estamos usando la variable <vista> que puede usar una de las opciones por defecto (edit, detail o list) o una vista personalizada.

Capí­tulos: | 1 | 2 | Siguiente |

Escriba su comentario