Замена файлов на ссылки. УПП 1.3

27.04.24

Задачи пользователя - Корректировка данных

Обработка замены всех файлов и изображений на ссылки в сетевом хранилище для УПП 1.3.

Скачать исходный код

Наименование Файл Версия Размер
Обработка Замены Файлов На Ссылки:
.epf 7,41Kb
4
.epf 7,41Kb 4 Скачать

Необходимы некоторые манипуляции с базой:

  1. В перечислениях «ВидыДополнительнойИнформацииОбъектов» Добавить Значение Ссылка;
  2. В форме «ФормаСпискаФайловИИзображений» справочника «ХранилищеДополнительнойИнформации» добавить реквизит «Ссылки» с типом «СправочникСписок.ХранилищеДополнительнойИнформации»;

Добавляем новую страницу и выводим на нее реквизит «Ссылки» Рисунок № 2

И добавляем в модуль формы  следующее:

Процедура СсылкиПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)   

              

               Если НоваяСтрока Тогда



                               Элемент.ТекущиеДанные.ВидДанных = Перечисления.ВидыДополнительнойИнформацииОбъектов.Ссылки;



               КонецЕсли;



КонецПроцедуры



Процедура СсылкиИмяФайлаОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)



КонецПроцедуры



Процедура СсылкиИмяФайлаНачалоВыбора(Элемент, СтандартнаяОбработка)  

               Диалог = РаботаСФайлами.ПолучитьДиалогВыбораФайлов(Ложь);

              

               Если Не Диалог.Выбрать() Тогда

                               Возврат;

               КонецЕсли;

              

              

               ТекОбъект = ЭлементыФормы.Ссылки.ТекущиеДанные;

               //            ТекОбъект.Хранилище = Новый ХранилищеЗначения(Новый ДвоичныеДанные(Диалог.ПолноеИмяФайла), Новый СжатиеДанных(9));

               ТекОбъект.ИмяФайла = Диалог.ПолноеИмяФайла;

              

               ПолучитьИмяФайлаМассив = ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок(Диалог.ПолноеИмяФайла,"\");

               ПозицияИмяФайла = ПолучитьИмяФайлаМассив.Количество()-1;

               ПолучитьИмяФайла  = СокрЛП(ПолучитьИмяФайлаМассив[ПозицияИмяФайла]);

               ИмяФайлаБезРасширения =  Лев(ПолучитьИмяФайла,СтрДлина(ПолучитьИмяФайла)-4);

               ТекОбъект.Наименование = ИмяФайлаБезРасширения;

              

КонецПроцедуры



Процедура СсылкиВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)                             СтандартнаяОбработка=Ложь;

                               //ЗапуститьПриложение(ЭлементыФормы.Ссылки.ТекущиеДанные.ИмяФайла);

                               КоманднаяПанельСсылокОткрыть("");

КонецПроцедуры



Процедура СсылкиПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования)     

               Если ВладелецФормы <> Неопределено Тогда

                               Оповестить("ОбновитьФорму", Новый Структура("ИмяЭлемента","ИзмененСписокСправочникаХранилищеДопИнформации"),мОбъектОтбора);

               КонецЕсли;



КонецПроцедуры



Процедура СсылкиПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, ЭтоГруппа)

              

КонецПроцедуры



Процедура СсылкиПередОкончаниемРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования, Отказ)

                               ПередОкончаниемРедактирования(Элемент, НоваяСтрока, Перечисления.ВидыДополнительнойИнформацииОбъектов.Ссылки);

КонецПроцедуры





Процедура КоманднаяПанельСсылокОткрыть(Кнопка) 

              

               ИмяФайла =  ЭлементыФормы.Ссылки.ТекущиеДанные.ИмяФайла;

               ВыбФайл = Новый Файл(ИмяФайла);

               Если ВыбФайл.Существует() Тогда

                               ЗапуститьПриложение(ИмяФайла);

               ИначеЕсли Лев(ИмяФайла,2) = "L:" Тогда

                                НовоеИмя = "Имя Каталога" + Сред(ИмяФайла,3);

                                ВыбФайлНовый = Новый Файл(НовоеИмя);

                                Если ВыбФайлНовый.Существует() Тогда

                                               ЗапуститьПриложение(НовоеИмя);

                               КонецЕсли;

               ИначеЕсли Лев(ИмяФайла,2) = "Y:" Тогда

                                НовоеИмя = "Имя Каталога" + Сред(ИмяФайла,3);

                                ВыбФайлНовый = Новый Файл(НовоеИмя);

                                Если ВыбФайлНовый.Существует() Тогда

                                               ЗапуститьПриложение(НовоеИмя);

                                КонецЕсли;

    ИначеЕсли Лев(ИмяФайла,2) = "Z:" Тогда

                                НовоеИмя = "Имя Каталога" + Сред(ИмяФайла,3);

                                ВыбФайлНовый = Новый Файл(НовоеИмя);

                                Если ВыбФайлНовый.Существует() Тогда

                                               ЗапуститьПриложение(НовоеИмя);

                                КонецЕсли;



               КонецЕсли;

              

КонецПроцедуры



Процедура СсылкиПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)  



              

               ОформлениеСтроки.Ячейки.ИмяФайла.ОтображатьКартинку = Истина;

               ОформлениеСтроки.Ячейки.ИмяФайла.ИндексКартинки = РаботаСФайлами.ПолучитьИндексПиктограммыФайла(РаботаСФайлами.ПолучитьРасширениеФайла(ДанныеСтроки.Ссылка.ИмяФайла));



КонецПроцедуры



Процедура КоманднаяПанельДополнительныхФайловПоказывать(Кнопка)

              

               Объект = ЭлементыФормы.ДополнительныеФайлы.ТекущиеДанные.Ссылка.ПолучитьОбъект();

              

               //Если НЕ Объект.ЭтоНовый() и Не (РольДоступна("ПолныеПрава") ИЛИ Ин_Общиймодуль.ПроверитьПраво("00063",глЗначениеПеременной("глТекущийПользователь"))) Тогда

               //            Возврат;

               //КонецЕсли;

              

               Если Объект.Наименование = "Показывать" Тогда

                               Объект.Наименование = "";

                              ЭлементыФормы.КоманднаяПанельДополнительныхФайлов.Кнопки.Показывать.Пометка = Ложь;

                              ЭлементыФормы.КоманднаяПанельДополнительныхФайлов.Кнопки.Показывать.Картинка = БиблиотекаКартинок.СнятаПометка;

               ИначеЕсли ЗначениеЗаполнено(Объект.Наименование) Тогда       

                              

                               Режим = РежимДиалогаВопрос.ДаНет;

                               Текст = "Записать в наименование ""Показывать""?";

                               Ответ = Вопрос(Текст, Режим, 0);

                               Если Ответ = КодВозвратаДиалога.Нет Тогда

                                               Возврат;

                               КонецЕсли;

                               Объект.Наименование = "Показывать";

                              ЭлементыФормы.КоманднаяПанельДополнительныхФайлов.Кнопки.Показывать.Пометка = Истина;

                              ЭлементыФормы.КоманднаяПанельДополнительныхФайлов.Кнопки.Показывать.Картинка = БиблиотекаКартинок.УстановленаПометка;

               Иначе

                               Объект.Наименование = "Показывать";

                              ЭлементыФормы.КоманднаяПанельДополнительныхФайлов.Кнопки.Показывать.Пометка = Истина;

                              ЭлементыФормы.КоманднаяПанельДополнительныхФайлов.Кнопки.Показывать.Картинка = БиблиотекаКартинок.УстановленаПометка;

               КонецЕсли;

               Объект.Записать();

              



КонецПроцедуры



Процедура УстановитьКнопкуПоказывать(Элемент);

              

               Если Элемент.ТекущиеДанные <> Неопределено Тогда

                               Если Элемент.ТекущиеДанные.Наименование = "Показывать" Тогда

                              ЭлементыФормы.КоманднаяПанельДополнительныхФайлов.Кнопки.Показывать.Пометка = Истина;

                              ЭлементыФормы.КоманднаяПанельДополнительныхФайлов.Кнопки.Показывать.Картинка = БиблиотекаКартинок.УстановленаПометка;

                                               Иначе

                              ЭлементыФормы.КоманднаяПанельДополнительныхФайлов.Кнопки.Показывать.Пометка = Ложь;

                              ЭлементыФормы.КоманднаяПанельДополнительныхФайлов.Кнопки.Показывать.Картинка = БиблиотекаКартинок.СнятаПометка;

                               КонецЕсли;

               КонецЕсли;

              

КонецПроцедуры



Процедура СсылкиПриАктивизацииСтроки(Элемент)  

              

               Если Элемент.ТекущиеДанные = Неопределено Тогда

                               Если ВладелецФормы <> Неопределено Тогда

                                              Оповестить("ОбновитьФорму", Новый Структура("ИмяЭлемента","ИзмененСписокСправочникаХранилищеДопИнформации"),мОбъектОтбора);

                               КонецЕсли;

               КонецЕсли;

КонецПроцедуры



Процедура СсылкиПослеУдаления(Элемент) 

               Если ВладелецФормы <> Неопределено Тогда

                               Оповестить("ОбновитьФорму", Новый Структура("ИмяЭлемента","ИзмененСписокСправочникаХранилищеДопИнформации"),мОбъектОтбора);

               КонецЕсли;



КонецПроцедуры

 

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

Переносит все имеющееся файлы и изображения, хранящиеся в справочнике хранилище дополнительной информации в папку, указанную в строке, при этом если это документ с организацией, то в каталоге создастся папка с наименованием организации, а если это справочник или документ без организации, то папка с названием типа объекта (например, Номенклатура)

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

Тестировалась на конфигурации Управление производственным предприятием, редакция 1.3 с версии 1.3.98.1 и старше. 

Проверено на следующих конфигурациях и релизах:

  • Управление производственным предприятием, редакция 1.3, релизы 1.3.97.2

См. также

Ускоренное проведение документов (x4), устранение ошибок 60/62 счетов и зачет авансов (Бухгалтерия 3.0)

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    28752    86    149    

61

Исправление в 1С:ЗУП/ЗКГУ ошибок по НДФЛ и взаиморасчетам с сотрудниками на начало расчетного года.

Корректировка данных Зарплата Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры бюджетного учреждения 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ Платные (руб)

Обработка исправляет технические ошибки по НДФЛ, взаиморасчетам с сотрудниками в 1С:ЗУП (1С:ЗКГУ) на начало года. Фактически все ошибки, которые проявляются в ведомостях на выплату, расчетных листках, при заполнении ведомостей на выплату и отчетах 6-НДФЛ и т.д. нужно начинать исправлять с начала расчетного года. Это позволит быть уверенными, что после завершения расчетов предыдущего года, начали работать с «чистого листа» без ошибочных остатков.

4800 руб.

06.10.2023    2894    31    15    

38

Тестирование и исправление ключей аналитики ERP, УТ11, КА

Корректировка данных Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Незаменимая обработка для сопровождения конфигураций: ERP, УТ, КА. Позволяет вычистить многие ошибки в ключах аналитики, в ключевых справочниках конфигурации.

3600 руб.

10.02.2017    107839    639    173    

681

QR -кодирование документов БЕЗ изменения печатных форм, с произв. алгоритмами создания QR -кода и обработки (в т.ч прикрепление сканов к документам) для УТ 11 (все), ERP 2, КА 2, Розница 2, УНФ 1.6/3.0, БП 3, ЗУП 3

Корректировка данных Платформа 1С v8.3 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Управленческий учет Платные (руб)

Представьте, что есть система, которая НЕ ТРЕБУЕТ изменения конфигурации, НЕ ТРЕБУЕТ изменения ни одной печатной формы для добавления QR-кода, включая внешние, НЕ ХРАНИТ данные штрихкодов и их связь, от чего база не "пухнет", ИМЕЕТ возможность закодировать в QR-коде произвольные данные параметров для последующей обработки полученных данных, УМЕЕТ прикреплять сканы, УМЕЕТ обработать считанный QR-код как ВЫ захотите. А также ХРАНИТ историю операций в обход базы для каждого пользователя в отдельности и УМЕЕТ работать с 2D - сканерами. А также автоматически распознавать отсканированные печатные формы (картинки или pdf-файлы) и выполнять заданные произвольные алгоритмы, в том числе прикрепление их к документам! Обновление 3.1 от 09.11.2023!

19200 руб.

26.08.2018    51029    13    60    

53

Исправление ошибок по НДФЛ и взаиморасчетам с сотрудниками в 1С:Бухгалтерия 3.0

Корректировка данных Зарплата Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Внешняя обработка предназначена для исправления самых различных ошибок, возникших по самым разным причинам. Общее проявление этих ошибок видно в различии данных между: проводками и различными отчетами по НДФЛ, заполнении ведомостей на выдачу зарплаты, неверным расчетом НДФЛ при начислении ЗП и т.д.

3600 руб.

09.02.2024    895    4    4    

7

Исправление ошибки закрытия месяца "Обнаружены ненулевые остатки по суммам при нулевом остатке по количеству в регистре себестоимости по организации". УТ 11.4,УТ 11.5, КА 2.4,КА 2.5, ERP 2.4, ERP 2.5, КА 2 Казахстан, Управление торговлей 3 для Казахстана

Закрытие периода Корректировка данных Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Закрытие месяца - важный процесс в современных конфигурациях, таких как УТ 11.4, УТ 11.5, КА 2.4, КА 2.5 ERP 2.4,ERP 2.5, КА 2 Казахстан, УТ 3 Казахстан регламентные операции влияют на расчет себестоимости, и ошибки в данном расчете не дают картины деятельности организации.

2400 руб.

27.10.2021    22836    303    35    

75
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. wowik 887 15.08.18 16:37 Сейчас в теме
Что-то не понял: а как потом картинки открываются в УПП? Чтобы хранить путь к выгруженному файлу, что используется, какие реквизиты? Я делал подобное, но у меня по-другому - https://infostart.ru/public/529067/
Опишите все подробнее.
evgeniy83; +1 Ответить
Оставьте свое сообщение