|
v7: НайтиПоРеквизиту - почему не работает? | ☑ | ||
---|---|---|---|---|
0
Buzztekk
27.06.17
✎
14:50
|
Добрый день. Дамы и Господа подскажите пожалуйста
Я хочу найти документ АктРазногласий по реквизиту "ДокументОснование" ТТН=СоздатьОбъект("Документ.ТТН"); АктРазн=СоздатьОбъект("Документ.АктРазногласий"); Если ТТН.НайтиПоНомеру(номер,дата)=1 тогда Если АктРазн.НайтиПоРеквизиту("ДокументОснование",ТТН,1)=1 тогда... Ругается и пишет что Поле Агрегатного объекта не обнаружено (НайтиПоРеквизиту) Почему??? |
|||
1
bodri
27.06.17
✎
14:51
|
(0) индексация?
|
|||
2
Дмитрий
27.06.17
✎
14:55
|
у документов нет метода найтипореквизиту()
|
|||
3
Волшебник
модератор
27.06.17
✎
14:57
|
(2) в восьмёрке это реализовано
|
|||
4
Buzztekk
27.06.17
✎
14:58
|
(2) Дмитрий вы правы.. Вот я идиот. Это же только по справочникам можно.
Как же мне найти документ, зная его основание? Только запросом? |
|||
5
PiterPrg
27.06.17
✎
14:59
|
(2) У документов нет даже способа поставить индексацию у реквизита.
Однако, есть возможность использовать графу отбора. По значению графы как раз можно искать |
|||
6
Дмитрий
27.06.17
✎
14:59
|
(3) восьмёрка вещ
|
|||
7
Дмитрий
27.06.17
✎
14:59
|
(4) через подчиненные документы
|
|||
8
PiterPrg
27.06.17
✎
15:00
|
(4) ВыбратьПодчиненныеДокументы()
|
|||
9
Дмитрий
27.06.17
✎
15:01
|
СП Документ.ВыбратьПодчиненныеДокументы(Дата1, Дата2, Докум) (7)
|
|||
10
Slypower
27.06.17
✎
15:52
|
а если сразу обратиться к документу основания, зачем его искать, если это является реквизитом документа?
|
|||
11
Buzztekk
28.06.17
✎
10:32
|
(9) Спасибо, попробую.
(10) Slypower, Дак документ основания у меня известен, мне нужно найти по этому документу, подчиненный ему документ Акт расхождения. Причем у документа основания несколько подчиненных документов, мне же нужен только Акт Расхождения из них. |
|||
12
SleepyHead
гуру
28.06.17
✎
11:07
|
(11)
Акт = ПолучитьПустоеЗначение("Документ"); Док = СоздатьОбъект("Документ"); Док.ВыбратьПодчиненныеДокументы(,,ДокОснование); Пока Док.ПолучитьДокумент()=1 Цикл Если Док.Вид()="акт расхождения" Тогда Сообщить("Попался!!!"); Акт = Док.ТекущийДокумент(); Прервать; КонецЕсли; КонецЦикла; Если Акт.Выбран()=1 Тогда // обработка найденного акта Иначе // выразить соболезнования в связи с неудачей КонецЕсли; |
|||
13
Buzztekk
29.06.17
✎
15:43
|
(12) Спасибо!!!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |