Если у вас много добавляемых файлов, то база 1С начинает «распухать». Выходом является хранение файлов во внешних томах.
1С: УТ 11-й версии позволяет сделать подобную настройку(Администрирование — Настройки работы с файлами — опция Хранить файлы в томах на диске). Да, вновь присоединяемые файлы начнут сохраняться на диске в указаннной папке. Но что делать с уже существующими файлами, добавленными в 1С? Для это и предназначена текущая обработка. По нажатию одной кнопки она все перенесет автоматом в указанные тома. Выгружает файлы, предназначенные для справочника Номенклатура.
Спрошу глупый вопрос — на 3-м скрине кнопка «Перенести все файлы в тома» разве не тоже самое делает? сам этой кнопкой не пользовался просто…
(1)Я как-то пытался с ее помощью перенести, нарвался на какую-то ошибку(не помню уже точно какую, что-то с правами), поэтому и решил отдельно обработку сделать.
(2)Добрый день!Будет работать на 1С УТ 11.3?
Напишите ваше сообщение
(2)Подскажите,пожалуйста,сейчас стандартной обработкой пытаюсь перенести файлы в том,она не видит ни одного файла,почему это может быть?
Перенести надо файлы -картинки номенклатуры, их очень много,но обработка не видит.
(3) Здравствуйте, на 11.3 не проверял, но думаю должно работать.
(4) Можете уточнить, какая обработка не видит файлы — моя или та, что встроена в 1с?
(6)
Добрый день!Стандартная не видит.
11.3 там поменяли многое,боюсь скачивать,вдруг не будет работать.Подскажите база уменьшится по размеру после переноса файлов?
(7)Можем сделать так — я вышлю вам обработку, скажите куда, вы попробуете и потом уже решите, подходит она вам или нет)
Проверено на последней конфигурации УТ 11.3. Фотографии успешно выгрузились в Том.
Ваша выгружает только со справочника номенклатуры, Переделал под ERP и все файлы, полет нормальный!
(10) Да, спасибо за уточнение, исправлю.
Народ, кто пользовал? в КА2.2. работает, нет? Стоит брать?
Так и переносит только номенклатуру?
(12)Под КА2.2 надо дорабатывать скорее всего.
(13) она только выгружает или еще и пути прописывает… Тоесть, например, картинка номенклатуры хранилась в базе, после обработки, выгрузки картинка так и останется привязанная к номенклатуре?
(14)В данный момент она выгружается с именем, которое было задано при загрузке. Опять таки, теоретически можно переделать, чтобы выгружало с определенным идентификатором(код, артикул,гуид).
(15) С именем — понятно… Вопрос в другом: Есть номенклатура, у номенклатуры есть картинка, которая хранится в базе, открываешь форму спр-ка Номенклатура, видишь картинку. После того как обработка вытащит картинку на диск, удалит ее их базы, что я увижу, открыв туже номенклатуру? Картинку, которая теперь на диске или пустоту?
(16)Картинка останется, просто место хранения изменится.
Смысл обработки — разгрузить базу 1с от «лишних» данных(в данном случае это картинки), но при этом сохранить функциональность(чтобы картинки точно также можно было просматривать, добавлять, удалять)
(18) Ок, спасибо! Попробую…
(18) Хотя, нет… Как попробую… Неизвестно же на КА2.2. будет работать или нет?
Напишите почту, я вам скину, попробуете.
(21) Заманчиво…
zueval@mail.ru Сколько стоить будет в случае успеха, куда платить?
Отправил вам на почту.
Получил обработку…
Обращаю внимание, что обработка не чистит базу, не удаляет загруженные картинки…
В базе остаются все картинки, занимают место как и прежде, обработка делает копию на диск и перецепляет пути…
Элементы справочника «НоменклатураПрисоединенныеФайлы» не удаляются, Хранилише, где лежат бинарники не очищается…
Удаляются только записи регистра сведений «ПрисоединенныеФайлы». Эти записи нисколько не весят, однако их удаление делает невозможным очистить Хранилище, тоесть бинарники остаются там навсегда, занимают место…
Все невысказанное — мои выводы, на 100% достоверность не претендую… Возможно я не до конца грамотный, поправьте, кто разбирается в вопросе…
Сделал свою обработку, которая реально базу чистит…
Проверил, выгружая ДТ…
(24)Начнем с того, что обработка для УТ 11, а у вас КА 2.2. И я перед тем как БЕСПЛАТНО ее вам предоставить на тестирование писал про то, что с данной конфой не проверялась. Естественно, в разных конфигурациях хранение файлов может быть организованно по-разному.В данном случае так оно и есть, но это не повод писать, что «Обращаю внимание, что обработка не чистит базу, не удаляет загруженные картинки».
Хранение в УТ11 и КА2 организованно одинаково, было б по-разному, я бы не писал…
В УТ11 также есть Справочник «НоменклатураПрисоединенныеФайлы», также регистр сведений «ПрисоединенныеФайлы», в реквизите которого «ХранимыйФайл» — собственно и есть ссылка на ХранилищеЗначения, где и сидит файл…
В части функционала очистки Ваша обрабработка только лишь удаляет записи регистра сведений «ПрисоединенныеФайлы», удаляя связь объекта и хранилища, лишая пользователя возможности в дальнейшем почистить базу. Файл так и остается в хранилище…
Повод писать, что не чистит, не удаляет и не переносит — достаточно посмотреть код… Также я сделал тестовую «Очистку», чтобы точно убедиться…
Переименуйте тему из «Перенос файлов, хранящихся в базе 1С, на диск» в «Копирование файлов, хранящихся в базе 1С, на диск»
В противном случае Вы обманываете пользователей…
Насчет БЕСПЛАТНО — я бесплатно не просил… И даже предложил денег…
(26)Возьмем типовую конфигурацию УТ 11.2(а точнее 11.2.3.95) В регистре сведений»Присоединенные файлы» имеется одно измерение Присоединенный файл(ОпределяемыйТип.ПрисоединенныйФайл в этот тип в том числе входит и тип справочника «Номенклатура присоединенные файлы») и один ресурс ХранимыйФайл(тип хранилище значения). Так вот, в случае удаления записи данного регистра, данные физически исчезнут из базы, т.к. сами они непосредственно и хранятся в нем. О каком еще хранилище вы ведете речь? Если можете, приведите ссылку на официальную документацию 1с об этом.
+(27)Даже в свойствах данного ресурса указано «Двоичные данные файла»
Ссылка на скрин:https://yadi.s
Сейчас еще раз проверю на копии базы… База большая 120 гб… Долго ворочается…
Если Не против выложу мой модуль, который мне обрезал базу, удалил картинки, и Ваш модуль, от которого эффекта «Разгрузить базу от лишних данных» нет…
(29)Можете выложить свой код, думаю будет наглядней.
+(30)Я могу допустить ситуацию, что по какой-то причине в базе с конфой КА 2.2, данные этого регистра не очистились, тогда да — естественно размер базы не изменится. Но если удалить сами записи регистра, то все, данных файлов больше не будет. Никакого доп
Да, еще момент, я проверял на файловой базе. Возможно в плане хранения файлов на клиент-серверной версии имеются какие-то отличия, поэтому было бы интересно узнать у вас о них.
(31) «базе с конфой КА 2.2, данные этого регистра не очистились, »
Записи регистра удалились, с этом проблем нет… Файлы в Хранилище остались…
(33) Поясните, о каком хранилище вы ведете речь.
+(34)Вы видели скрин из УТ 11.2? Там явно указано, что в ресурсе Хранимый файл хранятся именно двоичные данные файла.
У регистра «ПрисоединенныеФайлы» есть ресурс «ХранимыйФайл», он имеет вид «ХранилищеЗначения».
Я его сначала очищаю присваивая значение Неопределено, затем удаляю запись регистра.
Пробовал просто удалить запись регистра, на размер базы, выгружаемой в ДТ никак не повлияло…
(35) Этот «ХранимыйФал» надо прежде очистить, присвоив ему значение «Неопределено»
(35) Там явно написано подсказка разработчика «Двоичные данные»… Мы знаем, что только разработчики не пишут… Это — ничего не значит…
Там не написано, что для удаления двоичных данных достаточно удалить запись регистра.
Прогнал еще раз обработками…
Ваша — безрезультатно, если очистить хранилище — база сильно похудела…
Разница в ДТшках в 40 раз
На месте администрации, обратил бы внимание на эту публикацию. Смысл этой обработки? тем более за 10СМ?
Штатная обработка переноса файлов (которая есть в БСП) нормально справляется с переносом файлов.
Если есть ошибка, значит что-то сделали не правильно (могу предположить, что пользователь, под которым крутится 1С не имеет прав доступа для записи в указанный каталог)
(39) Стандартная обработка не работает с картинками, которые хранятся в базе через регистр «ПрисоединенныеФайлы». Она для чего-то другого нужна, щас так не вспомню… Она у всех показывает «0» файлов. В следующей версии БСП хотели, вродь сделать штатно чтоб работала с Присоединеннымифайлами
Проверил, таки да. Штатная обработка для подсистемы «ПрисоединенныеФайлы» не годится.
Моя вина, я постоянно работал с подсистемой «РаботаСФайлами», для которой и предназначена обработка переноса файлов. Она проще в плане администрирования была, вот ей и пользуются.
И все равно, 10СМ за то, что в коде пробежаться по РС «ПрисоединенныеФайлы», получить двоичные данные, добавить файл в том, заполнить Том и Путь для справочника [ * ПрисоединенныеФайлы], много как-то.
(36)Хм..интересно, проверял на файловой и на тот момент точно работало. Т.е. без всяких «доп.телодвижений», достаточно удалить запись и данные файлов из базы пропадут. Значит на клиент-серверной своя особенность.
(37)Честно говоря, в документации по 1с нигде не встречал такого, видимо это из серии «практического опыта»
(41)Может быть, но вывесил тут без цели обогащения) Да и у пользователя всегда есть выбор найти более дешевый аналог.
(44)
Перенос присоединенных файлов в тома
Без цели? ну, ну… Вот кому интересно, вариант за 1СМ с интерфейсом.
(42)Потестировал опять-таки на файловой базе. Как и говорил в самом начале, для окончательного уменьшения размера базы, помогает Тестирование и исправление с флажком Сжатие таблиц информационной базы. В любом случае, после массового удаления данных из базы, это будет полезно для нее самой(аналог — операция дефрагментации в операционной системе)