Материал подан структурировано. Несмотря на то, что методы эти знаю, посмотрел с удовольствием. Поизучаю контент на канале, возможно, найду новый для себя материал, представленный в таком же стиле.
50:42 Отмечу, что в методе ПоказатьПредупреждение() первый параметр необязательный. Так что можно было не создавать процедуру-заглушку, а просто написать ПоказатьПредупреждение(, "Текст сообщения").
Ясно, четко? Одно и то же 5 раз объясняет. Очевидно же, что всё однообразно. Как человек, который не может в логику, будет потом сам работать после этих курсов? Видимо никак.
@@Anton-ni8un Так и будет, вспомнит, то что он когда то уже делал, откроет обработку, посмотрит код и найдет решение задачи. Или научившись работать с синтаксис-помощником сможет быстро найти решение, или дальше его исследовать с помощью обработок, кстати таким же методом изучается и БСП.
@@Anton-ni8un конечно же имеете. Но ваше мнение вам же и противоречит. Те кто "умеют в логику" могут повторяющиеся моменты перемотать. А таких видео как это по качеству содержания очень мало в свободном доступе.
Хороший урок. Спасибо. Полезно повторить, что уже знаешь. Отличное качество картинки, код видно, в отличии от коллег, которые почему то в разрешении 720 выводят видео.
35:55 - небольшое уточнение, открывается не форма списка, а форма выбора. Нередко это разные формы ЗЫ. Не знаю, как кому, я обычно булевы переменные с истиной не сравниваю когда пишу условие, в этом смысла нет. Сравнение дает результат типа булево, а "РезультатВвода" у нас и так булевый тип имеет
Привет! Отличное видео, прекрасная подача, без воды и лишнего, продолжай делать дальше, скажу за всех, но мы в полном восторге :) Единственный вопрос, который для меня остался открытым, почему обязательно процедура обработки оповещения должна быть экспортной?
Илья, спасибо большое!) По поводу экспортного метода - дело в том, что обработчик оповещения (процедура) может располагаться не обязательно в текущем модуле, а, например, в общем модуле. А для того чтобы можно было вызывать процедуру другого модуля она должна быть экспортной.
Посмотрел видео в поисках решения специфической задачи, не пропускал даже то что для меня казалось очевидным.) И пока смотрел про синхронные и асинхронные методы всплыла в памяти одна задача, вопрос пользователю в процедуре перед записью)) в зависимости от ответа записывать или нет, вот где асинхронный метод через костыли работает) (костыль в данном случае это реквизит или переменная в которой хранится значения задавался вопрос или нет)
Да, в модуле объекта задать вопрос не получится, но можно решить через событие ПередЗаписью на уровне формы, это событие обрабатывается на клиенте, где диалоги можно использовать)
Доброго дня! Вот лучше бы конечно в видео не было моментов - Справочники.Номенклатура.НайтиПоКоду() , понимаю что видео залито 2 года назад. Но я бы советовал делать так - Справочники.Номенклатура.ПолучитьСсылку( Новый УникальныйИдентификатор("")) Так мы точно обратимся к нужному элементу, потому как код, может измениться)
Разобрался. Нужно добавить строку: Сообщение.ИдентификаторНазначения = УникальныйИдентификатор; Чтобы привязать сообщение к форме. Да уж, методом Сообщить() это не сделать...
А как отправить уведомление пользователя из серверной процедуры? Расскажите про систему взаимодействия, как с ней работать программно. Как отправлять и перехватывать сообщения на клиенте...
Круто! я учу язык прог. с нуля вообще. трудно даются циклы, и дальше. Иван посоветуй пожалуйста источники где есть примеры, или боевые несложные задачки. и еще, пожалуйста, как научиться комбинировать конструкции языка? очень хочется научиться.
Павел, по поводу источников для практики трудно сказать, есть много книг по 1С, но на отработку например, циклов, условий задач там обычно немного (из того что видел). Из сборников задач могу порекомендовать книгу Павла Чистова "Сборник задач про разработке на платформе 1С:Предприятие".
это все хорошо, что методы асинхронные как в javascriptике, а что делать если функциональность нужна как раз модальная, не надо идти дальше пока не ввел корректно, это ж очевидный вопрос, который возникает у любого "не пьяного" человека. И если мне нужно собрать данные с нескольких "Вводов числа", и потом их скажем сложить и получить результат, было бы очень классно если бы снял или показал такое видео.
Станислав, спасибо за вопрос) Если нужно блокировать интерфейс при вводе данных, то можно создать собственную форму и открывать её в режиме "БлокироватьВесьИнтерфейс" или "БлокироватьОкноВладельца".
А как быть при асинхронном вызове процедуры, если нужно приостановить выполнение кода. Например при проведении документа, задать вопрос пользователю ответ которого будет решать проводиться документ или нет?
@@askarmuk Ты видно не понял вопроса, либо плохо смотрел данное видео. Пример: В процедуре ОбработкаПроведения нужно дописать свой код при котором вызывается окно с выбором "Продолжить или Отменить". Асинхронный вызов здесь не подходит. Как обойти данную проблему не меняя свойство конфигурации?
@@murmanskoff6135 , а ничего, что обработка проведения - на сервере, а все окна - на клиенте? Куда ты его выведешь, если это проведение будет вообще без открытия каких-то форм проходить???
@@НиколайПитиримов-ы9ц А ничего ... последовательность событий при проведении документа: Модуль формы (&НаКлиенте) - перед записью; Модуль формы (&НаСервере) - обработка проверки заполнения на сервере; Модуль объекта - обработка проверки заполнения; Модуль формы (&НаСервере) - перед записью на сервере; Модуль объекта - перед записью (начало транзакции, документ еще не записан); Модуль объекта - при записи (документ записан); Модуль объекта - обработка проведения (формирование набора записей движений документа); Модуль формы (&НаСервере) - при записи на сервере (записан набор записей движений документа, фиксация транзакции); Модуль формы (&НаСервере) - после записи на сервере; Модуль формы (&НаКлиенте) - после записи.
Ну НЕостановка исполнения кода - так себе преимущество. То есть Вопрос или предупреждение -- это последняя строка модуля? А что делать если нужны переменные, значение которых нужно далее, а они получены перед Вопросом?
Для этого в процедурах-обработчиках оповещений есть параметр "ДополнительныеПараметры", используя которые можно передавать данные в обработчик оповещения из процедуры, которая вызывает асинхронный метод)
Делаешь регистр сведений в который пишешь сообщение и пользователя, которому отправить и у всех пользователей по таймеру читаешь этот регистр и если там чето есть - выводишь
На это видео попадаешь когда, стал вопрос о модальных окнах, а тут как раз оказываеться что пошел я нафиг))) это не корректно, требоавть чтобы пользоваетль ввел цепочку корректных значений. Дожно же быть "корректное" решение.
Привет всем. А кто в курсе, как очистить оповещения в колокольчике программно? т.е. оповещения созданные методом ПоказатьОповещениеПользователю() со статусом важное?
Поддержу предыдущих комментаторов: подача без воды, только по существу и с раскрытием собственных приемов работы как программиста. Спасибо!
Материал подан структурировано. Несмотря на то, что методы эти знаю, посмотрел с удовольствием. Поизучаю контент на канале, возможно, найду новый для себя материал, представленный в таком же стиле.
Прекрасный материал. Динамика изложения самая правильная. Спасибо.
50:42 Отмечу, что в методе ПоказатьПредупреждение() первый параметр необязательный. Так что можно было не создавать процедуру-заглушку, а просто написать ПоказатьПредупреждение(, "Текст сообщения").
Илья я был приятно удивлен.!!! Когда увидел ваше Имя в посте.
Ясно, чётко, всё по делу. Спасибо огромное за работу!!! Теперь всегда буду использовать асинхронные методы.
Ясно, четко? Одно и то же 5 раз объясняет. Очевидно же, что всё однообразно. Как человек, который не может в логику, будет потом сам работать после этих курсов? Видимо никак.
@@Anton-ni8un Так и будет, вспомнит, то что он когда то уже делал, откроет обработку, посмотрит код и найдет решение задачи. Или научившись работать с синтаксис-помощником сможет быстро найти решение, или дальше его исследовать с помощью обработок, кстати таким же методом изучается и БСП.
@@Anton-ni8un покажите пожалуйста как правильно делать обучающие ролики. Выложите их на своём канале - всем будет интересно.
@@ВасяВасечкин-т1ю, а вы чего такой агрессивный? Я не имею права на свое мнение?
@@Anton-ni8un конечно же имеете. Но ваше мнение вам же и противоречит. Те кто "умеют в логику" могут повторяющиеся моменты перемотать. А таких видео как это по качеству содержания очень мало в свободном доступе.
Спасибо ТЕБЕ, КРУТОЙ ЧЕЛ. ВСЕ ПО ДЕЛУ.
Хороший урок. Спасибо. Полезно повторить, что уже знаешь. Отличное качество картинки, код видно, в отличии от коллег, которые почему то в разрешении 720 выводят видео.
Спасибо Вам за Ваши уроки!
Спасибо за видео! Все как всегда качественно.
Спасибо за видео!! Все подробно разъяснено, доступным простым языком, очень последовательно и продумано. Хороший урок , особенно для начинающих.
начинающий адинэсник. Это даже звучит жутко
Иван, спасибо за такие обучающие ролики ! Продолжай в том же направлении!
Спасибо огромное. Все понятно.
Желаю дальнейшего развития канала!
35:55 - небольшое уточнение, открывается не форма списка, а форма выбора. Нередко это разные формы
ЗЫ. Не знаю, как кому, я обычно булевы переменные с истиной не сравниваю когда пишу условие, в этом смысла нет. Сравнение дает результат типа булево, а "РезультатВвода" у нас и так булевый тип имеет
Очень круто и полезно, респект!
Как всегда супер!!! Спасибо Иван!
Класс! Спасибо!
Спасибо за работу! Нравится!👍
Спасибо! Прекрасная подача материала! Расскажите, пожалуйста, про планы обмена и/или xdto
Привет! Отличное видео, прекрасная подача, без воды и лишнего, продолжай делать дальше, скажу за всех, но мы в полном восторге :)
Единственный вопрос, который для меня остался открытым, почему обязательно процедура обработки оповещения должна быть экспортной?
Илья, спасибо большое!) По поводу экспортного метода - дело в том, что обработчик оповещения (процедура) может располагаться не обязательно в текущем модуле, а, например, в общем модуле. А для того чтобы можно было вызывать процедуру другого модуля она должна быть экспортной.
Без воды? По-моему одна вода. Однообразные действия показывает по 5 раз. Очевидно, что методы однообразные.
@@Anton-ni8un Спасибо за критику) Понятно, что для кого-то это не новая тема, поэтому может показаться что все знакомо и повторяется)
@@Anton-ni8un куда нам до вас кудесник
@@ironskills-1cor
Очень понятно. Спасибо
Ну просто класс!!!
Спасибо большое 😍
16:05 - получать ссылку на номенклатуру по ее коду не лучше ли "на сервере без контекста"?
Спасибо за материал! Если не сложно , ставь тайм коды пожалуйста)
Евгений, спасибо, со временем сделаем)
Полезно только тем, кто не умеет читать справку и сам че-то пробовать....
Посмотрел видео в поисках решения специфической задачи, не пропускал даже то что для меня казалось очевидным.)
И пока смотрел про синхронные и асинхронные методы всплыла в памяти одна задача, вопрос пользователю в процедуре перед записью)) в зависимости от ответа записывать или нет, вот где асинхронный метод через костыли работает) (костыль в данном случае это реквизит или переменная в которой хранится значения задавался вопрос или нет)
Да, в модуле объекта задать вопрос не получится, но можно решить через событие ПередЗаписью на уровне формы, это событие обрабатывается на клиенте, где диалоги можно использовать)
33:18 - у вас тут ошибка. "Выберите дату рождения" - дату рождения не выбирают)
На клиенте это хорошо, неплохо было-бы взаимодействие между клинет-сервер.
Доброго дня! Вот лучше бы конечно в видео не было моментов - Справочники.Номенклатура.НайтиПоКоду() , понимаю что видео залито 2 года назад. Но я бы советовал делать так - Справочники.Номенклатура.ПолучитьСсылку( Новый УникальныйИдентификатор(""))
Так мы точно обратимся к нужному элементу, потому как код, может измениться)
Здравствуйте, Антон) Спасибо за комментарий, в видео показаны учебные примеры кода, для упрощения понимания выполняется поиск по коду)
уникальный идентификатор тоже может поменяться, прикинь!
46:20 А есть ли возможность в данном примере вывести сообщение "Код работает дальше" не в окне с вопросом, а внизу экрана как обычные сообщения?
Разобрался. Нужно добавить строку: Сообщение.ИдентификаторНазначения = УникальныйИдентификатор; Чтобы привязать сообщение к форме. Да уж, методом Сообщить() это не сделать...
1:40 Иван говорит, что "Все эти методы доступны на стороне клиента...". Вроде бы Сообщить и СообщениеПользователю доступны и на сервере тоже.
Да, вывод сообщений на сервере можно использовать, спасибо за комментарий ;)
Зачем ты такие видосики смотришь вобще?
А как отправить уведомление пользователя из серверной процедуры? Расскажите про систему взаимодействия, как с ней работать программно. Как отправлять и перехватывать сообщения на клиенте...
22:05 вы переименовали одно слова отбор но сразу заменилось оно же и ниже это как?
Это скорее всего чудеса монтажа :))
Без всякого монтажа можно использовать Ctrl+Alt+R для переименования как переменных, так и функций с процедурами по всему коду.
Круто! я учу язык прог. с нуля вообще. трудно даются циклы, и дальше. Иван посоветуй пожалуйста источники где есть примеры, или боевые несложные задачки. и еще, пожалуйста, как научиться комбинировать конструкции языка? очень хочется научиться.
пройди курс владимира милькина по програмированию
@@Barbin4ik мне этого мало. У меня куплен курс
@@tranclyatina тогда просто занимайся и не спеши,все получится.
Павел, по поводу источников для практики трудно сказать, есть много книг по 1С, но на отработку например, циклов, условий задач там обычно немного (из того что видел). Из сборников задач могу порекомендовать книгу Павла Чистова "Сборник задач про разработке на платформе 1С:Предприятие".
@@Barbin4ik Спасибо большое
Спасибо !
Спасибо вам, одно вапрос у меня можно использовать этим методы на упр.приложение и обич.проложение?
Часть объектов и методов доступны в обычном приложении, но не все)
Как позиционировать на объект типа Перечисление на форме ? Т.е. если поле незаполненное, то программу не продолжать.
также как и на любой другой реквизит
Спасибо за видео все четко и понятно. А как записаться на ваши курсы если номер телефона например 926............?
Сергей, на сайте должна быть возможность выбрать страну) Либо можете написать нам в telegram - @ironskills_bot
🔥🔥🔥
Если можно то на упр формах по больше уроков :)
Ты ж уходить хотел из 1С? 😉
нахуй они тебе не нужны. переходи лучше на html или андроид
Имхо - толковей остальных курсов и без воды. У Гилева-Чистова в раза 3 бы дольше вышло бы...
ты угораешь?
это все хорошо, что методы асинхронные как в javascriptике, а что делать если функциональность нужна как раз модальная, не надо идти дальше пока не ввел корректно, это ж очевидный вопрос, который возникает у любого "не пьяного" человека. И если мне нужно собрать данные с нескольких "Вводов числа", и потом их скажем сложить и получить результат, было бы очень классно если бы снял или показал такое видео.
Станислав, спасибо за вопрос) Если нужно блокировать интерфейс при вводе данных, то можно создать собственную форму и открывать её в режиме "БлокироватьВесьИнтерфейс" или "БлокироватьОкноВладельца".
Никак. Браузеры не будут работать с модальностями. Придется городить кучу вложенных процедур с вопросами и на выходе их собирать.
А как быть при асинхронном вызове процедуры, если нужно приостановить выполнение кода. Например при проведении документа, задать вопрос пользователю ответ которого будет решать проводиться документ или нет?
Решение о проведение документа вызовется через процедуру, указанную в ПоказатьВводЧисла.
@@askarmuk Ты видно не понял вопроса, либо плохо смотрел данное видео. Пример: В процедуре ОбработкаПроведения нужно дописать свой код при котором вызывается окно с выбором "Продолжить или Отменить". Асинхронный вызов здесь не подходит. Как обойти данную проблему не меняя свойство конфигурации?
@@murmanskoff6135 , а ничего, что обработка проведения - на сервере, а все окна - на клиенте? Куда ты его выведешь, если это проведение будет вообще без открытия каких-то форм проходить???
@@НиколайПитиримов-ы9ц А ничего ... последовательность событий при проведении документа:
Модуль формы (&НаКлиенте) - перед записью;
Модуль формы (&НаСервере) - обработка проверки заполнения на сервере;
Модуль объекта - обработка проверки заполнения;
Модуль формы (&НаСервере) - перед записью на сервере;
Модуль объекта - перед записью (начало транзакции, документ еще не записан);
Модуль объекта - при записи (документ записан);
Модуль объекта - обработка проведения (формирование набора записей движений документа);
Модуль формы (&НаСервере) - при записи на сервере (записан набор записей движений документа, фиксация транзакции);
Модуль формы (&НаСервере) - после записи на сервере;
Модуль формы (&НаКлиенте) - после записи.
Так не выйдет. Сначала все проверки и вопросы задай на клиенте, потом в обработку проведения передавай ответы и принимай решение, проводить или нет
Круто)
Ну НЕостановка исполнения кода - так себе преимущество. То есть Вопрос или предупреждение -- это последняя строка модуля? А что делать если нужны переменные, значение которых нужно далее, а они получены перед Вопросом?
Для этого в процедурах-обработчиках оповещений есть параметр "ДополнительныеПараметры", используя которые можно передавать данные в обработчик оповещения из процедуры, которая вызывает асинхронный метод)
слишком просто, а как выбрать конкретного пользователя и отправить ему сообщение ????
Обычное сообщение никак) Но можно персонально отправлять сообщения, используя механизм системы взаимодействия)
Делаешь регистр сведений в который пишешь сообщение и пользователя, которому отправить и у всех пользователей по таймеру читаешь этот регистр и если там чето есть - выводишь
На это видео попадаешь когда, стал вопрос о модальных окнах, а тут как раз оказываеться что пошел я нафиг))) это не корректно, требоавть чтобы пользоваетль ввел цепочку корректных значений. Дожно же быть "корректное" решение.
👍
Привет всем. А кто в курсе, как очистить оповещения в колокольчике программно? т.е. оповещения созданные методом ПоказатьОповещениеПользователю() со статусом важное?
видимо ОчиститьОповещенияПользователю()
@@krutoyinfo В СП не вижу.
Чувак, ну почему же в 1с так сложно показать долбанное модальное окно, не нужна нам конфигурация и часовое видео, нужно показать долбанный вопрос.....
Это связано с работой в веб-клиенте (браузере), браузеры не любят модальные окна))
Ничего сложного, показывай на здоровье, если не собираешься работать через браузер. Да ив браузере можно, пока он не забанит твои окна )
Отлично! Спасибо!