#0
by vmv
Постановка задачи: существует некая форма подбора для формирования элемента штатного расписания, где текстовые и агрегатные реквизиты расположены вертикально сверху вниз и по порядку, то есть пользователь может только на клавиатуре пройтись по форме, выбирая реквизиты, и элемент можно записывать(если набор подбирается впервые или дополняется необязательными реквизитами)или инициализировать этим составным значением поля в других объектах. Примерный вид таков. ------------ Профессия по классификатору ---------------- Наименование:............................................ Профессия:............................................... ------------ Категория оплаты----------------------------- Категория должности:..................................... Квалификация:............................................ Тарифная сетка:.......................................... Группа оплаты:........................................... ------------ Специфика трудовых отношений------------------ График работы:........................................... Условия труда:........................................... ----- Должностые иструкции и характеристики----------------- :Должность кадрового плана(регламентированная).............. :Чего-нибудь ещё............................................ ! . Как видим, реквизиты этой формы сгруппированы в группы формы согласно логике их использования и зависимости друг от друга. . Например, при выборе "КатегрияДолжности = Специалисты" выпадает список отбора для этой категории из справочника "ТарифныеРазряды" = (1-ой категории, 2-ой категории, без категриии). При выборе "КатегорияДолжности = Рабочие чего то там", выпадает список отбора из "ТарифныеРазряды" = (1-го разряда, 2-го разряда, ...) и т.д. С тарифными сетками и группами оплаты механизм тот же, но немного сложнее. В итоге после заполнения пользователем реквизитов группы "Категория оплаты" по этому набору создается элемент справочника "КатегорияОплаты", который иденцифицирует штатную единицу вкупе с Профессией и прочими. Вот, вроде по структуре должно быть понятно. Зачем так, почему, как оптимизировать, делать защиты - это моя задача и в принцепе решена) Суть проблемы: с этой формой будет работать большое количество пользователей кадровой и социальных служб, многие удаленно. Ес-но, у всех разная квалификация, степень подготовки и пр., т.е. няньку к каждому не посадишь. Посему, я справа в этой форме прикрутил контестную справку на панель с HTML-документом, которая обнавляется в процедуре модуля формы ОбработкаОбновления когда какой-либо реквизит изменен и т.д. Особо умные её могут отключить, пока неуверенные могут внимать ей, когда она "ведет пользователя за руку". Корень проблемы - справка вываливается ВСЯ с инструкциями по действиям по всем реквизитам с выдачей, условно говоря, таких подсказок: (Рекомендуем..., такой выбор некорректен...., это не может быть пустым..., воспользуйтесь...). Это режим выдачи справки "Подробно". А я хочу сделать ещё режим справки "Свернуто", когда если пользователь переместил курсор или прыгнул на реквизит из группы "Категория Оплаты" или "Специфика трудовых отношений", то выдавалась бы секция справки только для этой группы или даже только для этого реквизита. Но как поймать ЭтаФорма.ТекущийЭлемент когда пользователь просто перемещается по реквизитам, не входя в редактирование, автоподбор и прочее, влекущее обновление формы? В 7.7. это решалось просто, текст с функцией на форму и каждый шорох на форме ведет тебя в тело этой функции, где видишь текущий элемент. А тут, в 8.1, просто ппц какой-то, куча методов и все не могут решить эту простую задачу. Оповещения вроде тут не катят, ведь у меня нет подчиненных форм, пользователь просто бродит по форме и вполне обосновано хочет видеть инструкции для того реквизита где он просто спозиционировался. Возможно я глуп и так не увидел очевидное. Даже если это невероятно, просьба просветить и помочь решить проблему, ведь её решение логично и необходимо)
#2
by vmv
1 спасибо, эти знания давно проштудированы и указанную в сабже проблему не рашают. Я ж написал, отборы, автоподстановки и прочее - все решено. Проблема кратко: как, при перемещении пользователя по реквизитам формы, не влекущим обновление формы или изменение значений элементов диалога - однозначно определить на каком реквизите спозиционировался пользоветель и мечтает, что ему сейчас выпадет справочка по действиям с этим реквизитом?
#6
by ШАВ
Можно попробовать использовать обработчик ожидания, в котором проверять не изменился ли текущий элемент с последнего вызова этого обработчика.
#8
by vmv
медоды формы: ОбновлениеОтображения, ПриИзмененииДанных методы элементов диалога: ПриИзменении, НачалоВыбора, Открытие, АвтоподборТекста - НЕ КАТЯТ, так как предполагают какую-то модификацию элементов диалога. Абстагируемся и предположим, что форма имеет ещё один встроенный метод ПриПозициоированииЭлементаДиалога, который не предполагает вход в режим редактирования, изменения, автоподбора и прочего, а сигнализирует о переходе пользователя на конкретный реквизит. Тогда моя проблема решается просто Я начинал флудить ещё 10 лет назад, не напрягайтесь, все а анналах) , Использование обработчика ожидания тоже мне пришло в голову за неимением стандартных альтернатив. Но это метод через одно место, будет печально, если он окажется единственным)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- v7: Настройка расходов в УСН
- Копирование регистра сведений
- Можно ли сдавать на 1С:Специалист по ЗУП без "платформы"
- Как получить записи регистра сведений по отбору?
- 1C:V7 starter program (for SQL) - обнаружена ошибка. Че делать?
- Как сохранить данные внешней обработки?
- По поводу регламентированной отчётности
- Вылетает 1С при печати документа или сохранении его в файл
- Где находится "Модуль расчета" в 1с8 , соответствующий модулю расчета в 1c7.7?
- ТСД CipherLab 8001 Загрузка прошивки
- Как получить номер следующего нового документа?
- v7: Получение остатков в разрезе документов-поступлений
- Запись в регистр остатков без регистратора
- как написать такой запрос в 1С 7.7 ?
- Производственный календарь
- Неликвиды
- Методика оценки затрат часов на проект.
- Проверка на вхождение значения в массив?
- Отработанные часы по фактическим календарным дням в табеле учета рабочего времени
- Округление в табличной части