Wiki source code of Выгрузка в TecDoc

Version 11.1 by Александр Молчин on 2025/05/07 12:35

Show last authors
1 **Загрузка информации в TecDoc по одному бренду (в DMM)**
2
3 **Выбор артикулов для загрузки**
4
5 Берем артикулы из NPR, у которых:
6
7 Cтатус = “Заказано / В пути”
8
9 ИЛИ Статус = “На складе”
10
11 И Категория ABC <> “OUT”
12
13 И Категория ABC <> “ZAK”
14
15 И Категория ABC <> “ARC”
16
17 И Категория ABC <> “RLZ”
18
19
20 Это будет Список 1.
21
22
23 Берем отчет Articles из DMM. Это список уже загруженных артикулов. Это будет Список 2.
24
25
26 Удаляем Список 2 из Списка 1 и получим список артикулов для загрузки.
27
28
29 **Выбор группы TecDoc для загружаемых артикулов**
30
31 Если группа новая (= не загружалась в TecDoc ранее), то нужно выбрать ее номер из справочника группы TecDoc. Он называется Generic Articles. В нем нас интересует поле GenArtNo.
32
33 Бывают случаи, где внутри нашей группы (например, Газовые упоры в Trialli) содержится несколько групп TecDoc. В таком случае требуется условие, по которому определяется принадлежность к группе TecDoc (вхождение текста). На примере Газовых упоров это выглядит так:
34
35 [[image:image-20250507153434-1.png||height="52" width="559"]]
36
37 Выбор группы делаю сначала сам, потом привлекаю маркетологов.
38
39
40 **Загрузка Cross и OEM**
41
42 Из БД делаем запрос (прилагаю) с объединением Cross и OEM в одну таблицу. В DMM все OEM и все Cross лежат в одной куче, в отличии от NPR.
43
44 Далее делаем замены ошибочных названий брендов (VALEO_INDI, BOSCH_STAH и т.д.).
45
46 Для загрузки берутся только те OEM и Cross, бренды которых находятся в справочнике брендов TecDoc (в DMM он называется Brands). Признаком нахождения в справочнике брендов TecDoc является наличие заполненного поля Tecdocid в справочнике “Производители OEM/Cross” в NPR.
47
48
49 ~-~- Шаблон для выгрузки OEM-номеров и Кроссов для загрузки в TecDoc
50
51 ~-~- Статусы: "Заказано/В пути", "На складе"
52
53 ~-~- Удаляются значения OEM c кириллицей
54
55
56 **SELECT**
57
58 b.name **AS** Бренд
59
60 ,p.code **AS** Артикул
61
62 ,oc.code **AS** 'OEM/Cross'
63
64 ,om.name **AS** 'Производитель'
65
66 ,om.tecdocId **AS** 'Manuf No.'
67
68
69 **FROM** products //p//
70
71 **LEFT** **JOIN** product_group //pg//
72
73 **ON** //p//.group_id = //pg//.id
74
75 **LEFT** **JOIN** brands //b//
76
77 **ON** //pg//.brand_id = //b//.id
78
79 **LEFT** **JOIN** product_oem //po//
80
81 **ON** //p//.id = //po//.product_id
82
83 **LEFT** **JOIN** oem_codes //oc//
84
85 **ON** //po//.oem_id = //oc//.id
86
87 **LEFT** **JOIN** oem_mark //om//
88
89 **ON** //oc//.oemmarkId = //om//.id
90
91 **WHERE** 1 = 1
92
93 **AND** oc.code **IS** **NOT** **NULL**
94
95 **AND** om.name **IS** **NOT** **NULL**
96
97 **AND** om.tecdocId **IS** **NOT** **NULL**
98
99 **AND** p.status_id **in** (4, 5)
100
101 **AND** b.id **IN** (1, 2, 3, 4, 5)
102
103 ~-~-AND oc.code NOT LIKE '%[а-я]%'
104
105
106 **UNION**
107
108
109 **SELECT**
110
111 //b//.name **AS** 'Бренд'
112
113 ,//p//.code **AS** Артикул
114
115 ,//c//.code **AS** 'OEM/Cross'
116
117 ,//om//.name **AS** 'Производитель'
118
119 ,//om//.tecdocId **AS** 'Manuf No.'
120
121 **FROM** products //p//
122
123 **LEFT** **JOIN** product_group //pg//
124
125 **ON** //p//.group_id = //pg//.id
126
127 **LEFT** **JOIN** brands //b//
128
129 **ON** //pg//.brand_id = //b//.id
130
131 **LEFT** **JOIN** product_codes //pc//
132
133 **ON** //p//.id = //pc//.product_id
134
135 **LEFT** **JOIN** codes //c//
136
137 **ON** //pc//.code_id = //c//.id
138
139 **LEFT** **JOIN** oem_mark //om//
140
141 **ON** //pc//.oem_mark_id = //om//.id
142
143 **WHERE** 1 = 1
144
145 **AND** //c//.code **IS** **NOT** **NULL**
146
147 **AND** //om//.name **IS** **NOT** **NULL**
148
149 **AND** //om//.tecdocId **IS** **NOT** **NULL**
150
151 **AND** //p//.status_id **IN** (4, 5)
152
153 **AND** //b//.id **IN** (1, 2, 3, 4, 5)
154
155 ~-~-AND c.code NOT LIKE '%[а-я]%'
156
157
158
159 **ORDER** **BY**
160
161 Бренд,
162
163 Артикул,
164
165 'OEM/Cross'
166
167
168 **Применяемость**
169
170 Делаем запрос через SQL по одному бренду:
171
172
173 **SELECT**
174
175 //br//.name **AS** 'Бренд'
176
177 ,//p//.code **AS** 'Артикул'
178
179 ,//am//.code **AS** 'Номер TecDoc легковой'
180
181 ,//am//.codeEx **AS** 'Номер TecDoc грузовой'
182
183 ,//am//.lnktargettypeID **AS** 'Linkage Target Type ID'
184
185 **FROM** products //p//
186
187 **LEFT** **JOIN** ausage //au//
188
189 **ON** //p//.id = //au//.product_id
190
191 **LEFT** **JOIN** amodification //am//
192
193 **ON** //au//.modification_id = //am//.id
194
195 **LEFT** **JOIN** product_group //pg//
196
197 **ON** //p//.group_id = //pg//.id
198
199 **LEFT** **JOIN** brands //br//
200
201 **ON** //pg//.brand_id = //br//.id
202
203 **WHERE** 1 = 1
204
205 **AND** (//p//.status_id = 4 **OR** //p//.status_id = 5)
206
207 ~-~-AND p.code = 'AG 15024'
208
209 **AND** //am//.lnktargettypeID **IS** **NOT** **null**
210
211 **AND** //br//.id **IN** (1, 2, 3, 4, 5)
212
213 **AND** //br//.id = 2
214
215 **ORDER** **BY**
216
217 //br//.name,
218
219 //p//.code
220
221
222 В полученной выгрузке добавляем столбец с условием:
223
224 IF ‘Номер TecDoc грузовой’ <> null
225
226 THEN ‘Номер TecDoc грузовой’
227
228 ELSE ‘Номер TecDoc легковой’
229
230
231 Кроме того, в таблицу с применяемостью загружаются еще двигатели (Engines).
232
233
234 |**Linkage Target Type**|**Linkage Target Type ID**
235 |Легковые (PC, LCV)|2
236 |Грузовые (CV)|16
237 |Двигатели (Engines)|14
238
239
240
241 = **Загрузка фотографий в TecDoc** =
242
243
244 Исходная ситуация: у нас есть загруженные артикулы в DMM, и к ним надо загрузить фото из папки ~\~\192.168.0.2\рабочая папка\ОМ\TRIALLI\ФОТО продукции TRIALLI\03_ФОТО 1000\
245
246 Файл для работы:
247
248 [[attach:01 - ФОТО - Загрузка фото в TecDoc, Привязка к артикулам.xlsx||target="_blank"]]
249
250
251 **Алгоритм следующий:**
252
253 * Найдем артикулы без фото (отчет Article Documents)
254 * Найдем все доступные фото по данным артикулам в разрешении 1000*1000 пикселей
255 * Скопируем фото в отдельную папку
256 * Загрузим фото в хранилище TecDoc
257 * Привяжем фото к артикулам и подготовим таблицу с привязками
258
259 1. Перед загрузкой фото спросить у Тимофеева Павла о том, загрузил ли он новые фотографии в разрешении 1000*1000
260 1. Сформировать отчет Article Documents
261
262 1. Зайти в DMM
263 1. Reports/Analysis > Reports > PD > Product Data: Article Documents
264 1. Supplier No. = TRIALLI/LUZAR…
265 1. Language No. = English (GB) ( ИЛИ английский (Великобритания) (4)
266 1. Export report
267 1. CSV, UTF-8
268 1. Start
269 1. Сохранить в C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото . Создать предварительно папку для загрузки фото по каждому бренду и по каждому месяцу
270
271 1. Зайти в запрос в папке "C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото\01 - ФОТО - Загрузка фото в TecDoc, Привязка к артикулам.xlsx"
272
273 1. В Запросе открыть лист settings
274 1. Скопировать путь к файлу Article Documents из п.1 с помощью SHIFT > Правой кнопкой по файлу > Копировать как путь
275 1. Вставить скопированный путь в таблицу “Пути” в строчку Quality Document Check
276 1. Нажать на Данные > Обновить все
277
278 Если LUZAR, то зайти в Запросы “Пути к файлам”, “Список фото в папке”, “Сравнение количества фото в папке и в TecDoc”, “Количество фото” и вставить ссылку на папку LUZAR в первый шаг запроса - ~\~\192.168.0.2\рабочая папка\ФОТОГРАФИИ ПРОДУКЦИИ\LUZAR\01_ФОТО _для текдок
279
280 1. Открыть лист “Пути к файлам”
281 1. В LUZAR фото LAT 0775, LAT 1222, LAT 1224 написано с ошибкой, можно убрать эти артикулы из загрузки.
282 1. Создать текстовый документ на рабочем столе названием Пути.txt
283 1. Скопировать столбец Name в текстовый документ, но удалить первую строчку – слово Name
284 1. Сохранить текстовый файл Пути.txt
285
286 1. Открыть Total Commander на панели задач
287
288 1. В правой половине прописать путь - ~\~\192.168.0.2\рабочая папка\ОМ\TRIALLI\ФОТО продукции TRIALLI\03_ФОТО 1000\*.*
289 1. Нажать на любой артикул из правой половины
290 1. Нажать в меню Выделение > Загрузить выделение из файла > Выбрать файл Пути.txt
291 1. Сейчас нужные файлы выделены.
292 1. Нажать внизу на F5 – Копирование
293 1. Появится окно, сверху будет надпись “Копировать файлы (N шт.) в ”
294 1. Создать папку с названием “N фото” в C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото
295 1. Скопировать путь к новой папке (см. п.2.1)
296 1. Вставить путь в Total Commander в поле “Копировать файлы (N шт.) в ” и удалить из него кавычки
297 1. Нажать ОК
298 1. Выделенные файлы скопируются в заданную папку
299
300 1. Открыть DMM
301
302 1. Basic Data > Files
303 1. Import
304 1. Select files = выбрать папку с фото, выделить все файлы
305 1. Остальные настройки следующие:
306
307 [[image:image-20250418143833-1.png||height="882" width="703"]]
308
309
310 1. Нажать Start Import
311
312 Фото загрузятся в хранилище TecDoc
313
314 1. Сформировать отчет Document Check
315
316 1. Зайти в DMM
317 1. Reports/Analysis > Reports > QU > Quality: Document check
318 1. SUPPLIER No. = TRIALLI/LUZAR…
319 1. Export report
320 1. Format – CSV, UTF-8
321 1. Сохранить в C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото\TecDoc reports
322
323 1. Зайти в запрос Загрузка фото в TecDoc 1000.xlsx в папке C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото
324
325 1. В Запросе открыть лист settings
326 1. Скопировать путь к файлу Document Check из п.1 с помощью SHIFT > Правой кнопкой по файлу > Копировать как путь
327 1. Вставить скопированный путь в таблицу “Пути” в строчку Quality Document Check
328 1. Нажать на Данные > Обновить все
329 1. Открыть лист 232
330 1. Скопировать все, кроме первой строчки
331 1. Файл > Пустая книга
332 1. Встать на ячейку A1, вставить через Специальная вставка > Значения
333 1. Создать папку “Загрузка в TecDoc”
334 1. Сохранить файл в папке “Загрузка в TecDoc”. Имя файла – 232, разрешение файла – PRN
335 1. Скопировать в папку “Загрузка в TecDoc” из других загрузок файл 001.4772 (или другого бренда)
336 1. Переименовать файл 232.prn в 232.4772
337
338 1. Загрузим таблицу с привязками фото к артикулам в TecDoc
339
340 1. Сделаем экспорт базы данных перед загрузкой
341
342 Зайдем в DMM
343
344 Import/Export > Export > Product Data
345
346
347 1. Загрузим таблицу с привязками фото к артикулам
348
349 Зайдем в DMM
350
351 Import/Export > Import > Product Data
352
353 Select Files = выбрать файлы из папки “Загрузка в TecDoc”
354
355
356 1. Сделать валидацию
357 1. В результате валидации может быть ошибка 215 - Document rejected: Image No./Document type is not contained in the article images (record type 232), link documents (record type 432) and data supplier logos (record type 42). This results in rejection of all data records with the same image number/document type: Image no=477210610, Document type=3 (Record type 231)
358
359 Это значит, что фото лежит в хранилище без привязки к артикулу.
360
361 Такое происходило из-за разного регистра в артикуле и в названии фото. Например, фотка ESM 10015050**D**.jpg не притянется к артикулу ESM 10015050**d**. Нужно менять это вручную в таблице перед загрузкой или менять настройки запроса.
362
363
364
365
366
367 **Сортировка фото внутри артикулов**
368
369 Файл для работы:
370
371 [[attach:02 - ФОТО - Сортировка фотографий.xlsx||target="_blank"]]
372
373
374 Поскольку в TecDoc загружаются артикулы не только со статусом “На складе”, но и “Заказано/В пути”, то количество фотографий по одному артикулу со временем будет увеличиваться. Если товар находится “В пути”, то из фотографий на него есть только чертеж, и остальные фото появятся при появлении товара на складе.
375
376 1. Выгрузка базы из DMM
377
378 * Import / Export
379 * Export
380 * Product Data
381
382 [[image:image-20250418143833-4.png||height="788" width="1169"]]
383
384
385 1. Скачать zip-архив
386
387 [[image:image-20250418143833-5.png||height="786" width="1915"]]
388
389 1. Скачать отчет Article Documents из DMM
390 1. Создать папку для сортировки здесь: C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото
391 1. Извлечь zip-архив в отдельную папку. Привести папку к табличному виду в проводнике через Вид > Структура > Таблица
392 1. Скопировать файл 232.<Номер бренда TecDoc> (например, 232.4707) в другую папку
393 1. Открыть файл 232.4707
394 1. Открыть файл "C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото\02 - ФОТО - Сортировка фотографий.xlsx"
395 1. В нем на листе “232 исходная” удалить содержимое умной таблицы кроме заголовков
396 1. Скопировать таблицу из файла 232.4707 в другой файл в умную таблицу на лист “232 исходная”
397 1. На листе “Стыковка” прописать путь к файлу Article Documents без кавычек
398 1. Нажать на Данные > Обновить все
399 1. Скопировать содержимое в новый файл с названием 232.prn (поставить prn в разрешение файла)
400 1. Переименовать файл из 232.prn в 232. <Номер бренда TecDoc> (например, 232.4707)
401 1. Скопировать файл 232.4707 обратно в папку с извлеченным архивом = Заменить в папке назначения
402 1. Сделать архив-zip из всех файлов папки
403 1. Загрузить базу в TecDoc. Import / Export > Import > Product Data
404
405 [[image:image-20250418143833-6.png||height="925" width="1061"]]
406
407 1. Написать Андрею Черджиеву, чтобы он перезагрузил сервер