Как я могу получить местоположение в сквозном постпроцессоре?
Я хотел бы применить некоторую логику в постпроцессоре детализации, которая зависит от места, где запрашивалась детализация.
Например, допустим, у меня есть вектор риска и список сроков погашения. Если пользователь выполнит анализ в сроке 3M, я бы хотел отобразить значение риска для этого срока в анализе.
Я думал о том, чтобы установить значение контекста с местоположением, а затем извлечь его в постпроцессоре DT, но я был бы рад, если есть более простой способ:)
С Уважением,
Christophe
2 ответа
Спасибо за ваши ответы. Мой вопрос действительно касался аналитических измерений и векторов.
Я решил эту проблему, установив значение контекста в пользовательском UpdateDrillthroughFeedHandler, как это определено для слияния ( http://support.quartetfs.com/confluence/display/LIVE/Extensions), и извлеките его в последующем процессоре детализации.
С Уважением,
Christophe
В ActivePivot из свойства постобработки, такого как свойства, которые вы можете написать для настройки детализации, у вас действительно есть доступ ко всем стандартным атрибутам текущей строки детализации.
В приложении ActivePivot Sandbox, начиная с версии 5.0, есть пример детализации постобработанного свойства, которое извлекает идентификатор книги таким образом:
/**
* @author Quartet FS
*/
@QuartetExtendedPluginValue(intf = IPostProcessedProperty.class, key = BookIdColumnPostProcessor.PLUGIN_KEY)
public class BookIdColumnPostProcessor extends APostProcessedProperty {
private static final long serialVersionUID = 1L;
public static final String PLUGIN_KEY = "BookIdColumn";
public BookIdColumnPostProcessor(Properties properties) {
super(properties);
}
@Override
public Object getValue(Object target) {
// Retrieve the value in the BookId column.
BookId book = (BookId) attributeAccessors.get("BookId").getValue(target);
return book.getId();
}
@Override
public String getType() {
return PLUGIN_KEY;
}
}