|  07.04.2011, 11:22 | #21 | 
| Участник | 
			
			Упустил раньше этот вопрос. Поля заполняются напрямую из tabpage, у меня под каждым лежит свой DataSource!  т.е. одна таблица раскопированна в 2 DS. Я решил последовать вашему совету и создать поле в таблице с 2 возможными значениями. на каждм DS в методе initValue буду заполнять это поле в зависимости от места где создается (левый или правый tabpage), теперь надо понять как фильтр на отображение наложить? Форма служит для отображения и создания записей!
		 | 
|  | 
|  07.04.2011, 11:22 | #22 | 
| Участник | 
			
			 Я бы не закладывался на значение самих полей. Вы же сами сказали что их может быть и 5 и 10. Повторюсь ещё раз. Я советую вам в таблицу строк добавить поле "тип строки" и использовать его для фильтрации. Примерно так: X++: qbds.addrange(fieldnum(MyTableLine, LineType)).value("1"); Да to Ivanhoe: Цитата: | 
|  | 
|  07.04.2011, 11:34 | #23 | 
| Участник | 
			
			Точнее фильтр нужно на inite формы!?
		 | 
|  | 
|  07.04.2011, 11:46 | #24 | 
| Участник | Цитата: Там конечно тоже можно, но обычно принято в init датасорса. | 
|  | 
|  07.04.2011, 11:53 | #25 | 
| Участник | 
			
			Спасибо за ответ! Про то как условия фильтра наложить я знаю а вот как дальше фильтровать не знаю! т.е. какие действия производить, свойства какие использовать - может visible или какое другое???
		 | 
|  | 
|  07.04.2011, 12:02 | #26 | 
| Участник | Цитата:  Ну как бы сделать addRange это всё что требуется для того чтобы источник данных отфильтровался. Ещё возможно _ds.research(), что бы заставить датасурс перестроить запрос, но если вы добавили фильтр в init датасурса то и он не нужен. | 
|  | 
|  07.04.2011, 12:25 | #27 | 
| Участник | 
			
			Я наверно не понимаю как происходит запрос на датасорсе, т.е. достаточно просто создать range и все, т.е. не как в обычных запросах???
		 | 
|  | 
|  07.04.2011, 12:37 | #28 | 
| Участник | 
			
			Мне надо как то подхватить query в initValue DataSource и наложить условие! Но как не знаю???
		 | 
|  | 
|  07.04.2011, 12:42 | #29 | 
| северный Будда | 
			
			Коллеги, я не думаю, что мы сделаем хорошее дело, совместно расписав решение тестовой задачи вплоть до знаков препинания. Хотя бы потому, что постановщик тоже наверняка читает форум - следовательно, видит весь процесс "решения" и делает соответствующие выводы. Тем более, что прецеденты были. Думаю, вполне достаточно ограничиться предложением S.Kuskov насчёт доп поля в таблице. Мне тоже этот вариант кажется оптимальным. Хотя, возможно, я и ошибаюсь. 
				__________________ С уважением, Вячеслав | 
|  | 
|  07.04.2011, 12:50 | #30 | 
| Участник | 
			
			Идеологически решение с полями я понял как сделать! Просто когда начал говорить про доп. поля сказали что это не правильно! Я уже 1,5 дня потратил на поиски решения, к сожалению опыт работы с аксаптой только 1 месяц, и некоторые алгоритмы ее функционирования не совсем понятны! так что не делайте не правильных выводов! Задача действительно для меня сложная.
		 | 
|  | 
|  07.04.2011, 13:17 | #31 | 
| северный Будда | Цитата: 
		
			Сообщение от GOL
			   Идеологически решение с полями я понял как сделать! Просто когда начал говорить про доп. поля сказали что это не правильно! Я уже 1,5 дня потратил на поиски решения, к сожалению опыт работы с аксаптой только 1 месяц, и некоторые алгоритмы ее функционирования не совсем понятны! так что не делайте не правильных выводов! Задача действительно для меня сложная. Просто обычно никто не ставит разработчику задачу "напиши код в такой-то форме, прикрути к ней такие-то датасорсы и т.д.". Постановка пляшет от бизнес-логики. Т.е., например, нужна форма, позволяющая вносить определённые данных, нужным образом их обрабатывать, при этом требуется сделать такие-то фильтры. А внутреннее наполнение этой формы - 100% вотчина разработчика. В сформулированном Вами виде форма будет выглядеть и действовать совершенно нелогично для стандартной Аксапты, поэтому нужны ОЧЕНЬ веские основания, чтобы такое просить. Тут надо или показать действующее решение и спросить "что не устраивает", или попросить аналогичный пример и сделать как в нём. Так бы я сделал на Вашем месте. 
				__________________ С уважением, Вячеслав | 
|  | 
|  07.04.2011, 13:26 | #32 | 
| Участник | Цитата: 
		
			 каждом tabpage лежит по grid-у, и в каждом оторбажается по 2 поля одной записи.
		
	 Цитата: 
		
			Дополнение к пред. сообщению: не как это убрать, а как сделать так что бы в левом гриде отображались только 3 заполенные строки, а в правом соответсвенно 2 зап. строки)))) Вот
		
	 Цитата: 
		
			Сообщение от GOL   Как сделать так чтобы при нажатии СОЗДАТЬ НОВУЮ ЗАПИСЬ запись создавалась только в 1 гриде, а если надо то заходим во второй tabpage и нажимаем СОЗДАТЬ НОВУЮ ЗАПИСЬ и можем заполнить остальные 2 поля этой записи.  P.S. про само тестовое задание и Цитата: 
		
			опыт работы с аксаптой только 1 месяц, и некоторые алгоритмы ее функционирования не совсем понятны
		
	 
				__________________ Ivanhoe as is.. | 
|  | 
|  07.04.2011, 13:26 | #33 | 
| Участник | 
			
			Вот я тоже надеялся найти дествующий пример, и не задавать лишних и идиотских запросов, но пока все что я видел в Ax не похоже на то что требуется! Это задача к реальному применению моет иметь какое то отношение чисто теоритически, например вам надо к ОС добавить какие -то доп, атрибуты, в верхней части заполняется сам номер ОС, а в нижних tabpage, как раз атрибуты кот. содержаться в отдельной таблице, и отображаются корректно, в соответствии с требованиями (которые я все ни как не могу реализовать :-)  ) Если честно тяжело корректно сформулировать то что я хочу реализовать. Пок работал только с обыкновенными запросами qbds, qbr, query и т.д. поэтому как подхватывать в init query который строит запросы к DS формы пока не знаю, может кто знает пример где это рализованно и на этот запрос накладывается фильтр?? Спасибо!
		 | 
|  | 
|  07.04.2011, 13:59 | #34 | 
| NavAx | 
			
			2 GOL простите, что не читал всю ветку, но судя по последнему сообщению, вам стоит посмотреть на форму InventTable.
		 | 
|  | 
|  07.04.2011, 14:45 | #35 | 
| Участник | |
|  | 
|  07.04.2011, 15:30 | #36 | 
| Участник | 
			
			Не подскажите какое условие нужно наложить на query что бы не выводилось пустых записей?? qbds.addRange(fieldnum(OStable, CrashComm)).value(SysQuery::valueNotEmptyString()); - так не работает!! Спасибо | 
|  | 
|  07.04.2011, 16:01 | #37 | 
| Участник | 
			
			Должно работать. qbds правильно получаете? Чтобы это проверить попробуйте вместо SysQuery::valueNotEmptyString() задать какое-нибудь реальное значение. Фильтр сработает?
		 Последний раз редактировалось S.Kuskov; 07.04.2011 в 16:10. | 
|  | 
|  | 
| Опции темы | Поиск в этой теме | 
| Опции просмотра | |
| 
 |