Двоичныеданныефайлов что за регистр

Ошибка при обновлении: Записи регистра сведений стали неуникальными: Двоичные данные файлов

Бухгалтерия предприятия КОРП с версии 3.0.75.58 на версию 3.0.75.93 и выше

РЕШЕНИЕ:

1С Линия консультации 25 февраля 2020, 17:04

Кроме того, нет возможности пометить на удаление или удалить такие записи непосредственно из регистра

Для прояснения ситуации направила разработчику запрос:

Что программа понимает как дубли? Если сочетание Тип владельца + Наименование, показанное в поле Владелец данных, то почему позволяется записывать такие данные?

(ответа пока не получила)

Специальные предложения

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

В случае регистров сведений:

Система обеспечивает контроль уникальности записей, хранящихся в регистре сведений. Таким образом, в регистре сведений не может находиться двух одинаковых записей. Одинаковыми считаются записи, у которых совпадает ключ записи. Ключ записи формируется системой автоматически, на основании значений, содержащихся в полях записи, и зависит от вида регистра сведений.

В общем случае в формировании ключа записи будут участвовать значения регистратора, периода и значения измерений. Таким образом, например, в непериодическом регистре сведений Цены товаров с независимым режимом записи не может существовать двух записей о розничной цене конфет ассорти. Точно так же, как в периодическом регистре сведений Цены товаров, подчиненном регистратору, не может существовать двух записей о розничной цене конфет ассорти, внесенных одной и той же датой, одним и тем же документом Изменение цен товаров.

Источник

Регистр сведений двоичные данные файлов

Важное замечание в начале. Основной режим работы 1С в этой статье предполагается 1С 8.3.7 в режиме тонкого клиента без модальных вызовов — самый современный на настоящий момент, на который вскоре должны быть переведены все конфигурации. Также постараюсь описать особенности работы в Веб-Клиенте.

Что такое двоичные данные и как с ними можно работать в 1С 8

Двоичные данные (или бинарные) — это файл данных произвольного формата.

Платформа 1С (8.3 и 8.2) в общем случае понятия не имеет, что это. Предполагается, что программист или пользователь знает, какие именно это данные и как их применять. Тем не менее, если в двоичные данные загружен графический файл, формат которого понимает объект типа «Картинка», то при инициализации картинки такими двоичными данными картинка будет нормально показана, а её свойство «Формат» примет правильное значение.

Платформа 1С при работе с двоичными данными может:

Возможно, я еще что-то упустил, однако интуитивно ясно, что практически все, что надо для работы с двоичными данными в 1С, у нас есть. Рассмотрим теперь по порядку несколько конкретных примеров работы с двоичными данными на платформе 1С 8.3.

Чтение и запись двоичных данных в файл

Основной тип объектов двоичных данных платформы 1С так и называется: «ДвоичныеДанные». Вот что говорит о нем «Синтаксис-помощник»:

Значение содержит двоичные данные, которые считываются из файла. Значение может быть сохранено в ХранилищеЗначения. Хранимые данные могут быть записаны в файл.

Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).

Сериализуется. Данный объект может быть сериализован в/из XML. Может использоваться в реквизитах управляемой формы.

Чтение двоичных данных из файла

Тип «Двоичные данные» имеет единственный конструктор:

имяФайла — обязательный аргумент.

В итоге получаем программный объект двоичных данных, прочитанный из файла.

Запись двоичных данных в файл

Определение размера двоичных данных в байтах

Сохранение двоичных данных в реквизит объекта

Рассмотрим сразу запись двоичных данных из файла на клиенте в реквизит объекта базы данных типа ХранилищеЗначения. Причем напишем такой код, который сработает и на веб-клиенте, а также будет лишен модальных вызовов, то есть таких вызовов, которые ожидают действия пользователя и останавливают при этом исполнение программы. Теперь платформа 1С 8.3 требует разрабатывать асинхронные программы.

Выглядит это примерно так: создается обработчик оповещения о выполнении некоторой длительной процедуры, затем запускается процедура «НачатьХХХ()», в которую, кроме понятных аргументов, передается еще и описание обработчика ее завершения. Наша программа спокойно работает далее, а по завершении запущенной процедуры вызывается наш обработчик завершения.

Предположим, у нас на форме есть реквизит типа «СправочникСсылка.Картинки». Справочник «Картинки» имеет реквизит «ДанныеКартинки» типа ХранилищеЗначения.

Создадим команду формы «ЗагрузитьКартинкуИзФайла».

Создадим обработчик команды, выделив команду в списке команд формы и нажав на кнопку с увеличительным стеклом в поле «Действие» панели свойств:

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Поскольку все необходимые параметры для записи картинки мы можем передать изнутри клиентской части обработчика, нам нет нужды создавать контекстную серверную процедуру на сервере. Выберем «Создать на клиенте и процедуру на сервере без контекста»:

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Вначале напишем наши обработчики команды в старом, «модальном» или «синхронном» стиле:

Получите 267 видеоуроков по 1С бесплатно:

В моей небольшой тестовой конфигурации этот код отлично сработал в режиме тонкого клиента. Теперь преобразуем модальный вызов «ПоместитьФайл» в асинхронный, он же немодальный. В меню конфигуратора запустим команду меню «Текст >Рефакторинг >Нерекомендуемые синхронные вызовы >Преобразовать вызовы модуля». Нам в ответ сообщат, что «Не рекомендуемых синхронных вызовов преобразовано: 1».

Для компактности я удалил все пустые строки, и вот что получилось вместо клиентской части нашего обработчика:

Готово! Мы кошерно асинхронно записали картинку из файла на клиенте в реквизит объекта базы данных, в нашем случае — элемента справочника.

Чтение двоичных данных из объекта БД

Для чего нам надо читать двоичные данные из объекта БД? Наверное, три самых частых случая таковы:

Пример 1. Вставить картинки в макет (табличный документ).

Допустим, у нас есть база данных со справочником «Картинки», у элементов которых есть реквизит «Картинка» типа ХранилищеЗначения, содержащий данные картинки.

Создадим новую внешнюю обработку, ее основную форму.

На форме создадим 3 реквизита «СпрКартинка1», «СпрКартинка2», «СпрКартинка3» типа «СправочникСсылка.Картинки» и реквизит «ТабДок» типа «ТабличныйДокумент». Перетащим мышкой эти реквизиты в список элементов формы, чтобы на ней образовались соответствующие поля.

Добавим команду формы «НапихатьКартинок» и создадим ее обработчик. На сей раз выберем «Создать на Клиенте и процедуру на сервере», чтобы не передавать много параметров в процедуру без контекста. Напишем такие обработчики:

И получим примерно такой результат:

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Пример 2. Показать картинку из базы данных на форме.

Для демонстрации воспользуемся первой обработкой, где мы записывали файл в БД. Теперь покажем на форме картинку, которая записана в реквизите «Картинка» выбранного на форме элемента справочника «Картинки».

Во-первых, добавим на форму поле, связанное с реквизитом «АдресДанныхКартинки». Например, перетащим мышкой этот реквизит в список элементов формы. Выберем и установим значение свойства «Вид» этого поля в «Поле картинки».

Во-вторых, напишем такую серверную процедуру:

И станем вызывать эту процедуру, например, из обработчика события «При изменении» поля «Картинка»:

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Сохранение двоичных данных в файл на клиенте

Думаю, с сохранением двоичных данных из базы данных в файл у Вас проблем не возникнет. По крайней мере, если Вы работаете не в веб-клиенте. Читаем, помещаем во временное хранилище на сервере, затем записываем в файл на клиенте.

Кодирование двоичных данных в формат Base64 и обратно

Тут все очень просто. Платформа имеет две глобальные функции, доступные везде:

Первая получает в качестве аргумента объект типа «ДвоичныеДанные», а возвращает его текстовое представление в кодировке base64, а вторая, наоборот, из текста в формате base64 возвращает объект типа «ДвоичныеДанные».

Не очень, правда, представляю, зачем нам это может понадобиться. Во всех встроенных типах объектов вроде ПочтовоеВложение или объектов для работы с XML необходимые преобразования платформа делает сама. Разве что нам потребуется работать с какими-то нестандартными форматами файлов для обмена с внешними системами…

Итого

На самых простых примерах мы увидели все основные принципы и методы работы с двоичными данными в 1С 8.3. Также коснулись актуальной сейчас темы устранения синхронных вызовов. Остальные возможности работы с двоичными данными Вы без труда реализуете по аналогии с рассмотренными здесь.

Спасибо за внимание. Желаю всем вершин профессионализма и глубин познаний. А главное — чтобы это приносило счастье в жизнь Вашу и окружающих.

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Пример: анализ файлов в формате JPEG

Вы можете скачать приложенную обработку прямо сейчас

Постановка задачи

Необходимо просканировать каталог с файлами, выбрать файлы с расширением «.jpg» или «.jpeg» и для каждого такого файла собрать информацию об изображении. Если при анализе выяснится, что файл не соответствует формату JPEG, то такой файл следует пропустить.

Информация, которая нас интересует:

Краткое описание формата JPEG

Кратко опишем некоторые детали формата, существенные для решения нашей задачи. За более подробным описанием формата JPEG можно обратиться к соответствующим источникам:

Решение

Создадим функцию, которая будет сканировать файл, определять его формат и выделять нужную нам информацию.

Важно, что для корректного разбора маркеры необходимо читать последовательно, один за другим, т.к. байты, совпадающие с маркером могут быть в содержимом фрагментов.

Копировать в буфер обмена

И, наконец, соберем всё вместе и напишем функцию, которая будет анализировать все файлы в заданной папке и выдавать полученную информацию в виде таблицы.

Пример: Работа с составными (multipart) HTTP-сообщениями

Вы можете скачать приложенную конфигурацию прямо сейчас

Постановка задачи

В данном примере мы создадим HTTP-сервис, который будет в ответ на запрос от клиента выдавать текстовое сообщение с вложенными картинками. Затем на клиенте мы отобразим полученный ответ.

Ответ от сервиса будет иметь следующий вид:

В этом сообщении надо обратить внимание на тип содержимого (заголовок Content-Type) – «multipart/form-data». Первое слово «multipart» указывает на то, что HTTP-сообщение является составным, т.е. содержит внутри себя несколько вложенных сообщений. Второе слово – «form-data» – указывает на конкретный стандарт составных сообщений, который часто используется для кодирования почтовых сообщений.

В любых составных сообщениях в заголовке Content-Type обязательно должен присутствовать атрибут boundary, определяющий строку, которая отделяет друг от друга вложенные сообщения внутри составного сообщения.

В случае стандарта «multipart/form-data», каждое вложенное сообщение в свою очередь должно содержать заголовок Content-Disposition со значением «form-data» и атрибутом «name», который позволяет идентифицировать сообщения.

Создание cервиса для формирования составного сообщения

Добавим новый HTTP-сервис и назовем его «TestMultipart». Для простоты будем считать, что наш сервис будет возвращать заданное составное сообщение в ответ на любой GET-запрос. Поэтому добавляем Шаблон URL с именем «ДляВсех» и значением «/*». Т.е. данный шаблон соответствует любому запросу. Далее добавляем в шаблон HTTP-метод GET с именем «Get».

В качестве обработчика для метода создаем в модуле сервиса функцию ДляВсех_Get :

У нас есть функция, формирующая составное сообщение и теперь нам осталось только определить две вспомогательные функции для создания вложенных сообщения:

Копировать в буфер обмена

Разбор составного сообщения на стороне клиента

Теперь посмотрим, как мы можем работать с составными сообщениями на стороне клиента. Нам необходимо распаковать вложенные сообщения и показать их содержимое.

Создаем новую общую форму. На форму добавляем реквизиты типа Строка:

Далее добавляем элементы управления:

Также создаем новую команду формы с именем ОтправитьЗапрос и привязываем команду к кнопке.

Создаем обработчик команды:

Вся работа по запросу сервиса и отображению результата выполняется в серверной функции ВыполнитьЗапрос :

Функция ПрочитатьСообщение содержит самое интересное – разбор полученного от сервиса составного сообщения с использованием новых средств работы с двоичными данными:

Осталось определить вспомогательные функции:

Копировать в буфер обмена

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Двоичные данные платформы 1С:Предприятие – это универсальный объект встроенного языка программирования для работы с файлами. Благодаря объекту ДвоичныеДанные можно любой файл представить в виде последовательности байт. Объект доступен в тонком клиенте, веб-клиенте, мобильном клиенте, на сервере, толстом клиенте, внешнем соединении, мобильном приложении (клиент/сервер).

Объект сериализуется

Благодаря тому, что двоичные данные доступны и на клиенте, и на сервере, мы можем смело передавать файл в виде двоичных данных с клиента на сервер, однако рекомендованный «шаблон» для передачи файла – использовать хранилище значений.

Задачи, для решения которых можно использовать двоичные данные:

Работа с двоичными данными:

Данный пример кода показывает, как прочитать двоичные данные и передать их с клиента на сервер, используя объект ДвоичныеДанные.

Примеры по работе с двоичными данными

Самый очевидный пример, где применяются двоичные данные, – сохранение файла в базе данных. Для хранения файла в виде двоичных данных необходимо в объекте добавить реквизит с типом «ХранилищеЗначений». Далее представлен пример кода по работе с реквизитом (заполнение значения и получение значения).

Заполнение:

Получение (фрагмент кода, выполняемый на сервере):

Рассмотрим еще один пример: скачивание картинки из интернета и отображение ее на управляемой форме. Для этого также добавляем реквизит с типом ХранилищеЗначения, в котором будет помещаться картинка в двоичном формате.

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистрФункция, скачивающая картинку из интернета:

Использование функции:

Теперь у нас в реквизите «Аватар» лежат двоичные данные картинки. Чтобы картинку вывести на управляемую форму, необходимо добавить реквизит формы «Тип строка», перекинуть его на форму (drag-and-drop), либо создать самостоятельно элемент формы, указав в поле «Путь к данным» наш реквизит «Картинка», после чего изменить вид на «Поле картинки».

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

По событию ПриСозданииНаСервере

Готово, на форме у нас картинка.

Двоичные данные и потоки

Говоря о двоичных данных, стоит упомянуть о возможности работы с потоками. Она появилась относительно недавно, а именно в версии 8.3.9. Чтобы потоком можно было читать из двоичных данных, применяется метод ОткрытьПотокДляЧтения. Допустим, у нас в базе данных лежит заархивированный xml-файл (как хранить файлы в базе данных рассматривалось ранее). Нам нужно вывести пользователю содержимое этого файла, или у вас настроен какой-то обмен, и вы передаете файлы в заархивированном виде (для экономии трафика).

Последовательность действий при работе с двоичными данными без использования потоков:

Последовательность действий при работе с потоками:

Пример кода без использования потоков:

Пример кода по работе с потоком:

Если диск у вас на SSD, рекомендую использовать потоки не только в примере с архивацией, а везде, где это возможно. Да, в данном примере все же происходит запись на диск (разархивация), но будем надеяться, когда-нибудь 1С реализует метод двоичных данных ОткрытьПотокДляЗаписи.

Работа с Base64

Base64 – это стандарт, позволяющий кодировать двоичные данные в виде строки (для кодирования используется 64 символа таблицы ASCII, отсюда и название). Тип ДвоичныеДанные сериализуем, то есть его можно представить в виде XML, для этого применяется объект встроенного языка СериализаторXDTO. После сериализации данные представлены одним узлом base64Binary, содержимое которого есть последовательность байт, закодированная в формате Base64.

Платформа 1С также позволяет кодировать двоичные данные, не прибегая к сериализации. Для этого есть две функции:

Они преобразуются в Base64 и обратно в двоичные данные.

Если у вас остались вопросы по работе с двоичными данными в среде 1С:Предприятие, обратитесь к нашим специалистам и получите консультацию по 1С 8.3 или воспользуйтесь услугами по сопровождению 1С.

Источник

Работа с файлами в расширении

Подсистема работа с файлами БСП.

Расширение стандартной подсистемы работы с файлами, версия 1.0

Для использования подсистемы Работа с файлами и подсистемы Присоединенные файлы в расширении прикладных решений, созданных на базе БСП 3.1 (платформа 1С 8.3.15 и выше) я написал расширение :

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Расширение нужно подключать в обычном безопасном режиме. При применении расширения в безопасном режиме будут расширяться только клиентские методы и серверные обработчики форм, которые установлены через панель свойств. К остальным серверным методам (в т. ч. и к аннотированным серверным методам модулей) расширение применяться не будет.

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Для каждого объекта – владельца нужно создавать в расширении справочник с именем

ПрисоединенныеФайлы,

где – имя объекта метаданных, для которого настраиваются присоединенные файлы. Для этого в качестве заготовки можно скопировать Согл_ЗаявкаНаОплатуПрисоединенныеФайлы. У реквизита ВладелецФайла нужно установить тип владельца файла. Например, ДокументСсылка. Согл_ЗаявкаНаОплату

В форме демонстрационного документа Согл_ЗаявкаНаОплату я добавил гиперссылку вложения для показа наименовании всех присоединенных файлов, а а также добавил общую команду Присоединенные файлы в панель навигации формы Перейти

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

При нажатие по гиперссылку или по общей команде открывается типовая форма списка присоединенных файлов для добавленя, просмотра и редактирования

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Присоединенные файлы расширяемой конфигурации хранятся в информационной базе в виде двоичных данных в регистре сведений ДвоичныеДанныеФайла. Но этот регистр имеет одно измерение типа Определяемые типы :

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

В этом регистре невозможно хранить присоединенные файлы, созданные в расширении потому, что невозможно добавлять в расширении объекты типа Определяемые типы. Поэтому я создал копию регистра сведений ДвоичныеДанныеФайла и переименовал с префиксом расширения, а в свойстве тип измерения файл я указал составной тип объектов присоединённых файлов.

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Также в общем модуле расширения я создал следующие функции :

В теле функции МассивТиповПрисоединенныхФайлов нужно включать все справочники типа ПрисоединенныеФайлы, созданные в расширении, а в теле функции МассивТиповВладельцевПрисоединенныхФайлов нужно включать владельцы этих файлов.
На функцию ЭтоПрисоединенныйФайлВРасширении передается ссылка на справочник типа ПрисоединенныеФайлы и она возвращает значение Истина если передаваемая ссылка создан в расширении.

Я переписал программные коды общих модулей подсистемы в расширении таким образом, чтобы операции записи и чтения двоичных данных файла выполнялись по новому регистру, когда владелец являлся объектом, добавленным в расширении. Во всех случаях я использовал метод замены (аннотация Вместо), например:

Шаблон расширения с инструкциями по внедрению в прикладных расширениях стоит 8 000 р. Для его приобретения обращайтеcь ко master1c8x@mail.ru

Новая версия 1.1 расширения подсистемы работы с файлами

Процедура “Перенос файлов” в разделе администрирование/настройки работы с файлами в первой версии шаблона не переносила файлы владельца, созданного в расширении.

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

В новой версии шаблона расширения доработан модуль формы обработки Перенос файла в расширении, чтобы переносились также файлы владельца, созданного в расширении

Можно также установить отбор по владельцу при переносе:

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Шаблон расширения с инструкциями по внедрению в прикладных расширениях стоит 8 000 р. Для его приобретения обращайтеcь ко master1c8x@mail.ru

Полный список дополнительных отчетов и обработок можно посмотреть здесь

Источник

Подключение нового объекта конфигурации к подсистеме по работе с файлами

В данной заметке я хочу рассказать как организовать работу с прикрепленными файлами для нового объекта в конфигурациях 1С, которые содержат библиотеку стандартных подсистем (БСП).

Задача. Создать новый документ и для этого документа добавить возможность прикреплять файлы.

Решение данной задачи будем осуществлять на конфигурации «1С: Управление торговлей 11.2», но все действия можно применять и к другим конфигурациям, содержащим БСП (ЗУП 3, БУ 3, ERP 2 и т.д.).

1. Чтобы добавить новый документ необходимо включить возможность редактирования нашей конфигурации.

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

2. Добавим новый документ с произвольной структурой

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

3. Добавим копированием новый справочник «БСП_НовыйДокументПрисоединенныеФайлы» и в реквизите «ВладелецФайла» изменим тип на «ДокументСсылка.БСП_НовыйДокумент». Для копирования был выбран справочник «ЗаказКлиентаПрисоединенныеФайлы».

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Также не забываем изменить описание и представление объекта.

4. Добавляем в определяемые типы «ВладелецПрисоединенныхФайлов», «ПрисоединенныйФайл», «ПрисоединенныйФайлОбъект» новые объекты.

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

5. Если необходимо добавить возможность копирования присоединенных файлов при копировании документа, то необходимо в параметры формы документа добавить параметр «ЗначениеКопирования» и сделать его ключевым.

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

В модуль формы добавить процедуру «ПриЗаписиНаСервере».

6. Для отображения в форме списка наличия прикрепленных файлов необходимо доработать форму списка.

Изменим текст запроса списка

В форму списка добавим колонку «ЕстьФайлы» и изменим настройки отображения.

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Запускаем режим «1С:Предприятие» и с помощью обработки из набора внешних обработок библиотеки стандартных подсистем «ИнструментыРазработчикаОбновлениеВспомогательныхДанных.epf» обновляем наши новые данные.

Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Прикрепленный файл
Двоичныеданныефайлов что за регистр. Смотреть фото Двоичныеданныефайлов что за регистр. Смотреть картинку Двоичныеданныефайлов что за регистр. Картинка про Двоичныеданныефайлов что за регистр. Фото Двоичныеданныефайлов что за регистр

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *