|
v7: Как назначить реквизиту вид справочника | ☑ | ||
---|---|---|---|---|
0
SeregaMW
29.02.12
✎
16:50
|
В документе есть реквизит табл. части у которого тип Справочник, при вводе значения открывается окошко где можно выбрать что же это за справочник будет. Как программно назначить такому реквизиту тип справочника например "Справочник.Номенклатура"
Пишу так не получается Док.Номенклатура = Номенклатура.ТекущийЭлемент(); |
|||
1
SeregaMW
29.02.12
✎
16:51
|
(0)
Пишу так но значение не присваивается. Док.Номенклатура = Номенклатура.ТекущийЭлемент(); |
|||
2
Sh1ko
29.02.12
✎
16:52
|
назначитьвид()
|
|||
3
SeregaMW
29.02.12
✎
17:03
|
назначитьвид(Док.Номенклатура,"ПереченьРабот");
Док.Номенклатура = работа.ТекущийЭлемент(); Все равно не присваивает значение Что не так подскажите |
|||
4
ArtKzn
29.02.12
✎
17:06
|
(3), а что у тебя хранится в переменной док ?
|
|||
5
SeregaMW
29.02.12
✎
17:08
|
Док = СоздатьОбъект("Документ.ЗаказНаряд");
Док.НоваяСтрока(); |
|||
6
Эльниньо
29.02.12
✎
17:13
|
НазначитьВид("Номенклатура","Номенклатура");
|
|||
7
SeregaMW
29.02.12
✎
17:16
|
(6) Неправильно задан вид значения!
|
|||
8
SeregaMW
29.02.12
✎
17:16
|
(6)
Параметры: <Значение> - Значение типа документ/справочник/счет неопределенного вида - обычно реквизит документа, справочника или диалога формы. |
|||
9
Эльниньо
29.02.12
✎
17:19
|
НазначитьВид(Номенклатура, "Номенклатура");
|
|||
10
ArtKzn
29.02.12
✎
17:21
|
(3) А что у тебя хранится в переменной "работа", что показывает отладчик на выражение Работа.ТекущийЭлемент() ?
|
|||
11
SeregaMW
29.02.12
✎
17:23
|
Работа.ТекущийЭлемент() Это элемент справочника "ПереченьРабот"
|
|||
12
Эльниньо
29.02.12
✎
17:24
|
(11) Вот путаник.
|
|||
13
ArtKzn
29.02.12
✎
17:26
|
(11) а он не пустой?
|
|||
14
SeregaMW
29.02.12
✎
17:26
|
Работа = СоздатьОбъект("Справочник.ПереченьРабот");
Работа.НайтиПоНаименованию(ТЗ.работа); Если Работа.НайтиПоНаименованию(ТЗ.работа)=0 тогда Иначе Док.НазначитьТип("Номенклатура","Справочник.ПереченьРабот"); Док.Номенклатура = работа.ТекущийЭлемент(); |
|||
15
SeregaMW
29.02.12
✎
17:31
|
(13) Нет не пустой
|
|||
16
ArtKzn
29.02.12
✎
17:31
|
Проверь еще раз тип реквизита "Номенклатура". Он точно - справочник неопределенного вида?
В этом случае достаточно было бы этого: Док.Номенклатура = работа.ТекущийЭлемент(); |
|||
17
SeregaMW
29.02.12
✎
17:38
|
Тип Значения у реквизита номенклатура "<<Справочник>>"
|
|||
18
ArtKzn
29.02.12
✎
17:43
|
Всю процедуру можешь выложить?
|
|||
19
SeregaMW
29.02.12
✎
17:45
|
Процедура СоздатьДок()
ТЗ.ВыбратьСтроки(); ПредыдущийНомер=0; Пока ТЗ.ПолучитьСтроку()=1 Цикл Если (ТЗ.Номер<>ПредыдущийНомер) или (ПредыдущийНомер=0) тогда Док = СоздатьОбъект("Документ.ЗаказНаряд"); Док.НайтиПоНомеру(ТЗ.Номер,Тз.дата); Если Док.НайтиПоНомеру(ТЗ.Номер,Тз.дата)=0 тогда Док.Новый(); Иначе Док.НомерДок = ТЗ.Номер; Док.ДатаДок =Тз.дата; // Док.Контрагент = ТЗ.Контрагент; Док.НоваяСтрока(); Работа = СоздатьОбъект("Справочник.ПереченьРабот"); Работа.НайтиПоНаименованию(ТЗ.работа); Если Работа.НайтиПоНаименованию(ТЗ.работа)=0 тогда // ДокПКО.НазначитьТип("Субконто1","Справочник.Контрагенты") //назначитьвид(Док.Номенклатура,"ПереченьРабот"); Док.НазначитьТип("Номенклатура","Справочник.ПереченьРабот"); Док.Номенклатура =СоздатьРаботу(ТЗ.работа); Иначе Док.НазначитьТип("Номенклатура","Справочник.ПереченьРабот"); Док.Номенклатура = работа.ТекущийЭлемент(); КонецЕсли; Док.Цена = ТЗ.Цена; Док.Сумма = ТЗ.Сумма; Док.Кратность = ТЗ.коифициент; Док.Количество = ТЗ.Количество; Док.Скидка = ТЗ.Скидка; Док.Записать(); ПредыдущийНомер = ТЗ.Номер; Продолжить; КонецЕсли; КонецЕсли; Док.НоваяСтрока(); Работа = СоздатьОбъект("Справочник.ПереченьРабот"); Работа.НайтиПоНаименованию(ТЗ.работа); Если Работа.НайтиПоНаименованию(ТЗ.работа)=0 тогда Док.НазначитьТип("Номенклатура","Справочник.ПереченьРабот"); Док.Номенклатура =СоздатьРаботу(ТЗ.работа); Иначе Док.НазначитьТип("Номенклатура","Справочник.ПереченьРабот"); Док.Номенклатура = работа.ТекущийЭлемент(); КонецЕсли; Док.Цена = ТЗ.Цена; Док.Сумма = ТЗ.Сумма; Док.Кратность = ТЗ.коифициент; Док.Количество = ТЗ.Количество; Док.Скидка = ТЗ.Скидка; Док.Записать(); ПредыдущийНомер = ТЗ.Номер; КонецЦикла; КонецПроцедуры |
|||
20
vinogradъ
29.02.12
✎
17:45
|
(0)НазначитьТип
НеИзменятьВид |
|||
21
SeregaMW
29.02.12
✎
17:48
|
Я уже по всякому пробую.
НазначитьВид я закоментил, потому что не взлетает //назначитьвид(Док.Номенклатура,"ПереченьРабот"); |
|||
22
SeregaMW
29.02.12
✎
17:55
|
Всем спасибо!!! не очищал Табл.Часть перед повторной загрузкой, смотрел первые строки и видел фигу.
|
|||
23
SeregaMW
29.02.12
✎
17:55
|
Конец рабочего дня! ;-)
|
|||
24
SeregaMW
29.02.12
✎
17:58
|
Как очистить табл часть документа?
Док.Очистить() не получается |
|||
25
ArtKzn
29.02.12
✎
17:59
|
Док.УдалитьСтроки()
|
|||
26
SeregaMW
29.02.12
✎
17:59
|
Спасибо!!! ;-)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |