Запросник

27.10.16

Разработка - Инструментарий разработчика

Переработанная консоль запросов. За основу взята консоль с диска ИТС. Основные изменения: 1. Добавлена возможность просмотра результата запроса в соответствии с настроенными выборками из него. 2. Добавлен просмотр содержания временных таблиц результата запроса. 3. Добавлен вызов консоли из текста программного модуля для отладки запроса. 4. Добавлены замеры времени выполнения как запроса в целом, так и запросов пакета для создания временных таблиц. 5. Добавлено отображение типов данных в результате запроса и отображение NULL. Также добавлено открытие на просмотр значений в результате запроса. 6. Добавлена возможность выполнения произвольного программного алгоритма над результатом запроса. Сохранение и загрузка алгоритмов. 7. Расширен список типов параметров. В том числе добавлена возможность работы с параметрами типа ТаблицаЗначений, Граница, МоментВремени 8. Добавлена возможность создавать запросы ко всем документам и элементам всех справочников конфигурации. 9. Существенно переработан интерфейс. В том числе добавлены просмотры в отдельных максимизированных окнах текста запроса, результата запроса, содержания временных таблиц. Много других доработок.

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

Наименование Файл Версия Размер
Запросник82.epf
.epf 135,81Kb
2325
.epf 27.10.2016 135,81Kb 2325 Скачать
Запросник81.epf
.epf 133,84Kb
2529
.epf 27.10.2016 133,84Kb 2529 Скачать

Доработанная стандартная консоль запросов.

Добавленные возможности.

По работе с текстом запроса (в контекстном меню)

1. Пункт "Пропылесосить текст из модуля" - очистить текст запроса, перенесенный из программного модуля от символов "|", ";" и кавычек

2. Пункт "Получить текст для модуля" - получить текст запроса для передачи в программный модуль (добавить символы "|", ";" и кавычки)

Работа с выборками из результата запроса

На закладке "Выборки" можно настроить правила выборки данных из результата запроса.

Предусмотрено 2 режима выгрузки результата запроса в таблицу/дерево:

  • Стандартная выгрузка результата - используется метод Выгрузить() результата запроса;
  • По списку настроенных выборок - используется таблица настроенных выборок из результата запроса. Используется вложенный вызов метода Выбрать() к описанным выборкам из запроса. Т.е. первая выборка получается из результата запроса, а каждая последующая - выборкой из предыдущей.

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

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

В данном режиме также добавлено отображение служебной информации о записи результата: типы записей и уровни группировок.

Работа со временными таблицами

На закладке «Временные таблицы» можно посмотреть содержимое временных таблиц запроса.

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

Выполнение алгоритма над результатом запроса

Для выполнения произвольного алгоритма над результатом запроса необходимо нажать кнопку "Выполнить алгоритм..." на закладке "Результат". Выполнение алгоритма возможно только если результат представлен в виде таблицы значений (режим Таблица на закладке "Результат").

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

При написании алгоритма для обращения к строке результата необходимо использовать выражение СтрокаРезультата.

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

В подменю кнопки "Выполнить алгоритм" находится дополнительный пункт "Выполнить для первой строки". При выборе этого пункта алгоритм выполняется только для первой строки результата. Этот режим рекомендуется использовать для отладки алгоритма.

Вызов консоли из текста модуля для анализа отлаживаемого запроса

Консоль запросов может также использоваться для отладки запросов в режиме отладки кода. Для этого, необходимо после описания и установки параметров запроса вставить код:

ВнешниеОбработки.Создать("Q:\1С\8.2\My_EPFs\Запросник82.epf").Отладить(Запрос);

где

"Q:\1С\8.2\My_EPFs\Запросник82.epf" - путь к консоли на локальном диске;

Запрос - отлаживаемый запрос.

В результате в режиме "1С:Предприятие" будет открыто окно консоли с загруженным в нее запросом и установленными у него параметрами.

Прочие доработки

1. Добавлен режим редактирования текста запроса в отдельном большом окне (кнопка со стрелкой в правом верхнем углу текста запроса).

2. Добавлена кнопка копирования текста запроса в буфер обмена (в нижнем правом углу текста запроса)

3. Добавлена выгрузка результата запроса в табличный документ (пункт в контекстном меню )

4. В таблице результата добавлено отображение значения NULL

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

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

7. Возможность работать с параметрами типа «МоментВремени» и "Граница" (кнопка «Момент времени / Граница» на закладке «Параметры»).

8. Хранение истории версий запроса.

9. Возможность создавать запросы ко всем документам и элементам всех справочников конфигурации.

10. Интерфейсные доработки.

Полное описание возможностей и порядок работы с Запросником включены в справку по нему.

Сайт Запросника: https://sites.google.com/site/vtezin/zaprosnik-1s

запрос консоль запросов обработка запросник

См. также

SALE! 20%

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

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

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

13000 10400 руб.

02.09.2020    122110    670    389    

714

SALE! 25%

Infostart PrintWizard

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

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

18000 15300 руб.

06.10.2023    7285    21    6    

39

SALE! 20%

Infostart УДиФ: Управление данными и формами

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

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

10000 8000 руб.

10.11.2023    3524    11    1    

34

SALE! 30%

PowerTools

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

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

3600 2520 руб.

14.01.2013    177736    1073    0    

849

Многопоточность. Универсальный «Менеджер потоков» 2.1

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

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    99344    239    97    

296

[ЕХТ] Фреймворк для Расширений 1С

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

"Фреймворк для Расширений 1С" это универсальное и многофункциональное решение, упрощающее разработку и поддержку создаваемых Расширений. Поставляется в виде комплекта из нескольких Расширений с открытым исходным кодом. Работает в любых Конфигурациях в режиме Управляемого приложения с режимом совместимости 8.3.12 и выше без необходимости внесения изменений в Конфигурацию.

3000 руб.

27.08.2019    18107    6    8    

39

1С HTML Шаблоны / HTML Templates

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Быстрая и удобная обработка для работы с шаблонами HTML. Позволяет легко и быстро формировать код HTML.

2040 руб.

27.12.2017    28106    3    10    

15

Выполнение произвольного кода или запроса с параметрами через Web-сервис (замена COM-подключений)

Инструментарий разработчика Обмен между базами 1C Платформа 1С v8.3 Платные (руб)

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

2400 руб.

24.09.2019    23601    15    15    

32
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
101. rasswet 82 11.11.10 21:13 Сейчас в теме
(99) а мне твоя нравится. ничего лишнего и всё что надо есть..Мерси!
103. tezin 574 12.11.10 15:56 Сейчас в теме
(101) спасибо :)
"ничего лишнего и все что надо" с такой целью и делалась :)
по этой же причине не добавляется новый функционал не связанный с разработкой и отладкой запросов
100. пользователь 10.11.10 18:35
Сообщение было скрыто модератором.
...
106. tezin 574 12.11.10 16:19 Сейчас в теме
(100) очень круто и наворочено
это и хорошо и плохо
102. Рамзес 29 12.11.10 14:35 Сейчас в теме
Отличная консоль! Сконвертировал под 8.2 работает без ошибок.
104. tezin 574 12.11.10 15:57 Сейчас в теме
(102) спасибо на добром слове :)
а зачем конвертировал?
второй файл - Запросник82.epf чем не подошел?
105. Рамзес 29 12.11.10 16:13 Сейчас в теме
107. berserg 11 13.11.10 09:02 Сейчас в теме
Вещь неплохая, единственное, что заметил, в установке параметров запроса нет возможности задать список значений
108. berserg 11 13.11.10 09:04 Сейчас в теме
109. tezin 574 22.11.10 17:22 Сейчас в теме
Доработано:
В таблице параметров запроса, неиспользуемые параметры отображаются серым цветом. Добавлена кнопка удаления неиспользуемых в запросе параметров из таблицы параметров.
110. acsent 1199 25.11.10 16:44 Сейчас в теме
Консоль = ВнешниеОбработки.Создать("Q:\1C\8.1\My_EPFs\КонсольЗапросов81+.epf");
Консоль.ВнешнийЗапрос = Запрос;
Форма = Консоль.ПолучитьФорму();
Форма.Открыть();
Возврат;

Ужасный способ отладки
Такой мне больше нравится

ВнешниеОбработки.создать("D:\ирКонсольЗапросов_82.epf").ОткрытьДляОтладки(Запрос);
116. tezin 574 30.11.10 15:57 Сейчас в теме
(110) у Вас весьма старый вариант Запросника
в текущем делается именно так как Вы предлагаете
P.S. строка для вызова Запросника формируется кстати автоматически и есть спец. кнопка для копирования ее в буфер
см. кнопку "i" в правом верхнем углу Запросника ;)
111. mybracho 25.11.10 17:31 Сейчас в теме
Большое спасибо. Очень понравилось
120. tezin 574 30.11.10 16:10 Сейчас в теме
112. Flashback1979SE 26.11.10 09:31 Сейчас в теме
Поставил плюс за то что дорабатываешь самый мой любимый инструмент - консоль запросов.
PS: Я SQL маньяк))).
PS2: еще бы был бы TransactSQL прям в 1С-ке)))
119. tezin 574 30.11.10 16:09 Сейчас в теме
(112) ну надеюсь и доработки мои тебе тоже понравяться :)
113. vasiliy_b 284 29.11.10 12:02 Сейчас в теме
Предлагаю функцию "отладить()" переписать вот так:
Если ТипЗнч(Запрос) = Тип("Запрос") Тогда
ВнешнийЗапрос = Запрос;
ИначеЕсли ТипЗнч(Запрос) = Тип("ПостроительЗапроса")ИЛИ ТипЗнч(Запрос) = Тип("ПостроительОтчета") Тогда
тЗапрос = Новый Запрос;
тЗапрос.Текст = Запрос.Текст;
Для Каждого СтрокаПараметра Из Запрос.Параметры Цикл
тЗапрос.УстановитьПараметр(СтрокаПараметра.Ключ,СтрокаПараметра.Значение);
КонецЦикла;
ВнешнийЗапрос = тЗапрос;
КонецЕсли;
ПолучитьФорму("Форма").ОткрытьМодально();


Так можно будет передать не только объект запроса но и построители отчетов.
и открывая форму модально, можно посмотреть запрос до его выполнения. Особенно это важно для тяжелых запросов.
118. tezin 574 30.11.10 16:06 Сейчас в теме
(113) я в таких случаях использую метод ПолучитьЗапрос() построителя и передаю для отладки полученный запрос
или это не то?
121. vasiliy_b 284 30.11.10 22:38 Сейчас в теме
(118) С ПолучитьЗапрос() - это кому как удобней, по мне так меньше текста писать при вызове запроса на отладку. А с методом ОткрытьМодально() лучше переделать. Допустим я оптимизирую запрос который формируется 40 минут. след, чтобы мне с ним поработать, надо будет сначала вызвать отладку, потом запустить отчет на продолжение подождать 40 минут, потом снова запустить, чтобы посмотреть где тупит. в итоге лишнее пустое ожидание. а с методом ОткрытьМодально() я вызвываю отладчик, и сразу начинаю в 1с-ке с ним работать, когда же запрос изменен, то просто перезапускаю 1С.
123. tezin 574 01.12.10 11:17 Сейчас в теме
(121) уболтал :)

Добавлена возможность открытия Запросника для отладки запроса в модальном режиме. Для этого в функции Отладить добавлен второй необязательный параметр (по умолчанию Ложь).

Примеры вызова:

ВнешниеОбработки.Создать("Q:\1С\8.1\My_EPFs\Запросник81.epf").Отладить(Запрос); - отладка в обычном режиме

ВнешниеОбработки.Создать("Q:\1С\8.1\My_EPFs\Запросник81.epf").Отладить(Запрос, Истина); - отладка в модальном режиме
114. Felix1106 30.11.10 14:56 Сейчас в теме
После выполнения запроса зависает соединение с базой и растет время соединения с субд в консоли предприятия. После закрытия консоли - отваливается. С другими запросниками такого не наблюдалось.
117. tezin 574 30.11.10 16:00 Сейчас в теме
(114) результат запроса большой?
возможно тормоза связаны с отображением результата в таблице значений на форме Запросника
если не сложно сделайте замер производительности в отладчике, чтобы понять какой кусок модуля тормозит
115. tezin 574 30.11.10 15:54 Сейчас в теме
Доработано:

При отладке запроса, переданного из программного модуля сохраняется содержимое временных таблиц запроса. При этом в список временных таблиц запроса на закладке "Временные таблицы" попадаюттолько таблицы, запросы создания которых присутствуют в текущем тексте запроса. Для просмотра таблиц добавленных в запрос ранее, необходимо на закладке "Временные таблицы" вручную указать имя таблицы в поле "Временная таблица" и нажать кнопку "показать".
122. tezin 574 01.12.10 10:55 Сейчас в теме
Добавлена возможность просмотра содержимого временной таблицы в отдельном окне (аналогично просмотру результата запроса).
Мелкие интерфейсные доработки.
124. KeyMaster 89 02.12.10 18:05 Сейчас в теме
Доброе время. Очень понравилось! Однозначно +.
Не понял, только, как в параметрах установить список.
Подскажите, пожалуйста.
125. tezin 574 02.12.10 20:45 Сейчас в теме
(124)
пора FAQ писать :)
надо очистить значение параметра, чтобы появилась кнопка выбора типа
выбрать тип Список значений и заполнить его
127. KeyMaster 89 05.12.10 11:30 Сейчас в теме
126. rasswet 82 04.12.10 22:25 Сейчас в теме
столкнулся с проблемой.
нужно было открыть большой ЗУП запрос в консоли.. параметры передались но..

{Форма.Форма.Форма(746)}: Ошибка при вызове метода контекста (Выполнить): {(8, 2)}: Таблица не найдена "ВТ_ТаблицаОстатков"
<<?>>ВТ_ТаблицаОстатков КАК ТаблицаОстатков
Сначал по тексту имеем
Запрос.Текст =
"ВЫБРАТЬ
| ТаблицаОстатков.Ссылка КАК Ссылка,
*****неважно
| ТаблицаОстатков.ДатаОстатков
|ПОМЕСТИТЬ ВТ_ТаблицаОстатков
потом
****
| ДатаОкончанияОтпуска";
Запрос.Выполнить();
и далее уже шел мой запрос который я открывал в консоли.
Запрос.Текст =
"ВЫБРАТЬ
и получил ошибку..
что можно с этим сделать?
128. tezin 574 05.12.10 22:17 Сейчас в теме
(126) без консоли запрос работает?
Менеджер ВТ не забыл объявить?
брось плиз на почту фрагмент кода с запросом целиком, пока не могу понять где глюк
134. rasswet 82 09.12.10 19:17 Сейчас в теме
(128) не объявлял. просто после нужного мне запроса поставил код из этой темы, в которой написано как отлаживать запрос из текста модуля.
135. tezin 574 10.12.10 09:27 Сейчас в теме
(134) Без менеджера твой пример работать и не будет. Ты же не пакетно выполняешь запрос, а несколько раз вызываешь его с разным текстом. В этом случае необходимо явно в коде прописывать менеджер ВТ запросу.
129. cheburashka 41 06.12.10 09:32 Сейчас в теме
При отладке запроса через вызов функции Отладить() если запрос содержит виртуальные таблицы, то обработка выполняет запрос только 1 раз, потом, при повторном выполнении запроса, ругается на то, что такая виртуальная таблица уже существует
130. tezin 574 06.12.10 10:27 Сейчас в теме
131. cheburashka 41 06.12.10 13:08 Сейчас в теме
Все равно выдает ошибку

PS: не удобно то, что на Ctrl+L висит открытие последних используемых файлов. Этот шорткат заменяет типовой очень полезный шорткат.
132. tezin 574 06.12.10 15:09 Сейчас в теме
(131) вышлите запрос на почту, посмотрю
а что за типовой Ctrl+L?
что-то не припомню
133. cheburashka 41 06.12.10 15:21 Сейчас в теме
Ctrl+L удаляет строчку целиком вместе с переходом на следующую строку, тем самым при удалении не нужно выделять текущую строку от начала до конца а потом еще и переход строки удалять. Удобная штука :)
136. cheburashka 41 16.12.10 09:03 Сейчас в теме
Иногда не сообщает об ошибках, при этом не открывает конструктор запроса. И вроде в старой версии можно было отменять изменения запроса нажатием Ctrl+Z а теперь - нет.
137. tezin 574 16.12.10 10:13 Сейчас в теме
(136) по поводу сообщения об ошибках - исправил, скоро выдам релиз с доработками
а Ctrl+Z у меня работает нормально, правда отменяется только редактирование вручную
результат работы конструктора данными клавишами не отменяется, но это особенности платформы видимо
я на это сочетание своих обработчиков не вешал
138. tezin 574 20.12.10 15:05 Сейчас в теме
Добавлена возможность отладки запроса формирования временной таблицы.

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

Исправлены мелкие ошибки.
139. tezin 574 12.01.11 13:54 Сейчас в теме
Добавлен функционал выполнения алгоритма по результату запроса.

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

Полное описание в справке.
Поручик; +1 Ответить
140. kit 73 21.01.11 01:31 Сейчас в теме
Спасибо автору, уже опробовал при создании отчета на 8.2, удобная и полезная штука.
141. tezin 574 21.01.11 10:33 Сейчас в теме
142. USER--1C 60 26.01.11 14:41 Сейчас в теме
Спасибо. Есть замечание. В запросе используется временная таблица, в которой "ИНДЕКСИРОВАТЬ ПО Номенклатура".
При нажатии на кнопку "Отладить" на странице "Временные таблицы" в сформированном тексте запроса,
как положено, пропадает "ПОМЕСТИТЬ ДокТЧ", но не может переварить "ИНДЕКСИРОВАТЬ ПО Номенклатура",
т.к. это для временных таблиц.
Сообщение:
{Форма.Форма.Форма(759)}: Ошибка при вызове метода контекста (Выполнить): {(24, 1)}: Синтаксическая ошибка "ИНДЕКСИРОВАТЬ"
<<?>>ИНДЕКСИРОВАТЬ ПО

Прошу поправить.
144. tezin 574 09.02.11 13:01 Сейчас в теме
(142) Спасибо за замечание. Исправлю
143. tezin 574 09.02.11 13:00 Сейчас в теме
Изменена работа с редактированием параметров имеющих тип СписокЗначения. На панели редактирования параметров добавлена кнопка "Список". При ее нажатии если значение параметра не списочное, то оно преобразуется в список с одним элементом.

Для работы со списком значений параметра добавлена новая форма. В ней при создании нового элемента списка тип его значения приводится к типу первого элемента списка. Т.е. не надо все время выбирать тип значения для нового элемента как в стандартном редактировании списка.
145. BigMih 16.02.11 14:14 Сейчас в теме
Функционал с алгоритмом (я его называю - быстрые обработки :)) давно нужен был. Именно из-за него иногда использовал Универсальную консоль отчётов. Но единственное не хватает окна для кода перед циклом... К примеру для создания списка значений или переменной счётчика / признака. Тогда вообще можно половину обработок небольших в эту консоль перенести
146. tezin 574 16.02.11 14:42 Сейчас в теме
(145) Согласен. Сам пришел к выводу что лучше сделать просто окно для алгоритма с заготовкой по обходу результата. Будет и удобно и универсально.
147. tezin 574 27.02.11 22:01 Сейчас в теме
Изменена работа с выполнением алгоритма обработки результата запроса. Ранее можно было задавать только алгоритм обратки строки результата. Теперь же алгоритм можно задавать полностью собственный. При создании нового алгоритма автоматически предлагается шаблон с циклом по строкам результата.
148. vec435 15 02.03.11 16:47 Сейчас в теме
слишком большой код для вызова консоли из кода.добавь одну функцию в консоли , в которую будешь передавть параметры из кода:запрос,менеджервременныхтаблиц и т.д.
149. tezin 574 02.03.11 17:48 Сейчас в теме
(148) это какой же версией древней пользуетесь? код для вызова давно уже минимален
примерно такой:
ВнешниеОбработки.Создать("Q:\1С\8.2\My_EPFs\Запросник82.epf").Отладить(Запрос);
Поручик; +1 Ответить
150. Поручик 4670 02.03.11 18:04 Сейчас в теме
(149) Описалово на основной странице измени, не пугай народ.
151. tezin 574 02.03.11 19:47 Сейчас в теме
(150) и правда мой косяк
изменил
спасибо
152. q251 03.03.11 14:15 Сейчас в теме
Очень огорчила странная работа "Ctrl+Z"(отменить). После выполнения запроса "история" изменений стирается...
153. air_mike 25 24.08.11 15:27 Сейчас в теме
Не встречалась такая бага??... Выполняешь запрос он все ок выполняется. Далее в консоли сервера смотрим. Пишет что установлено соединение с СУБД. (№ соединения) , Захвачено СУБД, (время). И пока консоль не закроешь "не отпускает".

СУБД Постгри.
Запрос рабочий в конфе пашет без захвата после выполнения.

Если есть предположения скажи...
154. air_mike 25 24.08.11 15:29 Сейчас в теме
q251 пишет:

Очень огорчила странная работа "Ctrl+Z"(отменить). После выполнения запроса "история" изменений стирается...


Процедура КнопкаВыполнитьНажатие(Элемент)

Если СпособВыборки = 1 Тогда
ПоказыватьСлужебныеКолонкиРезультата = Ложь;
КонецЕсли;//

//ОчиститьТекстЗапросаОтМусора();
ВыполнитьЗапрос();

КонецПроцедуры

Закоменть вот эту строку(ОчиститьТекстЗапросаОтМусора). всё ок будет работать скорее всего. на страой KonsoljZaprosov82+ менял все нормально работало
155. air_mike 25 25.08.11 08:25 Сейчас в теме
Не хватает разделителя между ДеревоЗапросов и ТекстЗапроса.
Очень не удобно когда в дереве запросов более 500 запросов и более 8 уровней вложенности.

п.с. Для себя уже добавил.

Еще ПанельЦентральноеОкно переместил выше, так чтобы кнопка "закрыт"ь была там же где кнопка "параметры". Чтобы тыкать мышкой в одно и тоже место. Быстрее.
156. air_mike 25 26.08.11 08:30 Сейчас в теме
Очень огарчило новое дерево запросов. Почему нет подменю добавить подзапрос?? Почему нет подменю перенести подзапрос к дргому родителю?
10 минут искал как же все таки добавить все это. хоть и нашел. но это баг!
157. tezin 574 29.08.11 12:01 Сейчас в теме
air_mike пишет:

Не встречалась такая бага??... Выполняешь запрос он все ок выполняется. Далее в консоли сервера смотрим. Пишет что установлено соединение с СУБД. (№ соединения) , Захвачено СУБД, (время). И пока консоль не закроешь "не отпускает".



СУБД Постгри.

Запрос рабочий в конфе пашет без захвата после выполнения.



Если есть предположения скажи...
Показать


Может связано с тем, что пока консоль открыта - объект Запрос существует в оперативке и держит СУБД. А в конфе объект уничтожается после выхода из процедуры.
158. tezin 574 29.08.11 12:03 Сейчас в теме
air_mike пишет:

Очень огарчило новое дерево запросов. Почему нет подменю добавить подзапрос?? Почему нет подменю перенести подзапрос к дргому родителю?

10 минут искал как же все таки добавить все это. хоть и нашел. но это баг!


Кнопки этих действий находятся над деревом запросов. Добавил их и в контекстное подменю дерева.
161. pencroff 123 09.09.11 12:30 Сейчас в теме
{ВнешняяОбработка.Запросник.МодульОбъекта(146,9)}: Процедура или функция с указанным именем уже определена (Отладить)
Функция <<?>>Отладить(Запрос, Знач Модально = Ложь) Экспорт

Кто сталкивался и как лечится?
162. additive 09.09.11 13:06 Сейчас в теме
Например, в дереве запросов один запрос. Добавляем в дерево запросов еще один запрос. Из первого копируем запрос и вставляем во второй. Затем переходим на первый запрос. Возвращаемся на второй, а текста уже нет. Хотелось бы, чтобы текст сохранялся.
164. tezin 574 12.09.11 15:00 Сейчас в теме
163. tezin 574 09.09.11 14:17 Сейчас в теме
additive пишет:

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


спасибо,
разберемся
165. tezin 574 13.09.11 08:49 Сейчас в теме
Т.к. за последние дни появились просьбы выслать Запросник на почту по причине изменения правил скачивания на инфостарте - в URL публикации добавил ссылку на скачивание с Народа. Надеюсь модераторы на забанят :)

Сам новую политику владельцев сайта не поддерживаю, на мой взгляд подобные меры ведут к снижению популярности ресурса и уменьшению количества пользователей. Похоже, что теперь на вопрос где взять запросник придется отсылать не просто на инфостарт, но еще и логин свой давать чтоб скачать смогли :(
166. sommid 14.09.11 17:59 Сейчас в теме
согласен. Особенно тяжело начинающим.. Еще забавно выглядит рекомендация по оформлению публикаций, где ссылка на разукрашку, которую не скачаешь, пока не нафлудишь..

Спасибо за консальку (+).
167. Filt 12 16.09.11 10:20 Сейчас в теме
Спасибо. Теперь все отчеты начинаю с постоения запроса в этой обработке.
168. Legavaz 704 16.09.11 10:51 Сейчас в теме
Отличная работа, некоторые пожелания которые будут удобны (имхо)
1) параметры вынести на поле описание
2) переделать функционал алгоритма в алгоритмы и добавить возможность сохранения (желательно как в одной из моих консолей)

В остальном все супер, тока кнопки ну очень крупные. )) спасибо. отдельное спасибо за отладку вложенных таблиц.
169. tezin 574 16.09.11 10:57 Сейчас в теме
Filt пишет:

Спасибо. Теперь все отчеты начинаю с постоения запроса в этой обработке.


Пожалуйста :)
170. tezin 574 16.09.11 11:08 Сейчас в теме
Legavaz пишет:

Отличная работа, некоторые пожелания которые будут удобны (имхо)

1) параметры вынести на поле описание

2) переделать функционал алгоритма в алгоритмы и добавить возможность сохранения (желательно как в одной из моих консолей)



В остальном все супер, тока кнопки ну очень крупные. )) спасибо. отдельное спасибо за отладку вложенных таблиц.


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

по пунку 2)
алгоритм сохраняется вместе с запросом автоматически, когда закрывается форма работы с алгоритмом
по поводу возможности к одному запросу делать несколько алгоритмов - буду подумать :)
дай кстати ссылку на ту самую "одну из твоих консолей", было бы интересно посмотреть твое решение

крупные кнопки только основные, но в них и надо быстро попадать без особого прицела
171. Legavaz 704 16.09.11 11:29 Сейчас в теме
(170) консоль

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

мало написать запрос, надо еще и как следует навести прицел. )), вот если бы сделать их ну немного меньше, то и места для параметров бы и появилось, но это твое произведение ты и мастер. ))
172. tezin 574 16.09.11 11:47 Сейчас в теме
(171) о,да! Мастер Огромных Кнопок - это точно я :D
173. olgaesk84 22.09.11 06:34 Сейчас в теме
174. Eraser 22.09.11 10:30 Сейчас в теме
Спасибо за комментарий.
175. HarleyDavidson 27.09.11 20:23 Сейчас в теме
176. Tolson 28.09.11 11:31 Сейчас в теме
Очень удобная штука - постоянно пользуюсь. Автору спасибо.
177. tezin 574 28.09.11 22:25 Сейчас в теме
178. sherbv 501 02.10.11 15:22 Сейчас в теме
Отличная обработка когда надо отладить огромный запрос. За отладку запроса из отладки (повторяюсь :) ) огромное отдельное спасибо!
180. tezin 574 03.10.11 22:39 Сейчас в теме
(178), (179) и всем
успешных запросов :)
179. evgeniy.bilyk 03.10.11 22:11 Сейчас в теме
полезная весчь, автору спасибо
181. Epic_Fail 05.10.11 18:24 Сейчас в теме
Отличная идея! Очень порадовала и выручила когда только разбирался с запросами. Очень благодарен :) Единственное что интерфейс сначала был непонятен )
182. asg1975 260 06.10.11 10:11 Сейчас в теме
Мегареспект! И скачать можно без $!!!
183. tani6e4ka 08.10.11 15:24 Сейчас в теме
Ваша консоль нравится больше других. Но иногда бывает форма разъезжается.
185. tezin 574 10.10.11 09:09 Сейчас в теме
(183) увы это косяки платформы :(
формы с достаточно сложными привязками и изменяемой видимостью элементов частенько "расползаются"
причем на 8.2 это гораздо чаще встречается чем на 8.1
решение одно - правый клик на заголовке формы и "Восстановить положение окна"
184. pmtvv 09.10.11 14:55 Сейчас в теме
186. tezin 574 13.10.11 08:38 Сейчас в теме
Новый релиз:


Добавлено сохранение запроса во временный файл перед выполнением. Теперь если при выполнении запроса 1с "зависла" - сам запрос не потеряется. Для восстановления запроса из временного файла служить первая строка списка последних файлов ("Из кэша...").

Добавлена форма выбора вариантов копирования текста для вставки в программный модуль (нижняя кнопка в правом нижнем углу поля текста запроса).
187. SumMrak 19.10.11 08:46 Сейчас в теме
Не очень понравился интерфейс, иногда теряешься когда ищешь куда нажать
а в целом функционал радует
188. tezin 574 19.10.11 09:16 Сейчас в теме
(187)
поподробнее плиз
что не удобно?
189. пользователь 19.10.11 10:13
Сообщение было скрыто модератором.
...
190. tezin 574 19.10.11 10:49 Сейчас в теме
(189) если второй параметр в коде поставить не границу а дату отладка работает?
191. Djonny 20.10.11 15:05 Сейчас в теме
ооо, это лучшая консоль запросов, что я видел
192. additive 20.10.11 16:04 Сейчас в теме
в окне "параметры" если нет параметров или есть но параметр не в фокусе и нажать "момент времени / граница" то

{Обработка.КонсольЗапросовТезин.Форма.Форма(1340)}: Значение не является значением объектного типа (МоментВремениСсылка)
Если ЗначениеЗаполнено(ТекДанные.МоментВремениСсылка) Тогда
195. tezin 574 20.10.11 21:49 Сейчас в теме
(192) поправлю в следующем релизе
(193), (194) это что было?! :)
193. maratimus 22 20.10.11 18:17 Сейчас в теме
ПроцедурыПерсонифицированногоУчетаПолныеПрава
Функция ДанныеОВзносахПоКатегориям


{Форма.Форма.Форма(764)}: Ошибка при вызове метода контекста (Выполнить): {(7, 2)}: Таблица не найдена "ВТРасчетСумм"
<<?>>ВТРасчетСумм КАК РасчетныеДанные
194. maratimus 22 20.10.11 18:20 Сейчас в теме
Вот он сам запрос

Запрос.Текст =
"ВЫБРАТЬ РАЗЛИЧНЫЕ
| СведенияПринятыеПФР.КомплектДокументов
|ПОМЕСТИТЬ ВТПринятоВПФР
|ИЗ
| РегистрСведений.СведенияПринятыеПФР КАК СведенияПринятыеПФР
|ГДЕ
| СведенияПринятыеПФР.КомплектДокументов <> ЗНАЧЕНИЕ(Документ.ПередачаСЗВ4вПФР.ПустаяСсылка)
| И СведенияПринятыеПФР.Организация = &Организация
| И СведенияПринятыеПФР.ОтчетныйПериодПерсучетаПФР < &ОтчетныйПериод
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| СтраховыеВзносыИсчисленныеОбороты.ФизЛицо КАК ФизЛицо,
| СтраховыеВзносыИсчисленныеОбороты.Период КАК МесяцОтчетногоПериода,
| КОНЕЦПЕРИОДА(СтраховыеВзносыИсчисленныеОбороты.Период, МЕСЯЦ) КАК Период,
| ВЫБОР
| КОГДА СтраховыеВзносыИсчисленныеОбороты.Период < ДАТАВРЕМЯ(2010, 7, 1, 0, 0, 0)
| ТОГДА ДАТАВРЕМЯ(2010, 1, 1, 0, 0, 0)
| КОГДА СтраховыеВзносыИсчисленныеОбороты.Период < ДАТАВРЕМЯ(2011, 1, 1, 0, 0, 0)
| ТОГДА ДАТАВРЕМЯ(2010, 7, 1, 0, 0, 0)
| ИНАЧЕ НАЧАЛОПЕРИОДА(СтраховыеВзносыИсчисленныеОбороты.Период, КВАРТАЛ)
| КОНЕЦ КАК ОтчетныйПериод,
| СтраховыеВзносыИсчисленныеОбороты.ПФРСтраховаяОборот + ВЫБОР
| КОГДА СтраховыеВзносыИсчисленныеОбороты.Период < &ДатаНовойРедакцииЗакона212
| ТОГДА 0
| ИНАЧЕ СтраховыеВзносыИсчисленныеОбороты.ПФРСтраховаяЕНВДОборот
| КОНЕЦ КАК ПФРСтраховаяОборот,
| СтраховыеВзносыИсчисленныеОбороты.ПФРНакопительнаяОборот + ВЫБОР
| КОГДА СтраховыеВзносыИсчисленныеОбороты.Период < &ДатаНовойРедакцииЗакона212
| ТОГДА 0
| ИНАЧЕ СтраховыеВзносыИсчисленныеОбороты.ПФРНакопительнаяЕНВДОборот
| КОНЕЦ КАК ПФРНакопительнаяОборот,
| ВЫБОР
| КОГДА СтраховыеВзносыИсчисленныеОбороты.Период < &ДатаНовойРедакцииЗакона212
| ТОГДА СтраховыеВзносыИсчисленныеОбороты.ПФРСтраховаяЕНВДОборот
| ИНАЧЕ 0
| КОНЕЦ КАК ПФРСтраховаяЕНВДОборот,
| ВЫБОР
| КОГДА СтраховыеВзносыИсчисленныеОбороты.Период < &ДатаНовойРедакцииЗакона212
| ТОГДА СтраховыеВзносыИсчисленныеОбороты.ПФРНакопительнаяЕНВДОборот
| ИНАЧЕ 0
| КОНЕЦ КАК ПФРНакопительнаяЕНВДОборот
|ПОМЕСТИТЬ ВТИсчисленоПоЗЛ
|ИЗ
| РегистрНакопления.СтраховыеВзносыИсчисленные.Обороты(&ОтчетныйПериод, &КонецОтчетногоПериода, Месяц, ОбособленноеПодразделение = &Организация) КАК СтраховыеВзносыИсчисленныеОбороты
|
|ИНДЕКСИРОВАТЬ ПО
| ФизЛицо
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| СрезПоследнихДат.МесяцОтчетногоПериода,
| СрезПоследнихДат.Физлицо КАК Физлицо
|ПОМЕСТИТЬ ВТИнвалиды
|ИЗ
| (ВЫБРАТЬ
| Периоды.МесяцОтчетногоПериода КАК МесяцОтчетногоПериода,
| Периоды.ФизЛицо КАК Физлицо,
| МАКСИМУМ(СведенияОбИнвалидностиФизлиц.Период) КАК Период
| ИЗ
| ВТИсчисленоПоЗЛ КАК Периоды
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СведенияОбИнвалидностиФизлиц КАК СведенияОбИнвалидностиФизлиц
| ПО Периоды.Период >= СведенияОбИнвалидностиФизлиц.Период
| И Периоды.ФизЛицо = СведенияОбИнвалидностиФизлиц.Физлицо
|
| СГРУППИРОВАТЬ ПО
| Периоды.ФизЛицо,
| Периоды.МесяцОтчетногоПериода) КАК СрезПоследнихДат
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СведенияОбИнвалидностиФизлиц КАК СведенияОбИнвалидностиФизлиц
| ПО СрезПоследнихДат.Период = СведенияОбИнвалидностиФизлиц.Период
| И СрезПоследнихДат.Физлицо = СведенияОбИнвалидностиФизлиц.Физлицо
|ГДЕ
| СведенияОбИнвалидностиФизлиц.Инвалидность
|
|ИНДЕКСИРОВАТЬ ПО
| Физлицо,
| СрезПоследнихДат.МесяцОтчетногоПериода
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| Периоды.МесяцОтчетногоПериода,
| ЕСТЬNULL(УчетнаяПолитикаНалоговыйУчет.ВидТарифаСтраховыхВзносов, ЗНАЧЕНИЕ(Перечисление.ТарифыСтраховыхВзносов.ОбщийНалоговыйРежим)) КАК ВидТарифаСтраховыхВзносов
|ПОМЕСТИТЬ ВТВидыТарифныхСтавокОрганизаций
|ИЗ
| (ВЫБРАТЬ
| Периоды.МесяцОтчетногоПериода КАК МесяцОтчетногоПериода,
| УчетнаяПолитикаНалоговыйУчет.Организация КАК Организация,
| МАКСИМУМ(УчетнаяПолитикаНалоговыйУчет.Период) КАК ПериодРегистра
| ИЗ
| ВТИсчисленоПоЗЛ КАК Периоды
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УчетнаяПолитикаНалоговыйУчет КАК УчетнаяПолитикаНалоговыйУчет
| ПО Периоды.Период >= УчетнаяПолитикаНалоговыйУчет.Период
| И (УчетнаяПолитикаНалоговыйУчет.Организация = &ГоловнаяОрганизация)
|
| СГРУППИРОВАТЬ ПО
| Периоды.МесяцОтчетногоПериода,
| УчетнаяПолитикаНалоговыйУчет.Организация) КАК Периоды
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УчетнаяПолитикаНалоговыйУчет КАК УчетнаяПолитикаНалоговыйУчет
| ПО Периоды.ПериодРегистра = УчетнаяПолитикаНалоговыйУчет.Период
| И Периоды.Организация = УчетнаяПолитикаНалоговыйУчет.Организация
|
|ИНДЕКСИРОВАТЬ ПО
| Периоды.МесяцОтчетногоПериода
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| ИсчисленоПоЗЛ.ФизЛицо КАК ФизЛицо,
| ИсчисленоПоЗЛ.ПФРНакопительнаяОборот КАК ПФРНакопительнаяОборот,
| ИсчисленоПоЗЛ.ПФРСтраховаяОборот КАК ПФРСтраховаяОборот,
| ИсчисленоПоЗЛ.ОтчетныйПериод КАК ОтчетныйПериод,
| НАЧАЛОПЕРИОДА(ИсчисленоПоЗЛ.ОтчетныйПериод, ГОД) КАК ГодОтчетногоПериода,
| ВЫБОР
| КОГДА Инвалиды.Физлицо ЕСТЬ НЕ NULL
| ТОГДА ЗНАЧЕНИЕ(Перечисление.ТарифыСтраховыхВзносов.ОрганизацияИнвалидов)
| ИНАЧЕ ВидыТарифныхСтавокОрганизаций.ВидТарифаСтраховыхВзносов
| КОНЕЦ КАК ВидТарифаСтраховыхВзносов
|ПОМЕСТИТЬ ВТИсчисленоПоЗЛпоВидамТарифа
|ИЗ
| ВТИсчисленоПоЗЛ КАК ИсчисленоПоЗЛ
| ЛЕВОЕ СОЕДИНЕНИЕ ВТИнвалиды КАК Инвалиды
| ПО ИсчисленоПоЗЛ.ФизЛицо = Инвалиды.Физлицо
| И ИсчисленоПоЗЛ.МесяцОтчетногоПериода = Инвалиды.МесяцОтчетногоПериода
| ЛЕВОЕ СОЕДИНЕНИЕ ВТВидыТарифныхСтавокОрганизаций КАК ВидыТарифныхСтавокОрганизаций
| ПО ИсчисленоПоЗЛ.МесяцОтчетногоПериода = ВидыТарифныхСтавокОрганизаций.МесяцОтчетногоПериода
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| ИсчисленоПоЗЛ.ФизЛицо,
| ИсчисленоПоЗЛ.ПФРНакопительнаяЕНВДОборот,
| ИсчисленоПоЗЛ.ПФРСтраховаяЕНВДОборот,
| ИсчисленоПоЗЛ.ОтчетныйПериод,
| НАЧАЛОПЕРИОДА(ИсчисленоПоЗЛ.ОтчетныйПериод, ГОД),
| ВЫБОР
| КОГДА Инвалиды.Физлицо ЕСТЬ НЕ NULL
| ТОГДА ЗНАЧЕНИЕ(Перечисление.ТарифыСтраховыхВзносов.ОрганизацияИнвалидов)
| ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.ТарифыСтраховыхВзносов.ЕНВД)
| КОНЕЦ
|ИЗ
| ВТИсчисленоПоЗЛ КАК ИсчисленоПоЗЛ
| ЛЕВОЕ СОЕДИНЕНИЕ ВТИнвалиды КАК Инвалиды
| ПО ИсчисленоПоЗЛ.ФизЛицо = Инвалиды.Физлицо
| И ИсчисленоПоЗЛ.МесяцОтчетногоПериода = Инвалиды.МесяцОтчетногоПериода
|
|ИНДЕКСИРОВАТЬ ПО
| ФизЛицо
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| ИсчисленоПоЗЛ.ФизЛицо,
| СоответствиеТарифаКатегории.КатегорияЗастрахованныхЛиц,
| СУММА(ИсчисленоПоЗЛ.ПФРСтраховаяОборот) КАК ПФРСтраховая,
| СУММА(ИсчисленоПоЗЛ.ПФРНакопительнаяОборот) КАК ПФРНакопительная
|ПОМЕСТИТЬ ВТНачисленоЗаОтчетныйПериодФормирования
|ИЗ
| ВТИсчисленоПоЗЛпоВидамТарифа КАК ИсчисленоПоЗЛ
| ЛЕВОЕ СОЕДИНЕНИЕ ВТСоответствиеТарифаКатегории КАК СоответствиеТарифаКатегории
| ПО (&ОтчетныйГод МЕЖДУ СоответствиеТарифаКатегории.ГодС И СоответствиеТарифаКатегории.ГодПо)
| И ИсчисленоПоЗЛ.ВидТарифаСтраховыхВзносов = СоответствиеТарифаКатегории.ВидТарифаСтраховыхВзносов
|
|СГРУППИРОВАТЬ ПО
| СоответствиеТарифаКатегории.КатегорияЗастрахованныхЛиц,
| ИсчисленоПоЗЛ.ФизЛицо
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| РасчетыПоСтраховымВзносамОбороты.ПФРСтраховаяПриход КАК ПФРСтраховаяПриход,
| РасчетыПоСтраховымВзносамОбороты.ПФРНакопительнаяПриход КАК ПФРНакопительнаяПриход
|ПОМЕСТИТЬ ВТВсегоНачислено
|ИЗ
| РегистрНакопления.РасчетыПоСтраховымВзносам.Обороты(
| ,
| &ДатаАктуальности,
| ,
| ВидПлатежа = ЗНАЧЕНИЕ(Перечисление.ВидыПлатежейВГосБюджет.Налог)
| И Организация = &Организация
| И ОтчетныйПериодПерсучетаПФР = &ОтчетныйПериод) КАК РасчетыПоСтраховымВзносамОбороты
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| РасчетыПоСтраховымВзносамОбороты.ПФРСтраховаяРасход КАК ПФРСтраховаяРасход,
| РасчетыПоСтраховымВзносамОбороты.ПФРНакопительнаяРасход КАК ПФРНакопительнаяРасход,
| ""Уплата"" КАК ВидСтроки
|ПОМЕСТИТЬ ВТВсегоУплачено
|ИЗ
| РегистрНакопления.РасчетыПоСтраховымВзносам.Обороты(
| &ОтчетныйПериод,
| &КонецПериодаУплаты,
| Месяц,
| ВидПлатежа = ЗНАЧЕНИЕ(Перечисление.ВидыПлатежейВГосБюджет.Налог)
| И ОтчетныйПериодПерсучетаПФР >= &ДатаЗаменыЕСН
| И Организация = &Организация) КАК РасчетыПоСтраховымВзносамОбороты
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| ВЫБОР
| КОГДА РасчетыПоСтраховымВзносамОстатки.ПФРСтраховаяОстаток > 0
| ТОГДА 0
| ИНАЧЕ -РасчетыПоСтраховымВзносамОстатки.ПФРСтраховаяОстаток
| КОНЕЦ,
| ВЫБОР
| КОГДА РасчетыПоСтраховымВзносамОстатки.ПФРНакопительнаяОстаток > 0
| ТОГДА 0
| ИНАЧЕ -РасчетыПоСтраховымВзносамОстатки.ПФРНакопительнаяОстаток
| КОНЕЦ,
| ""Переплата""
|ИЗ
| РегистрНакопления.РасчетыПоСтраховымВзносам.Остатки(
| &ОтчетныйПериод,
| ВидПлатежа = ЗНАЧЕНИЕ(Перечисление.ВидыПлатежейВГосБюджет.Налог)
| И ОтчетныйПериодПерсучетаПФР >= &ДатаЗаменыЕСН
| И Организация = &Организация) КАК РасчетыПоСтраховымВзносамОстатки
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.ФизЛицо,
| ВЫБОР
| КОГДА &ОтчетныйГод = ГОД(СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.ОтчетныйПериод)
| ТОГДА СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.КатегорияЗастрахованныхЛиц
| КОГДА СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.КатегорияЗастрахованныхЛиц = ЗНАЧЕНИЕ(Перечисление.КатегорииЗастрахованныхЛицПФР.УСЕН)
| ТОГДА СоответствиеТарифаКатегории.КатегорияЗастрахованныхЛиц
| КОГДА СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.КатегорияЗастрахованныхЛиц = ЗНАЧЕНИЕ(Перечисление.КатегорииЗастрахованныхЛицПФР.ОЗОИ)
| ТОГДА ЗНАЧЕНИЕ(Перечисление.КатегорииЗастрахованныхЛицПФР.ООИ)
| ИНАЧЕ СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.КатегорияЗастрахованныхЛиц
| КОНЕЦ КАК КатегорияЗастрахованныхЛиц,
| СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.НачисленоНакопительная,
| СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.НачисленоСтраховая,
| СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.УплаченоНакопительная,
| СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.УплаченоСтраховая,
| СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.ОтчетныйПериод
|ПОМЕСТИТЬ ВТПринятоУплаты
|ИЗ
| ВТПринятоВПФР КАК ПринятоВПФР
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПередачаСЗВ4вПФР.ПачкиДокументов КАК ПередачаСЗВ4вПФРПачкиДокументов
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.СведенияОТрудовомСтажеИЗаработкеСЗВ4.РаботникиОрганизации КАК СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации
| ПО ПередачаСЗВ4вПФРПачкиДокументов.ДокументПачка = СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка
| ПО ПринятоВПФР.КомплектДокументов = ПередачаСЗВ4вПФРПачкиДокументов.Ссылка
| ЛЕВОЕ СОЕДИНЕНИЕ ВТВидыТарифныхСтавокОрганизаций КАК ТарифыСтавокОрганизации
| ЛЕВОЕ СОЕДИНЕНИЕ ВТСоответствиеТарифаКатегории КАК СоответствиеТарифаКатегории
| ПО (ГОД(ТарифыСтавокОрганизации.МесяцОтчетногоПериода) МЕЖДУ СоответствиеТарифаКатегории.ГодС И СоответствиеТарифаКатегории.ГодПо)
| И ТарифыСтавокОрганизации.ВидТарифаСтраховыхВзносов = СоответствиеТарифаКатегории.ВидТарифаСтраховыхВзносов
| ПО (&ОтчетныйПериод = ТарифыСтавокОрганизации.МесяцОтчетногоПериода)
|ГДЕ
| СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.ТипСведенийСЗВ = ЗНАЧЕНИЕ(Перечисление.ТипыСведенийСЗВ.ИСХОДНАЯ)
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ПринятоУплаты.ОтчетныйПериод КАК ОтчетныйПериод,
| ВЫБОР
| КОГДА &ОтчетныйГод = ГОД(ПередачаСЗВ4вПФРПачкиДокументов.ДокументПачка.КорректируемыйПериод)
| ТОГДА ПередачаСЗВ4вПФРПачкиДокументов.ДокументПачка.КатегорияЗастрахованныхЛиц
| КОГДА ПередачаСЗВ4вПФРПачкиДокументов.ДокументПачка.КатегорияЗастрахованныхЛиц = ЗНАЧЕНИЕ(Перечисление.КатегорииЗастрахованныхЛицПФР.УСЕН)
| ТОГДА СоответствиеТарифаКатегории.КатегорияЗастрахованныхЛиц
| КОГДА ПередачаСЗВ4вПФРПачкиДокументов.ДокументПачка.КатегорияЗастрахованныхЛиц = ЗНАЧЕНИЕ(Перечисление.КатегорииЗастрахованныхЛицПФР.ОЗОИ)
| ТОГДА ЗНАЧЕНИЕ(Перечисление.КатегорииЗастрахованныхЛицПФР.ООИ)
| ИНАЧЕ ПередачаСЗВ4вПФРПачкиДокументов.ДокументПачка.КатегорияЗастрахованныхЛиц
| КОНЕЦ КАК КатегорияЗастрахованныхЛиц,
| ПередачаСЗВ4вПФРПачкиДокументов.ДокументПачка
|ПОМЕСТИТЬ ВТДокументыКорректировки
|ИЗ
| ВТПринятоУплаты КАК ПринятоУплаты
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СведенияПринятыеПФР КАК Корректировки
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПередачаСЗВ4вПФР.ПачкиДокументов КАК ПередачаСЗВ4вПФРПачкиДокументов
| ПО Корректировки.КомплектДокументов = ПередачаСЗВ4вПФРПачкиДокументов.Ссылка
| ПО ПринятоУплаты.ОтчетныйПериод < Корректировки.ОтчетныйПериодПерсучетаПФР
| И (&ОтчетныйПериод > Корректировки.ОтчетныйПериодПерсучетаПФР)
| И (Корректировки.Организация = &Организация)
| ЛЕВОЕ СОЕДИНЕНИЕ ВТВидыТарифныхСтавокОрганизаций КАК ТарифыСтавокОрганизации
| ЛЕВОЕ СОЕДИНЕНИЕ ВТСоответствиеТарифаКатегории КАК СоответствиеТарифаКатегории
| ПО (ГОД(ТарифыСтавокОрганизации.МесяцОтчетногоПериода) МЕЖДУ СоответствиеТарифаКатегории.ГодС И СоответствиеТарифаКатегории.ГодПо)
| И ТарифыСтавокОрганизации.ВидТарифаСтраховыхВзносов = СоответствиеТарифаКатегории.ВидТарифаСтраховыхВзносов
| ПО (&ОтчетныйПериод = ТарифыСтавокОрганизации.МесяцОтчетногоПериода)
|ГДЕ
| ПередачаСЗВ4вПФРПачкиДокументов.ДокументПачка.ТипСведенийСЗВ В (ЗНАЧЕНИЕ(Перечисление.ТипыСведенийСЗВ.ОТМЕНЯЮЩАЯ), ЗНАЧЕНИЕ(Перечисление.ТипыСведенийСЗВ.КОРРЕКТИРУЮЩАЯ))
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| ОписаниеДокумента.ОтчетныйПериод,
| ОписаниеДокумента.ФизЛицо,
| ОписаниеДокумента.КатегорияЗастрахованныхЛиц,
| ВЫБОР
| КОГДА СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.ТипСведенийСЗВ = ЗНАЧЕНИЕ(Перечисление.ТипыСведенийСЗВ.ОТМЕНЯЮЩАЯ)
| ТОГДА 0
| ИНАЧЕ СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.УплаченоСтраховая
| КОНЕЦ КАК УплаченоСтраховая,
| ВЫБОР
| КОГДА СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.ТипСведенийСЗВ = ЗНАЧЕНИЕ(Перечисление.ТипыСведенийСЗВ.ОТМЕНЯЮЩАЯ)
| ТОГДА 0
| ИНАЧЕ СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.УплаченоНакопительная
| КОНЕЦ КАК УплаченоНакопительная,
| ВЫБОР
| КОГДА СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.ТипСведенийСЗВ = ЗНАЧЕНИЕ(Перечисление.ТипыСведенийСЗВ.ОТМЕНЯЮЩАЯ)
| ТОГДА 0
| ИНАЧЕ СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.НачисленоСтраховая
| КОНЕЦ КАК НачисленоСтраховая,
| ВЫБОР
| КОГДА СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.ТипСведенийСЗВ = ЗНАЧЕНИЕ(Перечисление.ТипыСведенийСЗВ.ОТМЕНЯЮЩАЯ)
| ТОГДА 0
| ИНАЧЕ СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.НачисленоНакопительная
| КОНЕЦ КАК НачисленоНакопительная
|ПОМЕСТИТЬ ВТКорректировкиПринятыеПФР
|ИЗ
| (ВЫБРАТЬ
| ПринятоУплаты.ОтчетныйПериод КАК ОтчетныйПериод,
| ПринятоУплаты.ФизЛицо КАК ФизЛицо,
| МАКСИМУМ(СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.ОтчетныйПериод) КАК ОтчетныйПериодКорректировки,
| ПринятоУплаты.КатегорияЗастрахованныхЛиц КАК КатегорияЗастрахованныхЛиц
| ИЗ
| ВТПринятоУплаты КАК ПринятоУплаты
| ЛЕВОЕ СОЕДИНЕНИЕ ВТДокументыКорректировки КАК Корректировки
| ПО ПринятоУплаты.ОтчетныйПериод = Корректировки.ОтчетныйПериод
| И ПринятоУплаты.КатегорияЗастрахованныхЛиц = Корректировки.КатегорияЗастрахованныхЛиц
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.СведенияОТрудовомСтажеИЗаработкеСЗВ4.РаботникиОрганизации КАК СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации
| ПО ПринятоУплаты.ОтчетныйПериод = СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.КорректируемыйПериод
| И ПринятоУплаты.ФизЛицо = СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.ФизЛицо
| И (Корректировки.ДокументПачка = СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка)
| ГДЕ
| СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.ФизЛицо ЕСТЬ НЕ NULL
|
| СГРУППИРОВАТЬ ПО
| ПринятоУплаты.ОтчетныйПериод,
| ПринятоУплаты.ФизЛицо,
| ПринятоУплаты.КатегорияЗастрахованныхЛиц) КАК ОписаниеДокумента
| ЛЕВОЕ СОЕДИНЕНИЕ ВТДокументыКорректировки КАК Корректировки
| ПО ОписаниеДокумента.ОтчетныйПериод = Корректировки.ОтчетныйПериод
| И ОписаниеДокумента.КатегорияЗастрахованныхЛиц = Корректировки.КатегорияЗастрахованныхЛиц
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.СведенияОТрудовомСтажеИЗаработкеСЗВ4.РаботникиОрганизации КАК СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации
| ПО ОписаниеДокумента.ОтчетныйПериод = СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.КорректируемыйПериод
| И ОписаниеДокумента.ФизЛицо = СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.ФизЛицо
| И ОписаниеДокумента.ОтчетныйПериодКорректировки = СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка.ОтчетныйПериод
| И (Корректировки.ДокументПачка = СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.Ссылка)
|ГДЕ
| СведенияОТрудовомСтажеИЗаработкеСЗВ4РаботникиОрганизации.ФизЛицо ЕСТЬ НЕ NULL
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| ПринятоУплаты.ФизЛицо,
| ПринятоУплаты.КатегорияЗастрахованныхЛиц,
| СУММА(ЕСТЬNULL(КорректировкиПринятыеПФР.УплаченоНакопительная, ПринятоУплаты.УплаченоНакопительная)) КАК УплаченоНакопительная,
| СУММА(ЕСТЬNULL(КорректировкиПринятыеПФР.УплаченоСтраховая, ПринятоУплаты.УплаченоСтраховая)) КАК УплаченоСтраховая,
| СУММА(ЕСТЬNULL(КорректировкиПринятыеПФР.НачисленоНакопительная, ПринятоУплаты.НачисленоНакопительная)) КАК НачисленоНакопительная,
| СУММА(ЕСТЬNULL(КорректировкиПринятыеПФР.НачисленоСтраховая, ПринятоУплаты.НачисленоСтраховая)) КАК НачисленоСтраховая
|ПОМЕСТИТЬ ВТУплатыПринятыеПФР
|ИЗ
| ВТПринятоУплаты КАК ПринятоУплаты
| ЛЕВОЕ СОЕДИНЕНИЕ ВТКорректировкиПринятыеПФР КАК КорректировкиПринятыеПФР
| ПО ПринятоУплаты.ФизЛицо = КорректировкиПринятыеПФР.ФизЛицо
| И ПринятоУплаты.ОтчетныйПериод = КорректировкиПринятыеПФР.ОтчетныйПериод
| И ПринятоУплаты.КатегорияЗастрахованныхЛиц = КорректировкиПринятыеПФР.КатегорияЗастрахованныхЛиц
|
|СГРУППИРОВАТЬ ПО
| ПринятоУплаты.ФизЛицо,
| ПринятоУплаты.КатегорияЗастрахованныхЛиц
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| УплатыПринятыеПФР.ФизЛицо
|ПОМЕСТИТЬ ВТФизлицаСПереплатой
|ИЗ
| ВТУплатыПринятыеПФР КАК УплатыПринятыеПФР
|
|СГРУППИРОВАТЬ ПО
| УплатыПринятыеПФР.ФизЛицо
|
|ИМЕЮЩИЕ
| (СУММА(УплатыПринятыеПФР.НачисленоНакопительная) < СУММА(УплатыПринятыеПФР.УплаченоНакопительная)
| ИЛИ СУММА(УплатыПринятыеПФР.НачисленоСтраховая) < СУММА(УплатыПринятыеПФР.УплаченоСтраховая))
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| УплатыПринятыеПФР.ФизЛицо,
| УплатыПринятыеПФР.КатегорияЗастрахованныхЛиц,
| УплатыПринятыеПФР.НачисленоНакопительная - УплатыПринятыеПФР.УплаченоНакопительная КАК Накопительная,
| УплатыПринятыеПФР.НачисленоСтраховая - УплатыПринятыеПФР.УплаченоСтраховая КАК Страховая
|ПОМЕСТИТЬ ВТНедоуплаченоЗаПрошлыеПериоды
|ИЗ
| ВТУплатыПринятыеПФР КАК УплатыПринятыеПФР
|ГДЕ
| (НЕ УплатыПринятыеПФР.ФизЛицо В
| (ВЫБРАТЬ
| ФизЛица.ФизЛицо
| ИЗ
| ВТФизлицаСПереплатой КАК ФизЛица))
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| ЕСТЬNULL(ПрошлыеПериоды.Накопительная, 0) КАК Накопительная,
| ЕСТЬNULL(ПрошлыеПериоды.Страховая, 0) КАК Страховая,
| ЕСТЬNULL(ВсегоНачислено.ПФРСтраховаяПриход, 0) КАК ПФРСтраховаяПриход,
| ЕСТЬNULL(ВсегоНачислено.ПФРНакопительнаяПриход, 0) КАК ПФРНакопительнаяПриход,
| ЕСТЬNULL(ВсегоУплачено.ПФРСтраховаяРасход, 0) КАК ПФРСтраховаяРасход,
| ЕСТЬNULL(ВсегоУплачено.ПФРНакопительнаяРасход, 0) КАК ПФРНакопительнаяРасход,
| ВЫБОР
| КОГДА ЕСТЬNULL(ВсегоНачислено.ПФРСтраховаяПриход, 0) = 0
| ТОГДА 0
| КОГДА ЕСТЬNULL(ПрошлыеПериоды.Страховая, 0) > ЕСТЬNULL(ВсегоУплачено.ПФРСтраховаяРасход, 0)
| ТОГДА 0
| КОГДА ЕСТЬNULL(ВсегоУплачено.ПФРСтраховаяРасход, 0) - ЕСТЬNULL(ПрошлыеПериоды.Страховая, 0) > ЕСТЬNULL(ВсегоНачислено.ПФРСтраховаяПриход, 0)
| ТОГДА 100000
| ИНАЧЕ ВЫРАЗИТЬ((ЕСТЬNULL(ВсегоУплачено.ПФРСтраховаяРасход, 0) - ЕСТЬNULL(ПрошлыеПериоды.Страховая, 0)) * 100000 / (ВЫРАЗИТЬ(ЕСТЬNULL(ВсегоНачислено.ПФРСтраховаяПриход, 0) КАК ЧИСЛО(25, 6))) КАК ЧИСЛО(20, 6))
| КОНЕЦ КАК КоэффициентТекущегоПериодаСтраховая,
| ВЫБОР
| КОГДА ЕСТЬNULL(ВсегоНачислено.ПФРНакопительнаяПриход, 0) = 0
| ТОГДА 0
| КОГДА ЕСТЬNULL(ПрошлыеПериоды.Накопительная, 0) > ЕСТЬNULL(ВсегоУплачено.ПФРНакопительнаяРасход, 0)
| ТОГДА 0
| КОГДА ЕСТЬNULL(ВсегоУплачено.ПФРНакопительнаяРасход, 0) - ЕСТЬNULL(ПрошлыеПериоды.Накопительная, 0) > ЕСТЬNULL(ВсегоНачислено.ПФРНакопительнаяПриход, 0)
| ТОГДА 100000
| ИНАЧЕ ВЫРАЗИТЬ((ЕСТЬNULL(ВсегоУплачено.ПФРНакопительнаяРасход, 0) - ЕСТЬNULL(ПрошлыеПериоды.Накопительная, 0)) * 100000 / (ВЫРАЗИТЬ(ЕСТЬNULL(ВсегоНачислено.ПФРНакопительнаяПриход, 0) КАК ЧИСЛО(25, 6))) КАК ЧИСЛО(20, 6))
| КОНЕЦ КАК КоэффициентТекущегоПериодаНакопительная,
| ВЫБОР
| КОГДА ЕСТЬNULL(ПрошлыеПериоды.Страховая, 0) = 0
| ТОГДА 0
| КОГДА ЕСТЬNULL(ПрошлыеПериоды.Страховая, 0) < ЕСТЬNULL(ВсегоУплачено.ПФРСтраховаяРасход, 0)
| ТОГДА 100000
| ИНАЧЕ ВЫРАЗИТЬ(ЕСТЬNULL(ВсегоУплачено.ПФРСтраховаяРасход, 0) * 100000 / (ВЫРАЗИТЬ(ЕСТЬNULL(ПрошлыеПериоды.Страховая, 0) КАК ЧИСЛО(25, 6))) КАК ЧИСЛО(20, 6))
| КОНЕЦ КАК КоэффициентПрошлыхПериодовСтраховая,
| ВЫБОР
| КОГДА ЕСТЬNULL(ПрошлыеПериоды.Накопительная, 0) = 0
| ТОГДА 0
| КОГДА ЕСТЬNULL(ПрошлыеПериоды.Накопительная, 0) < ЕСТЬNULL(ВсегоУплачено.ПФРНакопительнаяРасход, 0)
| ТОГДА 100000
| ИНАЧЕ ВЫРАЗИТЬ(ЕСТЬNULL(ВсегоУплачено.ПФРНакопительнаяРасход, 0) * 100000 / (ВЫРАЗИТЬ(ЕСТЬNULL(ПрошлыеПериоды.Накопительная, 0) КАК ЧИСЛО(25, 6))) КАК ЧИСЛО(20, 6))
| КОНЕЦ КАК КоэффициентПрошлыхПериодовНакопительная,
| ВЫБОР
| КОГДА ЕСТЬNULL(ПрошлыеПериоды.Страховая, 0) + ЕСТЬNULL(ВсегоНачислено.ПФРСтраховаяПриход, 0) > ЕСТЬNULL(ВсегоУплачено.ПФРСтраховаяРасход, 0)
| ТОГДА ЕСТЬNULL(ВсегоУплачено.ПФРСтраховаяРасход, 0)
| ИНАЧЕ ЕСТЬNULL(ПрошлыеПериоды.Страховая, 0) + ЕСТЬNULL(ВсегоНачислено.ПФРСтраховаяПриход, 0)
| КОНЕЦ КАК УчтеноУплатыСтраховая,
| ВЫБОР
| КОГДА ЕСТЬNULL(ПрошлыеПериоды.Накопительная, 0) + ЕСТЬNULL(ВсегоНачислено.ПФРНакопительнаяПриход, 0) > ЕСТЬNULL(ВсегоУплачено.ПФРНакопительнаяРасход, 0)
| ТОГДА ЕСТЬNULL(ВсегоУплачено.ПФРНакопительнаяРасход, 0)
| ИНАЧЕ ЕСТЬNULL(ПрошлыеПериоды.Накопительная, 0) + ЕСТЬNULL(ВсегоНачислено.ПФРНакопительнаяПриход, 0)
| КОНЕЦ КАК УчтеноУплатыНакопительная
|ПОМЕСТИТЬ ВТКоэффициентыУплаты
|ИЗ
| (ВЫБРАТЬ
| 1 КАК Поле) КАК СтрокаЗапроса
| ЛЕВОЕ СОЕДИНЕНИЕ ВТВсегоНачислено КАК ВсегоНачислено
| ПО (ИСТИНА)
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| СУММА(ВсегоУплачено.ПФРСтраховаяРасход) КАК ПФРСтраховаяРасход,
| СУММА(ВсегоУплачено.ПФРНакопительнаяРасход) КАК ПФРНакопительнаяРасход
| ИЗ
| ВТВсегоУплачено КАК ВсегоУплачено) КАК ВсегоУплачено
| ПО (ИСТИНА)
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| СУММА(НедоуплаченоЗаПрошлыеПериоды.Накопительная) КАК Накопительная,
| СУММА(НедоуплаченоЗаПрошлыеПериоды.Страховая) КАК Страховая
| ИЗ
| ВТНедоуплаченоЗаПрошлыеПериоды КАК НедоуплаченоЗаПрошлыеПериоды) КАК ПрошлыеПериоды
| ПО (ИСТИНА)
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| НедоуплаченоЗаПрошлыеПериоды.ФизЛицо КАК ФизЛицо,
| НедоуплаченоЗаПрошлыеПериоды.КатегорияЗастрахованныхЛиц КАК КатегорияЗастрахованныхЛиц,
| НедоуплаченоЗаПрошлыеПериоды.Накопительная * КоэффициентыУплаты.КоэффициентПрошлыхПериодовНакопительная / 100000 КАК УплаченоНакопительная,
| НедоуплаченоЗаПрошлыеПериоды.Страховая * КоэффициентыУплаты.КоэффициентПрошлыхПериодовСтраховая / 100000 КАК УплаченоСтраховая,
| 0 КАК НачисленоСтраховая,
| 0 КАК НачисленоНакопительная,
| ""Прошлые периоды"" КАК ВидСтроки
|ПОМЕСТИТЬ ВТРасчетСумм
|ИЗ
| ВТНедоуплаченоЗаПрошлыеПериоды КАК НедоуплаченоЗаПрошлыеПериоды
| ЛЕВОЕ СОЕДИНЕНИЕ ВТКоэффициентыУплаты КАК КоэффициентыУплаты
| ПО (ИСТИНА)
|ГДЕ
| (НедоуплаченоЗаПрошлыеПериоды.Накопительная <> 0
| ИЛИ НедоуплаченоЗаПрошлыеПериоды.Страховая <> 0)
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| НачисленоПоЗЛ.ФизЛицо,
| НачисленоПоЗЛ.КатегорияЗастрахованныхЛиц,
| НачисленоПоЗЛ.ПФРНакопительная * КоэффициентыУплаты.КоэффициентТекущегоПериодаНакопительная / 100000,
| НачисленоПоЗЛ.ПФРСтраховая * КоэффициентыУплаты.КоэффициентТекущегоПериодаСтраховая / 100000,
| НачисленоПоЗЛ.ПФРСтраховая,
| НачисленоПоЗЛ.ПФРНакопительная,
| ""Текущий период""
|ИЗ
| ВТНачисленоЗаОтчетныйПериодФормирования КАК НачисленоПоЗЛ
| ЛЕВОЕ СОЕДИНЕНИЕ ВТКоэффициентыУплаты КАК КоэффициентыУплаты
| ПО (ИСТИНА)
|ГДЕ
| (НачисленоПоЗЛ.ПФРНакопительная <> 0
| ИЛИ НачисленоПоЗЛ.ПФРСтраховая <> 0)
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| Уплачено.УчтеноУплатыСтраховая КАК Страховая,
| Уплачено.УчтеноУплатыНакопительная КАК Накопительная
|ИЗ
| ВТКоэффициентыУплаты КАК Уплачено
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| ЕСТЬNULL(СУММА(ВЫРАЗИТЬ(РасчетныеДанные.УплаченоСтраховая КАК ЧИСЛО(15, 2))),0) КАК Страховая,
| ЕСТЬNULL(СУММА(ВЫРАЗИТЬ(РасчетныеДанные.УплаченоНакопительная КАК ЧИСЛО(15, 2))),0) КАК Накопительная
|ИЗ
| ВТРасчетСумм КАК РасчетныеДанные
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
| РасчетныеДанные.ФизЛицо КАК ФизЛицо,
| РасчетныеДанные.КатегорияЗастрахованныхЛиц КАК КатегорияЗастрахованныхЛиц,
| СУММА(РасчетныеДанные.УплаченоНакопительная) КАК УплаченоНакопительная,
| СУММА(РасчетныеДанные.УплаченоСтраховая) КАК УплаченоСтраховая,
| СУММА(РасчетныеДанные.НачисленоСтраховая) КАК НачисленоСтраховая,
| СУММА(РасчетныеДанные.НачисленоНакопительная) КАК НачисленоНакопительная
|ИЗ
| ВТРасчетСумм КАК РасчетныеДанные
|
|СГРУППИРОВАТЬ ПО
| РасчетныеДанные.ФизЛицо,
| РасчетныеДанные.КатегорияЗастрахованныхЛиц
|
|ИМЕЮЩИЕ
| (СУММА(РасчетныеДанные.УплаченоНакопительная) <> 0
| ИЛИ СУММА(РасчетныеДанные.УплаченоСтраховая) <> 0
| ИЛИ СУММА(РасчетныеДанные.НачисленоСтраховая) <> 0
| ИЛИ СУММА(РасчетныеДанные.НачисленоНакопительная) <> 0)
|
|УПОРЯДОЧИТЬ ПО
| ФизЛицо,
| КатегорияЗастрахованныхЛиц";
197. Поручик 4670 21.10.11 11:53 Сейчас в теме
(194) Это ппц какой-то. Вложением не мог сделать или ума не хватило?
196. Drizer2000 14 21.10.11 11:24 Сейчас в теме
Все бы хорошо, только где функция, чтобы получить код запроса для вставки его в конфигуратор?
Может не вижу, просто привык это делать в консоли запросов, которым пользуется Павел Чистов, там эта возможность есть.Очень полезная.
http://chistov.spb.ru/publ/2-1-0-9
198. tezin 574 21.10.11 12:25 Сейчас в теме
(196) в правом нижнем углу в тексте запроса 2 кнопки
нижняя
199. Drizer2000 14 21.10.11 12:39 Сейчас в теме
(198)Спасибо, не увидел, думал там только скопировать в буфер обмена. Ну если не лень, можете добавить и так как сделано у Чистова,хотя и так хорошо.
200. Drizer2000 14 21.10.11 14:58 Сейчас в теме
Интересно, а можно ли как-то сделать так, чтобы можно было в запрос вставлять свои функции.
201. tezin 574 21.10.11 16:01 Сейчас в теме
Оставьте свое сообщение