#0
by 247tsm
Вопрос для знатоков 1С81 простой. Есть справочник с реквизитом ЦветТ типа хранилище значения. Я пытаюсь записать в него цвет текста но не получается. Я делаю так: Но в отладчике вижу что при открытии формы ЦветТ=Неопределено. Почему? Реквизиты типа Хранилище значения особые и работать с ними нужно по особому? Как мне изменить текст модуля чтобы всё работало?
#4
by 247tsm
Конечно, для хранения цвета можно использовать реквизит типа строка: а при открытии: Но, наверно, проще использовать реквизит типа Хранилище значения без всяких функций, преобразований?
#11
by 247tsm
Из примера я понял, что реквизиты справочника СтрокаТаблицаСтатейБюджетирования.Шрифт типа строка и СтрокаТаблицаСтатейБюджетирования.ЦветФона тоже типа строка. А у меня же типа Хранилище значения. Пример со строкой я уже и сам привёл. Меня интересует, можно ли делать проще, используя реквизит типа Хранилище значения и как обычный реквизит его сохранять, а затем считывать?
#14
by 247tsm
У меня не записывается значение в реквизит типа Хранилище значения, поэтому до присваивания далеко.
#16
by wertyu
я тебе пытался показать, что не надо хранить само значение, если не получается потом извлечь, а можно хранить его составляющие
#18
by 247tsm
+ У меня речь не идет ни про СКД, ни про конструктор. У меня 1С81, где есть реквизиты типа Хранилище значения. У меня просто форма справочника, на ней кнопка для выбора цвета текста и его записи в реквизит типа хранилище значения. Это не работает. Вот я и прошу подсказать, почему, где ошибка в приведённом мной коде? Но я знаю, как можно выкрутиться, используя реквизит типа строка и функцию ЗначениеВСтрокуВнутр. Но я хочу понять, почему нельзя напрямую пользоваться реквизитом типа Хранилище значения?
#19
by Chameleon1980
Синтаксис: Получить Возвращаемое значение: Тип: Произвольный. Значение, содержащееся в хранилище. Описание: Получает из хранилища сохраненное в нем значение. Доступность: Сервер, толстый клиент, внешнее соединение. Пример: МояКартинка = ХранилищеКартинки.Получить;
#20
by Chameleon1980
ну и при сохранении чтото типа Хранилище=Новый ХранилищеЗначения(ЗначениеВСтрокуВнутр(ЗдесьВашиДАнные))
#23
by 247tsm
Если использовать функцию ЗначениеВСтрокуВнутр, то зачем использовать для цвета реквизит типа Хранилище значения? Проще использовать реквизит типа строка!
#24
by Chameleon1980
да по быстрому просто выдернул кусок из старого отчета у меня там просто тз сохранялась
#31
by 247tsm
И всё же, зачем использовать функцию ЗначениеВСтрокуВнутр? В этом случае не нужен реквизит типа Хранилище значения!!! А просто нужен просто типа строка.
#32
by Chameleon1980
ЗначениеВСтрокуВнутр чтобы, например тз (таб. зн.) сохранять ЦветТ - реквизит справочника типа ХЗ (хран. зн.) ???
#34
by 247tsm
да, и по-моему, здесь функция ЗначениеВСтрокуВнутр не нужна, либо если использовать эту функцию, то не нужен тип реквизита Хранилище значения, а нужен тип строка. Но я хочу добиться работы с типом Хранилище значения.
#36
by 247tsm
Уточняю: в справочнике есть реквизит ЦветТ с типом Хранилище значения. Я в него хочу записать Диалог.Цвет
#37
by Chameleon1980
а как тогда называется реквизит у которого тип хз (хр.зн.) ??? капеч. мы даже не там запнулись.
#40
by Chameleon1980
а что угадывать буду просто скажите как у вас называется Реквизит справочника типа Хранилище значения имя его
#42
by Chameleon1980
он бы не ругался как в 30 т.к. у Хран. зн. есть метод Получить который "Получает из хранилища сохраненное в нем значение" (C) СП
#45
by 247tsm
Реквизит ЦветТ, тип - ХранилищеЗначения. У меня процедура: При открытии формы ругается: {Справочник.Меню.Форма.ФормаЭлемента1}: Значение не является значением объектного типа (Получить) _Цвет=ЦветТ.Получить;
#47
by 247tsm
Более того, в отладчике я вижу, что после строки: значение ЦветТ.Получить - это значение выбранного цвета. Но ... это значение или "теряется" или я его не могу прочитать при открытии формы справочника.
#48
by Chameleon1980
объект чей реквизит сохраняется? ну и проверьте перед _Цвет=ЦветТ.Получить; типзначения(ЦветТ) что за конфа? большая? может кинете куданить? А то что-то надоело чуть в темноте ходить
#49
by 247tsm
в отладчике ЦветТ имеет значение цвета, выбранного в Диалог.Цвет А при открытии ЦветТ имеет значение Неопределено! Поэтому и получить значение не удается.
#50
by Chameleon1980
пилят как зовут реквизита справочника (какогото) в который мы хотим сохранить значение у которого тип хран.зн. ????????????????????????????
#53
by Chameleon1980
конфа большая. просто конфа - без данных. а то мы видать на ночь глядя ходим вокруг да около
#55
by 247tsm
Да, большая. Но, по-моему, в я всё описал достаточно ясно и максимально подробно, с текстом процедур. Вот последний вариант процедур: Но почему-то при открытии ЦветТ=Неопределено. Вот в этом и вопрос.
#61
by Chameleon1980
или есть TeamViewer ? в почту номер с паролем если что Nickolay_Mulko собака Mail.ru
#66
by Chameleon1980
пля странно. я походу сплю Тут видимо проблема в том что присваеваем значения реквизиту прямо в форме элемента. Но почему. Пипец
#67
by Chameleon1980
ну поправить то я поправил тока почему диалог выбора цвета возращает в аттрибут цвет всегда 0,0,0 не обращал внимания?
#75
by 247tsm
Очень странно. Я заменил твои реквизиты ЦветТекста, ЦветФона и Шрифт на аналогичные по типу свои ЦветТ, ФонТ и ШрифтТ. Подправил в процедурах и... работать перестало!? Заменил обратно и... заработало!? Все - и твои и мои реквизиты в справочнике присутствуют одновременно. Они отличаются только названиями (по крайней мере визуально). Наверно, какой-то глюк в конфе или...
#79
by 247tsm
Что-то, наверняка, есть. Или, на самом деле, глюк конфы - почему-то для моих реквизитов в Хранилище значений поиск не находит значения.
#80
by 247tsm
У меня были реквизиты формы с такими же именами, что и мои реквизиты справочника: ЦветТ, ФонТ и ШрифтТ. Я их, очевидно, добавил во время своих "экспериментов". Убрал реквизиты формы и заработало и с моими реквизитами справочника.
#83
by 247tsm
В реквизитах формы. При редактировании формы у тебя есть вкладки: Диалог, Модуль и Реквизиты. Вот на вкладке Реквизиты у меня и были эти реквизиты формы, совпадающие по именам с реквизитами справочника.
#84
by 247tsm
А вообще, мне кажется, что такие значения, как цвет, шрифт гораздо проще хранить в реквизитах типа строка, используя функции ЗначениеВСтрокуВнутр и ЗначениеИзСтрокиВнутр. Кода получается меньше.
#85
by Chameleon1980
а вообще, сейчас, сидя в ванной, я вспомнил что цвет вообще одним числом хранить нужно/можно/лучше
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- как в реквизит справочника выбрать 2 значения перечисления?
- КД 2.0 Реквизит "Строка" в Реквизит "СправочникСсылка"
- Открыть по кнопочке элемент справочника - реквизит другого справочника
- КД2: Как перенести реквизит ТБ 7.7 в реквизит шапки 8.1?
- Можно ли реквизит справочника сделать представлением справочника
- v7: Реквизит диалога "Список" как реквизит документа.
В этой группе 1С
- MSSQL. Есть ли способ преобразовать XML плана запроса в текстовый вид?
- v7: в 1С 7.7 печатная форма по внешнему виду идентичная как 1С 8.2
- v7: 1c 77 стала создавать файлы T***.dbf и cdx в левых каталогах
- Нумерация документов. УПП 1.3
- Управляемые формы: получение списка выделенных элементов
- бизнес процесс - как назначить нескольких исполнителей или ролей 1 задаче
- 1С 7.7 Условие в запросе
- УТ 11.1 - комиссия в отчете банка по эквайрингу
- В веб клиенте ошибка проверки данных XDTO, как обойти?
- РИБ восстановление битых ссылок в ПБ. Как реализвать?
- СКД и пользовательские поля с одинаковым заголовком
- Акт о списании материальных запасов Форма по ОКУД 0504230
- Фильтрация в отчете СКД
- Высота строки в Excel
- v7: 1С77: Загрузка в справочник из ТЗ (Не выбран элемент!)
- (УТ11) Заказ покупателя из ИМ и чек ККМ
- КА, реализация, частичный зачет аванса
- Запрос по документам в 1с 8.3
- v7: 1С77: Справочник имеет реквизит тип "Справочник" (условие проверки)
- Граница последовательности в УТ 11