Pasar múltiples parámetros a SAP BW Query

Un usuario Pregunto ✅

lewand03

Hola gurús de PBI,
En mi informe, estoy usando varias consultas de SAP BW como fuente de datos.

En todas estas consultas estoy usando los mismos parámetros para obtener datos. por ejemplo año fiscal.

{Cube.ApplyParameter, "[!V000003]", {{"[0FISCYEAR].[K42016]", "[0FISCYEAR].[K42018]", "[0FISCYEAR].[K42017]"}}},

El próximo año necesito agregar el año 2019 y, en lugar de cambiarlo en cada consulta, me gustaría hacerlo a través de Parámetro.

Sé cómo pasar solo un ejemplo de enemigo de valor: [0FISCYEAR].[K42016], pero tengo problemas para pasar todos los valores. Estaba intentando con una cadena: «[0FISCYEAR].[K42016]», «[0FISCYEAR].[K42018]», «[0FISCYEAR].[K42017]», pero no funciona.

¿Alguna sugerencia?

Gracias ,

D.

lewand03

Resuelva creando una consulta «vacía» separada en lugar de un parámetro. Lo llamé AÑOS. Así:

let
 Source = {{"[0FISCYEAR].[K42015]", "[0FISCYEAR].[K42016]", "[0FISCYEAR].[K42017]", "[0FISCYEAR].[K42018]", "[0FISCYEAR].[K42018]"}}
in
 Source

Y el resultado se usa como selector:

{Cube.ApplyParameter, "[!V000003]", YEARS},

Anónimo

En respuesta a lewand03

Tienes que pasar la Lista de Lista en este caso.

Para hacer eso, lo que está indicando es la tabla de datos maestros del código de la empresa, que ya está filtrada en las empresas que necesita.

Escriba el siguiente código como una nueva consulta y utilícelo en su filtro Comp Code. Tenga en cuenta que aquí tuve que convertir los números de código comp en texto para que SAP pueda aceptarlos.

let
    Source = #"Company Code Master Data",
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Company Code #", type text}}),
    #"Company Code #" = #"Changed Type"[#"Company Code #"],
    Final  = List.Combine({{#"Company Code #"}})
in
    Final

lewand03

Resuelva creando una consulta «vacía» separada en lugar de un parámetro. Lo llamé AÑOS. Así:

let
 Source = {{"[0FISCYEAR].[K42015]", "[0FISCYEAR].[K42016]", "[0FISCYEAR].[K42017]", "[0FISCYEAR].[K42018]", "[0FISCYEAR].[K42018]"}}
in
 Source

Y el resultado se usa como selector:

{Cube.ApplyParameter, "[!V000003]", YEARS},

Anónimo

En respuesta a lewand03

Tienes que pasar la Lista de Lista en este caso.

Para hacer eso, lo que está indicando es la tabla de datos maestros del código de la empresa, que ya está filtrada en las empresas que necesita.

Escriba el siguiente código como una nueva consulta y utilícelo en su filtro de código comp. Tenga en cuenta que aquí tuve que convertir los números de código comp en texto para que SAP pueda aceptarlos.

let
    Source = #"Company Code Master Data",
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Company Code #", type text}}),
    #"Company Code #" = #"Changed Type"[#"Company Code #"],
    Final  = List.Combine({{#"Company Code #"}})
in
    Final

lewand03

En respuesta a Anónimo

Gracias cantó,

Tienes toda la razón, ya lo describí en mi publicación anterior. 😉

Saludos,

D.

Hola @lewand03,

A pasar múltiples valores en un solo parámetro, consulte este blog Pasar múltiples valores a un único parámetro de entrada.

Saludos,

Franco

lewand03

En respuesta a v-frfei-msft

Gracias @v-frfei-msft,

Pero para ser honesto, no sé cómo convertir la solución propuesta:

  var_out = CE_PROJECTION

         ( :vty

         , ["ZWEEK"

         , "ZROWCOUNT"]

         , 'in("ZWEEK", :ip_week)'

         );


Then the following statement will work.


SELECT "ZWEEK", sum("ZROWCOUNT") 

FROM "_SYS_BIC"."mypkg.filterview/ZTEST_FILT"

 ('PLACEHOLDER' = ('$$ip_week$$', '''201202'', ''201203'''))

GROUP BY "ZWEEK";

a PBI Language desde mi caso, usando la funcionalidad de Parámetros.

            {Cube.ApplyParameter, "[!V000003]", {{"[0FISCYEAR].[K42016]", "[0FISCYEAR].[K42017]", "[0FISCYEAR].[K42018]"}}},

¿Algunas ideas?

Gracias,

D.

Deja un comentario

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