Как я могу протестировать операторы OpenSQL в SAP GUI или ABAP Development Tools?
Я пишу запрос OpenSQL, включая объединения и вложенные выборки, и я не уверен, работает ли он. Чтобы выяснить, я хотел бы запустить его где-нибудь, посмотреть на результаты, а затем изменить его, итеративным способом.
Традиционные инструменты, такие как транзакции SE16
или же SQVI
не помогают, потому что у них слишком мало функциональности (только одна таблица, только объединения, но нет подвыборов и т. д.). Другие темы с похожими вопросами, как этот, остались без ответа.
Конечно, я мог бы написать отчет или модульный тест, вставить туда свой код и запустить его, но это делает итерационный цикл таким медленным, потому что мне нужно все время менять форматы входных и выходных данных. Оптимальным решением было бы что-то вроде консоли SQL в SAP HANA Studio, но для OpenSQL вместо нативного SQL.
2 ответа
(от имени @Florian) Используйте консоль SQL в Eclipse. это позволяет Open SQL SELECT, кроме
FOR ALL ENTRIES
и переменные.(от имени @JozsefSzikszai) программное обеспечение "Редактор OpenSQL для SAP", STA Consulting Kft. Существует 30-дневный пробный период, поэтому может быть только краткосрочным решением (если ваша компания его не купит)
Используйте инструмент
ZTOAD
, созданный Себастьеном Германом: http://quelquepart.biz/article7/ztoad-requeteur-open-sql.Вы можете косвенно протестировать операторы Open SQL, создав тестовые классы (ABAP Unit), в которых вы используете класс
CL_OSQL_TEST_ENVIRONMENT
(ABAP >= 7.52), который используется для проверки базы данных, поэтому вы можете предоставить ложные данные, ввести ожидаемый результат, выполнить открытый SQL в тестовом режиме и проверить, что фактический результат = ожидаемый результат. Он поддерживает все функции Open SQL.Все вышеперечисленные решения позволяют напрямую тестировать Open SQL. Другое решение состоит в том, чтобы использовать собственные редакторы SQL и писать операторы Open SQL в строгом режиме (ABAP >= 7.40), чтобы они были ближе к собственному синтаксису SQL (особенно запятая должна использоваться для разделения имен столбцов; но разделитель псевдонимов должен быть вручную изменен с
~
в.
). Существует два встроенных редактора SQL: один - инструмент дляST04 or ST04N
одна стандартная программаRSDU_EXEC_SQL
, Оба отображают результат операторов SELECT в сетке ALV.
Доброе утро, вы можете взглянуть на запросы (SQ01/SQ02) вместо QuickViews в SQVI. В Queries у вас есть шанс улучшить свои объединения с помощью кодирования, и вы все еще можете проверить свой "код". Для постепенных изменений это может быть ваш самый простой путь.
С уважением