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

Tips

If you're starting with XWiki, check out the Getting Started Guide.

My Recent Modifications

Need help?

If you need help with XWiki you can contact: