Documentation

TSLAppSistemasModel extends TSLDataModel
in

Modelo para los sistemas que componen una aplicacion.

Todos los modelos deberan tener al menos un id y una version de registro,valor que se usara para ver si hay cambios previo a una actualizacion del mismo.

Por Ejemplo :

class test extends TLSDataModel {
     protected $_var1;
     protected $_var2;

     public function setVar1($var1) {
         $this->_var1 = $var1;
     }

     public function getVar2() {
         return $this->_var2;
     }
}

$clstest = new test();
$clstest->var1 = 'test'; // llamara al metodo setVar1()
$clstest->var2 = 'test'; // hara una asignacion directa usando el  magic method __set
echo  $clstest->var1; // // Retornara directamente el valor  de $_var1  usando el  magic methosd __get
echo  $clstest->var2; // // Llamara al metodo  getVar2()

Desde luego se puede llamar a los getters y setters en forma tradicional.

Table of Contents

$sys_systemcode
$sys_sistema_descripcion
$id identificador unico del registro que representa este modelo. int|string
$versionId identificador unico de la version del modelo en la persistencia, un cambio en este valor representara que el registro representado por este modelo ha sido modificado. int|string
$usuario Usuario que creo el modelo en la persistencia. string
$usuario_mod Ultimo usuario que modifico el modelo en la persistencia. string
$activo Por default TRUE , indica si el modelo esta activo en la persistencia bool
$fecha_creacion DateTime
$fecha_modificacion DateTime
get_sys_systemcode() string
set_sys_systemcode() Setea el identificador unico del sistema. void
get_sys_sistema_descripcion() string
set_sys_sistema_descripcion() void
getPKAsArray() Retorna un arreglo con las llaves primarias del modelo. array
__construct() Constructor mixed
__set() Override del metodo magico __get void
__get() Primero trata de llamar el metodo basado en el nombre del parametro , si el metodo no existe tratara de setear directamente el valor. mixed
setOptions() Este metodo setea los atributos del modelo de datos basado en un arreglo. void
getAsArray() Este metodo retorna todos los atributos en forma de un arreglo de pares key -> value Para usos especificos puede hacerse override. array
getId() Retorna el unique id que identifica a este data model mixed
setId() Setea el unique id de el data model. mixed
getUniqueCode() Hay casos en que el codigo unico no es el id y el id se usa por eficiencia en los joins o en otras cosas el id no se usa ya que se usa data migrada y se requeire que el codigo sea unico. mixed
getVersionId() Retorna el numero de version del record que representa este Data Model. int
setVersionId() Setea la version del record que represnta el data model, este solo debe ser seteado desde la persistencia nunca desde el cliente. void
getUsuario() string
setUsuario() Setea el identificador de usuario. void
get_Fecha_creacion() DateTime
set_Fecha_creacion() Setea la fecha de creacion del registro. void
get_Usuario_mod() string
set_Usuario_mod() Setea el usuario que modifica el registro. void
get_Fecha_modificacion() DateTime
set_Fecha_modificacion() Setea la fecha de modificacion del registro. void
setActivo() Si se desea que un modelo este inactivo pero no eliminado este campos era util para eso. void
getActivo() Retorna TRUE si esta activo. bool
getPKAsArray() Retorna un arreglo con las llaves primarias del modelo. array
isPKSequenceOrIdentity() Muchas veces el id es una secuencia o identity , si ese fuera el caso el tratamiento durante digamos un insert es diferente , ya que luego del insert hay que determinar este valor , en cambio si el id es una llave primaria ingresada previo al update (osea no es identity o sequence) el valor de la llave unica es conocida previamente. bool
toJSON() Convierte el objeto a JSON string
getAsBool() Evalua el parametro y devuelve un valor booleano luego del analisis del mismo , esto es ya que muchas persistencias de datos en especial las bases de datos devuelven diferentes valores como : f , F,T,Y etc para representar un booleano en la base de datos. bool

Properties

$id

identificador unico del registro que representa este modelo.

protected int|string $id

$versionId

identificador unico de la version del modelo en la persistencia, un cambio en este valor representara que el registro representado por este modelo ha sido modificado.

protected int|string $versionId

$usuario

Usuario que creo el modelo en la persistencia.

protected string $usuario

$usuario_mod

Ultimo usuario que modifico el modelo en la persistencia.

protected string $usuario_mod

$activo

Por default TRUE , indica si el modelo esta activo en la persistencia

protected bool $activo = \TRUE

$fecha_modificacion

protected DateTime $fecha_modificacion

Methods

get_sys_systemcode()

public get_sys_systemcode( ) : string
Return values
string

con el identificador unico de la aplicacion

set_sys_systemcode()

Setea el identificador unico del sistema.

public set_sys_systemcode( $sys_systemcode : string ) : void
Parameters
$sys_systemcode : string

get_sys_sistema_descripcion()

public get_sys_sistema_descripcion( ) : string
Return values
string

set_sys_sistema_descripcion()

public set_sys_sistema_descripcion( $sys_sistema_descripcion : string ) : void
Parameters
$sys_sistema_descripcion : string

getPKAsArray()

Retorna un arreglo con las llaves primarias del modelo.

public getPKAsArray( ) : array

Implementacion default.

Return values
array

con las llaves primarias del modelo

__construct()

Constructor

public __construct( [ $options : array = null ] ) : mixed

Si un arreglo de nombres - valores es enviado estos son usados para inicializar los atributos de la clase.

IMPORTANTE : cada atributo de la clase debera ser declarada protected en las subclases

Por ejemplo si el arreglo es ('field1'=>'val1','field2'=>'val2') , la subclase debera tener como atributos protegidos $field1 and $field2.

Parameters
$options : array = null

arreglo con los pares que representan el Campo-Valor

Return values
mixed

__set()

Override del metodo magico __get

public __set( $name : string , $value : mixed ) : void

Primero trata de llamar el metodo basado en el nombre del parametro , si el metodo no existe tratara de setear directamente el valor.

IMPORTANTE : El metodo setter si es creado en la subclase necesita usar el Camel case , por ejemplo $this->attr = 'test' tratara de llamar al setter setAttr.

Si el metodo no existe tratara de accesar el atributo , por eso estos deben ser protected.

Parameters
$name : string

con el nombre del attribute

$value : mixed

El valor a asignar al atributo

__get()

Primero trata de llamar el metodo basado en el nombre del parametro , si el metodo no existe tratara de setear directamente el valor.

public __get( $name : string ) : mixed

IMPORTANTE : El metodo getter si es creado en la subclase necesita usar el Camel case , por ejemplo echo $this->attr tratara de llamar al getter getAttr.

Si el metodo no existe tratara de accesar el atributo , por eso estos deben ser protected.

Parameters
$name : string

string con el nombre del attribute

Return values
mixed

setOptions()

Este metodo setea los atributos del modelo de datos basado en un arreglo.

public setOptions( $options : array ) : void

Para cada elemento se buscara primero si existe el metodo detter , de no haberlo trata de hacerlo directamente.

Parameters
$options : array

un arreglo con los elementos conteniendo los pares attr->value .

getAsArray()

Este metodo retorna todos los atributos en forma de un arreglo de pares key -> value Para usos especificos puede hacerse override.

public getAsArray( ) : array
Tags
access

public

Return values
array

with the properties.

getId()

Retorna el unique id que identifica a este data model

public getId( ) : mixed
Return values
mixed

con el identificador

setId()

Setea el unique id de el data model.

public setId( $id : mixed ) : mixed
Parameters
$id : mixed

con el identificador unico, no NULL!!

Return values
mixed

getUniqueCode()

Hay casos en que el codigo unico no es el id y el id se usa por eficiencia en los joins o en otras cosas el id no se usa ya que se usa data migrada y se requeire que el codigo sea unico.

public getUniqueCode( ) : mixed

En estos casos el codigo unico difirere del id , debera sobreescribirse este metodo en esos casos.

Return values
mixed

con el codigo unico que identifica al registro.

getVersionId()

Retorna el numero de version del record que representa este Data Model.

public getVersionId( ) : int
Return values
int

con la version correspodiente a la version del datamodel en la persistencia.

setVersionId()

Setea la version del record que represnta el data model, este solo debe ser seteado desde la persistencia nunca desde el cliente.

public setVersionId( $versionId : int ) : void
Parameters
$versionId : int

con el valor de la version del registor

getUsuario()

public getUsuario( ) : string
Return values
string

con el identificador del usuario

setUsuario()

Setea el identificador de usuario.

public setUsuario( $usuario : string ) : void
Parameters
$usuario : string

get_Fecha_creacion()

public get_Fecha_creacion( ) : DateTime
Return values
DateTime

con la fecha de creacion del registor

set_Fecha_creacion()

Setea la fecha de creacion del registro.

public set_Fecha_creacion( $fecha_creacion : DateTime ) : void
Parameters
$fecha_creacion : DateTime

get_Usuario_mod()

public get_Usuario_mod( ) : string
Return values
string

con el identificador de usuario que modifica

set_Usuario_mod()

Setea el usuario que modifica el registro.

public set_Usuario_mod( $usuario_mod : string ) : void
Parameters
$usuario_mod : string

get_Fecha_modificacion()

public get_Fecha_modificacion( ) : DateTime
Return values
DateTime

con la fecha de modificacion del registro.

set_Fecha_modificacion()

Setea la fecha de modificacion del registro.

public set_Fecha_modificacion( $fecha_modificacion : DateTime ) : void
Parameters
$fecha_modificacion : DateTime

setActivo()

Si se desea que un modelo este inactivo pero no eliminado este campos era util para eso.

public setActivo( $activo : bool ) : void

Importante no se usa el hint por problemas en la interpretacion del bool sobre todo cuando lo recuperamos de otro objeto y este es por un ejemplo un string con 'false' seria tomado como true

Parameters
$activo : bool

, 1 o true , 0 o false

getActivo()

Retorna TRUE si esta activo.

public getActivo( ) : bool
Return values
bool

TRUE verdadero FALSE falso

getPKAsArray()

Retorna un arreglo con las llaves primarias del modelo.

public getPKAsArray( ) : array

Implementacion default.

Return values
array

con las llaves primarias del modelo

isPKSequenceOrIdentity()

Muchas veces el id es una secuencia o identity , si ese fuera el caso el tratamiento durante digamos un insert es diferente , ya que luego del insert hay que determinar este valor , en cambio si el id es una llave primaria ingresada previo al update (osea no es identity o sequence) el valor de la llave unica es conocida previamente.

public isPKSequenceOrIdentity( ) : bool

Es recomendable que si luego de hacer un insert se requiere leer el ultimo valor insertado para colocarlo en el modelo se llame a este metodo para verificar si es una llave secuenciada o identity ya que de ser asi getId() o getUniqueCode() tendran como valor null.

LAs previsiones de como resolver este problema se deja para las clases que efectuan las tareas sobre el modelo.

Por default retornara null suponiendo que el id es un campo digamos digitado y no automatico, el modelo final debera hacer un override a este metodo de no ser asi.

Return values
bool

true si el id es secuencia o identity o false si no lo es

toJSON()

Convierte el objeto a JSON

public toJSON( ) : string
Return values
string

conteniendo la represemtacion de data model en JSON

getAsBool()

Evalua el parametro y devuelve un valor booleano luego del analisis del mismo , esto es ya que muchas persistencias de datos en especial las bases de datos devuelven diferentes valores como : f , F,T,Y etc para representar un booleano en la base de datos.

protected static getAsBool( $value : mixed ) : bool
Parameters
$value : mixed
Return values
bool

Search results