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.