![]() |
![]() |
![]() |
|
checkbox в таблице 1С | ☑ | ||
---|---|---|---|---|
0
alkinoos
21.04.10
✎
00:55
|
Здравствуйте, подскажите как в табличной части документа организовать колонку с checkbox-ом, и корректно обрабатывать состояние "флажка" ?
Спасибо. |
|||
1
also
21.04.10
✎
00:57
|
Размещай ТЗ в диалоге, назначай ей картинку.
потом ТЗ.НоваяКолонка("Пометка","Число", 2,0,""); ТЗ.ВыводитьПиктограммы("Пометка"); |
|||
2
also
21.04.10
✎
00:58
|
а вообще в поиск
|
|||
3
alkinoos
21.04.10
✎
01:02
|
Что-то типа такого же (http://www.macleod-1c.narod.ru/Paint.bmp), только в документе в табличной части (и кстати сохраняться ли показатели срок??)
|
|||
4
Cthulhu
21.04.10
✎
01:03
|
(1): а вообще не ТЗ а Мн.Ч.
(0): картинку назначить для Мн.ч. (в свойствах); добавить вычисляемую колотнку в Мн.ч. (активизировать Мн.ч, ткнуть в кнопку добавления реквизита "текст" и добавить его ткнув прямо в Мн.Ч) - добавится пустая колонка. перетащить её куда надо, назвать как надо, поставить ширину какую надо, взвести флажок "для вывода пиктогроамм" (или как-то так), а в формулу добавленной колонки всандалить выражение, вычисляющее номер отображаемой пиктограммы. а вообще - в поиск. (с) |
|||
5
alkinoos
21.04.10
✎
01:08
|
Да все это пробовал, вот здесь тоже описано,
CheckBox в таблице только не работает, пишет в строке Флаг = ТабЗнач.ПолучитьЗначение(ТабЗнач.НомерСтроки, "КолонкаСПиктограммой"); НеверныйИдентификаторКолонки, а она именно так и обозвана - КолонкаСПиктограммой |
|||
6
alkinoos
21.04.10
✎
01:10
|
В результате у меня функция выглядит так
Функция ПриСменеСтроки() ТабЗнач = СоздатьОбъект("ТаблицаЗначений"); Флаг = ТабЗнач.ПолучитьЗначение(ТабЗнач.НомерСтроки, "Пикт"); Сообщить(Флаг); Если Флаг = 1 Тогда Флаг = 0; Иначе Флаг = 1; КонецЕсли; ТабЗнач.УстановитьЗначение(ТабЗнач.НомерСтроки, "Пикт", Флаг); КонецФункции но не работает, пишет про неверный идентификатор (пикт - назвал), в чем может быть проблема? |
|||
7
Злопчинский
21.04.10
✎
01:11
|
После создания таблицы значений - опиши ее структуру
|
|||
8
alkinoos
21.04.10
✎
01:12
|
это как (подскажите)
|
|||
9
Злопчинский
21.04.10
✎
01:13
|
положи на форму ТЗ, идентификатор = ТЗФ
на эту ТЗ повесь картинку с пиктограммами Процедура ПриОткрытии() ТЗФ.НоваяКолонка("Пометка","Число",1); ТЗФ.НоваяКолонка("Наименование","Строка"); ТЗФ.ВыводитьПиктограммы("Пометка",); ТЗФ.НоваяСтрока(); ТЗФ.Пометка = 1; ТЗФ.Наименование = "одна пиктограмка"; ТЗФ.НоваяСтрока(); ТЗФ.Пометка = 2; ТЗФ.Наименование = "Вторая пиктограмка"; КонецПроцедуры |
|||
10
Злопчинский
21.04.10
✎
01:14
|
если флаг может принимат 1 или 0, тогда красиво будет
Флаг = 1-Флаг; |
|||
11
alkinoos
21.04.10
✎
01:21
|
Но ведь в этом случае у меня на форме список значений (с колонками), а я говорил о табличной части документа (или я что-то неправильно понял)
И как на этот список значений повесить пиктограмму На колонку в табличной части - знаю, а на список значений - не понял |
|||
12
Злопчинский
21.04.10
✎
01:30
|
в табличную часть документа - очень просто
1. на ТЧ документа повесь картинку с пиктограммами |
|||
13
Злопчинский
21.04.10
✎
01:32
|
и не путай СписокЗначений и ТаблицуЗначений
|
|||
14
Злопчинский
21.04.10
✎
01:34
|
на ТЧ кинь текстовую колонку
|
|||
15
Злопчинский
21.04.10
✎
01:34
|
у ней в свойствах поставь галку показывать пиктограммы
|
|||
16
Злопчинский
21.04.10
✎
01:35
|
в формулу - пиши функцияю, функция должна возвращать номер пиктограммы (в картинке, которую назначил на тЧ)
|
|||
17
Злопчинский
21.04.10
✎
01:38
|
переключение пиктограммы
//***************************************************************************** Процедура ПриНачалеРедактированияСтроки() ЭлементДиалога = Форма.ТекущаяКолонка(); Если НЕ(ЭлементДиалога = "ТутИдТвойеТекстовойКолонки") Тогда Возврат; КонецЕсли; ФлагПиктограммы = 3-ФлагПиктограммы; КонецПроцедуры //ПриНачалеРедактированияСтроки() . надо четко понимать что пиктограммка показывается в зависимости ОТ ЧЕГО-ТО - это что-то - или реквизит дока или некая вычисляемая значения ыункции |
|||
18
alkinoos
21.04.10
✎
01:47
|
а как показать-то саму картинку (пиктограмму) в текстовой колонке,где уже все атрибуты типа (показывать пикт.) выставлено
|
|||
19
Cthulhu
21.04.10
✎
01:52
|
(5),(6),(8),(11),(18): в (4) - мантра.
|
|||
20
alkinoos
21.04.10
✎
01:52
|
Сделал так
Функция Флаг() // вызывается из формулы текстовой колонки Возврат Флаг+1; КонецФункции Процедура ПриНачалеРедактированияСтроки() Если Форма.ТекущаяКолонка() = "Пикт" Тогда Флаг = 1 - Флаг; СтатусВозврата(0); КонецЕсли; КонецПроцедуры Вот и все , работает |
|||
21
alkinoos
21.04.10
✎
01:53
|
всем спасибо
|
|||
22
Злопчинский
21.04.10
✎
01:55
|
.Вот видишь - всехний пообеждатель!
Не есть кошерно юзать переменную Флаг и функцию Флаг() ;-) |
|||
23
Злопчинский
21.04.10
✎
01:56
|
хм... а нахрена СтатусВозврата(0); - при редактировании текстовой колонки.. ;-)?
но для общей дисциплины - ок. |
|||
24
Cthulhu
21.04.10
✎
02:03
|
(23): зато теперь можно вызывать из некоторых предопределенных процедур модуля формы! )))
|
|||
25
Злопчинский
21.04.10
✎
02:54
|
ага с таким бешенно богатым кодом? ;-)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |