Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0
Wiki Markup
{scrollbar}

----
La opción Tuplas por Registro se usa para generar más de una tupla por cada registro de las fuentes de datos.

Esto podría ser necesario dependiendo de la estructura de las fuentes de datos.

El valor por defecto es 1, es decir, que se genera sólo una tupla en el cubo por cada registro.

h3. Ejemplo

Supongamos que deseamos definir una medida Inventario, que muestra el inventario para cada mes (o una medida Balance). En algunos casos esta información de la base de datos no está definida en diferentes registros, sino que por el contrario está definida en diferentes columnas. {section}{column}

Esto quiere decir que en vez de tener la información en este formato:
|| Producto || Mes || Inventario ||
| A | 01/99 | 250 |
| A | 02/99 | 200 |
| A | 03/99 | 230 |
| ...... | | |
| A | 12/99 | 120 |
| B | 01/99 | 100 |
| B | 02/99 | 180 |
| B | 03/99 | 150 |
| B | 12/99 | 140 |{column}{column}
La información se encuentra de la siguiente manera:
|| Producto || Inv01 || Inv02 || Inv03 || ... || Inv12 ||
| A | 250 | 200 | 230 | ... | 120 |
| B | 100 | 180 | 150 | ... | 140 |{column}{section}
En este caso, debemos generar 12 registros para cada producto en la construcción del datamart(uno por cada mes).
\\

Los pasos a seguir son los siguientes:
# Definir 12 Tuplas por registro en la fuente. Cada vez que O3 lea un registro de esta fuente, generará 12 registros.
# Crear los siguientes Campos Virtuales
{code}

...

La opción Tuplas por Registro se usa para generar más de una tupla por cada registro de las fuentes de datos.

Esto podría ser necesario dependiendo de la estructura de las fuentes de datos.

El valor por defecto es 1, es decir, que se genera sólo una tupla en el cubo por cada registro.

Ejemplo

Supongamos que deseamos definir una medida Inventario, que muestra el inventario para cada mes (o una medida Balance). En algunos casos esta información de la base de datos no está definida en diferentes registros, sino que por el contrario está definida en diferentes columnas.

Section
Column

Esto quiere decir que en vez de tener la información en este formato:

Producto

Mes

Inventario

A

01/99

250

A

02/99

200

A

03/99

230

......

 

 

A

12/99

120

B

01/99

100

B

02/99

180

B

03/99

150

B

12/99

140

Column

La información se encuentra de la siguiente manera:

Producto

Inv01

Inv02

Inv03

...

Inv12

A

250

200

230

...

120

B

100

180

150

...

140


En este caso, debemos generar 12 registros para cada producto en la construcción del datamart(uno por cada mes).

Los pasos a seguir son los siguientes:

  1. Definir 12 Tuplas por registro en la fuente. Cada vez que O3 lea un registro de esta fuente, generará 12 registros.
  2. Crear los siguientes Campos Virtuales
    Code Block
    
    Inventario = Elegir(TN, Inv01, Inv02, Inv03, ..., Inv12)
    Fecha = Fecha(1,TN, Año(Hoy()))
    

...

  1. Notar

...

  1. que

...

  1. en

...

  1. este

...

  1. ejemplo

...

  1. se

...

  1. simplificó

...

  1. la

...

  1. notación.

...

  1. En

...

  1. el

...

  1. O3

...

  1. Designer

...

  1. se

...

  1. deben

...

  1. especificar

...

  1. los

...

  1. 12

...

  1. campos.

...

El

...

primer

...

Campo

...

Virtual

...

está

...

basado

...

en

...

la

...

función

...

Seleccionar

...

(Índice,

...

valor1,

...

valor2,

...

...,

...

ValorN).

...

Esta

...

función

...

retorna

...

el

...

valor

...

del

...

campo

...

"ValorX"

...

basado

...

en

...

el

...

valor

...

para

...

"Índice"

...

(si

...

el

...

Índice

...

=

...

1

...

retorna

...

valor1,

...

si

...

Índice

...

=

...

2

...

retorna

...

valor2,

...

etc.)

...

El

...

identificador

...

TN

...

se

...

sustituye

...

con

...

el

...

valor

...

del

...

registro

...

actual

...

en

...

la

...

cuenta

...

de

...

Tuplas

...

Por

...

Registro

...

(1

...

a

...

12

...

en

...

nuestro

...

ejemplo).

...

Esto

...

significa

...

que

...

cada

...

uno

...

de

...

los

...

12

...

registros

...

generados

...

para

...

cada

...

uno

...

de

...

los

...

registros

...

de

...

fuente

...

tendrá

...

un

...

valor

...

diferente

...

para

...

el

...

Campo

...

Virtual

...

Inventario.

...

El

...

primer

...

registro

...

usará

...

el

...

valor

...

Inv01,

...

el

...

segundo

...

Inv02

...

y

...

así

...

sucesivamente.

...

Use

...

el

...

campo

...

virtual

...

Inventario

...

para

...

definir

...

la

...

medida

...

Inventario.

...

Adicionalmente

...

el

...

campo

...

virtual

...

Fecha

...

tomará

...

los

...

valores

...

1-ENE,

...

1-FEB,

...

...1-DIC

...

para

...

el

...

año

...

corriente.

...

...

-
unmigrated-inline-wiki-
markup
{scrollbar}
{
Child pages (Children Display)

...