Pull to refresh

Comments 8

UFO just landed and posted this here
1. Гарантированно будет работать на SAP ERP 6.0.

2. Да, есть одно ограничение у метода create_dynamic_table: нельзя для одной программы создавать более 36 динамических таблиц. Такое же ограничение существует для оператора generate subroutine pools (нельзя сгенерировать более 36 программ).

Так как оба оператора используются в нашей программе, а пул у них общий, то, не выходя из программы, можно только 18 раз выполнить запрос (т.е. нажать «Выполнить», затем кнопку «Назад»), на 19 будет дамп. Конкретно в нашем случае эту проблему можно побороть путем автоматического перезапуска программы на 19 раз (пул очищается при этом). Примерно так:

  try.
      generate subroutine pool code name prog
                                    message msg.
    catch cx_root.
      submit ZSQL.
  endtry.

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

3. Расскажите, пожалуйста, подробнее, что это за компонент. Пока не совсем понимаю, о чем речь.
UFO just landed and posted this here
Если кратко, то операторы INSERT REPORT и GENERATE SUBROUTINE POOL отличаются между собой тем, что первый динамически создает программу и сохраняет ее в хранилище как полноценную, которую можно потом редактировать руками, а второй оператор создает временную программу, которая перестанет существовать после очистки пула (закрытия транзакции). Пост-обработку можно делать в обоих случаях, поэтому не вижу смысла для нашей задачи использовать оператор INSERT REPORT. К тому же, я не уверен, что он корректно отработает в тестовой или продуктивной системе из-за того, что они закрыты для создания/редактирования программ в хранилище.
UFO just landed and posted this here
Одно правило: если используется конструкция COUNT(), то после нее нужно дописывать «AS cnt», чтобы корректно сгенерировался ALV-Grid.
UFO just landed and posted this here
В принципе, ничего не мешает. Между «усложнить код парсера» и «ввести несложное правило» выбрал второе. В будущем, возможно, поправлю.
Sign up to leave a comment.

Articles