![]() |
|
Открыть запись регистра сведений на обычных формах Ø (Волшебник 06.09.2024 09:43) |
☑ | ||
---|---|---|---|---|
0
НоваяВолна
05.09.24
✎
11:25
|
Помогите, что-то туплю. На форме есть табличная часть в которой заполняются данные из регистра сведений. Колонки Сотрудник, Дата1, Дата2, Дата3 ... и т.д. Сам регистр с периодичностью "В пределах дня" и с одним измерением - Сотрудник
Надо при выборе ячейки с датой открывать Форму записи РС. Делаю так: КодКлючЗаписи = Неопределено; Отбор = Новый Структура; Отбор.Вставить("Период", ДатаКолонки); Отбор.Вставить("Сотрудник", ВыбраннаяСтрока.Сотрудник); Рег = РегистрыСведений.ГрафикиРаботы; КлючЗаписи = Рег.СоздатьКлючЗаписи(Отбор); Если НЕ КлючЗаписи = Неопределено Тогда Параметрыформы = Новый Структура("Ключ", КлючЗаписи); Форма = Рег.ПолучитьФорму("ФормаЗаписи", , Параметрыформы); // ОткрытьФорму("РегистрСведений.СпискиЛиц.ФормаЗаписи", Параметрыформы); // такая конструкция сработала бы на управляемых формах, а обычных ее нет Форма.Открыть();; КонецЕсли; Но в результате открывается пустая форма записи РС, хотя в ключе вижу и Сотрудника и Дату. Есть закомметированная строка кода, она бы сработала на УФ, а в ОФ такой команды нет. |
|||
1
Ненавижу 1С
05.09.24
✎
11:29
|
В ОФ надо создать менеджер записи и у него вызвать получить форму
|
|||
2
НоваяВолна
05.09.24
✎
12:03
|
(1) Благодарю за помощь,вот так сработало:
КлючЗаписи = Неопределено; Отбор = Новый Структура; Отбор.Вставить("Период", ДатаКолонки); Отбор.Вставить("Сотрудник", ВыбраннаяСтрока.Сотрудник); Рег = РегистрыСведений.ГрафикиРаботы; КлючЗаписи = Рег.СоздатьКлючЗаписи(Отбор); МЗ = РегистрыСведений.ГрафикиРаботы.СоздатьМенеджерЗаписи(); МЗ.Период = ДатаКолонки; МЗ.Сотрудник = ВыбраннаяСтрока.Сотрудник; МЗ.Прочитать(); МЗ.ПолучитьФорму("ФормаЗаписи", ,КлючЗаписи ).Открыть(); |
|||
3
Ненавижу 1С
05.09.24
✎
15:31
|
Очень странный ключ уникальности. Он точно нужен?
|
|||
4
НоваяВолна
05.09.24
✎
23:48
|
(3) Моя задача отобрать запись в РС по Сотруднику (измерение РС) и дате в табличной части формы, которую я приравниваю к Периоду РС.
Поэтому Отбор у меня по Периоду и Сотруднику. Намекните, в чем вы видите ошибку. Регистр строил сам. Его задача - учет работы сотрудников по датам. Что-то вроде мини табеля рабочих дней, прикрученных к УТ 10.3, сильно переписанной, с полным фаршем говнокода (два, а то и три запроса в Цикле, а то и в друх циклах... ) Основная задача в данном случае - визуализация заполнения графика. Плюс его хранение в регистре, исключая дублирование и удаление данных. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |