Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

@Structure, @Fields, @Indexes

Sólo aplican a archivos tabla (@Properties/Type : "Table").

@Structure

ClaveDescripción
NameNombre de la tabla. Debe empezar con letra, sólo letras/dígitos, máximo 10 caracteres (límite de nombre de objeto DDS).
DescriptionDescripción de la tabla.

Contiene además, anidadas: @Fields, @Indexes y opcionalmente @Documentation (ver @Documentation).

@Fields

Una línea Nombre tipo(...) por columna:

@Fields {
    CodCli   char(6)   Description("Código de Cliente")
    Nombre   char(20)  Description("Nombre")
    Saldo    number(9,2) Default(0)
    FecAlta  date
}

Tipos permitidos: sólo char, number, date (no field/list/matrix — esos son exclusivos de @Variables, ver Tipos de dato).

Modificadores:

ModificadorDescripción
Description("texto")Descripción del campo. Requiere string entre comillas.
Default(valor)Valor por defecto: string entre comillas o número suelto, según el tipo del campo. No permitido en campos date.
AllowNullPermite NULL en este campo. Un campo PrimaryKey no puede llevar este modificador.

@Indexes

Una entrada Kind(Nombre, [Campos...], "Descripción opcional") por acceso:

@Indexes {
    PrimaryKey ( GRIDDEMOPK, [CodCli] )
    Unique     ( GRIDDEMOEMAIL, [Email], "Email único" )
    Index      ( GRIDDMNOM, [Nombre] )
}
KindDescripción
PrimaryKeyAcceso primario de la tabla. Sólo uno por tabla; sus campos no pueden ser AllowNull.
UniqueAcceso secundario único.
IndexAcceso secundario no único.

Ejemplo completo

@Properties {
    Type : "Table"
}
@Structure {
    Name        : "GRIDDEMO"
    Description : "Clientes de ejemplo"
    @Fields {
        CodCli   char(6)   Description("Código de Cliente")
        Nombre   char(20)  Description("Nombre")
        Ciudad   char(15)  Description("Ciudad")
    }
    @Indexes {
        PrimaryKey ( GRIDDEMOPK, [CodCli] )
        Index ( GRIDDMNOM, [Nombre] )
    }
}