Имя: Пароль:
1C
 
Свертываемая Группа ЗУП 3.1 (в документе Ответ на запрос в СФР)
0 Gucci76
 
26.05.24
11:04
Здравствуйте.
Не могу в расширении добиться, чтобы свертываемая группа была раскрыта

С помощью кода устанавливаю значение раскрыта:

Элементы.УсловияИсчисленияГруппа.Показать();


Смотрю в отладчике в самом последнем месте кода в конце процедуры
&НаКлиенте
Процедура Подключаемый_ОбновитьКоманды()
	ПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Объект);
КонецПроцедуры

После этого не выполняется код

В отладчике
Элементы.УсловияИсчисленияГруппа.скрыта() = ЛОЖЬ


Открывается форма, а группа свернута
1 Gucci76
 
26.05.24
10:51
Видимо никто не сталкивался ((
2 SleepyHead
 
27.05.24
06:31
Группа эта появляется при появлении определенных условий. Непонятно, вы в какой момент ее "раскрываете". Может быть, просто не в тот момент?
3 Gucci76
 
27.05.24
12:09
(2) Добрый день, Владимир
Вроде для ответа на Больничный лист она всегда есть.
Только я заметил, что она свернута/развернута в зависимости от пользовательский действий - если пользователь развернул группу и закрыл документ, то при открытии она будет развернута. И программное ее изменение не учитывается.
Есть идея выделять ее , если БЛ оформлен на инвалида (часто клиенты забывают указать 45 код для БЛ и им потом ФСС запросы шлет)
4 SleepyHead
 
27.05.24
13:40
(3) Попробуйте программно сместить фокус на один из элементов этой группы, если больничный на инвалида
5 АннаО
 
27.05.24
16:30
Группа свернута или скрыта???
6 АннаО
 
27.05.24
16:50
Элементы.УсловияИсчисленияГруппа.Показать() - что-то такое должно быть, а не Элементы.УсловияИсчисленияГруппа.скрыта() = ЛОЖЬ
7 Гена
 
27.05.24
16:57
(5) Автор имеет ввиду Поведение свойства группы на форме дока:
https://i.ibb.co/Zz98SzQ/2024-05-27-16-53-11.png

Сейчас стоит "Свертываемая" и часто при открытии не видно, что для инвалидов внутри есть элемент, который надо выбрать как 45.
8 АннаО
 
27.05.24
17:12
(7)Вроде тогда должно сработать, если при открытии (создании на сервере - точнее) написать Элементы.УсловияИсчисленияГруппа.Показать()
9 Гена
 
27.05.24
17:20
(8) А не проще выбрать поведение Обычное и пусть всегда будет развёрнуто?
10 Gucci76
 
27.05.24
19:07
Спасибо всем за интерес к теме!
(6) Элементы.УсловияИсчисленияГруппа.Показать() этот код я использую, чтобы программно раскрыть группу.
А это Элементы.УсловияИсчисленияГруппа.скрыта() = ЛОЖЬ мне показывает отладчик в самом последней выполняемой строке (после ее выполнения открывается форма в предприятии)
Но когда форма открывается группа свернута ((((
11 Gucci76
 
27.05.24
19:08
(7) Все верно. Я хочу раскрыть эту группу и "подсветить" ее реквизиты, если для инвалида не указан 45 код
12 Гена
 
27.05.24
19:28
(10) Глянул в типовой. Ложь - это для начального состояния группы. Проверил, если просто Создать новый док, раскрыть группу, и закрыть без записи и сохранения. То типовая запоминает и в дальнейшем даже при переоткрытии предприятия будет всегда показывать раскрытой данную группу.
13 Волшебник
 
27.05.24
19:39
(12) Гена, забудьте слова "типовая". Дышите!
14 Gucci76
 
27.05.24
20:07
(10) Такой сценарий и у меня.
Но хотелось бы привлечь внимание пользователя на реквизитах свернутой группы - и при необходимости ее раскрывать
15 Gucci76
 
27.05.24
20:09
(4) Код в расширении
Этаформа.ТекущийЭлемент = Элементы.УдостоверениеЛичностиВид;
не делает активным этот элемент.
16 Волшебник
 
27.05.24
20:12
(15) Забудьте про расширения
17 Gucci76
 
27.05.24
20:16
(16) почему? Удобно исправлять и дорабатывать
18 Волшебник
 
27.05.24
20:22
Закрываем тему?
19 Gucci76
 
27.05.24
20:28
(16) Перенес код в процедуру при созданииНаСервере (не расширение) - все равно не раскрывается ((
20 Gucci76
 
28.05.24
12:24
Я разобрался.
Если кому интересно - в хранилище значений хранится прошлое состояние свертываемых групп. Плюс создаются новые группы (у них есть суффиксы "_1" - можно увидеть в ЕЩЕ - ИЗМЕНИТЬ ФОРМУ)
21 Gucci76
 
28.05.24
13:40
С раскрытием разобрался.
Но не могу подсветить поле формы.
Есть условное оформление этого элемента.
Пытаюсь его в отладчике отключить, изменяя флаг Использование на ложь, но все равно подсветить не получается ((((
22 Gucci76
 
28.05.24
15:03
Условное оформление документа создается программно.
Если нужный элемент исключить совсем из программного условного оформления, то подсветка работает

Если пытаюсь доработать программное условное оформление - добавляю
ОформлениеПоля.Оформление.УстановитьЗначениеПараметра("ЦветФона", Новый Цвет(255,157,100));

Но оно не срабатывает ((((
23 Gucci76
 
28.05.24
17:05
Разрыв мозга!
Не разберешься с тем, что наворотили 1С.

Программно удаляю условное оформление - все равно не подсвечивает элемент формы.
Но если в него выбираю значение, то есть выделение цветом. И если потом стираю, то опять цвет есть.
А мне то надо до редактирования подсветить - привлечь внимание к этому реквизиту.
ЖЕСТЬ!
24 SleepyHead
 
28.05.24
17:27
(23) Смените бухгалтера, который забывает ввести условия исчисления.
25 Gucci76
 
28.05.24
17:36
(24) Нет таких полномочий ))
Нереально запомнить все моменты, которые надо заполнить.
Особенно если не очень много инвалидов.
Хотел помогатор сделать для бухов. Но придется по другому подойти к этому моменту. Не могу побороть 1С (((
26 SleepyHead
 
28.05.24
17:37
(25) Чек-лист к задаче и обязать проставлять "исполнено".
27 SleepyHead
 
28.05.24
17:38
(25) "Нереально запомнить все моменты, которые надо заполнить."

Истинная правда. Поэтому я делаю первый раз все сам, создаю чек-листы, а потом е*утех, кто не проставляет флажки исполнения.
28 Gucci76
 
28.05.24
17:39
Пусть сами думают как им работать.
Я по возможности стараюсь облегчить работу с ЗУП.
29 Gucci76
 
28.05.24
17:42
(28) Прям как в армии )))
Я более дружелюбный
30 Gucci76
 
28.05.24
17:56
Кстати, в документе Больничный нашел процедуру, которая для инвалида устанавливает код исчисления автоматически.
Тогда как же получается, что клиенты забывают проставлять этот код?
Первое что приходит - что процедура работает при интерактивном выборе сотрудника. А если БЛ создается при обмене с СЭДО, то эта процедура не срабатывает.
31 Гена
 
28.05.24
18:02
Не по тому пути пошли. Плюньте на группу. Сделайте расширением всплывающее предупреждение, что сотрудник инвалид и необходимо проставить коды в такой-то группе. Это более действенный способ.
Всё равно надо вручную отслеживать предел в 5 месяцев по году для болящего.
32 Gucci76
 
28.05.24
18:03
(31) Я сделал подсказку ввода, но она не очень яркая
33 SleepyHead
 
28.05.24
18:04
(28) "Пусть сами думают как им работать.
Я по возможности стараюсь облегчить работу с ЗУП."

Они и придумают - на ваши подсказки никто не обратит внимание.
34 SleepyHead
 
28.05.24
18:05
Это не техническая проблема.

"Автоматизируя бардак, вы получаете автоматизированный бардак". Как раз тот случай.
35 Gucci76
 
28.05.24
18:05
Чтобы обратили - надо не давать провести документ )))
Но это может быть чревато
36 Гена
 
28.05.24
18:06
(32) Вы программист или как? Сделайте не подсказку, а незакрываемое предупреждение, крупно и ярко-красным.
37 SleepyHead
 
28.05.24
18:08
(36) Тогда уж Отказ=истина и перехватить ПередЗаписью
38 Гена
 
28.05.24
18:09
(37) Вам виднее. Нет кода 45 = хрен, а не проведение )
39 Гена
 
28.05.24
18:21
Если кто будет возникать на запрет, то держите свежайший арбитраж:
https://www.v2b.ru/documents/postanovlenie-arbitrazhnogo-suda-severo-kavkazskogo-okruga-ot-24-04/

Там излишне оплаченный БЛ инвалида содрали через суд с предприятия, которое забыло ставить кодировку 45.
40 Gucci76
 
28.05.24
20:42
(36) Я стараюсь минимально править конфу.
(39) Спасибо за ссылку.
Запомню. Покажу клиентам.
41 SleepyHead
 
29.05.24
05:03
(38) И тогда уже перехватывать события модуля ПередЗаписью, в расширении это работает как-то более предсказуемо, чем в форме.

А для так называемой "подсветки" использовать ОбщегоНазначенияКлиентСервер.СообщитьПользователю(), там можно указать поле формы, на которое встанет фокус при сообщении об ошибке.