Имя: Пароль:
1C
1C 7.7
v7: Как, программно, изменить дату в истории сотр-ка, созданная проведением док-та?
0 IgorTrifonov
 
14.12.13
13:07
Всем здрасьте. Есть периодический реквизит у справочника сотрудники который изменяется проведением документа.
Отчёт за прошлый месяц уже закончен, а дату в истории этого самого реквизита надо исправить.
Хотелось бы не перепроводить документ, а какой-нибудь внешней обработкой заменить дату в истории, например так:
Процедура Сформировать()
    НомерДок = "123456";
    Док = СоздатьОбъект("Документ.Договор");
    Если Док.НайтиПоНомеру( НомерДок,Дата(2013,11,28) ) = 0 Тогда
        Возврат
    КонецЕсли;
        
    Ист = СоздатьОбъект ("Периодический");
    Ист.ИспользоватьОбъект("НеВзиматьЕСНвФСС",Док.Сотрудник.ТекущийЭлемент() );

    Ист.ВыбратьПоДокументу( Док.ТекущийДокумент() );
    Пока Ист.ПолучитьЗначение()>0 цикл
         Ист.ДатаЗнач = Дата(2013,12,01);
         Прервать
    КонецЦикла;
    Ист.Записать();   // НЕ РАБОТАЕТ ТАК КАК ЗАПИСЬ СОЗДАНА ПРИ ПРОВЕДЕНИИ ДОКУМЕНТА
КонецПроцедуры
1 ДенисЧ
 
14.12.13
13:08
Можно прямым запросом
можно изменить дату документа.

Это тебе не 8ка.
2 IgorTrifonov
 
14.12.13
13:18
даты документа должны остаться как есть
это только запись в истории, именно дату истории надо заменить
3 ДенисЧ
 
14.12.13
13:19
(2) Стенку показать?
у тебя 77, там все движения жёстко привязаны к документу.
Или переходи на 8*, или посылай требователей на.
4 ДенисЧ
 
14.12.13
13:19
я поступаю вторым вариантом обычно. причём в грубой матерной форме.
5 IgorTrifonov
 
14.12.13
13:20
понято, спасибо.
6 mdocs
 
14.12.13
15:39
вводить запись другим документом, по другому никак.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан