Имя: Пароль:
1C
1С v8
8.2 как записать из формы в РС запись которая уже существует?
,
0 RomaH
 
naïve
27.07.11
15:02
Запись с измерениями уже есть такая, РС не переодический
записать надо из формы

сейчас ругается, что запись с такими измерениями существует, как переписать уже существующую запись?
1 zbv
 
27.07.11
15:03
из формы чего ?
2 Жан Пердежон
 
27.07.11
15:03
смотри в сп параметры метода записи
3 RomaH
 
naïve
27.07.11
15:06
из формы записи

ПередЗаписьюНаСервере(<Отказ>, <ТекущийОбъект>, <ПараметрыЗаписи>)

параметрызаписи - у меня пустая структура

запись идет по стандартной кнопке "Записать и закрыть"

может что в параметры записи добавить надо, вот только что?
4 RomaH
 
naïve
27.07.11
15:07
(2)
Записать(<ПараметрыЗаписи>)
Параметры:

<ПараметрыЗаписи> (необязательный)

Тип: Структура.
Структура параметров записи, которые могут быть обработаны в обработчиках событий записи. Состав параметров произвольный.
Возвращаемое значение:

Тип: Булево.
Истина - успешно записана; Ложь - в противном случае.
Описание:

Записывает одну запись регистра сведений.


....и что?
5 RomaH
 
naïve
27.07.11
15:14
&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
   Отказ = Истина;
   ТекущийОбъект.Записать(Истина);
КонецПроцедуры


так - записывает, но не закрывает форму
6 RomaH
 
naïve
27.07.11
15:15
а кнопки две стандартных -

Записать
Записать и закрыть

и как быть?
7 RomaH
 
naïve
28.07.11
08:25
т.е. надо свои команды делать на запись, и на Запись + закрытие?
8 RomaH
 
naïve
28.07.11
08:26
че-то как-то криво, ИМХО, должно быть правильное решение
9 dmpl
 
28.07.11
08:42
(8) Объект "РегистрСведенийМенеджерЗаписи" недоступен чтоли?
10 dmpl
 
28.07.11
08:43
(5) А зачем Отказ = Истина?
11 RomaH
 
naïve
28.07.11
08:57
(9) ТекущийОбъект что ли?

и что с ним делать?

если безОтказ= Истина - то пытается записать, но без замещения
12 Andy13
 
28.07.11
08:58
Если хочешь перезаписать существующую запись РС, то сие надо делать через набор записей, как я полагаю...
13 RomaH
 
naïve
28.07.11
09:01
мда, еще мнения?
14 RomaH
 
naïve
28.07.11
09:02
еще раз:
перезаписать запись дает - текущийОбъект.Записать();

но ... при этом если Отказ = Ложь; - пытается так же записать и с параметром перезаписи = Ложь; - что вызывает ошибку

а если Отказ = Истина , то не закрывает форму по кнопке
15 dmpl
 
28.07.11
09:08
(11) Отказ = Истина сообщает, что операция не удалась, и форма, соответственно, не закрывается скорее всего именно из-за отказа.

(14) Надо отключить стандартную обработку. Тогда повторной записи не будет.
16 hhhh
 
28.07.11
09:08
(14) а ПередЗаписьюНаСервере - это у тебя перед записью регистра?
17 RomaH
 
naïve
28.07.11
09:20
(16) это в форме записи
стандартной там нет
18 dmpl
 
28.07.11
10:10
(17) Стандартная форма записи регистра? Тогда замещение должно срабаывать автоматом при редактировании существующей записи. А для новой записи с теми же измерениями замещение автоматом не срабатывает по той причине, что пользователя надо уведомить о том, что он затирает данные. Поэтому, если реально надо затереть данные при вводе новой записи без надоедания пользователю глупыми сообщениями, то ставим свой обработчик кнопки с Записать(Истина) и ЭтаФорма.Закрыть().