Eneboo - Documentación para desarrolladores
Tipos públicos | Slots públicos | Señales | Métodos públicos | Métodos públicos estáticos | Métodos protegidos
Referencia de la Clase FLSqlCursor

#include <FLSqlCursor.h>

Diagrama de herencias de FLSqlCursor
QObject QSqlCursor Qt Qt QSqlRecord QSqlQuery QSqlRecord QSqlQuery AQSqlCursor

Lista de todos los miembros.

Tipos públicos

enum  Mode { INSERT = 0, EDIT = 1, DEL = 2, BROWSE = 3 }
enum  AcosConditionEval { VALUE = 0, REGEXP = 1, FUNCTION = 2 }

Slots públicos

void refresh (const QString &fN=QString::null)
void refreshDelayed (int msec=50)
bool refreshBuffer ()
bool setEditMode ()
bool seek (int i, bool relative=false, bool emite=false)
bool next (bool emite=true)
bool prev (bool emite=true)
bool first (bool emite=true)
bool last (bool emite=true)
int del (bool invalidate=true)
bool select (const QString &filter, const QSqlIndex &sort=QSqlIndex())
void setSort (const QSqlIndex &sort)
QString baseFilter ()
QString curFilter ()
void setFilter (const QString &filter)
void insertRecord ()
void editRecord ()
void browseRecord ()
void deleteRecord ()
void copyRecord ()
void chooseRecord ()
bool commitBuffer (bool emite=true, bool checkLocks=false)
bool commitBufferCursorRelation ()
static int transactionLevel ()
QStringList transactionsOpened ()
void rollbackOpened (int count=-1, const QString &msg=QString::null)
void commitOpened (int count=-1, const QString &msg=QString::null)
void checkRisksLocks (bool terminate=false)
void setAcTable (const QString &ac)
void setAcosTable (const QStringList &acos)
void setAcosCondition (const QString &condName, AcosConditionEval cond, const QVariant &condVal)
QStringList concurrencyFields ()

Señales

void newBuffer ()
void bufferChanged (const QString &)
void cursorUpdated ()
void recordChoosed ()
void currentChanged (int)
void autoCommit ()
void bufferCommited ()

Métodos públicos

 FLSqlCursor (const QString &name=QString::null, bool autopopulate=true, const QString &connectionName="default", FLSqlCursor *cR=0, FLRelationMetaData *r=0, QObject *parent=0)
 FLSqlCursor (const QString &name, bool autopopulate, QSqlDatabase *db, FLSqlCursor *cR=0, FLRelationMetaData *r=0, QObject *parent=0)
 ~FLSqlCursor ()
FLTableMetaData * metadata () const
int modeAccess () const
QString mainFilter () const
const FLAction * action () const
void setAction (const FLAction *a)
void setMainFilter (const QString &f)
void setModeAccess (const int m)
void setAtomicValueBuffer (const QString &fN, const QString &functionName)
void setValueBuffer (const QString &fN, const QVariant &v)
QVariant valueBuffer (const QString &fN)
QVariant valueBufferCopy (const QString &fN) const
void setEdition (bool b)
void setBrowse (bool b)
void setContext (QObject *c)
QObject * context () const
bool fieldDisabled (const QString &fN)
bool transaction (bool lock=false)
bool rollback ()
bool commit (bool notify=true)
void openFormInMode (int m, bool cont=true)
void updateBufferCopy ()
bool isModifiedBuffer ()
void setAskForCancelChanges (bool a)
void setActivatedCheckIntegrity (bool a)
void setActivatedCommitActions (bool a)
QString msgCheckIntegrity ()
bool checkIntegrity (bool showError=true)
FLSqlCursor * cursorRelation () const
FLRelationMetaData * relation () const
void setUnLock (const QString &fN, bool v)
bool isLocked ()
bool bufferIsNull (int i) const
bool bufferIsNull (const QString &name) const
void bufferSetNull (int i) const
void bufferSetNull (const QString &name) const
bool bufferCopyIsNull (int i) const
bool bufferCopyIsNull (const QString &name) const
void bufferCopySetNull (int i) const
void bufferCopySetNull (const QString &name) const
int atFrom ()
int atFromBinarySearch (const QString &fN, const QString &v, bool orderAsc=true)
bool exec (const QString &query)
FLSqlDatabase * db () const

Métodos públicos estáticos

static bool inTransaction ()

Métodos protegidos

QVariant calculateField (const QString &name)
void afterSeek ()

Descripción detallada

Esta clase es una extensión de la clase QSqlCursor para la necesidades especificas de AbanQ.

Hereda de QSqlCursor, y añade ciertas funcionalidades. Esta clase se utiliza para gestionar los registros de una sola tabla. Tambien mantiene una copia de los metadatos (ver FLTableMetaData) de dicha tabla.

También puede ser utilizada para manejar conjuntos de registros provenientes de una consulta, si la definición de los metadatos corresponden a una consulta. En este caso las operaciones sobre el cursor se realizarán sobre la tabla principal de la consulta, ver FLTableMetaData::query().

El funcionamiento de esta clase radica en el modo de acceso en el que se encuentre, INSERTAR,MODIFICAR,BORRAR,NAVEGAR. Se mantiene siempre un registro completo del cursor, en un buffer, dependiendo del modo de acceso, este buffer contendrá un registro listo para INSERTAR en blanco, para MODIFICAR con el contenido del registro actual del cursor, para BORRAR con el contenio del registro actual listo para borrar, o para NAVEGAR con el contenido del registro actual en módo de sólo lectura.

Las acciones asociadas a INSERTAR,MODIFICAR, o BORRAR, son llevadas a cabo cuando se envía el contenido del buffer de nuevo al cursor, con FLSqlCursor::commitBuffer , esta acción lleva implicito un chequeo de integridad para que se realize, ver FLSqlCursor::checkIntegrity.

Autor:
InfoSiAL S.L.

Documentación de las enumeraciones miembro de la clase

Constantes para indicar el tipo de condicion para evaluar si se aplica o no el control de acceso

Valores de enumeraciones:
VALUE 

evalua un valor fijo

REGEXP 

evalua una expresion regular

FUNCTION 

evalua el valor devuelto por una funcion de script

Constantes para indicar el tipo de acceso al cursor

Valores de enumeraciones:
INSERT 

Insertar, en este modo el buffer se prepara para crear un nuevo registro

EDIT 

Edición, en este modo el buffer se prepara para editar el registro activo

DEL 

Borrar, en este modo el buffer se prepara para borrar el registro activo

BROWSE 

Navegacion, en este modo solo se puede visualizar el buffer

Reimplementado de QSqlCursor.


Documentación del constructor y destructor

FLSqlCursor::FLSqlCursor ( const QString &  name = QString::null,
bool  autopopulate = true,
const QString &  connectionName = "default",
FLSqlCursor *  cR = 0,
FLRelationMetaData *  r = 0,
QObject *  parent = 0 
)

constructor.

Parámetros:
cRCursor relacionado con este. Al indicar que este cursor depende de otro, el contenido del cursor está en función del valor actual del campo por el que se establece la relación del cursor relacionado
rRelación que indica como se relacionan los dos cursores
connectionNameNombre de la conexion
FLSqlCursor::FLSqlCursor ( const QString &  name,
bool  autopopulate,
QSqlDatabase *  db,
FLSqlCursor *  cR = 0,
FLRelationMetaData *  r = 0,
QObject *  parent = 0 
)

Sobrecargado por conveniencia

FLSqlCursor::~FLSqlCursor ( )

destructor.


Documentación de las funciones miembro

const FLAction* FLSqlCursor::action ( ) const [inline]

Para obtener la accion asociada al cursor.

Devuelve:
Objeto FLAction
void FLSqlCursor::afterSeek ( ) [protected, virtual]

Redefinicion del método afterSeek() de QSqlCursor.

Reimplementado de QSqlCursor.

int FLSqlCursor::atFrom ( )

Obtiene la posición del registro actual, según la clave primaria contenida en el buffer.

La posición del registro actual dentro del cursor se calcula teniendo en cuenta el filtro actual ( FLSqlCursor::curFilter() ) y el campo o campos de ordenamiento del mismo ( QSqlCursor::sort() ). Este método es útil, por ejemplo, para saber en que posición dentro del cursor se ha insertado un registro.

Devuelve:
Posición del registro dentro del cursor, o 0 si no encuentra coincidencia.
int FLSqlCursor::atFromBinarySearch ( const QString &  fN,
const QString &  v,
bool  orderAsc = true 
)

Obtiene la posición dentro del cursor del primer registro que en el campo indicado empieze con el valor solicitado. Supone que los registros están ordenados por dicho campo, para realizar una búsqueda binaria.

La posición del registro actual dentro del cursor se calcula teniendo en cuenta el filtro actual ( FLSqlCursor::curFilter() ) y el campo o campos de ordenamiento del mismo ( QSqlCursor::sort() ). Este método es útil, por ejemplo, para saber en que posición dentro del cursor se encuentra un registro con un cierto valor en un campo.

Parámetros:
fNNombre del campo en el que buscar el valor
vValor a buscar ( mediante like 'v%' )
orderAscTRUE (por defecto) si el orden es ascendente, FALSE si es descendente
Devuelve:
Posición del registro dentro del cursor, o 0 si no encuentra coincidencia.
void FLSqlCursor::autoCommit ( ) [signal]

Indica que se ha realizado un commit automático para evitar bloqueos

QString FLSqlCursor::baseFilter ( ) [slot]

Obtiene el filtro base

void FLSqlCursor::browseRecord ( ) [slot]

Abre el formulario de edicion de registro definido en los metadatos (FLTableMetaData) listo para sólo visualizar el registro activo del cursor.

void FLSqlCursor::bufferChanged ( const QString &  ) [signal]

Indica ha cambiado un campo del buffer, junto con la señal se envía el nombre del campo que ha cambiado.

void FLSqlCursor::bufferCommited ( ) [signal]

Indica que se ha realizado un commit

bool FLSqlCursor::bufferCopyIsNull ( const QString &  name) const

Devuelve si el contenido de un campo en el bufferCopy en nulo.

Parámetros:
nameNombre del campo en el bufferCopy
bool FLSqlCursor::bufferCopyIsNull ( int  i) const

Devuelve si el contenido de un campo en el bufferCopy en nulo.

Parámetros:
iPosicion del campo en el bufferCopy
void FLSqlCursor::bufferCopySetNull ( int  i) const

Establece que el contenido de un campo en el bufferCopy sea nulo.

Parámetros:
iPosicion del campo en el bufferCopy
void FLSqlCursor::bufferCopySetNull ( const QString &  name) const

Establece que el contenido de un campo en el bufferCopy sea nulo.

Parámetros:
nameNombre del campo en el bufferCopy
bool FLSqlCursor::bufferIsNull ( int  i) const

Devuelve si el contenido de un campo en el buffer es nulo.

Parámetros:
iPosicion del campo en el buffer
bool FLSqlCursor::bufferIsNull ( const QString &  name) const

Devuelve si el contenido de un campo en el buffer es nulo.

Parámetros:
nameNombre del campo en el buffer
void FLSqlCursor::bufferSetNull ( int  i) const

Establece que el contenido de un campo en el buffer sea nulo.

Parámetros:
iPosicion del campo en el buffer
void FLSqlCursor::bufferSetNull ( const QString &  name) const

Establece que el contenido de un campo en el buffer sea nulo.

Parámetros:
nameNombre del campo en el buffer
QVariant FLSqlCursor::calculateField ( const QString &  name) [protected, virtual]

Redefinida

Reimplementado de QSqlCursor.

bool FLSqlCursor::checkIntegrity ( bool  showError = true)

Realiza comprobaciones de intregidad.

Se comprueba la integridad referencial al intentar borrar, tambien se comprueba la no duplicidad de claves primarias y si hay nulos en campos que no lo permiten cuando se inserta o se edita. Si alguna comprobacion falla muestra un cuadro de diálogo con el tipo de fallo encontrado y el metodo devuelve FALSE.

Parámetros:
showErrorSi es TRUE muestra el cuadro de dialogo con el error que se produce al no pasar las comprobaciones de integridad
Devuelve:
TRUE si se ha podido entregar el buffer al cursor, y FALSE si ha fallado alguna comprobacion de integridad
void FLSqlCursor::checkRisksLocks ( bool  terminate = false) [slot]

Entra en un bucle de comprobacion de riesgos de bloqueos para esta tabla y el registro actual

El bucle continua mientras existan bloqueos, hasta que se vuelva a llamar a este método con 'terminate' activado o cuando el usuario cancele la operación.

Parámetros:
terminateTrue terminará el bucle de comprobaciones si está activo
void FLSqlCursor::chooseRecord ( ) [slot]

Realiza la acción asociada a elegir un registro del cursor, por defecto se abre el formulario de edición de registro,llamando al método FLSqlCursor::editRecord(), si la bandera FLSqlCursor::edition indica TRUE, si indica FALSE este método no hace nada

bool FLSqlCursor::commit ( bool  notify = true)

Hace efectiva la transacción y la acaba.

Parámetros:
notifySi TRUE emite la señal cursorUpdated y pone el cursor en modo BROWSE, si FALSE no hace ninguna de estas dos cosas y emite la señal de autoCommit
Devuelve:
TRUE si la operación tuvo exito
bool FLSqlCursor::commitBuffer ( bool  emite = true,
bool  checkLocks = false 
) [slot]

Manda el contenido del buffer al cursor, o realiza la acción oportuna para el cursor.

Todos los cambios realizados en el buffer se hacen efectivos en el cursor al invocar este método. La manera de efectuar estos cambios viene determinada por el modo de acceso establecido para el cursor, ver FLSqlCursor::Mode, si el modo es editar o insertar actualiza con los nuevos valores de los campos del registro, si el modo es borrar borra el registro, y si el modo es navegacion no hace nada. Antes de nada tambien comprueba la integridad referencial invocando al método FLSqlCursor::checkIntegrity().

Si existe un campo calculado se invoca a la función "calculateField" del script del contexto (ver FLSqlCursor::ctxt_) establecido para el cursor. A esta función se le pasa como argumento el nombre del campo calculado y debe devolver el valor que debe contener ese campo, p.e. si el campo es el total de una factura y de tipo calculado la función "calculateField" debe devolver la suma de lineas de las facturas mas/menos impuestos y descuentos.

Parámetros:
emiteTrue para emitir señal cursorUpdated
checkLocksTrue para comprobar riesgos de bloqueos para esta tabla y el registro actual
Devuelve:
TRUE si se ha podido entregar el buffer al cursor, y FALSE si ha fallado la entrega
bool FLSqlCursor::commitBufferCursorRelation ( ) [slot]

Manda el contenido del buffer del cursor relacionado a dicho cursor.

Hace efectivos todos los cambios en el buffer del cursor relacionado posiconándose en el registro correspondiente que recibe los cambios.

void FLSqlCursor::commitOpened ( int  count = -1,
const QString &  msg = QString::null 
) [slot]

Termina transacciones abiertas por este cursor.

Parámetros:
countCantidad de transacciones a terminar, -1 todas.
msgCadena de texto que se muestra en un cuadro de diálogo antes de terminar las transacciones. Si es vacía no muestra nada.
QStringList FLSqlCursor::concurrencyFields ( ) [slot]

Comprueba si hay una colisión de campos editados por dos sesiones simultáneamente.

Devuelve:
Lista con los nombres de los campos que colisionan
QObject* FLSqlCursor::context ( ) const [inline]

Para obtener el contexto de ejecución de scripts.

Ver FLSqlCursor::ctxt_.

Devuelve:
Contexto de ejecución
void FLSqlCursor::copyRecord ( ) [slot]

Realiza la accion de insertar un nuevo registro, y copia el valor de los campos del registro actual.

QString FLSqlCursor::curFilter ( ) [slot]

Obtiene el filtro actual

void FLSqlCursor::currentChanged ( int  ) [signal]

Indica que la posicion del registro activo dentro del cursor ha cambiado

FLSqlCursor* FLSqlCursor::cursorRelation ( ) const [inline]

Devuelve el cursor relacionado con este.

void FLSqlCursor::cursorUpdated ( ) [signal]

Indica que se ha actualizado el cursor

FLSqlDatabase* FLSqlCursor::db ( ) const [inline]

Para obtener la base de datos sobre la que trabaja

int FLSqlCursor::del ( bool  invalidate = true) [virtual, slot]

Redefinicion del método del() de QSqlCursor.

Este método invoca al método del() original de QSqlCursor() y comprueba si hay borrado en cascada, en caso afirmativo borrar también los registros relacionados en cardinalidad 1M.

Reimplementado de QSqlCursor.

void FLSqlCursor::deleteRecord ( ) [slot]

Borra, pidiendo confirmacion, el registro activo del cursor.

void FLSqlCursor::editRecord ( ) [slot]

Abre el formulario de edicion de registro definido en los metadatos (FLTableMetaData) listo para editar el registro activo del cursor.

bool FLSqlCursor::exec ( const QString &  query) [virtual]

Redefinido por conveniencia

Reimplementado de QSqlCursor.

bool FLSqlCursor::fieldDisabled ( const QString &  fN)

Dice si un campo está deshabilitado.

Un campo estará deshabilitado, porque esta clase le dará un valor automáticamente. Estos campos son los que están en una relación con otro cursor, por lo que su valor lo toman del campo foráneo con el que se relacionan.

Parámetros:
fNNombre del campo a comprobar
Devuelve:
TRUE si está deshabilitado y FALSE en caso contrario
bool FLSqlCursor::first ( bool  emite = true) [slot]

Redefinicion del método first() de QSqlCursor.

Este método simplemente invoca al método first() original de QSqlCursor() y refresca el buffer con el metodo FLSqlCursor::refreshBuffer().

Parámetros:
emitSi TRUE emite la señal FLSqlCursor::currentChanged()
void FLSqlCursor::insertRecord ( ) [slot]

Abre el formulario de edicion de registro definido en los metadatos (FLTableMetaData) listo para insertar un nuevo registro en el cursor.

bool FLSqlCursor::inTransaction ( ) [static]

Indica si hay una transaccion en curso.

Devuelve:
TRUE si hay una transaccion en curso, FALSE en caso contrario
bool FLSqlCursor::isLocked ( )

Para comprobar si el registro actual del cursor está bloqueado.

Devuelve:
TRUE si está bloqueado, FALSE en caso contrario.
bool FLSqlCursor::isModifiedBuffer ( )

Indica si el contenido actual del buffer difiere de la copia guardada.

Ver FLSqlCursor::bufferCopy_ .

Devuelve:
TRUE si el buffer y la copia son distintas, FALSE en caso contrario
bool FLSqlCursor::last ( bool  emite = true) [slot]

Redefinicion del método last() de QSqlCursor.

Este método simplemente invoca al método last() original de QSqlCursor() y refresca el buffer con el metodo FLSqlCursor::refreshBuffer().

Parámetros:
emitSi TRUE emite la señal FLSqlCursor::currentChanged()
QString FLSqlCursor::mainFilter ( ) const [inline]

Para obtener el filtro principal del cursor.

Devuelve:
Cadena de texto con el filtro principal
FLTableMetaData* FLSqlCursor::metadata ( ) const [inline]

Para obtener los metadatos de la tabla.

Devuelve:
Objeto FLTableMetaData con los metadatos de la tabla asociada al cursor
int FLSqlCursor::modeAccess ( ) const [inline]

Para obtener el modo de acceso actual del cursor.

Devuelve:
Constante FLSqlCursor::Mode que define en que modo de acceso esta preparado el buffer del cursor
QString FLSqlCursor::msgCheckIntegrity ( )

Se comprueba la integridad referencial al intentar borrar, tambien se comprueba la no duplicidad de claves primarias y si hay nulos en campos que no lo permiten cuando se inserta o se edita. Si alguna comprobacion falla devuelve un mensaje describiendo el fallo.

void FLSqlCursor::newBuffer ( ) [signal]

Indica que se ha cargado un nuevo buffer

bool FLSqlCursor::next ( bool  emite = true) [slot]

Redefinicion del método next() de QSqlCursor.

Este método simplemente invoca al método next() original de QSqlCursor() y refresca el buffer con el metodo FLSqlCursor::refreshBuffer().

Parámetros:
emitSi TRUE emite la señal FLSqlCursor::currentChanged()
void FLSqlCursor::openFormInMode ( int  m,
bool  cont = true 
)

Abre el formulario asociado a la tabla origen en el modo indicado.

Parámetros:
mModo de apertura (FLSqlCursor::Mode)
contIndica que se abra el formulario de edición de registros con el botón de aceptar y continuar
bool FLSqlCursor::prev ( bool  emite = true) [slot]

Redefinicion del método prev() de QSqlCursor.

Este método simplemente invoca al método prev() original de QSqlCursor() y refresca el buffer con el metodo FLSqlCursor::refreshBuffer().

Parámetros:
emitSi TRUE emite la señal FLSqlCursor::currentChanged()
void FLSqlCursor::recordChoosed ( ) [signal]

Indica que se ha elegido un registro, mediante doble clic sobre él o bien pulsando la tecla Enter

void FLSqlCursor::refresh ( const QString &  fN = QString::null) [slot]

Refresca el contenido del cursor.

Si no se ha indicado cursor relacionado obtiene el cursor completo, segun la consulta por defecto. Si se ha indicado que depende de otro cursor con el que se relaciona, el contenido del cursor dependerá del valor del campo que determina la relación. Si se indica el nombre de un campo se considera que el buffer sólo ha cambiado en ese campo y así evitar repeticiones en el refresco.

Parámetros:
fNNombre del campo de buffer que ha cambiado
bool FLSqlCursor::refreshBuffer ( ) [slot]

Refresca el buffer segun el modo de acceso establecido.

Lleva informacion del cursor al buffer para editar o navegar, o prepara el buffer para insertar o borrar.

Si existe un campo contador se invoca a la función "calculateCounter" del script del contexto (ver FLSqlCursor::ctxt_) establecido para el cursor. A esta función se le pasa como argumento el nombre del campo contador y debe devolver el valor que debe contener ese campo.

Devuelve:
TRUE si se ha podido realizar el refresco, FALSE en caso contrario
void FLSqlCursor::refreshDelayed ( int  msec = 50) [slot]

Actualiza el conjunto de registros con un retraso.

Acepta un lapsus de tiempo en milisegundos, activando el cronómetro interno para que realize el refresh definitivo al cumplirse dicho lapsus.

Parámetros:
msecCantidad de tiempo del lapsus, en milisegundos.
FLRelationMetaData* FLSqlCursor::relation ( ) const [inline]
bool FLSqlCursor::rollback ( )

Deshace las operaciones de una transacción y la acaba.

Devuelve:
TRUE si la operación tuvo exito
void FLSqlCursor::rollbackOpened ( int  count = -1,
const QString &  msg = QString::null 
) [slot]

Deshace transacciones abiertas por este cursor.

Parámetros:
countCantidad de transacciones a deshacer, -1 todas.
msgCadena de texto que se muestra en un cuadro de diálogo antes de deshacer las transacciones. Si es vacía no muestra nada.
bool FLSqlCursor::seek ( int  i,
bool  relative = false,
bool  emite = false 
) [slot]

Redefinicion del método seek() de QSqlCursor.

Este método simplemente invoca al método seek() original de QSqlCursor() y refresca el buffer con el metodo FLSqlCursor::refreshBuffer().

Parámetros:
emitSi TRUE emite la señal FLSqlCursor::currentChanged()
bool FLSqlCursor::select ( const QString &  filter,
const QSqlIndex &  sort = QSqlIndex() 
) [virtual, slot]

Redefinicion del método select() de QSqlCursor

Reimplementado de QSqlCursor.

void FLSqlCursor::setAcosCondition ( const QString &  condName,
AcosConditionEval  cond,
const QVariant &  condVal 
) [slot]

Establece la condicion que se debe cumplir para aplicar el control de acceso.

Para cada registro se evalua esta condicion y si se cumple, aplica la regla de control de acceso establecida con FLSqlCursor::setAcTable y FLSqlCursor::setAcosTable.

Ejemplos:

setAcosCondition( "nombre", VALUE, "pepe" ); // valueBuffer( "nombre" ) == "pepe" setAcosCondition( "nombre", REGEXP, "pe*" ); // QRegExp( "pe*" ).exactMatch( valueBuffer( "nombre" ).toString() ) setAcosCondition( "sys.checkAcos", FUNCTION, true ); // call( "sys.checkAcos" ) == true

Parámetros:
condTipo de evaluacion; VALUE compara con un valor fijo REGEXP compara con una expresion regular FUNCTION compara con el valor devuelto por una funcion de script
condNameSi es vacio no se evalua la condicion y la regla no se aplica nunca. Para VALUE y REGEXP nombre de un campo. Para FUNCTION nombre de una funcion de script. A la función se le pasa como argumento el objeto cursor.
condValValor que hace que la condicion sea cierta
void FLSqlCursor::setAcosTable ( const QStringList &  acos) [slot]

Establece la lista de control de acceso (ACOs) para los campos de la tabla, , ver FLSqlCursor::setAcosCondition().

Esta lista de textos deberá tener en sus componentes de orden par los nombres de los campos, y en los componentes de orden impar el permiso a aplicar a ese campo, p.e.: "nombre", "r-", "descripcion", "--", "telefono", "rw",...

Los permisos definidos aqui sobreescriben al global.

Parámetros:
acosLista de cadenas de texto con los nombre de campos y permisos.
void FLSqlCursor::setAcTable ( const QString &  ac) [slot]

Establece el acceso global para la tabla, ver FLSqlCursor::setAcosCondition().

Este será el permiso a aplicar a todos los campos por defecto

Parámetros:
acPermiso global; p.e.: "r-", "-w"
void FLSqlCursor::setAction ( const FLAction *  a) [inline]

Establece la accion asociada al cursor.

Parámetros:
aObjeto FLAction
void FLSqlCursor::setActivatedCheckIntegrity ( bool  a) [inline]

Activa o desactiva los chequeos de integridad referencial.

Parámetros:
aTRUE los activa y FALSE los desactiva
void FLSqlCursor::setActivatedCommitActions ( bool  a) [inline]

Activa o desactiva las acciones a realizar antes y después de un commit

Parámetros:
aTRUE las activa y FALSE las desactiva
void FLSqlCursor::setAskForCancelChanges ( bool  a) [inline]

Establece el valor de FLSqlCursor::askForCancelChanges_ .

Parámetros:
aValor a establecer (TRUE o FALSE)
void FLSqlCursor::setAtomicValueBuffer ( const QString &  fN,
const QString &  functionName 
)

Establece el valor de un campo del buffer de forma atómica y fuera de transacción.

Invoca a la función, cuyo nombre se pasa como parámetro, del script del contexto del cursor (ver FLSqlCursor::ctxt_) para obtener el valor del campo. El valor es establecido en el campo de forma atómica, bloqueando la fila durante la actualización. Esta actualización se hace fuera de la transacción actual, dentro de una transacción propia, lo que implica que el nuevo valor del campo está inmediatamente disponible para las siguientes transacciones.

Parámetros:
fNNombre del campo
functionNameNombre de la función a invocar del script
void FLSqlCursor::setBrowse ( bool  b)

Establece el valor de FLSqlCursor::browse.

Parámetros:
bTRUE o FALSE
void FLSqlCursor::setContext ( QObject *  c)

Establece el contexto de ejecución de scripts

Ver FLSqlCursor::ctxt_.

Parámetros:
cContexto de ejecucion
void FLSqlCursor::setEdition ( bool  b)

Establece el valor de FLSqlCursor::edition.

Parámetros:
bTRUE o FALSE
bool FLSqlCursor::setEditMode ( ) [slot]

Pasa el cursor a modo Edit

Devuelve:
True si el cursor está en modo Edit o estaba en modo Insert y ha pasado con éxito a modo Edit
void FLSqlCursor::setFilter ( const QString &  filter) [virtual, slot]

Redefinicion del método setFilter() de QSqlCursor

Reimplementado de QSqlCursor.

void FLSqlCursor::setMainFilter ( const QString &  f)

Establece el filtro principal del cursor.

Parámetros:
fCadena con el filtro, corresponde con una clausura WHERE
void FLSqlCursor::setModeAccess ( const int  m) [inline]

Establece el modo de acceso para el cursor.

Parámetros:
mConstante FLSqlCursor::Mode que indica en que modo de acceso se quiere establecer el cursor
void FLSqlCursor::setSort ( const QSqlIndex &  sort) [virtual, slot]

Redefinicion del método sort() de QSqlCursor

Reimplementado de QSqlCursor.

void FLSqlCursor::setUnLock ( const QString &  fN,
bool  v 
)

Desbloquea el registro actual del cursor.

Parámetros:
fNNombre del campo
vValor para el campo unlock
void FLSqlCursor::setValueBuffer ( const QString &  fN,
const QVariant &  v 
)

Establece el valor de un campo del buffer con un valor.

Parámetros:
fNNombre del campo
vValor a establecer para el campo
bool FLSqlCursor::transaction ( bool  lock = false)

Inicia un nuevo nivel de transacción.

Si ya hay una transacción en curso simula un nuevo nivel de anidamiento de transacción mediante un punto de salvaguarda.

Parámetros:
lockActualmente no se usa y no tiene ningún efecto. Se mantiene por compatibilidad hacia atrás
Devuelve:
TRUE si la operación tuvo exito
int FLSqlCursor::transactionLevel ( ) [static, slot]
Devuelve:
El nivel actual de anidamiento de transacciones, 0 no hay transaccion
QStringList FLSqlCursor::transactionsOpened ( ) [slot]
Devuelve:
La lista con los niveles de las transacciones que ha iniciado este cursor y continuan abiertas
void FLSqlCursor::updateBufferCopy ( )

Copia el contenido del FLSqlCursor::buffer_ actual en FLSqlCursor::bufferCopy_.

Al realizar esta copia se podra comprobar posteriormente si el buffer actual y la copia realizada difieren mediante el metodo FLSqlCursor::isModifiedBuffer().

QVariant FLSqlCursor::valueBuffer ( const QString &  fN)

Devuelve el valor de un campo del buffer.

Parámetros:
fNNombre del campo
QVariant FLSqlCursor::valueBufferCopy ( const QString &  fN) const

Devuelve el valor de un campo del buffer copiado antes de sufrir cambios.

Parámetros:
fNNombre del campo

La documentación para esta clase fue generada a partir de los siguientes ficheros:
 Todo Clases Namespaces Archivos Funciones Variables 'typedefs' Enumeraciones Valores de enumeraciones Propiedades Amigas 'defines'