Просмотр изменений в таблицах, сделанных при помощи ФМ SE16N_INTERFACE

Частенько консультанты меняют данные в таблицах, и не всегда эти изменения корректны. Найти виновника можно при помощи программы RKSE16N_CD_DISPLAY, она смотрит логи в таблицах SE16N_CD_*.

ITS – создание приложений для мобильных устройств

Система SAP позволяет создавать приложения для мобильных терминалов, так называемые ITS. Разработка приложения складывается из двух частей:

1.Разработка классического приложения
2.Создание Интернет сервиса. Генерация и адаптация HTML экранов для мобильных устройств.

Читать далее «ITS – создание приложений для мобильных устройств»

Создание документа WORD в фоне

Перед разработчиком часто встает задача создания документа WORD. Основная проблема заключается в том, что SAP так и заимел удобного инструмента для данного процесса. И если для создания документа в диалогом режиме можно воспользоваться всем любимыми ФМами  ZWWW*, то для создания в фоне зачастую используют трансформации, что является очень не удобным в сопровождении.

Читать далее «Создание документа WORD в фоне»

Вставить инфо-тип в Динамических мероприятия HCM

В динамических мероприятиях не работает ФМ HR_INFOTYPE_OPERATION. Для вставки записи инфо-типа нужно просто заполнить пару глобальных таблиц.
На примере вставки записи 2002 ИТ:

Читать далее «Вставить инфо-тип в Динамических мероприятия HCM»

Распараллеливание процессов (обзорно)

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

Читать далее «Распараллеливание процессов (обзорно)»

Расширение длины поля материала HANA

В SAP s/4 HANA длина номера материала увеличена с 18 до 40 символов. По умолчанию функция не активирована, для ее активации необходимо в SPRO

Читать далее «Расширение длины поля материала HANA»

Перенос переводов

Сегодня столкнулся с необходимостью перенести перевод текстов стандартного элемента данных. Для этого существует транзакция SLXT.

Читать далее «Перенос переводов»

Отладка фоновых задач

Часто, возникает потребность трассировки тех или иных фоновых процессов. Одно дело, если мы сможем сделать все это в системе разработки.
1. Делаем бесконечный цикл с выходом по условию.
2. Запускаем программу
3. Переходим в sm50, выбираем наш процесс
4. В меню выбираем Администрирование->Программа->Отладка
5. Открывается экран отладки, в нем мы меняем значение нашей переменной, чтобы выйти из бесконечного цикла и начинаем отладку.

Однако, бывают случаи когда этот метод не работает. Т.к., например, в продуктивной системе нельзя менять значения переменных в отладчике(Можно конечно делать временную задержку вместо бесконечного цикла). Да и нести такой код в продуктив как-то не очень красиво.
В таких случаях можно воспользоваться ФМом k_plan_wait_for_debugging.

Читать далее «Отладка фоновых задач»

Ошибка при экспорте данных в XLSX из ALV

При выгрузке данных стандартным функционалом ALV возникла ошибка Удаленный компонент: часть/xi/sharedStrings.xml

32461e5e-9472-4373-ad9f-d924eddf952d

Оказывается, проблема была в спецсимволах в строках для вывода. В нашем случае, ALV не понравилась решетка #. Решение на май 2018 только одно - удалить спецсимволы или попытаться выгрузить в другой формат.

Читаем Инфо-Типы по новому

Существует два буфера для ИТ:

Буфер PS -  используется, когда для обновления основных данных вызывается функциональный модуль 'HR_INFOTYPE_OPERATION'. При чтении основных данных с помощью функционального модуля  'HR_READ_INFOTYPE'.

Буфер PRELP - также называется буфером PNP.  Предназначен для работы с огромными объемами данных. В программах PNP не следует вызывать функции, считывающие инфо-типы с буфером PS или другим буфером. Потому что это вызывает задержку в чтении.

При чтении данным классом используется тот же буфер, который использует ЛБД.