Hitachi Vantara Pentaho Community Forums
Results 1 to 9 of 9

Thread: Especificar el formato a miebros/medidas

  1. #1
    Join Date
    May 2009
    Posts
    9

    Default Especificar el formato a miebros/medidas

    Buenas!

    Aunque parece algo trivial, estoy teniendo problemas al especificar el formato de las medidas en el schema workbench.

    Me gustaría por ejemplo, que una medida que tiene que mostrar un porcentaje apareciera tal que 0,00%. Para esto, entiendo que hay que poner la máscara en el campo "formatString" de la medida, tal que "#0,00%". Pero no sale el resultado deseado .

    He leído por ahi que tienes que definirte un xml para que internamente sepa formatear los datos... en fin no creo que sea tan complejo.

    ¿Alguién sabe como funciona el tema este?

    Muchisimas gracias de antemano y un saludo,
    José Manuel

  2. #2
    Join Date
    Jul 2007
    Posts
    1,013

    Default

    Aquí te dejo un ejemplo (sacado de http://mondrian.pentaho.org/documentation/schema.php), donde podés aplicado lo que estás preguntando:

    Code:
               <Schema>
                <Cube name="Sales">
                     <Table name="sales_fact_1997"/>
                     <Dimension name="Gender" foreignKey="customer_id">
                         <Hierarchy hasAll="true" allMemberName="All Genders" primaryKey="customer_id">
                            <Table name="customer"/>
                            <Level name="Gender" column="gender" uniqueMembers="true"/>
                        </Hierarchy>
                    </Dimension>
                    <Dimension name="Time" foreignKey="time_id">
                        <Hierarchy hasAll="false" primaryKey="time_id">
                            <Table name="time_by_day"/>
                            <Level name="Year" column="the_year" type="Numeric" uniqueMembers="true"/>
                            <Level name="Quarter" column="quarter" uniqueMembers="false"/>
                            <Level name="Month" column="month_of_year" type="Numeric" uniqueMembers="false"/>
                        </Hierarchy>
                    </Dimension>
                    <Measure name="Unit Sales" column="unit_sales" aggregator="sum" formatString="#,###"/>
                    <Measure name="Store Sales" column="store_sales" aggregator="sum" formatString="#,###.##"/>
                    <Measure name="Store Cost" column="store_cost" aggregator="sum" formatString="#,###.00"/>
                    <CalculatedMember name="Profit" dimension="Measures" formula="[Measures].
                     [Store Sales]-[Measures].[Store Cost]">
                        <CalculatedMemberProperty name="FORMAT_STRING" value="$#,##0.00"/>
                    </CalculatedMember>
                </Cube>
            </Schema>
    ¡Saludos!

  3. #3
    Join Date
    May 2009
    Posts
    9

    Default

    Hola tdidomenico,

    Gracias por contestar tan rápido, el caso es que tengo algo parecido en mi xml generado por el Schema Workbench (3.0.4):

    ...formatString="#,##0.00%" aggregator="avg" visible="true">
    ...formatString="00.00%" aggregator="avg" visible="true">


    He probado de diferentes maneras, pero lo que me interesaría, es aplicar una máscara para que muestre por pantalla sólo el porcentaje XX,XX%, es decir, me consiga hacer los cambios:
    13,25402 >> 13,25%
    0 >> 0,00%

    He probado de diferentes maneras, pero sin conseguir el resultado que quiero. Siempre me pone numeros de mas.

    Mil gracias!

  4. #4
    Join Date
    Jul 2007
    Posts
    1,013

    Default

    Estuve haciendo pruebas y esta línea en mi caso funciona:

    Code:
    <Measure name="Sales" column="TOTALPRICE" formatString="0.00%" aggregator="avg">
    Me muestra porcentajes con hasta dos decimales.

    Lo que se me ocurre es que en tu caso podés tener que usar coma en lugar de punto, si tu sistema está en español. ¿Ya has probado algo como esto?

    Code:
    <Measure name="Sales" column="TOTALPRICE" formatString="0,00%" aggregator="avg">

  5. #5
    Join Date
    May 2009
    Posts
    9

    Default

    Hola,

    Aunque creo que ya había probado esa posibilidad, la he vuelto a probar para asegurarme y el resultado (aunque si me pone los dos decimales) no es el que busco, te cuento:

    Dato original || Dato con máscara ("0,00%") || Resultado Deseado
    6,121 || 612,11% || 6,12%
    22,44 || 2244,00% || 22,44%
    6,945 || 694,46% || 6,94%
    83,333 || 83,333% || 83,33%
    12,664 || 1266,39% || 12,66%
    1,317 || 131,66% || 1,37%
    75 || 7500,00% || 75,00%

    Creo que he probado con todas las combinacioes posibles , pero seguiré buscando a ver si encuentro la solución y la posteo en este hilo. Seguro que es una tontería.

    Gracias de nuevo Tomás!

    Un saludo,
    Last edited by jmserra; 05-20-2009 at 03:40 AM.

  6. #6
    Join Date
    Apr 2009
    Posts
    11

    Default

    No se si te servirà, pero si usas una llamada MDX, puedes especificarle el formato de salida:

    WITH MEMBER [Nombre Alias] AS '([Measures].[Importe])',FORMAT_STRING = IIf(((([Measures].[Importe] / [Measures].[Beneficiarios])) < 8000.0), "|##,###,###,###,###.00|style='green'", IIf(((([Measures].[Import] / [Measures].[Beneficiaris])) > 9900.0), "|##,###,###,###,###.00|style='red'", "##,###,###,###,###.00")) SELECT NON EMPTY ....

    Con este còdigo defino un alias de una Medida i le asigno el formato que quiero que se muestre: Si la media es inferior a 8000 me pone texto en verde, si la media es superior a 9900 me lo pone en rojo y lo deja igual si esta entre esos valores. Ademas del color, especifico la mascara de salida (solo me acepta formato americano), que es lo que buscas

  7. #7
    Join Date
    May 2009
    Posts
    9

    Default

    Esta muy bien el ejemplo, muchas gracias!

    Al final lo que hice, fue crear un calculated member, y poner en formatString "0.0%", creo que esta máscara aplica automaticamente el por cien, es decir, si tienes 11,3 el resultado sería 1130,00% y si tienes 0,113 sería 11,3% De ahi, mi confusión.

    Un saludo!

  8. #8
    Join Date
    Nov 2012
    Posts
    5

    Default

    Hola a todos, soy nuevo en esto de los cubos con Schema Workbench, y me gustaria que me ayudaran con el "aggregator" de una medida, ya que con este aggregator="distinct count" me cuenta los valores distintos al igual que aggregator="distinct-count". Lo que yo quiero es que no cuente, solo quiero obtener lo valores distintos, gracias de antemano por sus respuestas

  9. #9
    Join Date
    Dec 2012
    Posts
    1

    Default

    Hola. Soy nueva en el foro.
    Tenía una duda en relación al Schema Workbench.
    Todas mis dudas han sido respondidas.
    Muchas gracias por compartir.
    Seguiré echando una mirada por el resto del foro.
    Saludos!!

    __________________________
    "Que la ropa ciclismo este así"
    Last edited by wykex; 01-05-2013 at 01:50 PM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Privacy Policy | Legal Notices | Safe Harbor Privacy Policy

Copyright © 2005 - 2017 Pentaho Corporation. All Rights Reserved.