Exercice : créer l’objet de table Niveau de récompense

Effectué

Scénario

La table Niveau de récompense stocke les différents niveaux de récompense et les points nécessaires pour acquérir un niveau de récompense.

Cette table comprend deux champs :

  • Niveau

  • Points de récompense minimum

Créer l’objet de table Niveau de récompense

Pour créer l’objet de table Niveau de récompense, procédez comme suit :

  1. Créez un fichier .al dans le dossier src.

    1. Pour créer une table dans l’extension, créez d’abord un fichier. Vous pouvez créer un fichier en cliquant sur le bouton Nouveau fichier dans la barre latérale de Visual Studio Code.

    2. Assurez-vous que le nom de fichier se termine par .al. Dans cet exemple, vous pouvez utiliser le nom RewardLevel.Table.al.

  2. Ajoutez le code à la table. Copiez le code suivant et collez-le dans le fichier RewardLevel.Table.al.

table 50100 "Reward Level"
{
    Caption = 'Reward Level';
    TableType = Normal;
    DataClassification = CustomerContent;

    fields
    {
        field(1; Level; Text[20])
        {
            Caption = 'Level';
            DataClassification = CustomerContent;
        }

        field(2; "Minimum Reward Points"; Integer)
        {
            Caption = 'Minimum Reward Points';
            DataClassification = CustomerContent;
            MinValue = 0;
            NotBlank = true;

            trigger OnValidate();
            var
                RewardLevel: Record "Reward Level";
                tempPoints: Integer;
            begin
                tempPoints := "Minimum Reward Points";
                RewardLevel.SetRange("Minimum Reward Points", tempPoints);
                if not RewardLevel.IsEmpty() then
                    Error('Minimum Reward Points must be unique');
            end;
        }
    }

    keys
    {
        key(PK; Level)
        {
            Clustered = true;
        }
        key("Minimum Reward Points"; "Minimum Reward Points") { }
    }

    trigger OnInsert();
    begin

        Validate("Minimum Reward Points");
    end;

    trigger OnModify();
    begin
        Validate("Minimum Reward Points");
    end;
}