Асинхронные функции в 1С
КАК ИСПОЛЬЗОВАТЬ АСИНХРОННЫЕ МЕТОДЫ В 1С?
Привет, друзья! Наверняка при решении задач по программированию в 1С вы сталкивались с ошибкой "Использование синхронных методов на клиенте запрещено". Сегодня мы покажем как избежать этой ошибки и писать код правильно, используя асинхронные методы.
Поддержать канал можно по ссылке: donate.stream/ya410011655962993
☝Записаться на курс "Профессия программист 1С: с нуля до профи": ironskills.by/programmist-1c
#1с #ironskills
---
С уважением, команда IRONSKILLS
Пікірлер: 86
Лучший канал про 1С
Благодарность Ивану!!!
Как же ты классно все объясняешь, дай бог тебе здоровья. Это видео не смотрел, но предыдущие почти все.
Преподаватель от Бога =) Четко, понятно, логично, по существу.
Спасибо за уроки! Можно в следующих видео рассказать про длительные процедуры, выполнение в фоне, индикатора и прогресс-бар для управляемых форм?
@ironskills-1c
Жыл бұрын
Да, сделаем ;)
@helmetson652
Жыл бұрын
@@ironskills-1c как-то понадобилось реализовать прогресс-бар, без конструирования доп регистра сведений, в который с сервера пишется прогресс выполнения, мы можем на клиенте только мотылятор изобразить
Только вчера узнал, что есть какие-то асинхронные методы, а сегодня уже обзор от вас. Спасибо))
как всегда все на высшем уровне ,🔥спасибо за ваш труд
Спасибо за такое подробное и понятное объяснение!
Молодцы! Так держать, продолжайте вашу полезную работу
Отличная подача материала! Спасибо!
Отличная информация. Как всегда подробно и с примерами. Спасибо!
Спасибо за видео. Вы лучший канал про 1С
Прекрасная подача материала! Приятно смотреть!!!
Один из топовых каналов про 1С! Прекрасная подача материала. Спасибо!)
Класс, спасибо! Очень доступно и понятно!
Спасибо, полезная информация. Ждём новые видео
Круто! Спасибо за полезную информацию!
Отличная подача материала!!!
Иван, большое спасибо за видео, как всегда, очень понятно и доходчиво, поддержу предложение про обзор длительных процедур, выполнение в фоне и отображение прогресса выполнения.
Отличное видео! Очень интересно и понятно. Спасибо!
Круто, как всегда!
Все четко и ясно. Спасибо за видео.
Спасибо, очень подробное, а самое главное понятное объяснение. Единственное желательно прикладывать обработку
Иван, так держать!👍
Спасибо большое. Не знал про второй вариант реализации, теперь по мере возможности буду использовать его
Спасибо большое, очень доходчиво.
Иван спасибо за разъяснение.
Отличный контент, преподаватель молодец.
Спасибо, все четко и понятно.
Спасибо за ваши видео
Иван, спасибо! Очень полезно
Нужно больше подкастов
Очень хорош, поддерживаю комментарием с воздуха
Иван! Ты просто супер! Начал смотреть ваши видео и не могу остановиться.
@ironskills-1c
Жыл бұрын
Спасибо, Александр!) Добро пожаловать к нам на канал)
Крутой выпуск! Даешь основы программирования, часть третью.
Отличное видео
Спасибо. Даже не думал, что такое есть
Спасибо🎉
Спасибо!
Благодарю
чувак, ты отпад!)
Просто комментарий для поднятия уровня статистики
Как всегда очень качественная, доходчивая подача. Иван, что с БСП? Когда "новый сезон"?
@ironskills-1c
Жыл бұрын
Пишем) Осенью планируем полноценный курс выпустить по БСП)
Отличное иллюстративное видео! А нет ли у вас роликов по теории? Зачем вообще в 1С добавили асинхронные методы, особенности работы тонкого и веб-клиентов, работа в режимах совместимости, зачем настройки выполнения асинхронного кода и т.п. Потому что многие начинающие программисты не понимают зачем использовать асинхронные вызовы, в чем разница, что они как разработчики получают в результате и т.д.
Сколько бурлений-обсуждений было когда появилось оповещение, и вот прошло лет 10, вернулись к истокам. Почему сразу нельзя было сделать так, чтобы сохранить подобие синтаксиса ОФ загадка.
Спасибо! Вопрос - можно ли использовать Рефакторинг - Создать обработку оповещения , чтобы не писать процедуру вручную?
Сорри, не прочитал комментарии, которые писали ранее. Ну что ж ждем осень, чтобы приобрести курс))
Здравствуйте, большое спасибо за ваши уроки. Подскажите, а не планируется третий вебинар по запросам? Я видел, что на стриме у Ильи Леонтьева несколько лет назад вы упоминали, что подумываете о вебинаре, касающемся обработки результата запроса после выполнения, но вебинара пока нет. Думаю, он был бы очень полезен.
@ironskills-1c
Жыл бұрын
Да, Дмитрий, 3-й вебинар по запросам планируем сделать)
Иван, а к ИТС через такую регистрацию доступ будет?
вы на каком то видео форматировали текст по = внутри блока , как вы это сделали
16:23 - не очень понял, для чего нужна переменная Результат на предпоследней строке?
Мы добавляем в струкутуру ТекстДок до чтения, потом читаем. Почему мы получаем из той же структуры уже прочитанный документ? Ведь метод прочитать мы используем напрямую от ТекстДок?
для ДокументPDF нет ОписаниеОповещение Синтаксис: ПрочитатьАсинх(, ) Что делать?
@ironskills-1c
6 ай бұрын
Тогда нужно использовать асинхронную функцию ПрочитатьАсинх()
Асинхронные методы достаточно интересны, но не так однозначны:) В видео простой пример - обработчик команды, 1 процедура в которой все и происходит. Из недавнего: модуль формы элемента спр, событие «ПриОткрытии()» - проверяем реквизит и если условие выполняется: Отказ и ПредупреждениеАсинх(). Из «ПриОткрытии» передаем в транзитную &НаКлиенте процедуру «Отказ», в ходе проверки устанавливаем его = «Истина», указываем у процедуры модификатор «Асинх» и используем метод ПредупреждениеАсинх(). Возвращаемся в «ПриОткрытии()» и «Отказ» обнуляется снова в «Ложь». В результате и предупреждение показали (тк «Отказ» в другой процедуре) и форма открывается (тк «Отказ» обнулился при переходе между процедурами) :) То ли они обе должны быть «Асинх», то ли нельзя совмещать процедуры «Асинх» и «не Асинх» - не докопался еще. И кст та же самая история со «СтандартнойОбработкой» - её установка = «Ложь» и использование асинхронного метода (а равно и модификатора «Асинх») приводит к обнулению «СтандартнойОбработки», те = «Истина»:) И начинаются танцы с бубном, когда из одной процедуры &НаКлиенте вызывается вторая «Асинх» процедура &НаКлиенте, в которой всего лишь один метод - ПредупреждениеАсинх(). Иначе не показывается:) А это уже «ОписаниеОповещения» какое-то:)
@ironskills-1c
Жыл бұрын
Спасибо за комментарий, Борис) Да, есть свою нюансы и в старых, и в новых методах, к сожалению)
Хотел спросить, вы начинали выпускать видео по БСП, но потом они перестали появляться на этом канале, может у вас есть полноценный курс по БСП и его можно приобрести?
@ironskills-1c
Жыл бұрын
В процессе записи, скоро выйдет в свет)
Класс, но пользоваться этим ещё не скоро можно будет) пока типовые дойдут до этого режима совместимости...
@ironskills-1c
Жыл бұрын
Это да... К сожалению)
@vladyan01
Жыл бұрын
@@ironskills-1c оказывается можно)) Этот функционал не привязан к режиму совместимости и основным условием является просто платформа 18+ версии))
Задонатил. Слишком все хорошо, чтобы не отблагодарить автора.
@ironskills-1c
Жыл бұрын
Спасибо, Андрей!)
Похоже на то что новый метод асинх намного, намного удобнее чем эти описания Оповещения
@ivernik
Жыл бұрын
Это просто попытка 1С привести написание асинхронных функции к общепринятому виду.
Окошко с ведущим лучше бы поменьше сделать, а то немного отвлекает от окна где код пишется.
а как ты строки так удаляешь ? upd ctrl+L
@ironskills-1c
Ай бұрын
Да, уже написали, продублирую просто: Ctrl + L (удалить строку)
Ждать - для функции вопрос работает?
@ironskills-1c
10 ай бұрын
Для функции Вопрос() - нет, но работает для ВопросАсинх()
Синтаксис не выглядит логичным во втором варианте. (В первом тоже не очень, но там уже смирились) В предпоследней строке получили какой-то Результат пока не понятно какого типа и что с ним можно сделать, а потом вдруг, как иллюзионист кролика из шляпы вытащили содержимое из ТекстДок. А про Результат можно просто забыть. Было бы привычнее, если бы этот ТекстДок стоял бы слева от знака присваивания, было бы видно что мы присваиваем ему какое-то значение, а потом что-то достаем и него (текст в данном случае).
@ironskills-1c
10 ай бұрын
Спасибо за комментарий!) Да, новый синтаксис сначала непривычен, но со временем понимаешь, что он лучше, чем предыдущий)
Пока режим совместимости в популярных типовых конфигурациях не дорастет до 8.3.18, путь к "Асинх" для меня закрыт )
@ironskills-1c
Жыл бұрын
Да, Антон, к сожалению, он для многих ещё закрыт) Но рано или поздно время придет ;)
+
Впервые вижу 1С. Js курильщика😅
@ironskills-1c
Жыл бұрын
Значит нам удалось показать Вам что-то новое😉
Урок для тех кто самостоятельно не умеет пользоваться Синтакс помощником.
@ironskills-1c
Жыл бұрын
Олег, наш канал рассчитан на начинающих программистов, поэтому не судите строго ;)
А делегаты реализовать по-нормальному можно было? Не ходите в 1с
Спасибо!