Имя: Пароль:
1C
1С v8
сделать доступным один реквизит ТЧ.
,
0 NoobiC
 
01.06.12
14:24
Всем привет. Не могу понять, как сделать сабж: У проведенного документа нужно оставить возможность изменения одного-единственного реквизита определенной табличной части. В движениях он участвовать не будет. Нужна возможность  просто заполнить данный реквизит позже, при проведенном документе. Натолкните на мысль, плиз)
1 Cube
 
01.06.12
14:26
(0) Переделать реквизит в дополнительный реквизит, значение которого хранится в регистре сведений, как во всех типовых...
2 Cube
 
01.06.12
14:27
+(1) Ой, не заметил, что это колонка ТЧ...
3 NoobiC
 
01.06.12
14:32
Вот как-то надо извернуться(
4 Wobland
 
01.06.12
14:33
а как вот такой изврат? завести независимый РС, при проведении писать туда документ, номенклатуру (что ещё там) и оставлять одно поле? потом править в регистре
5 НайдуУбъю
 
01.06.12
14:37
+(4) как вариант...
потому что в принципе записать значение поля в уже проведенный док без его повторного проведения невозможно..
6 NoobiC
 
01.06.12
14:38
(4) - не хочется ломать структуру документа. Там завязок много на другие доки. Думаю, может, каким-либо макаром перебрать элементы формы, устанавливая в них доступность?
7 vmv
 
01.06.12
14:40
(6) доступность - это последнее о чем нужно думать в вашей зазаче, а решать эту задачу через доступность - попахивает не скажу чем
8 kosts
 
01.06.12
14:47
(0) >при проведенном документе
Если проведение это принципиально, то можно так:
После открытия проведенного документа смотреть роль пользователя если ему доступно только изменение одного реквизита, то весь документ ставить ТолькоПросмотр=истина;
Поместить на форму кнопку для вызова собственной обработки где можно менять реквизиты.
При записи в модуле смотреть, если именно эта роль, то ставить Параметр ЭтоЗагрузка в Истина (что бы документ повторно не проводился). (как-то так)

Если повторное проведение допустимо, то я просто сравнивал при записи реквизиты Объекта и ссылки если они оказались не равны (кроме конечно особых реквизитов), то просто запрещал запись (Отказ=Истина).
9 NoobiC
 
01.06.12
14:51
(8) - ну, тогда, наверное, только через внешнюю обработку. Навесить на нее табличное поле, заполнить его как в документе, или выборочно полями, потом подставить и при закрытии записывать документ и закрывать его нах....
10 Kreont
 
01.06.12
14:53
+(8) +100
Только ставить режим такой надо что б не проводился доумент а просто записался:
Док.ОбменДанными.Загрузка = Истина;
Док.Записать(РежимЗаписиДокумента.Запись);
11 Ant1773
 
01.06.12
15:04
А если ТЧ - это вовсе и не ТЧ, а набор записей из РС?
2 + 2 = 3.9999999999999999999999999999999...