Неофициальный форум пользователей Qlik Sense & Qlikview

Для разработчиков => Вопросы по Qlik Sense & QlikView => Тема начата: Валерий от 23 октября 2020, 10:04:53

Название: Qlik преобразования в загрузочном скрипте
Отправлено: Валерий от 23 октября 2020, 10:04:53
Добрый вечер!
Есть следующая таблица:

номер          столбец2    столбец3   столбец4
11111111   текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3
22222222   текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3
33333333   текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3
           текст1       текст2   текст3

На выходе надо получить такую таблицу:

номер         столбец2   столбец3 столбец4
11111111   текст1   текст2   текст3
11111111   текст1   текст2   текст3
11111111   текст1   текст2   текст3
11111111   текст1   текст2   текст3
22222222   текст1   текст2   текст3
22222222   текст1   текст2   текст3
22222222   текст1   текст2   текст3
22222222   текст1   текст2   текст3
22222222   текст1   текст2   текст3
22222222   текст1   текст2   текст3
22222222   текст1   текст2   текст3
22222222   текст1   текст2   текст3
22222222   текст1   текст2   текст3
22222222   текст1   текст2   текст3
22222222   текст1   текст2   текст3
33333333   текст1   текст2   текст3
33333333   текст1   текст2   текст3
33333333   текст1   текст2   текст3
33333333   текст1   текст2   текст3
33333333   текст1   текст2   текст3

Т.е. заполнить пустые ячейки значениями из выше.
В теории я понимаю, что нужно ввести доп переменную, присвоить ей значение из первого столбца и потом в цикле "бежать" по всей таблице и в случае "" подставлять переменную, в другом случае записывать в неё новое значение и только потом подставлять...
Но на практике не вышло. Прошу помощи.
Заранее спасибо.

Название: Re: Qlik преобразования в загрузочном скрипте
Отправлено: govorun от 24 октября 2020, 06:12:14
Есть такая примочка Previous(), она бы наверное сгодилась, но я бы на Вашем месте начал бы того, как формируется исходная таблица. Лучше не подлаживать Клику подобные таблицы для преобразования. Есть зависимость от порядка сортировки, загрузки... Если эта таблица грузится из Excel или еще откуда, то давайте сделаем ее правильной изначально во избежание возможных ошибок.
Название: Re: Qlik преобразования в загрузочном скрипте
Отправлено: Uunit от 29 октября 2020, 01:48:34
При загрузке используйте это.
IF(isnNull(номер),Peek(номер),номер) as номер
Название: Re: Qlik преобразования в загрузочном скрипте
Отправлено: Валерий от 29 октября 2020, 11:36:08
Previos() корректно отработал только 1 раз, т.е. из массива:
1111 ; - ; - ; - ; -
получил массив:
1111 ;1111 ; - ; - ; -

isnNull(номер) не хотел работать и я его заменил на len(номер)=0, далее в связке с Peek всё отлично заработало.

Спасибо!  :)  :)  :)
Название: Re: Qlik преобразования в загрузочном скрипте
Отправлено: govorun от 31 октября 2020, 12:58:35
Значит что-то не так делали. Оба предложенных варианта должны были отработать корректно.