|
Запись документа в УФ без перепроведения | ☑ | ||
---|---|---|---|---|
0
Denyk
24.09.12
✎
19:01
|
Как записать проведенный документ в УФ без проведения? Все варианты уже перепробовал - все равно проводится.
|
|||
1
Wobland
24.09.12
✎
19:05
|
обменданными? и УФ тут ни при чём
|
|||
2
Denyk
24.09.12
✎
19:12
|
Ну как же не при чем.. В обычной форме кидаешь кнопку, например, и на неё обработчик типа:
|
|||
3
Denyk
24.09.12
✎
19:12
|
Записать(РежимЗаписиДокумента.Запись)
и все |
|||
4
Wobland
24.09.12
✎
19:12
|
(2) а вдруг нет формы?
|
|||
5
Denyk
24.09.12
✎
19:14
|
(4) Форма есть и в ней кнопка для записи документа. Только если он проведен, то не нужно его перепроводить.
|
|||
6
Wobland
24.09.12
✎
19:16
|
(5) док=Документы.НайтиПоНомеру().ПоулчитьОбъект()
док.Дата=ТекущаяДата() док.Записать() где форма? |
|||
7
Denyk
24.09.12
✎
19:18
|
(6) Я наверное неясно выразился? Еще разок: как из управляемой формы записать проведенный документ без его перепроведения.
|
|||
8
Wobland
24.09.12
✎
19:19
|
(7) читать (1)
|
|||
9
Denyk
24.09.12
✎
19:24
|
(8) Для тебя последний раз, не надо больше писать, если не понимаешь: как из управляемой формы документа записать его же самого, только если он проведен, то без перепроведения. Есть управляемая форма документа, на форме есть кнопка "Записать", при нажатии которой документ записывается, но не перепроводится.
|
|||
10
PiVa123
24.09.12
✎
19:24
|
В метаданных документов УП есть крыжик, "перепроводить документ при записи", видимо про него разговор.
|
|||
11
Denyk
24.09.12
✎
19:27
|
(10) В обычной форме просто по кнопке выполняешь как в (3) - и все дела. В УФ есть вариант типа:
&НаКлиенте Процедура ЗаписатьИВыйти(Команда) Записать(Новый Структура("РежимЗаписи", РежимЗаписиДокумента.Запись)); ЭтаФорма.Закрыть(); КонецПроцедуры но документ записывается все равно с перепроведением |
|||
12
Wobland
24.09.12
✎
19:28
|
(9) как вариант: навернуть новую кнопку, которая будет записывать в режиме загрузки данных (или как его там)
|
|||
13
Aprobator
24.09.12
✎
19:56
|
(0) Запись проведенного документа - РежимЗаписи.ОтменаПроведения.
|
|||
14
Stim
24.09.12
✎
20:02
|
докОбъект.проведен = истина;
:) |
|||
15
Ns33
24.09.12
✎
20:14
|
Делал подобное, фишка в том что указывать режим записи нужно в модуле. Если кто расскажет как короче сделать, буду рад.
&НаКлиенте Процедура ПечатьЧека(Команда) ТолькоЗапись=Ложь; //реквизит формы ПараметрыЗаписи=Новый Структура(); Если Записать(ПараметрыЗаписи) Тогда рез=РаботаСРРО.ПечатьЧека(МассивСтруктур, "0001"); Если рез=Истина Тогда Объект.ЧекПробит = Истина; ТолькоЗапись=Истина; Записать(ПараметрыЗаписи); КонецЕсли; КонецЕсли; //Если Записать(ПараметрыЗаписи) Тогда //КонецЕсли; КонецПроцедуры &НаСервере Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) Если ТолькоЗапись=Истина Тогда ТекущийОбъект.ДополнительныеСвойства.Вставить("ТолькоЗапись"); КонецЕсли; КонецПроцедуры //МОДУЛЬ ДОКУМЕНТА Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения) Если ДополнительныеСвойства.Свойство("ТолькоЗапись") Тогда Если ДополнительныеСвойства.ТолькоЗапись Тогда РежимЗаписи=РежимЗаписиДокумента.Запись; КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
16
Denyk
25.09.12
✎
00:46
|
(15) Оказывается есть путь по-короче:
&НаСервере Процедура ПодтвердитьДокументНаСервере() ЭтотДокумент = РеквизитФормыВЗначение("Объект"); ЭтотДокумент.Записать(РежимЗаписиДокумента.Запись); КонецПроцедуры &НаКлиенте Процедура Подтвердить(Команда) ПодтвердитьДокументНаСервере(); ЭтаФорма.Модифицированность = Ложь; ЭтаФорма.Закрыть(); КонецПроцедуры |
|||
17
Denyk
25.09.12
✎
00:47
|
Да, и это все в форме документа
|
|||
18
Ns33
25.09.12
✎
09:35
|
(16) Спасибо, буду знать. Единственное, если не вернуть обратно объект через ЗначениеВРеквизитФормы и не закрывать форму, а дальше с ней работать, то попытки изменить документ приведут к ошибке.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |