Вычисляемые поля Qlikview с помощью скрипта загрузки
В настоящее время я использую следующее вычисляемое поле в сводной таблице Qlikview.
=if([Event Type] = 'PO',date(MonthStart([EvtDt.Date Code]-15), 'YYYY-MMM'),if([Event Type] = 'WO',date(MonthStart([EvtDt.Date Code]-50), 'YYYY-MMM'), if([Event Type] = 'BFT PLAN',date(MonthStart([EvtDt.Date Code]), 'YYYY-MMM'))))
Можно ли предварительно рассчитать это поле, возможно, в скрипте LOAD, чтобы поле в сводной таблице было просто значением даты?
1 ответ
Предварительный расчет этого в сценарии загрузки будет рекомендован для повышения производительности пользовательского интерфейса на больших объемах данных, а также для удобства сопровождения, поскольку вы можете повторно использовать поле во всем пользовательском интерфейсе, не сохраняя логику в нескольких местах (то есть на нескольких графиках).
Не видя ваших структур данных, трудно дать вам точную структуру, однако, предполагая, что у вас есть оба поля, доступные в таблице в памяти во время загрузки, вы просто сможете расширить скрипт загрузки, чтобы включить вычисление в качестве дополнительного поля.:
LOAD
*
,if([Event Type] = 'PO',date(MonthStart([EvtDt.Date Code]-15), 'YYYY-MMM'),if([Event Type] = 'WO',date(MonthStart([EvtDt.Date Code]-50), 'YYYY-MMM'), if([Event Type] = 'BFT PLAN',date(MonthStart([EvtDt.Date Code]), 'YYYY-MMM')))) as [My New Field]
INLINE [
Event Type,EvtDt.Date Code,Value
PO,01/01/2013,1234
WO,01/01/2013,1234
BFT PLAN,01/01/2013,1234
];