|
v7: Не все подчиненные документы попадают в выборку...
| ☑ |
0
Darhon
25.04.13
✎
18:42
|
Добрый вечер. У меня следующая проблема. Есть Докуумент реализацияПродукции. На основании его штатными средствами вводится ПКО. И Документ поступление товаров (дописано кем-то). Если в журнале нажать на показать подч. документы то выводятся все и ПКО и поступления. Но нижеприведенный код видит только ПКО. Вот код:
ПодчиненныеДокументы = СоздатьОбъект("Документ");
ПодчиненныеДокументы.ВыбратьПодчиненныеДокументы(,,ДокументСсылка);
Пока ПодчиненныеДокументы.ПолучитьДокумент()=1 Цикл
Если ПодчиненныеДокументы.Вид() = "ПоступлениеТоваров" Тогда
Возврат 1;
Прервать;
Иначе
Возврат 0;
КонецЕсли;
КонецЦикла;
Подскажите как разрешить данную проблему. Заранее спасибо.
|
|
1
KUBIK
25.04.13
✎
18:44
|
нижеприведенный код видит = неполный твой код
|
|
2
Rie
25.04.13
✎
18:46
|
(0) Что значит "не видит"? У тебя цикл выполняется ровно 1 раз, то есть, просматривает не более одного документ. Может там дальше 10500 ПКО идут - цикл до них не доберётся никогда.
|
|
3
Darhon
25.04.13
✎
18:46
|
В чем он неполный??
|
|
4
KUBIK
25.04.13
✎
18:47
|
(3) см (2)
|
|
5
Darhon
25.04.13
✎
18:47
|
Вот кусок кода из другого документа написанный разрабами 1с :)
Док = СоздатьОбъект("Документ");
Док.ВыбратьПодчиненныеДокументы( , , Наряд);
Пока Док.ПолучитьДокумент() = 1 Цикл
Если Док.Вид() = "РасчетЗарплатыПоНаряду" Тогда
СписокРасчетов.ДобавитьЗначение(Док.ТекущийДокумент());
КонецЕсли;
КонецЦикла;
|
|
6
Rie
25.04.13
✎
18:48
|
(5) А теперь найди отличия. (Подсказка: как ты думаешь, что делает Возврат?).
|
|
7
Dolly_EV
25.04.13
✎
18:49
|
(0)
Возврат 1;
Прервать;
Это пять!))) т.е. Прервать - это "на всякий пожарный"? вдруг "Возврат 1" не сработает? :-)
|
|
8
Rie
25.04.13
✎
18:49
|
+(6) Кстати, Прервать - никогда не будет выполняться. Ну и зачем оно там?
|
|
9
Darhon
25.04.13
✎
18:53
|
Блин...туплю :((
|
|