|  10.11.2008, 11:42 | #1 | 
| Участник | Reread() на форме c View 
			
			Есть форма. На форме в Gridе View. Если мы встанем на строчку Viewшки и попытаемся вызвать метод reread(), то вместо текущей строчки подставляется либо First или Last строчка DataSource. Ошибка известна все строчки View имеют один и тот же RecId. Необходимо каким-то образом реализовать подобие метода FindRecord(). При этот поиск работает через раз: element.args().lookupField(fieldNum(View, InvoiceId)); element.args().lookupValue(InvoiceId); View_ds.linkActive(); | 
|  | 
|  10.11.2008, 12:02 | #2 | 
| Member | 
			
			Сколько таблиц во view и какой запрос? На портале в 3.0 в некоторых частных случаях проблема решалась, если в запрос добавить maxof(RecId) или что-то в этом роде, если запрос был с группировкой, например. Может и тут что-то подобное получится. Нужно поэкспериментировать. 
				__________________ С уважением, glibs® | 
|  | 
|  10.11.2008, 12:12 | #3 | 
| Участник | 
			
			View состоит из группированных строк одной таблицы Sum(поле). Версия Аксапты 3.0 | 
|  | 
|  10.11.2008, 15:02 | #4 | 
| Member | 
			
			М-да... Как все запущено. Смотрел в 4.0. Описанный выше мною способ можно сделать только в query формы, и для обновления записи это не помогает. Я, пожалуй, пасс. По крайней мере пока. Извините, что не туда повел. 
				__________________ С уважением, glibs® | 
|  | 
|  10.11.2008, 16:22 | #5 | 
| MCT | 
			
			Я вытаскивал из представления recID нужной таблицы, перетаскивал его в поля и с ним работал. На форме что то коренным образом меняется, если сделать запрос и передать в _ds.findRecord()?
		 
				__________________ Axapta book for developer | 
|  | 
|  11.11.2008, 09:01 | #6 | 
| Участник | 
			
			Miker. Честно сказать я не понял, что ты имеешь вывиду про вытаскивания RecID. View у меня это группировка строк одной таблицы по нескольким полям. И у всех строк View RecID получается равным 1010. У меня есть поле во View, которое идентифицирует строку. Мне необходимо при обновлении строки View, чтобы строка обновилась и курсор остался на текущей строке. | 
|  | 
|  11.11.2008, 09:28 | #7 | 
| MCT | Цитата: 
		
			Сообщение от KpecT
			   Miker. Честно сказать я не понял, что ты имеешь вывиду про вытаскивания RecID. View у меня это группировка строк одной таблицы по нескольким полям. И у всех строк View RecID получается равным 1010. У меня есть поле во View, которое идентифицирует строку. Мне необходимо при обновлении строки View, чтобы строка обновилась и курсор остался на текущей строке. 
				__________________ Axapta book for developer | 
|  | 
|  11.11.2008, 11:27 | #8 | 
| Member | Цитата: 
		
			Сообщение от KpecT
			
			 ... Мне необходимо при обновлении строки View, чтобы строка обновилась и курсор остался на текущей строке. ... Боюсь, что и от вьюх в таком случае чуда ожидать не стоит, к сожалению. Для вас очень принципиально такое обновление? Внешне создается впечатление, что .findRecord() последовательно перебирает все записи в источнике данных. Т.е. можно нарисовать свой метод. Вот только стоит ли? Может быть кто-то другой предложит идею получше... 
				__________________ С уважением, glibs® | 
|  | 
|  11.11.2008, 13:00 | #9 | 
| Участник | |
|  |