Имя: Пароль:
1C
1С v8
После отработки "ПриЗаписи" (через подписку) остается признак модифицированности
0 live in sky dreams
 
29.06.14
15:06
Собсно сабж.
Внутри "ПриЗаписи" Источник.Записать() делаю.
В чем может быть причина сабжа?
1 Отладчик
 
29.06.14
15:08
А внутре у неё неонка.
2 live in sky dreams
 
29.06.14
15:15
(1)Не понял вопроса. Какая неонка?
3 live in sky dreams
 
29.06.14
15:16
Внутри "ПриЗаписи" я редактирую текстовый реквизит объекта "Источник", затем делаю "Записать()".

Вот что внутри.
4 live in sky dreams
 
29.06.14
15:30
Я кажется начинаю догонять.
ПриЗаписи объект уже записан, флаги модифицированности объекта и формы установлены в ложь.
Я меняю значение реквизита, модифицированность формы и объекта становятся истина.
записываю объект, модифицированность объекта становится ложь.
А форма, похоже, остается модифицированной.

Так? или где?
5 Dmitry1c
 
29.06.14
15:31
>А форма, похоже, остается модифицированной.
так точно
6 live in sky dreams
 
29.06.14
15:31
"А форма, похоже, остается модифицированной. " Читать как "А форма, похоже, остается модифицированной, поскольку открыта в момент изменения реквизита методом ПриЗаписи через подписку"
7 live in sky dreams
 
29.06.14
15:32
Тогда вопрос..
Как обновить флаг модифицированности открытой формы из подписки?
То есть имея для оперирования только "Объект"
8 Бешеная Нога
 
29.06.14
15:33
делай перед записью
9 live in sky dreams
 
29.06.14
15:36
(8)ПередЗаписью значения в текстовом реквизите еще нет.
Это номер документа
10 live in sky dreams
 
29.06.14
15:49
Блин. И с нумерацией проблема.
Номер формируется = ПрефиксОрганизации + нули + порядковыйНомер

Мне в некоторых видах документов нужно восстанавливать исходный номер (без префикса) и выставлять в нем префикс по своему, что я и делаю в коде строковыми операциями с существующим номером.

В итоге номера получаются не уникальными.
Как правильно это делать?
11 live in sky dreams
 
29.06.14
16:01
УстановитьНовыйНомер в "ПриЗаписи" не работает.. Генерируется номер по умолчанию.
Так как правильно сделать?
12 live in sky dreams
 
29.06.14
16:11
Выкрутился вроде..
В типовой процедуре добавил кое что

Процедура ПриУстановкеНовогоНомераДокумента(Источник, СтандартнаяОбработка, Префикс) Экспорт
    
    //++Rem
    Если Источник.Метаданные().Имя = "АктОбОказанииПроизводственныхУслуг" ИЛИ Источник.Метаданные().Имя = "РеализацияТоваровУслуг" Тогда
        Возврат
    КонецЕсли;
    //--Rem
    ОбщегоНазначения.ДобавитьПрефиксОрганизации(Источник, Префикс);
    
    ОбщегоНазначения.ДобавитьПрефиксУзла(Префикс);    
    
Конецпроцедуры

А в подписке "ПередЗаписью" нужного документа использовал метод УстановитьНовыйНомер, если "Источник.ЭтоНовый()"

Все просто оказалось.
Мои дописки при обновлении ж не затрутся?
2 + 2 = 3.9999999999999999999999999999999...