|
Как осуществить управление флагом из (формы списка)? | ☑ | ||
---|---|---|---|---|
0
Олеся999
27.03.15
✎
10:27
|
Подскажите пожалуйста как осуществить управление флагом из (формы списка)
(Галочки не к чему не привязаны нужно ставить ...для себя) В динамическом списке ? нужно сделать что то вроде такого: http://lvkr.ru/f/4b8NMs/1280.jpg |
|||
1
Cube
27.03.15
✎
10:29
|
(0) Перестань хотеть этого :)
|
|||
2
Олеся999
27.03.15
✎
10:32
|
(1) Почему? :)
|
|||
3
Cube
27.03.15
✎
10:53
|
(2) Потому что динамический список - это отчет по сути. Интерактивно с ним работать нельзя.
Для чего это всё нужно? Задачу опиши. |
|||
4
Ник второй
27.03.15
✎
10:54
|
(0) Запросом
|
|||
5
Олеся999
27.03.15
✎
11:00
|
(3) Допустим привезли товар и отдали накладную (бумажку) на склад ...кладовщик сделал приход в своей базе .... и должен передать (бумажку) бухгалтерам ....вот они и хотят ставить галочку (если кладовщик отдал им бумажку) ну чтобы не забыть и не запутаться))))
|
|||
6
Fish
27.03.15
✎
11:01
|
(5) А какой смысл в галочках, которые к данным не привязаны? Типа прокрутил список - и все галочки слетели? :)
|
|||
7
Cube
27.03.15
✎
11:02
|
(5) Ну и сделай реквизит в документе "Оригинал документа получен". Почему твоя галочка не привязана к данным? Ведь если перезапустить 1С, то такие галочки потеряются...
|
|||
8
DexterMorgan
27.03.15
✎
11:04
|
(5) Сделай доп. реквизит "Бамажка передана", повесь команду в списке, которая проставляет реквизит
|
|||
9
Олеся999
27.03.15
✎
11:18
|
(7) (6) Ну вот нужно чтобы сохранялось ....то есть как то записывалось в документ...
Я сделала пока вот так вот управление из формы документа http://lvkr.ru/f/t703Pd/1280.jpg Только хочу чтобы управление было из формы списка |
|||
10
Cube
27.03.15
✎
11:20
|
(9) Добавляй команду формы списка. Пихай её в контекстное меню своего списка, а в коде проставляй или убирай эту галочку (ну как пометка удаления).
|
|||
11
DexterMorgan
27.03.15
✎
11:28
|
(9) ну в принципе, если очень хочешь можешь поменять событие выбор у дин списка, если поле такое - стандартная обработка = ложь и меняй программно реквизит
|
|||
12
Cube
27.03.15
✎
11:30
|
(11) Кладовщику весело будет...
|
|||
13
DexterMorgan
27.03.15
✎
11:31
|
(12) понятно что не всем доступ давать
|
|||
14
DexterMorgan
27.03.15
✎
11:32
|
(12) РольДоступна и вперед, команду же тоже не всем выводить
|
|||
15
Гёдза
27.03.15
✎
11:33
|
Можно сделать по дабл клику.
|
|||
16
DexterMorgan
27.03.15
✎
11:36
|
(15) ну я это и предложил в (11) =)
|
|||
17
Олеся999
27.03.15
✎
11:39
|
(10) Выношу на панель а флажок не активный
|
|||
18
Cube
27.03.15
✎
11:42
|
(17) Флажок не будет активным никогда. Читай (1) :)
|
|||
19
Олеся999
27.03.15
✎
11:47
|
а тогда зачем он там нужен?
|
|||
20
Cube
27.03.15
✎
11:50
|
(19) Он - индикатор. Когда твои бухи нажмут правой кнопкой по документу и в выпавшем меню выберут "Проставить/убрать эту чёртову галку", то галочка будет установлена (или снята) в документе и это будет видно в списке.
|
|||
21
Олеся999
27.03.15
✎
11:58
|
Этого нету в списке
http://lvkr.ru/f/arg7fw/800.jpg |
|||
22
Fish
27.03.15
✎
11:59
|
(21) Ну так добавь :)
|
|||
23
Cube
27.03.15
✎
12:00
|
(21) Так, перечитываем (10) последовательно:
"Добавляй команду формы списка." Сделано? "Пихай её в контекстное меню своего списка" Сделано? "а в коде проставляй или убирай эту галочку" Сделано? |
|||
24
Олеся999
27.03.15
✎
12:07
|
Как я и думала http://lvkr.ru/f/GVUT2y/1024.jpg
|
|||
25
Олеся999
27.03.15
✎
12:07
|
Это же динамический список
|
|||
26
DexterMorgan
27.03.15
✎
12:12
|
(24) тебе же говорят меняй реквизит документа
|
|||
27
Cube
27.03.15
✎
12:12
|
(24) (25) )))))
&НаКлиенте Процедура МояКоманда() МояКомандаНаСервере(Элементы.МойДинамическийСписок.ТекущиеДанные.Ссылка); КонецПроцедуры &НаСервере Процедура МояКомандаНаСервере(СсылкаНаДокумент) ДокументОбъект = СсылкаНаДокумент.ПолучитьОбъект(); ДокументОбъект.ДокументПроведен = НЕ ДокументОбъект.ДокументПроведен; ДокументОбъект.Записать(); КонецПроцедуры |
|||
28
Cube
27.03.15
✎
12:13
|
+(27) Ошибки, если есть, сама исправишь. Вслепую писал.
|
|||
29
фобка
27.03.15
✎
12:14
|
(5) открыл форму документа поставил галку и записал. Всё
|
|||
30
фобка
27.03.15
✎
12:16
|
Не стоит разрешать пользователям идиотничать, потом же хуже будет
|
|||
31
kosts
27.03.15
✎
12:19
|
Можно добавить список на реквизиты формы (на форме можно не показывать). В этот список будешь программно добавлять свои отмеченные документы. В условном оформлении добавить оформление нужной колонки. В оформлении условие на вхождение ссылки в список и показывать текстом галочку.
|
|||
32
kosts
27.03.15
✎
12:21
|
(31) + Если вместо в нужную колонку всегда выводить текст, то на неё можно повесить гиперссылку. И отмечать/разотмечать документы можно одним кликом на гиперссылке.
|
|||
33
Олеся999
27.03.15
✎
12:26
|
(27) Написала так :
&НаКлиенте Процедура МояКоманда() МояКомандаНаСервере(Элементы.МойДинамическийСписок.ТекущиеДанные.Ссылка); КонецПроцедуры &НаСервере Процедура МояКомандаНаСервере(СсылкаНаДокумент) ДокументОбъект = Документы.ПриходнаяНакладная.ПолучитьФормуСписка(); ДокументОбъект.ДокументПроведен = НЕ ДокументОбъект.ДокументПроведен; ДокументОбъект.Записать(); КонецПроцедуры Не работает |
|||
34
DexterMorgan
27.03.15
✎
12:27
|
МояКомандаНаСервере(Элементы.МойДинамическийСписок.ТекущиеДанные.Ссылка);
поменяй на МояКомандаНаСервере(Элементы.МойДинамическийСписок.ТекущаяСтрока); |
|||
35
DexterMorgan
27.03.15
✎
12:27
|
и вообще у тебя реквизит то есть такой: ДокументПроведен ?
|
|||
36
Олеся999
27.03.15
✎
12:28
|
(35) Ну конечно:)
|
|||
37
Cube
27.03.15
✎
12:29
|
(33) Удивительно, если бы работало :)))
МойДинамическийСписок - заменить надо на имя ДС в твоей форме. А названия процедур - для примера. Ты в процедуре своей комады должна написать что-то подобное, а не тупо копипастить... |
|||
38
Cube
27.03.15
✎
12:29
|
(34) Не всегда ТекущаяСтрока содержит ссылку, бывает, что и номер строки...
|
|||
39
DexterMorgan
27.03.15
✎
12:30
|
(38) слушай, не нужно быть телепатом, чтобы понять что у нее форма списка с основной таблицей этого документа
|
|||
40
Олеся999
27.03.15
✎
12:34
|
&НаКлиенте
Процедура МояКоманда() МояКомандаНаСервере(Элементы.Список.ТекущиеДанные.Ссылка); КонецПроцедуры &НаСервере Процедура МояКомандаНаСервере(СсылкаНаДокумент) ДокументОбъект = Документы.ПриходнаяНакладная.ПолучитьФормуСписка(); ДокументОбъект.ДокументПроведен = НЕ ДокументОбъект.ДокументПроведен; ДокументОбъект.Записать(); КонецПроцедуры Тоже не работает |
|||
41
DexterMorgan
27.03.15
✎
12:36
|
(38) а вот если у нее ссылка не выведена на форму списка - в текущих данных ее не будет, и твой код работать не будет
|
|||
42
Kondarat
27.03.15
✎
12:37
|
Замени
ДокументОбъект = Документы.ПриходнаяНакладная.ПолучитьФормуСписка(); на СсылкаНаДокумент.ПолучитьОбъект(); |
|||
43
Cube
27.03.15
✎
12:37
|
(40) Что говорит? У тебя процедура МояКоманда() привязана к кнопке на форме?
|
|||
44
DexterMorgan
27.03.15
✎
12:37
|
(38) А "ТекущаяСтрока" всегда при заданной основной таблице будет содержать ссылку, так что не надо
|
|||
45
Cube
27.03.15
✎
12:37
|
+(42) И это тоже.
|
|||
46
Kondarat
27.03.15
✎
12:38
|
(41) Точно?
|
|||
47
Олеся999
27.03.15
✎
12:41
|
(42) Я так тоже делала)
|
|||
48
DexterMorgan
27.03.15
✎
12:43
|
(46) Если на форму поле не выведено - в текущих данных его не будет
|
|||
49
Kondarat
27.03.15
✎
12:45
|
(48) Поставь галку у Ссылка использовать всегда и не дури людей.
|
|||
50
Олеся999
27.03.15
✎
12:46
|
(43) {Документ.ПриходнаяНакладная.Форма.ФормаСписка.Форма(5)}: Поле объекта не обнаружено (Ссылка)
МояКомандаНаСервере(Элементы.Список.ТекущиеДанные.Ссылка); Хотя http://lvkr.ru/f/5bvrxn/1280.jpg Наименование : список |
|||
51
DexterMorgan
27.03.15
✎
12:47
|
(50) Ох неужели? Может тада все-таки поменять на ТекущуюСтроку?
|
|||
52
DexterMorgan
27.03.15
✎
12:48
|
(49) Нафига? Если в ТекущейСтроке все есть?
|
|||
53
Kondarat
27.03.15
✎
12:49
|
(52) Это в данном частном случае
|
|||
54
DexterMorgan
27.03.15
✎
12:50
|
(53) И?
|
|||
55
Feunoir
27.03.15
✎
12:53
|
(50) Поставь точку останова на эту строку, и посмотри какое значение у переменной Элементы.Список.ТекущиеДанные
|
|||
56
DexterMorgan
27.03.15
✎
12:54
|
(55) Да понятно уже что не выведено поле на форму
|
|||
57
Олеся999
27.03.15
✎
13:00
|
||||
58
DexterMorgan
27.03.15
✎
13:02
|
(57) Так а в чем ошибка? у тебя же определился документ
|
|||
59
Cube
27.03.15
✎
13:03
|
(57) Всё работает, я так понимаю?
|
|||
60
Олеся999
27.03.15
✎
13:05
|
(59)
&НаКлиенте Процедура МояКоманда() //МояКомандаНаСервере(Элементы.Список.ТекущиеДанные.Ссылка); МояКомандаНаСервере(Элементы.Список.ТекущаяСтрока); КонецПроцедуры &НаСервере Процедура МояКомандаНаСервере(СсылкаНаДокумент) ДокументОбъект = СсылкаНаДокумент.ПолучитьОбъект(); ДокументОбъект.ДокументПроведен = НЕ ДокументОбъект.ДокументПроведен; ДокументОбъект.Записать(); КонецПроцедуры Так вот работает ....но почему то не обновляет ...то есть что бы увидеть что поставила галочку нужно выходить и зайти обратно в приходную накладную |
|||
61
Гёдза
27.03.15
✎
13:06
|
элементы.список.обновить()
|
|||
62
Cube
27.03.15
✎
13:07
|
(60) после строки
МояКомандаНаСервере(Элементы.Список.ТекущаяСтрока); Пиши ОбновитьОтображениеДанных(); |
|||
63
Олеся999
27.03.15
✎
13:16
|
(62) Спасибо работает
только выдает : {Документ.ПриходнаяНакладная.Форма.ФормаСписка.Форма(14)}: Ошибка при вызове метода контекста (ОбновитьОтображениеДанных) ОбновитьОтображениеДанных(); по причине: Метод недоступен на сервере Причем написала на сервере &НаСервере Процедура МояКомандаНаСервере(СсылкаНаДокумент) ДокументОбъект = СсылкаНаДокумент.ПолучитьОбъект(); ДокументОбъект.ДокументПроведен = НЕ ДокументОбъект.ДокументПроведен; ДокументОбъект.Записать(); ОбновитьОтображениеДанных(); КонецПроцедуры |
|||
64
Cube
27.03.15
✎
13:20
|
(63) А я тебе сказал написать &НаКлиенте... Посмотри поле какой строки надо вставлять-то...
|
|||
65
kosts
27.03.15
✎
14:12
|
Если что, то в стандартных командах формы списка документа есть команда проведения/отмены.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |