Имя: Пароль:
1C
 
7.7.023 - Бух-4.60- Как работать с подчинеными справочниками?
0 любитель
 
29.09.04
13:13
Есть внешняя обработка, переношу доки, попутно пополняю спр.Номенклатура
Есть справочник "Номенклатура", подчиненный ему - "Цены", куда надо записать Цену ТекущегоЭлем.Номенклатуры
---
Код такой:
---
...
СПН.Записать(); //здесь всё Ок, кроме цены
...
СПЦ = СоздатьОбъект("Справочник.Цены");
...      
СПЦ.ИспользоватьВладельца(СПН.ТекущийЭлемент());
СПЦ.Новый();
СПЦ.Цена.Установить(Док.ДатаДок, СПН.Цена); //известна по ходу обработки..
СПЦ.Записать();
-------
Спотыкаюсь на периодическом "СПЦ.Цена", Сообщение: "Не Выбран Элемент!"
как его "выбрать"? что в коде лишнее, или чего нет, или что не так сделано?
1 любитель-ламер
 
29.09.04
13:16
да, в коде СПН = Справочник.Номенклатура
СПЦ = Справочник.Цена
2 F427
 
29.09.04
13:17
хм... вообще то также, как в 21 релизе на 454 бухии...

или как описано в ЖКК....
3 Diter
 
29.09.04
13:19
(0) СПЦ.ИспользоватьДату(Док.ДатаДок,1) не помогает?
СПЦ.Цена.Установить(Док.ДатаДок,ЗначениеЦены); //известна по ходу обработки
4 ламерзкий тип
 
29.09.04
13:23
То (2) "23" и "460" - для порядка, они нипричем..
(3) - ЗначениеЦены , как и СПН.Цена - это числа.. здесь разницы нет..
ругань у меня на "невыбранный элемент", хотя я назначил "новый()"!
почему? не понимаю..
5 любитель
 
29.09.04
13:25
То 2 - в ЖКК я читал, но там опыт не передают.. :((
6 Valery
 
29.09.04
13:26
СПН.Цена может периодический
7 clg
 
29.09.04
13:27
Сначала надо записать новый элемент справочника, а уж потом устанавливать значение периодического реквизита.
8 Diter
 
29.09.04
13:28
(4) Когда ты пишешь СПН.Цена - ты уверен, что это реквизит справочника СПН имеющий тип "Число", а не ссылка на значение в подчинённом справочнике "Цены" в котором ты сейчас создаёшь новый (и соответственно ещё не записанный элемент)?
9 любитель
 
29.09.04
13:28
Тёзка, у меня там оператор и стоит: присвоение периодическому реквизиту:
СПЦ.Цена.Установить(Док.ДатаДок, СПН.Цена);
10 laeg
 
29.09.04
13:29
правильно и делает что говорит
СПЦ.Цена.Установить(Док.ДатаДок, СПН.Цена)

Зачем же СПЦ.Цена устанавливать СПЦ.Цена ???
Може все-же будет примерно так:
СПЦ.Цена.Установить(Док.ДатаДок, МояЦена)
11 ksv22
 
29.09.04
13:29
сначала Новый() потом ИспользоватьВладельца()
12 любитель
 
29.09.04
13:29
(8), уверен, ибо в спр.Номенкл. "Цена" определена, как число
13 любитель
 
29.09.04
13:31
(11) ВАХ!!! для меня нелогично, но пробую.. сча..
(10) - это в не ссылка, а число, так что все равно, что там писать ..
14 Valery
 
29.09.04
13:32
(9) У тебя оператор для СПЦ, а я говорю, о СПН.
Может быть , что этот реквизит, элемент другого справочника, тогда надо СПН.ЦЕНа.ТекущийЭлемент()
15 любитель
 
29.09.04
13:35
(14) - в отладчике СПН.Цена выводится числом, значит и подставляется число, проверено..
(11) - к сожалению:
СПЦ.Цена.Установить(Док.ДатаДок, СПН.Цена);
{C:\ВМ\UPDATE_460\EXTFORMS\DBF-FR-8-TO-7-F.ERT(410)}: Не выбран элемент!
16 ksv22
 
29.09.04
13:37
(13) про (11) - это ляп с моей стороны, сорри.
должно работать и как в (0)

СПН.Записать(); //здесь всё Ок, кроме цены
...
СПЦ = СоздатьОбъект("Справочник.Цены");
...      
СПЦ.ИспользоватьВладельца(СПН.ТекущийЭлемент());

тв коде, где написал "..." что-нибудь с СПН делал?
17 Valery
 
29.09.04
13:40
(15)а в конфигураторе СПН.ЦЕНА это что?
18 ksv22
 
29.09.04
13:40
ообще я всегда делаю так:

Спр = СоздатьОбъект("Справочник.ХХХХХ");
Спр.ИспользоватьВладелца(Владелец);
Спр.ИспользоватьДату(ВыбДата);
Спр.Реквизит = ВыбРеквизит;
Спр.Записать();

не пользуюсь методом Установить()
19 Diter
 
29.09.04
13:43
(14) Давно программируешь?
СПН.ЦЕНа.ТекущийЭлемент() - шедевр. Сам пробовал?
20 ksv22
 
29.09.04
13:44
Спр.Новый() еще нужно поставить после СоздатьОбъект():)
21 laeg
 
29.09.04
13:44
(15)
если база ДБФ попробуй реиндекснуть ее ... помогает. Был у меня подобный глюк.
22 любитель
 
29.09.04
13:46
(16) """тв коде, где написал "..." что-нибудь с СПН делал? """ - нет, это первое обращение к СПЦ
(18) - я знаю об этой "альтернативе".. можно попробовать её.. сча..
да, у меня такая-же штука творится в ТиС в прочих равных условиях, тоже для спр.Цены, блин.. :(
23 Evgeniya
 
29.09.04
13:47
См (7) clg стопудово прав !!!
24 любитель
 
29.09.04
13:47
(21) - уже реиндекснул, тоже в голову пришло.. увы, нет..
25 любитель
 
29.09.04
13:49
23.!!! Точно!!!!! всё, ребята, спасибо всем огромное!!..
бывает и на старуху проруха :))
26 любитель
 
29.09.04
13:50
+25 .. и девчатам тоже спасибо, отдельное :))
27 SnarkHunter
 
29.09.04
13:58
Маловато постов что-то... Я думал хотя бы до полтинничка дотянете...
28 любитель
 
29.09.04
14:00
27. ты уж извини, тупил до 23-го поста, сообразил-бы на 7-м, была бы точка раньше..
ей-богу, больше не буду!.. :))
29 SnarkHunter
 
29.09.04
14:01
:-))
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn