|
Обработка доступности поля строки табличной части документа | ☑ | ||
---|---|---|---|---|
0
NIGHTHUNTER
19.09.22
✎
13:16
|
Можно ли как то это сделать в цикле перебором?
Так как мне нужно регулировать доступностью поля табличной части документа. В зависимости от значения в предыдущей колонке. И возвращаемого значения в самописной процедуре. Можно ли это сделать именно перебором в цикле? То есть менять свойство доступность у ячейки табличной части документа. |
|||
1
МКК
19.09.22
✎
13:21
|
Да ну не
|
|||
2
NIGHTHUNTER
19.09.22
✎
13:22
|
(1) Никак нельзя это сделать в цикле?????
|
|||
3
PuhUfa
19.09.22
✎
13:26
|
(0) цикл то зачем?
|
|||
4
МКК
19.09.22
✎
13:29
|
(2) Нет
|
|||
5
NIGHTHUNTER
19.09.22
✎
13:32
|
(3) А как менять свойство доступность у поля разных строк?
Зависит от условия самописной функции ещё. |
|||
6
МКК
19.09.22
✎
13:33
|
(3) так событие надо найти которое будешь обрабатывать перед началом редактирования ячейки
|
|||
7
PuhUfa
19.09.22
✎
13:34
|
(5) Тебя спасут событие ПриАктивизацииСтроки ТЧ и событие ПриИзменении для ячейки ТЧ от которой зависит доступность нужной тебе
|
|||
8
NIGHTHUNTER
19.09.22
✎
13:38
|
(7) Я сейчас пробую ПриИзменении(), но там нет Отказ. Как отказаться от изменения ячейки?
|
|||
9
PuhUfa
19.09.22
✎
13:39
|
(8) зачем тебе отказываться от ее изменения?
|
|||
10
NIGHTHUNTER
19.09.22
✎
13:52
|
(9) Мне нужно убрать доступность ячейки.
|
|||
11
Kassern
19.09.22
✎
13:56
|
(10) делайте это не при изменении, а раньше. ПриИзменении - отрабатывает, когда уже ячейка изменена.
|
|||
12
NIGHTHUNTER
19.09.22
✎
13:58
|
(11) Где например?
|
|||
13
NIGHTHUNTER
19.09.22
✎
13:58
|
У ячейки другого события как при изменении и нет (.
|
|||
14
Kassern
19.09.22
✎
13:59
|
(13) ПриАктивизации есть
|
|||
15
Ryzeman
19.09.22
✎
14:08
|
||||
16
NIGHTHUNTER
19.09.22
✎
14:12
|
(15) а у меня тогда что это? Я про поле табличной части документа. Там вот одно только событие.
http://joxi.ru/8An130OCNPxZR2 |
|||
17
Ryzeman
19.09.22
✎
14:13
|
(16) >>а у меня тогда что это?
Тебе вежливо ответить?) Если вежливо - то ты сам должен нам рассказать что это у тебя там. |
|||
18
NIGHTHUNTER
19.09.22
✎
14:15
|
(17) Поле табличной части документа. там одно только свойство. Это подтверждяют и в (7) .
|
|||
19
NIGHTHUNTER
19.09.22
✎
14:16
|
(15) А чьи свойства показываете вы. не известно!
|
|||
20
NIGHTHUNTER
19.09.22
✎
14:26
|
(14) Вы имели ввиду процедуру ПриАктивизицииСтроки() ?
|
|||
21
Ryzeman
19.09.22
✎
14:27
|
(19) на форме нету элемента "поле табличной части документа".
Попытка номер два, что же ты такое тыкаешь, у чего нет никаких событий? |
|||
22
NIGHTHUNTER
19.09.22
✎
15:15
|
На столбец, табличной части документа на форме.
|
|||
23
Хряк
19.09.22
✎
16:04
|
устанавливай только просмотр в при выводе строки
|
|||
24
NIGHTHUNTER
20.09.22
✎
03:09
|
(23) Это же в обычных формах, вроде как. В управляемых то нет такого.
|
|||
25
NIGHTHUNTER
20.09.22
✎
03:18
|
А как в процедуре ПриАктивизицииСтроки управлять доступностью полей?
|
|||
26
NIGHTHUNTER
20.09.22
✎
03:20
|
У меня же управляемые формы, вы что советуете то?
|
|||
27
NIGHTHUNTER
20.09.22
✎
03:34
|
Подскажите как мне управлять доступностью ячейки табличного поля?
|
|||
28
NIGHTHUNTER
20.09.22
✎
06:12
|
Как работает вот этот пример? Я могу его использовать, что бы установить доступность строк при открытии документа и при редактировании строки?
&НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) //Ваш код УстановитьУсловноеОформление(); //Ваш код КонецПроцедуры &НаСервере Процедура УстановитьУсловноеОформление() Элемент = УсловноеОформление.Элементы.Добавить(); ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ПродукцияТОперации.Имя); ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Продукция.Спецификация"); ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина); Элемент.Оформление.УстановитьЗначениеПараметра("ЦветФона", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); КонецПроцедуры |
|||
29
NIGHTHUNTER
20.09.22
✎
07:50
|
(7) Скажите как мне воспользоваться этими процедурами? как получить доступность поля строки, ячейки?
|
|||
30
2S
20.09.22
✎
07:51
|
(29) Стар, ну епта, почитай уже про условное оформление. Тебе никто не должен разжевывать в рот положить
|
|||
31
NIGHTHUNTER
20.09.22
✎
08:02
|
Вот это же, это для всего столбца? (28)
(30) Ну я сейчас, сделаю реквизит булево, буду заполнять его функцией при открытии, что бы знать доступно ли дополнительное сведение. А потом и сделаю условное оформление. Буду иметь доступ через этот реквизит к дополнительному свойству, статусу документа, и реквизитам строки табличной части. |
|||
32
NIGHTHUNTER
20.09.22
✎
08:03
|
(31) Если ни в какой процедуре табличной части формы документа этого не удается сделать.
|
|||
33
NIGHTHUNTER
20.09.22
✎
08:10
|
(30) Мне нужно проверять дополнительное свойство, установленное у пользователя, при открытии. И при редактировании строки.
Это не давало мне использовать условное оформление. Там же я не смогу свою функцию вызывать. По этому узнавал по коду. |
|||
34
Ryzeman
20.09.22
✎
08:25
|
(29) Не, извини, это бесполезно. Ты не научишься и от того что тебе разжевать и положить в рот - не в коня корм. Ты тыкаешь на кой то чёрт поле флажка, удивляешься что там только одно событие и недоумеваешь почему ты на этот несчастный флажок ничего не можешь повесить. Ты не понимаешь по сути как работать с УФ, если для тебя простейший код по установке условного форматирования - это "смотрю в книгу - вижу фигу". Ты не можешь и не хочешь продумать ни один алгоритм как в принципе решить свою задачу и не понимаешь предложенные, потому что "устал и переутомился". Каждый божий день.
|
|||
35
NIGHTHUNTER
20.09.22
✎
08:28
|
(31) Наверное это плохая идея все же.
(34) Так подскажите что делать по факту. |
|||
36
NIGHTHUNTER
20.09.22
✎
08:30
|
Задача такая. По определенным условиям, которые я получаю, мне нужно менять в строках доступность поля строки табличнойчасти.
|
|||
37
Ryzeman
20.09.22
✎
08:37
|
"По факту" тебе максимально чётко ответили ещё в (7)
|
|||
38
NIGHTHUNTER
20.09.22
✎
08:46
|
(37) Мне не дошло. Вот я взял процедуру. Как мне накладывать доступность поля строки? На что? Не хватает понимания. подскажите пожалуйста.
&НаКлиенте Процедура ЛимитыПриАктивизацииСтроки(Элемент) й = 1; КонецПроцедуры |
|||
39
Ryzeman
20.09.22
✎
08:51
|
Думай. Что же ты на клиенте можешь получить и к чему обратиться когда ты активировал строку? Поднимай свои старые темы, читай, ищи в Яндексе. Тебе это объясняли и не один раз.
|
|||
40
NIGHTHUNTER
20.09.22
✎
09:58
|
(39) На сервер нужно переходить?
Тут я могу обратиться к Элементы.Лимиты.ТекущаеДанные, только это дает перечень имеющихся полей |
|||
41
vicof
20.09.22
✎
11:37
|
(40) Ответь, зачем нужен переход на сервер, и тогда ты ответишь на (40)
|
|||
42
Kassern
20.09.22
✎
11:45
|
(41) Вот бы еще ТС понимал, что есть клиент, а что есть Сервер и в чем разница между ними. Что вообще собой представляет клиент-серверное взаимодействие.
|
|||
43
vicof
20.09.22
✎
11:58
|
(42) Это я так, мысли вслух)
|
|||
44
NIGHTHUNTER
20.09.22
✎
12:07
|
(41) Не нужен он туда.
тут я сделал так. Но хотелось бы знать как это делается условным оформлением в коде???? При открытии как я понимаю. &НаКлиенте Процедура ЛимитыПриАктивизацииСтроки(Элемент) ТекФизЛицо = ПолучитьФизЛицоТекущегоПользователя(); ХХХ_РеестрЛимитовБанковскаяГруппаПодготовка = ПолучитьХХХ_РеестрЛимитовБанковскаяГруппаПодготовка(); ТекСтрока = Элементы.Лимиты.ТекущиеДанные; Если Объект.Статус = ПредопределенноеЗначение("Перечисление.ХХХ_СтатусЛимита.НаПодготовкуПП") Тогда Если ПолучитьДополнительноеСведение(ТекФизЛицо, ХХХ_РеестрЛимитовБанковскаяГруппаПодготовка, Истина) Тогда Если ТекСтрока.Актуализировано Тогда Элементы.Лимиты.ПодчиненныеЭлементы.ЛимитыПодготовленоПП.Доступность = Истина; Иначе Элементы.Лимиты.ПодчиненныеЭлементы.ЛимитыПодготовленоПП.Доступность = Ложь; КонецЕсли; КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
45
NIGHTHUNTER
20.09.22
✎
12:20
|
Вот я что то пробовал делать через условное оформление, подлежит ли это исправлению? Доработке7 Я понял что это не работает вообще (
&НаСервере Функция УстановкаДоступностиПодготовленоПП(ПереданныйОбъект, ПереданноеСвойство, ПереданноеЗначение) Если Объект.Статус = ПредопределенноеЗначение("Перечисление.ХХХ_СтатусЛимита.НаПодготовкуПП") Тогда Если ПолучитьДополнительноеСведение(ПереданныйОбъект, ПереданноеСвойство, ПереданноеЗначение) Тогда //ЭлементОформленияПодготовленоПП = УсловноеОформление.Элементы.Добавить(); //ЭлементОформленияПодготовленоПП.Использование = Истина; //ЭлементОформленияПодготовленоПП.Оформление.УстановитьЗначениеПараметра("Доступность", Ложь); //// //ЭлементУсловияПодготовленоПП = ЭлементОформленияПодготовленоПП.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); //ЭлементУсловияПодготовленоПП.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Лимиты.Актуализировано"); //ЭлементУсловияПодготовленоПП.ПравоеЗначение = Ложь; //ЭлементУсловияПодготовленоПП.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; //ЭлементУсловияПодготовленоПП.Использование = Истина; //// //ОформляемоеПоле = ЭлементОформленияПодготовленоПП.Поля.Элементы.Добавить(); //ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных("Лимиты"); //// <- |
|||
46
NIGHTHUNTER
20.09.22
✎
12:45
|
Тут вот в одном месте я вижу, что я вообще вот так вот обрабатываю.
Галка ставится и сразу снимается, если не нужно ее оставлять. Предыдущий один из столбцов если без галки. &НаКлиенте Процедура ЛимитыОплаченоПриИзменении(Элемент) Если НЕ Элементы.Лимиты.ТекущиеДанные.Актуализировано = Истина Тогда Элементы.Лимиты.ТекущиеДанные.Оплачено = Ложь; КонецЕсли; КонецПроцедуры |
|||
47
vicof
20.09.22
✎
13:03
|
"Тут вот в одном месте я вижу, что я вообще вот так вот обрабатываю"
Раздвоение личности? |
|||
48
NIGHTHUNTER
20.09.22
✎
13:10
|
(47) нужно разобрать как это все делать что бы все работало.
И всеми возможными способами и через условное оформление тоже. Муторные разные условия, голову забивают. забивается видимо. |
|||
49
NIGHTHUNTER
20.09.22
✎
13:40
|
Подскажете как управлять доступностью полей условным оформлением?
Может какие то советы исходя из (44), (46). |
|||
50
NIGHTHUNTER
20.09.22
✎
14:42
|
В (44), (46) есть какие то ограничения.
Когда отображаются пустые квадратики в полях булево, которых не должно быть. Или вдруг эти квадратики пропадают. В условном оформлении если создаать его программно, нет таких побочных эффектов? |
|||
51
vicof
20.09.22
✎
15:38
|
"Или вдруг эти квадратики пропадают."
Магия. |
|||
52
vicof
20.09.22
✎
15:39
|
(49) "как управлять доступностью полей условным оформлением"
https://www.google.com/search?q=как+управлять+доступностью+полей+условным+оформлением&oq=как+управлять+доступностью+полей+условным+оформлением&aqs=chrome..69i57j0i30i546j0i546.319j0j7&sourceid=chrome&ie=UTF-8 |
|||
53
KJlag
20.09.22
✎
15:55
|
дойдет ли тема до 999? :thinking:
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |