ABAP SQ01 Ошибка в сгенерированном отчете (экран выбора слишком велик) № сообщения AQ366

Я получаю сообщение об ошибке ниже при выполнении запроса с SQ01

Не знаю, откуда взялась проблема. У меня всего 3 поля в выборе

И всего два поля в выводе

Под моим кодом ВЫБОР-ЭКРАН в информационном наборе

       SELECTION-SCREEN: BEGIN OF BLOCK b1.
*
  SELECT-OPTIONS: S_VKORG FOR ZRSD_VIN_STDFLOW-SALES_ORG NO INTERVALS.
  SELECT-OPTIONS: S_COD_OP FOR zrsd_vin_stdflow-CODICEOPER NO INTERVALS DEFAULT 'BP*'.
  SELECTION-SCREEN SKIP.
  SELECT-OPTIONS: S_VBELN FOR zrsd_vin_stdflow-SALESORD NO INTERVALS.
*
SELECTION-SCREEN: END OF BLOCK b1.

Спасибо за поддержку

3 ответа

Кажется, вы превысили старое ограничение редактора ABAP в 72 символа с помощью этого утверждения, которое составляет 84:

       SELECT-OPTIONS: S_COD_OP FOR zrsd_vin_stdflow-CODICEOPER NO INTERVALS DEFAULT 'BP*'.

Попробуйте объявить эту строку таким образом:

       DATA: v_codi TYPE zrsd_vin_stdflow-codiceoper.

SELECT-OPTIONS: s_cod_op FOR v_codi NO INTERVALS DEFAULT 'BP*'.

Таким образом, часть объявления, вероятно, должна перейти в событие DATA.

Недавно я столкнулся с этой же проблемой, и для меня решения заключались в проверке кода и поиске запятой (,), когда мы устанавливаем параметр «Арифметика с фиксированной точкой» в глобальных свойствах не может заполнять переменные константы запятой.

Текст кода ошибки AQ366 вводит в заблуждение, речь идет об экране выбора, но в сгенерированной программе может быть что угодно не так.

Лучшее решение для понимания того, что происходит, путем получения фактического сообщения о синтаксической ошибке в сгенерированной программе:

  1. Код запуска транзакции
  2. Меню Запрос> Дополнительные функции> Отображать название отчета
  3. Скопируйте название отчета в буфер обмена
  4. Код запуска транзакции SE38
  5. Вставьте название отчета
  6. Меню Программа> Проверить> Синтаксис ( Ctrl+ F2)
  7. Основываясь на точном сообщении об ошибке, примените исправление и повторите попытку.

Обратите внимание, что если информационный набор был изменен, запрос может потребоваться повторно, чтобы включить изменения:

  1. Код запуска транзакции SQ01
  2. Меню Запрос> Дополнительные функции> Создать программу
Другие вопросы по тегам