Наконец-то вернулся! Иван, привлеките спонсора (ненавязчивого) и пилите больше подобных видеороликов, а для тех, кто уже зарабатывает на 1С "включите донат". Сделайте видеосправочную с Вашим подробным объяснением. Ваша подача лучше всего усваивается, но я нескоро начну с этого зарабатывать. Хочется роликов не от задачи, а от "Синтакс-помощника", т.е. разбора отдельных методов, функций, процедур и событий, к примеру: метод "Сообщить"(если я его правильно называю) выполняет "это", "то" и "вот это", применяется при "этом", "том" и "вон там", т.е. как можно больше использований в практике одного элемента языка в одном ролике. Так можно будет напилить огромное количество роликов и обращаться через поиск и когда нужно находить нужные элементы для разработки. Синтакс-помощник тяжело усваивается и не даёт необходимого понимания при обращении к нему. В любом случае, спасибо за контент!
Спасибо за урок. Замечу, что существует процедура (по крайней мере в УНФ) ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы, которая также позволяет выполнять закрытие формы с подтверждением. При этом процедуры обработки оповещения о завершении не требуется, а нужен реквизит формы (тип булево), который является признаком того, нужно ли показывать диалог подтверждения.
попробовал процедуру БСП, мне она не понравилась тем что открывается окно с вопросом не моментально, происходит некая задержка, если прописать самому такую процедуру то вопрос будет открываться быстрее. Думаю это связано с тем что в процедуре бсп используется ПодключитьОбработчикОжидания.
При такой реализации вопрос так же будет задаваться и при нажатии на кнопку "Перенести в документ". В обработчике этой кнопки так же необходимо добавить "ЗакрытиеПодтверждено = Истина", чтобы не было лишних вопросов. А вообще, я бы использовал признак модифицированности формы (свойство формы "Модифицированность"). Это позволит так же избежать лишних вопросов, если, например, пользователь ни чего не добавил в корзину. Ну и для полноты картины не плохо бы было упомянуть про назначение параметра "ТекстПредупреждения" обработчика формы "ПередЗакрытием".
Хотелось бы еще раскрыть тему оповещений пользователя (на клиенте) во время длительных операций на сервере, когда процесс занимает много времени и обрабатывается большое количество информации, например, при загрузке данных из файла с большим количеством строк. Я думаю, эта тема для многих актуальна) Спасибо!
Спасибо за четкое и понятное решение вопроса " Перед Закрытием формы 1с"! Хотелось бы разобрать с вашей помощью работу Конвертации 2.0, особенно, когда меняется тип документа)))
В некоторых версиях платформы параметр "ЗавершениеРаботы" принимает значения не "Ложь" и "Истина", а "Неопределено" и "Истина". Поэтому в подобных задачах я предпочитаю использовать условие: "Если Не ЗавершениеРаботы = Истина Тогда"
@Lenar A Либо при публикации на последней вкладке включить отладку и выбрать необходимый протокол, либо в строке подключения после названия базы использовать ключ ?debug З.Ы. есть ещё модификация первого способа - внести необходимую запись в vrd-файл вручную
Стоило тогда добавить еще обработку закрытия приложения что бы тоже вопрос задавался а не просто терял изменения. (использование ТекстПредупреждения + ЗавершениеРаботы + Отказ)
Интересно решение вот такой задачи. Есть документ в котором работает пользователь допустим "счет на оплату" пользователь может одновременно открыть таких документов несколько. Как посчитать сколько он проработал с тем или иным документом.
Задаю себе вопрос - почему седеет волос? Год за годом связки рвал - твёрдым стал мой голос Удивляюсь сам себе - может это старость? Дуновеньем ветерка вдруг ко мне подкралась… Нет!! Я молодой!.. просто седойй снег упалл на плеечи..
Не пойму, вы объявили булеву переменную ЗакратиеПодтверждено, не присвоив ей значение (присваиваете "ложь" почему-то только в конце кода), а потом в Процедуре уже спрашиваете Если НЕ Закрытие подтверждено... Откуда программа понимает на этом этапе значение проверяемой переменной??? 🤷♂️
При обращении к модулю в первую очередь выполняется код который находится вне процедур и функций. Поэтому определение переменной и присвоение ей значения "Ложь" произошли практически одновременно. Просто так принято: определение делать в начале модуля, а прочий программный код в конце модуля.
Добрый день! Спасибо! Интересно создание простейшего WEB-сервиса
Поддерживаю
Наконец-то вернулся! Иван, привлеките спонсора (ненавязчивого) и пилите больше подобных видеороликов, а для тех, кто уже зарабатывает на 1С "включите донат". Сделайте видеосправочную с Вашим подробным объяснением. Ваша подача лучше всего усваивается, но я нескоро начну с этого зарабатывать. Хочется роликов не от задачи, а от "Синтакс-помощника", т.е. разбора отдельных методов, функций, процедур и событий, к примеру: метод "Сообщить"(если я его правильно называю) выполняет "это", "то" и "вот это", применяется при "этом", "том" и "вон там", т.е. как можно больше использований в практике одного элемента языка в одном ролике. Так можно будет напилить огромное количество роликов и обращаться через поиск и когда нужно находить нужные элементы для разработки. Синтакс-помощник тяжело усваивается и не даёт необходимого понимания при обращении к нему. В любом случае, спасибо за контент!
Большое Вам спасибо! Сегодня мне, новичку, открылась ещё одна полезная возможность программы!
Спасибо за урок. Замечу, что существует процедура (по крайней мере в УНФ) ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы, которая также позволяет выполнять закрытие формы с подтверждением. При этом процедуры обработки оповещения о завершении не требуется, а нужен реквизит формы (тип булево), который является признаком того, нужно ли показывать диалог подтверждения.
Это в БСП такое, там за вас всё написали. В самописной нетленке надо самому.
До, было бы интересно разбор задач с решениями как в самописной так и типовой, тем-более новая рубрика видеоуроков
Разница только в том, что это оповещение находится в общем модуле. Обращение к общему модулю все так же придется добавить ПередЗакрытием.
попробовал процедуру БСП, мне она не понравилась тем что открывается окно с вопросом не моментально, происходит некая задержка, если прописать самому такую процедуру то вопрос будет открываться быстрее. Думаю это связано с тем что в процедуре бсп используется ПодключитьОбработчикОжидания.
При такой реализации вопрос так же будет задаваться и при нажатии на кнопку "Перенести в документ". В обработчике этой кнопки так же необходимо добавить "ЗакрытиеПодтверждено = Истина", чтобы не было лишних вопросов. А вообще, я бы использовал признак модифицированности формы (свойство формы "Модифицированность"). Это позволит так же избежать лишних вопросов, если, например, пользователь ни чего не добавил в корзину. Ну и для полноты картины не плохо бы было упомянуть про назначение параметра "ТекстПредупреждения" обработчика формы "ПередЗакрытием".
Спасибо за развернутый комментарий, Павел)
Спасибо, Иван! Как обычно четко и по делу.
Ты лучший. Смотрел много обучалок, тут всё понятно !
Благодарю за полезные видео!!!
Спасибо большое! Очень помог!
Хотелось бы еще раскрыть тему оповещений пользователя (на клиенте) во время длительных операций на сервере, когда процесс занимает много времени и обрабатывается большое количество информации, например, при загрузке данных из файла с большим количеством строк. Я думаю, эта тема для многих актуальна) Спасибо!
Поддерживаю
Поддерживаю
Спасибо огромное за прекрасное объяснение
Добрый ден! Ждем мини курс по web-сервисам
спасибо за идею для новых материалов)
Спасибо за четкое и понятное решение вопроса " Перед Закрытием формы 1с"! Хотелось бы разобрать с вашей помощью работу Конвертации 2.0, особенно, когда меняется тип документа)))
Хотелось бы видеть ролики о подключении торгового оборудования и работе с электронной подписью
ещё актуально). Круто спасибо)
Добрый день. Спасибо за видео. Напомню так ненавязчиво хотелось бы видео о работе с внешними компонентами. 😎
Самый крутой канал
В некоторых версиях платформы параметр "ЗавершениеРаботы" принимает значения не "Ложь" и "Истина", а "Неопределено" и "Истина". Поэтому в подобных задачах я предпочитаю использовать условие:
"Если Не ЗавершениеРаботы = Истина Тогда"
Я тоже на этом моменте озадачился!
Не понятно, какое значение у этой переменной будет по умолчанию или будет ли оно вообще🤷♂️
Спасибо, коротко и понятно! Как тестировать и отлаживать ошибки если программа запущена под веб клиентом?
@Lenar A Либо при публикации на последней вкладке включить отладку и выбрать необходимый протокол, либо в строке подключения после названия базы использовать ключ ?debug З.Ы. есть ещё модификация первого способа - внести необходимую запись в vrd-файл вручную
4:44 Надо поместить определение значения переменной в теле модуля в инструкцию чтобы действие избыточно не отрабатывало на сервере
Сначала прочитал: "Как задать вопрос, перед закрытием фИрмы 1С" 😆😆😆
Не пугайте так Иван)
По Фрейду.
Думаю, что можно было бы дополнительно показать способ решения данной задачи с помощью асинх метода.
Эти асинх от лукавого.
Не знаю было или нет разберите логику проверки данных перед сохранением/проведением документа.
Стоило тогда добавить еще обработку закрытия приложения что бы тоже вопрос задавался а не просто терял изменения.
(использование ТекстПредупреждения + ЗавершениеРаботы + Отказ)
Как вы вызвали помощник создания новой процедуры?
Пишем "Проц", затем нажимаем Ctrl+q
Нужно в конфигураторе включить автозамену (Сервис - Параметры - Модуль - Автозамена)
Как сделать такую кнопку?
Подскажите, пожалуйста, каким образом можно перенести в общий модуль эти конструкции и вызвать в форме одной процедурой?
Посмотрите пример в типовой УТ: disk.yandex.com/i/RgDAtboO8pFAEg
В данном примере проще сделать
&НаКлиенте
Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка)
Если ЭтаФорма.Модифицированность = Ложь Тогда
Отказ = Истина;
ПоказатьВопрос(Новый ОписаниеОповещения("ПослеЗакрытияВопроса",ЭтотОбъект,),"ЗакрытьФорму",РежимДиалогаВопрос.ДаНет);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПослеЗакрытияВопроса(п1,п2) Экспорт
Если п1 = КодВозвратаДиалога.Да Тогда
ЭтаФорма.Модифицированность = Истина;
Закрыть();
КонецЕсли;
КонецПроцедуры
Интересно решение вот такой задачи. Есть документ в котором работает пользователь допустим "счет на оплату" пользователь может одновременно открыть таких документов несколько. Как посчитать сколько он проработал с тем или иным документом.
Для начала нужно научиться пользоваться запятыми. А там и до математики недалеко.
@@Anton-ni8un Вы хотите со мной о математике поговорить? Может стоит научиться Вам не давать не нужных комментариев?
@@flamelynxX, 1. Если с запятыми, то можно поговорить о чем угодно. 2. Научитесь, я не против.
@@Anton-ni8un Я Вашего разрешения и не спрашивал.
@@flamelynxX, как не спрашивали? Вы прямым текстом об этом спросили.
Создание фонового процесса
В форме подбора товаров спрашивать подтверждение имеет смысл только если корзина не пустая. А иначе это будет раздражать пользователя.
Да, форму подбора тут использовали больше для примера)
Тема: Выполнение длительных операций
Топчик
0:58 опечатка в "Esc" : )
А перенос корзины?
Это отдельная тема))
Задаю себе вопрос - почему седеет волос?
Год за годом связки рвал - твёрдым стал мой голос
Удивляюсь сам себе - может это старость?
Дуновеньем ветерка вдруг ко мне подкралась…
Нет!! Я молодой!.. просто седойй снег упалл на плеечи..
Не пойму, вы объявили булеву переменную ЗакратиеПодтверждено, не присвоив ей значение (присваиваете "ложь" почему-то только в конце кода), а потом в Процедуре уже спрашиваете Если НЕ Закрытие подтверждено... Откуда программа понимает на этом этапе значение проверяемой переменной???
🤷♂️
При обращении к модулю в первую очередь выполняется код который находится вне процедур и функций. Поэтому определение переменной и присвоение ей значения "Ложь" произошли практически одновременно. Просто так принято: определение делать в начале модуля, а прочий программный код в конце модуля.
@@Anton-ni8un Этого не знал, спасибо)) Я просто привык читать и прокручивать код в голове последовательно сверзу вниз.🤷♂️
1С старалась, старалась придумывала ВопросАсинх, а вы все какие -то богомерзкие оповещения используете.
Асинх от лукавого.
И не работает в старых конфигурациях. Кто будет эти конфигурации поддерживать, если программист знает только асинх?
@@Anton-ni8un Ну дык надо код тогда для 7.7. пилить?
@@rupertant3950, на самом деле программист на 7.7 может даже больше зарабатывать. Все ещё большое количество компаний работает на 7.7
Не надо заводить переменные с неуникальными именами по типу "Оповещение". Это черевато глюками в причинах которых разбираться долго и нудно.
Согласен, Максим, спасибо за ценный комментарий)
Это джава на русском?
yes
@@Anton-ni8un ponyal
ll mom p😊