вторник, 31 января 2012 г.

Workbook. *.xlsx to *.xls

Медленно, но верно переходим на 2010 MS Office. Но консерватизм преобладает сильно. Часть пользователей не может открыть рабочие книги, сохраненные через 2010 Excel в ролях.

После небольшого замешательства нашли галочку, на панели BEx-инструментов, которая нам поможет:


понедельник, 23 января 2012 г.

ABAP. Визуализация кода.

Рекомендации по названиям объектов в коде:


                               l_*         - локальная переменная с единственным значением
                               lt_*        - локальная таблица
                               ls_*       - локальная структура
                               lr_*        - локальная переменная типа Range
                               lty_*     - локальный тип
                               p_*        - параметр
                               so_*      - selection option
                               <ls_*>  - field symbol на структуру (все остальное по аналогии)
                               lcl_*      - локальный класс
                               lo_*       - объект

RECORDMODE. Первое знакомство.

Как оказалось, RECORDMODE будет работать довольно хитро, если вы надумали уменьшить количество ключей при преобразовании.

Пример:

В одном пакете приходит сам Заказ, а в другом - удаление Позиции из заказа. В правилах, если признак "Заказ" больше не ключ (например мы агрегируем данные по Торговой Точке за период), две эти записи сожмутся и RECORDMODE удалит Заказ целиком.

Хочу оговориться, ситуация справедлива лишь для RECORDMODE = R.

Если же первая запись приходит с частичным удалением, а вторая с добавлением позиций - то записей в RESULT_PACKAGE будет две.

Решили в конце Start routine производить замену RECORDMODE = R на RECORDMODE = X. Так как данная ситуация касается только RECORDMODE = Reverse-image.


    LOOP AT source_package
                     ASSIGNING <source_fields>
                         WHERE recordmode 'R'
                             .
      <source_fields>-recordmode 'X'.

    ENDLOOP.

вторник, 10 января 2012 г.

Загрузки данных

Перед загрузкой данных в итоговый куб не стоит производить трансформации с показателями, так как есть вероятность несжатия куба.

Столкнулись с ситуацией, когда пара строк в кубе не сжалась, так как в трансформации использовались мастер-данные, которые не были загружены вовремя.




Archivation in BI

Оказывается, при восстановлении архивированных данных из хранилищ, сами файлы с архивами тоже удаляются. Проходится проводить повторную архивацию.

Обидно...