DISEÑO DE APLICACIONES
Si desea crear un formulario de suscripción personalizado en su base de datos, puede comenzar con el formulario de suscripción predeterminado, denominado $Subscription, de la base de datos Headlines.nsf o Headlines.ntf que incluye IBM® Lotus® Domino(TM) Designer. En primer lugar, copie y pegue el formulario en su base de datos y, a continuación, personalícelo. Cuando lo haga, incluya el campo de fórmulas. El campo de fórmulas del formulario $Subscription se denomina $HLFormula y se encuentra en la segunda ficha de la tabla con fichas que hay a la derecha del mismo El campo $HLFormula es un campo calculado. Si decide conservar este campo como campo calculado, deberá escribir una fórmula que dé como resultado una fórmula de selección para la lista de suscripciones. Un campo de fórmulas debe dar como resultado una fórmula de selección para que el servidor pueda emplearlo para obtener el criterio de suscripción del usuario.
Otra opción consiste en seleccionar Campos como literales en la ficha Info. campo del cuadro de propiedades del campo. Al hacerlo, estará programando el campo de fórmulas para que acepte la fórmula sin compilarla. Si está haciendo literal una fórmula, las referencias de los campos deberán ser: texto, listas de texto, números, listas de números, fechas/horas, intervalos o listas de fechas/horas. Si el campo al que se hace referencia es de cualquier otro tipo, se quedará como una referencia de campo.
El siguiente ejemplo es una fórmula para un campo de fórmulas en el que se ha seleccionado la opción Campos como literales:
Select (Nombres = EjemploNombres) & (Números = EjemploNúmeros) & (Categorías = EjemploCategorías)& (Fechas = EjemploFechas)
Si el documento actual posee estos campos y valores:
Select (Nombres = "Sara Rivas/HyD" : "Javier Tenorio/HyD" ) & (Números = 1 : 2 : 3) & (Categorías = "Huelva" : "Almería" : "Valencia") & (Fechas = [26/03/82]:[10/08/86]:[30/05/98]
Si selecciona la opción calculada, la fórmula que escriba deberá dar como resultado otra fórmula. Esto proporciona la capacidad de mejorar fórmulas complicadas antes de que se guarden. Una vez que la fórmula ha sido evaluada, la fórmula resultante se guarda.
Si la fórmula resultante no es válida, el campo se guarda con un valor de tipo de error. Ello provoca, en ciertos casos, que el usuario no pueda abandonar el documento. Para diferenciar entre acierto y fallo, el desarrollador de plantillas debería probar la fórmula con el evento QuerySave para determinar si el campo de fórmula es efectivamente del tipo fórmula. Si no lo es, el cálculo no dará como resultado una fórmula válida.
Por ejemplo, un campo de fórmula calculada posee la fórmula siguiente:
tLitNombres := "\"" + @Implode( EjemploNombres; "\" : \"") + "\"";
tLitNumeros := @Implode( @Text(EjemploNumeros); " : ");
tLitCategorias := "\"" + @Implode( EjemploCategorias; "\" : \"") + "\"";
"Select (Nombres = " + tLitNombres + ") & (Numeros = " + tLitNumeros + ") & (Categorias = " + tLitCategorias + ")"
Select (Nombres = "Sara Rivas/HyD" : "Javier Tenorio/HyD" ) & (Numeros = 1 : 2 : 3) & (Categorias = "Huelva" : "Almería" : "Valencia")
Véase también