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

Version 17.4 by Александр Молчин on 2025/05/30 06:25

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