Взаимодействие с фронтендом (от 03.01.2012)
В SAP R/3 предусмотрен один замечательный класс для работы с сервером представления, называется он: CL_GUI_FRONTEND_SERVICES. Далее я опишу применение его основных методов, которые зачастую могут пригодится в написании ABAP отчётов. Так как версии GUI клиента постоянно обновляются, и существуют разные версии GUI: под MacOS, Web, Windows необходимо проверять поддерживает ли текущая версия возможности GUI, для этого был…
https://abap-blog.ru/osnovy-abap/frontend/
В SAP R/3 предусмотрен один замечательный класс для работы с сервером представления, называется он: CL_GUI_FRONTEND_SERVICES. Далее я опишу применение его основных методов, которые зачастую могут пригодится в написании ABAP отчётов. Так как версии GUI клиента постоянно обновляются, и существуют разные версии GUI: под MacOS, Web, Windows необходимо проверять поддерживает ли текущая версия возможности GUI, для этого был…
https://abap-blog.ru/osnovy-abap/frontend/
abap-blog.ru
ABAP Blog | Взаимодействие с фронтендом
Описание работы системного класса: CL_GUI_FRONTEND_SERVICES для взаимодействия с фронтендом: работа с файлами, реестром, папками.
Автозапуск отчёта (от 03.01.2012)
Не знаю пригодится ли это в реальной жизни, но идея довольна забавная. Допустим необходимо запустить отчёт на выполнение через определённый промежуток времени, сделать это можно при помощи класса CL_GUI_TIMER. Собственно программа довольно простая, дополнительного описания не требует: REPORT ZTEST. CLASS lcl_handler DEFINITION. PUBLIC SECTION. METHODS: when_done FOR EVENT finished OF cl_gui_timer. ENDCLASS. "lcl_event_handler DEFINITION CLASS…
https://abap-blog.ru/osnovy-abap/sap-dynpro/autorun/
Не знаю пригодится ли это в реальной жизни, но идея довольна забавная. Допустим необходимо запустить отчёт на выполнение через определённый промежуток времени, сделать это можно при помощи класса CL_GUI_TIMER. Собственно программа довольно простая, дополнительного описания не требует: REPORT ZTEST. CLASS lcl_handler DEFINITION. PUBLIC SECTION. METHODS: when_done FOR EVENT finished OF cl_gui_timer. ENDCLASS. "lcl_event_handler DEFINITION CLASS…
https://abap-blog.ru/osnovy-abap/sap-dynpro/autorun/
abap-blog.ru
ABAP Blog | Автозапуск отчёта
Способ запустить отчёт ABAP в автоматическом режиме с селекционного экрана, используя класс: CL_GUI_TIMER.
Заблокировать запуск программы (от 03.01.2012)
Бывают случаи когда необходимо заблокировать программу на выполнение, чтобы пользователи не могли одновременно с ней работать, один из самых простых способов сделать это воспользоваться системой блокировок, а конкретно функцией ENQUEUE_ESINDX. … START-OF-SELECTION. DATA: repid TYPE INDX_SRTFD. repid = sy-repid. CALL FUNCTION 'ENQUEUE_ESINDX' EXPORTING relid = 'ZZ' srtfd = repid srtf2 = 0. WAIT UP TO…
https://abap-blog.ru/others/run-block/
Бывают случаи когда необходимо заблокировать программу на выполнение, чтобы пользователи не могли одновременно с ней работать, один из самых простых способов сделать это воспользоваться системой блокировок, а конкретно функцией ENQUEUE_ESINDX. … START-OF-SELECTION. DATA: repid TYPE INDX_SRTFD. repid = sy-repid. CALL FUNCTION 'ENQUEUE_ESINDX' EXPORTING relid = 'ZZ' srtfd = repid srtf2 = 0. WAIT UP TO…
https://abap-blog.ru/others/run-block/
abap-blog.ru
ABAP Blog | Заблокировать запуск программы
Бывают случаи когда необходимо заблокировать программу на выполнение, чтобы пользователи не могли одновременно с ней работать, один из самых простых способов
Использование JS в ABAP (от 04.01.2012)
Для интерпретации JavaScript кода в ABAP можно воспользоваться глобальным классом: CL_JAVA_SCRIPT. Далее в примере будет наглядно показано как можно вычислять выражения используя JS функцию eval(). DATA: v_expression TYPE STRING. DATA: js_processor TYPE REF TO cl_java_script, js_source TYPE STRING, return_value TYPE STRING. * Создадим выражение которое необходимо вычислить v_expression = '(2+2)*2'. * Создаем объект интерпретатора Javascript js_processor…
https://abap-blog.ru/osnovy-abap/js-abap/
Для интерпретации JavaScript кода в ABAP можно воспользоваться глобальным классом: CL_JAVA_SCRIPT. Далее в примере будет наглядно показано как можно вычислять выражения используя JS функцию eval(). DATA: v_expression TYPE STRING. DATA: js_processor TYPE REF TO cl_java_script, js_source TYPE STRING, return_value TYPE STRING. * Создадим выражение которое необходимо вычислить v_expression = '(2+2)*2'. * Создаем объект интерпретатора Javascript js_processor…
https://abap-blog.ru/osnovy-abap/js-abap/
abap-blog.ru
ABAP Blog | Использование JS в ABAP
Пример использования системного класса CL_JAVA_SCRIPT, для вызова интерпретатора JavaScript из ABAP.
Запуск транзакции в новом режиме (от 04.01.2012)
Иногда случается необходимость в запуске отдельной транзакции в новом режиме, например когда необходимо отобразить доп. информацию о выделенной в ALV записи. Обычно для этих целей пишется RFC функция которая запускается в новой задаче – STARTING NEW TASK. Можно воспользоваться стандартной RFC функцией : CC_CALL_TRANSACTION_NEW_TASK. Пример её использования: DATA : ls_params TYPE tpara, lt_params TYPE TABLE OF…
https://abap-blog.ru/osnovy-abap/zapusk-transakcii-v-novom-regime/
Иногда случается необходимость в запуске отдельной транзакции в новом режиме, например когда необходимо отобразить доп. информацию о выделенной в ALV записи. Обычно для этих целей пишется RFC функция которая запускается в новой задаче – STARTING NEW TASK. Можно воспользоваться стандартной RFC функцией : CC_CALL_TRANSACTION_NEW_TASK. Пример её использования: DATA : ls_params TYPE tpara, lt_params TYPE TABLE OF…
https://abap-blog.ru/osnovy-abap/zapusk-transakcii-v-novom-regime/
abap-blog.ru
ABAP Blog | Запуск транзакции в новом режиме
Рассмотрен способ запуска транзакции в новом режиме через вызов RFC модуля с параметрами STARTING NEW TASK.
Набор полезных программ (от 05.01.2012)
Получить внешние вызовы ФМ, транзакций и многого другого внутри программы можно с помощью программы – RSINCL00. Транзакция ABAPDOCU – ABAP документация и примеры. Транзакция BIBS – примеры пользовательского интерфейса для ABAP программ. Транзакция DWDM – демо примеры с использованием Enjoy контролов. Программа ADBC_DEMO – демо программа ADBC API (для подключения к внешним базам данных). Транзакция SE83 – библиотека примеров с ALV и прочими…
https://abap-blog.ru/others/nabor-poleznyx-programm-tranzakcij/
Получить внешние вызовы ФМ, транзакций и многого другого внутри программы можно с помощью программы – RSINCL00. Транзакция ABAPDOCU – ABAP документация и примеры. Транзакция BIBS – примеры пользовательского интерфейса для ABAP программ. Транзакция DWDM – демо примеры с использованием Enjoy контролов. Программа ADBC_DEMO – демо программа ADBC API (для подключения к внешним базам данных). Транзакция SE83 – библиотека примеров с ALV и прочими…
https://abap-blog.ru/others/nabor-poleznyx-programm-tranzakcij/
abap-blog.ru
ABAP Blog | Набор полезных программ
Серия полезных программ, которые помогут ABAP разработчику в повседневной жизни.
Выбор файлов на экране выбора (от 06.01.2012)
При работе с файлами в ABAP встает необходимость предоставить пользователю возможность выбора файла на экране выбора, для выбора файла на стороне клиента можно воспользоваться методом класса cl_gui_frontend_services=>file_open_dialog или простой обёрткой над ним cl_salv_test_data=>select_file. Далее будет продемонстрировано как предоставить пользователю выбор файла как на стороне клиента, так и на сервере приложений. DATA: l_true TYPE btch0000-char1. DATA: v_file TYPE STRING,…
https://abap-blog.ru/osnovy-abap/files/vibor-fajlov-na-ekrane/
При работе с файлами в ABAP встает необходимость предоставить пользователю возможность выбора файла на экране выбора, для выбора файла на стороне клиента можно воспользоваться методом класса cl_gui_frontend_services=>file_open_dialog или простой обёрткой над ним cl_salv_test_data=>select_file. Далее будет продемонстрировано как предоставить пользователю выбор файла как на стороне клиента, так и на сервере приложений. DATA: l_true TYPE btch0000-char1. DATA: v_file TYPE STRING,…
https://abap-blog.ru/osnovy-abap/files/vibor-fajlov-na-ekrane/
abap-blog.ru
ABAP Blog | Выбор файлов на экране выбора
Выбор локальных и серверных файлов на экране выбора ABAP программы.
Считывание файлов с фронтенда (от 07.01.2012)
Загрузку файлов с фронтенда рекомендуется делать с помощью статического метода: cl_gui_frontend_services=>gui_upload. Данный метод имеет множество параметров, описание которых я приведу далее. FILENAME – собственно имя файла из которого хотим считать информацию. FILETYPE – Тип файла, может принимать значения BIN, ASC, DAT. BIN – используется при считывании файла в байтовую последовательность. ASC – считывание как из текстового файла,…
https://abap-blog.ru/osnovy-abap/files/upload_from_frontend/
Загрузку файлов с фронтенда рекомендуется делать с помощью статического метода: cl_gui_frontend_services=>gui_upload. Данный метод имеет множество параметров, описание которых я приведу далее. FILENAME – собственно имя файла из которого хотим считать информацию. FILETYPE – Тип файла, может принимать значения BIN, ASC, DAT. BIN – используется при считывании файла в байтовую последовательность. ASC – считывание как из текстового файла,…
https://abap-blog.ru/osnovy-abap/files/upload_from_frontend/
abap-blog.ru
ABAP Blog | Считывание файлов с фронтенда
Загрузку файлов с фронтенда рекомендуется делать с помощью статического метода: cl_gui_frontend_services=>gui_upload. Данный метод имеет множество параметров, описание которых я приведу далее. FILENAME — собственно имя файла из которого хотим считать информацию.…