|  26.11.2007, 16:24 | #1 | 
| Участник | Блокировка таблиц пр InnerJoin 
			
			Коллеги, обнаружил что при блокировке forupdate одной из таблиц в джоине блокировка накладывается на все таблицы. Можно ли как-то избежать этого ? Пример: метод \Data Dictionary\Maps\PriceDiscHeading\Methods\UpdateMultiLineDisc строка 33, код : X++: while select forupdate priceDiscLine where priceDiscLine.salesPurchId == this.salesPurchId join inventTableModule where inventTableModule.moduleType == this.moduleType() && inventTableModule.itemId == priceDiscLine.itemId Возможно ли этого избежать ? P.S. Ax 3.0 SP3 Oracle | 
|  | 
|  26.11.2007, 17:02 | #2 | 
| Программатор | 
			
			Сделать отдельный while по InventTableModule
		 | 
|  | 
|  26.11.2007, 17:20 | #3 | 
| Участник | |
|  | 
|  26.11.2007, 17:44 | #4 | 
| Участник | 
			
			а попробуйте X++: inventTableModule.selectLocked(false);я не проверял, но вдруг. | 
|  | 
|  26.11.2007, 17:52 | #5 | 
| SAP | Цитата: 
		
			А кроме отдельного запроса ?
		
	 X++:     Table       table1;
    Table       table2;
    while select recId from table1
    {
        select forupdate table2
            where table2.recId == table1.recId;
        ...................
    }Последний раз редактировалось konopello; 26.11.2007 в 17:53. Причина: правил код | 
|  | 
|  26.11.2007, 18:21 | #6 | 
| Программатор | 
			
			Вот я и говорю while влепить    | 
|  | 
| Теги | 
| ax3.0 | 
|  | 
|  Похожие темы | ||||
| Тема | Ответов | |||
| Владельцы таблиц в БД аксапты | 11 | |||
| Скорее всего блокировка таблиц. | 15 | |||
| Query из 7 таблиц | 29 | |||
| Блокировка всех таблиц | 1 | |||
| Как остановить выполнение InitValue для связанных (innerJoin) таблиц? | 8 | |||
| 
 |