Crear tablas de documentos

Completado

Las tablas de documentos son tablas transaccionales secundarias que permiten entradas para una o varias áreas de aplicación al mismo tiempo. Son secundarias solo porque su información se publica en los libros de contabilidad a través de tablas de diario en lugar de publicarse directamente. Para la mayoría de los usuarios, las tablas de documentos son el medio principal para introducir una transacción.

Debido a que las tablas de documentos se usan para entradas de transacciones, tienen más códigos de desencadenador que la mayoría de los otros tipos de tablas.

Los dos tipos de tablas de documentos son:

  • Encabezado de documento

  • Línea de documento

Tablas de encabezado de documento

Una tabla de encabezado de documento contiene la información de transacción principal que se aplica a todas las líneas del documento. Por ejemplo, para una transacción de ventas, la tabla Encabezado de ventas contiene información principal sobre el pedido o las facturas, como el cliente al que pertenece el pedido o la factura, las fechas de contabilización, la información de envío e información similar que se aplica a todas las líneas del documento.

Tablas de línea de documento

Una tabla de línea de documento contiene información detallada para la transacción. Por ejemplo, para una transacción de ventas, la tabla Línea de ventas contiene información sobre cada línea del pedido o factura. Una tabla de línea de documento es una tabla secundaria de la tabla de encabezado de documento.

Al igual que las tablas de diario, las tablas de documento están relacionadas con muchas otras tablas, incluidas las tablas principales, suplementarias y secundarias. Rara vez hay otros tipos de tablas relacionados con otras tablas de documentos.

Nombres de tablas de documentos

El nombre de una tabla de encabezado de documento es el nombre de la transacción o documento más la palabra encabezado. Por ejemplo, la tabla de encabezado de documento que contiene transacciones de ventas se denomina Encabezado de ventas. Cada registro contiene una venta, como un pedido o una factura.

Por ejemplo, una tabla de encabezado de documento que contiene transacciones de documento de interés se denomina Encabezado de documento de interés. Cada registro contiene un documento de interés.

El nombre de una tabla de línea de documento es el nombre de la transacción o documento más la palabra línea. Por ejemplo, la tabla de línea de documento que contiene transacciones de ventas se denomina Línea de ventas. Cada registro contiene una línea de una venta, como un pedido o una factura.

Por ejemplo, la tabla de línea de documento que contiene transacciones de documento de interés se denomina Línea de documento de interés. Cada registro contiene una línea de un documento de interés.

Clave principal y otros campos estándar

En la mayoría de las tablas de encabezados, la clave principal es el campo de tipo Código, denominado N.º y de longitud 20, que contiene el número de documento. Algunas tablas de encabezado de documento contienen múltiples tipos de documentos. Por ejemplo, la tabla Encabezado de ventas contiene documentos de factura, documentos de notas de crédito, documentos de pedidos de ventas y otros tipos de documentos. En estos casos, la clave principal tiene dos campos:

  • Tipo de documento: enumeración

  • N.º: campo de código de longitud 20

En la mayoría de las tablas de línea de documento, la clave principal tiene dos campos: un campo de tipo de código de longitud 20 que contiene el número de documento y un campo de tipo entero denominado N.º de línea. El campo de código guarda relación con la tabla de encabezado del documento y se designa de acuerdo con el nombre de esa tabla (sin la palabra encabezado), seguido del campo de clave principal de esa tabla.

Por ejemplo, el campo Tipo de código de la clave principal de la tabla Línea de documento de interés se denomina N.º de documento de interés.

Cuando la clave principal de la tabla de encabezado de documento incluye un tipo de documento, la clave principal de la tabla de línea de documento tiene los siguientes tres campos:

  • Tipo de documento: enumeración

  • N.º documento: campo de código de longitud 20

  • N.º de línea: campo de número entero

El campo de código guarda relación con la tabla de encabezado del documento.

Páginas asociadas

Una tabla de encabezado de documento utiliza una página de tipo Documento para mostrar un registro de encabezado a la vez para que pueda ver y editar la información en la tabla de encabezado. El nombre de la página también es el nombre del documento que se muestra.

Por ejemplo, la página que muestra documentos de interés de la tabla Encabezado de documento de interés se denomina Documento de interés. Este enfoque se aplica incluso si la tabla contiene varios tipos de documentos porque, en este caso, la página está configurada para ver solo información de un tipo. Por ejemplo, la página que muestra las facturas de ventas de la tabla Encabezado de ventas se denomina Factura de venta.

La página contiene fichas desplegables para dividir los campos en grupos lógicos, lo que simplifica su capacidad para editar la información. Una página de documento incluye una parte de página que muestra la página de líneas de documento.

Una tabla de líneas de documentos utiliza una página ListPart para mostrar múltiples registros de líneas a la vez. El nombre de la página es el nombre del documento seguido de la palabra líneas o subformulario. Ninguno de los campos de clave principal se incluye en esta página.

Esta página se filtra utilizando la propiedad SubPageLink en todos los campos de clave principal, excepto el campo N.º de línea que se administra automáticamente mediante la propiedad AutoSplitKey de la página.

La tabla de encabezado de documento también utiliza una página de lista para permitirle ver varios documentos al mismo tiempo. El nombre de esta página es el nombre de la página de documento precedido de la palabra lista. Por ejemplo, la página de lista que muestra las facturas de ventas se llama Lista de facturas de ventas.

La página de lista de encabezado de documento utiliza la propiedad CardPageID para especificar la página de documento que se muestra cuando ve, edita o crea un nuevo documento o cuando hace doble clic en un documento de la lista.

El siguiente ejemplo muestra un fragmento de la tabla Cabecera de ventas.

table 36 "Sales Header"
{
    Caption = 'Sales Header';
    DataCaptionFields = "No.", "Sell-to Customer Name";
    LookupPageID = "Sales List";

    fields
    {
        field(1; "Document Type"; Option)
        {
           OptionMembers = Quote,"Order",Invoice,"Credit Memo","Blanket Order",
                           "Return Order";
        }
        field(2; "Sell-to Customer No."; Code[20])
        {
            TableRelation = Customer;
        }
        field(3; "No."; Code[20])
        {
        }
        field(4; "Bill-to Customer No."; Code[20])
        {
            TableRelation = Customer;
        }
        ...
    }
    keys
    {
        key(Key1; "Document Type", "No.")
        {
            Clustered = true;
        }
    }
}

El siguiente ejemplo muestra un fragmento de la tabla Línea de ventas.

table 37 "Sales Line"
{
    Caption = 'Sales Line';
    DrillDownPageID = "Sales Lines";
    LookupPageID = "Sales Lines";

    fields
    {
        field(1; "Document Type"; Option)
        {
            OptionMembers = Quote,"Order",Invoice,"Credit Memo","Blanket Order",
                            "Return Order";
        }
        field(2; "Sell-to Customer No."; Code[20])
        {
            TableRelation = Customer;
        }
        field(3; "Document No."; Code[20])
        {
            TableRelation = "Sales Header"."No." 
                            where("Document Type" = field("Document Type"));
        }
        field(4; "Line No."; Integer)
        {
        }
        field(5; Type; Option)
        {
            OptionMembers = " ","G/L Account",Item,Resource,"Fixed Asset",
                            "Charge (Item)";
        }
        field(6; "No."; Code[20])
        {
            TableRelation = if (Type = Const(" ")) "Standard Text"
            else
            if (Type = Const("G/L Account") "G/L Account" 
            else
            if (Type = Const(Resource)) Resource
            else
            if (Type = Const("Fixed Asset")) "Fixed Asset"
            else
            if (Type = Const("Charge (Item)")) "Item Charge"
            else
            if (Type = Const(Item) Item; 
        }
        ...
        field(11; Description; Text[100])
        {            
        }
        ...
    }
    keys
    {
        key(Key1; "Document Type", "Document No.", "Line No.")
        {
            Clustered = true;
        }
    }
}

Tablas de historial de documento

Las tablas de historial de documento tienen la misma relación con las tablas de documento que las tablas contables con las tablas de diario. Cuando se publica un documento, parte de ese proceso de publicación es copiar las tablas de documento en sus tablas de historial de documento correspondientes. Para ayudar con ese proceso de copia, la tabla de historial de documento contiene campos que tienen los mismos números de campo, nombres y propiedades que las tablas de documento originales.

En general, dado que las tablas de historial de documento registran las transacciones publicadas, el usuario no puede editarlas. Sin embargo, se pueden eliminar en determinadas circunstancias. Por ejemplo, puede eliminar una factura de venta registrada si se imprimió. Además de estas pocas distinciones, las tablas y páginas de historial de documento son las mismas que las tablas y páginas de documento.