fixin (fixin) wrote,
fixin
fixin

Искусство редактирования справочников в типовых

В процессе сопровождения иногда проще дать отдельную форму для редактирования справочников, чтобы не тратить время на изменения формы при обновлениях 1с.

Кроме того, такая форма может быть максимально оптимизирована под АРМ конкретного пользователя.

Рассмотрим пример, когда в справочник пользователей добавлены два поля для RFID-сканеров: ИспользоватьRFIDВСогласованиях и RFIDПропуска.

Создаем внешнюю обработку, на которую размещаем список пользователей:


 
Список пользователей – это динамический список, источник данных  – запрос, основная таблица – справочник «Пользователи»:


ВЫБРАТЬ
 Пользователи.ФизическоеЛицо,
 
Пользователи.ИспользоватьRFIDВСогласованиях,
 
Пользователи.RFIDПропуска,
 
Пользователи.Ссылка
ИЗ
 
Справочник.Пользователи КАК Пользователи

 

К сожалению, в управляемых формах нельзя редактировать непосредственно в списке, поэтому при выборе строки будем открывать сокращенную форму элемента справочника,  описываемую в этой же обработке.

Таблица СписокПользователей – только просмотр.

В форме списка реализовано только событие выбора:


&НаКлиенте
Процедура СписокПользователейВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
 
П = Новый Структура("Ключ", ВыбраннаяСтрока);
 
ОткрытьФорму("ВнешняяОбработка.РедактированиеRFIDКодовПользователей.Форма.ФормаЭлемента", П);
 
СтандартнаяОбработка = ложь;
КонецПроцедуры

При выборе строки списка открывается форма элемента, размещенная в этой же обработке:


 
В модуле обработки нужно добавить её описание:



Функция СведенияОВнешнейОбработке() Экспорт

 
ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.1.3.1");

 
ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка();
 
ПараметрыРегистрации.Версия = "2017-02-14";
 
ПараметрыРегистрации.БезопасныйРежим = Ложь;

 
НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
 
НоваяКоманда.Представление = НСтр("ru = 'Обработка ""Редактирование RFID кодовпользователей""'");
 
НоваяКоманда.Идентификатор = "РедактированиеRFIDКодовПользователей";
 
НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();
 
НоваяКоманда.ПоказыватьОповещение = Истина;

 Возврат
ПараметрыРегистрации;
КонецФункции

Tags:
Subscribe

Posts from This Journal “1С” Tag

  • Коварный ввод на основании в УФ

    На основании документа Х можно вводить два документа А и Б. Но конкретный вид документа зависит от содержимого документа Х (вида операции). Решили…

  • Правило назначения ролей – не запрещать!

    Есть одно правило назначения ролей пользователей, которое выработано эмпирически и скорее обосновано чутьём. Нельзя делать запреты пользователям с…

  • Гуру-тест 1С: обмануть при записи

    Итак, задачка. Нужно, чтобы при записи новая версия объекта не поместилась в базу данных, но при этом не была сгенерирована ошибка или отказ. Случай…

  • Долгострои 1С

    Если вы хотите узнать, почему программисты 1С любят платформу 1С и местами ненавидят разработчиков этой платформы, то сейчас я Вам расскажу. Уже 10…

  • Ловкость рук и обработка результата запроса

    Как то я пообещал заказчику, что обработаю определенный список документов, но забыл, что эти документы были в базе с управляемыми формами. Как быть?…

  • 1С и искусственные серверные барьеры

    Заметил, что в управляемых формах 1С принуждает программистов к плохой архитектуре решений. Вкратце упомяну, что теперь большинство внешних…

  • Особенности белорусского Налогоплательщика

    Взял подработку у одного знакомого чувака из Беларуси. Платил мало (я то беру 1500 в час, а там по 800), но знакомый хороший, грех было отказывать,…

  • 1С отрицает очевидное

    Работаю с флагманом 1С, конфигурацией ERP. Вижу, что 1С прошило всю конфигурацию обращениями к модулям, где разработчик, внедряющий 1С может…

  • Как обмануть макет 1с?

    В 1С можно менять макеты в режиме 1с Предприятия. Но 1с-овцы не подумали, что пользователи не захотят видеть некоторые поля. Если просто удалить…

Buy for 40 tokens
Отставить педрилование! Дело-то серьёзное. Абы в чем, в рваном спорткостюме, пусть ходят на свиданки неандерталы с челябинских окраин. А приличному человеку - стыдно, поэтому у меня с собою было привезено новое/фирменное. Да, это было уже пятое свидание с моим любимчиком. Чёрт-те знает где, на…
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 36 comments