Имя: Пароль:
1C
1C 7.7
v7: Нужно поменять периодический реквизит
0 Milli
 
22.10.12
12:52
Пытаюсь прописать код, с помощью которого можно поменять периодический реквизит в справочнике. Но что-то реквизит не меняется на нужную дату.
Вот код:

   подр = создатьобъект("справочник.подразделения");
   если подр.НайтиЭлемент(элподр)<>0 тогда
       //пока подр.ПолучитьЭлемент()<>0 цикл
       мвз = создатьобъект("справочник.проекты");
       если мвз.НайтиПоКоду("099355")<>0 тогда    
           подр.ИспользоватьДату('01.09.12');  
           подр.УстановитьАтрибут("Субконто4","");  
           подр.Записать();
           подр.ИспользоватьДату('02.09.12');  
           подр.УстановитьАтрибут("Субконто4",мвз.текущийэлемент());
           подр.Записать();
       конецесли;
       //прервать;
   конецесли;

Что я не так делаю?
1 zak555
 
22.10.12
12:55
тип Субконто4 -- неопределенный ?
2 Milli
 
22.10.12
12:57
(1) да
3 zak555
 
22.10.12
12:59
подр.НазначитьТип("Субконто4", "справочник.подразделения");
4 zak555
 
22.10.12
13:00
только, елси ты хочешь убрать значение на дату 01.09.12 используй объект периодический
5 dk
 
22.10.12
13:02
назначитьтип для неопределенных вроде треба
6 Milli
 
22.10.12
13:10
так то мне нужно убрать значение на дату 03.09.12 и установить на 02.09.12
вот так прописала:

   подр = создатьобъект("справочник.подразделения");
   если подр.НайтиЭлемент(элподр)<>0 тогда
       мвз = создатьобъект("справочник.проекты");
       если мвз.НайтиПоКоду("099355")<>0 тогда  
           
           подр.НазначитьТип("Субконто4", "справочник.подразделения");
           подр.ИспользоватьДату('03.09.12');  
           подр.УстановитьАтрибут("Субконто4","");  
           подр.Записать();
           подр.ИспользоватьДату('02.09.12');  
           подр.УстановитьАтрибут("Субконто4",мвз.текущийэлемент());
           подр.Записать();
       конецесли;
   конецесли;

тоже не сработало.

(4) а как использовать периодический?
разве "подр.ИспользоватьДату('02.09.12')" не достаточно?
7 Zmich
 
22.10.12
13:13
(6) Естественно, там должно быть

подр.НазначитьТип("Субконто4", "справочник.проекты");

В (3) описка.
8 zak555
 
22.10.12
13:21
сейчас прохладно в таком одеянии
9 chief accountant
 
22.10.12
13:27
(0) стописят раз было сказано: пользуйтесь типовыми обработками, велики в металлолом
10 Milli
 
22.10.12
14:00
(3)(7) спасибки за подсказку! все получилось :)