Имя: Пароль:
1C
 
Изменение комментария документа в закрытом периоде!
0 Denken
 
14.08.07
11:41
Привет всем! Подскажите, плиз! В базе УТ введена дата запрета изменения данных, необходмо в док.ЗаказПокупателя изменить комментарии.(менеджеры обзванивают клиентов и заносят результат звонка).
1 IronDemon
 
14.08.07
11:47
Плохая мысль в самом документе менять. Лучше через регистр сведений ЗначенияСвойствОбъектов реализовать
2 Denken
 
14.08.07
11:50
Там еще есть крыжик, который надо ставить при определенной ситуации!!! Механизм введен давно, так что переделывать трудно! Может есть способ обойти все это?
3 Snovy
 
14.08.07
11:53
А по мне, так это плохая архитектура УПП и прочих типовых творений от 1С - зачем в документе поле комментарий (и  еще некоторые другие, не влияющие на проведение документов), если их изменение влечет либо перепроведение документа, либо проблему в (0). Либо таких полей вообще не должно быть в документе и должны быть разработаны другие механизмы хранения сопутствующей информации, либо докуменеты должны быть спроектированы по другому - при записи не перепроводиться с запретом изменения в проведенном документе реквизитов, влияющих на движения документа и свободным доступом к остальным реквизитам лдибо еще как....
4 Vbif
 
14.08.07
11:56
Заводишь Привелигерованный общий модуль
в нем пишешь процедуру  
Процедура ЗаписатьДокументПроверкиДат(ДокументОбъект)
ДокументОбъект.Записать(РежимЗаписиДокумента.ЗАПИСЬ)
КонецПроцедуры
пишешь обработку (внешнюю либо внутреннюю)
в ней поля под Документ и изменяемые поля (только не трогай что влияет на проводки, а то потом пользователь с полными правами перепроведет документ и все измениться)
по кнопке Выполнить пишешь
ДО = ПолеДокумента.ПолучитьОбъект();
ДО.Реквизит = Значение;
...
ЗаписатьДокументПроверкиДат(ДО);

должно взлететь (проверить не на чем)
5 Salvador Limones
 
14.08.07
11:57
(2) Есть. Своя форма для редактирования, а при записи сказать, что это ОбменДанными.
P.S. Также должны быть обработки проведения поправлены, хотя в последних релизах уже всё готово.
6 Vbif
 
14.08.07
11:57
ошибка в имени процедуры ЗаписатьДокументБЕЗПроверкиДат
7 Vbif
 
14.08.07
11:58
вот уже целых 2 варианта :)
есть 3-й напрямую в SQL ;)
8 Denken
 
14.08.07
12:04
База распределенная, с полными правами я один => как-то бы все это менее извращенно! Может еще что-нить?
9 Denken
 
14.08.07
12:17
Можно так: Создаем обработку для отбора доков, подлежащих изменению, в выполнении обработки:
СтароеСоответствиеГраницЗапрета = ПараметрыСеанса.ГраницыЗапретаИзмененияДанных.Получить();
   
   ПараметрыСеанса.ГраницыЗапретаИзмененияДанных = Новый ХранилищеЗначения(Неопределено, Новый СжатиеДанных(0));
//и возвращаем все на свои места
ПараметрыСеанса.ГраницыЗапретаИзмененияДанных = СтароеСоответствиеГраницЗапрета ;
10 Salvador Limones
 
14.08.07
12:18
(9) И что? Документ будет перепроведён. У меня (5) работает на ура.
11 Denken
 
14.08.07
12:25
А в чем проблема? Если просто Записать?
12 Фауст
 
14.08.07
12:35
(3) Ну вообщето можно разрулить свойствами и категориями.
13 Черников
 
14.08.07
13:03
Мы для этого используем документ "Событие" с видом прочее.
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший