Имя: Пароль:
1C
1С v8
Регистр сведений
0 Nenaviwu1c20
 
30.08.12
11:56
Хочу добовлять движения при изменении операции то бишь в процедуре ДействияФормыДействиеУстановитьОперацию().
Регистр неподчиненный и непереодический.Движения тупо стираются.Нехочется выгружать и загружать движения ибо сисема будет грузиться
1 Nenaviwu1c20
 
30.08.12
11:58
НЗ = РегистрыСведений.УстановкаСкидокПоЧекам.СоздатьМенеджерЗаписи();
           //Запись = НЗ.Добавить();
           //НЗ.Активность = Истина;
           НЗ.Код = форма.Код;
           //НЗ.Период = ТекущаяДата();
           //НЗ.Регистратор = Ссылка;
           НЗ.Записать();
           //НД.Записать();
2 Nenaviwu1c20
 
30.08.12
11:59
всего одно измерение.При этом он регистрирует одну или две записи и все))
Что не так?
3 Kashemir
 
30.08.12
11:59
(1) Это че за ерунда ?
4 Kashemir
 
30.08.12
12:00
РегистрСведенийНаборЗаписей.<Имя регистра сведений>.Записать (InformationRegisterRecordSet.<Имя регистра сведений>.Write)
РегистрСведенийНаборЗаписей.<Имя регистра сведений> (InformationRegisterRecordSet.<Имя регистра сведений>)
Записать (Write)
Синтаксис:

Записать(<Замещать>)
Параметры:

<Замещать> (необязательный)

Тип: Булево.
Определяет режим замещения существующей записи в соответствии с текущими установками отбора. Истина - перед записью существующие записи будут удалены. Ложь - записи будут дописаны к уже существующим в информационной базе записям
Значение по умолчанию: Истина
Описание:

Записывает набор записей в базу данных. В зависимости от переданного параметра, может быть выполнено добавление записей или их замещение.

Доступность:

Сервер, толстый клиент, внешнее соединение.
Примечание:

Для регистров сведений, подчиненных регистратору, при вызове с параметром <Замещать> равным Ложь после записи в информационную базу набор записей очищается (удаляются записи из набора).
Пример:

НаборКурсов.Записать();
5 Rie
 
30.08.12
12:02
(4) У него - _менеджер_ записи, а не набор записей.
6 Rie
 
30.08.12
12:02
(2) А что должно происходить?
7 Rie
 
30.08.12
12:02
+(6) Насчёт двух записей - это ты зря, такого быть не может. Одна.
8 Kashemir
 
30.08.12
12:03
(5) Окей - пусть менеджер


РегистрСведенийМенеджерЗаписи.<Имя регистра сведений>.Записать (InformationRegisterRecordManager.<Имя регистра сведений>.Write)
РегистрСведенийМенеджерЗаписи.<Имя регистра сведений> (InformationRegisterRecordManager.<Имя регистра сведений>)
Записать (Write)
Синтаксис:

Записать(<Замещать>)
Параметры:

<Замещать> (необязательный)

Тип: Булево.
Определяет режим замещения существующей записи с тем же набором значений измерений регистра и с тем же периодом (для периодических регистров). Истина - если запись регистра сведений с таким набором существует, то выполняется замещение; Ложь - запись будет дописана к уже существующим в информационной базе записям.
Значение по умолчанию: Истина
Описание:

Записывает в базу данных запись регистра сведений с текущими значениями свойств. Если запись регистра сведений была предварительно считана из базы данных, то при выполнении метода сначала считанная запись удаляется, а затем производится запись измененной записи. С помощью параметра <Замещать> регулируется, будет ли метод замещать запись, если в момент выполнения метода существует другая (исключая считанную) запись с такими же значениями измерений регистра и с таким же периодом для периодических регистров.

Доступность:

Сервер, толстый клиент, внешнее соединение.
Примечание:

При вызове с параметром <Замещать> равным Ложь после записи в информационную базу запись очищается.
Пример:
9 Nenaviwu1c20
 
30.08.12
12:05
меняю на ложь немногое меняется почитал синтаксис))Просто никогда не делал движение при изменении  операции + независимому регистру
10 Rie
 
30.08.12
12:06
(8) Пусть лучше ТС объяснит, что ему надо.
Код из (1), судя по (2), работает правильно :-)
11 МишКа
 
30.08.12
12:06
(0) Задай себе вопрос: в чем смысл регистров сведений.
12 Rie
 
30.08.12
12:07
(9) Какие измерения и ресурсы у тебя в регистре сведений? Если измерение ровно одно и называется код - то чего ты хочешь?
13 Nenaviwu1c20
 
30.08.12
12:18
я ресурсы задам
14 Ненавижу 1С
 
гуру
30.08.12
12:23
(13) ты меня позоришь, вон отсюда
15 МишКа
 
30.08.12
12:40
(13) Сначала смысл, потом ресурсы ))))
16 Alex375
 
30.08.12
12:57
Измерениями регистра определяется уникальность записей. Ты не можешь хранить в регистре записи с одинаковыми наборами измерений. В твоем случае в РС будет записей не больше чем есть различных кодов фирм.
17 aki_rezak
 
30.08.12
13:31
(0) продолжайте наблюдения
18 vmv
 
30.08.12
13:40
да пусть пишет, вам жалко шоли
19 Nenaviwu1c20
 
30.08.12
13:48
все я тут говорю смысл.Есть чеки н-ной организации со штрихкодами которые будут пробиваться в систему если есть код чека он будет ПроцентСкидкиНаценки делать 50 иначе отказ.Нужна была тупа общая таблица по реализации и я решил что это будет рег сведений)я понапихал туда ресурсов т.к. для меня они не играют никакой роли изаполняю измерение все работает.Но мне все равно не нравится
20 Nenaviwu1c20
 
30.08.12
13:52
Если ВидОперации = Перечисления.ВидыОперацийРеализацияТоваров.ПродажаЧеком Тогда
   //Если ПроверкаДатыЧека <> Истина Тогда
       //ПроверкаДатыЧека = Истина;
       Форма = ЭтотОбъект.ПолучитьФорму("ФормаСкидки");
       форма.ОткрытьМодально();
       Если форма.отказ = истина Тогда
           Предупреждение("Данный чек зарегестрирован в системе выполнение операции невозможно");
           ЭлементыФормы.ДатаЧека.Видимость =Ложь;
           ВидОперации = Перечисления.ВидыОперацийРеализацияТоваров.ПродажаКомиссия;
           
           //Возврат;
               //ВидОперации = мВидОперации  ;
           ИначеЕсли форма.отказ = Ложь Тогда
           //Движения.УстановкаСкидокПоЧекам.Записывать = Истина;
           //Движения.УстановкаСкидокПоЧекам.Очистить();
           НЗ = РегистрыСведений.УстановкаСкидокПоЧекам.СоздатьМенеджерЗаписи();
           //Запись = НЗ.Добавить();
           //НЗ.Активность = Истина;
           НЗ.Код = форма.Код;
           Нз.Ссылка = Ссылка;
           нз.Контрагент = Контрагент;
           нз.Подразделение =Подразделение;
           нз.склад =Склад;
           //НЗ.Период = ТекущаяДата();
           //НЗ.Регистратор = Ссылка;
           НЗ.Записать(Ложь);
           //НД.Записать();
           для каждого стр из Товары цикл
               стр.ПроцентСкидкиНаценки =50;
               ОбработкаТабличныхЧастей.РассчитатьСуммуТабЧасти(стр,Ссылка);
               ОбработкаТабличныхЧастей.РассчитатьСуммуНДСТабЧасти(стр,Ссылка);
           КонецЦикла;    
           
           Предупреждение("Код чека успешно зарегестрирован в системе");
       //КонецЕсли;
   КонецЕсли;
   
   КонецЕсли;
21 Nenaviwu1c20
 
30.08.12
13:52
а в форме проверяю есть ли такой кодик с типом строка в регистре
22 Nenaviwu1c20
 
30.08.12
13:56
так что прежде чем ругать если у вас есть какие либо другие предложения по тому как сохранить н-ое количество полей в одной таблице пожалуйста жду с нетерпением(не говорите добавь таблицу в документ)
23 Ненавижу 1С
 
гуру
30.08.12
14:43
(22) насыпать запятых?
24 Rie
 
30.08.12
15:17
(22) Так а поясни тогда вопрос в (0). Что не так? Или ты просто сюда похвастаться забежал?
25 Nenaviwu1c20
 
30.08.12
15:52
ни в коем случае я себе руки поотрывать хочу за то что я написал движения при изменении операции(
26 Nenaviwu1c20
 
30.08.12
15:52
Ненавижу 1С -клон мой)с грамматикой у меня всю жизнь проблемы были))))
27 Rie
 
30.08.12
15:58
(25) Так проблема-то у тебя в чём?
28 Nenaviwu1c20
 
30.08.12
16:09
только одна.Раздвоение личности)А так благодарю всех кто откликнулся
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.