Forum Discussion

Syndicate_Admin's avatar
Syndicate_Admin
Icon for Administrator rankAdministrator
4 years ago
Solved

Expression.Error debido a variables en mi consulta

Estoy intentando agregar mi variable [límite] a mi variable [offset]. [offset] aumenta por el [límite] (que está codificado a 999) después de cada iteración. ¿Puede alguien iluminarme sobre lo que estoy haciendo mal aquí?

Expresión.Error: se pasaron 5 argumentos a una función que espera entre 3 y 4.
Detalles:
Patrón=
Argumentos=[Lista]

tross4012_0-1650480887800.png

  • Syndicate_Admin's avatar
    Syndicate_Admin
    4 years ago

    Claro, y parece que ya lo has resuelto en tu segundo fragmento de código. 🙂

    La solución es incluir MaxRank en el registro en 1º y 3º argumentos, y por lo tanto puede depender de otros campos del registro que se actualizan en cada iteración.

    Saludos

    Owen

3 Replies

  • @TROSS4012

    En el código actual, el primer argumento de List.Generate es el origen del error.

    Parece que tienes dos argumentos "iniciales" cuando solo debería haber uno.

    Si el límite es una constante, lo definiría fuera de List.Generate y cambiaría el código a esto:

    let
        limit = 999,
        Source = List.Generate(
            () => [offset = 1, getstudies = FnGetStudies( 1 )],
            each [offset] <= 411000,
            each [offset = [offset] + limit, getstudies = FnGetStudies( [offset] ) ],
            each [getstudies]
        )
    in
        Source

    ¿Esto te da el resultado que esperas?

    Saludos

    Owen

    • Syndicate_Admin's avatar
      Syndicate_Admin
      Icon for Administrator rankAdministrator

      Hola Owen,

      Realmente aprecio que se tome el tiempo para ver esto. El problema al que me enfrento es que necesito que el [límite] sea igual a [offset] + 999 después de cada iteración.

      Entonces, si el [desplazamiento] es 1 en la iteración del puño, el [límite] debe ser 1000 y así sucesivamente.

      He cambiado [límite] a [MaxRank] ya que el uso de "límite" podría ser engañoso. [MaxRank] no debe ser una constante.

      ¿Hay alguna posibilidad de que veas una manera de hacerlo en este código? Algo como esto:

      tross4012_0-1650556860286.png

      o

      tross4012_0-1650557701215.png

      • Syndicate_Admin's avatar
        Syndicate_Admin
        Icon for Administrator rankAdministrator

        Claro, y parece que ya lo has resuelto en tu segundo fragmento de código. 🙂

        La solución es incluir MaxRank en el registro en 1º y 3º argumentos, y por lo tanto puede depender de otros campos del registro que se actualizan en cada iteración.

        Saludos

        Owen