|  29.10.2004, 09:39 | #1 | 
| Участник | Значения параметров из SysQueryForm. 
			
			Как получить значения параметров из SysQueryForm? Из формы пользователь вызывает форму фильтра (SysQueryForm) и накладывает свои критерии выбора. Как получить значение выбранных критериев наложенного фильтра? В форму, SysQueryForm возвращает только одно значение, а необходимы все значения выбранных пользователем критериев. Конкретно форма “приемка” (Управление запасами/периодические операции/Приемка ->кнопка “выбор”), нужно получить значение выбранной пользователем даты. Заранее признателен за помощь. | 
|  | 
|  29.10.2004, 10:03 | #2 | 
| ---------------- | 
			
			Не нашел такого пункта меню. SysQueryForm вызывается из QueryRun.prompt() все ограничения, сортировки и пр. попадает в QueryRun.query(). Остается только найти тот самый QueryRun   | 
|  | 
|  29.10.2004, 10:10 | #3 | 
| Участник | 
			
			Уточнение расположение формы "приемка" Управление запасами/периодические операции/Спецификации/Приемка ->кнопка “выбор”). | 
|  | 
|  29.10.2004, 10:10 | #4 | 
| Moderator | Цитата: 
		
			Не нашел такого пункта меню.
		
	 | 
|  | 
|  29.10.2004, 10:24 | #5 | 
| Участник | 
			
			Да Андрей ты прав, меню находится: Управление запасами/Периодические операции/Спецификации/Приемка ->кнопка “выбор”). | 
|  | 
|  29.10.2004, 10:36 | #6 | 
| Moderator | 
			
			А где ты хочешь получить эти значения ?  В какой именно точке кода ? А вообще, общий подход Wamr сказал. | 
|  | 
|  29.10.2004, 10:54 | #7 | 
| Участник | 
			
			Значения параметров мне необходимо получить в перекрытом методе clicked() добавленной кнопки. Значения параметров в дальнейшем необходимо использовать для выборки данных из таблиц сводного планирования. Конечной целью является перенос спланированных количеств спецификаций из сводного плана в форму приемка.
		 | 
|  | 
|  29.10.2004, 11:02 | #8 | 
| Модератор | 
			
			Насколько я могу судить, это несколько неверный подход... Посмотри tutorial_RunbaseForm. Я бы перекрыл метод хм.. ну, допустим chechCloseDialog и проверял бы там. заодно можно и не дать закрыть окно, если паметрв введены неверно. С Уважением, Георгий | 
|  | 
|  29.10.2004, 11:03 | #9 | 
| ---------------- | 
			
			Признаться, мне сложно понять, всю красоту Вашего замысла, но думаю, результаты работы SysQueryForm Вы сможете найти в multiReportFinish.queryRun().query().
		 | 
|  | 
|  29.10.2004, 11:09 | #10 | 
| Moderator | PHP код: 
			Цитата: 
		
			но думаю, результаты работы SysQueryForm Вы сможете найти в multiReportFinish.queryRun().query().
		
	 Исправление: Хотя нет, в Query() значений Ranges вы тоже не найдете. | 
|  | 
|  29.10.2004, 11:23 | #11 | 
| Moderator | 
			
			Вот, вроде бы работающий вариант: PHP код: 
			 | 
|  | 
|  29.10.2004, 12:17 | #12 | 
| Участник | 
			
			Андрей спасибо за желание помочь. Вы абсолютно правы в таблице BomParmReportFinish хранятся строки отфильтрованные в соответствии с параметрами заданными пользователем в форме SysQueryForm. Но трудность заключается в том, что в таблице BomParmReportFinish нет значения нужного мне критерия, а именно Даты выбранной пользователем в SysQueryForm, а эта дата необходима для дальнейших выборок. | 
|  | 
|  29.10.2004, 12:24 | #13 | 
| Moderator | Цитата: 
		
			Но трудность заключается в том, что в таблице BomParmReportFinish нет значения нужного мне критерия, а именно Даты выбранной пользователем в SysQueryForm
		
	 Что это за поле ? Оно именно так и называется "Дата" ? Это стандартное поле или добавленное вами ? | 
|  | 
|  29.10.2004, 12:34 | #14 | 
| Участник | 
			
			Все правильно. Это я не точно пояснил. По умолчанию в SysQueryForm выбрана “Картотека номенклатуры”. Затем пользователь добавляет в SysQueryForm таблицу “Спланированный заказ”, а в ней выбирает поле “Дата заказа”. Именно значение критерия “Дата заказа” необходимо для получения необходимой выборки.
		 | 
|  | 
|  29.10.2004, 12:42 | #15 | 
| Moderator | 
			
			Ну тогда у вас два варианта:   1. Разобраться почему у multiReportFinish не инициализирован QueryRun. 2. В код, заполняющий BomParmReportFinish добавить возможность сохранения даты. Первый способ универсальнее и идеологически более правильный. p.s. А он кстати по дате фильрует ? | 
|  | 
|  29.10.2004, 12:49 | #16 | 
| Участник | 
			
			Фильтрует по дате при условии выбора в таблице “Спланированный заказ” критерия для поля “план”.
		 | 
|  | 
|  29.10.2004, 13:31 | #17 | 
| ---------------- | 
			
			Посмотрел немного код.. п.1 не поможет надо сразу смотреть п.2, точнее где-то тут RunBaseMultiParm.choose() | 
|  | 
|  29.10.2004, 14:03 | #18 | 
| Участник | Re: Значения параметров из SysQueryForm. Цитата: 
		
			Изначально опубликовано har  Как получить значения параметров из SysQueryForm? Из формы пользователь вызывает форму фильтра (SysQueryForm) и накладывает свои критерии выбора. Как получить значение выбранных критериев наложенного фильтра? В форму, SysQueryForm возвращает только одно значение, а необходимы все значения выбранных пользователем критериев. Посчитать количество наложенных фильтров: { Table1_ds.queryRun().query().dataSourceNo(1).rangeCount() } Найти какой-нибудь интересующий нас фильтр: { if(Table1_ds.queryRun().query().dataSourceNo(1).findRange(fieldNum(Table1, Field1))) info(queryvalue(range.value())); } Или имелось в виду что-нибудь другое? | 
|  | 
|  29.10.2004, 14:18 | #19 | 
| Moderator | 
			
			В данном случае данный прием работать не будет.
		 | 
|  | 
|  29.10.2004, 15:25 | #20 | 
| Участник | 
			
			С позволения Андрея позволю себе добавить.  В форме BOMReportFinish КОНЕЧНЫЙ фильтр накладывается по полю ParmId таблицы BOMReportFinish (это значение получить не проблема). Значения ParmId в таблице BOMReportFinish меняются в соответствии с критериями наложенными пользователями в SysQueryForm во время закрытия формы SysQueryForm. То есть всем записям, удовлетворяющим критериям фильтра, присваиваются одинаковые значения ParmId. Значение ParmId возвращается в форму, и по этому значению накладывается фильтр. Но дело в том, что для решения поставленной задачи необходимы именно критерии пользователей, сделанные в SysQueryForm и которые не возвращаются в форму BOMReportFinish. | 
|  | 
|  | 
| 
 |