![]() |
|
Программное открытие доступности к полю табличной части документа | ☑ | ||
---|---|---|---|---|
0
NIGHTHUNTER
09.08.22
✎
04:28
|
У одного поля табличной части документа, имеющего тип перечисление в условном оформлении установлена доступность = ложь.
В случае если значение этого перечисления не заполнено. Необходимо дать пользователю, возможность изменения этого значения в этом поле. Данное условие в условном оформлении задавалось, для нескольких имеющихся последовательно заполняемых строк в документе. Можно ли как то задать что при вводе новой строки, не смотря на условное оформление, это поле устанавливать в доступность = истина? |
|||
1
rphosts
09.08.22
✎
05:24
|
только отключив условное оформление (удалив/изменив элемент условного оформления)
|
|||
2
NIGHTHUNTER
09.08.22
✎
08:52
|
(1) Вы имеете ввиду, удалив строку, в свойствах условного оформления формы, которая задает доступность = ложь?
http://joxi.ru/5mdKGW5uqlw5or Но я открыл ее для редактирования программно, - Если НоваяСтрока Тогда ОткрытьДоступностьПоляСостояние(); КонецЕсли; // <- КонецПроцедуры // <- &НаСервере Процедура ОткрытьДоступностьПоляСостояние() Элемент = УсловноеОформление.Элементы.Добавить(); ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.Втулки.Имя + "Состояние"); Элемент.Оформление.УстановитьЗначениеПараметра("Доступность", Истина); КонецПроцедуры // <- |
|||
3
Fish
гуру
09.08.22
✎
09:04
|
Какой-то бред. Сначала ставить запрет доступности, а потом пытаться его снять. Вы уж определитесь, нужна доступность или нет и в соответствии с этим уже настраивайте УО.
|
|||
4
mikecool
09.08.22
✎
09:07
|
(0) Доступность = Истина, когда Значение Не Заполнено пробовал?
|
|||
5
dmt
09.08.22
✎
09:18
|
(0) заводишь новый реквизит (колонку) формы в ТЧ "ЭтоНоваяСтрока", включаешь в условное оформление, заполняешь при добавлении строки
|
|||
6
NIGHTHUNTER
09.08.22
✎
10:43
|
Я сделал вот так
Если НоваяСтрока и Объект.Втулки.Количество() > 1 и Объект.Втулки[ИндексТекущейСтроки -1].Состояние = ПредопределенноеЗначение("Перечисление.ХХХ_СостояниеВтулокВПроизводстве.Выполнено") Тогда ОткрытьДоступностьПоляСостояние(); Иначе ЗакрытьДоступностьПоляСостояние(); КонецЕсли; но тут проблема, если добавляется строка, и это поле активно, как положено, то при добавлении следующей, оно не активно тоже как положено Но после оно блокируется и у той, что была предыдущей, и где была активность в этом поле это свойство влияет на всю колонку только? |
|||
7
NIGHTHUNTER
09.08.22
✎
11:00
|
если я делаю так, то не дает редактировать значения в предыдущей строке потом
Если Объект.Втулки.Количество() > 1 Тогда ИндексТекущейСтроки = Объект.Втулки.Индекс(Элементы.Втулки.ТекущиеДанные); Если НоваяСтрока и Объект.Втулки[ИндексТекущейСтроки -1].Состояние = ПредопределенноеЗначение("Перечисление.ХХХ_СостояниеВтулокВПроизводстве.Выполнено") Тогда ОткрытьДоступностьПоляСостояние(); Иначе ЗакрытьДоступностьПоляСостояние(); КонецЕсли; Иначе ОткрытьДоступностьПоляСостояние(); КонецЕсли; |
|||
8
dmt
09.08.22
✎
11:08
|
(6) у тебя доступность зависит от значения поля в предыдущей строке? решение все равно в (5): один раз заполни УО, потом рули значениями в строке
|
|||
9
NIGHTHUNTER
09.08.22
✎
11:16
|
(8) Пока сделал вот так
Если Объект.Втулки.Количество() > 1 Тогда ИндексТекущейСтроки = Объект.Втулки.Индекс(Элементы.Втулки.ТекущиеДанные); Если НоваяСтрока и Объект.Втулки[ИндексТекущейСтроки -1].Состояние = ПредопределенноеЗначение("Перечисление.ХХХ_СостояниеВтулокВПроизводстве.Выполнено") Тогда ОткрытьДоступностьПоляСостояние(); ИначеЕсли Не НоваяСтрока и Объект.Втулки[ИндексТекущейСтроки -1].Состояние = ПредопределенноеЗначение("Перечисление.ХХХ_СостояниеВтулокВПроизводстве.Выполнено") Тогда ОткрытьДоступностьПоляСостояние(); Иначе ЗакрытьДоступностьПоляСостояние(); КонецЕсли; Иначе ОткрытьДоступностьПоляСостояние(); КонецЕсли; да доступность зависит от значения в предыдущей строке |
|||
10
NIGHTHUNTER
09.08.22
✎
11:24
|
(5) А чем заполняю???? Мне нужно что бы было всегда доступно для редактирования поле строки, перед которой в нем выполнено. Вижу с (9) не всегда срабатывает, а должно!!!
|
|||
11
NIGHTHUNTER
09.08.22
✎
11:26
|
Почему тут, не дает редактировать, ранее введенное значение? Когда я ввел уже других несколько строк, и где нет доступности в этом поле.
|
|||
12
NIGHTHUNTER
09.08.22
✎
11:29
|
Почему тут (9) я не могу вернуться к редактированию предыдущего поля? Это и не получится?
|
|||
13
NIGHTHUNTER
09.08.22
✎
11:31
|
(9) можно вернуться только к редактированию этого поля, если начать редактировать рядом стоящее поле.
А в этом самом, уже никак не запустить редактирование? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |