Имя: Пароль:
1C
1C 7.7
v7: Последнее изменение периодического реквизита
0 mastodont
 
25.11.12
11:24
Подскажите как в 7-ке получить дату последнего изменения периодического реквизита справочника?
И можно ли вообще такое сделаит программно?

Хочется посмотреть в торговле все цены, которые не менялись, например, пол года. И не пойму как это сделать. С 7-й ужк давно не работал.
1 miki
 
25.11.12
12:05
Начал бы с ЖКК, если типовых под рукой нет, а поиск юзать западло.
2 Heckfy
 
25.11.12
12:33
Кури СоздатьОбъект("Периодический");
3 mastodont
 
27.11.12
18:43
(1) а в типовых это где-то используется?
4 Злопчинский
 
27.11.12
18:45
(3) поищи в конфигурации поиск по вусем текстам "Периодический" - получишь ответ
5 mastodont
 
27.11.12
18:47
(2) спасибо! то что надо!
6 vova1122
 
27.11.12
18:50
пер=создатьобъект("Периодический");
   Контр=СоздатьОбъект("Справочник.Контрагенти");
   Контр.ВыбратьЭлементы();
   Пока Контр.ПолучитьЭлемент()=1 цикл  
       Если Контр.ЭтоГруппа()=1 тогда
       Продолжить;
       КонецЕсли;  
       ссс=Контр.ТекущийЭлемент();
       пер.ИспользоватьОбъект("МойПериодическийРеквизит",Контр.ТекущийЭлемент());
       пер.выбратьзначения();
       наявна=0;  
           ВремТЗ.УдалитьСтроки();
           Пока пер.получитьЗначение()=1 цикл
            Наявна=Наявна+1;
            ВремТЗ.НоваяСтрока();
            ВремТЗ.ДатаЗн= пер.ДатаЗнач;
            ВремТЗ.СамоЗначение=пер.Значение;
          КонецЦикла;  


Вот кусок кода из моей базы, чтоб долго не мучился
7 1sevgene
 
27.11.12
19:18
Функция ПолучитьПоследнююДатуВводаПериодическогоРеквизита(ИмяРеквизита,спрЭлементСправочника)
ДатаПерЗначения = ПолучитьПустоеЗначение("Дата");
Пер = СоздатьОбъект("Периодический");
Пер.ИспользоватьОбъект(ИмяРеквизита,спрЭлементСправочника);
Если Пер.ВыбратьЗначения() = 1 Тогда
Если Пер.ПолучитьЗначение() = 1 Тогда
   ДатаПерЗначения = Пер.ДатаЗнач;
КонецЕсли;
КонецЕсли;
Пер = 0;
Возврат ДатаПерЗначения;
КонецФункции
8 vova1122
 
27.11.12
19:30
(7) И получите первую, а не последнюю дату.....
9 miki
 
27.11.12
19:33
(8)+1 про ОбратныйПорядок() тоже не мешало бы почитать...
10 1sevgene
 
27.11.12
19:40
Функция ПолучитьПоследнююДатуВводаПериодическогоРеквизита(ИмяРеквизита,спрЭлементСправочника)
ДатаПерЗначения = ПолучитьПустоеЗначение("Дата");
Пер = СоздатьОбъект("Периодический");
Пер.ИспользоватьОбъект(ИмяРеквизита,спрЭлементСправочника);
Пер.ОбратныйПорядок(1);
Если Пер.ВыбратьЗначения() = 1 Тогда
Если Пер.ПолучитьЗначение() = 1 Тогда
   ДатаПерЗначения = Пер.ДатаЗнач;
КонецЕсли;
КонецЕсли;
Пер = 0;
Возврат ДатаПерЗначения;
КонецФункции