Validación de la entrada de usuario en campos

Puede utilizar un enganche de validación para verificar si la información que ha entrado el usuario en un campo es válida. Si no es válida, se solicita al usuario que entre información válida.

Acerca de esta tarea

Cuando define un nuevo enganche BASIC o Perl para un campo o acción, se añade la sintaxis de llamada para dicho enganche a la ventana del editor de scripts. La sintaxis de llamada no se puede editar.

Puesto que los enganches pueden afectar al comportamiento de un campo, diseñe y pruebe detenidamente los enganches antes de ponerlos a disposición de los usuarios. Por ejemplo, este ejemplo de enganche de entrada de usuario convierte de forma eficiente el campo user_number en un campo obligatorio, independientemente del valor en la cuadrícula Comportamiento.

Procedimiento

  1. Inicie el Diseñador.
  2. En la vista Explorador del repositorio de esquemas de ClearQuest, expanda la carpeta Tipos de registro en el esquema y, a continuación, efectúe una doble pulsación en el tipo de registro. El editor de tipos de registros se abrirá.
  3. Pulse el separador Campos para ver la cuadrícula Campos de registro.
  4. En la cuadrícula Campos, pulse la celda Validación del campo que desea modificar y pulse la fecha hacia abajo para que se muestre una lista de los enganches disponibles. Pulse SCRIPTS > BASIC o SCRIPTS > PERL. Si la modalidad de edición instantánea está habilitada, se abrirá el editor de scripts. Si la modalidad de edición instantánea no está habilitada, efectúe una doble pulsación en la celda Validación del campo para iniciar el editor de scripts.

    BASIC y Perl tienen sus propios editores de scripts. En la barra de título de la ventana del Diseñador se indica el tipo de editor. Verifique si utiliza el editor correcto antes de editar código.

  5. Entre el código para validar la entrada de usuario después de estas líneas (en Perl, las líneas empiezan con #):
    REM Devolver una serie no vacía que explique por qué
    REM no se permite el valor actual del campo.
    REM O, si es válido, devolver un valor de serie vacío.
    REM Ejemplo: 
    REM Dim value_info
    REM Set value_info = GetFieldValue(fieldname)
    REM If Len(value_info.GetValue()) < 10 Then
    REM resolution_date_Validation = "Debe tener al menos 10 caracteres de longitud"
    REM End If
    Por ejemplo, si el nombre de campo es "user_number" y el tipo es INT, el código garantiza que los usuarios entren un valor entre 1 y 100:
    REM Devolver una serie no vacía que explique por qué no se
    permite 
    el valor actual del campo
    REM O, si es válido, devolver un valor de serie vacío.
    
    value = GetFieldValue(fieldname).Get Value()
    if Not IsNumeric(value)
      user_number_Validation="El campo no contiene un número."
    Else If (value < 1) or (value > 100) then
      user_number_Validation="El número de usuario debe estar comprendido entre 1 y 100."
    end if