AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.04.2008, 10:18   #1  
mefodiy is offline
mefodiy
Участник
 
96 / 10 (1) +
Регистрация: 08.07.2007
Вопрос может быть и наивный, но тем не менее не могу найти на него ответ.
Есть главная форма, у которой SourceTable = "Gen. Journal Line". Из главной формы печатается отчет, у которого в качестве "Data Item" также указана таблица "Gen. Journal Line". Отчет перед печатью выводит на экран форму типа "Request Form", в которой помимо прочего нужно вывести значение одного из полей текущей записи таблицы "Gen. Journal Line" (данные текущей записи отображаются в главной форме).
Проблема в том, что текущая запись главной формы не является текущей записью "Request Form" отчета, хотя в отчет как параметр передается "Rec" таблицы. Впрос в том, как в "Request Form" передать текущую запись таблицы "Gen. Journal Line".
Не знаю смог ли описать проблему. Готов при необходимости внести уточнения. Спасибо.
Старый 24.04.2008, 10:23   #2  
romeo is offline
romeo
Участник
Аватар для romeo
 
564 / 10 (2) +
Регистрация: 31.03.2004
Если вы хотите, чтобы при запуске отчета на гриде реквеста был фильтр по определенному полю таблицы, на которой отчет построен, то просто наложите фильтр на это поле, а затем запустите отчет вот таким образом :

Код:
GenJnlLine.SETRANGE(Поле, Значение);
r.SETTABLEVIEW(GenJnlLine);
r.RUN();
при этом на реквесте для данного Поля будет в качестве фильтра указано Значение.

Если на одной записи хотите запускать репорт. То либо отфильтруйте эту запись, чтобы она осталась одна (допустим SETRECFILTER).
Старый 24.04.2008, 12:21   #3  
mefodiy is offline
mefodiy
Участник
 
96 / 10 (1) +
Регистрация: 08.07.2007
Дело в том, что отчет (это платежное поручение) нормально печатаеся при подтверждении реквеста (без дополнительной фильтрации).
На событие OnPush() кнопки "Печать" в главной форме прописано:
DocumentPrint.PrintCheck(Rec);
Т.е. в отчет текущая запись нормально передается. Но как ее отловить в "промежутке" между главной формой и отчетом, т.е. в реквесте?
Старый 24.04.2008, 12:35   #4  
romeo is offline
romeo
Участник
Аватар для romeo
 
564 / 10 (2) +
Регистрация: 31.03.2004
Либо напишите свой PrintCheck() либо впишитесь в тот, что в Document-Print. Именно там отчет ранится.
Старый 24.04.2008, 13:09   #5  
RedFox is offline
RedFox
Участник
 
1,441 / 10 (0) +
Регистрация: 28.12.2004
Адрес: Киев
Цитата:
Сообщение от mefodiy Посмотреть сообщение
Дело в том, что отчет (это платежное поручение) нормально печатаеся при подтверждении реквеста (без дополнительной фильтрации).
На событие OnPush() кнопки "Печать" в главной форме прописано:
DocumentPrint.PrintCheck(Rec);
Т.е. в отчет текущая запись нормально передается. Но как ее отловить в "промежутке" между главной формой и отчетом, т.е. в реквесте?
В 229 CU можифицируйте так, чтобы работал Ваш код и вызов InitializeRequest вместо REPORT.RUNMODAL(ReportSelection."Report ID",TRUE,FALSE,GenJnlLine) при срабатывании какого-то признака.

Или банковский счет, например, можно передавать через фильтр. Но тут ограничение сразу - только 1 банковский счет в 1 момент времени.
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 23:19.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.