*FOR/*NEXT

*FOR / *NEXT используется для повторения определенных скриптов, написанных между FOR и ближайшим NEXT для набора элементов. Наборы элементов могут быть предоставлены либо непосредственно в операторе FOR, либо с помощью переменных.

Модуль логики поддерживает любое количество циклов FORNEXT в теле файлов логики. Они имеют следующий синтаксис:

*FOR {variable1} = {set1} [ AND {variable2={set2}]

{text}

{text}

*NEXT

Пример

В файле логики может потребоваться повторить некоторые расчеты для набора сущностей. Даная выполняется автоматически при следующей записи:

*XDIM_MEMBERSET TIME = 2006.JAN

*XDIM_MEMBERSET CATEGORY = Q1FCST_LOAD

*FOR %Q1% = 2006.JAN, 2006.FEB, 2006.MAR

*RUNALLOCATION

*FACTOR=1/3

*DIM TIME WHAT = 2009.JAN; WHERE = %Q1%;

*DIM CATEGORY WHAT=Q1FCST_LOAD; WHERE=FQ1;

*ENDALLOCATION

*NEXT

Предполагая, что данные прогноза на первый квартал загружены в 2006.JAN, вышеуказанный скрипт равными частями присваивает эти данные каждому периоду в первом квартале.

Примечание

Для каждого оператора *FOR допустима только одна переменная.

Любое кодирование программного обеспечения и/или строки текста программы ("Код"), включенные в эту документацию, являются только примерами и не предназначены для использования в среде продуктивной системы. Код предназначен лишь для лучшего объяснения и наглядного представления синтаксиса и правил построения выражений в определенном кодировании. SAP не гарантирует правильность и полноту приведенного здесь Кода. SAP не будет нести ответственность за ошибки и ущерб, возникшие по причине использования этого Кода, за исключением случаев, если такой ущерб нанесен со стороны SAP намеренно или по грубой неосторожности.