Перенос файла из одного документа в другой
Здравствуйте,
Может кто подскажет, уже бьюсь с этим вопросом второй день.
У меня есть Документ1, в нем есть файл, на основании первого документа я создаю Документ2 и передаю туда присоединенный файл, но при открытии его выдает ошибку Данные файла недоступны, т.к. возможно файл был очищен как ненужный
Прошелся по всем ошибкам, на котором вываливалась она, сначала это была пометка удаления, снял, потом регистр был пустой, заполнил
Сам файл создавая новый элемент в справочнике добавляю в хранилище, все свойства файла2 из документа2 идентичны с файлом1 из документа1, будто проблема с хранилищем, но не пойму какая.
При вызове функции ХранилищеФайлаИзИнформационнойБазы, возвращает мне все что нужно, но обрывается на проверке Результат.Получить() и улетает в ошибку
Сам код
Может кто подскажет, уже бьюсь с этим вопросом второй день.
У меня есть Документ1, в нем есть файл, на основании первого документа я создаю Документ2 и передаю туда присоединенный файл, но при открытии его выдает ошибку Данные файла недоступны, т.к. возможно файл был очищен как ненужный
Прошелся по всем ошибкам, на котором вываливалась она, сначала это была пометка удаления, снял, потом регистр был пустой, заполнил
Сам файл создавая новый элемент в справочнике добавляю в хранилище, все свойства файла2 из документа2 идентичны с файлом1 из документа1, будто проблема с хранилищем, но не пойму какая.
При вызове функции ХранилищеФайлаИзИнформационнойБазы, возвращает мне все что нужно, но обрывается на проверке Результат.Получить() и улетает в ошибку
Сам код
НоваяСтрокаСправочника = Справочники.ЗаказПоставщикуПрисоединенныеФайлы.СоздатьЭлемент();
ЗаполнитьЗначенияСвойств(НоваяСтрокаСправочника, Результат[2].Ссылка, Неопределено, "Родитель,Владелец, ФайлХранилище");
нФайл = Результат[2].Ссылка.ФайлХранилище.Получить();
нФайлТекст = Результат[2].Ссылка.ТекстХранилище.Получить();
нДДФ = Результат[2].ДвоичныеДанныеФайла.Получить(); // - Для теста
//ДвДанные = Новый ДвоичныеДанные(нФайл);
НовыйЭлементСправочника.Наименование = Результат[2].Наименование;
НовыйЭлементСправочника.ВладелецФайла = Объект.Ссылка;
НовыйЭлементСправочника.ФайлХранилище = ПоместитьВоВременноеХранилище(нДДФ);
//НовыйЭлементСправочника.ТекстХранилище = ПоместитьВоВременноеХранилище(нФайлТекст);
НовыйЭлементСправочника.ХранитьВерсии = Истина;
НовыйЭлементСправочника.ПометкаУдаления = Ложь;
НовыйЭлементСправочника.Редактирует = Ложь;
НовыйЭлементСправочника.Записать();
Если ЗначениеЗаполнено(Результат[2].ДвоичныеДанныеФайла) Тогда
нДДФ = Результат[2].ДвоичныеДанныеФайла.Получить();
мЗаписи = РегистрыСведений.ДвоичныеДанныеФайлов.СоздатьМенеджерЗаписи();
мЗаписи.Период = ТекущаяДата();
мЗаписи.Файл = НовыйЭлементСправочника.Ссылка;
мЗаписи.ДвоичныеДанныеФайла = НовыйЭлементСправочника.ФайлХранилище;
//мЗаписи.ДвоичныеДанныеФайла = ПоместитьВоВременноеХранилище(нДДФ);
мЗаписи.Записать();
КонецЕсли;
ПоказатьПо теме из базы знаний
- Загрузка документов из Excel в 1С: УПД, ТОРГ-12, отчеты маркетплейсов, заказы, счета, прайсы
- Неполадки в работе функционала конфигурации "Бухгалтерия предприятия 3.0" после переноса данных из одной конфигурации в другую через XML
- Загрузка чеков из ФНС в документы 1С:БП, УНФ, ERP, КА и УТ
- Перенос документов 1С из одной базы в другую
- Перенос товаров из одного документа пересчета в другой при инвентаризации Розница 2.3.
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) если надо перенести файл из одного к другому то можно поменять владельца у справочника присоединённых файлов.
Если надо присоединить к 2 документам и файлы хранятся в томах то можно скопировать элемент справочника присоед. Файлов и заменить владельца. Тогда оба документа будут ссылаться на один файл и если он изменится у одного документа - поменяется и у второго.
Если надо присоединить к 2 документам и файлы хранятся в томах то можно скопировать элемент справочника присоед. Файлов и заменить владельца. Тогда оба документа будут ссылаться на один файл и если он изменится у одного документа - поменяется и у второго.
(3) У меня сделано по первому вашему предложению, файл переносится, создается элемент в справочнике, создается запись в регистре по новому файлу, но отваливается на том когда возвращает значение из запроса к регистру сведений двоичные данные, результат с моим файлом, но когда дальше по коду Результат.получить из хранилища, результат становится неопределено
(4)
Если по первому предложению, то ничего создаваться не должно!!! Берем уже существующий элемент, по нему получаем объект, меняем владельца и записываем.... Элемент остается тот же самый и никаких новых записей в РС не делает.
создается элемент в справочнике, создается запись в регистре по новому файлу
Если по первому предложению, то ничего создаваться не должно!!! Берем уже существующий элемент, по нему получаем объект, меняем владельца и записываем.... Элемент остается тот же самый и никаких новых записей в РС не делает.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот