Критерии отбора 1С


Если у документа есть поле (реквизит), то по его значению можно отобрать все документы, в которых он встречается.

Это легко сделать с помощью запроса.

Вопросы начинаются, когда мы хотим отобрать разные документы по одному значению. Например, у нас есть контрагент (хороший парень) и мы хотим посмотреть все документы, которые были с ним оформлены – и отгрузки, и платежки.

Как это сделать?

 

Критерии отбора 1С

Критерии отбора 1С позволяют искать разные объекты 1С – справочники, документы — по значению.

Например в разных документах есть поле Контрагент. Мы можем сделать критерий отбора 1С ПоискПоКонтрагенту и находить любые документы, в которых указан определенный контрагент.

Критерии отбора 1С находятся в дереве объектов конфигурации в ветке Общие/Критерии отбора 1С.

В свойствах нужно указать тип значения, которое будем искать. Например – справочник контрагенты (если будем искать контрагента) или справочник договоры контрагентов (если будем искать договор).

После этого на закладке Состав нужно выбрать список справочников и документов, в которых нужно искать.

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

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

 

Использование критериев отбора 1С

После создания критерия отбора 1С его можно использовать в коде программ на языке 1С.

Рассмотрим пример:

  • Мы создали критерий отбора 1С
  • В типе мы указали Справочник.Контрагенты
  • В составе указали все документы, установив галочки на реквизиты шапки этих документов с названием Контрагент.

В тексте программы на языке 1С мы можем запрограммировать поиск всех документов по контрагенту следующим способом:
СписокДокументовКонтрагента = КритерииОтбора.ДокументыКонтрагента.Найти( ИскомыйКонтрагент );

Аналогичный поиск можно сделать через запрос со следующим текстом:

Запрос = Новый Запрос();
Запрос.ТекстЗапроса = "ВЫБРАТЬ Ссылка ИЗ КритерийОтбора. ДокументыКонтрагента( &ИскомыйКонтрагент )";
Запрос.УстановитьПараметр("ИскомыйКонтрагент", ИскомыйКонтрагент);

 


Проголосовать за этот пост:

1 Star2 Stars3 Stars4 Stars5 Stars (58 голосов, среднее: 4,53 из 5)
Загрузка...

Добавить комментарий