Запрос. Нарастающий итог. Как «я» его понимаю.

27.11.09

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

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

Будет полезна изучающим запросы...

Скачать файлы

Наименование Файл Версия Размер
-
.epf 94,28Kb
284
.epf 94,28Kb 284 Скачать

Ссылки при написании:

 

  1. http://www.gilev.ru/1c/81/index/optimquery.htm
  2. //infostart.ru/public/58966/
  3. //infostart.ru/public/61295/
  4. http://www.forum.mista.ru/topic.php?id=184893
  5. http://www.kb.mista.ru/article.php?id=703
  6.  //infostart.ru/public/21085/ 

 

Данная обработка показывает по шагам как нужно создавать в запросе нарастающий итог. В обработке реализовано два примера.

 

Первый пример.

Нумерация строк в запросе как яркий пример нарастающего итога. В качестве колонки_выбора выбран «код».

 

Второй пример.

Реализован нарастающий итог по колонке «сумма документа». В качестве колонки_выбора выбран «номер».

 

Примечание1. Во всех примерах в условиях отбора в запросе используется «пометка на удаление».

 

Последовательность действия при получении в запросе "НарастающихИтогов".

 

Перед написание запроса необходимо определить колонку по которой хотим получить нарастающий итог.

Если мы хотим получить нумерацию строк в результате запроса то выибирать можно любую колонку.

По выбранной_колонке будем сортировать, соединять и использовать при группировки в нашем итоговом запросе.

 

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

Шаг2. Дополнем наш запрос из Шаг1. его точной копией.

Шаг3. Соединяем таблицу и таблицу_копию по выбранной_колонке и по ней же упорядочиваем.

Шаг4. Группируем наш запрос так чтобы в суммируемые колонки попала выбранная_колонка

Шаг5. Меняем условие соединения таблиц на больше_равно

 

 

Готово. Смотрим результат. Вот.

 

Примечание2. Последовательность «шагов» может быть любая. Так данное описание составление запросов с нарастающим итогом условное.

 

Примечание3. Быстродействие данных запросов ресурсоемко. Для большинства повседневных задач их использование вполне приемлемо.


… ВОТ …

 

с Уважением  "Шёпот теней" - ИнфоСтарт - infostart.ru - //infostart.ru/profile/15616/

См. также

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

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

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

13000 руб.

02.09.2020    119921    656    389    

701

Для чего используют конструкцию запроса "ГДЕ ЛОЖЬ" в СКД на примере конфигурации 1С:ERP

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

В типовых конфигурациях разработчики компании 1С иногда используют в отчетах, построенных на СКД, такую конструкцию, как "ГДЕ ЛОЖЬ". Такая конструкция говорит о том, что данные в запросе не будут получены совсем. Для чего же нужен тогда запрос?

13.02.2024    5620    KawaNoNeko    23    

23

Набор-объект для СКД по тексту или запросу

Запросы СКД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Есть список полей в виде текста, или запрос - закидываем в набор СКД.

1 стартмани

31.01.2024    1964    2    Yashazz    0    

29

Запрос 1С copilot

Инструментарий разработчика Запросы Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Пишем на человеческом языке, что нам надо, и получаем текст запроса на языке 1С. Используются большие языковые модели (LLM GPT) от OpenAI или Яндекс на выбор.

5 стартмани

15.01.2024    6091    29    mkalimulin    23    

48

PrintWizard: поддержка представлений ЗУП в конструкторе

Инструментарий разработчика Запросы Платформа 1С v8.3 Бесплатно (free)

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

14.12.2023    1714    vandalsvq    7    

28

Объектная модель запроса "Схема запроса" 2

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

Далеко уже не новый тип данных "Схема запроса". Статья о том, как использовать его "попроще". Примеры создания текста запроса с нуля и изменение имеющегося запроса.

06.12.2023    5283    user1923546    26    

43

Начните уже использовать хранилище запросов

HighLoad оптимизация Запросы

Очень немногие из тех, кто занимается поддержкой MS SQL, работают с хранилищем запросов. А ведь хранилище запросов – это очень удобный, мощный и, главное, бесплатный инструмент, позволяющий быстро найти и локализовать проблему производительности и потребления ресурсов запросами. В статье расскажем о том, как использовать хранилище запросов в MS SQL и какие плюсы и минусы у него есть.

11.10.2023    15957    skovpin_sa    14    

98
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. I_G_O_R 69 27.11.09 13:44 Сейчас в теме
насмешил :D , какая следующая статья будет "... как его понимаю" :?:
2. Mazaloff 27.11.09 14:25 Сейчас в теме
а ослик на картинке причем?
4. anig99 2841 27.11.09 14:53 Сейчас в теме
(2) а ослик, потому что "душераздирающее зрелище" эти нарастающие итоги в запросе....
3. anig99 2841 27.11.09 14:46 Сейчас в теме
гыы...все ссылки уже помечены как прочтенные (:
Шепот, на самом деле показан очень конкретный пример... Вместо больше равно может быть и меньше равно... в зависимости от целей...
Но для тех кто изучает сложное на примерах (как я например (% ) зер гуд...

Я очень рад, что моя статья вызвала-таки наконец ряд статей по теме.
А то если что и есть в инете, то только основы. Мне пришлось очень долго копаться прежде чем нашел упоминание об ограничении нарастающих итогов в запросах - большие объемы данных начинают существенно тормозить.
А уж метод обхода этого ограничения - это был вообще алес... ограничить выборку...


З.Ы. Предлагаю название изменить... Двухпальцевые нарастающие итоги и нумерация строк в запросе... Всё-таки если быть последовательным и логичным, то "понимаешь" ты в статьях, а вот обработки у тебя "двухпальцевые". Это без иронии.
5. Шёпот теней 1779 27.11.09 15:31 Сейчас в теме


... БОЛЬШОЕ видится на расстоянии, а начинается с МАЛОГО …


... если ВЫ умеете делать это в МАЛОМ то сделаете это и в БОЛЬШОМ ...


...
п.с.
Около ста пятидесяти лет назад возникла новая область научного знания - учение о подобии явлений.
Гениальное предвидение этой науки было высказано Ньютоном в 1686 г. Но только в 1848 г. Член французской академии наук Жозеф Бертран впервые установил основное свойство подобных явлений, сформулировав первую теорему подобия, теорему о существовании инвариантов подобия.
Подобными называются явления, происходящие в геометрически подобных системах, если у них во всех сходственных точках отношения одноимённых величин есть постоянные числа.

... писать "нарастающие итоги" - это доставать кость попавшую в горло через задний проход ...

... при помощи простого Запроса+ТаблицаЗначений = Результат любой сложности ... эффективнее и проще и предсказуемо ...

... ВОТ ...
Арчибальд; +1 Ответить
6. anig99 2841 27.11.09 16:43 Сейчас в теме
(5) хранение информации в текстовом виде намного проще и предсказуемо.
Уже было говорено, что абсолютно эффективных решений не бывает.
7. Ish_2 1104 27.11.09 17:02 Сейчас в теме
(6), (1) Шепот прав в одном - что опубликовал свое мнение по поводу нарастающих итогов.
Правда в том , что подавляющее(подчеркиваю , подавляющее) большинство пользователей ИС не знают , не умеют использовать запросы.
Шепот схватил это - и молодец !

Весь вопрос в том , как лучше подать материал о элементарном и с примерами и иллюстрациями :
"Запросы ... как я их понимаю" или проще "Чайник - для чайников"
где просто и доступно было объяснено "на пальцах" ( а кого стесняться?):

1. Внутреннее соединение
2. Полное соединение
3. Левое...
4. Правое..

5. Соединение по неравенству+ Нарастающие итоги.+ соединение по двойному неравенству и т.д.

6. Сумма с условием , Оператор Выбор и т.д.

Т.е. на мой взгляд полезен будет целый цикл статей . Шепот - молодец !

Что касается самой обработки - я её пока не смотрел. Но посмотрю обязательно.
8. Шёпот теней 1779 27.11.09 17:10 Сейчас в теме
...хм...

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


... вопрос знатокам "нарастающих итогов":

например, требуется вычислить 2*3 = ...

как ВЫ ? думаете ? как компьютер получит результат ... ?

... вооот ...
10. Ish_2 1104 27.11.09 17:37 Сейчас в теме
(8) Шепот , ты не увиливай.
Давай обсудим текст твоих запросов. Чуть позже.
11. Шёпот теней 1779 27.11.09 17:54 Сейчас в теме
Ish_2 ...

декларативный язык запросов - один из самых "дурацких" языков программирования ...

придумывался как "для всех" - оказался для "посвщЁнных" ...

объснить его работу, словами, по-этапно - не возможно ... в лучшем случае картинками ... т.к. построение запросов это не язык "логики" а язык "желания" ...

.. увиливаешь обычно ТЫ ... ответь на (8) ...
12. Ish_2 1104 27.11.09 20:16 Сейчас в теме
объснить его работу, словами, по-этапно - не возможно ... в лучшем случае картинками ... т.к. построение запросов это не язык "логики" а язык "желания" ...


Так ведь в корень смотришь !
Именно так и нужно : диаграммки и картинки.
Я ж тебя подбиваю...

декларативный язык запросов - один из самых "дурацких" языков программирования ...

придумывался как "для всех" - оказался для "посвщЁнных" ...


не вижу темы для обсуждения.

.. увиливаешь обычно ТЫ ... ответь на (8) ...


Шепот я пришел к тебе в тему . По-честному.
Обсуждаю ТОЛЬКО содержание ТВОЕЙ статьи.
Тема : Запросы.

Ты же меня хочешь затащить в обсуждение некорректных или допускающих бесконечно много толкований рассуждений.
Не-а. Не затащишь.
Только текст ТВОЕЙ статьи. Только текст ТВОИХ запросов.
Обработку не скачал . Скачаю дома .
Угрожаю : долбить буду по -взрослому.
13. Шёпот теней 1779 27.11.09 21:43 Сейчас в теме
Ish_2 ... ты меня удивляешь ...

1. по взрослому мне бы хотелось в твоих статьях ...
2. я же уже высказался по поводу нарастающих итогов в запросах -в серьёз это обсуждать можно только в философских поисках о границах языка запросов но не для практики ... или приведи примеры ...
3. именно поэтому и придумали "новые" костыли в виде - СКД ... соединив запрос и ТЗ ...
4. рисовать рисунки и чертить схемы на такие примеры - уж совсем дело последнее ...
5. понимание в запросах приходит только через "ручки", в основном ...

... вот ...

всЁ таки, мне гораздо интереснее (8) ...

... вотТАКмнеОЧЕНЬкажется ...
9. Ish_2 1104 27.11.09 17:25 Сейчас в теме
Продолжаю. Теперь о недостатках.

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

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

Т.е. такие статьи для начинающих нужно делать максимально подробными и иллюстрированными.

Перечисленные шаги 1-5 мало ,что дают непосвященному.

Т.е. если бы я был изучающим, я бы твоей статьей не заинтересовался.
Надеюсь след. статья о запросах будет подробной и иллюстрированной.
Давай , Шепот ! Жми !
14. Ish_2 1104 28.11.09 13:51 Сейчас в теме
Долбежка откладывается. К сожалению.

1. Страраюсь.

2. Статья Anig99 как раз и переводит фил.вопос о границах использования языка запросов в практический вопрос : Как правильно использовать язык запросов для вычисления нарастающих итогов ? Именно в ней и говорится о том, что "в лоб" применять запрос для таких вычислений не стоит.
Нужно применять вычисление нарастающих итогов для небольших таблиц.
Как последовательно получать эти небольшие таблицы сказано сначала у Anig99 , потом у меня.
Шепот , ты этого просто не понял.

3. Нет . Шепот, СКД придумали совсем не для этого. И проблему трудного вычисления нарастающих итогов СКД НЕ РЕШАЕТ.

4. Жаль
5. Согласен.

6. Не заманишь, хитрец...
15. Шёпот теней 1779 28.11.09 15:02 Сейчас в теме
(14)

1. посмотрим "болтунишка" ... увидим "болтунишка" ...
2. нет конкретных примеров - говорить не о чЕм ... кому нужны ЭТИ неБОЛЬШИЕ таблицы ... то у вас 200 гигов а то НЕбольшие таблицы ... бегаете по кругу "батенька"-ссс ... да-ссс ... по-кругу-ссс ...
3. ну... ну... а для чего ТОГДА придумали ЭТИновомодныеКОСТЫЛИ .. ???
4. левизна ... детский вопрос ... без абстракций нет программиста ...
5. нууу... нЕужели ... ??? ... может ещЁ подумаешь ...
6. жаль ... фундаментальный вопрос всех вычислений ... кстати это и к п3. относится ...

... вОООттакиеСубботнииПрения ... ))) ...
16. Ish_2 1104 28.11.09 15:34 Сейчас в теме
(15)
1. Ага.
2. Прочитай статью Anig99 там есть ссылка на реальный отчет который работает в конкретной базе 120Гб.
3. В частности. СКД позволяет делать то , что не позволяет делать постоитель отчета - произвольное группирование колонок отчета, произвольное количество таких группировок.
Пример : В БП 1.6 есть отчет "Обороты счета" и сделан он "вручную" с тяжкими преобразованиями. В СКД такой отчет делается гораздо проще.
СКД - не костыли , а требование времени.
4. Умничаешь ?
5. Умничаешь ?
6. фундаментальные вопросы так не формулируются.
Впрочем , ты же у нас бравируешь отрицанием важности формы, тебе же главное -содержание. Про единство формы и содержания мы поговорим в другой раз.
17. Шёпот теней 1779 28.11.09 15:52 Сейчас в теме
(16)

1. ... слова ... слова ... слова ... как много в них НЕ сделанного ...
2. ... нууу ... онанизм - пусть даже и цифровой то же кому-то приятен ...
3. любая ТЗ позволяет группировать - и вдоль - и поперЁк - и "о-боже" даже по-диогонали ...
4. нет ...
5. ага ...
6. чем фундаментальнее вопрос - тем ОН проще ... например, почему Земля крутится ? ...

п.с. НЕсогласен.
... я говорю о единстве, о гармонии - "формы" и "содержания" ... вот ...
18. Ish_2 1104 28.11.09 16:06 Сейчас в теме
1...
2....
3. Шепот , СКД надо изучить.
4. Да.
5. То-то.
6. Твоя статья - про запросы.

P.S. Ну вот и хорошо.
19. Шёпот теней 1779 28.11.09 16:25 Сейчас в теме
(18)

3. ну... ну, да ... да ... "я эту книгу не читал но по поводу её содержания могу сообщить следующее ... " ...
4. уломал ...
5. ага ...
6. ??? ... моя статья - срубить "плюс"-ов по лЁгкому ...

... но, как видишь ... "нарастающие итоги" нафигникомуненужны ... ))) ...
20. Ish_2 1104 28.11.09 17:05 Сейчас в теме
Ты просто не умеешь их готовить.
21. Шёпот теней 1779 28.11.09 20:45 Сейчас в теме
(20) .. нууу конечно же ... кто жжжеее спорит ....

назвать надо было типа:

1. Пять шагов постижения ...
2. Запросы и нарастающие итоги ...
3. Метдика решения нарастающих итогов в запросах ...
...

.. ну и ещё всякой були-були поднаписать ... и обязательно указать много-много ГБайт, жути нагнать рисунками и графиками ... и обязательно должны быть непонятные слова типа "глбоко-детальный анализ показывает", "после использования ограничения выборки в таблицах", " скорость получения таблиц результатов при использовании данного метода увеличена в 4-5 раз", привести кучу таблиц с замерами ...

... ага ... ага ...

22. larisab 160 28.11.09 21:10 Сейчас в теме
(21) Кухню свою раскрываешь ;)
(19) По легому срубить не получается, как видишь. :)
23. artbear 1447 30.11.09 13:58 Сейчас в теме
(0) Слабовато, для начинающих этого мало :(
Минусую
24. annak2980 01.12.09 22:21 Сейчас в теме
Простой вопрос: на какую категорию пользователей ИС ориентирована сия статья?
Профессионалы, как видно из комментариев, в подобной информации не нуждаются, а у новичка (1 скачивание в день) в силу сумбурности описания желание скачать отпадает.
25. Шёпот теней 1779 01.12.09 22:49 Сейчас в теме
(24) ... хм ...

вопрос: "на какую категорию пользователей ИС ориентирована сия статья? "


ответ1.
... явно для вас ...

ответ2.
... явно не для них...

ответ3.
... ну ни шмог, ни шмог "я" ...

ответ4.
... затрудняюсь ответить ...

ответ5.
... другое ...

п.с. выберите ответ который вам подойдЁт ...

... вотРиторическийОтветнаНеМенееРиторическийВопрос ...
26. anig99 2841 01.12.09 23:31 Сейчас в теме
(24)(25) И тем, и тем это интересно.
Новичкам - как сделать. Опытным - а на фуа это собственно надо.
Шёпот теней; +1 Ответить
27. Шёпот теней 1779 01.12.09 23:53 Сейчас в теме
(26) ... зАстрелил ... ))) ... (: ...
28. Ivon 673 02.12.09 09:41 Сейчас в теме
Занимательно, но очень долго отрабатывает. Для программиста - не оптимизировано. Для пользователя - быстрее вставить результат отчета в Ексель и там пронумеровать строки. Полностью согласен с (26).
29. Шёпот теней 1779 02.12.09 10:11 Сейчас в теме
(28) ... уписаться можно ... ииии с чем ВЫ собственно согласны в (26) и почему ? ...

...рекомендую посетить ветки товарищей: anig99, Ich_2, I_G_O_R по теме запросов ... там есть и мои комментарии по поводу и нарастающих итогов в том числе ...

... вопрос не в том что долго или быстро ... вопрос можно или нельзя ... и зачем это нужно ... ???
ответ: - можно НО не нужно ...

... вообщем за что боролся на то и напоролся ... ))) ... это о себе ...

... нуууу тогда бы и оптимизировали бы заодно ужжжж ... и нам бы показали ...
... нуууу или свой "нарастающий итог" напишите .... нам покажите ...

... вот ...
30. Ivon 673 02.12.09 10:41 Сейчас в теме
(29)
Новичкам - как сделать. Опытным - а на фуа это собственно надо.

Вот с этим согласен. Я не говорил, что статья никому не нужна и абсолютно бесполезна и не говорил, что нельзя, потому что долго. Для каждой задачи есть своя реализация, зависящая от необходимого результата. Можно - и это хорошо, но в данном случае каждый уже выберет НУЖНО это ему или нет. Вы проделали работу и показали результат и как его добиться. Я всего лишь высказал свое мнение по поводу нюансов при выполнении такого запроса.
Шёпот теней; +1 Ответить
31. Шёпот теней 1779 02.12.09 10:44 Сейчас в теме
(30) ... принято .. спасибо ... вот ...
32. ILM3 03.12.09 07:59 Сейчас в теме
Сломайте пожалуйста кнопку с точкой у Шёпота теней. Пожалуйста!
Или пусть Dushelov напишите ему драйвер клавиатуры, который будет троекратные нажатия кнопки "точка" заменять на однократное нажатие.

Я не понимаю зачем нужно писать так коментарии:
... бла-бла ... бла-бла ...
... бла-бла ... бла-бла ...
... бла-бла ... бла-бла ...
... ВОТ!!! ...

Учитесь уважать своих читателей.
Спасибо за внимание.


33. anig99 2841 03.12.09 08:44 Сейчас в теме
(32) тут многие пытались...даже банить хотели. Только смысл? Уж лучше он так пишет, чем матом ругается или имена коверкает.
36. anig99 2841 03.12.09 22:07 Сейчас в теме
34. Шёпот теней 1779 03.12.09 14:59 Сейчас в теме
(32) ... у всЕх свОи тАрАкАны ... простите ужжж и Вы мои ... вОт ...
35. Ish_2 1104 03.12.09 19:59 Сейчас в теме
Планка до оскорбления невысока :
Уж лучше он так пишет, чем матом ругается или имена коверкает.


Ты, Шепот , на провокации в (32),(33) не поддавайся. Гни свою линию.
Поверь , стоит тебе дрогнуть и связать хоть раз обрывки мыслей в связное предложение - тебе конец ! ЗАМОРДУЮТ .
..требованиями писать всегда нормально.
37. tango 506 04.12.09 09:15 Сейчас в теме
38. truba 25.03.10 18:18 Сейчас в теме
... Через четверть года идея пригодилась в одном интересном решении, спасибо.
39. Збянтэжаны Саўка 245 22.04.10 14:54 Сейчас в теме
Обобщение по шагам - это всегда результат большой предварительной работы на практике.
Люблю я такие обобщения вначале документов, ибо сразу видны трудозатраты и естественно повышается ценность и желание поглубже вникнуть в смысл статьи особенно для новичка который пока не ориентируется в мире 1С.
Прошепчу спасибо, чтобы не нарушить покой теней Ж)
40. Шёпот теней 1779 22.04.10 15:38 Сейчас в теме
(39) ... очень рад если каким-то образом помогло ... вот ...
Оставьте свое сообщение