Propiedad ValuesAllowed

Bienvenidos bibliotecarios a una nueva entrada馃榿.
En esta ocasi贸n vamos a ver para que sirve la propiedad de ValuesAllowed y en que casos ser铆a conveniente usarla.

驴Para que sirve esta propiedad?
Con esta propiedad podemos controlar los valores que el usuario puede introducir en un campo. Esta propiedad podemos usarla tanto en tables como en pages. Si la establecemos en una table esta restricci贸n se aplicar谩 en todos los usos de ese campo, mientras que si la declaramos en la page solo se aplicar谩 la restricci贸n en esa misma page.

Esta propiedad puede ser usada en campos de tipo: Boolean, Enum, Option, Integer, BigInteger, Decimal, Code y Text.
En mi opini贸n esta propiedad es bastante interesante a la hora de usarla con campos de tipo Enum, ya que si queremos usar un Enum pero solo mostrar algunas de sus opciones, con esta propiedad las opciones no permitidas no ser谩n mostradas al usuario. De esta manera no tendremos que hacer una comprobaci贸n al validar el campo o por el contrario replicar el Enum, pero 煤nicamente con las opciones permitidas.

Os dejo por aqu铆 la documentaci贸n oficial de MIcrosoft: https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/properties/devenv-valuesallowed-property

Y dicho esto veamos un par de ejemplos馃槑:

Crearemos una page donde tendremos dos variables, una de tipo Integer y otra de tipo Enum 芦Purchase Document Type禄.

page 50000 "BBC Values Allowed"
{
    PageType = Card;
    ApplicationArea = All;
    UsageCategory = Tasks;
    Caption = 'Values Allowed', Comment = 'ESP="Valores permitidos"';

    layout
    {
        area(Content)
        {
            group(General)
            {
                field(Amount; Amount)
                {
                    ApplicationArea = All;
                    Caption = 'Amount', Comment = 'ESP="Importe"';
                }
                field(Documents; Documents)
                {
                    ApplicationArea = All;
                    Caption = 'Purchasee Documents', Comment = 'ESP="Documentos de compra"';
                }

            }
        }
    }

    var
        Amount: Text;
        Documents: Enum "Purchase Document Type";
}


Ahora como podreemos observar somos libres de introducir cualquier valor en cualquiera de los dos campos.


Sin embargo ahora a帽adamos la propiedad de ValuesAllowed a nuestros campos. En el campo Importe solo permitiremos el valor 300 y en el campo de Documentos de compra solo permitiremos las opciones pedido, factura o abono.

page 50000 "BBC Values Allowed"
{
    PageType = Card;
    ApplicationArea = All;
    UsageCategory = Tasks;
    Caption = 'Values Allowed', Comment = 'ESP="Valores permitidos"';

    layout
    {
        area(Content)
        {
            group(General)
            {
                field(Amount; Amount)
                {
                    ApplicationArea = All;
                    Caption = 'Amount', Comment = 'ESP="Importe"';
                    ValuesAllowed = '300';
                }
                field(Documents; Documents)
                {
                    ApplicationArea = All;
                    Caption = 'Purchasee Documents', Comment = 'ESP="Documentos de compra"';
                    ValuesAllowed = Order, Invoice, "Credit Memo";
                }

            }
        }
    }

    var
        Amount: Text;
        Documents: Enum "Purchase Document Type";
}


Ahora si introducimos un valor que no sea 300 nos dar谩 el siguiente error:

Sin embargo si introducimos el valor 300, no nos dar谩 ning煤n problema



En cuanto al campo de Documentos de compra, y para m铆 lo m谩s interesante de esta propiedad, es que 煤nicamente nos muestra los valores permitidos. Los valores excluidos quedan ocultos al usuario.



Espero que os sirva de ayuda el entender el uso de esta propiedad馃榿. Si ten茅is alguna pregunta no dudes en dejarla en comentarios馃槣

Ahora te toca a ti馃槑.

隆Un saludo!

LA BIBLIOTECA DE BC

Hola bibliotecario, 馃憢
Encantados de conocerte.

D茅janos tu correo para enviarte nuestro bolet铆n con todas las novedades! 馃榿
(Domingos 18:00)

Deja un comentario

Tu direcci贸n de correo electr贸nico no ser谩 publicada. Los campos obligatorios est谩n marcados con *

Translate 禄