Имя: Пароль:
1C
1C 7.7
v7: Запись периодических ревизитов справочника
,
0 kostya_77
 
29.08.16
11:53
Как из обработки записать периодический реквизит справочника?
1 Горогуля
 
29.08.16
11:53
в полном согласии с СП
2 Остап Сулейманович
 
29.08.16
11:55
(1) И то только если не снята фишка "Ручное изменение".
3 kostya_77
 
29.08.16
11:58
делаю так
текэлем.Цена.Установить(ВыбНачПериода,лпЦена)
метод Установить ругается - Недопустимая операция
4 Лефмихалыч
 
29.08.16
12:00
текэлем - это что?
5 kostya_77
 
29.08.16
12:00
текущий элемент справочника
6 Злопчинский
 
29.08.16
12:01
(3) текэлем.использоватьдату(дата)
текэлем.цена = цена
7 Злопчинский
 
29.08.16
12:02
через установить - смотри сп внимательно
8 Злопчинский
 
29.08.16
12:03
если операция массовая и часто используемая и надо экономить - тогда используй объект "периодический"
на чтении он дает ~25% быстрее, на записи не проверял, но по идее тоже дб побыстрее
9 kostya_77
 
29.08.16
12:12
через использовать дату не устанавливается
10 Злопчинский
 
29.08.16
12:13
(9) устанавливается.
долби упорнее
11 kostya_77
 
29.08.16
12:15
Делаю так
    текэлем = СпрЦены.ТекущийЭлемент();  
    текэлем.Цена.Установить(ВыбНачПериода,лпЦена);
    СпрЦены.Записать();

ругается
12 kostya_77
 
29.08.16
12:17
Что не так делаю?
13 Злопчинский
 
29.08.16
12:17
(11) так нельзя.
14 kostya_77
 
29.08.16
12:18
а как?
15 Злопчинский
 
29.08.16
12:19
СпрЦены.Цена.Установить(ВыбНачПериода,лпЦена);
16 Злопчинский
 
29.08.16
12:20
или
СпрЦены.ИспользоватьДату(ВыбНачПериода);
СпрЦены.Цена = лпЦена;
17 kostya_77
 
29.08.16
12:21
Спасибо. получилось
18 Злопчинский
 
29.08.16
12:22
.. Метод  можно использовать только для объектов-справочников, созданных функцией СоздатьОбъект

текэлем = СпрЦены.ТекущийЭлемент();  

- здесь текэлем - создан функцией СоздатьОбъект? - НЕТ! так какого хз ты применяешь к нему метод которой только для объектов, созданных СоздатьОбъект()

программирование, брат, это не клацанье по текладе, это, бро, читать и думать много
19 kostya_77
 
29.08.16
12:48
а как установить реквизиты у нового элемента справочника, созданного СпрЦены.Новый()?
20 Chum
 
29.08.16
12:50
(19) никак. только после записи элемента
21 Chum
 
29.08.16
12:51
(19) таблица периодических реквизитов чем-то напоминает таблицу подчиненного справочника. Записать значение в эту таблицу можно только после записи самого элемента-владельца.
22 Tarlich
 
29.08.16
12:53
а надо так


    текэлем = СпрЦены.ТекущийЭлемент();  
    текэлем.Цена.Установить(ВыбНачПериода,лпЦена);
    текэлем.Записать();
23 Ёпрст
 
29.08.16
12:57
(22) ну-ну
24 Chum
 
29.08.16
13:24
еще не мешает посмотреть свойства ПР на предмет "изменяется вручную" и "изменяется документами".
25 Злопчинский
 
29.08.16
17:20
(19) "а как установить реквизиты у нового элемента справочника, созданного СпрЦены.Новый()?"

- как всегда

СпрЦены.Новый()
СпрЦены.ИспользоватьДату(ТвояДата);
СпрЦены.Цена = Цена; //цена на ТвояДата
26 Зая Бусечка
 
29.08.16
17:25
(25) А записать() где?
27 Torquader
 
29.08.16
18:43
(25) Можно ещё через объект "периодический" - там интереснее.
28 Злопчинский
 
29.08.16
21:44
(26)  самостоятельно!
29 trooba
 
29.08.16
22:08
(28) Предлагаю озадачить ТС. Кроме такого механизма использовать периодический и сделать 2 записи одновременно на 1 и туже дату. Платформа позволяет.
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший