Имя: Пароль:
1C
1С v8
Ошибка при вызове процедуры ЗаполнитьСчетаУчетаВСтрокеТабЧасти
0 Ллирик
 
16.12.12
23:41
В БП 3.0 при программном создании документа "РеализацияТоваровУслуг" вызов процедуры ЗаполнитьСчетаУчетаВСтрокеТабЧасти вызывает ошибку "Метод объекта не обнаружен", хотя процедура, расположенная в модуле менеджера документа, помечена как Экспорт.

Код такой:

ВыбДок = Документы.РеализацияТоваровУслуг.СоздатьДокумент();
...
НоваяСтрока = ВыбДок.Товары.Добавить();
...
ВыбДок.ЗаполнитьСчетаУчетаВСтрокеТабЧасти(НоваяСтрока, "Товары", Истина);
1 DrShad
 
16.12.12
23:45
а теперь внимательно посмотри какая именно процедура экспортная
2 Ллирик
 
16.12.12
23:46
(1) Именно эта:
Процедура ЗаполнитьСчетаУчетаВСтрокеТабЧасти(Объект, СтрокаТаблицы, ИмяТабЧасти) Экспорт
3 DrShad
 
16.12.12
23:48
значит в УФ их как-то по-другому вызывают
в самой форме как вызов происходит?
4 H A D G E H O G s
 
16.12.12
23:48
Вызываешьметод модуля ОБЪЕКТА, а не МЕНЕДЖЕРА.
5 H A D G E H O G s
 
16.12.12
23:49
(3) Прости, что испортил своей очевидностью. Ваш КЭП.
6 Ллирик
 
16.12.12
23:52
А форме документа есть процедура ТоварыНоменклатураПриИзмененииНаСервере, из которой ЗаполнитьСчетаУчетаВСтрокеТабЧасти и вызывается.
7 DrShad
 
16.12.12
23:52
да ничего, мне тоже будет интересно
8 H A D G E H O G s
 
16.12.12
23:53
(7) А, не, см. (6). Все нормально...
9 Ллирик
 
16.12.12
23:54
(5) В чём очевидность? Процедуру-то как вызвать? В БП 2.0 работало нормально, а в управляемом интерфейсе перестало
10 Amra
 
16.12.12
23:54
(0) Неверно параметры передаешь
Должно быть ВыбДок.ЗаполнитьСчетаУчетаВСтрокеТабЧасти(ВыбДок,НоваяСтрока,  "Товары");
11 DrShad
 
16.12.12
23:54
(9) на то он и УФ
12 DrShad
 
16.12.12
23:55
(10) вот что значит трезвый ум! браво!
13 Ллирик
 
16.12.12
23:57
(10) Не помогает
14 H A D G E H O G s
 
16.12.12
23:57
(10) Валера, настало твое время!
15 H A D G E H O G s
 
16.12.12
23:57
БП3.0 под рукой нет. Поэтому - только телепатия, только хардкоррррр.
16 DrShad
 
16.12.12
23:58
ну БП 3.0 нету у мну, посему просто понаблюдаю
17 H A D G E H O G s
 
16.12.12
23:58
"хотя процедура, расположенная в модуле менеджера документа"

см. (4)
18 H A D G E H O G s
 
16.12.12
23:59
менеджера документа

ВыбДок = Документы.РеализацияТоваровУслуг.СоздатьДокумент();
НоваяСтрока = ВыбДок.Товары.Добавить();
ВыбДок.ЗаполнитьСчетаУчетаВСтрокеТабЧасти(НоваяСтрока, "Товары", Истина);

ВыбДок - какой к хренам менеджер???
19 DrShad
 
16.12.12
23:59
так так, а кто же тут менеджер?
20 Amra
 
17.12.12
00:00
(18) Чорт, не зметил. Но параметры вызова процедуры он тоже напутал
21 Ллирик
 
17.12.12
00:00
(17),(18)
Правильно как написать?
22 H A D G E H O G s
 
17.12.12
00:01
23 H A D G E H O G s
 
17.12.12
00:02
(21) Пищи, диктую...

"Молодая и динамично развивающаяся компания ищет программиста 1С..."
24 Amra
 
17.12.12
00:04
(22) Злой ты)
25 Ллирик
 
17.12.12
00:15
Спасибо за наводку на правильный код:

Документы.РеализацияТоваровУслуг.ЗаполнитьСчетаУчетаВСтрокеТабЧасти(ВыбДок,НоваяСтрока,"Товары");
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn