Форум программистов, компьютерный форум, киберфорум
1С
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.90/93: Рейтинг темы: голосов - 93, средняя оценка - 4.90
10 / 10 / 4
Регистрация: 03.10.2010
Сообщений: 350

Записать табличное поле документа в регистр сведений

03.11.2013, 18:10. Показов 19986. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно записать данные из табличного поля документа в регистр сведений при проведении документа.

Регистр сведений:
Измерения: Название, сотрудник (по ним идет индексация).
Ресурсы: статус.

Обработчик проведения:
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Процедура ОбработкаПроведения(Отказ, Режим)
    
    регистр = РегистрыСведений.РегистрСведений1.СоздатьМенеджерЗаписи();
    Для Каждого ТекСтрокаРабочиеПроекты Из РабочиеПроекты Цикл
        //регистр.Период   = ТекущаяДата();
        регистр.Название = ТекСтрокаРабочиеПроекты.Название;
        регистр.Сотрудник = ТекСтрокаРабочиеПроекты.Сотрудник;
        регистр.Статус = ТекСтрокаРабочиеПроекты.Статус;
 
        //записываем
        регистр.Записать();
    конеццикла;
 
КонецПроцедуры
Проблема заключается в том, что после проведения какого-либо документа в регистр сведений записывается лишь последняя строка из табличной части документа. Мне нужно, чтобы записались все строки.
Регистр сделал непериодическим.
В чем проблема? Почему 1С отказывается записать данные в регистр?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.11.2013, 18:10
Ответы с готовыми решениями:

Табличное Поле
Всем привет! Недавно начал изучать 1С 8.1 Программирование и столкнулся пока что с неразрешимой для себя задачей На форме документа есть...

Табличное Поле
Всем привет! Недавно начал изучать 1С 8.1 Программирование и столкнулся пока что с неразрешимой для себя задачей:) На форме документа...

Регистр Сведений
Есть регистр сведений НоменклатураКонтагентов с измерениями: Период, Контрагент, Номенклатура, ХарактеристикаНоменклатуры. Первоначально...

22
Модератор
Эксперт 1С
 Аватар для Dethmontt
4032 / 2977 / 594
Регистрация: 10.03.2011
Сообщений: 11,701
Записей в блоге: 1
03.11.2013, 21:34
Студворк — интернет-сервис помощи студентам
И почему это условие не вынести в запрос что бы сократить ЦИКЛы ???
Если Выборка.НоменклатураДок <> Выборка.РегНоменклатура ИЛИ Выборка.КолВоДок <> Выборка.РегКолВо ИЛИ Выборка.СуммаДок <> Выборка.РегСебестоимость ТОгда

Добавлено через 1 минуту
Цитата Сообщение от delphi_Int Посмотреть сообщение
будет записано то, что мы удалили
Цитата Сообщение от Dethmontt Посмотреть сообщение
ЕСТЬNULL(Таблица.Номенклатура1, 0) КАК НоменклатураДок,
Как? ее же нет уже в табличной части...
0
null
 Аватар для delphi_Int
57 / 51 / 13
Регистрация: 06.11.2012
Сообщений: 435
03.11.2013, 21:38
Ладно, хотите поиздеваться, дам Вам шанс. А почему вы не спросили про группировку записей в параметре временной таблицы. Эта ошибка гораздо приоритетнее всех вышеперечисленных ???

Добавлено через 2 минуты
Это пример для форума. Т.е. кусок кода. Он не будет работать должно без остального пирога
0
Модератор
Эксперт 1С
 Аватар для Dethmontt
4032 / 2977 / 594
Регистрация: 10.03.2011
Сообщений: 11,701
Записей в блоге: 1
04.11.2013, 01:06
Цитата Сообщение от delphi_Int Посмотреть сообщение
А почему вы не спросили про группировку записей в параметре временной таблицы. Эта ошибка гораздо приоритетнее всех вышеперечисленных ???
Не вижу группировку...

Добавлено через 2 минуты
Цитата Сообщение от delphi_Int Посмотреть сообщение
Ладно, хотите поиздеваться, дам Вам шанс.
Я не издеваюсь... Просто интересно пообщаться со "спецом"

Добавлено через 3 часа 18 минут
И все же... Я бы рассмотрел такой вариант где результат запроса возвращает только измененные строки табличной части документа

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
    
    Запрос = Новый Запрос("ВЫБРАТЬ
                          | КурсыСтало.Курс КАК КурсПосле,
                          | КурсыСтало.ВнесеннаяСумма КАК ВнесеннаяСуммаПосле,
                          | КурсыСтало.СтоимостьКурса КАК СтоимостьКурсаПосле
                          |ПОМЕСТИТЬ КурсыСталоДоГруппировки
                          |ИЗ
                          | &ТЗ КАК КурсыСтало
                          |;
                          |
                          |////////////////////////////////////////////////////////////////////////////////
                          |ВЫБРАТЬ
                          | КурсыСталоДоГруппировки.КурсПосле,
                          | СУММА(КурсыСталоДоГруппировки.ВнесеннаяСуммаПосле) КАК ВнесеннаяСуммаПосле,
                          | СУММА(КурсыСталоДоГруппировки.СтоимостьКурсаПосле) КАК СтоимостьКурсаПосле
                          |ПОМЕСТИТЬ КурсыСтало
                          |ИЗ
                          | КурсыСталоДоГруппировки КАК КурсыСталоДоГруппировки
                          |
                          |СГРУППИРОВАТЬ ПО
                          | КурсыСталоДоГруппировки.КурсПосле
                          |;
                          |
                          |////////////////////////////////////////////////////////////////////////////////
                          |ВЫБРАТЬ
                          | КурсыБыло.Курс КАК КурсДо,
                          | СУММА(КурсыБыло.ВнесеннаяСумма) КАК ВнесеннаяСуммаДо,
                          | СУММА(КурсыБыло.СтоимостьКурса) КАК СтоимостьКурсаДо
                          |ПОМЕСТИТЬ КурсыБыло
                          |ИЗ
                          | Документ.ВнесениеОплаты2.ОплатаКурсов КАК КурсыБыло
                          |ГДЕ
                          | КурсыБыло.Ссылка = &Ссылка
                          |
                          |СГРУППИРОВАТЬ ПО
                          | КурсыБыло.Курс
                          |;
                          |
                          |////////////////////////////////////////////////////////////////////////////////
                          |ВЫБРАТЬ
                          | КурсыСтало.КурсПосле КАК Курс,
                          | ЕСТЬNULL(КурсыСтало.ВнесеннаяСуммаПосле, 0) КАК ВнесеннаяСуммаСтало,
                          | ЕСТЬNULL(КурсыСтало.СтоимостьКурсаПосле, 0) КАК СтоимостьКурсаСтало,
                          | ЕСТЬNULL(КурсыБыло.ВнесеннаяСуммаДо, 0) КАК ВнесеннаяСуммаБыло,
                          | ЕСТЬNULL(КурсыБыло.СтоимостьКурсаДо, 0) КАК СтоимостьКурсаБыло
                          |ПОМЕСТИТЬ Результат
                          |ИЗ
                          | КурсыСтало КАК КурсыСтало
                          |     ЛЕВОЕ СОЕДИНЕНИЕ КурсыБыло КАК КурсыБыло
                          |     ПО КурсыСтало.КурсПосле = КурсыБыло.КурсДо
                          |
                          |ОБЪЕДИНИТЬ
                          |
                          |ВЫБРАТЬ
                          | КурсыБыло.КурсДо,
                          | ЕСТЬNULL(КурсыСтало.ВнесеннаяСуммаПосле, 0),
                          | ЕСТЬNULL(КурсыСтало.СтоимостьКурсаПосле, 0),
                          | ЕСТЬNULL(КурсыБыло.ВнесеннаяСуммаДо, 0),
                          | ЕСТЬNULL(КурсыБыло.СтоимостьКурсаДо, 0)
                          |ИЗ
                          | КурсыБыло КАК КурсыБыло
                          |     ЛЕВОЕ СОЕДИНЕНИЕ КурсыСтало КАК КурсыСтало
                          |     ПО (КурсыСтало.КурсПосле = КурсыБыло.КурсДо)
                          |;
                          |
                          |////////////////////////////////////////////////////////////////////////////////
                          |ВЫБРАТЬ
                          | Результат.Курс,
                          | Результат.ВнесеннаяСуммаБыло,
                          | Результат.ВнесеннаяСуммаСтало,
                          | Результат.СтоимостьКурсаБыло,
                          | Результат.СтоимостьКурсаСтало,
                          | Результат.ВнесеннаяСуммаСтало - Результат.ВнесеннаяСуммаБыло КАК РазницаВнесеннаяСумма,
                          | Результат.СтоимостьКурсаСтало - Результат.СтоимостьКурсаБыло КАК РазницаСтоимостьКурса
                          |ИЗ
                          | Результат КАК Результат
                          |ГДЕ
                          | &ЭтоНеНовый
                          | И (Результат.ВнесеннаяСуммаСтало - Результат.ВнесеннаяСуммаБыло <> 0
                          |         ИЛИ Результат.СтоимостьКурсаСтало - Результат.СтоимостьКурсаБыло <> 0)");
                          
    Запрос.УстановитьПараметр("ТЗ",ОплатаКурсов.Выгрузить());
    Запрос.УстановитьПараметр("Ссылка",Ссылка);
    Запрос.УстановитьПараметр("ЭтоНеНовый",НЕ ЭтоНовый());
    
    ТЗ = Запрос.Выполнить().Выгрузить();
    
    ОткрытьЗначение(ТЗ);
    
КонецПроцедуры
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.11.2013, 01:06

Регистр сведений
Приветствую. Расскажите про регистр сведений. Не могу никак разобраться. Объясните на пальцах. Хочу, например, вести учет персонала....

Регистр сведений
Здравствуйте! Подскажите пожалуйста, есть справочник номенклатура и регистр сведений цены. Я создал документ установка цен, что бы в...

Регистр сведений
Скажите для редактирования регистра сведений достаточно заполнить измерения и ресурсы регистра ?

Регистр сведений и справочник
Спасайте, уже не знаю что сделать. Есть справочник Товары: реквезиты -производитель -емкость -фото -виднапитка и есть...

Регистр сведений, СрезПоследних
Объясните пожалуйста. Есть к примеру Регистр Сведений. В нем такие записи к примеру о изменениях цен на кирпич: 1 мая - кирпич, 100р ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru