О чем эта статья
Коллеги, предлагаем вашему вниманию некоторые материалы учебного курса Разработка и оптимизация запросов в 1С:Предприятие 8.
Мы опубликовали часть учебного пособия из методички курса по запросам в 1С в формате PDF – забирайте :)
Это с одной стороны предоставит возможность оценить контент курса, а с другой – будет полезно даже в случае, если Вы не планируете проходить этот курс.
Кроме того, представляем примеры задач, решаемых в курсе, в формате видео:
- Динамика курсов валют
- Ошибки, связанные с запросами.
Применимость
При подготовке материалов использовалась платформа 1С:Предприятие 8.2, они будут полезны разработчикам прикладных решений на платформе 1С:Предприятие версии 8.2 и старше.
Разбор еще одного кейса – «Динамика курсов валют»
В этом видео с помощью запроса выводится в виде таблицы изменение курса валют во времени с приращением.
Помимо элементарного вывода курсов валют в видео показано, как решить алгоритмическую задачу непосредственно в запросе – вычислить дельту между курсом текущим и курсом предыдущего дня.
Небольшое «живое» видео Евгения об ошибках, связанных с запросами
В этом видео Евгений рассказывает, какие ошибки совершают при выборках данных – и как их в принципе нужно решать.
Если Вы решаете, идти на курс или нет – рекомендуем посмотреть его до конца.
Три небольшие статьи по запросам
Плюс, опубликовали три статьи в ультра-кратком формате. Одна тема – 2-3 страницы. Хотим посмотреть, какой из форматов статей будет более интересен судя по статистике сайта :)
Ссылки на статьи:
- Статья «Использование пакетных запросов»
- Статья «Конструкция ДЛЯ ИЗМЕНЕНИЯ»
- Статья «Устройство виртуальной таблицы остатков»
P.S.
Понимать, как работают запросы и уметь их строить - обязательный навык для всех, кто дорабатывает и внедряет 1С.
После курса Вы сможете:
- Строить сложные запросы с несколькими источниками данных
- Уверенно задействовать вложенные запросы и временные таблицы
- Использовать встроенный язык для обработки результатов запроса
- Учитывать особенности соединений и объединений нескольких таблиц.
- Разрабатывать запросы на уровне задач Аттестации 1С:Специалист по платформе.
Мегазпросы это конечно круто, но отлаживать их сущий гемор.
Таблица значений это же динамический объект в памяти, если 1с не может работать с ним быстро, то это проблема прежде всего 1с. :)
Добрый день!
Возможно ли научить составлять запросы к существующим БД, не изучая сам принцип их создания, т.е. не вникая в реляционную теорию с минимумом законов нормализации? Вы-то их знаете, а вот как пусть даже программисту, но не знакомому с построением и законами БД, вжиться в этот механизм? Пусть тут не нужно создавать, но даже выборка требует табличного представления и нормализации данных. Или я усложняю? Так можно и до реляционной алгебры и до матриц дойти, что-то я не могу поверить, что можно обучиться на курсе виртуозному составлению запросов. Без технического вуза не обойтись все равно, база нужна, либо талант. А может вы-то как раз и научите. Поэтому записалась. Посмотрим.
Добрый день!
Безусловно техническая база по основам БД будет очень полезна. Но в курсе до матриц мы не углубляемся, хотя, например, термин “декартово произведение” встречается. Материал начинается с самых основ построения запросов и хранения данных в “1С:Предприятие”, теоретические сведения дополняются разбором практических задач, поэтому научиться написанию запросов вполне возможно.
До встречи в мастер-группе.
Будет интересен Ваш отзыв по результатам прохождения курса.
Программист не знающий устройства БД? :D
Как говориться Вы сделали мой день.
А вообще в 1с все скрыто и зарыто, так что не парьтесь
Спасибо Вам огромное. У Вас очень хорошие обучающие ролики!
Извините не в тему. Но все таки темы похожие. Вы планируете курс полный по СКД в котором будет подробно рассмотрено? Есть конечно по СКД блок из продвинутого. НО После изучения которого остается очень много вопросов. Там расмотрены легкие отчеты. Хотелось бы полный курс это освещающий. Спасибо
Добрый день!
Курс по СКД планируется, но несколько позже.
а на когда ВЫ планируете полный курс по СКД?
Ориентировочно – начало следующего года.
Извините, а до 24 мая есть шансы?
Нет, сроки сдвинулись.
Но, когда курс выйдет, постараемся для старых покупателей сделать специальные условия участия.
Аж интересно посмотреть.
В бесплатном курсе СКД так всё подробно описано, что ж там новенького придумаете. Буду наверно ждать.
Будет круто!
Сейчас такие кейсы разбираются, каких нигде не описано :)
А где можно пройти предварительную регистрацию?
Доброго дня, Тарас!
Предварительную регистрацию откроем летом.
Новости какие-то есть?
Добрый день, Тарас!
Пока нет, новости по этому курсу перенесли на следующий год.
С ностальгией посмотрел на августовские курсы валют ))). За видео – спасибо огромное авторам.
Да, именно летом записывался курс ))
А кто тренер?
Тренер – Ханевич Василий, практикующий консультант и внедренец, город Калининград.
первая минута: почему длительность операции не 100*(t1+t2)?
ведь накладные расходы и обработка запроса СУБД происходит каждую итерацию цикла.
Добрый день!
Да, Вы правы, но смысл не меняется – запросы в цикле опасный прием :)
Добрый день. В видео прозвучала такая фраза что “Вложенные запросы – это плохо надо переходить на временные таблицы”. Не согласен с этим утверждением. Не всегда вложенные запросы плохо, а в некоторых случаях даже лучше чем временные таблицы. Например если есть объединение запросов а итог надо просто сгруппировать, здесь лучше воспользоваться именно вложенным запросом, потому что создание временной таблицы – это накладные расходы. Тоже самое касается индексирования во временной таблице – операция не всегда полезная.
Добрый вечер, Сергей!
Курс рассказывает об общих рекомендациях и правилах. В которых всегда возможны исключения.
Действительно, вложенный запрос может сработать быстрее, чем временная таблица.
Но это не всегда так однозначно, как Вы пишете. Даже в приведенном случае объединения двух вложенных подзапросов, плата за создание временной таблицы может окупиться тем, что построитель плана запроса в SQL даст более эффективный результат.
Индексирование временной таблицы действительно увеличивает стоимость ее создания, но может окупиться многократно, если проиндексированные данные далее интенсивно используются следующими запросами.
На системном уровне такие вопросы рассматриваются в нашем курсе по Оптимизации производительности.
Обучая людей писать запросы, мы должны дать общую рекомендацию. И эта рекомендация совпадает с тем, что советует 1С: чаще использовать временные таблицы, чтобы получать запросы, работающие стабильно.
Собственно, как Вы понимаете, оптимизация 1С не ключевая задача нашего нового курса – мы концентрируемся именно на написании сложных запросов.
Я просто за то, чтобы рассматривались все случаи использования механизмов написания запросов с их достоинствами и недостатками в тех или иных случаях, при том что оптимизации посвящен целый модуль. А из практики были случаи когда временные таблицы необходимо было менять на вложенные запросы, чтобы производительность на уровнем, определенном заказчиком.
Да, но еще раз повторю – это курс не по оптимизации, а по запросам.
Приведенные Вами примеры рассматриваются в курсе по Оптимизации 1С.
Здравствуйте,скажите какой уровень подготовки должен быть что бы правильно понять данный курс.
С уважением Андрей.
Спасибо.
Добрый день, Андрей!
Начинаем мы с самого нуля.
Тем не менее должен быть минимальный уровень знания программирования (не обязательно на 1С).
Конечно, для начинающих специалистов потребуется больше времени, чтобы полностью пройти курс.
Но в любом случае курс будет полезен и новичкам и профессионалам.
Евгений, уточните, пожалуйста, где 1С дает рекомендацию “чаще использовать временные таблицы, чтобы получать запросы, работающие стабильно”. Если Вы о статье Константина Рупасова на kb – то там такой рекомендации нет.
На kb много чего нет. Вы можете почитать партнерский форум 1С.
Детально все вопросы по оптимизации производительности мы это рассматриваем в курсе по Оптимизации 1С – http://курсы-по-1с.рф/ускорение-1с/
На партнерском форуме Вы сможете найти лишь рекомендации использовать временную таблицу вместо вложенного запроса для какого-то конкретного запроса. Общая же рекомендация использовать временные таблицы вместо вложенных запросов дается только для случая последующего соединения.
Посему я все же прошу Вас переформулировать процитированную мной фразу в распространяемых материалах.
Андрей, хочу, чтобы Вы меня все-таки услышали.
Да, мы понимаем, что с помощью вложенных запросов Вы можете создать более производительный запрос.
Но это исключение, это не общая ситуация.
Задача этого курса – научить писать запросы (простые и сложные), которые будут стабильно работать.
Оттачивать мастерство оптимизации мы учим на другом тренинге – http://курсы-по-1с.рф/ускорение-1с/.
Фирма 1С рекомендует временные таблицы вместо вложенных запросов прежде всего потому, что они дают стабильный результат на любых используемых СУБД. Предсказать как поведет себя один и тот же вложенный запрос к примеру на PostgreSQL или ORACLE к сожалению не всегда возможно.
Спасибо! Жаль, не Евгений тренер курса, но все равно записался:)
Евгений, как было бы хорошо если бы когда Вы записываете курсы Вы говорили так же быстро как в этом видео.
Досмотрел до конца. Евгений, БРАВО!!! Получилось по настоящему круто! Обязательно буду участвовать.
P.S. Судя по первым 100 страницам качество методических материалов вышло на новый уровень.
Спасибо, ждем на курсе!
Насколько я помню, мы с Вами уже это обсуждали :)