Страница 1 из 1

Список договоров с предустановленным фильтром

Добавлено: 04 окт 2019, 16:14
Buddy
Коллеги, мне нужно вывести список договоров с предустановленным фильтром по виду договора.
Использую интерфейс GetSomeDogovor, в параметрах передаю нужный мне вид.
Возникают две проблемы:
1. А если мне нужно отобразить договора нескольких видов?
2. При открытии интерфейса в окне фильтров получаю такую картину:
Изображение
т.е. если вид документа я передал параметром, то в окне фильтров я его изменить уже не могу. А хотелось бы иметь такую возможность.

Re: Список договоров с предустановленным фильтром

Добавлено: 07 окт 2019, 10:34
zna
Если в параметрах GetSomeDogovor нет множественного выбора видов договоров, то нужную фильтрацию можно попытаться сделать самому путём докомпиляции этого интерфейса. Наложить bounds, если есть индекс, либо conditionforleave в противном случае при инициализации этого интерфейса. У меня так сделано в двух интерфейсах, попытался бы и здесь также попробовать. Имхо, может, быть и более другой путь..
Да, вот ещё вариант: написать диалог, в котором предусмотреть нужные виды договоров, и из него дёргать GetSomeDogovor с нужным видом.

Re: Список договоров с предустановленным фильтром

Добавлено: 07 окт 2019, 12:11
Den
VipInterface GetSomeDogovor релизует IGetSDogParameters.
Можно попробовать воспользоваться запуском через этот объектный тип , вызвав метод Run.

Код: Выделить всё

#include DogFuns.vih

Interface TestPickDog;
 var oGetSDog: GetSomeDogovor;

 create view
 ;

 HandleEvent
   CmInit:{
           oGetSDog.SetGtSDogParameter('GetSDog_VidDogChangeEnabled', 1); // устанавливаем предварительно, что можно менять вид договора (по умолчанию нельзя, видимо, если задан первый параметр Run)
           var cDog : comp ;
           if oGetSDog.Run(word(7),//вид договора
                          word(2), // исполняемые договора
                          word(2), // на закупку
                          word(1), // выбор соглашений и договоров
                          true,   // одиночный выбор
                          cDog,    //
                          false,   // иерархическое представление
                          comp(0))
           {
           }
          }
 end;
end.


Re: Список договоров с предустановленным фильтром

Добавлено: 08 окт 2019, 14:52
Buddy
Ок, с этим я разобрался, спасибо, Den.
Но возникла другая проблема - при открытии интерфейса ему параметром передается вид договора (KATVIDD.VIDDOG), а это поле не уникальное, т.е. у дочерних записей это поле равно родительскому.
А мне как раз нужно фильтровать договора по одному из дочерних видов.
Что подскажете?

Re: Список договоров с предустановленным фильтром

Добавлено: 08 окт 2019, 16:33
Den
установить сразу фильтр по нескольким KATVIDD.VIDDOG ?
Быстрее всего, дорабатывать стандартный функционал нужно на эту тему, ну или Alter делать пытаться GetSomeDogovor, чтобы при загрузке достичь этого