Имя: Пароль:
1C
1С v8
Дозаписать набор данных
, ,
0 maurita23
 
16.11.21
16:48
У меня есть код
ИмяРеквизита = СтрокаРегистра.Имя + "НаборЗаписей";
НаборЗаписей = РеквизитФормыВЗначение(ИмяРеквизита);
НаборЗаписей.Отбор.Регистратор.Установить(ДокументДвижений);
НаборЗаписей.Прочитать();
ЗначениеВРеквизитФормы(НаборЗаписей, ИмяРеквизита);

У меня данные, они каждый раз перезаписываются, а мне надо, чтобы они сохранялись. Например, движения 4х документов. В моем случае, они перезаписываются.
Как можно переделать эту процедуру ЗначениеВРеквизитФормы? Ничего не могу придумать(
1 lodger
 
16.11.21
17:07
(0) записываются они могут только в базу.
а на форму выводится последний прочитанный набор записей.
добавлять данные по разным регистраторам в один набор записей где есть подчинение регистратору - нонсенс.
2 maurita23
 
16.11.21
17:14
(1) Может быт ест способ их все вывечти на форму? Мне, в принципе, это и нужно.
3 Dmitrii
 
гуру
16.11.21
18:06
Вы всё продолжаете шаманить одной операцией сторно нескольких документов?
Операция сторно

Не страдайте ерундой.
Для решения задачи есть два пути.
Первый. Написать обработку, которая будет использовать типовое заполнение операции. Одна операция сторно для одно докуента.
Второй. Написать обработку заполнения операции на основании нескольких сторнируемых документов.

Первый путь проще. Пара десятков строк кода.
Второй немного сложней.

Но в любом случае тебе не нужно то, что ты спрашиваешь в (0).
4 maurita23
 
17.11.21
09:37
(3) Я пыталась сделать обработку,но у меня все упирается в то, что в обработке программа не знает Регистры
Для каждого СтрокаРегистра Из Регистры Цикл

Я пыталась заменить регитсры на Медаданные.РегистрыБухгалтерии, но тогда просто не срабаьывает код, так как куча ошибок и программа не знает нужные поля.
Например,
    Если СтрокаРегистра.Имя = "Хозрасчетный" Тогда
            СтрокаРегистра.ЕстьРеквизит = Истина;
            Продолжить;
        КонецЕсли;
Ругается на ЕстьРеквизит , в других случаях ругается на Отображение и так далее.
5 Малыш Джон
 
17.11.21
10:00
(4) надо не пытаться заменить что-нибудь на что-нибудь, руководствуясь рандомом. Надо погуглить и прочитать как работать с набором записи регистра (какой там требуется) в 1С в управляемых формах.
6 maurita23
 
17.11.21
11:59
Перерыла вс. конфигурацию и не нашла как Регистры инициализируются.
Для каждого СтрокаРегистра Из Регистры Цикл


В гугле тоже нет.
7 lodger
 
17.11.21
12:01
(4) что такое
Регистры
что значит
заменить регитсры на Медаданные.РегистрыБухгалтерии
почему вы пишете
СтрокаРегистра.ЕстьРеквизит = Истина;
8 Dmitrii
 
гуру
17.11.21
12:14
По ходу дела автор ветки - бухгалтер, которого кто-то пустил в конфигуратор.

(4)(6) Закройте конфигуратор, отойдите от компьютера и позовите специалиста.
Ну ей богу же, это выйдет гораздо дешевле, чем потом расхлёбывать то, что вы там сейчас наваяете. Без обид.
9 maurita23
 
17.11.21
12:18
(7) Это типовой код) СтрокаРегистра.ЕстьРеквизит = Истина;

Регистры это список всех регистров.
10 maurita23
 
17.11.21
12:45
Спасибо, поняла, как нужно. Вопрос закрыт.
11 polosov
 
17.11.21
13:06
(10) Что-то боязно за конфигурацию после таких слов.