Печать нескольких реестров по выбору
Модераторы: m0p3e, edward_K, Модераторы
-
- Местный житель
- Сообщения: 589
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Воронеж ОАО Верофарм. Воронеж
Печать нескольких реестров по выбору
Доброго всем здоровья!
Возник некоторый вопрос. В модуле Заработная плата-Отчеты- Отчеты по оплате труда персонала - Реестры по перечислениям мы имеем несколько реестров. Надо напечатать содержимое нескольких реестров ( они там помечаются по ins - вот и хотелось бы оставить именно этот вариант). Т.е объединить данные произвольного числа реестров. Пробую настроить печать автоматической формы - не получается, печатает какой-то список, который не совпадает с данными выбранных мною реестров. Кто-то имел подобный опыт? или что присоветуете?
Возник некоторый вопрос. В модуле Заработная плата-Отчеты- Отчеты по оплате труда персонала - Реестры по перечислениям мы имеем несколько реестров. Надо напечатать содержимое нескольких реестров ( они там помечаются по ins - вот и хотелось бы оставить именно этот вариант). Т.е объединить данные произвольного числа реестров. Пробую настроить печать автоматической формы - не получается, печатает какой-то список, который не совпадает с данными выбранных мною реестров. Кто-то имел подобный опыт? или что присоветуете?
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Печать нескольких реестров по выбору
Докомпиляция рулит. Я мож и делал такое но забыл для кого , вопрос то точно был. Автоматический отчет формирует все - ему все равно что вы там пометили.
-
- Местный житель
- Сообщения: 589
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Воронеж ОАО Верофарм. Воронеж
Re: Печать нескольких реестров по выбору
Ну а тогда совсем наглый вопрос. Интерфейс Z_PAYREP::VIEWREESCOMBO сохраняет пометки в маркер, как я понимаю. Как его выудить?
-
- Местный житель
- Сообщения: 1844
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
- Контактная информация:
Re: Печать нескольких реестров по выбору
наверное вот этот
MarkedReg := InitMarker(if((ModeView and vfCanSelect) = vfCanSelect, 'VedRees_Marker',''), 8, 200, 100);
MarkedReg := InitMarker(if((ModeView and vfCanSelect) = vfCanSelect, 'VedRees_Marker',''), 8, 200, 100);
-
- Местный житель
- Сообщения: 589
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Воронеж ОАО Верофарм. Воронеж
Re: Печать нескольких реестров по выбору
Не получается.Den писал(а):наверное вот этот
MarkedReg := InitMarker(if((ModeView and vfCanSelect) = vfCanSelect, 'VedRees_Marker',''), 8, 200, 100);
У меня следующая ситуация.
В фейсе Z_PAYREP::VIEWREESCOMBO добавлена строка в менюшку
Код: Выделить всё
menuId_re := LoadMenu('Z_PAYREP::REGISTERSPOPUP');
AddMenuItem(menuId_re,'separator',1);
AddMenuItem(menuId_re,'Печать группы реестров',cmRunGrR);
В своем фейсе пытаюсь отловить помеченные в ( незакрытом, получается) Z_PAYREP::VIEWREESCOMBO записи:
Код: Выделить всё
MarkedReg := InitMarker('VedRees_Marker', 8, 200, 100);
MrkCount := GetMarkerCount(MarkedReg) - 1 ;
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Печать нескольких реестров по выбору
В фейсе за пометку отвечает маркер с handle в MarkedReg.
Перед тем как вызвать ваш сделайте
StoreMarker(MarkedReg,'ZP_REE') ну и у себя юзайте. А можно и просто отправить MarkedReg в качества параметра в свой фейс.
Перед тем как вызвать ваш сделайте
StoreMarker(MarkedReg,'ZP_REE') ну и у себя юзайте. А можно и просто отправить MarkedReg в качества параметра в свой фейс.
-
- Местный житель
- Сообщения: 589
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Воронеж ОАО Верофарм. Воронеж
Re: Печать нескольких реестров по выбору
т.е.edward_K писал(а):Перед тем как вызвать ваш сделайте
StoreMarker(MarkedReg,'ZP_REE') ну и у себя юзайте
Код: Выделить всё
StoreMarker(MarkedReg,'ZP_REE');
MrkCount:=GetMarkerCount(MarkedReg)-1;
...
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Печать нескольких реестров по выбору
Если отправить в качестве параметра, то не надо.
Если в родителе сделать Store.. (не в своем фейсе!), то конечно надо.
Это 2 разных механизма, вы у себя должны создать новый handle и загрузить его с dsk, куда запишите через Store, тогда как при передаче параметром вы получаете готовую ссылку на уже инициализированный маркер. Для того чтобы не вылететь при получении в фейс неинциализированного маркера, на всяк случай проверьте параметр на 0.
Если в родителе сделать Store.. (не в своем фейсе!), то конечно надо.
Это 2 разных механизма, вы у себя должны создать новый handle и загрузить его с dsk, куда запишите через Store, тогда как при передаче параметром вы получаете готовую ссылку на уже инициализированный маркер. Для того чтобы не вылететь при получении в фейс неинциализированного маркера, на всяк случай проверьте параметр на 0.
-
- Местный житель
- Сообщения: 589
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Воронеж ОАО Верофарм. Воронеж
Re: Печать нескольких реестров по выбору
Бр...
Так. Предположим, я в родителе перед вызовом печати пишу
StoreMarker(MarkedReg,'ZP_REE') ;
Тогда:
1) для родителя это ничего не нарушит?
2) что в этом случае будет значить MarkedReg? Он же не определен?
Так. Предположим, я в родителе перед вызовом печати пишу
StoreMarker(MarkedReg,'ZP_REE') ;
Тогда:
1) для родителя это ничего не нарушит?
2) что в этом случае будет значить MarkedReg? Он же не определен?
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Печать нескольких реестров по выбору
В отличии от DoneMarker StoreMarker не очищает handle маркера. А попробовать тяжело?
инфы более чем достаточно для уяснения.
Считайте markerreg в родителе просто объектом (на самом деле он ссылка на объект, которую можно передавать как параметр куда угодно) - так понятней? InitMarker приводит к созданию объекта(в родителе он есть в cmInit - вам оттуда привели строку), DoneMarker(в родителе в cmDone) - к уничтожению и если задано куда, то к сохранению в DSK, StoreMarker просто сохраняет в dsk.
инфы более чем достаточно для уяснения.
Считайте markerreg в родителе просто объектом (на самом деле он ссылка на объект, которую можно передавать как параметр куда угодно) - так понятней? InitMarker приводит к созданию объекта(в родителе он есть в cmInit - вам оттуда привели строку), DoneMarker(в родителе в cmDone) - к уничтожению и если задано куда, то к сохранению в DSK, StoreMarker просто сохраняет в dsk.
-
- Местный житель
- Сообщения: 589
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Воронеж ОАО Верофарм. Воронеж
Re: Печать нескольких реестров по выбору
Во-первых, большое спасибо, edward_K!
Конечно, пока идет ответ, я пробую , но не всегда получается.
В данном вопросе ключевыми стали слова
Еще раз всем спасибо!
Конечно, пока идет ответ, я пробую , но не всегда получается.
В данном вопросе ключевыми стали слова
, чего я не знал. Все остальное вытекало из этого.edward_K писал(а):он есть в cmInit - вам оттуда привели строку
Еще раз всем спасибо!
Re: Печать нескольких реестров по выбору
Для универсальности, раз это отдельный интерфейс будет, я бы сделал собственный маркер, а в интерфейсе перед его вызовом сделал инициализацию и CopyMarker(). Будет проще использовать, если придется делать вызов из другого места.
Но это уже рюшечки.
Но это уже рюшечки.
-
- Местный житель
- Сообщения: 589
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Воронеж ОАО Верофарм. Воронеж
Re: Печать нескольких реестров по выбору
Работало все недолго.. До обновления После его установки маркер перестал работать...
Делаю предположение, что MarkedReg теперь ссылается не туда, куда мне надо.
Если это так, то как часто такое случается? Т.е. маркеры ненадежны?
Если я неправ,то что могло произойти?
Как тогда отлавливать помеченные записи, чтобы не зависеть от разработчиков?
Делаю предположение, что MarkedReg теперь ссылается не туда, куда мне надо.
Если это так, то как часто такое случается? Т.е. маркеры ненадежны?
Если я неправ,то что могло произойти?
Как тогда отлавливать помеченные записи, чтобы не зависеть от разработчиков?
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Печать нескольких реестров по выбору
как правило разработчики достаточно ленивы, чтобы заниматься изменением таких мелочей. Хотя могли переделать на объект pmarker(IMarker) - смотрите vipprogr.chm - поиск. Какой там у вас патч?
-
- Местный житель
- Сообщения: 589
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Воронеж ОАО Верофарм. Воронеж
Re: Печать нескольких реестров по выбору
От 2014.06.09edward_K писал(а):Какой там у вас патч?