Какое количество строк в документе 1с можно
Перейти к содержимому

Какое количество строк в документе 1с можно

  • автор:

Вычисление количества записей в запросах

Область применения: управляемое приложение, мобильное приложение, обычное приложение.

1. При вычислении количества записей на языке запросов следует всегда использовать функцию КОЛИЧЕСТВО, а не СУММА. В противном случае, при количестве записей 10 млн. и более произойдет переполнение, что связано с разрядностью числа по умолчанию (7 разрядов), используемого в СУБД платформой 1С:Предприятие.

2. Если количество требуется вычислять условно и функцию КОЛИЧЕСТВО применить невозможно, тогда следует расширить разрядность числа по умолчанию с помощью оператора ВЫРАЗИТЬ (например, до 17 разрядов).

ВЫБРАТЬ
КОЛИЧЕСТВО(*) КАК Количество,
СУММА(ВЫБОР
КОГДА Номенклатура.ЭтоГруппа
ТОГДА ВЫРАЗИТЬ(1 КАК ЧИСЛО(17, 0))
ИНАЧЕ 0
КОНЕЦ) КАК КоличествоГрупп,
СУММА(ВЫБОР
КОГДА НЕ Номенклатура.ЭтоГруппа
ТОГДА ВЫРАЗИТЬ(1 КАК ЧИСЛО(17, 0))
ИНАЧЕ 0
КОНЕЦ) КАК КоличествоЭлементов
ИЗ
Справочник. Номенклатура КАК Номенклатура

ВЫБРАТЬ
КОЛИЧЕСТВО(*) КАК Количество,
СУММА(ВЫБОР
КОГДА Номенклатура.ЭтоГруппа
ТОГДА 1
ИНАЧЕ 0
КОНЕЦ) КАК КоличествоГрупп,
СУММА(ВЫБОР
КОГДА НЕ Номенклатура.ЭтоГруппа
ТОГДА 1
ИНАЧЕ 0
КОНЕЦ) КАК КоличествоЭлементов
ИЗ
Справочник. Номенклатура КАК Номенклатура

См. также

7.7 Количество строк в документе

Добрый день! Проблема состоит в следующем: имеется документ Прайс, табличная часть которого содержит всю номенклатуру из справочника. В итоге документ содержит порядка 12 тыс. строк. Так вот, первоначально в документе все красиво, строки нумеруются как надо. Но если его закрыть и открыть снова, то все номера строк > 9999 становятся равными 0. Соответственно, меняется порядок строк. Как можно изменить длину реквизита «НомерСтроки»? Там по умолчанию 4 знака.

P.S. Предвидя гневные высказывания по поводу того, что такие вещи делают в отчетах, а не в документах, хочу сразу сказать, что идея не моя.

TimeDontWait

Попробуйте отключить автонумерацию строк в документе

unknown181538

А если сделать свой реквизит «номер строки» и сортировать по нему?

TimeDontWait

Цитирую ограничения 1с 7.7:

Документ
Документ — может быть создано 9999 видов документов.
Документ может иметь и корректно работать имея не больше 9999 строк.
Максимальная длина кода — 20, т.е. может быть теоретически создано всего (27+33+10)^20 документов (70^20 = 7,9792266297612001e+36).
Всего в системе может быть не больше (длина ID кода в журнале=9), практически длина ID в 6 символов (3 на УРИБ) 36^6 = 2176782336 документов.
Количество введенных документ с одинаковым временем ограничивается 36^4 = 1679616

Как показать количество строк табличной части в заголовке страницы

Один из ключевых объектов в 1С, с которым ежедневно работают пользователи — это Документ. Очень часто в документе есть табличная часть: список товаров, список сотрудников, список материалов и др. А в некоторых документах табличных частей и вовсе может быть несколько.
Для удобства работы с документом в заголовке страницы, содержащей табличную часть, можно показывать количество строк в табличной части.
Вот так, например, выглядит форма документа «Реализация товаров и услуг» в типовой конфигурации 1С:Бухгалтерия для Беларуси, редакция 2.1:
Не переключая страницы, пользователь сразу видит количество строк в табличных частях «Товары», «Возвратная тара», «Услуги», и это очень информативно.
Допустим, нужно добавить такой же функционал в форму произвольного документа:
Сделать это очень просто 😉
Нужно открыть форму документа в конфигураторе и заполнить свойство страницы ПутьКДаннымЗаголовка, выбрав служебное поле КоличествоСтрок, которое можно найти в списке полей табличной части:
При необходимости, можно задать формат отображения этого значения:
Вот и всё, теперь и в нашем документе отображается количество строк в табличной части:

Присоединяйся к нам в Telegram:
https://t.me/ironskills_community1c
А ещё у нас есть YouTube-канал, где мы публикуем полезный контент по разработке в 1С и не только:
https://www.youtube.com/@ironskills-1c

Иван Гордынец

2023-01-10 16:17 Программирование

2019-2024 © IRONSKILLS

ООО «ИРОНСКИЛС»
УНП: 193728385
Свидетельство о государственной регистрации № 193728385 от 08.12.2023 выдано Мингорисполкомом

Адрес: Республика Беларусь,
220099, г. Минск, ул. Казинца, д. 11А, офис А-508

Консультация Беларусь

Консультация Россия

По всем вопросам

Хочешь получать лучшие статьи от IRONSKILLS раз в неделю? Подпишись на нашу рассылку

Как сделать ограниченное количество строк в табличной части?

Как сделать ограничение количества строк в таблице, т.е. максимальное количество записей в таблице = 5. Пытался сделать так, но выдает ошибку:

&НаСервере Процедура СоставПередНачаломДобавления(Элемент, Отказ, Копирование) Если Состав.Количество() > 5 Тогда Отказ = Истина; КонецЕсли; КонецПроцедуры 

Отслеживать
задан 14 окт 2023 в 7:40
25 6 6 бронзовых знаков

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

Это можно сделать с помощью приложения: создать единый интерфейс работы с этой таблицей, в котором контролировать количество строк при добавлении. Все функции приложения, которые могут добавлять строки в эту таблицу, должны работать через этот интерфейс.

Другой вариант — сделать обработку события добавления записей в СУБД, которая используется 1С.

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

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