Имя: Пароль:
1C
 
Подскажите как лучше настроить односторонний обмен двоичными файлами?
↓ (Волшебник 13.08.2025 10:28)
0 program345
 
11.08.25
15:37
Привет!
Есть база ут, где есть фотографии номенклатуры, и есть розница, где элементы номенклатуры имеют аналогичный код и где хотят видеть фотки. Думаю:
1.создать реквизит в УТ, в справочнике НоменклатураПрисоединенныеФайлы, "ВыгруженоВРозницу"
2. Подключиться из розницы через COM Коннектор
Коннектор = Новый COMОбъект("V83.COMConnector");

3. Где реквизит "ВыгруженоВРозницу" загружаю в Розницу.

Может есть вариант проще?
1 Волшебник
 
11.08.25
15:38
а релизы платформы одинаковые? А то могут быть проблемы с подключением
2 arsik
 
гуру
11.08.25
15:40
Может есть вариант проще?

http
3 Мультук
 
гуру
11.08.25
15:43
(0)

А типовой обмен УТ->Розница, картинки не умеет переносить ?
Посмотрел - умеет.

Ну и нахрена козе баян?
4 mikecool
 
11.08.25
15:41
план обмена для хранения регистрации изменения
5 Serg_1960
 
11.08.25
16:16
Обычный типовой двухсторонний обмен, но у одного из узлов, непосредственно перед обменом, -  ПланыОбмена.УдалитьРегистрациюИзменений(...)

PS: но что будет, если в этом узле (без регистрации изменений) объекты разрешено изменять/переименовывать/удалять? Вот в чём вопрос.
6 ptiz
 
11.08.25
16:33
(0) COM - забыть как страшный сон. Можно вообще через общую папку, где подпапка - код товара, а внутри фотки.
7 Злопчинский
 
11.08.25
16:34
"ИД" фото сделать одинаковым в двух базах.
фото хранить на внешнем каталоге.
в двух базах "прописать" путь к внешнему каталогу.
нахрена какие-то обмены?
8 Fish
 
гуру
11.08.25
16:56
(7) Так себе идея. Из разряда вредных советов.
9 Hmster
 
11.08.25
17:53
(0) обмен по http если хочется прямо, чтобы в базе хранились, можно на каком-нибудь ресурсе хранить и просто ссылку передавать. Вариантов море, вопрос в ресурсах и хотелках
10 Злоп
 
11.08.25
20:46
(8) обоснуй
11 Волшебник
 
11.08.25
20:52
Все файлы хранятся в иерархической базе данных под названием "файловая система".
Да, всегда можно засунуть файл внутрь базы данных в поле типа BLOB. Но с точки зрения файловой системы просто усложнится доступ. Теперь нам понадобится отдельный "драйвер" для файлов этого типа, СУБД, причём ещё дополнительный API.
Так что предложение (7) элегантное и грандиозное!
Главное, чтобы не разошлись идентификаторы объектов в БД и пути в файловой системе.
12 craxx
 
12.08.25
12:13
(11) проблема возникает когда у нас базы физически на разных ресурсах. Тогда я бы сделал публикацию картинок на веб-сервере и передача URLов
13 Fish
 
гуру
12.08.25
12:24
(10) Доступ к одним и тем же данным из нескольких мест - это всегда приводит к бардаку.
В твоей реализации потом не найдёшь концов, из какой базы грохнули картинку.

"нахрена какие-то обмены?"

При этом обмены всё равно нужны - как-то придётся обмениваться путём к картинке и ИД фото.

Т.е. от обмена ты не уходишь, а к бардаку приводишь.
14 Fish
 
гуру
12.08.25
12:26
+(13) Ну а раз от обменов нам всё равно не уйти, то какая разница, передавать ИД и путь к картинке или саму картинку?
Разница в объёме только, но в современных сетях, имхо, это несущественно.
15 craxx
 
12.08.25
13:33
>>имхо, это несущественно
Существенно. Объемы могут быть гигабайты.
16 Fish
 
гуру
12.08.25
13:37
(15) Ну если вместо фотографий номенклатуры прикладывать видео 4К, то может быть.
17 Волшебник
 
12.08.25
13:47
(16) фотка со смартфона 6144х8192 пикселей весит 8 Мб.
1000 позиций номенклатуры уже 8 Гб
На каждую позицию может быть несколько фоток.
Значит если взять справочник на 10 тыс элементов и по 5 фоток на позицию, то получим 400 Гб фоток.
Кстати, видео тоже возможно
18 Fish
 
гуру
12.08.25
13:46
(17) Это же ни о чём. Первичная синхронизация займет, конечно, какое-то время. А потом вряд ли появляется по 10000 новой номенклатуры в день. Имхо, не тот случай, чтобы место экономить.
19 Волшебник
 
12.08.25
13:48
(18) Место и не надо экономить, но такие объёмы не надо хранить внутри базы 1С.
20 Fish
 
гуру
12.08.25
14:03
(19) Правильно. Хранить лучше в томах на диске. Но лучше не подключать к одним и тем же файлам две базы - возникнут ненужные коллизии.
21 Волшебник
 
12.08.25
15:15
(20) 1с-тома на дисках плохо управляются. Лучше сетевые каталоги
22 Sserj
 
12.08.25
16:42
(18) Откуда такое предположение. Ведь предметная область неизвестна. У меня есть клиент сеть ломбардов. Больше 200 точек. Они делают несколько фото всего что сдают. В день легко по 10 - 15 тысяч фото загружается. Они конечно по максимуму пожатые в webp, файлики по 20-30 kb. Но их миллионы на сервере.
23 Fish
 
гуру
12.08.25
16:45
(22) "Откуда такое предположение." - Из (0).
24 craxx
 
12.08.25
16:54
(22) Вот именно поэтому фотки должны лежать на диске (а лучше на отдельном ресурсе), опубликованные через веб-сервер, а в базе храниться только её URL
25 ptiz
 
12.08.25
17:31
(22) "Но их миллионы на сервере." - а как это всё бэкапится?
Миллион файлов бэкапить - это очень долго (разве что раздел целиком).
26 Garykom
 
гуру
12.08.25
17:36
Лучше всего настроить хранение файлов на диске
В базах хранить только пути/имена
И синхронизировать их между базами стандартным образом через обмен
Для тонкого/веб клиента можно добавить публикацию на веб-сервере, чтобы файлики с него тянуло на чтение
На запись тоже не проблема если микросервис поднять, их дофига
27 Sserj
 
12.08.25
18:18
(25) Так зачем их все бэкапить. При загрузке сразу копия на резервный сервер уходит. А оттуда по мере накопления на внешние диски раньше записывали. Сейчас не знаю. Это проблемы админов. Главный смысл в том что это же часть договора их нельзя менять у них и имена это их же хэшкод. Ну и в метаданных ID товара в 1С и номер договора. Чтобы при очень большом желании можно было найти без 1С.
28 Злопчинский
 
12.08.25
19:59
(11) а некоторые, не будем говорить кто, но это был слоненок 8 - назвал меня земляным червяком
29 Злопчинский
 
12.08.25
20:04
С учетом что в (0) упомянут сom-коннектор, то базы где-то на одном ресурсе
30 Волшебник
 
12.08.25
20:04
(29) Вы не учитываете историю веток от этого ника. Это ж полный беспредел с логической точки зрения. Так что там может оказаться всё, что угодно. Даже того, что не может быть (галлюцинации)
31 Волшебник
 
12.08.25
20:05
(28) У него просто стаж в айти 1 год, а у нас с вами уже под тридцать
32 Garykom
 
гуру
12.08.25
23:16
(29) Ну как бы есть DCOM
Хотя оно с 1С не очень дружит
33 Волшебник
 
12.08.25
23:24
(32) а ещё есть выполнение запросов через веб-сервисы

Но мы же не будем боту сообщать всю нашу возможную инфраструктуру?
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс