1C8.3: реквизит - тип "Хранилище значений" не нахожу! #772727


#0 by dft2014
Работаю с форматированным документом на форме обработке. Для сохранения изменений в нем, прочитала, что надо использовать реквизит с типом "Хранилище значений". Но я такого типа - не нахожу!!!
#1 by Asmody
У вас точно 1С?
#2 by singlych
Используй произвольный тип!!!
#3 by dft2014
Вот картинка, ищу по поиску, нет такого типа "Хранилище значений":
#4 by sanja26
#5 by Lexey_
обработки не хранят данные в базе
#6 by Asmody
Ты еще скажи, что в обработке нельзя создать реквизит с типом "ХранилищеЗначния".
#7 by Defender aka LINN
Типа "строка" ты там тоже не найдешь, прикинь?
#8 by Lexey_
да да
#9 by dft2014
а у меня вот так: нет Хранилища значений!!!
#10 by Любопытная
А что непонятно в ? :)
#11 by sanja26
а зачем вообще надо? в базе сохранить?
#12 by dft2014
Делаю согласно этому материалу: Споткнулась на том, что не нахожу типа ХранилищеЗначений!!!
#13 by Любопытная
В примере по ссылке справочник, а у вас обработка. Разница есть?
#14 by _Дайвер_
+ + +
#15 by Тролль главный
выбирай "Произвольный"
#16 by dft2014
Вот аналогичная статья, там написано, что это используется, для документа, справочника, обработки:
#17 by dft2014
Если выбираю Произвольный, то как потом с этим реквизитом использовать команды:
#18 by Тролль главный
ПередЗаписьюНаСервере в обработке? уверен?
#19 by SergTheGreat
Я правильно понял задачу: в базе есть нечто, записанное в виде "ХранилищеЗначения", нужно создать обработку, которая может редактировать это нечто и сохранять изменения в базе?
#20 by dft2014
Есть обработка, на форме которой надо вводить текст. После переоткрытия обработки, если были изменения в тексте, то они должны сохраняться. Для этих целей, использую реквизит с типом "ФорматированныйДокумент". Чтобы изменения в этом реквизите сохранялись, надо использовать реквизит с типом "ХранилищеЗначений", который я обнаружить не могу. Поэтому написала на форум, с просьбой помочь...
#21 by dft2014
Ап!
#22 by SergTheGreat
Как уже написал Lexey_, обработки ничего в базе не хранят. Определись где именно в базе будет храниться этот текст. Создай на форме реквизит типа ФорматированныйДокумент. При создании/открытии формы считывай в этот реквизит содержимое ХранилищяЗначения из базы. При закрытии формы (или командой) записывай реквизит формы в ХранилищеЗначения базы. Как считать и записать ты сама указала в .
#23 by Pro-tone
посмотри доступность типа ХЗ, он доступен только из модуля документа
#24 by Pro-tone
+ в твоем случае - только в модуле обработки
#25 by singlych
Ну конечно, наговорите щас.
#26 by Pro-tone
даю на(О_о)водку как получить в модуле формы значение типа ХЗ
#27 by Pro-tone
#28 by singlych
Ну сделай форму и напиши где-нить в ПриСозданииНаСервере МоеХЗ = Новый ХранилищеЗначений; То, что он недоступен в данных формы, означает лишь, что если, скажем, у тебя есть реквизит формы, скажем, типа ДанныеФормыСтруктура, в котором, скажем, лежит объект обработки, у которой, скажем, есть реквизит типа ХЗ, то ты не сможешь сделать так:
#29 by Pro-tone
ну так я о том же, ТС в не находит типа ХЗ в данных формы
#30 by singlych
упс, а про конструктор-то я прогнал, он в тонком клиенте не работает. но из реквизита объекта можно достать. ну ок, я так, буквоедствую
#31 by dft2014
Из всего, что здесь написали, я поняла, что на форме обработки (даже встроенной в конфигурацию, а у меня она именно встроенная), нельзя создать реквизит с типом "ХранилищеЗначения". Тогда возникают вопросы: 1. Как мне сохранять изменения, введенные пользователем на форме обработки в реквизите "ФорматированныйДокумент"? 2. Может быть, создать новую константу, с типом "ХранилищеЗначения", куда будут записываться изменения и считываться?
#32 by singlych
Реквизит _формы_ в принципе нельзя сделать типа ХЗ. Только произвольный, куда можно пихнуть ХЗ. Реквизит _обработки_ тоже нельзя сделать типа ХЗ. А смысл, если обработка не хранит данные в базе? Если изменения в форматированном доке нужно для каждого пользователя отдельно сохранять, удобно использовать ХранилищеОбщихНастроек.
#33 by dft2014
Изменения должны сохраняться для всех пользователей.
#34 by Pro-tone
ты прочитала ? 1. преобразуешь свой форматированный документ в двоичные данные сперва. У тебя обработка, 2. хранить данные она не может, тебе нужно использовать тогда спецхранилище - можно справочник, можно регистр сведений с реквизитом или измерением типа ХЗ. 3. Записываешь эти двоичные данные в 2.
#35 by singlych
если документ один и тот же всегда, то константа подойдет
#36 by dft2014
Спасибо, прочитала , но не поняла, как это применить к моей задаче. В модуле формы обработки, ПриОткрытии написала: &НаКлиенте В реквизите "ФорматированныйДокумент", ПриИзменении написала: Но ничего не получилось: не сохраняются изменения и вообще выдает ошибку: {Обработка.РассылкаТабелей.Форма.Форма.Форма}: Поле объекта недоступно для записи (ХранениеТекстаТабеля)    Константы.ХранениеТекстаТабеля = ХранилищеТекста;
#37 by dft2014
+ Исправила процедуру, ошибку перестал выдавать, но сохранение отредактированного текста не происходит:
#38 by singlych
и это можно делать в стандартном событии ПриСозданииНаСервере
#39 by Pro-tone
а если у тебя будут разные форматированные доки или будет меняться в зависимости от условий они, тогда твоя константа не подойдет
#40 by singlych
хехе, это нужно было ответить на :))
#41 by dft2014
Документ будет один и тот же, только будет меняться текст рассылки, который я и пытаюсь сохранять в ХЗ, но пока безуспешно!!!
#42 by dft2014
Поправила, все равно не сохраняет отредактированный текст при повторном открытии!!!
#43 by Pro-tone
а какую логику рассылки ты хочешь реализовать? я что-то подумал, что документ может меняться от условий)
#44 by singlych
Что-то не то поправила.
#45 by dft2014
Есть обработка по рассылке табелей, на форме которой задаются условия (месяц и прочее), а также текст, который получатели табелей увидят в письме при получении табеля. Так вот этот текст письма ежемесячно меняется, поэтому надо чтобы пользователи сами редактировали текст.
#46 by dft2014
Этот текст письма, я и запихнула на форму в реквизит "ФорматированныйДокумент" - тип ФорматированныйДокумент.
#47 by Pro-tone
так сделай это на макете табличного документа
#48 by dft2014
Нет, это обработка формирует табеля в формате pdf в определенном каталоге, а затем рассылает их руководителям подразделений.
#49 by Pro-tone
так есть же возможность сохранения в PDF у табдока ж
#50 by dft2014
Неважно, что формируем и в каком формате. Речь идет о тексте, который получают вместе с письмом (например: "Уважаемый руководитель, добрый день!"). Именно этот текст письма, я и запихнула на форму обработки в реквизит "ФорматированныйДокумент" - тип ФорматированныйДокумент, чтобы была возможность написать вместо "Уважаемый руководитель, добрый ДЕНЬ!" - "Уважаемый руководитель, добрый ВЕЧЕР!". И если потом повторно открыть обработку, то будет сохранено последнее редактирование, т.е. будет на форме обработки "Уважаемый руководитель, добрый ВЕЧЕР!"
#51 by dft2014
Выложила обработку на: Помогите кто-нибудь!!!
#52 by singlych
Ну скачал. Ну работает. ЧЯНТД? Константа точно типа ХЗ?
#53 by dft2014
В пользовательском режиме наберите любой текст на форме обработки, затем закройте и снова откройте обработку. Текст сохранился?
#54 by singlych
угу
#55 by dft2014
А почему тогда у меня не сохраняется?
#56 by singlych
Хороший вопрос. Кэш почистите на всякий.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С