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

Version 86.1 by Александр Молчин on 2025/06/23 11:59

Show last authors
1 = **Сборка таблиц для загрузки информации по списку артикулов одного бренда через DMM** =
2
3 DMM - личный кабинет TecDoc, через который происходит загрузка наших товаров. DMM - старая версия личного кабинета, с 2023 г. появился TecDoc ONE - новая версия личного кабинета. Основное различие - загрузка стала более удобной и легкой для пользователя, требования к уровню знаний Excel снизились плюс снижается время между загрузкой и отображением в каталоге (8 дней у DMM и 1 день у ONE). В настоящий момент DMM работает для Trialli, Luzar, Startvolt и Airline. ONE работает только для Carville Racing. В планах у TecDoc отправить все бренды на ONE во втором квартале 2025 г, но на 17.06.25 точной даты и алгоритмы сотрудники TecDoc не предоставили (вопрос задавал в июне). Надо уточнить, но возможен вариант не переезжать на ONE и остаться на DMM.
4
5 **Ссылки на DMM**
6
7 DMM по Luzar / Airline [[http:~~/~~/192.168.1.79:8181/>>url:http://192.168.1.79:8181/]]
8
9 DMM по Trialli / Startvolt [[http:~~/~~/192.168.1.76:8080/>>url:http://192.168.1.76:8080/]]
10
11 Официальная документация: [[attach:TecDoc-Data-Format_Version_2.7_EN_2.0.29.pdf||target="_blank"]]
12
13 **Файлы по сбору и подготовке информации**
14
15 Файл СБОР 2.0: [[attach:СБОР 2.0.xlsx||target="_blank"]]
16
17 Сбор таблиц в TecDoc: [[attach:Сборка таблиц TecDoc.xlsx||target="_blank"]]
18
19
20 == **ОБЩАЯ СХЕМА** ==
21
22 [[image:Алгоритм загрузки в TecDoc.png]]
23
24 **Что должно получиться в финале (итоговые файлы):**
25
26 [[attach:Таблицы для загрузки.rar||target="_blank"]] - пример из последней загрузки Airline
27
28 Название файла 200.4826 означает, что это таблица № 200 из документации для бренда номер 4826 (поле Supplier No. для Airline)
29
30 Содержание таблиц:
31
32 001 - условно "сопроводительное письмо" о загрузке. Информации об артикулах в нем нет. Я его не собираю, копирую из прошлых загрузок.
33
34 200 - Артикул и Бренд
35
36 203 - Cross / OEM
37
38 209 - Штрих-коды
39
40 210 - Характеристики и их значения
41
42 211 - Номер группы TecDoc
43
44 212 - Страна, статус
45
46 400 - Применяемость
47
48 Информация о содержании всех полей таблиц есть в документации.
49
50
51 == **Выбор артикулов для загрузки** ==
52
53 Берем для загрузки артикулы, удовлетворяющие условиям:
54
55 Cтатус = “Заказано / В пути”
56
57 ИЛИ Статус = “На складе”
58
59 И Категория ABC <> “OUT”
60
61 И Категория ABC <> “ZAK”
62
63 И Категория ABC <> “ARC”
64
65 И Категория ABC <> “RLZ”
66
67 И Категория ABC <> “D”
68
69 Это будет Список 1.
70
71
72 Берем отчет Articles из DMM (см.ниже как его найти). Это список уже загруженных артикулов. Это будет Список 2.
73
74 [[image:1748502438816-408.png||height="374" width="378"]]
75
76
77 Удаляем Список 2 из Списка 1 и получим список артикулов для загрузки.
78
79
80 === **Выбор номера группы TecDoc для загружаемых артикулов** ===
81
82 Есть два сценария выбора:
83
84 1) Группа ранее загружалась, поэтому ее номер известен
85
86 В этом случае нужно взять **Номер группы TecDoc **из справочников:
87
88 [[attach:AIRLINE Группы TECDOC.xlsx||target="_blank"]]
89
90 [[attach:LUZAR Группы TECDOC.xlsx||target="_blank"]]
91
92 [[attach:TRIALLI Группы TecDoc.xlsx||target="_blank"]]
93
94 Бывают случаи, где внутри нашей группы (например, Газовые упоры в Trialli) содержится несколько групп TecDoc. В таком случае требуется условие, по которому определяется принадлежность к группе TecDoc (вхождение текста). На примере Газовых упоров это выглядит так:
95
96 [[image:image-20250507153434-1.png||height="52" width="559"]]
97
98 2) Группа ранее не загружалась
99
100 Если группа новая (= не загружалась в TecDoc ранее), то нужно выбрать ее номер из справочника группы TecDoc - [[attach:Generic Articles 2024 2.0.xlsx||target="_blank"]]. В нем нас интересует поле GenArtNo. Также можно вбить OEM артикула новой группы авторитетного бренда в каталог TecDoc - [[https:~~/~~/web.tecalliance.net/tecdocru/ru/login>>url:https://web.tecalliance.net/tecdocru/ru/login]] - и подобрать группу из выпавших артикулов.
101
102 Выбор группы делаю сначала сам, потом привлекаю маркетологов.
103
104 Если группы нет в справочнике Generic Articles, то можно написать письмо в TecDoc со списком групп для добавления. Такое мы делали один раз для Airline - добавление групп произошло через 3 месяца с момента подачи заявки.
105
106
107 == **Загрузка Cross и OEM (таблица 203)** ==
108
109 Из БД делаем два запроса - OEM и Cross (прилагаю) с объединением их в одну таблицу. В DMM OEM и Cross лежат в одной куче, в отличии от NPR.
110
111 **Обработка OEM / Cross**
112
113 1) Убрать OEM / Cross, в значениях которых есть кириллица
114
115 2) Почистить OEM / Cross от лишних пробелов, служебных символов (переносов строк и т.д.)
116
117 3) Для загрузки берутся только те OEM / Cross, бренды которых находятся в справочнике брендов TecDoc (в DMM он называется Brands) = надо удалить значения tecdocId, равные null. Признаком нахождения в справочнике брендов TecDoc является наличие заполненного поля Tecdocid в справочнике “Производители OEM/Cross” в NPR.
118
119 4) Заменить ошибочные названия брендов (VALEO_INDI, BOSCH_STAH и т.д.). [[attach:Замена ошибок в брендах.xlsx||target="_blank"]] - в нем **Tecdoc id** меняем на **Tecdoc id для замены бренда.**
120
121 В конце СБОР 2.0 таблица должна выглядеть так:
122
123 1. Артикул
124 1. Номер бренда Carville
125 1. Номер бренда производителя TecDoc
126 1. Cross/OEM
127
128 Номер бренда Carville определяется так:
129
130 (% dir="ltr" style="height:30px; width:30px" %)
131 |(% style="width:115px" %)**Бренд**|(% style="width:48px" %)**Номер бренда Carville**
132 |(% style="width:115px" %)AIRLINE|(% style="width:48px" %)4826
133 |(% style="width:115px" %)LUZAR|(% style="width:48px" %)4707
134 |(% style="width:115px" %)TRIALLI|(% style="width:48px" %)4772
135 |(% style="width:115px" %)STARTVOLT|(% style="width:48px" %)4471
136
137 ==== **Запрос SQL для выгрузки Cross** ====
138
139 ~-~- Статусы: "Заказано/В пути", "На складе"
140
141 **SELECT**
142
143 b.name **AS** 'Бренд'
144
145 ,p.name **AS** 'Наименование ADS'
146
147 ,p.code **AS** 'Артикул'
148
149 ,c.code **AS** 'Код аналога'
150
151 ,om.name **AS** 'Производитель аналога'
152
153 ,om.tecdocId **AS** 'tecdocId'
154
155 **FROM** products p
156
157 **LEFT JOIN** product_group pg
158
159 **~ ON** p.group_id = pg.id
160
161 **LEFT JOIN **brands b
162
163 **ON** pg.brand_id = b.id
164
165 **LEFT JOIN** product_codes pc
166
167 **~ ON** p.id = pc.product_id
168
169 **LEFT JOIN** codes c
170
171 **ON** pc.code_id = c.id
172
173 **LEFT JOIN** oem_mark om
174
175 **ON** pc.oem_mark_id = om.id
176
177 **WHERE** 1 = 1
178
179 **AND** p.status_id **IN** (4,5)
180
181 **AND** b.name **IS NOT** null
182
183 **AND** c.code **IS NOT** null
184
185 **AND** om.name **IS NOT** null
186
187 **AND** b.id **IN** (1, 2, 3, 4, 5)
188
189 ~-~-**AND** p.code = 'ALED061'
190
191 **ORDER BY**
192
193 Бренд
194
195 ,'Наименование ADS'
196
197 ,'Производитель аналога'
198
199 ,'Код аналога'
200
201
202 ==== **Запрос SQL для выгрузки OEM** ====
203
204 ~-~- Статусы: "Заказано/В пути", "На складе"
205
206 **SELECT**
207
208 b.name **AS** 'Бренд'
209
210 ,p.name **AS** 'Наименование ADS'
211
212 ,p.code **AS** 'Артикул'
213
214 ,oc.code **AS** 'OEM'
215
216 ,om.name **AS** 'Марка'
217
218 ,om.tecdocId **AS** 'tecdocId'
219
220 **FROM** products p
221
222 **LEFT JOIN** product_group pg
223
224 **ON** p.group_id = pg.id
225
226 **LEFT JOIN** brands b
227
228 **ON** pg.brand_id = b.id
229
230 **LEFT JOIN** product_oem po
231
232 **ON** p.id = po.product_id
233
234 **LEFT JOIN** oem_codes oc
235
236 **ON **po.oem_id = oc.id
237
238 **LEFT JOIN** oem_mark om
239
240 **ON **oc.oemmarkId = om.id
241
242 **WHERE** 1 = 1
243
244 **AND** p.status_id **IN** (4,5)
245
246 **AND** oc.code **IS NOT** NULL
247
248 **~ AND **om.name **IS NOT** NULL
249
250 **AND** p.code **IS NOT** NULL
251
252 **AND** b.id **IN** (1, 2, 3, 4, 5)
253
254 **ORDER BY**
255
256 Бренд
257
258 ,Артикул
259
260 ,Марка
261
262 ,OEM
263
264 **Промежуточный вариант:**
265
266 [[image:14 супп.png||height="367" width="473"]]
267
268
269 **Итоговый вариант:**
270
271 [[image:15 супп.png]]
272
273
274 Вот изначальные требования к таблице (см. с. 149 в документации)
275
276 [[image:16 супп.png]]
277
278
279 == **Характеристики** ==
280
281 Надо выгрузить индивидуальные и групповые характеристики.
282
283 ==== **Запрос SQL на индивидуальные характеристики** ====
284
285 **SELECT**
286
287 br.name **AS** Бренд
288
289 ,p.code **AS** Артикул
290
291 ,pg.name **AS** Группа
292
293 ,prop.name **AS** Характеристика
294
295 ,pv.val **AS** Значение
296
297 **FROM** propvalues pv
298
299 **LEFT JOIN** properties prop
300
301 **~ ON** pv.property_id = prop.id
302
303 **LEFT JOIN** products p** **
304
305 **~ ON** pv.product_id = p.id
306
307 **LEFT JOIN** product_group pg
308
309 **~ ON** p.group_id = pg.id
310
311 **LEFT JOIN** brands br
312
313 **~ ON **pg.brand_id = br.id
314
315 **WHERE** 1 = 1
316
317 **~ AND** p.status_id **IN** (4, 5)
318
319 **~ AND** pv.val **IS NOT** null
320
321 **~ AND** pv.val **NOT IN** ('')
322
323 **~ AND** br.id **IN** (1, 2, 3, 4, 5)
324
325 **~ AND **br.id = 3
326
327 **ORDER BY**
328
329 Бренд,
330
331 Группа,
332
333 Артикул
334
335 ==== **Запрос SQL на групповые характеристики** ====
336
337 **SELECT**
338
339 br.name **AS** Бренд
340
341 ,p.code **AS** Артикул
342
343 ,pg.name **AS** Группа
344
345 ,prop.name **AS** Характеристика
346
347 ,pb.defval **AS** Значение
348
349 **FROM** propbind pb
350
351 **LEFT JOIN** product_group pg
352
353 **ON** pb.group_id = pg.id
354
355 **LEFT JOIN** properties prop
356
357 **ON** pb.property_id = prop.id
358
359 **LEFT JOIN** products p
360
361 **ON **pb.group_id = p.group_id
362
363 **LEFT JOIN** brands br
364
365 **ON** pg.brand_id = br.id
366
367 **WHERE** 1 = 1
368
369 **AND** pb.defval **IS NOT** NULL
370
371 **AND** **pb.defval **NOT IN** ('')**
372
373 **AND p.code **IS NOT** NULL**
374
375 **AND** p.code **NOT IN** ('', '<новый код>')
376
377 **AND** p.status_id **IN **(4, 5)
378
379 **AND **br.id **IN **(1, 2, 3, 4, 5)
380
381 ~-~-**AND** br.id = 3
382
383 **ORDER BY**
384
385 Бренд,
386
387 Группа,
388
389 Артикул,
390
391 Характеристика
392
393
394 **Важно! Приоритет выбора значения характеристики при наличии значения в двух выгрузках (групповых и индивидуальных характеристиках).**
395
396 Логика, присущая большинству ситуаций: если у группы есть групповая характеристика, то у нее есть одно-единственное значение на всю группу, свойственное всем входящим в нее артикулам. Однако бывает так, что маркетолог меняет дефолтное значение у групповой характеристики на другое. В таком случае видим картину: у одного артикула одна и та же характеристика с двумя разными значениями фигурирует в обеих выгрузках (групповых и индивидуальных характеристик). Для этого мы проверяем наличие характеристики в обоих выгрузках, и если оно есть, то у характеристики берется значение из индивидуальной выгрузки, а групповое значение игнорируется.
397
398 Потом найти отсутствующие значения обязательных характеристик и отдать маркетологам.
399
400 Справочники характеристик:
401
402 [[attach:AIRLINE TECDOC.xlsx||target="_blank"]]
403
404 [[attach:LUZAR TECDOC.xlsx||target="_blank"]]
405
406 [[attach:TRIALLI TECDOC.xlsx||target="_blank"]]
407
408 **Важно! Добавление вручную характеристик, которых нет в NPR, но они требуются в TecDoc.**
409
410 Иногда бывают случаи, когда в TecDoc есть обязательная характеристика для конкретной группы (Mandatory Criteria), но маркетологи отказываются ее добавлять. Например, для **Датчиков износа **требуется Тип тормоза, но Антон Павлишин отказывается его добавить в NPR (его аргумент - очевидно, что везде Дисковый тормозной механизм). Другой пример -** Стойки стабилизатора** (Иван Пальмин). Для этой группы для TecDoc обязательна хар-ка Стойка со значением Соединительная штанга. Я **вручную** добавляю отдельно такие значения ко всем загружаемым артикулам, где это требуется.
411
412 **Важно! Добавление вручную информации, которой нет в разделе Характеристики, но она есть в других разделах NPR (она не требуется в TecDoc).**
413
414 Например, для Дисков тормозных нужна Масса брутто, кг, а для Прокладок ГБЦ из Luzar нужна Комплектация.
415
416
417 === Проверка полного заполнения характеристик в карточке товара артикула ===
418
419 Проверка имеет следующую логику: если обязательная характеристика не заполнена у артикула, то эта строчка будет в файле с ошибками.
420
421 Бывает, что наличие значения одной характеристики зависит от значения другой характеристики. Например, у глушителей есть диаметр 2 и его наличие зависит от его формы. Если форма глушителя = овал, то исходя из диаметр 1 и диаметр 2 должны быть заполнены (EAM 1808). Если форма = круг (EAM 0406), то значение диаметра 2 будет пустым, но не должно считаться ошибкой и не должно попасть в файл с ошибками. Таких случаев немного. Если у амортизаторов Тип верхнего крепления <> Шток, то пустое значения Хода штока, мм не должно являться ошибкой. Третий пример - Насосы водяные и Диаметр шкива. Конструкция может не предусматривать шкива.
422
423
424 === Маппинг значений характеристик NPR и к значениям справочника TecDoc. Очистка и подгонка значений. ===
425
426 После исправления маркетологами ошибок нужно сделать новые выгрузки характеристик и начать делать стыковку значений(маппинг) со справочником TecDoc.
427
428 Стыковка разделена на два файла - в одном числовые характеристик (тип N), во втором - текстовые (тип А) и характеристики со значениями из выпадающего списка (тип K).
429
430 У разных характеристик типа A или N длина значений будет отличаться, поэтому во время маппинга значений нужно не превышать максимальную длину значения. Список характеристик TecDoc и их длины можно посмотреть в файле - [[attach:Параметры TecDoc 2024.xlsx||target="_blank"]]
431
432 Например, надо подобрать значения к характеристиками **Суппортов тормозных.**
433
434 [[image:05 супп.png||height="83" width="845"]]
435
436 Ниже пойдут примеры уникальных значений NPR по каждой загружаемой группе.
437
438 Первый файл - типы K и A (см. выше - Criterion Type)
439
440 [[image:01 супп.png||height="233" width="577"]]
441
442 Найдем значения для **Количество поршней**
443
444 [[image:02 супп.png||height="202" width="629"]]
445
446 Найдем значения для **Сторона установки**
447
448 [[image:03 супп.png||height="94" width="633"]]
449
450
451 Значение характеристики **Тормозная система **должно быть названием, поэтому здесь его не меняем.
452
453 Итоговый файл с подобранными значениями характеристик типа K и A выглядит так (в конечном счете нам нужна пара Crit. No + ID (Key Value):
454
455 [[image:06 супп.png||height="261" width="648"]]
456
457 Иногда у маркетолога в NPR есть сложная и редкая информация, которой нет в справочнике TecDoc, но при этом она важна для покупателя. В таком случае мы ставим характеристику Версия (Crit No. = 1059) и вписываем значение длиной до 20 символов на английском языке. Иногда можем вписывать несколько значений характеристики **Версия.**
458
459
460 **Обработка числовых значений:**
461 1) Делать замену с “.” на “,”
462
463 2) Если значение подразумевает диапазон
464 Например, Диапазон измеряемого давления, бар = 0 - 3,5
465 то нужно выбрать 2 характеристики
466 Давление от = 0
467 Давление до = 3,5
468
469 В данном случае новые характеристики ищутся повторно
470
471 3) Проверять значения с перечислением через разделитель
472 Например, Двигатель = 31896, 33162 должен быть преобразован в
473 Двигатель = 31896
474 Двигатель = 31862
475
476 4) Убрать “+” из значений температуры. Например, +30 => 30
477
478 5) Отсечь погрешность из значения (после “±”). Например, 180±10 => 180
479
480
481 На примере **Суппортов тормозных** замена числовых значений (тип N) выглядит так:
482
483 - точки заменил на запятые
484
485 - поменял характеристику у двойных значений 44/48 и 46/52.
486
487 [[image:07 супп.png||height="37" width="510"]]
488
489 Итоговый тип N:
490
491 [[image:04 супп.png||height="502" width="577"]]
492
493
494 Потом объединеняем оба файла в один:
495
496 [[image:08 супп.png]]
497
498
499 В процессе объединения файлов числовые значения могут искажаться, поэтому нужно знать об этом и вручную корректировать такие случаи. Я это делаю как шаг в запросе Power Query.
500
501
502 === Сборка таблицы с характеристиками в TecDoc (таблица 210) ===
503
504 Формат загрузки характеристик представлен в документации на с.161. Вот он:
505
506 [[image:13 супп.png||height="630" width="605"]]
507
508
509 После этого собираем таблицу с характеристиками по каждому артикулу, учитывая порядок следования (нумерацию) характеристик в карточке товара (из справочника характеристик по бренду).
510
511 [[image:05 супп.png||height="67" width="683"]]
512
513 Промежуточный вариант:
514
515
516 [[image:11 супп.png||height="256" width="445"]]
517
518
519 Итоговый вариант:
520
521 [[image:12 супп.png]]
522
523 == **Применяемость** ==
524
525 Делаем запрос через SQL по одному бренду:
526
527
528 **SELECT**
529
530 //br//.name **AS** 'Бренд'
531
532 ,//p//.code **AS** 'Артикул'
533
534 ,//am//.code **AS** 'Номер TecDoc легковой'
535
536 ,//am//.codeEx **AS** 'Номер TecDoc грузовой'
537
538 ,//am//.lnktargettypeID **AS** 'Linkage Target Type ID'
539
540 **FROM** products //p//
541
542 **LEFT** **JOIN** ausage //au//
543
544 **ON** //p//.id = //au//.product_id
545
546 **LEFT** **JOIN** amodification //am//
547
548 **ON** //au//.modification_id = //am//.id
549
550 **LEFT** **JOIN** product_group //pg//
551
552 **ON** //p//.group_id = //pg//.id
553
554 **LEFT** **JOIN** brands //br//
555
556 **ON** //pg//.brand_id = //br//.id
557
558 **WHERE** 1 = 1
559
560 **AND** (//p//.status_id = 4 **OR** //p//.status_id = 5)
561
562 ~-~-AND p.code = 'AG 15024'
563
564 **AND** //am//.lnktargettypeID **IS** **NOT** **null**
565
566 **AND** //br//.id **IN** (1, 2, 3, 4, 5)
567
568 **AND** //br//.id = 2
569
570 **ORDER** **BY**
571
572 //br//.name,
573
574 //p//.code
575
576
577 В полученной выгрузке добавляем столбец с условием:
578
579 IF ‘Номер TecDoc грузовой’ <> null
580
581 THEN ‘Номер TecDoc грузовой’
582
583 ELSE ‘Номер TecDoc легковой’
584
585
586 Перед загрузкой надо сделать замены всех значений Linkage Target Type ID на те, которые допускаются к загрузке. Это следует из пункта в инструкции на с.183 (третья сверху ссылка в этом тексте).
587
588 |**LnkTargetType**|**Linkage Target Type ID**|**Linkage Target Type ID для загрузки**
589 |TecDoc PC|2|2
590 |TecDoc Motorcycle|3|2
591 |TecDoc E-PC|4|2
592 |TecDoc E-LCV|5|2
593 |TecDoc Electric Motorcycle|6|2
594 |TecDoc LCV|999|2
595 |TecDoc CV|16|16
596 |TecDoc Bus|17|16
597 |TecDoc Tractor|18|16
598 |TecDoc E-Bus|20|16
599 |TecDoc E-CV|22|16
600
601 Плюс надо убрать из применяемости артикулы тех групп TecDoc, которые являются универсальными товарами. Это находится в справочнике Reference Data Generic Articles (см. ниже). **Универсальный товар имеет значение X в поле Universal.**
602
603 [[attach:Reference_Data_Generic_Articles_20250529_063516.csv||target="_blank"]]
604
605
606 Кроме того, в таблицу с применяемостью можно загружать еще двигатели (Engines).
607
608 |**Linkage Target Type**|**Linkage Target Type ID**
609 |Легковые (PC, LCV)|2
610 |Грузовые (CV)|16
611 |Двигатели (Engines)|14
612
613 = **Загрузка фотографий в TecDoc** =
614
615
616 Исходная ситуация: у нас есть загруженные артикулы в DMM, и к ним надо загрузить фото из папки ~\~\192.168.0.2\рабочая папка\ОМ\TRIALLI\ФОТО продукции TRIALLI\03_ФОТО 1000\
617
618 Файл для работы:
619
620 [[attach:01 - ФОТО - Загрузка фото в TecDoc, Привязка к артикулам.xlsx||target="_blank"]]
621
622
623 **Алгоритм следующий:**
624
625 * Найдем артикулы без фото (отчет Article Documents)
626 * Найдем все доступные фото по данным артикулам в разрешении 1000*1000 пикселей
627 * Скопируем фото в отдельную папку
628 * Загрузим фото в хранилище TecDoc
629 * Привяжем фото к артикулам и подготовим таблицу с привязками
630
631 1. Перед загрузкой фото спросить у Тимофеева Павла о том, загрузил ли он новые фотографии в разрешении 1000*1000
632 1. Сформировать отчет Article Documents
633
634 1. Зайти в DMM
635 1. Reports/Analysis > Reports > PD > Product Data: Article Documents
636 1. Supplier No. = TRIALLI/LUZAR…
637 1. Language No. = English (GB) ( ИЛИ английский (Великобритания) (4)
638 1. Export report
639 1. CSV, UTF-8
640 1. Start
641 1. Сохранить в C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото . Создать предварительно папку для загрузки фото по каждому бренду и по каждому месяцу
642
643 1. Зайти в запрос в папке "C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото\01 - ФОТО - Загрузка фото в TecDoc, Привязка к артикулам.xlsx"
644
645 1. В Запросе открыть лист settings
646 1. Скопировать путь к файлу Article Documents из п.1 с помощью SHIFT > Правой кнопкой по файлу > Копировать как путь
647 1. Вставить скопированный путь в таблицу “Пути” в строчку Quality Document Check
648 1. Нажать на Данные > Обновить все
649
650 Если LUZAR, то зайти в Запросы “Пути к файлам”, “Список фото в папке”, “Сравнение количества фото в папке и в TecDoc”, “Количество фото” и вставить ссылку на папку LUZAR в первый шаг запроса - ~\~\192.168.0.2\рабочая папка\ФОТОГРАФИИ ПРОДУКЦИИ\LUZAR\01_ФОТО _для текдок
651
652 1. Открыть лист “Пути к файлам”
653 1. В LUZAR фото LAT 0775, LAT 1222, LAT 1224 написано с ошибкой, можно убрать эти артикулы из загрузки.
654 1. Создать текстовый документ на рабочем столе названием Пути.txt
655 1. Скопировать столбец Name в текстовый документ, но удалить первую строчку – слово Name
656 1. Сохранить текстовый файл Пути.txt
657
658 1. Открыть Total Commander на панели задач
659
660 1. В правой половине прописать путь - ~\~\192.168.0.2\рабочая папка\ОМ\TRIALLI\ФОТО продукции TRIALLI\03_ФОТО 1000\*.*
661 1. Нажать на любой артикул из правой половины
662 1. Нажать в меню Выделение > Загрузить выделение из файла > Выбрать файл Пути.txt
663 1. Сейчас нужные файлы выделены.
664 1. Нажать внизу на F5 – Копирование
665 1. Появится окно, сверху будет надпись “Копировать файлы (N шт.) в ”
666 1. Создать папку с названием “N фото” в C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото
667 1. Скопировать путь к новой папке (см. п.2.1)
668 1. Вставить путь в Total Commander в поле “Копировать файлы (N шт.) в ” и удалить из него кавычки
669 1. Нажать ОК
670 1. Выделенные файлы скопируются в заданную папку
671
672 1. Открыть DMM
673
674 1. Basic Data > Files
675 1. Import
676 1. Select files = выбрать папку с фото, выделить все файлы
677 1. Остальные настройки следующие:
678
679 [[image:image-20250418143833-1.png||height="882" width="703"]]
680
681
682 1. Нажать Start Import
683
684 Фото загрузятся в хранилище TecDoc
685
686 1. Сформировать отчет Document Check
687
688 1. Зайти в DMM
689 1. Reports/Analysis > Reports > QU > Quality: Document check
690 1. SUPPLIER No. = TRIALLI/LUZAR…
691 1. Export report
692 1. Format – CSV, UTF-8
693 1. Сохранить в C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото\TecDoc reports
694
695 1. Зайти в запрос Загрузка фото в TecDoc 1000.xlsx в папке C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото
696
697 1. В Запросе открыть лист settings
698 1. Скопировать путь к файлу Document Check из п.1 с помощью SHIFT > Правой кнопкой по файлу > Копировать как путь
699 1. Вставить скопированный путь в таблицу “Пути” в строчку Quality Document Check
700 1. Нажать на Данные > Обновить все
701 1. Открыть лист 232
702 1. Скопировать все, кроме первой строчки
703 1. Файл > Пустая книга
704 1. Встать на ячейку A1, вставить через Специальная вставка > Значения
705 1. Создать папку “Загрузка в TecDoc”
706 1. Сохранить файл в папке “Загрузка в TecDoc”. Имя файла – 232, разрешение файла – PRN
707 1. Скопировать в папку “Загрузка в TecDoc” из других загрузок файл 001.4772 (или другого бренда)
708 1. Переименовать файл 232.prn в 232.4772
709
710 1. Загрузим таблицу с привязками фото к артикулам в TecDoc
711
712 1. Сделаем экспорт базы данных перед загрузкой
713
714 Зайдем в DMM
715
716 Import/Export > Export > Product Data
717
718
719 1. Загрузим таблицу с привязками фото к артикулам
720
721 Зайдем в DMM
722
723 Import/Export > Import > Product Data
724
725 Select Files = выбрать файлы из папки “Загрузка в TecDoc”
726
727
728 1. Сделать валидацию
729 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)
730
731 Это значит, что фото лежит в хранилище без привязки к артикулу.
732
733 Такое происходило из-за разного регистра в артикуле и в названии фото. Например, фотка ESM 10015050**D**.jpg не притянется к артикулу ESM 10015050**d**. Нужно менять это вручную в таблице перед загрузкой или менять настройки запроса.
734
735
736
737
738
739 **Сортировка фото внутри артикулов**
740
741 Файл для работы:
742
743 [[attach:02 - ФОТО - Сортировка фотографий.xlsx||target="_blank"]]
744
745
746 Поскольку в TecDoc загружаются артикулы не только со статусом “На складе”, но и “Заказано/В пути”, то количество фотографий по одному артикулу со временем будет увеличиваться. Если товар находится “В пути”, то из фотографий на него есть только чертеж, и остальные фото появятся при появлении товара на складе.
747
748 1. Выгрузка базы из DMM
749
750 * Import / Export
751 * Export
752 * Product Data
753
754 [[image:image-20250418143833-4.png||height="788" width="1169"]]
755
756
757 1. Скачать zip-архив
758
759 [[image:image-20250418143833-5.png||height="786" width="1915"]]
760
761 1. Скачать отчет Article Documents из DMM
762 1. Создать папку для сортировки здесь: C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото
763 1. Извлечь zip-архив в отдельную папку. Привести папку к табличному виду в проводнике через Вид > Структура > Таблица
764 1. Скопировать файл 232.<Номер бренда TecDoc> (например, 232.4707) в другую папку
765 1. Открыть файл 232.4707
766 1. Открыть файл "C:\Users\User PC\Desktop\Карвиль\TecDoc\03 Загрузка фото\02 - ФОТО - Сортировка фотографий.xlsx"
767 1. В нем на листе “232 исходная” удалить содержимое умной таблицы кроме заголовков
768 1. Скопировать таблицу из файла 232.4707 в другой файл в умную таблицу на лист “232 исходная”
769 1. На листе “Стыковка” прописать путь к файлу Article Documents без кавычек
770 1. Нажать на Данные > Обновить все
771 1. Скопировать содержимое в новый файл с названием 232.prn (поставить prn в разрешение файла)
772 1. Переименовать файл из 232.prn в 232. <Номер бренда TecDoc> (например, 232.4707)
773 1. Скопировать файл 232.4707 обратно в папку с извлеченным архивом = Заменить в папке назначения
774 1. Сделать архив-zip из всех файлов папки
775 1. Загрузить базу в TecDoc. Import / Export > Import > Product Data
776
777 [[image:image-20250418143833-6.png||height="925" width="1061"]]
778
779 1. Написать Андрею Черджиеву, чтобы он перезагрузил сервер