новое событие
Информационный поток
Задания вакансии материалы разработки сообщения форума
Опытный специалист
Приватное сообщение

Выгрузка в CSV из нетиповой 7.7

Москва(Россия )
01.01.1980(44 года)
2336 |  59
22 сентября 2023 в 08:05:49 (30 недель 6 дней 12 часов назад)
302347
Текст задания
Имеется нетиповая 7.7. Нужно сделать выгрузку из 7.7, чтобы жить спокойно во время работы по переносу.

Пример файла в конце. Это список товаров.

У каждого товара есть набор свойств.

Некоторые свойства множественные, поэтому строка с одним и тем же товаром, загружается в файл по несколько десятков раз, чтобы записать каждой строкой последующее значение множественного свойства.
Например:
товар1;свойство1_1
товар1;свойство1_2
товар1;свойство1_3
итд

Это самое сложное, остальное сделать не проблема
Описание каждого поля сделаю для исполнителя, как только буду уверен что мы сможем с Вами выполнить работу. (полей много, и времени уйдет на это тоже много). Записать обычные свойства в файл проблемы не представляет. Проблема в множественных свойствах.

Некоторые свойства множественные, поэтому строка с одним и тем же товаром, загружается в файл по несколько десятков раз, чтобы записать каждой строкой последующее значение множественного свойства.

Есть определенный справочник. В нем тысячи элементов. Они различаются по принадлежности к клиентам. В выгрузку должны попадать только те элементы, которые принадлежат определенным клиентам. Таких клиентов сейчас два, но нужно сделать так чтобы оператор при установке какой то галочки, мог выгружать товары с определенными клиентами.

Таких клиентов сейчас два, но нужно сделать так чтобы оператор при установке какой то галочки, мог выгружать товары с определенными клиентами.
Принадлежность к клиентам, также является свойством товара. http://alliance2b.ru/gotovye-firmy/ - вот тут слева есть фильтр, в нем практически в самом низу есть свойство - ПРОДАВЕЦ. В нем как раз есть два продавца, это и есть клиенты

Если свойство не видно - нужно нажать кнопочку ПОКАЗАТЬ ВСЕ ФИЛЬТРЫ внизу

Далее, есть свойства с табличными значениями. Они довольно интересным образом организованы,
ОКВЭД - виды экономической деятельности. У каждой фирмы (товара) есть основной ОКВЭД и список дополнительных (табличная часть)
Дполнительные ОКВЭДЫ не задаются каждой фирме вручную постоянно. Все устроено так, что каждый основной ОКВЭД имеет свойства в виде табличной части. Естественно эти свойства давным давно уже забиты, и выбрав у фирмы основной оквэд, в выгрузку попадает и табличная часть основного оквэда.

В самой выгрузке имеем повтор строки с товаром ровно столько раз, сколько свойств в табличной части оквэда (если существуют) + последней строкой записывается основной оквэд.

Дальше начинаются сложности.
Так как есть еще множественные свойства, файл разрастается очень сильно и загружается в систему очень долго, иногда виснет.

Также есть такая проблема, что все множественные свойства должны быть записаны в последних строках, то есть если в ячейке указано свойство, а в следующей строке эта ячейка пустая, то пустая ячейка затирает предыдущую;

Поэтому наиболее простой пример правильного файла такой:
НАЗВАНИЕ ТОВАРА;ОКВЭД;ДОПОЛНИТЕЛЬНЫЙ ОКВЭД
товар1;;доп оквэд_1
товар1;;доп оквэд_2
товар1;;доп оквэд_3
товар1;основной оквэд;доп оквэд_4
в первой строке естественно название полей
В последней строке указан и основной оквэд и дополнительный.
1) Чтобы не плодить доп строку
2) Чтобы не было пустой строки у ДОП ОКВЭДА

Как бы Вы реализовали данный алгоритм, что если доп оквэд последний, то в эту строку записываем основной оквэд?

С данным множественным свойством допустим все понятно пока.
Есть еще множественные свойства, тут есть проблема. Их всех нужно записывать в конец файла. Но иногда получаются таке ситцации когда у фирмы нет множественных свойств до момента записи вышеназванного и в файле только одна строка, тут должен быть некий алгоритм, который будет добавлять копию предыдущей строки и записывать в нее свойства, пока они не закончаться. Бывает что в одну строку приходится записывать несколько значений разных множественных свойств (по разным ячейкам)

Фаил: https://yadi.sk/d/0BLz_Nq8gjGG6

============================
Цена и срок?
0
Отклики (4)