Ayuda sobre productos BOLD:

Control

< Volver

La propiedad Control está disponible en los objetos principales Empleado y Contrato. Esta propiedad permite controlar quién tiene permiso para efectuar modificaciones sobre esos objetos (o eliminarlos).

Los valores por defecto (ver fichero query.xml) son los siguientes (es de tipo enumerado): <EnumControl v1=»No definido» v2=»BOLD» v3=»Excel»/>


Como caso particular, en una implantación es posible redefinir (ver fichero querycustom.xml) este enumerado. Por ejemplo:

<EnumControl v1=»No definido» v2=»BOLD» v3=»Excel» v4=»Sistema externo 1″ />

Por defecto cualquier objeto con la propiedad Control, adopta el primer valor (No definido). Como se ha comentado, el valor de la propiedad identifica quién puede efectuar una modificación sobre los datos del objeto:

No definido: el objeto es modificable por cualquier usuario o usuaria desde dentro de la aplicación o bien desde una carga de excel (también desde dentro de la aplicación).

BOLD: el objeto sólo se puede manipular utilizando el front-end de la aplicación.

Excel: el objeto sólo se puede manipular efectuando una importación desde un fichero Excel, desde dentro de la aplicación.

Internamente, cuando se va a efectuar una modificación del objeto se compara el valor de esta propiedad con la del objeto a modificar para ver si coinciden, y en su caso finalizar la grabación.

Adicionalmente, para las importaciones desde Excel o mediante el módulo BOLDXML es posible efectuar un control más fino de las propiedades en función del origen, y no tan sólo a nivel del propio objeto. Para ello se personaliza la sección ImportControl del querycustom. A continuación se muestra un posible extracto de dicha configuración:

<ImportControl Enabled="true" AllowDeleteContracts="false">
       <Entity Name="ContractWorker" Property="PlanArea" Control="Excel" />
       <Entity Name="ContractWorker" Property="PlanArea" Control="Enter">
           <![CDATA[
               IfElse( Old.PlanArea="CANVIA", true, false )
          ]]>
       </Entity>
       <Entity Name="ContractWorker" Property="Company" Control="Excel" />
       <Entity Name="Worker" Property="FechaAntiguedad" Control="Excel" />
   </ImportControl>

La configuración anterior actúa de la siguiente forma:

  • el atributo Enabled: por defecto será true. Si vale false desactiva todo el sistema de control en la importación. Ignora todo lo demás como si no estuviera.
  • el atributo AllowDeleteContracts: por defecto valdrá false. Si vale true permite borrar contratos que tengan propiedades bajo control. Es decir, si el contrato cumple con el control, antes no se permitía borrarlo si alguna propiedad estaba sometida a control, poniendo este atributo a true se permitirá borrar.
  • el atributo PlanArea de tipo de ContractWorker sólo puede manipularse desde Excel para aquellos objetos cuyo valor de «Control» sea igual a «Excel», o desde un sistema externo denominado «Enter», pero no puede editarse manualmente desde dentro de la aplicación (a menos que el objeto en cuestión tenga «Control»=»No definido»).
  • además cuando se intente modificar el valor del atributo PlanArea desde el sistema «Enter», sólo se permitirá si la expresión anterior, evaluada en el contexto del contrato «Old» (objeto contrato actual) y «New» (objeto contrato nuevo) se cumple: Old.PlanArea==»CANVIA»
  • la propiedad «Company» sólo puede modificarse desde Excel,
  • la propiedad FechaAntigüedad de los objetos de tipo empleado (Worker) sólo se puede modificar desde Excel para aquellos objetos Worker cuyo «Control»=»Excel».
Was this article helpful?
0 out Of 5 Stars
5 Estrellas 0%
4 Estrellas 0%
3 Estrellas 0%
2 Estrellas 0%
1 Estrellas 0%
5
How can we improve this article?
How Can We Improve This Article?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Contenido