|
тупит с методом Удалить()
| ☑ |
0
адинэсниг1
29.05.13
✎
10:58
|
Изменяйте за возможно глупые темы, но я еще только учусь.
РТ1 и РТ2 результаты 2х запросов. Распределяет не всё, и не удаляет те которые >=3. Без удалить() работает нормально. Но далее РТ2 нужен с учетом удаленных строк.
Для каждого стрТз1 из РТ1 цикл
Для каждого стрТз2 из РТ2 цикл
док = стрТз2.Документ.получитьобъект();
Если док.контрагент = стрТз1.Контрагент тогда
Если стрТз1.КоличествоДок < 3 тогда
док.Ответственный = стрТз1.Ответственный;
док.состояние = Перечисления.аааа.бббб;
док.записать();
Сообщить(строка(док.ссылка) + " - распределен - " + строка(стрТз1.Ответственный));
Иначе
Сообщить(строка(док.ссылка) + " - будет распределен - " + строка(стрТз1.Ответственный));
КонецЕсли;
РТ2.Удлаить(стрТз2);
КонецЕсли;
КонецЦикла;
КонецЦикла;
|
|
1
Ursus maritimus
29.05.13
✎
10:59
|
Из результата запроса нельзя Удалить()
|
|
2
адинэсниг1
29.05.13
✎
11:00
|
Из ТЗ можно?
|
|
3
Ursus maritimus
29.05.13
✎
11:00
|
Из ТЗ можно
|
|
4
адинэсниг1
29.05.13
✎
11:01
|
если РТ2 = запрос.выпольнить().выгрузить();
он бдует ПТ2 будет ТЗ?
|
|
5
salvator
29.05.13
✎
11:01
|
Условие отрабатывает? Если док.контрагент = стрТз1.Контрагент тогда
|
|
6
адинэсниг1
29.05.13
✎
11:02
|
(5) да отрабатывает
|
|
7
salvator
29.05.13
✎
11:02
|
И я бы руки прямые поставил:
РТ2.Удлаить(стрТз2);
|
|
8
MSII
29.05.13
✎
11:02
|
Строки к удалению в массив, потом удалить.
|
|
9
salvator
29.05.13
✎
11:04
|
+(8) +100.
Или перебирать с конца.
|
|
10
адинэсниг1
29.05.13
✎
11:04
|
(7) это тут опечатка. В коде нормально
|
|
11
адинэсниг1
29.05.13
✎
11:05
|
(8) попробую
|
|