Программисту 1С: Максимальное количество строк табличной части, как обойти ограничение — 1c-h
 

Программисту 1С: Максимальное количество строк табличной части, как обойти ограничение

1
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (2 оценок, среднее: 5,00 из 5)
Загрузка...

Одним из существующих ограничений платформы 1С 8.3 является ограничение на количество строк табличной части.
Табличная часть документа не может содержать более 99 999 строк. Точнее будет сказать, что нельзя сохранить в базе данных более 99 999 строк табличной части.
Почему так сказать будет точнее? Потому что во время интерактивной работы с документом в табличной части может быть сколько угодно строк, но вот сохранить их все в базе данных в виде объекта типа ТабличнаяЧасть будет нельзя.

В связи с этим сам собой напрашивается выход: данные, которые должны быть в табличной части, в момент сохранения документа в базе данных, поместить в регистр сведений (непериодический, с независимым режимом записи), а после записи снова извлечь эти данные из регистра и поместить обратно в табличную часть.

Три шага для решения:

п.1. Перед записью документа в этот регистр сведений помещаются строки из ТЧ, а ТЧ очищается. Для этого используется обработчик события ПередЗаписью, размещенный в модуле объекта. (Примечание. Событие ПередЗаписью прикладного объекта отличается от события ПередЗаписью формы, связанной с этим прикладным объектом. Обработчик события в модуле формы вызывается при интерактивной записи, а обработчик в модуле объекта при любом способе записи элемента в базу данных.)

п.2. Сразу после записи документа эта ТЧ снова заполняется данными из регистра. Для этого в модуле формы размещают обработчик события ПослеЗаписиНаСервере

п.3. Предусматривается необходимость очистки регистра сведений от записей в случае пометки его на удаление. Так как регистр сведений имеет независимый режим записи, регистр не подчинен регистратору, то при пометке на удаление документа записи из регистра сами удалиться не могут. Поэтому им придется «помочь». В противном случае мы не сможем удалить документ — обработка «Удаление помеченных объектов» будет находить ссылки на удаляемый документ и отказываться его удалить.

Пример такого кода.

// п.2

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (2 оценок, среднее: 5,00 из 5)
Загрузка...

Автор 1С

One thought on “Программисту 1С: Максимальное количество строк табличной части, как обойти ограничение

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Next Post

1С:ЗУП как вывести список юбиляров текущего года

Пн Мар 25 , 2019
В 1С:ЗУП есть типовой отчет с личными данными: меню «Кадры — Кадровые отчеты — Личные данные сотрудников». Этот отчет можно настроить на вывод юбиляров следующим образом. В отчете нажмите на кнопку «ЕЩЕ», выберите пункт «Прочее — Изменить вариант отчета…» Откройте вкладку Пользовательские поля». Нажмите на кнопку «Добавить — Новое поле […]

Вам может понравиться