Разделение заполненного имени (заголовка таблицы) на две отдельные строки - PullRequest
1 голос
/ 03 апреля 2019

У меня есть набор данных следующей структуры:

Company.ID  DDR (25632) PTL (89567)
2512             89         74
9875             78         96
7892             14         73

Я хотел бы разделить заголовок на две разные строки.Другими словами, вторая часть заголовка должна или может быть первой переменной.Как можно преобразовать набор данных в желаемую форму (см. Ниже):

Company.ID          DDR         PTL 
     -            (25632)     (89567)
    2512             89         74
    9875             78         96
    7892             14         73

Чтобы повторить приведенный выше пример в Qlik, запустите следующий код:

LOAD * Inline [
        [Company.ID], [DDR (25632)], [PTL (89567)]
        2512,89,74
        9875,78,96
        7892,14,73
    ];

Любая помощь илиTIPP будет высоко оценен!

1 Ответ

1 голос
/ 05 апреля 2019

Вам нужно зациклить столбцы, переименовать их и объединить с новыми значениями.Вот пример, который я написал:

table:
LOAD * Inline [
        Company.ID, DDR (25632), PTL (89567)
        2512,89,74
        9875,78,96
        7892,14,73
    ];


For i=1 to NoOfFields('table')

    LET vField = FieldName($(i),'table');
    LET vFieldName_$(i) = SubField('$(vField)',' ',1);
    LET vFieldValue_$(i) = SubField('$(vField)',' ',2);

    If '$(vField)' <> '$(vFieldName_$(i))' THEN

        Rename Field '$(vField)' TO '$(vFieldName_$(i))'; 

    EndIf

next

Concatenate(table)
Load * Inline [
    '$(vFieldName_1)', '$(vFieldName_2)', '$(vFieldName_3)'
    '$(vFieldValue_1)', '$(vFieldValue_2)', '$(vFieldValue_3)'
];
...