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

Для разработчиков => Вопросы по Qlik Sense & QlikView => Тема начата: SEGA от 01 марта 2018, 02:05:04

Название: Не знаю как добавить несколько файлов в 1 проект (Qlikview, Sense, 1c)
Отправлено: SEGA от 01 марта 2018, 02:05:04
Всем доброго дня! У меня появилась новая проблема связанная  с тем что есть куча exel документов выгруженные из 1С соответственно все поля в них сделаны по стандарту. Скрипт для обработки данных у меня может обрабатывать только те документы которые вписал в скрипт. ВОПРОС Такой!!! могу ли я или через скрипт(ОДИН РАЗ ПРОПИСАТЬ И БОЛЬШЕ НЕ ЛАЗИТЬ В СКРИПТ) или через другие функции ДОБАВЛЯТЬ  кучу этих документов в одни проект что бы не лазить постоянно в скрипт и там не прописывать новые пути к файлам!!!
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: admin от 01 марта 2018, 06:47:15
Привет, можно, но надо приводить все к одному стандарту.
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: SEGA от 02 марта 2018, 08:49:36
Все данные находятся в одном стандарте это 1С просто подскажите через какие функции или хотя бы направление в котором нужно следовать что бы сделать эту задачу
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: admin от 02 марта 2018, 10:32:59
1c файловая или SQL?
Файлы можно грузит по маске если они одинакового формата и структуры,
load * from Выручка*.qvd (qvd);
Загрузит все файлы Выручка2017, Выручка2015, Выручка202222, ВыручкаУдалить и т.д.
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: SEGA от 05 марта 2018, 10:53:03
t1:
LOAD Номенклатура, Поставщик, Штрихкод, Количество, PRICEN, Цена_в_рос., ARTICUL
FROM [C:\Users\ASU\Desktop\ПРОЕКТЫ QLIK\АСТАНА\НА_АСТАНУ.xls]
(biff, embedded labels, table is [0353704$], filters(
Remove(Col, Pos(Top, 25)),
Remove(Col, Pos(Top, 23)),
Remove(Col, Pos(Top, 21)),
Remove(Col, Pos(Top, 20)),
Remove(Col, Pos(Top, 19)),
Remove(Col, Pos(Top, 18)),
Remove(Col, Pos(Top, 17)),
Remove(Col, Pos(Top, 13)),
Remove(Col, Pos(Top, 12)),
Remove(Col, Pos(Top, 11)),
Remove(Col, Pos(Top, 10)),
Remove(Col, Pos(Top, 9)),
Remove(Col, Pos(Top, 8)),
Remove(Col, Pos(Top, 7)),
Remove(Col, Pos(Top, 6)),
Remove(Col, Pos(Top, 5)),
Remove(Col, Pos(Top, 4)),
Remove(Col, Pos(Top, 3))
));
DIRECTORY;
left join (t1)

LOAD Штрихкод, [Количество товаров], Период
FROM [C:\Users\ASU\Desktop\ПРОЕКТЫ QLIK\АСТАНА\Продажи*.xls]
(biff, embedded labels, table is TDSheet$, filters(
Remove(Col, Pos(Top, 12)),
Remove(Col, Pos(Top, 11)),
Remove(Col, Pos(Top, 10)),
Remove(Col, Pos(Top, 9)),
Remove(Col, Pos(Top, 6)),
Remove(Col, Pos(Top, 5)),
Remove(Col, Pos(Top, 4)),
Remove(Col, Pos(Top, 3)),
Remove(Col, Pos(Top, 2)),
Remove(Col, Pos(Top, 1)),
Remove(Row, Pos(Top, 10)),
Remove(Row, Pos(Top, 9)),
Remove(Row, Pos(Top, 8)),
Remove(Row, Pos(Top, 6)),
Remove(Row, Pos(Top, 5)),
Remove(Row, Pos(Top, 4)),
Remove(Row, Pos(Top, 3)),
Remove(Row, Pos(Top, 2)),
Remove(Row, Pos(Top, 1))
));

DIRECTORY;

left join (t1)
load Штрихкод,
num(Количество)-num("Количество товаров") as Остаток,
num(Цена_в_рос.)*num("Количество товаров") as Сумма_реализации
resident t1;

left join (t1) 
load Штрихкод,
NUm(Остаток)/num(Количество)*100 as Процент
resident t1;

Не получилось показывает только первый документ в папке а все остальные игнорит

все документы с одинаковой структурой название их Начинается "Продажа" дальше идет дата помогите все перепробовал не получается







Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: admin от 05 марта 2018, 12:26:16
Для начала, следует отладить загрузку из файлов Продажи*.xls в одну таблицу.
Загрузка простых таблиц Excel по маске без преобразований работает без проблем.
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: admin от 05 марта 2018, 12:30:20
Если не получится по маске - сделайте загрузку в цикле.
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: SEGA от 06 марта 2018, 08:45:41
Загрузка в цикле не получится так как документы будут постоянно добавляться а по поводу 1 варианта можете хотя бы примерчик подкинуть а то вообще не соображаю как и что буду очень благодарен 
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: admin от 06 марта 2018, 09:32:03
Посмотрите по циклам
https://help.qlik.com/ru-RU/sense/September2017/Subsystems/Hub/Content/Scripting/ScriptControlStatements/For%20Each.htm
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: admin от 06 марта 2018, 09:33:35
по вашему коду.
Вы грузите по маске с присоединением. Так нельзя.
Сначала сделайте без join

LOAD Штрихкод, [Количество товаров], Период
FROM [C:\Users\ASU\Desktop\ПРОЕКТЫ QLIK\АСТАНА\Продажи*.xls]
(biff, embedded labels, table is TDSheet$, filters(
Remove(Col, Pos(Top, 12)),
Remove(Col, Pos(Top, 11)),
Remove(Col, Pos(Top, 10)),
Remove(Col, Pos(Top, 9)),
Remove(Col, Pos(Top, 6)),
Remove(Col, Pos(Top, 5)),
Remove(Col, Pos(Top, 4)),
Remove(Col, Pos(Top, 3)),
Remove(Col, Pos(Top, 2)),
Remove(Col, Pos(Top, 1)),
Remove(Row, Pos(Top, 10)),
Remove(Row, Pos(Top, 9)),
Remove(Row, Pos(Top, 8)),
Remove(Row, Pos(Top, 6)),
Remove(Row, Pos(Top, 5)),
Remove(Row, Pos(Top, 4)),
Remove(Row, Pos(Top, 3)),
Remove(Row, Pos(Top, 2)),
Remove(Row, Pos(Top, 1))
));
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: SEGA от 12 марта 2018, 08:52:50
Добрый день! Принципе по задачам получилось но проблема в топ что записи почему то дублируются все перепробовал не получается
вот когд
t1:
LOAD Штрихкод, [Количество товаров], Период
FROM [C:\Users\ASU\Desktop\ПРОЕКТЫ QLIK\АСТАНА\Продажи*.xls]
(biff, embedded labels, table is TDSheet$, filters(
Remove(Col, Pos(Top, 12)),
Remove(Col, Pos(Top, 11)),
Remove(Col, Pos(Top, 10)),
Remove(Col, Pos(Top, 9)),
Remove(Col, Pos(Top, 6)),
Remove(Col, Pos(Top, 5)),
Remove(Col, Pos(Top, 4)),
Remove(Col, Pos(Top, 3)),
Remove(Col, Pos(Top, 2)),
Remove(Col, Pos(Top, 1)),
Remove(Row, Pos(Top, 10)),
Remove(Row, Pos(Top, 9)),
Remove(Row, Pos(Top, 8)),
Remove(Row, Pos(Top, 6)),
Remove(Row, Pos(Top, 5)),
Remove(Row, Pos(Top, 4)),
Remove(Row, Pos(Top, 3)),
Remove(Row, Pos(Top, 2)),
Remove(Row, Pos(Top, 1))
));
DIRECTORY;

left join (t1)

LOAD Номенклатура, Поставщик, Штрихкод, Количество, PRICEN, Цена_в_рос., ARTICUL
FROM [C:\Users\ASU\Desktop\ПРОЕКТЫ QLIK\АСТАНА\НА_АСТАНУ.xls]
(biff, embedded labels, table is [0353704$], filters(
Remove(Col, Pos(Top, 25)),
Remove(Col, Pos(Top, 23)),
Remove(Col, Pos(Top, 21)),
Remove(Col, Pos(Top, 20)),
Remove(Col, Pos(Top, 19)),
Remove(Col, Pos(Top, 18)),
Remove(Col, Pos(Top, 17)),
Remove(Col, Pos(Top, 13)),
Remove(Col, Pos(Top, 12)),
Remove(Col, Pos(Top, 11)),
Remove(Col, Pos(Top, 10)),
Remove(Col, Pos(Top, 9)),
Remove(Col, Pos(Top, 8)),
Remove(Col, Pos(Top, 7)),
Remove(Col, Pos(Top, 6)),
Remove(Col, Pos(Top, 5)),
Remove(Col, Pos(Top, 4)),
Remove(Col, Pos(Top, 3))
));
DIRECTORY;

left join (t1)
load Штрихкод,
num(Количество)-num("Количество товаров") as Остаток,
num(Цена_в_рос.)*num("Количество товаров") as Сумма_реализации
resident t1;

left join (t1) 
load Штрихкод,
NUm(Остаток)/num(Количество)*100 as Процент
resident t1;

помогите разобраться в чем проблема почему дублируются по два и три раза записи в таблице!
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: admin от 12 марта 2018, 02:20:18
Ну правильно, начиная со второй таблицы вы для каждого штрихкода каждого периода грузите данные.
А что при этом с уникальностью штрихкодов во второй таблице?
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: SEGA от 12 марта 2018, 03:24:53
Эталон штрихкода находится во второй таблице а первая таблица, которая загружает все файлы в папке там тоже по одному штрихкоду который находится в первой таблице и соответственно почему то она показывает сразу несколько вариантов и делает расчет в некоторых ячеек правильно а в некоторых не правильно и получается белеберда 
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: admin от 13 марта 2018, 12:59:00
Сложно понять, не видя данные.
Разделите этап получения данных на два: загрузка с сохранением в qvd и преобразование.


t1:
LOAD Штрихкод, [Количество товаров], Период
FROM [C:\Users\ASU\Desktop\ПРОЕКТЫ QLIK\АСТАНА\Продажи*.xls]
(biff, embedded labels, table is TDSheet$, filters(
Remove(Col, Pos(Top, 12)),
Remove(Col, Pos(Top, 11)),
Remove(Col, Pos(Top, 10)),
Remove(Col, Pos(Top, 9)),
Remove(Col, Pos(Top, 6)),
Remove(Col, Pos(Top, 5)),
Remove(Col, Pos(Top, 4)),
Remove(Col, Pos(Top, 3)),
Remove(Col, Pos(Top, 2)),
Remove(Col, Pos(Top, 1)),
Remove(Row, Pos(Top, 10)),
Remove(Row, Pos(Top, 9)),
Remove(Row, Pos(Top, 8)),
Remove(Row, Pos(Top, 6)),
Remove(Row, Pos(Top, 5)),
Remove(Row, Pos(Top, 4)),
Remove(Row, Pos(Top, 3)),
Remove(Row, Pos(Top, 2)),
Remove(Row, Pos(Top, 1))
));

store t1 into продажи.qvd (qvd);
drop table t1;

t2:
LOAD Номенклатура, Поставщик, Штрихкод, Количество, PRICEN, Цена_в_рос., ARTICUL
FROM [C:\Users\ASU\Desktop\ПРОЕКТЫ QLIK\АСТАНА\НА_АСТАНУ.xls]
(biff, embedded labels, table is [0353704$], filters(
Remove(Col, Pos(Top, 25)),
Remove(Col, Pos(Top, 23)),
Remove(Col, Pos(Top, 21)),
Remove(Col, Pos(Top, 20)),
Remove(Col, Pos(Top, 19)),
Remove(Col, Pos(Top, 18)),
Remove(Col, Pos(Top, 17)),
Remove(Col, Pos(Top, 13)),
Remove(Col, Pos(Top, 12)),
Remove(Col, Pos(Top, 11)),
Remove(Col, Pos(Top, 10)),
Remove(Col, Pos(Top, 9)),
Remove(Col, Pos(Top, 8)),
Remove(Col, Pos(Top, 7)),
Remove(Col, Pos(Top, 6)),
Remove(Col, Pos(Top, 5)),
Remove(Col, Pos(Top, 4)),
Remove(Col, Pos(Top, 3))
));
store t2 into справочник.qvd (qvd);
drop table t2;



Сначала добейтесь корректной загрузки на этом этапе, сверяя результаты с источниками.
Затем уже работайте с qvd-файлами. Ясности будет больше.
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: SEGA от 14 марта 2018, 09:48:56
Добрый день! вроде как сделал как вы сказали все получилось данные не дублируются и находятся в qvd файлах, но ! когда начинаешь делать расчет например высчитать остаток начинается очередная каша (дублируются данные опять) из за того что дублируются данные в остатке все остальные расчеты начинают падать и все в чем может быть проблема???
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: admin от 14 марта 2018, 12:28:35
Что такое - количество, количество товаров, период, ..
У вас количество вяжется только по штрихкоду, а в первой таблице помимо штрихкода есть и период.
Название: Re: Не знаю как добавить несколько файлов в 1 проект
Отправлено: SEGA от 14 марта 2018, 12:57:05
Весь товар вяжется только по штрихкоду

1 таблица присылают с реализованным товаром цена количество штрихкод  и
2 таблица это на подобия эталон там весь товар который был отправлен заказчику и связать весь товар количество которое отправили и количество которое они продали связанно только с штрихкодом как то так получается