Publicado el 3 de Diciembre del 2020
353 visualizaciones desde el 3 de Diciembre del 2020
945,5 KB
19 paginas
Creado hace 18a (15/02/2006)
Acceso a a Tablas
Tablas
Acceso
IvIváánn Archilla Romero.
Archilla Romero.
Support & Training
Support & Training
Funciones: Acceso a tablas
Funciones: Acceso a tablas
--
Acceso
Acceso
Variable de tipo Record que
-- Variable de tipo Record que
apunta a la tabla
apunta a la tabla
El registro suele declararse
El registro suele declararse
explexplíícitamente
citamente
A veces, el registro se crea
-- A veces, el registro se crea
citamente
implíícitamente
impl
En disparadores de
En disparadores de
tabla: registros actual
: registros actual
tabla
((RecRec) y anterior (
) y anterior (xRec
xRec))
En disparadores de
En disparadores de
informes: una variable
: una variable
informes
por cada DataItem
DataItem que
que
por cada
se barre
se barre
Funciones: Acceso a tablas
Funciones: Acceso a tablas
Acceso a un registro
Acceso a un registro
conociendo su clave primaria
conociendo su clave primaria
Funci
localiza un un registro
especííficofico de de susu clave
clave
Funcióónn GETGET
Uso: Uso: localiza
valor espec
valor
primaria
primaria
Sintaxis: [<OkOk> :=]
> :=]
Sintaxis: [<
<Record>.GET([<Value
<Record>.GET([<
Ejemplo: MovCli.GET
Ejemplo:
registro con un
con un
Value>],...)
>],...)
MovCli.GET(59);
(59);
Nº mov.
Fecha
Importe
53
54
55
56
57
58
59
60
61
1-1-95
1-1-95
2-1-95
3-1-95
3-1-95
3-1-95
4-1-95
8-1-95
8-1-95
10.000
-4.000
7.000
5.000
2.000
-8.000
3.000
6.000
12.000
Funciones: Acceso a tablas
Funciones: Acceso a tablas
Barrido de un rango de registros de una tabla (1)
Barrido de un rango de registros de una tabla (1)
-- Pasos
Pasos
Activacióón de una clave adecuada.
n de una clave adecuada.
Activaci
Establecimiento de los filtros necesarios para definir el rango de de
Establecimiento de los filtros necesarios para definir el rango
registros.
registros.
Posicionamiento en un ““primer
Posicionamiento en un
Barrido de los registros del rango.
Barrido de los registros del rango.
primer”” registro.
registro.
-- Funciones
Funciones
SETCURRENTKEY
SETCURRENTKEY
SETRANGE y SETFILTER
SETRANGE y SETFILTER
FINDFIND
NEXTNEXT
Funciones: Acceso a tablas
Funciones: Acceso a tablas
Barrido de un rango de registros de una tabla (2)
Barrido de un rango de registros de una tabla (2)
MovCli.SETCURRENTKEY(“Fecha registro”)
MovCli.SETCURRENTKEY(Importe)
MovCli.SETRANGE(“Fecha registro”,020195D,040195D)
MovCli.NEXT
Fecha
registro
1-1-95
1-1-95
2-1-95
3-1-95
3-1-95
3-1-95
4-1-95
8-1-95
8-1-95
Importe Nº mov.
10.000
-4.000
7.000
5.000
2.000
-8.000
3.000
6.000
12.000
53
54
55
56
57
58
59
60
61
MovCli.FIND('-')
MovCli.NEXT(-1)
MovCli.FIND('+')
Importe
Fecha
registro
Nº mov.
-8.000
-4.000
2.000
3.000
5.000
6.000
7.000
10.000
12.000
3-1-95
1-1-95
3-1-95
4-1-95
3-1-95
8-1-95
2-1-95
1-1-95
8-1-95
58
54
57
59
56
60
55
53
61
Funciones: Acceso a tablas
Funciones: Acceso a tablas
Barrido de un rango de registros de una tabla (3)
Barrido de un rango de registros de una tabla (3)
Funcióónn SETCURRENTKEY
SETCURRENTKEY
Funci
Uso: Activa una clave de la tabla.
Uso: Activa una clave de la tabla.
Sintaxis: [<OkOk> :=] <Record>.SETCURRENTKEY(<Field1>, [<Field2>,...])
> :=] <Record>.SETCURRENTKEY(<Field1>, [<Field2>,...])
Sintaxis: [<
Funcióónn SETRANGE
SETRANGE
Funci
Uso: Establece un filtro simple sobre un campo para definir un rango de
rango de
Uso: Establece un filtro simple sobre un campo para definir un
registros.
registros.
Sintaxis: <Record>.SETRANGE(<FieldField> [,<> [,<FromValue
Sintaxis: <Record>.SETRANGE(<
FromValue>[,<>[,<ToValue
ToValue>]])>]])
Funcióónn SETFILTER
SETFILTER
Funci
Uso: Establece un filtro complejo sobre un campo para definir un rango de
n rango de
Uso: Establece un filtro complejo sobre un campo para definir u
registros.
registros.
Sintaxis: <Record>.SETFILTER(<FieldField>,<>,<String
Sintaxis: <Record>.SETFILTER(<
String>,[<>,[<Value
Value>,...])
>,...])
Funci
Funcióónn FINDFIND
Uso: Hace a la variable apuntar a un registro del rango.
Uso: Hace a la variable apuntar a un registro del rango.
Sintaxis: [<OkOk> :=] <Record>.FIND([<
Sintaxis: [<
> :=] <Record>.FIND([<WhichWhich>])>])
Funci
Funcióónn NEXTNEXT
Uso: Hace a la variable avanzar ““Steps
Uso: Hace a la variable avanzar
nuevo.
nuevo.
Sintaxis: <Steps
Sintaxis: <
Steps> := Record.NEXT([<
> := Record.NEXT([<Steps
Steps>])>])
Steps”” registros adelante y apuntar a uno
registros adelante y apuntar a uno
Funciones: Acceso a tablas
Funciones: Acceso a tablas
Barrido de un rango de registros de una tabla (4)
Barrido de un rango de registros de una tabla (4)
CCóódigo necesario
digo necesario
Funciones: Filtros
Funciones: Filtros
Examinar filtros
Examinar filtros
Funcióónn GETFILTER
GETFILTER
Funci
Uso: devuelve en forma de cadena el filtro que estéé activo para el campo
activo para el campo
Uso: devuelve en forma de cadena el filtro que est
SintSintááxisxis: <: <String
> := <Record>.GETFILTER(<FieldField>)>)
String> := <Record>.GETFILTER(<
Funcióónn GETFILTERS
GETFILTERS
Funci
Uso: devuelve en forma de cadena todos los filtros que estéén activos para
n activos para
Uso: devuelve en forma de cadena todos los filtros que est
cualquier campo
cualquier campo
SintSintááxisxis: <: <String
String> := <Record>.GETFILTERS
> := <Record>.GETFILTERS
Funcióónn GETRANGEMIN
GETRANGEMIN
Funci
Uso: devuelve el valor míínimo de un filtro (da error si el filtro no tiene forma de
nimo de un filtro (da error si el filtro no tiene forma de
Uso: devuelve el valor m
intervalo continuo)
intervalo continuo)
SintSintááxisxis: <: <Value
> := <Record>.GETRANGEMIN(<FieldField>)>)
Value> := <Record>.GETRANGEMIN(<
Funci
Funcióónn GETRANGEMAX
GETRANGEMAX
Uso: devuelve el valor mááximo de un filtro (da error si el filtro no tiene forma de
ximo de un filtro (da error si el filtro no tiene forma de
Uso: devuelve el valor m
intervalo continuo)
intervalo continuo)
SintSintááxisxis: <: <Value
> := <Record>.GETRANGEMAX(<FieldField>)>)
Value> := <Record>.GETRANGEMAX(<
Funciones: Filtros
Funciones: Filtros
Copiar filtros
Copiar filtros
Funci
Funcióónn COPYFILTER
COPYFILTER
Uso: Aplica a un campo de un registro el filtro que estéé definido en el
definido en el
Uso: Aplica a un campo de un registro el filtro que est
mismo campo de otro registro
mismo campo de otro registro
Sintaxis:
Sintaxis:
<Record>.COPYFILTER(<FromField
<Record>.COPYFILTER(<
FromField>,<>,<ToRecord
ToRecord>.<>.<ToField
ToField>)>)
Funci
Funcióónn COPYFILTERS
COPYFILTERS
Uso: aplica a los campos de un registro los filtros que estéén definidos
n definidos
Uso: aplica a los campos de un registro los filtros que est
para otro registro
para otro registro
Sintaxis: <Record>.COPYFILTERS(<FromRecord
Sintaxis: <Record>.COPYFILTERS(<
FromRecord>)>)
Funciones: Filtros
Funciones: Filtros
Grupos de filtros
Grupos de filtros
Nombre
Nombre
StdStd
-- Hay grupos de filtros desde 0 a 255
Hay grupos de filtros desde 0 a 255
Descripcióónn
Descripci
Es el grupo por defecto. Es usado para establecer los filtros por el
r el
Es el grupo por defecto. Es usado para establecer los filtros po
tiempo de ejecucióón.n.
tiempo de ejecuci
No usado.
No usado.
Usado para filtros resultantes de la funcióón SETTABLEVIEW, de la
n SETTABLEVIEW, de la
Usado para filtros resultantes de la funci
SourceTableView; y de la propiedad
SourceTableView
Usado para filtros resultantes de las propiedades SubFormView
Usado para filtros resultantes de las propiedades
NNºº
00
usuarioen
usuarioen
11
22
propiedad
propiedad
33
; y de la propiedad DataItemTableView
DataItemTableView..
SubFormView y y
Global
Global
FormForm
Usado para filtros resultantes de las propiedades DataItemLink
Usado para filtros resultantes de las propiedades
DataItemLink y y
ExecExec
RunFormView..
RunFormView
LinkLink
SubFormLink..
SubFormLink
Temp
Temp
Security
Security
No usado.
No usado.
-- Para uso del programador
Para uso del programador
44
55
66
-- Funci
Funcióónn FILTERGROUP
FILTERGROUP
Uso: Selecciona o informa del grupo actual
Uso: Selecciona o informa del grupo actual
Sintaxis: [<CurrGroup
Sintaxis: [<
CurrGroup>] := <Record>.FILTERGROUP([<
>] := <Record>.FILTERGROUP([<NewGroup
NewGroup>])>])
-- Una vez seleccionado un grupo de filtro para una variable de ti
Una vez seleccionado un grupo de filtro para una variable de tipo Record, los filtros que se
po Record, los filtros que se
apliquen sobre esa variable van aplicados en ese grupo.
apliquen sobre esa variable van aplicados en ese grupo.
Funciones: Filtros
Funciones: Filtros
Registros marcados
Registros marcados
Funcióónn MARKEDONLY
MARKEDONLY
Funci
lo los registros que estéén marcados por el usuario o
n marcados por el usuario o
Uso: para seleccionar sóólo los registros que est
Uso: para seleccionar s
por el progama
progama
por el
Sintaxis: [<IsMarkedOnly
Sintaxis: [<
Observaciones:
Observaciones:
IsMarkedOnly>] := <Record>.MARKEDONLY([<
>] := <Record>.MARKEDONLY([<SetMarkedOnly
SetMarkedOnly>])>])
-- Las marcas se almacenan en una tabla temporal en el cliente,
Las marcas se almacenan en una tabla temporal en el cliente,
ordenadas por la clave primaria.
ordenadas por la clave primaria.
-- IMPORTANTE: para no penalizar el rendimiento, deber usarse en
IMPORTANTE: para no penalizar el rendimiento, deber usarse en
conjuncióón con la clave primaria.
n con la clave primaria.
conjunci
Funcióón n MARKMARK
Funci
Uso: Para marcar/desmarcar un registro o saber si un registro determinado
eterminado
Uso: Para marcar/desmarcar un registro o saber si un registro d
estestáá marcado
marcado
Sintaxis: [IsMarked
Sintaxis: [
] := Record.MARK([SetMarked
IsMarked] := Record.MARK([
SetMarked])])
Funciones: SumIndexFields
Funciones:
SumIndexFields y y
FlowFields
FlowFields
SumIndexFields
SumIndexFields
Funcióón CALCSUMS
n CALCSUMS
Funci
Uso: Devuelve la suma para uno (o varios) SumIndexF
Comentarios de: Acceso a Tablas (0)
No hay comentarios