как ограничить выбор счетов 1с
1С. Ограничение выбора значений перечисления
У документа Рассылка электронной почты пользователю необходимо ограничить выбор статуса до Подготоваливается и Подготовлена. Статусы Выполняется и Завершена будут устанавливаться регламентным заданием в момент выполнения рассылки и ее завершения. Разбираемся с ограниченим выбора значений перечисления.
Задача
Имеется документ Рассылка электронной почты, при создании документа автоматически устанавливаетс статус Подготавливается, после подготовки рассылки пользователь устанавливает статус Подготовлена. Рассылка выполняется регламентным заданием с момента указанным как дата документа, в моент рассылки устанавливается статус Выполняется, по заверешении — Заверешена. Пользователю необходимо ограничить выбор статуса до Подготоваливается и Подготовлена.
Решение
В интеренетах для ограничения доступных значений перечислений зачастую предлагают выполнять это непосредственно в форме. Но для этого в платформе предусмотрен целый механизм, потому не будем костытировать.
Для органичения необходимо в процедуре ОбработкаПолученияДанныхВыбора() модуля менеджера перечисления указать доступные данные выбора в переменной ДанныеВыбора. Для этого в переменную ДанныеВыбора поместим список допустимых значений.
Так же не забываем переменной СтандартнаяОбработка присвоить значение Ложь, иначе в списке выбора будут доступны все элементы + указанные в переменной ДанныеВыбора. Проверяем результат:
Теперь даже если будет указан не доступный для пользователя статус, он будет корректно отображаться:
Как ограничить выбор элемента справочника одной группой при клавиатурном вводе
Для поля формы создал событие НачалоВыбора.
Процедура ограничивает возможность выбора элемента справочника по родителю.
Все работает, но при вводе в поле с клавиатуры сохраняется возможность выбора любого элемента справочника.
Подскажите пути решения. Заранее спасибо.
Здравствуйте!
В обработчик события «ИмяПоляОкончаниеВводаТекста» Можно добавить отбор :
МассивОтбора = Новый Массив();
ПараметрВыбораДляВида1 = Новый ПараметрВыбора(«Отбор.ПометкаУдаления»,Ложь);
ПараметрВыбораДляВида2 = Новый ПараметрВыбора(«Отбор.Родитель»,ИмяРодителя);
ФиксированныйМассивОтбора = Новый ФиксированныйМассив(МассивОтбора) ;
(3) Agapov_Stas, (4) soleil, именно для удобства ввода я и включил возможность редактирования текста.
ДокументМенеджер. (DocumentManager. )
ОбработкаПолученияДанныхВыбора (ChoiceDataGetProcessing)
Синтаксис:
Возникает на сервере перед стандартным формированием списка при вводе по строке, автоподборе текста и быстром выборе, а также при выполнении метода
(11) Agapov_Stas, Аргументируйте ОбработкаПолученияДанныхВыбора это обработка модуляМенеджера срабатывает при изменении поля выбора на форме
Тип: СписокЗначений.
В обработчике можно сформировать и передать в этом параметре данные для выбора. При этом параметр должен быть установлен в Ложь.
Для программного формирования списка выбора необходимо переопределить обработчик события
ОбработкаПолученияДанныхВыбора менеджера объекта. В обработчик передается набор параметров,
определяющих условия формирования списка выбора.
Набор параметров представляет собой структуру, которая содержит:
· строку поиска — текстовую строку, которая содержит текст, который пользователь ввел в поле ввода. Данный
параметр присутствует всегда.
· отбор — структура, которая описывает отбор так, как его описывает параметр формы Отбор для расширения
формы для динамического списка. Данный параметр присутствует всегда.
· свойство, которое указывает режим выбора групп и элементов (передается только для иерархических списков).
· кроме этого, в структуре передаются элементы, которые заданы в свойствах элемента формы Связи параметров
выбора и Параметры выбора.
Кроме того, в обработчик передается переменная, в которую следует вернуть сформированный список выбора и
флаг стандартной обработки, который определяет поведение системы после того, как произойдет выход из
обработчика.
Если разработчик устанавливает флаг стандартной обработки в состояние Ложь, то ему необходимо самому
полностью формировать список выбора (учитывая ограничение в 50 отображаемых элементов).
Если флаг стандартной обработки установить в значение Истина, то можно представить системе возможность
сформировать список выбора, но при этом можно модифицировать параметры выбора (добавить дополнительные
значения отбора, изменить режим выбора групп и элементов и т.д.).
Установка отбора для поля ввода управляемой формы через ПараметрыВыбора (без переопределения событий «НачалоВыбора», «Автоподбор»)
Для ограничения вывода элементов какого-нибудь справочника или перечисления при редактировании поля ввода можно воспользоваться программной установкой свойства элемента формы «ПараметрыВыбора», которое доступно, начиная с версии платформы 8.2.
Данное свойство представляет собой фиксированный массив элементов типа «ПараметрВыбора», позволяет организовать простую фильтрацию доступных для выбора элементов в поле ввода. При этом фильтрация будет работать как при автоподборе, так и при открытии формы выбора.
Рассмотрим пару типовых случаев применения этого свойства для установки отбора:
Отфильтруем ввод сотрудника по значению реквизита «Организация» на форме документа.
Фильтрация будет установлена у поля ввода «СписокСотрудниковСотрудник», в таблице документа.
Для выбора будут доступны только те сотрудники, у которых значения реквизита «Организация» совпадает со значением, установленным в реквизите «Организация» документа.
Вот так будет выглядеть процедура установки фильтра:
Данная процедура вызывается в событии формы «ПриОткрытии» и в событии «ПриИзменении» поля ввода «Организация».
Не всегда достаточно одного значения сравнения, следующий случай продемонстрирует, как накладывать отбор по списку ссылок.
Фильтрация будет установлена у поля ввода «Статус».
Если у сохранённого документа установлен статус «Черновик», то список доступных элементов перечисления «Статусы» будет ограничен значениями «Черновик» и «НаРассмотрении».
Данная процедура вызывается в событиях формы «ПриСозданииНаСервере» и «ПослеЗаписиНаСервере»
Кроме этого в параметрах выбора можно устанавливать свои нетиповые свойства:
Данный параметр потом можно будет извлечь из параметров формы выбора справочника «Сотрудники» (в событии «ПриСозданииНаСервере»), а также из параметров в обработчике «ОбработкаПолученияДанныхВыбора» в модуле менеджера справочника «Сотрудники».
ОСВ по счету
Подскажите, как отдельных пользователей ограничить только несколькими счетами?
Не совсем понятно, что значит «ограничить только несколькими счетами».
Просмотр отчета только по некоторым счетам определенного плана счетов, что ли? Не могу представить такой ситуации, в которой понадобились бы такие ограничения.
Через редактор пользовательских прав можно, вроде бы, только ограничить доступ отдельных пользователей к отдельным планам счетов.
Остается, похоже, только программно определять в модуле отчета (ОСВ по счету) пользователя, работающего с базой, и тогда уже давать/не давать производить выбор определенных счетов.
Аналогичные изменения придется вносить и в дюжину других отчетов, через которые можно получить те же данные, что и через ОСВ по счету. К тому же, кроме типовых могут быть внешние отчеты.
Ограничение формирования стандартных отчётов некоторым набором счетов
Специальные предложения
Обновление 30.11.10 08:54
Код открыт Не указано
См. также
Руководство для новичков. Написав статью http://infostart.ru/public/238584/, я понял, что многие не понимают того, что написано. Поэтому в этой статье постараюсь более подробно остановиться на азах и без кода на вражеском языке (C#)
27.01.2016 85696 Serginio 116
Печать таблицы значений в 1С 7.7 при отладке
Функция выводит таблицу значений в табличный документ. (v7.7) Особенно полезно при отладке. Не нужно вносить изменения в код, вызываем функцию как вычисляемое выражение при останове. Если таблица обрабатывается в несколько этапов, можно вывести её после каждого и визуально проследить эволюцию.
30.06.2021 1367 Zoltan_Black 11
[ПОЛЕЗНЯШКА 7.7] Как запретить максимизацию формы
Программный прием запрета максимизации формы
18.04.2021 655 CheBurator 8
Расчет страховых взносов в 1С 7.7 «Учет и отчетность предпринимателя, ред. 1.2» с апреля 2020
В этой статье описано, какие небольшие изменения можно внести в модуль документа Начисление налогов с ФОТ, чтобы правильно рассчитывались страховые взносы с 1 апреля 2020 г.
09.04.2020 13856 Юджин58 39
.Net в 1С. На примере использования HTTPClient, AngleSharp. Удобный парсинг сайтов с помощью библиотеки AngleSharp, в том числе с авторизацией аля JQuery с использованием CSS селекторов. Динамическая компиляция Промо
10.03.2016 58530 Serginio 33
Пример программного кода для вывода чеков на ККМ Штрих-М с передачей информации о маркированных товарах (лекарства).
10.02.2020 13936 vovaapril 34
Дистрибьюция 7.7. Часть 1. Жизненный цикл заявки покупателя. Одна заявка покупателя, много адресов доставки.
14.10.2019 5130 ksnik 14
Заполнение реквизитов документов из предыдущего документа
Функция для автоматического заполнения реквизитов документов.
04.02.2019 5620 drevilo 2
1С:Предприятие 7.7. Оптимизация. Промо
Разгоняем 1С:Предприятие 7.7. Выжимаем последние соки.
31.01.2009 49364 alexk-is 110
Проверка часового пояса
При использовании терминалок для удаленных баз, иногда при входе в базу данных необходимо исключить возможность входа пользователей с компьютеров с другим часовым поясом. Например, работают в Новосибирской базе с временем UTC +6 и пытаются зайти в базу с UTC +3.
16.05.2016 11542 kudenzov 3
[ПОЛЕЗНЯШКА, 7.7] Как посчитать итоги по документам черным запросом с изподвывертом?
Мелкая полезняшка, считает запросом итоговую сумму документов и количество документов.
12.03.2016 20250 CheBurator 18
.Net в 1С. Асинхронные HTTP запросы, отправка Post нескольких файлов multipart/form-data, сжатие трафика с использованием gzip, deflate, удобный парсинг сайтов и т.д.
Очень часто нужно при работе с HTTP сервисами или сайтами использовать Асинхронные HTTP запросы, отправку на сервер нескольких файлов, использование сжатия трафика. Эта статья про то, как этого легко добиться.
09.03.2016 33532 Serginio 22
Как уменьшить количество заблокированных объектов Промо
История о том как я решил пересобрать форму справочника клиентов и чем это все закончилось.
12.01.2012 15779 ShEvOvIcH 18
Пример HTTP запроса к УТМ ЕГАИС на платформе 1С 7.7
Запрос реализован на объекте ServerXMLHTTP из встроенной в Windows библиотеки MSXML, результатом запроса является XML объект DOMDocument из той же библиотеки MSXML со встроенным интерфейсом его обработки
16.12.2015 26868 Palmer1976 3
Экспорт нескольких MXL таблиц в один XLS файл, на отдельные листы. Простой алгоритм
23.11.2015 17857 etmarket 14
12.11.2015 48132 Serginio 36
Технология обновления нетиповых конфигураций 1С:Предприятия 7.7 Промо
Данная статья рассчитана на уже подготовленного пользователя, владеющего некоторыми навыками программирования и работы в конфигураторе. Статью можно использовать как поэтапное руководство к действию. Статья была написана для повышения качества работ выполняемых сотрудниками компании Информ Сервис при обновлении нетиповых конфигураций. Я надеюсь, что эта информация окажется полезной и для вас.
12.12.2008 64141 alexk-is 25
Процедура расшифровки ячейки таблицы в отчетах 1С 7.7
Хочу поделиться с вами универсальной процедурой для расшифровки ячеек печатной формы отчетов в 1С 7.7.