HanibaL написал(а):
Добрый день.
Может такое уже было, но я не смог найти. Можно ли как-то реализовать выгрузку в таблицу с повторяющимися "заголовками". Т.е. основная шапка, далее заголовочная строка, потом несколько строк относящихся к этому заголовку, далее новый заголовок, и снова несколько строк, относящихся уже ко второму заголовку и т.д. Или тут уже без макросов не обойтись?
Пару дней назад реализовывал такое. Советую разобрать работу вот этой программы ZWWW_MANY_LIST. Там есть реализация того, что вам нужно.
Вот примерный кусок кода, на который стоит обратить внимание.
Code:
  Define SetLine.
    Concatenate &1 &2 into it_Val-Var_Name.
    it_Val-Var_Num = &3.
    it_Val-Find_Text = &4.
    it_Val-Val_Type  = &5.
    Describe field &6 type TypeValue.
    Case TypeValue.
      when 'D'.
        Write &6 to StrVal.
        Condense StrVal.
        it_Val-Value = StrVal.
      when others.
        it_Val-Value = &6.
    EndCase.
    If &5 = 'V'.
      Concatenate &1 it_Val-Value into it_Val-Value.
    EndIf.
    Append it_Val.
  End-of-Definition.
  Loop at it_Usr.
    Clear it_Val.
    At new FUNCTION.
      new_FUNCTION = 'X'.
    EndAt.
    If new_FUNCTION = 'X'.
      Clear new_FUNCTION.
      Num = Num + 1.
      SetLine NameList 'User' Num '' 'V' 'Function'.
      SetLine NameList 'User' Num '[FUNCTION]' '' it_Usr-FUNCTION.
    EndIf.
    Num = Num + 1.
    SetLine NameList 'User' Num '[BNAME]' '' it_Usr-BNAME.
    SetLine NameList 'User' Num '[NAME_LAST]' '' it_Usr-NAME_LAST.
    SetLine NameList 'User' Num '[NAME_FIRST]' '' it_Usr-NAME_FIRST.
  EndLoop.