Имя: Пароль:
1C
1С v8
Зачем нужен реквизит ТекстФайла в ХранилищеДополнительнойИнформации?
0 Dirk Diggler
 
08.02.21
12:22
В УТ 10.3 есть справочник для хранения файлов ХранилищеДополнительнойИнформации, в нем есть реквизит ТекстФайла. Глобальный поиск ничего особого не показал
В ПередЗаписью есть такой код:

    ДанныеХранилища = Хранилище.Получить();
    ТекстФайлаЗаписан = Ложь;
    Если ТипЗнч(ДанныеХранилища) = Тип("ДвоичныеДанные") Тогда
        ВременныйФайл = ПолучитьИмяВременногоФайла(РаботаСФайлами.ПолучитьРасширениеФайла(ИмяФайла));
        Попытка
            ДанныеХранилища.Записать(ВременныйФайл);
            Извлечение = Новый ИзвлечениеТекста(ВременныйФайл);
            ТекстФайла = Новый ХранилищеЗначения(Извлечение.ПолучитьТекст());
            ТекстФайлаЗаписан = Истина;
        Исключение
            ТекстФайлаЗаписан = Ложь;
        КонецПопытки;
        УдалитьФайлы(ВременныйФайл);
    КонецЕсли;


Вроде ничего оттуда больше никогда не извлекается. Может я что-то не понимаю? Зачем он нужен?
1 Йохохо
 
08.02.21
12:24
вероятно Извлечение потом кушает полнотекстовый поиск
2 Dirk Diggler
 
08.02.21
12:24
Единственное что, установлен полнотекстовый поиск по этому реквизиту.
3 Dirk Diggler
 
08.02.21
12:25
Да. Похоже на то. Т.е. в базе хранится две копии файла просто так?
4 Йохохо
 
08.02.21
12:27
(3) исходник может быть и тифф и пдф
5 Dirk Diggler
 
08.02.21
12:32
(4) а извлечение из него не надергает разве символов?
а, проверил. не надергает.
6 Dzenn
 
гуру
08.02.21
12:39
Этот реквизит служит исключительно целям полнотекстового поиска по файлам.
7 Eiffil123
 
08.02.21
12:43
(6) получается, полнотекстовый поиск такой умный, и понимает, что в реквизите с типом ХранилищеЗначения хранится текст, а не что-то в бинарном виде или какая-нибудь сериализованная таблица значений?
8 ДенисЧ
 
08.02.21
12:48
(7) Полнотекстовый поиск видит, что в реквизите ТекстФайла есть текст.
А так - и полнотекстовый умеет делать Извлечвение.ПолучиьтТекст*()
9 Вафель
 
08.02.21
12:50
(8) как он видит - там же хранилище значений
10 ДенисЧ
 
08.02.21
13:09
(9) It's a kind of magic
11 fisher
 
08.02.21
13:50
(9) Ему сказано строить по нему полнотекстовый индекс - вот он и строит. Почему нет?
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.