Professional Documents
Culture Documents
Tabla
Dividends
Campo
Symbol: Contiene los productos financieros (en la Tabla Symbol viene el campo Currency, que
define el tipo de moneda en que cotizan los productos)
DividendPerShare: Precio del producto a una fecha en Moneda origen de cotización (Viene de
Tabla Symbol)
Calculo:
DivPerShare1 = IF(RELATED(Symbol[Currency])=CALCULATE(VALUES(ReportCurrency[ReportCurrency]), ReportCurrency[CurrencyID]=1)
, Dividends[DividendPerShare]
, ROUND(
Dividends[DividendPerShare] *
CALCULATE(VALUES(CurrencyConv[ExchRate])
, CurrencyConv[CurrencyFrom] = RELATED(Symbol[Currency])
, CALCULATE(MAX(CurrencyConv[ExchRate])
, CurrencyConv[CurrencyFrom] = RELATED(Symbol[Currency])
, FILTER(ALL(CurrencyConv[CurrencyTo]), CurrencyConv[CurrencyTo] =
CALCULATE(VALUES(ReportCurrency[ReportCurrency]), ReportCurrency[CurrencyID]=1))
,8
Calculo:
DivPerShare2 = IF(RELATED(Symbol[Currency])=CALCULATE(VALUES(ReportCurrency[ReportCurrency]), ReportCurrency[CurrencyID]=2)
, Dividends[DividendPerShare]
, ROUND(
Dividends[DividendPerShare] *
CALCULATE(VALUES(CurrencyConv[ExchRate])
, CurrencyConv[CurrencyFrom] = RELATED(Symbol[Currency])
, FILTER(ALL(CurrencyConv[CurrencyTo]), CurrencyConv[CurrencyTo] =
CALCULATE(VALUES(ReportCurrency[ReportCurrency]), ReportCurrency[CurrencyID]=2))
, CALCULATE(MAX(CurrencyConv[ExchRate])
, CurrencyConv[CurrencyFrom] = RELATED(Symbol[Currency])
, FILTER(ALL(CurrencyConv[CurrencyTo]), CurrencyConv[CurrencyTo] =
CALCULATE(VALUES(ReportCurrency[ReportCurrency]), ReportCurrency[CurrencyID]=2))
,8
)
Allocation
Account
GenDivUsed = IF(COUNTROWS(
CALCULATETABLE(VALUES(Symbol[Symbol])
, FILTER(Symbol, COUNTROWS(RELATEDTABLE(Dividends))>0)
)>0,"Y", "N")
PrevDate = MAXX(
FILTER(
CALCULATETABLE(VALUES(CurrencyConv[Date])
, ALLEXCEPT(CurrencyConv, CurrencyConv[CurrencyFrom],
CurrencyConv[CurrencyTo])
, CurrencyConv[Date]
)
Calcula el Delta de la cotización menos la cotización anterior
ExchRateDelta = ROUND(CurrencyConv[ExchRate] -
CALCULATE(VALUES(CurrencyConv[ExchRate]), ALLEXCEPT(CurrencyConv,
CurrencyConv[CurrencyFrom], CurrencyConv[CurrencyTo]), CurrencyConv[Date] =
EARLIER(CurrencyConv[PrevDate])), 8)
Toma la fecha del campo Date de la tabla CurrencyConv después, verifica que exista en la tabla de
date Quoteexist (Yes o No) y paso siguiente busca y extrae la fecha anterior de la tabla de Quote
ExchRateDeltaSum =
IF(Related(Dates[QuotesExists])="Yes",SUMX(CALCULATETABLE(CurrencyConv,
ALLEXCEPT(CurrencyConv, CurrencyConv[CurrencyFrom], CurrencyConv[CurrencyTo],
CurrencyConv[PrevQuoteDate])), CurrencyConv[ExchRateDelta]))
TABLA: DATES
Year = Year([Date])
Short Date = FORMAT([Date],"YY-MM-DD")
Mth-Day = FORMAT([Date],"MM-DD")
Quarter In Year = CONCATENATE("Q",FORMAT([Date],"Q"))
QuotesExists = IF(COUNTROWS(RELATEDTABLE(Quotes))=0,"No","Yes")
Busca la fecha y valida que exista en la tabla Quotes y regresa (Yes o No)
Days-Last 12 = IF(AND([QuotesExists] = "Yes", [Date]>=MINX(TOPN(12, CALCULATETABLE(Dates,
Dates[QuotesExists]="Yes", All(Dates)), Dates[Date]), Dates[Date])),"Yes","No")