Ejemplos: Generación de BOD basado en tablas y funciones
Este tema explica cómo configurar desencadenantes de generación de BOD. Esta es una tarea que es parte de estos otros procedimientos mayores:
- Reproducir datos como BODs a otras aplicaciones habilitadas por BOD - Paso de réplica de categorías
- Crear y mantener BODs - Paso de referencias cruzadas de salida de documento de réplica
Hay dos maneras para desencadenar la generación de un BOD usando categorías de réplica y referencias cruzadas de salida de documento de réplica:
- Tabla: La forma más sencilla es especificar la tabla o vista en el formulario Referencias cruzadas de salida de documentos de réplica para el BOD y, a continuación, añadir el nombre de la tabla a una categoría de réplica. Cualquier cambio realizado al registro
en esa tabla activa la generación de un BOD.
Si no desea que se genere un BOD cada vez que se cambie algo en ese tabla, puede restringir la generación BOD usando campos en el formulario Categorías de réplica:
- Utilice el atributo Filtro para definir un filtro que determine si un cambio en la tabla debe desencadenar la generación de BOD. Solamente se incluyen registros que coinciden con el filtro.
- Utilice las casillas de verificación que restringir la generación de BOD en función del tipo de cambio en la tabla: Omitir insertar, Omitir actualizar y Omitir eliminar.
- Función: Utilice esta técnica cuando un activador basado en actualización de tabla simple es inadecuado. Por ejemplo, supongamos
que desea activar un BOD cuando se crea una nueva orden. Ya que una orden son datos jerárquicos y puede tener cualquier número
de líneas y liberaciones, no será posible identificar una sola tabla que pudiera desencadenar la generación de BOD; no hay
manera de saber cuándo se insertó la última línea o liberación. O puede necesitar desencadenar la generación de BOD cuando
se produce otro evento de aplicación sin relación alguna con la actualización de la tabla. La solución es desencadenar de
forma programada la actualización del BOD usando un desencadenante de "Función».
En el formulario Categorías de réplica y en el formulario Referencias cruzadas salientes de documentos de réplica, especifique un nombre de "función". Este nombre no corresponde necesariamente a un procedimiento almacenado real y posiblemente no lo hará. Es tan solo un parámetro que se pasa a un procedimiento almacenado de réplica que básicamente desencadena la generación de BOD. (Para obtener más información acerca de cómo funciona esto, consulte Entre bastidores: cómo genera el sistema un BOD.)
También puede llamar a este procedimiento almacenado desde un desencadenante, otro SP o una clase de extensión IDO (y probablemente otros contextos si fuera necesario).
Si planea generar diferentes documentos XML para sitios de destino diferentes, puede incluir el sitio de destino adecuado Nombre de intranet en el registro de referencia cruzada del documento de réplica.
Ejemplo de configuración de desencadenante de función
Cuando se invoca la "función" TriggerSalesOrderSyncSp por parte de una acción de sistema, quiere que se genere el BOD.
En el formulario Referencias cruzadas de salida de documento de réplica, especifique esta información del desencadenante:
- Aplicable a IDO: SP!
- Aplicable a acción IDO: Invocar
- Aplicable a método: TriggerSalesOrderSyncSp
En el formulario Categorías de réplica, especifique esta información del desencadenante:
- Tabla o función: TriggerSalesOrderSyncSp
- Tipo de objeto: SP
- Filtro: Deje este campo en blanco.
Defina el resto del BOD y de la configuración de réplica tal y como se especifica en los temas de procedimiento listados anteriormente.
Ejemplo de configuración de desencadenante de tabla
Quiere que un cambio en la vista del empleado en la tabla employee_mst desencadene el BOD, de acuerdo con los filtros y casillas de verificación que ha especificado en el formulario Categorías de réplica.
En el formulario Referencias cruzadas de salida de documento de réplica, especifique esta información del desencadenante:
- Aplicable a IDO: TABLE!employee
- Aplicable a acción IDO: UpdateCollection
- Aplicable a método: N/D
En el formulario Categorías de réplica, especifique esta información del desencadenante:
- Tabla o función: empleado
- Tipo de objeto: Tabla
- Filtro: Especifique cualquier filtro adecuado.
Establezca el resto de las columnas según se necesite.
Defina el resto del BOD y de la configuración de réplica tal y como se especifica en los temas de procedimiento listados anteriormente. Si utiliza campos clave no principales de UpdateCollection (nombres de columna) como propiedades, a continuación, debe establecer la casilla de verificación Actualizar todas las columnas en el formulario Reglas de réplica. Cuando añade una regla de réplica para una tabla, debe regenerar los desencadenantes de réplica.