Новый учебный курс (2023)

Расширенный курс по разработке и оптимизации запросов в 1С

Колоссальный курс про построение, анализ и оптимизацию запросов в 1Сболее 50 учебных часов!

Самое подробное рассмотрение нюансов и деталей – и для начинающих, и для программистов с опытом в несколько лет.

Невозможно представить разработку в 1С, ее доработку или даже просто ее эксплуатацию без использования запросов.

Запросы – абсолютный musthave для программистов и внедренцев. 

И важно разделять базовые навыки (можно изучить за неделю) и настоящее глубинное погружение.

В этом курсе – фокус именно на детали и нюансы.

Это не только курс, но и справочное пособие, которое всегда будет под рукой.

Предыдущую версию курса прошло 11 000+ человек.

Идея и цель курса

Представьте 1С-ника, который умеет работать с запросами и вообще работает с 1С несколько лет. Читал Радченко, сдал Специалиста по платформе, все ровно.

Потом он выходит на новую работу или новый проект – и обнаруживает километровые запросы, в которых просто умирает. Это за пределами его готовности. Куча вложенных запросов, кросс-таблицы, характеристики, вложенные группировки… 

Прийти сказать: не, я так не умею? – не вариант. Экспериментировать пару недель по статьям в интернете – тоже.

Две цели этого курса:
  1. Подготовить Вас ко всем сложным задачам, связанным с запросами и их ускорением.
  2. Дать Вам справочное пособие, чтобы найти нужный ответ за 15-20 минут.

Что Вы получаете (ценность)

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

Курс соответствует семи дням плотного очного обучения – и это только лекции.

Так детально запросы никто и никогда не преподавал.

Что Вы изучите на курсе

  • Механику хранения данных в 1С и модели доступа к данным.
  • Полный синтаксис текста запросов – поля, операторы, функции, выражения, группировка и сортировка, итоги и т.д.
  • Работу с несколькими источниками / таблицами – соединения, объединения, вложенные запросы.
  • Временные таблицы, пакетные запросы.
  • Виртуальные таблицы – для регистров сведений, накоплений, расчетов и бухгалтерии
  • Методы и приемы написания запросов и типовые приемы
  • Методы оптимизации и ускорения запросов
  • Примеры из типовых конфигураций и кейсы

Содержание курса

Модуль 1. Хранение данных в информационных базах 1С:Предприятие 8. Принципы работы запросов

Принципы хранения данных

  • Основные принципы хранения данных в базах 1С:Предприятие 8
  • Варианты работы, используемые в видеоуроках
  • Организация хранения ссылочных данных
  • Организация связи по Родителю. Иерархические справочники
  • Организация связи по Владельцу. Подчиненные справочники
  • Организация связи между таблицами при помощи ссылочных полей
  • Организация хранения данных в табличных частях
  • Организация связи разных объектов метаданных при помощи ссылочных полей
  • Организация хранения данных, не имеющих поля Ссылка
  • Организация хранения данных периодического независимого регистра сведений
  • Таблицы объектов метаданных. Получение структуры хранения данных в базе

Модели доступа к данным

  • Объектная модель доступа к данным
  • Использование объектной модели доступа к данных в случае использования ограничений доступа на уровне записей (RLS)
  • Табличная модель доступа к данным
  • Использование запросов для получения данных из базы
  • Реализация возможности работы платформы с различными СУБД. SDBL
  • Использование реальных таблиц в запросах
  • Использование виртуальных таблиц в запросах
  • Извлечение данных из сторонних реляционных БД при помощи объекта метаданных Внешние источники данных

Модуль 2. Синтаксис текста запроса

Язык запросов

  • Назначение языка запросов
  • Основные разделы запроса
  • Устройство обязательного раздела в тексте запроса. Основные ключевые слова
  • Назначение консоли запросов. Отладка запросов на реальных данных
  • Получение плана запроса в консоли запросов

Описание запроса

  • Примеры простых запросов. Ключевое слово ВЫБРАТЬ
  • Использование конструктора запросов для упрощения составления запросов
  • Использование комментариев в тексте запроса
  • Ключевое слово ПЕРВЫЕ. Ограничение количества выбираемых записей
  • Ключевое слово РАЗЛИЧНЫЕ. Получение только уникальных записей
  • Ключевое слово РАЗРЕШЕННЫЕ. Работа с запросами при использовании ограничений доступа на уровне записей (RLS)

Использование вложенных полей

  • Использование вложенны х полей в запросе. Разыменование ссылочных полей
  • Использование вложенных таблиц в качестве выходных полей запроса
  • Использование в запросах табличных частей справочников и документов

Представление ссылочных полей

  • Виртуальное поле Представление для объектных таблиц
  • Использование функций ПРЕДСТАВЛЕНИЕ и ПРЕДСТАВЛЕНИЕССЫЛКИ в запросах
  • Отличие поля Представление от функции ПРЕДСТАВЛЕНИЕ
  • Переопределение представления с помощью программного кода

Операторы и функции языка запросов

  • Использование оператора ВЫБОР для получения одного из возможных значений в зависимости от условий. Два варианта синтаксиса оператора ВЫБОР
  • Значение типа NULL, обозначающее отсутствие значения поля в выборке. Примеры, когда в запросе может быть получен NULL
  • Значение Неопределено. Незаполненное значение для полей составного типа
  • Использование функций для работы с датами в языке запросов. ДАТАВРЕМЯ, НАЧАЛОПЕРИОДА, РАЗНОСТЬДАТ, ДОБАВИТЬКДАТЕ
  • Использование функций для работы с типами данных в языке запросов. ТИП, ТИПЗНАЧЕНИЯ, ССЫЛКА, ВЫРАЗИТЬ
  • Использование функций для работы со строками данных в языке запросов. Конкатенация строк, строки неограниченной длины, ПОДСТРОКА, ПОДОБНО, СПЕЦСИМВОЛ. Новые функции платформы 8.3.20 – ДЛИНАСТРОКИ, СТРЗАМЕНИТЬ

Логические выражения

  • Использование логических выражений в тексте запросов. Операции сравнения значений выражений, оператор В, ЕСТЬ NULL
  • Условия в тесте запросов. Использование преждложения ГДЕ
  • Использование параметров в тексте запросов. Установка значений параметров в консоли запросов
  • Проверка совпадения значений. Примеры использования оператора В
  • Проверка принадлежности по иерархии. Оператор В ИЕРАРХИИ
  • Обращение в запросе к предопределенным данным и значениям системных перечислений. Функция ЗНАЧЕНИЕ

Сортировка

  • Сортировка результата запроса. Предложение УПОРЯДОЧИТЬ ПО
  • Упорядочивание по ссылочным полям. Автоупорядочивание
  • Ограничение количества записей в результате запроса. Использование ключевого слова ПЕРВЫЕ совместно с сортировкой

Группировка и агрегатные функции

  • Группировка результатов запроса. Предложение СГРУППИРОВАТЬ ПО
  • Агрегатные функции. СУММА, МИНИМУМ, МАКСИМУМ, СРЕДНЕЕ, КОЛИЧЕСТВО
  • Подсчет количества строк в результате запроса. КОЛИЧЕСТВО(*)
  • Особенность предложения СГРУППИРОВАТЬ ПО в запросе к пустой таблице
  • Использование конструкции ИМЕЮЩИЕ. Отборы по значениям полей, к которым применена агрегатная функция
  • Примеры использования конструкции ИМЕЮЩИЕ в запросах
  • Выражение СГРУППИРОВАТЬ ПО ГРУППИРУЮЩИМ НАБОРАМ. Объединение нескольких предложений СГРУППИРОВАТЬ ПО в одну конструкцию

Использование итогов в запросах

  • Назначение итогов в запросах
  • Отличие итогов от группировки. Итоговые и детальные записи
  • Примеры использования предложения ИТОГИ в тексте запросов
  • Особенности расчета итогов. Ключевые слова ИЕРАРХИЯ, ТОЛЬКО ИЕРАРХИЯ. Использование итогов совместно с группировкой

Упрощение разработки запросов

  • Использование различных консолей запросов. Нюансы, обходы ошибок. Особенности конструктора запроса в EDT
  • Получение уникального идентификатора ссылки в запросе. Новшество платформы 8.3.22. Функция УНИКАЛЬНЫЙИДЕНТИФИКАТОР
  • Сравнение языка запросов 1С:Предприятие 8 с SQL

Модуль 3. Использование нескольких таблиц в запросах

Соединение таблиц

  • Соединение таблиц. Сопоставление записей таблиц при их соединении в запросе
  • Декартово произведение. Безусловное «сцепление» таблиц
  • Виды соединений таблиц. Внутреннее, левое, правое, полное соединения
  • Внутреннее соединение
  • Левое (внешнее) соединение
  • Правое (внешнее) соединение
  • Полное (внешнее) соединение
  • Получение значения NULL при соединении таблиц. Особенности значения NULL
  • «Битые» ссылки. Обращение к реквизитам битой ссылки. Поиск битых ссылок
  • Отличие значений Неопределено и NULL
  • Особенности агрегатной функция КОЛИЧЕСТВО при наличии в данных значений NULL
  • Разыменование ссылочных полей в запросе. Обращение к полям через точку
  • Использование нескольких соединений в запросах. Соединение нескольких таблиц в запросах
  • Особенность левого соединения – использование условий на поля правой таблицы
  • Избавление от неоднозначных полей в запросе
  • Автоматическая подстановка соединения в конструкторе запроса
  • Соединение двух таблиц, не имеющих общих полей
  • Упорядочивание по иерархии справочников, планов счетов, планов видов характеристик
  • Логический порядок обработки инструкции в тексте запроса

Объединение запросов

  • Объединение запросов. Отличие объединения от соединения
  • Объединение запросов при помощи конструктора
  • Особенности объединения запросов. Ключевые слова ИТОГИ, УПОРЯДОЧИТЬ, РАЗРЕШЕННЫЕ для объединения запросов.
  • Разница между ОБЪЕДИНИТЬ ВСЕ и ОБЪЕДИНИТЬ. Флаг «Без дубликатов» в конструкторе запросов
  • Ключевое слово ПУСТАЯТАБЛИЦА
  • Использование итогов совместно с группировкой при наличии объединения запросов
  • Примеры, демонстрирующие отличие соединения от объединения

Вложенные запросы

  • Использование одного запроса внутри другого запроса. Вложенные запросы (подзапросы)
  • Примеры использования вложенных запросов. Создание вложенных запросов при помощи конструктора
  • Использование оператора В с вложенными запросами
  • Упорядочивание и итоги во вложенных запросах
  • Обращение из вложенного запроса к полям родительского запроса. Коррелированные запросы

Модуль 4. Использование запросов во встроенном языке

Объекты встроенного языка для работы с запросами

  • Объекты встроенного языка для работы с запросами в программном коде
  • Объекты встроенного языка Запрос
  • Передача параметров в запрос. Метод УстановитьПараметр объекта Запрос
  • Результат выполнения запроса. Метод Выполнить объекта Запрос
  • Выборка из результата запроса. Метод Выбрать объекта РезультатЗапроса
  • Метод Следующий. Получение следующей записи в результате запроса
  • Метод СледующийПоЗначениюПоля. Получение следующей записи с отличающимся значением поля
  • Совместное использование методов СледующийПоЗначениюПоля и Следующий. Использование вложенных циклов для работы с одной и той же выборкой
  • Методы НайтиСледующий и Сбросить. Поиск записи по условию. Сброс выборки в изначальное положение

Обработка итоговых и детальных записей

  • Итоговые и детальные записи. Организация различных вариантов обработки выборки
  • Типы записей в выборке из результата запроса. Метод ТипЗаписи
  • Обработка итоговых записей. Обход результата запроса по группировкам
  • Обход результата запроса по группировкам с иерархией
  • Обход записей вложенной таблицы
  • Конструктор запроса с обработкой результата. Автоматическое формирование программного кода на основании текста запроса
  • Вывод результата запроса в табличный документ при помощи конструктора запроса с обработкой результата
  • Вывод результата запроса в диаграмму при помощи конструктора запроса с обработкой результата
  • Построение кросс-таблицы. Особенность метода Выбрать
  • Использование дополнительных периодов в итогах по дате. Дополнение дат
  • Выгрузка результата запроса в таблицу и дерево значений
  • Приемы отладки запросов. Отладка запросов при помощи выгрузки результата в таблицу значений

Модуль 5. Использование временных таблиц и пакетных запросов

Временные таблицы

  • Назначение временных таблиц
  • Создание временных таблиц. Ключевое слово ПОМЕСТИТЬ
  • Объект встроенного языка Менеджер временных таблиц
  • Создание запроса к временной таблице при помощи конструктора запросов
  • Управление временем жизни временных таблиц. Ключевое слово УНИЧТОЖИТЬ
  • Особенности работы платформы 1С:Предприятие с временными таблицами
  • Назначение индексов таблиц в СУБД. Базовые принципы использования индексов
  • Рекомендации по индексированию временных таблиц
  • Передача таблицы значений в запрос
  • Автонумерация строк во временной таблице. Функция АВТОНОМЕРЗАПИСИ
  • Просмотр содержимого временных таблиц в отладчике
  • Закрытие менеджера временных таблиц

Пакет запросов

  • Использование пакета запросов
  • Создание пакета запросов при помощи конструктора
  • Метод Выполнить. Последовательное выполнение всех запросов пакета
  • Метод ВыполнитьПакет. Последовательное выполнение всех запросов пакета
  • Метод ВыполнитьПакетСПромежуточнымиДанными. Последовательное выполнение всех запросов пакета

Модуль 6. Использование виртуальных таблиц в запросах

Регистры сведений

  • Устройство регистра сведений
  • Получение срезов
  • Запросы, формируемые платформой, при работе с регистрами сведений
    • Непериодический регистр
    • Периодический регистр (без таблиц итогов)
    • Периодический регистр (с таблицами итогов)
    • Срез последних для регистра сведений с периодичностью По позиции регистратора
    • Понимание работы среза
    • Отбор на ресурс регистра сведений в параметрах виртуальной таблицы и в секции ГДЕ
    • Срез последних своими руками
    • Срез последних на каждую дату

Регистры накопления

  • Параметры виртуальной таблицы Остатки
  • Параметры виртуальной таблицы Обороты
  • Параметры виртуальной таблицы ОстаткиИОбороты
  • Расчет итогов по полям остатков

Регистры бухгалтерии

  • Планы счетов
  • Структура регистра бухгалтерии
  • Виртуальная таблица ДвиженияССубконто
  • Параметры виртуальной таблицы Остатки
  • Параметры виртуальной таблицы Обороты
  • Отличие таблиц ОборотыДтКт и Обороты
  • Виртуальная таблица ОстаткиИОбороты

Регистры расчетов

  • Планы видов расчета
  • Регистры расчета
  • Получение фактического периода действий
  • Как рассчитать зарплату окладом от отработанного времени
  • Как рассчитать премию процентом от оклада
  • Перерасчеты

Модуль 7. Приемы написания запросов

  • Получение нарастающего итога
  • Генерация последовательности чисел и дат запросом
  • Нумерация строк в запросе
  • Распределение оплат по отгрузкам. Алгоритм FIFO запросом
  • Остатки товаров на каждый день
  • Количество дней наличия товара на складе при помощи запроса
  • Срез последних на каждую дату
  • Представление среза последних при помощи запроса
  • Найти последнее поступление по каждому товару из ТЧ документа
  • Аналог оператора EXISTS из SQL
  • Получить первую попавшуюся запись таблицы при соединении
  • Расчет накопительных скидок
  • Использование необязательных условий в тексте запроса
  • Как обработкой в базе УТ получить данные из БП, подключившись к ней через COM
  • Выбор значений из периодического регистра сведений за период при помощи запроса
  • Работа с дополнительными реквизитами и свойствами. Использование Характеристик
  • Подбор товаров из ячеек хранения
  • Как в данных о продажах вывести контрагентов, купивших этот товар
  • Как получить розничную цену на дату каждой продажи товара
  • Как получить цены из предпоследнего документа поступления товаров

Модуль 8. Рекомендации по написанию оптимальных запросов

Подзапросы

  • Оценка необходимости оптимизации
  • Соединение с подзапросами/виртуальными таблицами
  • Подзапрос в условии соединения
  • Подзапросы в условиях и вложенные подзапросы

Временные таблицы

  • Использование временных таблиц
  • Индексация временных таблиц
  • Быстрое создание временных таблиц из подзапроса

Пример анализа запроса

  • Анализ запроса с контекстом
  • Анализ запроса без контекста

Введение в индексы и ускорение индексирования

  • Поиск без индекса в запросе
  • Пример создания индекса
  • Пример ускорения реструктуризации (создания индекса)
  • Несоответствие индексов и условий
  • Особенности индексации регистров
  • Индексы в разделенной базе
  • Поиск без индекса методом Прочитать

Условие ИЛИ и производительность

  • Условие ИЛИ для полей одной таблицы
  • Условие ИЛИ для полей разных таблиц

Условия, замедляющие запрос

  • Вычисления и функциии в условии запроса
  • Условие ВЫБОР КОГДА
  • Поиск по части слова (условие ПОДОБНО, НАЧИНАЕТСЯ С)
  • Сложные условия

Грамотное использование условия НЕ, списков и сортировки

  • Условие НЕ В и его аналог
  • Условие на вхождение полей в разные списки
  • Вхождение в большой список
  • Влияние сортировки на производительность

Работа с составным типом данных

  • Разыменование полей составного типа
  • Оптимизация через регистр данных документов
  • Условие с разыменованием полей
  • Условие Поле В. МассивИзРазныхТипов
  • Ограничение на реквизиты поля составного типа в СКД
  • Смешивание простых и ссылочных типов
  • Определяемые типы и общие рекомендации

Поиск по Ctrl+F и работа с динамическими списками

  • Анализ медленного запроса с CTRL+F
  • Ускорение поиска в динамических cписках по Ctrl+F
  • Рекомендации по работе с динамическим списком

Виртуальные таблицы

  • Фильтрация виртуальных таблиц
  • Ускорение срезов регистров сведений

Другие причины замедления запросов

  • Запросы в цикле
  • Большой объем выборки данных
  • Запросы с RLS и возможные обходы
  • Сложные условия и запросы

Внешние причины замедления запросов

  • Ожидание на блокировке
  • Ожидание оборудования

Особенности выполнения и анализа запросов

  • Особенности выполнения пакетных запросов
  • Что не влияет на производительность запроса
  • Методика анализа больших запросов

Сводная информация по запросам

  • Алгоритм анализа и список причин медленных запросов
  • Оптимизация в обход проблемы
  • Как узнать, кто выполняет долгий запрос
  • Рекомендации по написанию запросов

Модуль 9. Примеры из типовых конфигураций и из практики

Динамика курсов валют

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

Необходимо вывести таблицу изменений курса валюты:

  • валюта, дата, курс
  • приращение (текущий курс минус предыдущий курс)
Динамика курсов валют – список дат, когда происходили изменения

Необходимо вывести таблицу изменений курса валюты:

  • валюта с
  • дата с
  • дата по
  • курс
  • приращение (текущий курс минус предыдущий курс)
  • количество дней с одинаковой датой.

Необходимо оставить только строки, в которых менялись значения курса.

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

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

Требуется учитывать график работы предприятия.

Руководители компаний должников

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

«Карантинный склад»

В компании используется склад карантина, куда сначала поступает товар – и передается на другие склады только после проверки.

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

Потерявшиеся клиенты

Вывести топ список клиентов, которые:

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

Необходимо получить список клиентов, приобретавших товар А, но еще не купивших товар В.

Статистика документов по ИБ

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

Отчет по доходам и расходам

В отчете необходимо выводить помесячно три показателя (доход без НДС, расход, прибыль/убыток), получаемые из проводок:

Показатель: Обороты:
Доход без НДС =  Кт 90.01 + Кт 91.01- Дт 90.03
Расход =  Дт 90.02 + Дт 91.02 + Дт 90.04 +
Дт 90.05 + Да 90.07 + Дт 90.08
Прибыль (убыток) =  Доход – Расход
Отчет по продажам

Распространенный отчет, который требуют руководители.

Продажи по товарам можно получить по оборотам счета 90.01, т.к. на этом счете существует оборотное субконто Номенклатура.

Продажи по контрагентам можно получить по оборотам:

  • Дт 62 (есть субконто Контрагенты) – Кт 90.01 (Реализация товаров и услуг).
  • Дт 50 (нет субконто Контрагенты – пусть будет параметр с типом контрагент Розничный покупатель) – Кт 90.01 (Отчет о розничных продажах).
Остатки на каждый день

Практическая задача – получение данных о динамике изменения остатков товаров по дням, месяцам.

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

Взаиморасчеты по направлениям деятельности

Взаиморасчеты с покупателями ведутся в разрезе направлений деятельности. В рамках одного направления – несколько контрагентов.

В документе Приход денег указывается контрагент и сумма оплаты. В ТЧ указываются оплаченные направления деятельности.

Направления оплачиваются из ТЧ в зависимости от величины долга. Если сумма оплат превышает сумму долгов, то фиксируем аванс.

В Расходной накладной в шапке указывается направление. Если есть аванс по этому контрагенту, его надо погасить.

Расчет премии сотрудникам

Премия рассчитывается пропорционально продажам сотрудника с начала календарного года. Существует шкала премий:

Сумма продаж с начала года: Процент премии:
Менее 100 000 5
100 000 – 500 000
10
Более 500 000 15
Списание по партиям

Учет товаров ведется в разрезе партий (документ Приходная накладная) только по количеству.

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

Сначала должен списываться товар из указанных в табличной части партий. Если товара из указанной партии нет на остатке, то необходимо списать его по методу ФИФО по датам партий.

Примеры уроков из курса

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

В видео объясняется работа с результатом запроса и показывается его обход с различными параметрами из программного кода.

Тайминг ключевых моментов видео:

  • 00:00 – Постановка задачи
  • 02:20 – Пример обхода результата запроса по группировкам
  • 07:03 – Разбор кода по обходу результата запроса по группировке в конфигураторе
  • 10:00 – Указание псевдонима для группировочного поля в запросе
  • 13:18 – Пример обхода итоговых и детальных записей в результате запроса
  • 20:00 – Разбор кода по обходу по группировкам и детальным записям в конфигураторе

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

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

Тайминг ключевых моментов видео:

  • 00:00 – Постановка задачи
  • 03:15 – Пример передачи таблицы значений в запрос
  • 09:10 – Передача результата запроса
  • 11:18 – Передача табличной части
  • 13:35 – Выгрузка табличной части
  • 15:14 – Ограничение №1: таблица значений без временной таблицы
  • 17:40 – Отбор по таблице значений
  • 23:00 – Ограничение №2: типизация колонок таблицы значений
  • 24:25 – Ограничение №3: отсутствие соединений
  • 25:55 – Ограничение №4: отсутствие объединений
  • 26:55 – Ограничение №5: разыменование полей
  • 28:10 – Ограничение №6: ключевые слова
  • 31:00 – Демонстрация передачи таблицы значений на примере типовой конфигурации 1С:Управление Торговлей
  • 34:04 – Подведение итогов

Автор курса: Василий Ханевич

  • Автор 7 курсов по платформе, программированию и администрированию 1С
  • 6 сертификатов 1С:Специалист + 1С:Эксперт
  • Обучено более 10 400 слушателей
  • Продолжает вести реальные проекты в мясопереработке, производстве электроники, мебели, металлообработке, пищевке, оптовых и розничных торговых сетях

Автор курса: Владимир Крючков

  • Кандидат технических наук
  • Архитектор, тимлид, профессиональный разработчик
  • Докладчик на конференциях infostart, testconf, SQA Days и др.
  • Участник open source сообщества по разработке на языке программирования 1С, тимлид в проектах.
    Фреймворк «Мониторинг производительности» и Фреймворк «Тестирование 3.0».
  • Обладатель премии INFOSTART AWARDS 2023 за вклад в области «Администрирование СУБД. HighLoad оптимизация».

Автор курса: Андрей Бурмистров

  • Более 11 лет в сфере разработки на платформе 1С:Предприятие 8
  • Работал экспертом по технологическим вопросам на проекте ЦКТП в компании 1С в 2011 — 2012 гг. http://v8.1c.ru/expert/cts/cts.htm
  • Работал над оптимизацией и стабильностью 1cfresh.com на заре его появления
  • Автор курса «Ускорение и оптимизация 1С. Базовый курс»
  • Разработал авторский инструмент для выявления и анализа проблем производительности в системах 1С
  • Докладчик конференций Инфостарт. Лауреат премии Infostart Awards 2021

Автор курса: Александр Денисов

  • Специалист по производительности 1С + MS SQL Server с опытом более 8 лет.
  • Постоянный спикер на конференции Infostart в секции «Highload и оптимизация производительности»

Автор курса: Артем Кузнецов

  • Опыт в 1С – 11 лет
  • Разработчик, тимлид
  • Занимался интеграциями с Онлайн-ККМ и ГИС Меркурий до того, как это стало мейнстримом : )
  • Докладчик конференций Инфостарт. В 2021 г. доклад Артема признан одним из лучших.

Входные требования

Для того, чтобы пройти этот курс, Вам понадобятся:

  • Общее представление о разработке в 1С, знание основных объектов метаданных, синтаксических конструкций языка.
  • Платформа 1С:Предприятие (видеоуроки курса записаны на версиях 8.3.21 и 8.3.22).
  • В части уроков используется клиент-серверный вариант работы. Для воспроизведения действий из этих уроков нужен работающий сервер 1С, СУБД. В видео используется MS SQL Server 2017.

Стоимость курса

Регулярная стоимость курса:

17 400 рублей

Специальная цена до 21 декабря:


14 900 рублей

Загружается страница

Возможно у Вас установлен блокировщик контента, поэтому форма заказа не загрузилась

— Отключите на время блокировку контента в Вашем браузере и перегрузите страницу, либо добавьте сайты: курсы-по-1с.рф, fs.курсы-по-1с.рф в список доверенных сайтов (whitelist)

— Если Вы не можете отключить блокировку или действует корпоративная блокировка контента, то Вы можете оформить заказ, заполнив форму:

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



— Другие способы оформления заказа:

  • Связаться с оператором в чате и оформить заказ
  • Написать нам на е-мейл support@kursy-po-1c.ru с темой письма «Оформить заказ»

Если никакие из этих способов не подходят - просто позвоните нам: 8-800-100-0613
Дополнительная информация
Гарантия

Мы ведем обучение с 2008 года, уверены в качестве наших курсов и даем на этот курс нашу стандартную 60-дневную гарантию.

Это значит, что если Вы начали заниматься по нашему курсу, но вдруг передумали (или, скажем, не имеете возможности), то у Вас есть 60-дневный срок для принятия решения – и если Вы производите возврат, мы возвращаем 100% оплаты.

Текущий уровень возвратов наших курсов: менее 1 процента…

Рассрочка платежа

Наши курсы можно оплатить по частям или в рассрочку, в том числе без процентов. При этом доступ к материалам Вы получаете сразу.

Это возможно при оплате от физических лиц на сумму от 3 000 руб. до 150 000 руб.

Все, что Вам нужно сделать – это выбрать способ оплаты «Оплата через ЮKassa». Далее на сайте платежной системы выбираете «Заплатить по частям», указываете срок и размер выплат, заполняете небольшую анкету – и через пару минут получаете решение.

Варианты оплаты

Мы принимаем все основные формы платежей.

От физических лиц – оплаты с банковских карт, электронными деньгами (WebMoney, ЮMoney), через интернет-банкинг, оплаты через салоны связи и так далее.

Возможна также оплата заказа по частям (в рассрочку), в том числе без дополнительных процентов. Для этого при оформлении заказа укажите способ оплаты через «ЮKassa»
– а далее на сайте платежной системы выберите «Заплатить по частям».

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

Обучение нескольких сотрудников

Наши курсы предназначены для индивидуального обучения. Групповое обучение по одному комплекту является незаконным распространением.

Если Вам нужно обучить нескольких сотрудников – просто закажите несколько комплектов, и цена второго и следующих будет на 40% меньше.

На дополнительные комплекты не действуют еще какие-либо скидки или акции – они и так дисконтированы, получилась бы «скидка на скидку».

Актуальность

Курс записан в декабре 2022 и полностью актуален.

Есть вопросы?

Спросите в комментариях ниже – или напишите нам на support@kursy-po-1c.ru

Комментарии / обсуждение (54):

  1. Олеся

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

    • Кузьмин Сергей

      Здравствуйте, Олеся!
      Обучение по курсу проходит по свободному графику. Активировать и начать обучение можно в любой момент.

      Счет и договор сформировать можем.
      Для оформления заказа и формирования документов на почту службы поддержки support@kursy-po-1c.ru сообщите, пожалуйста:
      1. Контактные данные (ФИО, е-мейл, телефон).
      2. Реквизиты организации.

      • Олеся

        здравствуйте.
        подскажите пожалуйста, сертификат об обучении будет? кто выдаёт? если есть образец, вышлите пожалуйста на почту

        • Кузьмин Сергей

          После прохождения курса выдается сертификат о прохождении, при условии выполнения практических заданий.
          Сертификат выдает наш проект Курсы-по-1С.рф.

  2. Игорь

    Добрый день.
    Скажите, как получить (развернуть на своем компе) :
    Для воспроизведения действий из этих уроков нужен работающий сервер 1С, СУБД. В видео используется MS SQL Server 2017.

    • Василий Ханевич

      Добрый день!
      Эти программные продукты можно скачать на сайтах их вендоров.

      Платформу 1С и СУБД PostgreSQL можно скачать на сайте фирмы “1С”: https://releases.1c.ru
      Также можно воспользоваться community-лицензией для разработчиков. Подробнее – в статье Новая функциональность в платформе 8.3.23 – комьюнити-лицензия

      MS SQL Server можно скачать на сайте Microsoft: https://www.microsoft.com/ru-ru/sql-server/sql-server-downloads

      Также обратите внимание на комментарий автора этого модуля курса:
      Учебная база довольно большая, поэтому в файловом варианте ее развернуть в принципе не получится.
      Версия Express также имеет ограничения на размер таблиц и баз, поэтому она тоже не подходит.
      Вам нужна версия MS SQL Developer Edition, она также бесплатна, но там нет ограничений на размер таблиц и баз данных.

  3. Ольга

    Здравствуйте! Скажите, пожалуйста, после приобретения курса и скачивания на компьютер можно ли будет его скопировать и просматривать на другом компьютере?

    • Кузьмин Сергей

      Здравствуйте, Ольга!
      Материалы курса можно просматривать на нескольких компьютерах. Нужно будет просто скачать материалы курса и активировать плеер на каждом компьютере.

  4. Анна

    Здравствуйте. Какой документ выдается после прохождения курса если есть диплом о высшем образовании? И в каком случае выдается это свидетельство/удостоверение?

    • Анна Бортникова

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

      Свидетельство или удостоверение выдаётся только по курсам нашего партнера УЦ№1 компании 1С.
      Если в курсе 16 и более академических часов и у слушателя есть среднее специальное или высшее образование – выдается удостоверение, если нет – свидетельство.
      Удостоверение – это документ о повышении квалификации. Свидетельство не является документом об образовании или повышении квалификации.

  5. Евгения

    Добрый день! Доступ к курсу предоставляется навсегда? Есть ли дедлайн прохождения курса?

    • Кузьмин Сергей

      Добрый день, Евгения!
      Доступ к материалам курса открывается навсегда. Ограничен только срок поддержки по курсу – 4 месяца с даты активации.

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

  6. Максим Титов

    Добрый день!

    Просьба временно приостановить доступ к мастер-группе курса.

    • Анна Бортникова

      Доброго дня, Максим!
      Токен приостановлен.
      Информация по возобновлению доступа направлена Вам на емейл.

  7. SnowMan83

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

    • Василий Ханевич

      Добрый день!
      Чтобы получить 3 заказа с наибольшими суммами по каждому контрагенту, можно использовать коррелированный запрос:

      ВЫБРАТЬ
          Заказ.Ссылка КАК Ссылка,
          Заказ.Контрагент КАК Контрагент,
          Заказ.СуммаДокумента КАК СуммаДокумента
      ИЗ
          Документ.Заказ КАК Заказ
      ГДЕ
          Заказ.Ссылка В
                  (ВЫБРАТЬ ПЕРВЫЕ 3
                      ЗаказОтбор.Ссылка
                  ИЗ
                      Документ.Заказ КАК ЗаказОтбор
                  ГДЕ
                      ЗаказОтбор.Контрагент = Заказ.Контрагент
                  УПОРЯДОЧИТЬ ПО
                      ЗаказОтбор.СуммаДокумента УБЫВ)

      УПОРЯДОЧИТЬ ПО
          Контрагент,
          СуммаДокумента УБЫВ

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

  8. alex.hamenok

    Добрый день.

    Просьба временно приостановить доступ к мастер-группе курса.

    • Кузьмин Сергей

      Добрый день!
      Активация токена приостановлена. Для возобновления доступа к Мастер-группе активируйте токен, направленный Вам на почту.

  9. Екатерина

    ДД. Подскажите есть ли возможность задавать вопросы? Разбирать какие то “реальные” кейсы?

    • Кузьмин Сергей

      Добрый день, Екатерина!
      В курсе предусмотрена поддержка тренером в течение 4 месяцев с момента активации курса. В рамках поддержки можно отчитываться по практическим заданиям и задавать вопросы тренеру.
      Но тренер отвечает на вопросы, связанные с темой курса.

  10. Ян

    Здравствуйте, видеоуроки можно будет просматривать на Mac OS?
    Есть ли в комплекте какая нибудь методичка?

    • Кузьмин Сергей

      Добрый день!
      Материалы курса запускаются при помощи защищенного плеера, который работает только на ОС Windows.
      Единственный способ запуска на Mac OS – через BootCamp.

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

  11. Роман

    Здравствуйте. Появилась ли возможность просматривать например на андроид? Раньше на сколько я помню такой возможности не было из-за специфичной защиты курса.

    • Кузьмин Сергей

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

      В курсе по оптимизации не рассказывается, как писать запросы, какие конструкции есть в языке запросов. Зато рассказывается про то, как настроить систему, чтобы всё работало быстро. Как настроить сервер 1С, СУБД. Рассказывается про блокировки. В том числе есть глава по оптимизации запросов. Вот в этой теме есть пересечения между курсами.

  12. haldj

    Здравствуйте. Будет ли курс полезен, тем кто прошел курс «Разработка и оптимизация запросов в 1С:Предприятие 8.3» ?

    • Василий Ханевич

      Добрый день!
      Да, поскольку курс значительно расширился и дополнился.
      В новом курсе рассматриваем принципы хранения данных в информационных базах на уровне таблиц БД. Добавлен подробный раздел, посвященный оптимизации запросов. Разбираем новые функции языка запросов, появившиеся в платформе 8.3.20, 8.3.22.
      Также в курс вошли ответы на те вопросы из Мастер-группы, который задавали участники старого курса.

  13. AnRybak

    Здравствуйте.
    Насколько новый курс пересекается с курсом от 2015 года “Разработка и оптимизация запросов в 1С:Предприятие 8.3” ?
    Какие принципиально новые темы рассматриваются?
    Спасибо.

    • Василий Ханевич

      Добрый день!
      В новом курсе работа с запросами рассмотрена гораздо детальнее, глубже, с большим количеством нюансов. Материал, присутствовавший в старом курсе только в виде ответов на вопросы из Мастер-группы, структурирован и добавлен в основное содержание курса.
      В старом курсе не было:
      – принципы хранения данных в информационных базах на уровне таблиц БД
      – подробный раздел, посвященный оптимизации запросов
      – новые функции языка запросов, появившиеся в платформе 8.3.20, 8.3.22
      – приемы, позволяющие при помощи консоли запросов упростить разработку.

  14. Denis_Denis

    Купил курс, не могу найти материалы курса, они еще не доступны для скачивания?

  15. Владимир

    Добрый день! Подскажите, есть ли возможность оплатить за материалы курса до 27.12, а начать занятия с середины января 2023?
    Какие материалы будут предоставлены в рамках данного курса?

    • Кузьмин Сергей

      Да, Вы можете приобрести курс сейчас, а активировать его и начать обучение позже, когда будете готовы.
      Материалы курса – это видеоуроки, которые можно изучать в удобном Вам темпе.

      • Владимир

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

        • Анна Бортникова

          Здравствуйте, Владимир! Мы предполагаем, если человек пришёл учиться какому-то продукту, значит, он у него уже есть.
          Но в курсах для начинающих либо даём всё необходимое для обучения, либо авторы говорят, где можно скачать бесплатно всё необходимое.

    • Кузьмин Сергей

      Данный курс дистанционный. Материалы курса – это видеоуроки, которые можно изучать в свободном для Вас темпе.
      Также в курсе предусмотрена поддержка тренером (Вы сможете задавать вопросы тренеру и отчитываться по практическим заданиям).

      Именно очного обучения мы не проводим.

  16. Андрей

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

    • Кузьмин Сергей

      Материалы курса – это видеоуроки, которые можно скачать на компьютер и изучать в своем темпе.

  17. Nickon

    Здравствуйте! Есть курс “Запросы в 1С 8.3, Базовый курс
    с нуля – до уровня Специалист по платформе”.
    Этот курс как продолжение или один входит в состав другого или необходимо изучение каждого?

    • Кузьмин Сергей

      Базовый курс позволяет быстро погрузиться в тему (объем курса – 14 учебных часов)
      В Расширенном курсе запросы разбираются намного подробнее (объем курса – 56 учебных часов).
      Курсы частично пересекаются.

      • Basil

        Если брать и изучать Расширенный, то к Базовому уже нет необходимости возвращаться?

        • Кузьмин Сергей

          Расширенный курс полностью перекрывает темы, рассмотренные в Базовом курсе.

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

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