Порядковый номер в запросе. Нумерация строк в системе 1С

Публикация № 1695108 02.08.22

Разработка - Запросы

В данной статье будет описано, как в системе 1С присваивается порядковый номер в запросе, то есть происходит нумерация строк запроса. Будет сформирована некая универсальная задача, после чего будет предложен код запроса, который решит задачу и будет нумеровать строки.

Для начала следует рассмотреть общую задачу-пример, которая станет основой для дальнейшего рассмотрения запроса. Пускай в системе 1С существует некоторая тестовая конфигурация, которая располагается в журнале документов. В этой тестовой конфигурации необходимо произвести порядковую нумерацию строк по списку, который является динамическим.

Стоит отметить, что нумерация строк в запросе – это операция присвоения порядкового номера каждой строке.

Пусть в нашем журнале содержатся три следующих документа – это «Заявка», «Приходный ордер» и «Расходный ордер». Изначальный вид журнала документов с перечнем принимал такой вид, как демонстрируется на скриншоте с примером ниже:

 

Изначальный вид журнала документов

 

Решение данной постановки задачи было бы очевидно в случае, когда перечень документов был бы результирующей внутри некоторого отчёта, но данная задача не настолько тривиальна.   

 

Нумерация по отчёту

 

Для понимания решения задачи при наличии отчёта рассмотрим данную модель ситуации. Создаём отчёт внутри системы по компоновке данных, результатом будет перечень документации, в таком случае решение элементарно, а именно: для полей внутри отчёта нужно внести особый вид поля – «Номер по порядку», как демонстрируется на скриншоте с примером далее:

 

Процесс нумерации по отчету

 

Результатом нумерации по отчету станет формировка следующей отчётности, как показано в примере ниже:

 

Результат нумерации по отчету   

 

Нумерация в запросе

 

Но наша основная задача – это нумерация строк именно внутри самого запроса. Примером необходимости нумерации в запросе может стать получения номера по порядку некоторой записи внутри динамического списка.

Нужно поменять запрос для списка по журналу документации, который является динамическим, таким способом, как демонстрируется на тексте примера запроса далее:

 

Текст запроса для нумерации строк в запросе

 

Если открыть динамический список при режиме «1С:Предприятие», то результатом будет следующее, как показано на скриншоте далее:

 

Строки динамического списка

 

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

Замечание: не стоит проводить сравнение ссылок документов, которые отличны по типу, так как результат в таком случае будет непредсказуемым. Для документов, которые не совпадают по типу, необходимо использовать временной момент или другие его характеристики.

В данной статье было рассмотрено, что такое порядковый номер в запросе и нумерация строк в 1С, как для отчётности, так и для запросов, и как на основе одной задачи корректировать запрос для задания нумерации строк, а также оговорены нюансы данной операции.

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. SlavaKron 02.08.22 11:35 Сейчас в теме
Это можно сделать через АВТОНОМЕРЗАПИСИ, кажется, начиная с 8.3.13
Komanda1C; bulpi; NiGMa; Obertone; +4 Ответить
2. booksfill 02.08.22 11:49 Сейчас в теме
Несколько замечаний:
1. начиная, кажется, с 8.3.13 появился АВТОНОМЕРЗАПИСИ
2. ваш метод крайне нежелателен на больших таблицах, думаю, понятно почему
3. это уже описано, например, https://kb.mista.ru/article.php?id=703&
4. часть проблем, решаемых нумерацией строк теперь можно, вероятно, только декларируют, можно будет решить (8.3.22) при помощи
УникальныйИдентификатор(Ссылка).
milov.aleksey; Komanda1C; +2 Ответить
3. Dansur 261 03.08.22 08:55 Сейчас в теме
ВЫБРАТЬ
	АВТОНОМЕРЗАПИСИ() КАК НомерПоПорядку,
	х.Ссылка КАК Ссылка,
	х.Номер КАК Номер,
	х.Дата КАК Дата
ПОМЕСТИТЬ вт_1
ИЗ
	Документ.ПеремещениеТоваров КАК х
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	вт_1.НомерПоПорядку КАК НомерПоПорядку,
	вт_1.Ссылка КАК Ссылка,
	вт_1.Номер КАК Номер,
	вт_1.Дата КАК Дата
ИЗ
	вт_1 КАК вт_1
Показать
4. TMV 14 04.08.22 13:52 Сейчас в теме
6. Komanda1C 3 05.08.22 08:01 Сейчас в теме
(4)Попробуйте без ВТ и всё поймете
7. TMV 14 05.08.22 08:51 Сейчас в теме
(6) Хаха, вот вы и попались. В том-то и дело, что такое решение не подходит для больших таблиц.
8. Dansur 261 05.08.22 12:57 Сейчас в теме
(4)
(7)
как раз наоборот. Для больших таблиц подходит АВТОНОМЕРЗАПИСИ() и не подходит способ предложенный автором публикации. а на маленьких оба способа одинаковы примерно по затратам производтительности.
10. TMV 14 06.08.22 07:35 Сейчас в теме
(8) Нет же. На больших объемах оба способа одинаково плохи.
9. JohnyDeath 300 05.08.22 18:45 Сейчас в теме
(7) да, другое дело сделать как в статье - обернуть всё во вложенный запрос и сгруппировать! Также намного быстрей будет при больших объемах
5. bulpi 209 04.08.22 16:01 Сейчас в теме
Такое впечатление, что статья написана на иностранном языке, и переведена на русский язык (плохим!) электронным переводчиком.
11. Said-We 07.03.23 13:52 Сейчас в теме
ВЫБРАТЬ ПЕРВЫЕ 999999999999
АВТОНОМЕРЗАПИСИ()
....
Упорядочить по

Просто пронумеровать не имеет смысла парой. Необходимо указать по чем сортировать перед нумерацией. В 1С нет полноценной ROW_NUMBER(). Поэтому придется кроме как "order by" указывать и выбрать первые ХХХ. Иначе указать сортировку невозможно в 1С без указания TOP ХХХ (LIMIT XXX).
Оставьте свое сообщение

См. также

Как собрать отладчиком отдельные части запроса в один

Запросы Платформа 1С v8.3 Запросы Россия Бесплатно (free)

Подробное описание функционала загрузки данных запроса из отладчика в консоли "Анализатор сложных запросов".

21.03.2023    1728    manuel    0    

10

Установка необязательного параметра запроса

Запросы Платформа 1С v8.3 Запросы Платформа 1C v8.2 Конфигурации 1cv8 Бесплатно (free)

Как установить необязательный параметр запроса без изменения его текста.

10.02.2023    1405    Serg2000mr    18    

6

Обработка результатов запроса произвольными вычисляемыми полями. Обзор некоторых новых функций СКД

Запросы СКД Платформа 1С v8.3 Запросы Система компоновки данных Конфигурации 1cv8 Бесплатно (free)

В данной статье вспомним, как обрабатывать результаты запроса в вычисляемых полях СКД, а также сделаем небольшой обзор на новые функции СКД платформы 8.3.20.

07.02.2023    2561    quazare    7    

33

Идентификатор объекта в запросе. Вы этого хотели?

Запросы Механизмы платформы 1С Платформа 1С v8.3 Запросы Бесплатно (free)

В платформе 8.3.22 появилась возможность получать идентификатор в запросе. Лично я ждал этого давно, но по итогу ждал большего. Что не так?

12.01.2023    8424    dsdred    13    

63

Избавиться от скана таблицы в плане запроса

HighLoad оптимизация Запросы Платформа 1С v8.3 Запросы Бесплатно (free)

Для запросов, содержащих "LIKE %СтрокаПоиска%". Справедливо для MS SQL и Postgres.

20.12.2022    2806    vasilev2015    31    

23

1СПАРК РИСКИ. Сервис оценки благонадежности контрагентов. Промо

СПАРК помогает предотвратить мошенничество со стороны компаний и предпринимателей, благодаря актуальным сведениям о компаниях и системе выявления факторов риска.Сервис позволяет управлять налоговыми рисками и комплексно оценивать благонадежность контрагентов.

Практическая шпаргалка по новым возможностям языка запросов 1С

Механизмы платформы 1С Запросы Платформа 1С v8.3 Запросы Конфигурации 1cv8 Бесплатно (free)

В предлагаемой статье решил привести примеры применения новых возможностей языка запросов 1С, начиная с версии платформы 8.3.20.

21.11.2022    15025    quazare    34    

109

Особенность задания периода в запросе в СКД

СКД Запросы Платформа 1С v8.3 Запросы Система компоновки данных 1С:Бухгалтерия 3.0 Россия Бесплатно (free)

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

11.11.2022    1684    slicem    10    

5

Новые возможности языка запросов в платформе 8.3.20

Запросы Платформа 1С v8.3 Запросы Бесплатно (free)

С платформы 8.3.20 анонсировали ряд изменений в языке запросов, с которыми интересно было повозиться на практике, что и было проделано. Результатом этих изысканий решил поделиться с вами.

27.09.2022    9154    zeltyr    17    

75

Распознавание и загрузка документов в 1С Промо

Универсальная программа-обработка для распознавания любых сканов или фото первичных документов в 1С (счета-фактуры, УПД, ТТН, акты и тд). Точность распознания до 98%.

от 11 рублей

Партицированная дисциплина программиста в 1С

HighLoad оптимизация Механизмы платформы 1С Запросы Платформа 1С v8.3 Бесплатно (free)

Почему при росте объемов базы 1С все становится медленней, даже если все индексы правильно сделаны? В статье на простом примере с регистром сведений показана причина и как этого избежать. Кто виноват больше, 1С или MS SQL решать Вам :)

20.09.2022    1845    1CUnlimited    2    

6

Делаем свой интервальный регистр в ЗУП

Механизмы типовых конфигураций Запросы Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Бесплатно (free)

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

09.09.2022    2035    vazelin    4    

26

Ускорим проведение в 1С:Управление холдингом

HighLoad оптимизация Запросы Платформа 1С v8.3 1С:Управление холдингом Бесплатно (free)

В 1С:Управление холдингом есть "нехороший" запрос, который съедает значительную часть времени проведения документов. Если его подправить, то проведение заметно ускорится.

10.08.2022    5023    sapervodichka    60    

73

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

Обход по группировкам в запросе, соединение таблиц, параметры в запросе, выгрузка прайс-листа в Excel, PDF, Docx, TXT

Запросы Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

В помощь начинающим программистам. Использую обработку из предыдущей моей публикации для разработки выгрузки Прайс-листа в Excel, PDF, Docx, TXT. Рассмотрю, как работает обход результата запроса ПоГруппировкам (релиз платформы 1С:Предприятие 8.3 (8.3.20.1674), самописная конфигурация).

18.07.2022    3407    Pproksima    2    

8

Экспертный кейс. История расследования одного небыстрого закрытия месяца в 1C:ERP. Пример неочевидных путей расследования в виде детективной истории

HighLoad оптимизация Механизмы платформы 1С Запросы Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

В данной статье хотим рассказать об одном нашем непростом расследовании, в котором удалось собрать сразу несколько проблем на разных уровнях инфраструктуры заказчика и изначальной методологии ведения учета. Само расследование в какой-то момент стало напоминать детективную историю, с роялями в кустах, ошибками платформы, странным поведением пользователей и магическим поведением хорошо знакомых механизмов. Но мы реалисты, поэтому все проблемы были выявлены и устранены ;)

11.07.2022    5377    it-expertise    27    

56

Кратность в Юанях (CNY) 10 и 1

Запросы Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Обратите внимание на обмены данными с Юанями. Кратность там меняется между 10 и 1, в зависимости от значения курса > 10 или < 10. Т.е. НЕ ВСЕГДА равна 1. А многие разработчики (в том числе и я) грешат, ставя Кратность = 1 по умолчанию в обменах и выгрузках. P.S. Идём на Восток, становимся хитрее.

10.06.2022    8522    sapervodichka    13    

37

Экспертный кейс. Расследование фатального замедления времени расчета себестоимости в 1С:ERP 2

HighLoad оптимизация Механизмы типовых конфигураций Запросы Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

При выполнении нагрузочного тестирования информационной системы на базе 1С:ERP для одного из клиентов с целью оценки возможности миграции системы на PostgreSQL и Astra Linux мы столкнулись с неприемлемым увеличением времени выполнения расчета себестоимости. Строго говоря, сценарий тестирования закрытия месяца не был выполнен вообще – он не укладывался в таймаут выполнения теста, 24 часа. По прошествии 18 часов всё ещё шло выполнение операции «Распределение затрат и расчет себестоимости». Более 16 часов выполнялся подэтап “Расчет партий и себестоимости. Этап. Расчет себестоимости: РассчитатьСтоимость”. Всё это время выполнялся запрос, который в текущей инфраструктуре клиента (СУБД MS SQL Server) выполняется чуть более 3 минут на аналогичных данных.

25.03.2022    5548    it-expertise    92    

67

Экспертный кейс. Расследование деградации производительности системы. Проведение документа “Поступление товаров и услуг” (1С:ERP 2)

Механизмы платформы 1С Запросы HighLoad оптимизация Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

В ходе проведения нагрузочного тестирования одним из наших клиентов была выявлена сильная деградация производительности системы в целом и, в частности, выполнения ключевой операции “Проведение документа поступление товаров и услуг” в течение выполнения теста. Согласно данным подсистемы БСП “Оценка производительности”, время выполнения ключевой операции “Проведение документа поступление товаров и услуг” возрастало в процессе тестирования с 15-20 секунд в начале тестирования до 150-200 секунд в его финале.

02.03.2022    4021    it-expertise    48    

30

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Задача по 1С - в базе данных есть таблица движения товара, пишем запрос для определения среднего значения остатка товара

Запросы Платформа 1С v8.3 Запросы Бесплатно (free)

В базе данных есть таблица движения товара, плюс означает, что товар пришел на склад, минус означает, что товар выбыл со склада: Необходимо написать запрос на 1С или SQL (по желанию), который вернет среднее значение остатка товара за январь 2021 (с 1 по 31). В результате должно получиться ProdID 1 = 1.58 ProdID 2 = 0.77

01.03.2022    2136    Greamdevil    5    

4

Генерация простых чисел в запросе (SQL) и сравнение производительности

Запросы Платформа 1С v8.3 Бесплатно (free)

Пишем запрос по генерацию последовательности простых чисел на языке запросов 1С и SQL.

09.01.2022    1441    AtamanovYS    2    

5

Заметки по SQL 4: Преобразование в запросе строки в дату одним выражением

Запросы Платформа 1С v8.3 Россия Бесплатно (free)

На "Инфостарте" есть несколько статей, описывающих преобразование строки в дату. Описанное в них преобразование осуществляется в несколько запросов и имеет сложные для понимания выражения. В статье описано относительно простое выражение в запросе, преобразующее строку в дату.

10.12.2021    1699    IVC_goal    17    

4

Готовые механизмы 1С: ЗУП, представления

Механизмы типовых конфигураций Запросы Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Бухгалтерский учет Бесплатно (free)

Здесь будет храниться архив запросов, которые могут помочь разработчику правильно строить отчеты и получать данные в 1С: ЗУП. Статью буду периодически дополнять.

03.11.2021    6905    Margo462    19    

89

Работа с SQL. Шаблон общего модуля

Запросы Платформа 1С v8.3 Бесплатно (free)

Шаблон общего модуля для работы с MS/PG SQL из 1С.

21.10.2021    4195    mrChOP93    3    

66

Работа с 1С:Аналитика Промо

Онлайн-курс предусматривает изучение возможностей системы “1С:Аналитика”, которая работает как составная часть платформы “1С:Предприятие” и обеспечивает оперативный просмотр и анализ необходимых данных.

4500 рублей

Как читать чужой код? Часть 3. Разбор и доработка запросов

Запросы Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Во всех вакансиях есть требование - умение читать чужой код. Но ни на одних курсах специально этому не учат. Чтобы устранить это противоречие, пишу данную статью. Рассмотрю случаи, в которых нам необходимо разбирать чужой код, поймём, чей код мы пытаемся разобрать, зачем и, главное, как. В статье описан личный опыт длиною в 18 лет начиная с версии платформы 7.7. Статья будет большой, набираемся терпения). Статья содержит в себе описание сценариев разбора кода, т.е. набор шагов. В статье не получится показать это на практике. Для этого планирую сделать онлайн или оффлайн курс, где на примерах будет показан разбор незнакомого кода. Статья разбита на 4 публикации для удобства изучения.

20.09.2021    4798    biimmap    33    

37

Еще один способ вычисления медианы запросом 1С

Запросы Платформа 1С v8.3 Платформа 1C v8.2 Бесплатно (free)

Вниманию сообщества предлагается еще один способ расчета медианы числового ряда одним пакетным запросом 1С.

09.08.2021    2325    direktorSan    0    

8

Временные таблицы запроса

Запросы Платформа 1С v8.3 8.3.14 Конфигурации 1cv8 Бесплатно (free)

Решил опубликовать эту маленькую статью для самых начинающих программистов 1С. Особенно для тех, кто часто сталкивается с отладкой запросов, а именно временных таблиц этих запросов. Сложность решений продуктов 1С сейчас заключается в том, что код нас уводит далеко вглубь общих модулей, перебрасывая из одного в другой и формируя в них временные таблицы запроса. Назад мы получаем кучу временных таблиц запроса, которые очень неудобно просматривать в отладчике. Для этого я и предлагаю свое ненавязчивое решение в виде расширения.

30.07.2021    2464    KonanSS    3    

5

Пример использования объекта "Схема запроса" в реальном проекте

Запросы Платформа 1С v8.3 Бесплатно (free)

Разберём решение задачи реального проекта: контекст, логика решения, само решение. Рассмотрим возможности объекта СхемаЗапроса.

03.06.2021    5665    maraton1185    32    

29

Последний раз про срез последних (на каждую дату в запросе)

Запросы Платформа 1С v8.3 Запросы Бесплатно (free)

Срез последних на каждую дату в запросе. Известные факты о задаче: часто встречается на испытаниях соискателей на работу программистом 1с, постоянно провоцирует споры об оптимальном решении. В данном тексте приводятся замеры производительности различных вариантов решения задачи.

15.02.2021    32955    randomus    47    

149

Видеокурс-практикум: как подготовить и написать ТЗ, ЗНР, ЧТЗ. Промо

В курсе обобщен опыт работы аналитика на проектах в течение пяти лет, в нескольких фирмах. Подходы к написанию документов унифицированы и по возможности не привязаны к конфигурациям 1С.

3 500 рублей

Аналог PIVOT в запросе 1С (как выполнить транспонирование таблицы в запросе 1С)

Запросы Платформа 1С v8.3 Бесплатно (free)

В статье показывается простой метод реализации аналога оператора PIVOT в запросе 1С без использования соединений.

12.12.2020    8508    Eugen-S    25    

71

Имитация sql выражения LIMIT в запросе 1С

Запросы Платформа 1С v8.3 Бесплатно (free)

Всем известно, что в SQL синтаксисе есть выражение LIMIT. Очень полезное выражение для постраничной навигации. Но его нет в запросах 1С. Кто-то может сказать, что есть ПЕРВЫЕ, но ПЕРВЫЕ не подходит для постраничной навигации. Рассмотрим в статье, как можно имитировать LIMIT в запросах 1С.

08.12.2020    3317    opx    51    

20

Итоги по объединенной совокупности группировок в запросе

Запросы Платформа 1С v8.3 Бесплатно (free)

Способ формирования итогов в запросе по совокупности группировок, объединенных в единый набор, при помощи функции АВТОНОМЕРЗАПИСИ.

18.11.2020    11370    antonivan    21    

99

Кадровые данные сотрудников ЗУП 3.1 в запросе

Запросы Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Бесплатно (free)

Получение кадровый данных сотрудников в запросе при помощи функции КадровыйУчет.СоздатьНаДатуВТКадровыеДанныеСотрудников().

26.10.2020    6925    Danila7Zz    4    

6

Подборка программ для взаимодействия с ЕГАИС Промо

ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.

Улучшенный конструктор запроса тонкого клиента (Infostart Toolkit)

Запросы Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Конструктор запросов тонкого клиента появился в платформе с 8.3.5 обладает рядом недостатков, которые возможно исправить. Передача входных таблиц, исправление связей и другое

07.09.2020    8587    Evg-Lylyk    23    

56

Меры центральной тенденции (вычисление среднего) в запросе 1С

Запросы Платформа 1С v8.3 Бесплатно (free)

Меры центральной тенденции (вычисление среднего) в запросе 1С: * Среднее арифметическое * Среднее гармоническое * Среднее квадратическое * Среднее усеченное * Среднее винсоризованное * Медиана * Мода

31.08.2020    2274    parcan    6    

5

Проводим по БУ "на лету"

Инструментарий разработчика Запросы Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х Бухгалтерский учет Налоговый учет Бесплатно (free)

В базе ERP и КА есть форма тестировщика, которая автоматически получает из конфигурации полные тексты запросов формирования бухгалтерских проводок выбранного документа, даёт возможность модифицировать запрос и сразу проверить результат.

01.05.2020    9256    sapervodichka    1    

93

Поблочная обработка таблицы. Обзор решений

Универсальные функции Запросы СКД Платформа 1С v8.3 Бесплатно (free)

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

25.02.2020    3258    Yashazz    21    

21