Интерфейс GetBuhSchet: сохранение последнего выбора.

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
Irina_
Местный житель
Сообщения: 545
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Интерфейс GetBuhSchet: сохранение последнего выбора.

Сообщение Irina_ »

Здравствуйте.
Использую интерфейс множественного выбора счетов и с/сч. Запускаю так:
RunInterface('F_Buhschet::GetBuhSchet', cgiMulti, cPlansch, sGetSch, sGetSub);
Пользователь попросил сохранять последний выбор, чтобы не помечать с/сч заново. Если я правильно поняла, то в качестве 1-го параметра надо использовать cgiMulti + cgiNotClear. Вроде действительно выбор сохраняется, это видно по наличию пометки при открытии списка счетов и с/сч, но имею следующую проблему. Мне надо подсчитать количество выбранных с/сч, но только по определенным счетам (пользователь может выбрать и ненужные счета). Пробую подсчитать данные непосредственно по ТП PickBuh в Loop, но получаю 0, хотя ранее при запуске интерфейса без сохранения выбора при ручной пометке получала нужное количество записей. Возможно выбор сохраняется в маркер. Если это так, то подскажите пожалуйста его имя и связь с PickBuh.
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5184
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Интерфейс GetBuhSchet: сохранение последнего выбора.

Сообщение edward_K »

Вообще то в самом интерфейсе отображение пометки идет по полю
isPicked = if (FoundMarker(Markers,KatH.Nrec),'V','')
Вам нужно просто вычислять GetMarkerCount(Markers).
Маркер сохраняется в 'gt' + String(cgPick_Schet) + 'buhschet' - можете в него сохранять перед запуском.
Таблицв PickBuh в интерфейсе есть, но параллельно с маркером пометка идет в объекте iPickBuh - то есть как миниум вам нужно делать по ней ReReadRecord(#PickBuh), но с маркером мне кажется как то проще.
Den
Местный житель
Сообщения: 1842
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
Контактная информация:

Re: Интерфейс GetBuhSchet: сохранение последнего выбора.

Сообщение Den »

К сказанному edward_K можно добавить что в маркере просто сохраняются выбранные buhschet nrec-и
Irina_
Местный житель
Сообщения: 545
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Re: Интерфейс GetBuhSchet: сохранение последнего выбора.

Сообщение Irina_ »

Здравствуйте.
Эдвард, Денис, большое спасибо за помощь!
Все оказалось действительно запутано. Пришлось работать и с маркером, и с ТП PickBuh. Как я писала выше, мне надо было отследить выбор и подсчитать количество только определенных сч и с/сч, по которым ведутся расчеты с контрагентами. А в маркере сохраняется весь выбор, в т.ч. и не нужные мне записи. Далее, если пользователь не открыл инт-с GetBuhSchet, а использует предыдущий помеченный набор, то получится, что в маркере есть данные, а в ТП PickBuh нет данных по помеченным записям. При работе с интерфейсом GetBuhSchet данные в PickBuh и в маркере заполняются и модифицируются параллельно. Если же пользователь не открывал инт-с, то нужно на основе маркера заполнить PickBuh. И еще в случае удаления выбора по DEL в своем интерфейсе сразу всех выбранных, надо очищать записи и в ТП и в маркере.
Вроде все получилось ))), уже нет расхождений, которые были в начале.
Ответить