|
v7: 7.7 Пиктограммы в документах | ☑ | ||
---|---|---|---|---|
0
Молодой 1Снег
13.10.11
✎
19:03
|
Пытаюсь сделать галочки в табличной части документа.
Вставил в табличную часть элемент диалога “Текст”, в свойствах “Текста”, на закладке “Дополнительно” указал “Показывать пиктограммы”, в свойствах Многострочной части на закладке “Картинка” указал нужный мне набор пиктограмм. В “Формуле” прописал вызов функции, которая должна возвращать число, соответствующее номеру пиктограммы. А вот что писать в этой функции? Надо что бы по двойному клику по пиктограмме галочка ставилась если ее не было и снималась если была. |
|||
1
Молодой 1Снег
13.10.11
✎
19:03
|
Вот так не получается :(
Функция Галочка(Пометка) Если Метка = 1 тогда Возврат 2; ИначеЕсли Метка = 2 тогда Возврат 1; КонецЕсли; КонецФункции |
|||
2
Сияющий Асинхраль
13.10.11
✎
19:06
|
Передаешь переменную Пометка - Галочка(Пометка), а работаешь в коде с переменной Метка :-)
Вообще много кода, проще Метка = ?(Метка = 1,2,1); вот и вся функция... |
|||
3
vmv
13.10.11
✎
19:06
|
0, 1 - картинка это индексированная коллекция, даже если она одна.
динозавр 77) |
|||
4
Молодой 1Снег
13.10.11
✎
19:09
|
(2) Ошибка:
Попытка присвоить значение недоступной для записи переменной (Метка) |
|||
5
Молодой 1Снег
13.10.11
✎
19:10
|
Перенесите тему в v7, пожалуйста.
|
|||
6
Молодой 1Снег
13.10.11
✎
19:16
|
Так как надо правильно возвращать число, соответствующее номеру пиктограммы?
|
|||
7
Молодой 1Снег
13.10.11
✎
19:31
|
Нашел пример как сделать в случае если пиктограмма это реквизит табличной части документа:
http://alllexe.com/2010/11/1s-7-7-kak-dobavit-piktogrammu-znachok-v-tablichnuyu-chast/ А если мне не надо хранить пиктограммы в табличной части, и они являются только реквизитами формы, подскажите как быть в этом случае? |
|||
8
Молодой 1Снег
13.10.11
✎
19:39
|
Всем спасибо! Код вот такой:
Функция Галочка() Возврат Флажок; КонецФункции Процедура ПриНачалеРедактированияСтроки() Если СокрЛП(Форма.ТекущаяКолонка())="Метка" Тогда Если Флажок=1 Тогда Флажок=2; ИначеЕсли Флажок=2 Тогда Флажок=1; КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
9
Молодой 1Снег
13.10.11
✎
19:45
|
(8) Хотя не совсем верно. Этот код снимает или устанавливает галочки сразу во всех строках.
Как определить текущую строку? |
|||
10
G-Re
13.10.11
✎
19:51
|
АктивныйЭлемент()
НомерСтроки Если Формекс, то еще можно ПриДвойномНажатииМышки() и тп |
|||
11
Молодой 1Снег
13.10.11
✎
19:59
|
(10) Формекса нет.
А как изменить галочку только в текущей строке? |
|||
12
filh
13.10.11
✎
20:08
|
было недавно для Табл, даже прииер крутой от Ёпрст3
в поиск в общем. |
|||
13
G-Re
13.10.11
✎
23:16
|
(11) относительно (7). Пиктограммки в ТЧ хранить не нужно, НО ведь наличие пиктограммки на форме в ТЧ свидетельствует о каком-то статусе записи, например 0,1.
Этот статус желательно хранить в структуре строки документа, чтобы при последующем открытии документа строки были соотв. образом помечены пиктограммками. Я делал через Формекс (он мне все-равно был нужен для раскраски и пр.) Примерно так: Статус - Число - реквизит ТЧ. тСтатус - текст на ТЧ формы для пиктограммки. Процедура ПриДвойномНажатииЛевойКнопки(Сост,Х,У,ФСО) АЭ=Форма.АктивныйЭлемент(); Если АЭ="тСтатус" Тогда Правый=Макс(0,1-Правый); |
|||
14
G-Re
13.10.11
✎
23:20
|
(13)+
Процедура ПриДвойномНажатииЛевойКнопки(Сост,Х,У,ФСО) АЭ=Форма.АктивныйЭлемент(); Если АЭ="тСтатус" Тогда Статус=?(Статус=1,2,1); КонецЕсли; КонецПроцедуры где-то так, пишу по памяти, могут быть неточности. |
|||
15
Молодой 1Снег
13.10.11
✎
23:29
|
(13) Чтобы не было домыслов, могу пояснить для чего мне нужны эти галочки в табличной части. Делаю документ который по сути является актом выполненных работ. В табличную часть заносится перечень работ. Но фишка в том, что разные работы из этого списка могут делать разные люди (т.е. в табличной части есть реквизит Справочник.Работники).
Так вот, что бы оператор не заполнял в каждой отдельной строке работника я пытаюсь немного автоматизировать этот процесс. На форме создал поле поле ввода Справочник.Работники, оператор выбирает там нужного работника, отмечает галочками строки тех работ которые выполнил этот работник и нажимает кнопочку Заполнить. Реквизиты табличной части соответственно заполняются. Возможно ли это без Формекса? |
|||
16
Молодой 1Снег
13.10.11
✎
23:32
|
+(15) Т.е. при последующем открытии документа, совершенно не важно каким образом будут помечены строки. Лучше чтобы галочки нигде не стояли.
|
|||
17
Ёпрст
14.10.11
✎
00:59
|
||||
18
filh
14.10.11
✎
08:14
|
(17) крута)
Флаг<<?>>+1 Неопознанный оператор |
|||
19
Ёпрст
14.10.11
✎
09:46
|
(18) Ну и в каком месте эта ошибка у тебя ?
|
|||
20
Молодой 1Снег
14.10.11
✎
11:15
|
(17) Пример конечно хороший. Но опять же флаги хранятся в реквизите табличной части. Можно ли их не хранить, а использовать только реквизиты формы?
|
|||
21
Ёпрст
14.10.11
✎
11:16
|
(20)Не храни, разрешаю.
|
|||
22
Молодой 1Снег
14.10.11
✎
11:17
|
(21) Тогда не работает
|
|||
23
filh
14.10.11
✎
11:18
|
(19) а когда новую строку заводишь инсертов и сразу выбираешь первую строчку мышкой.
|
|||
24
filh
14.10.11
✎
11:18
|
инсертов= инсертом
|
|||
25
Ёпрст
14.10.11
✎
11:21
|
(22) врешь
|
|||
26
filh
14.10.11
✎
11:22
|
Создаешь новый документ "Пример". Нажимаешь Ins (или добавляешь по иконке). И теперь ткни мышкой в табличное поле в любое место, кроме созданой строки.
|
|||
27
Ёпрст
14.10.11
✎
11:23
|
(23) нет такой ошибки
|
|||
28
Молодой 1Снег
14.10.11
✎
11:24
|
(25) Мамой клянусь!
|
|||
29
Ёпрст
14.10.11
✎
11:26
|
(26) надо просто местами поменять в формуле = 1+флаг
а так, примеру лет 10 и писался он для таких, как (0). |
|||
30
Ёпрст
14.10.11
✎
11:26
|
(28) ну что тут можно сказать ? rtfm
+нам отсюда не видно, чё ты там делаешь и как. |
|||
31
filh
14.10.11
✎
11:27
|
||||
32
filh
14.10.11
✎
11:28
|
(29) хороший пример.
|
|||
33
Молодой 1Снег
14.10.11
✎
11:30
|
(30) Я же подробно расписал в (15) что хочу сделать.
Примеров когда флаг хранится в табличной части много, а вот когда флаг нужен только на форме не понятно как делать. |
|||
34
filh
14.10.11
✎
11:32
|
(33) так может тебе нужно просто использовать "Флажек"?
|
|||
35
filh
14.10.11
✎
11:32
|
"Флажок"
|
|||
36
Ёпрст
14.10.11
✎
11:32
|
(33) детсад..
храни значения галок в ТЗ/СЗ созданной при открытии документа. Удаляй\добавляй\изменяй эту ТЗ\СЗ при редактировании\удалении\добавлении строк документа. Ну и, rtfm |
|||
37
viktor_vv
14.10.11
✎
11:32
|
(33) Так сделай СписокЗначений для хранения флагов по строкам. Есть номер строки в списке - есть флаг, нету - нет флага. Немного усложнится (8).
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |