2017-02-03 13 views
4

У меня есть ABAP include, содержащий только константы. (Не мой код)Использование include с константами в ABAP OO

Я хочу использовать эти константы в методе ABAP OO. (Мой код)

Как я могу использовать эти константы в объектно-ориентированной среде ABAP без их копирования?

Идея состоит в том, чтобы определить эти константы один раз и только один раз. И они уже определены в этом включении.

Дополнительный вопрос: возможно ли создать класс, содержащий константы вышеуказанного, включить в публичный раздел, чтобы я включил его только один раз и использовал эти константы объектно-ориентированным способом из других классов?

+0

Вы хотите использовать константы только в своей реализации или вам нужны они в интерфейсе класса (например, значения параметра метода)? – vwegert

+0

Мне нужны они в реализации. класс будет приятным, поэтому я могу использовать константы из других классов, но не обязательно. –

ответ

7

Если предположить, что на самом деле включает в себя только содержит определение констант: Из класса Builder выберите Goto ->класса значимого локальных определений и место там есть INCLUDE. Это должно сделать константы доступными во всей вашей реализации.

+0

Таким образом, это предоставляет локальные константы, но есть ли способ выставить константы из include на общедоступном уровне с использованием класса, чтобы я мог вызвать параметризованные методы класса с этими константами? (Хотя, возможно, мне следовало бы задать это как отдельный вопрос) – Lilienthal

-2
  1. Вам нужны эти константы только для этого класса? Создайте частные атрибуты в классе.
  2. Будете ли вы использовать его в других классах (и в программах)? Создание и класс со статическими компонентами и использовать его везде ...
+2

Это будет дублировать постоянные определения. Мой вопрос заключается в том, как избежать этого дублирования. –

+0

Вы уже пытались вставить include в определение класса? Вставьте include в определение класса ... Если вы хотите, чтобы он использовался в других классах, создайте абстрактный глобальный класс и вставьте в него include. –

+1

У меня возникла синтаксическая ошибка, когда я попытался включить include в определение класса. Это была моя первая идея, прежде чем я опубликовал этот вопрос. Принятый ответ работает. –

 Смежные вопросы

  • Нет связанных вопросов^_^