Имя: Пароль:
1C
 
Изменить движения регистра накопления.
0 onx1
 
09.09.10
15:41
Как быстро и правильно изменить 1 реквизит регистра накопления?

Например мне нужно проставить значение измерения у всех движений 1 регистратора
1 Irbis
 
09.09.10
15:42
Для каждого Движение из Движения Цикл и Записать
2 Живой Ископаемый
 
09.09.10
15:43
быстрее всего было бы прямо в базе данных, и потом пересчитать итоги.
3 Живой Ископаемый
 
09.09.10
15:45
а, всего лишь у одного регистратора? тогда (1)
4 ASU_Diamond
 
09.09.10
15:46
(1) главное чтобы потом регистратор не перепровели
5 onx1
 
09.09.10
15:46
(1) Ок действительно.
6 Irbis
 
09.09.10
15:46
(4) Ну, уж пр это автор не спрашивал.
7 onx1
 
09.09.10
15:53
Ещё один связанный вопрос: как установить отбор на набор записей регистра НачДата < Дата < КонДата?
8 ASU_Diamond
 
09.09.10
15:55
(7) читай СП по Отбору у НабораЗаписей, последнее предложение
9 Irbis
 
09.09.10
15:55
(7) Для РН никак. Отбор только по регистратору. Выбери запросом регистраторы из периода и (1)
10 ASU_Diamond
 
09.09.10
15:57
(9) а для каких регистров это возможно?
11 magosh
 
09.09.10
16:09
(0)
Набор = РегистрыНакопления.<ИмяРегиста>.СоздатьНаборЗаписей();
Набор.Отбор.Регистратор.Установить(<Документ>);
Набор.Прочитать();
Для Каждого Запись Из Набор Цикл
   Если Запись.Период<Дата Тогда
       ...
КонецЦикла;
12 magosh
 
09.09.10
16:10
(11) Ну и в конце конечно
Набор.Записать();
13 onx1
 
09.09.10
16:16
(11)спасибо.
14 le_
 
09.09.10
16:21
(0) Мне кажется, было бы правильнее корректно заполнить и перепровести документ, который создал это движение...
15 onx1
 
09.09.10
16:24
Следующий вопрос :) А как изменить реквизит без отбора по регистратору? Тоесть для всех записей НачДата < Дата < КонДата

(14) правильно, но не то что нужно.
16 Живой Ископаемый
 
09.09.10
16:28
2(15) нет.
и в (9) и (8) написано почему
17 onx1
 
09.09.10
16:31
(16) Нет не ответ на как :)

В любом случае спасибо! Придется видимо писать запрос- выбирать список регистраторов и по ним формировать наборы записей.
18 hhhh
 
09.09.10
16:33
(14) нет, не подходит. Допустим, добавил я измерение в регистр, а у меня документы в базе накопились за 2 года. Нереально их все перепроводить.
19 le_
 
09.09.10
16:36
(18) Вести учет по новым реквизитам с начала года или месяца. В общем, выбрать период с которого будет вестись учет по этим реквизитам и перепровести только нужные документы.
20 onx1
 
09.09.10
16:44
(18) скажите пожалуйста, существует ли более правильный способ для изменения реквизита с отбором по дате, кроме описанного мной в (17)?
21 hhhh
 
09.09.10
16:47
(20) ну ведь сказали, и во всех книгах и документации написано: отбор только по РЕГИСТРАТОРУ. Чего ты тупишь?
22 ASU_Diamond
 
09.09.10
16:49
(21) + и только по равенству
23 Живой Ископаемый
 
09.09.10
16:49
2(20) только если принесешь гекатомбу всем богам...
24 ASU_Diamond
 
09.09.10
16:53
(23) а если в скульных таблицах напрямую?
25 onx1
 
09.09.10
16:54
(21) а что ты такой злой, я же тебя между прочим вежливо спросил и то только потому, что ты вклинился в беседу и сказал, что иногда тебе тоже приходиться корректировать напрямую
26 Живой Ископаемый
 
09.09.10
16:56
2(24) я написал в (1).
27 Живой Ископаемый
 
09.09.10
16:56
вернее в (2)
28 ASU_Diamond
 
09.09.10
16:59
(26) блин, это ты оказывается писал :)
29 hhhh
 
09.09.10
17:02
(25) а я разве вклинивался? Ну, извини, что-то отвлекли меня, подумал это уже другая тема.
30 magosh
 
09.09.10
17:19
(15) делай как в (17): запросом выбери все записи периода сгруппированные по регистратору и делай (11). Только в цикле проверку на период не убирай, на случай если у тебя один регистратор делает записи в разных периодах
Основная теорема систематики: Новые системы плодят новые проблемы.