Здравствуйте. Подскажите пожалуйста как реализовать. Задача такая... Есть отчет, который работает через фильтр с вызовом окна. (отчет для всех записей)
Как мне передать при открытии окошка уже по умолчанию заполненные поля для контрагента на котором стоит курсор?
Например, чтобы в данном примере поле Клиент было заполнено значением "Теплогазсистем-сервис" ....
Нравится
Так можно достучатся до ID выбранной в реестре записи:
var GridDataset = BaseWorkspace.Grid.SelectedIDs; var AccountID = GridDataset.CommaText;
Не выйдет. Отчет вызывается из меню действия и окошко не является дочерним для этой формы так что
BaseWorkspace = undefined
Зависит от того, как запускается отчет.
Если отчет подключен через раздел "Отчеты" с указанием собственной формы фильтрации, то он запускается стандартным обработчиком, и надо модифицировать его (чтобы он "пробрасывал" выделенный ИД записи в форму фильтрации).
Лабитек
Центр разработки приложений
Понятно, что undefined
Передайте атрибутом, как в этом примере:
http://community.terrasoft.ua/blogs/2694
"Валерий Андрусик" написал: как запускается отчет.
собственная форма фильтрации, отчет прописан в Отчетах, а не на форме wnd_AccountsWorkspace
[quote="Виталий Ковалишин aka samael"]Передайте атрибутом, как в этом примере:
http://community.terrasoft.ua/blogs/2694[/quote]
У вас там явно в менюшке есть действие -> .....
А у меня отчет->.... И этот отчет висит в списке отчетов в вдминке и явно в менюшке отчетов не фигурирует. Так что в каком месте создавать передачу параметра не пойму. :(
"Парфенов Евгений" написал:У вас там явно в менюшке есть действие -> .....
А у меня отчет->.... И этот отчет висит в списке отчетов в вдминке и явно в менюшке отчетов не фигурирует. Так что в каком месте создавать передачу параметра не пойму. :(
Создайте действие в amiReports и отправьте атрибуты в окно фильтрации. С окна фильтрации и запускайте отчет имея параметры для фильтрации записей.
Можно в окне фильтрации получить ID текущей записи открытого раздела.
Connector.Attributes('MainWindow').ComponentsByName('wndWorkspace').Window.ComponentsByName('dlAccounts').Dataset('ID')
но только если Вы точно уверены, что открыт раздел "Контрагенты". Но такое решение мне лично не очень нравится.
Да, спасибо. Разобрался уже. Пришлось просто явно добавить пункт в менюшке отчетов...