Доработка 1С. Запрет редактирования проведенных документов

Поділитися
Вставка
  • Опубліковано 2 жов 2024
  • КАК ДОБАВИТЬ ФУНКЦИОНАЛ ЗАПРЕТА РЕДАКТИРОВАНИЯ ПРОВЕДЕННЫХ ДОКУМЕНТОВ В 1С?
    Привет, друзья! Иногда нужно установить запрет на редактирование уже проведенных документов в открытом периоде. Сегодня мы покажем как, реализовать такой функционал в типовой конфигурации 1С, не снимая конфигурацию с поддержки, используя механизм расширений в 1С.
    Расширение для 1С:Бухгалтерия (базовая) 3.0:
    clck.ru/x9nty
    🔵Записаться на курс "Профессия программист 1С: с нуля до профи": ironskills.by/...
    Поддержать канал можно по ссылке: donate.stream/...
    #1с с #ironskills
    ---
    С уважением, команда IRONSKILLS

КОМЕНТАРІ • 119

  • @nurtikplayzygggyy8904
    @nurtikplayzygggyy8904 5 місяців тому +1

    Самый лучший канал по Разработке в 1С.
    В будущем если будут вебинары с удовольствием буду присутствовать!

    • @ironskills-1c
      @ironskills-1c  4 місяці тому

      Спасибо за просмотр и комментарий)

  • @romanjuravleff5728
    @romanjuravleff5728 2 роки тому +4

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

  • @190slava190
    @190slava190 2 роки тому +1

    Спасибо. Очень хорошая подача материала.

  • @timurdanilenko3582
    @timurdanilenko3582 2 роки тому +9

    Более правильным, в данном случае, было бы врезаться в метод ИзменениеЗапрещено. Сначала проверим наш запрет, затем (если по нашему запрету можно редактировать), вызовем метод из конфигурации (ПродолжитьВызов). Такая реализация позволит не только интерактивно запрещать редактировать, но и когда документ записывается программно.

  • @АлексейБабичев-у2ы
    @АлексейБабичев-у2ы 2 роки тому +1

    Отличная подача, молодец! В 1С давно, но было интересно!! Единственное, тут наверно платформа была с лицензией проф, так как на базовой лицензии расширения вроде не работают.

  • @solinik
    @solinik 2 роки тому +1

    Просто, но изящно. Спасибо!

  • @mynumbers5746
    @mynumbers5746 Рік тому

    Формат разбора задачь ОГОНЬ ! ПРям чувствуешь как НЕО в матрице, впитыешь 1сКунфу. И по скорости видео тоже отлично. Что-то по архитектуре можно было добавить, если бы вы комментировали, что такой-то подход ведёт к нагрузке сервера, другой подход более трудоёмкий. И обошлись без запросов в этот раз. Лайк501

  • @msg62msg59
    @msg62msg59 2 роки тому +8

    Иван, огромное спасибо! Поясняешь каждое действие, и всё понятно.

  • @shuvol7516
    @shuvol7516 2 роки тому +1

    Иван, спасибо за новое видео, как всегда, все очень ясно и понятно (кто ясно мыслит, тот ясно излагает), небольшое уточнение, вы показывали на БП базовой, в базовую версию не получится подключить расширение(кроме патчей 1с), если она не подключена к полной версии платформы, стоит это уточнить для желающих повторить

    • @ironskills-1c
      @ironskills-1c  2 роки тому +1

      Согласен, упустил этот момент. Спасибо большое, в будущем буду стараться упоминать такие вещи)

  • @iglikoff
    @iglikoff 2 роки тому +12

    Комментаторы, вы тут все такие "на опыте". А реально, по-любому пишите говно-код, который потом не разобрать. Изучайте принципы ООП и SOLID. Это единственный 1с программист, который доходчиво объясняет в ютубе) Жду новый контент

    • @БипейШтифонов
      @БипейШтифонов 2 роки тому +3

      Может ты тогда почитаешь про нормальные формы баз данных? Ничего что он их тут нарушает? " Принципы солид ООП", а базу по нормальным формам ? Какое склеивание строк, какая константа с неограниченной длиной. Регистр сведений - самый лучший вариант. При этом я не говорю, что это плохо, рынок хочет быстро и дешево, так пусть получает такие решения

    • @mendicator4319
      @mendicator4319 2 роки тому

      @@БипейШтифонов его решение изящнее, какой нах регистр сведений

    • @БипейШтифонов
      @БипейШтифонов 2 роки тому +1

      @@mendicator4319 и правда, а зачем мы тогда вообще заморачиваемся и храним данные в различных таблицах? Может тогда также через запятую в строку, и в константу, у нее же неограниченная длина, ой как удобно 😍

    • @mendicator4319
      @mendicator4319 2 роки тому +1

      @@БипейШтифонов константа тоже таблица, причем конкретно эта мизерного размера. Чтение скуля практически мгновенное. Разницы что ты будешь читать из регистра или из такой константы нет. И да, в 1С нет нормальных форм базы данных, везде избыточность

    • @БипейШтифонов
      @БипейШтифонов 2 роки тому

      @@mendicator4319 да, одна таблица на одну константу? А вот в старых платформах, которые до сир пор ходят, это одна таблица, где хранятся все константы. ОЧЕНЬ вкусно туда записывать большие строки. Я о том, что да, по скорости это будет одно и тоже. Но формы придумали не просто так, это масштабируемость. Если завтра вам придёться добавить новую колонку к этой табличке, или поменять логику работы? Как же удобно работать со стройкой и раскладывать ее постоянно, ну просто прекрасно. Да и правда, избыточность просто необходима на сегодняшний день, некоторые правила просто морально устарели, но блин, первым правилом пользуются все на уровне интуиции. Зачем пихать разнородную информацию в одну сущность, это неправильно.

  • @YuryBatiaev
    @YuryBatiaev 2 роки тому +6

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

  • @Yevhen-x5z
    @Yevhen-x5z 2 роки тому +1

    Как всегда, ясно-понятно!
    Иван, хотелось бы разобраться, как через расширение редактировать, вывести пользовательскую колонну в табличную часть Приходная накладная с (цена товара в usd)
    Спасибо. Круто!

    • @tym1980
      @tym1980 2 роки тому +1

      откройте форму в конфигурации, в разделе "реквизиты", и основной реквизит (как правило это Объект) поместите в расширение. Только после этого можно изменять форму в расширении

  • @PTolkachev
    @PTolkachev 2 роки тому +3

    Я бы не стал помещать пустую строку в константу "IS_ИменаЗапрещенныхДляРедактированияДокументов" если выбрали вариант запрета отличный от "Использовать для выбранных". Это позволило бы сохранять список документов в случае, если, например, потребовалось временно отключить запрет. А в реализованном варианте в таком случае придётся вспоминать, какие именно документы были запрещены и заново проставлять все нужные флаги.

  • @ronnnnie85
    @ronnnnie85 2 роки тому +5

    Спасибо. Отличный формат. Особенно интересны задачи с типовыми конфигурациями.

  • @СашаИванов-н7ж1к
    @СашаИванов-н7ж1к 2 роки тому +4

    Огромное спасибо за видео! Формат нравиться, хорошо что задачу Вы показали от начала и до конца, на типовой - это супер!

  • @OspanovSerik
    @OspanovSerik Рік тому

    Супер!

  • @Ren6684
    @Ren6684 2 роки тому +2

    Можешь сделать видео? Есть обработка и на стороне сервера происходит длительная операция например нужно много документов перебрать каким то оброзом изменить. И что бы пользователь не видел крутящиеся колесеко, вывести прогресс бар, которое покажет сколько еще ждать

    • @ironskills-1c
      @ironskills-1c  Рік тому +1

      Спасибо за идею, Антон, постараемся сделать что-то подобное)

  • @PTolkachev
    @PTolkachev 2 роки тому +2

    Процедуру "ОбновитьВидимостьВидовДокументов" можно сделать НаКлиентеНаСервереБезКонтекста и параметром передавать форму. Тогда не будет лишнего (и не нужного) серверного вызова при изменении значения реквизита на форме.

  • @MrDoctorRoot
    @MrDoctorRoot 2 роки тому +3

    Спасибо за видео, всё по делу. Единственное не хватает проверки на выбор хоть одного документа из списка)

  • @СергейТ-ж9г
    @СергейТ-ж9г Рік тому +3

    Просто супер. Очень грамотные и толковые пояснения. Автору респект и уважуха.

  • @letoosenpapirosim
    @letoosenpapirosim 8 місяців тому +1

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

    • @ironskills-1c
      @ironskills-1c  6 місяців тому

      Спасибо за комментарий)

  • @Forest_dahfksd
    @Forest_dahfksd 6 місяців тому +1

    А с помощью внешней обработки можно будет изменять такие документы. Я бы на такой вариант тоже сделал бы проверку ))

    • @ironskills-1c
      @ironskills-1c  6 місяців тому

      Да, программист изменить документ программно (из кода) сможет)

  • @Дмитрий-й8й7ч
    @Дмитрий-й8й7ч 2 роки тому +1

    Большое спасибо за Ваш труд. Можно уточнить по одному моменту: для чего раскладывать строку в массив, для поиска, а не искать сразу в строке? Это оптимальнее для скорости поиска или какая-то другая причина? Или просто приведен один из вариантов возможной реализации? Интересуюсь без "задней мысли", просто при использовании строк с разделителями как варианта некого списка, я произвожу поиск сразу в этой строке с разделителями (естественно если такая строка относительно небольшого размера), поэтом если мой вариант медленнее или затратнее по памяти, я буду использовать Ваш метод.

    • @ironskills-1c
      @ironskills-1c  2 роки тому

      Здравствуйте, Дмитрий!) В видео показан лишь пример реализации, искать в строке тоже можно)

    • @denisbabiuc8389
      @denisbabiuc8389 Рік тому

      @@ironskills-1c Вот тоже самое думал при просмотре видео (насчет массивов и строк). Зачем в цикле создавать массив, а потом из него строку с разделителями. Неужели нельзя было сразу в цикле создавать строку константы добавляя виды документов? Огромное спасибо за Ваш труд! Всегда рад Вашим новым видео. Удачи!

    • @denisbabiuc8389
      @denisbabiuc8389 Рік тому

      @@ironskills-1c Ниже увидел все за и против.

  • @WackyMan
    @WackyMan 10 місяців тому +1

    Для ут такой настройки нет

  • @ITStudent-th7ow
    @ITStudent-th7ow 2 місяці тому

    А как на счет принудительно подписывать все документы на событие перед записью, и в оброботчике ругатся на запрет изменение ?

  • @WhoAmI-sx6fb
    @WhoAmI-sx6fb 2 роки тому +1

    А есть список плана по видео? Когда примерно ждать обновление не типовых и настройка sql и 1с сервера кластера

  • @AlisherKarimov96
    @AlisherKarimov96 11 місяців тому +1

    Отлично! Вот это я удачно попал. Как раз на работе поставили задачу разработать дополнительный запрет для определенных док-в, в том числе в разрезе пользователей. Но можно ведь реализовать такой же, более полноценный и гибкий инструмент.
    Спасибо Иван. Разбор задач класс👍

  • @cilantro_bumblebee
    @cilantro_bumblebee 2 роки тому +2

    Фоновая музыка огонь) на экзамене конечно за запись конкатинации текста в константу оценку снизили бы. Регистр сведений однозначно. Строки неограниченной длины это зло.

    • @ironskills-1c
      @ironskills-1c  2 роки тому

      Согласен, но не хотелось усложнять) А вообще строки неограниченной длины в типовых сплошь и рядом)

  • @ЯнаЖжж
    @ЯнаЖжж 6 днів тому

    А почему у меня не ставится флаг не ограниченная длинна у константы ?

  • @kalambur729
    @kalambur729 2 роки тому +1

    Отличный формат! Без воды. Просьба указывать версию платформы.

  • @vitalikos2010
    @vitalikos2010 2 роки тому +1

    Огромное спасибо! Особенно за принцип выбора элементов "галочками", а то я уже отчаялся в попытка сделать такой механизм выбора...

  • @Ren6684
    @Ren6684 2 роки тому +1

    Видео просто находка!!! Лайк однозначно! Давай больше таких видео!!!!

  • @provseiobovseh
    @provseiobovseh Рік тому +1

    А как сделать чтобы пользователь видел только свои документы, и редактирование разрешено. А чужие нет. Это РЛС. Но все осложняется, то что это фреш.

    • @ironskills-1c
      @ironskills-1c  Рік тому

      Да, Михаил, это надо настраивать на уровне профиля групп доступа ограничение по ответственному...

  • @cam_180
    @cam_180 Рік тому +1

    Спасибо, отличный материал.

  • @andreyblokhin6195
    @andreyblokhin6195 2 роки тому +1

    Здравствуйте! Спасибо за видео! Скажите, почему сразу после
    ...
    ИмяДокумента = МетаданныеОбъекта.Имя;
    ИменаЗапрещенныхДокументов = Константы.IS_ИменаЗапрещенныхДляРедактированияДокументов.Получить();
    ...
    Мы сразу не используем
    ...
    Если СтрНайти(ИменаЗапрещенныхДокументов, ИмяДокумента) Неопределено Тогда
    ...
    а получаем из строки массив строк МассивЗапрещенных?

    • @dasant4ever929
      @dasant4ever929 2 роки тому +2

      ИмяДокумента может быть частью имени другого документа.

  • @PTolkachev
    @PTolkachev 2 роки тому +1

    После внедрения данного решения "как есть" сразу пользователи прибегут с жалобами, что они не могут документы открыть, потому что у них ошибка прав доступа. Т.к. текущая реализация работает только под полными правами. Всем остальным ролям чтение новых констант не доступно и при попытке прочитать их значение в функции проверки приведёт к данной ошибке.
    Есть два варианта:
    1. Перед проверкой устанавливать привелигированный режим вызовом функции "УстановитьПривилегированныйРежим(Истина)".
    2. В расширение добавить одну из базовых ролей, например, БазовыеПраваБСП, и добавить в расширении для этой роли права на чтение новым константам.

    • @ironskills-1c
      @ironskills-1c  2 роки тому

      Спасибо за дополнение, Павел. Добавлю только, что для расширений есть флаг "Использовать основные роли для всех пользователей". При установленном флаге пользователи не прибегут ;)

  • @VasEkStart
    @VasEkStart Рік тому +1

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

  • @PTolkachev
    @PTolkachev 2 роки тому +2

    В при чтении на сервере проверить, что текущий объект - документ можно гораздо проще:
    Если Метаданные.Документы.Содержит(ТекущийОбъект.Метаданные()) Тогда
    ...
    ну и можно обойтись без использования массива запрещенных, а ограничиться поиском по подстроке:
    Если СтрНайти(ИменаЗапрещенныхДокументов, ИмяДокумента) > 0 Тогда
    ...
    Мой вариант функции IS_ИзмененияЗапрещены
    =======================================================
    Функция IS_ИзмененияЗапрещены(ТекущийОбъект)
    УстановитьПривилегированныйРежим(Истина);
    МетаданныеОбъекта = ТекущийОбъект.Метаданные();
    Если Метаданные.Документы.Содержит(МетаданныеОбъекта) Тогда
    ВариантЗапрета = Константы.IS_ВариантЗапретаРедактирования.Получить();
    Если ВариантЗапрета = Перечисления.IS_ВариантыЗапретаРедактирования.ИспользоватьДляВсех Тогда
    Возврат Истина;
    ИначеЕсли ВариантЗапрета = Перечисления.IS_ВариантыЗапретаРедактирования.ИспользоватьДляВыбранных Тогда
    ИменаЗапрещенныхДокументов = Константы.IS_ИменаЗапрещенныхДляРедактированияДокументов.Получить();
    Возврат СтрНайти(ИменаЗапрещенныхДокументов, МетаданныеОбъекта.Имя) > 0;
    КонецЕсли;
    КонецЕсли;
    Возврат Ложь;
    КонецФункции
    =======================================================

    • @aasamola
      @aasamola 2 роки тому +2

      Поиск по подстроке, можно словить ошибку, если одно имя документа будет в составе другого имени документа («АвансовыйОтчет», «АвансовыйОтчетНовый»). И лучше использовать не массив, а структуру, и проверять через Свойство, это позволит исключить моменты связанные с регистрами букв, вдруг в имени документа поменяют в одном символе регистр (редкий случай, но возможность такого исключать нельзя). Ну и соответственно тогда и разделитель использовать вместо «;» - «,».
      ИменаЗапрещенныхДокументов = Новый Структура (Константы.IS_ИменаЗапрещенныхДляРедактированияДокументов.Получить());
      ЗначениеПометки = ИменаЗапрещенныхДокументов.Свойство(ИмяДокумента);

    • @ironskills-1c
      @ironskills-1c  2 роки тому +1

      Спасибо большое, Павел, за то что поделились альтернативным способом решения👍

    • @ironskills-1c
      @ironskills-1c  2 роки тому +1

      Спасибо, Алексей!)

  • @ВикторАкимов-и6г
    @ВикторАкимов-и6г 10 місяців тому +1

    Видео очень познавательное.

  • @ВасилийТабуреткин-н3ь
    @ВасилийТабуреткин-н3ь 10 місяців тому +1

    Всё понятно. Вопросов нет. Препод супер!

  • @Elitte2012
    @Elitte2012 2 роки тому +1

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

    • @ironskills-1c
      @ironskills-1c  2 роки тому

      Нет, поскольку при закрытии месяца документы проводятся программно, а запрет сделали только при проведении из формы.

  • @Feofan4ik
    @Feofan4ik 2 роки тому +1

    Как всегда высшая оценка по шкале крутости.

  • @ПавелПавел-ы1в
    @ПавелПавел-ы1в 2 роки тому +1

    Спасибо большое, отличное видео, особенно для тех, кто только начинает.

  • @СергейСачков-б6о
    @СергейСачков-б6о 2 роки тому +1

    Почему то расширение не работает на ручные операции, может из-за того что у него нет статуса не проведен, либо проведен, либо помечен на удаление

    • @ironskills-1c
      @ironskills-1c  Рік тому

      Нужно проверить, может быть для документа "Операция" не используется дата запрета редактирования (т.е. дата запрета на эти документы не влияет)

  • @neurabrain
    @neurabrain 5 місяців тому

    не совсем понятно - зчем такая функция нужна, ведь у пользователя все равно есть возможно распровести изменить и снова провести. Логичнее функция запрета любого изменения проведенного документа в том числе и распроведения, при этом целесообразно было бы создать кнопку на документе или некую форму в которой формировался бы запрос на разрешение распроведения документа, и если запрос утверждается, то возможность распровити и изменить документ появляется. А эта функция странная - не понятно какой смысл эти ограничения несут? если это просто для обучения и смысла реального действительно нет, то вопросов нет, видео познавательное

    • @ironskills-1c
      @ironskills-1c  4 місяці тому +1

      Да, это скорее учебный пример, чем окончательное решение)

  • @Феруз-п7в
    @Феруз-п7в 5 місяців тому

    Респект Вам🎉

  • @РоманЧип-с5ч
    @РоманЧип-с5ч 2 роки тому +1

    Было очень интересно, Спасибо!

  • @ИльяХрусталев-е4д

    Спасибо за видео! Формат очень нравится. Подскажите, пожалуйста, чем можно заменить использование констант, т.к. типовая конфигурация в режиме совместимости 8.3.14, а константы в данном режиме не поддерживаются.

    • @ironskills-1c
      @ironskills-1c  Рік тому +1

      Здравствуйте!) Можно создать план видов характеристик (ПВХ), в нём реквизит "Значение", и хранить предопределенные значения в этом ПВХ)

    • @ИльяХрусталев-е4д
      @ИльяХрусталев-е4д Рік тому

      Спасибо!@@ironskills-1c

  • @vladislavvassiliev7482
    @vladislavvassiliev7482 Рік тому

    При проверке вхождения документа в список запрещённых, не быстрее было бы искать в строке-константе название документа? Конечно, добавив ";" в начало и с конец обеих строк.

  • @Imstalcon
    @Imstalcon 2 роки тому +1

    Отличное видео, узнал много нового!

  • @АлексейГуськов-з2х
    @АлексейГуськов-з2х 2 роки тому +1

    Суперпонятное объяснение!

  • @provseiobovseh
    @provseiobovseh Рік тому +1

    Круто

  • @vladtrue4854
    @vladtrue4854 2 роки тому +1

    Отличное видео 👍

  • @lexxkrt
    @lexxkrt Рік тому

    а если добавится вариант запрета (разрешения) то сразу все сломается, нужно не иначе делать, а иначеесли с проверкой варианта запрета, даже если нет других вариантов, они могут появиться в будущем, типичный 1эсовский подход, моё работает, а дальше пофиг

    • @ironskills-1c
      @ironskills-1c  11 місяців тому

      Спасибо за комментарий) Решение не претендует на готовое решение, это лишь учебный пример, показывающий алгоритм решения задачи.

  • @МихаилАаа-д3ю
    @МихаилАаа-д3ю 2 роки тому +1

    Класс!

  • @litmagics
    @litmagics Рік тому

    Уровень объяснения материала у Ивана в режиме - БОГ!

  • @АлексейПросвиров-ф3д
    @АлексейПросвиров-ф3д 9 місяців тому

    Спасибо! Прекрасный урок!!!!

  • @АндрейЩетников-й1д
    @АндрейЩетников-й1д 2 місяці тому

    Как-то раз устраивался на работу. Узнал, что делали много доработок в типовых конфигурациях.
    Спрашиваю, вы периоды закрываете?
    Да, говорят, закрываем.
    Ну, думаю - молодцы, хорошо дорабатывают...
    Спустя какое-то время я понял, они закрывали период для редактирования😂

  • @halokon47
    @halokon47 2 роки тому

    чет задача странная) редактировать нельзя, но снять с проведения проведенный документ можно)!

    • @arkadiyezhov4481
      @arkadiyezhov4481 2 роки тому

      тот же вопрос. Для нужд упр. и регл учета это мегадырень. Тоесть Мареванне из бухгалтерии нельзя лезть в сданный закрытый период, но если она распровведет док то можно. Браво! Но все же думаю тема показа не о правильности логики изменений..

    • @ironskills-1c
      @ironskills-1c  2 роки тому +1

      это можно сказать защита от случайного проведения, например, когда пользователи повально закрывают формы документов кнопкой "Провести и закрыть")

  • @Наблюдатель-к5ч

    Хотелось бы видео а запрете на просмотр опред. Бух. Счетов, напр. Сч.70.

    • @ironskills-1c
      @ironskills-1c  Рік тому

      Спасибо за идею для ролика

  • @vika5247
    @vika5247 Рік тому

    Спасибо огромное!!! ♥

  • @МаксимДонцов-ч8з
    @МаксимДонцов-ч8з 2 роки тому +2

    Видео познавательное, буду использовать новые знания в работе. Хотелось бы видео по созданию внешней обработки для регламентного задания(запуск команд объектов, формирование файлов и отправка на почту клиентам)

  • @КириллЖигалов-л7ю

    Класс, спасибо!

  • @dasant4ever929
    @dasant4ever929 2 роки тому +1

    Зачем массив собирать, а потом в строку склеивать? Можно же было сразу в цикле итоговую строку сформировать

    • @LiffeApp
      @LiffeApp 2 роки тому

      Реально. Что то он намудрил.

    • @timurdanilenko3582
      @timurdanilenko3582 2 роки тому +1

      @@LiffeApp такой способ формирования быстрей, чем через конкатенацию.

    • @МихаилАаа-д3ю
      @МихаилАаа-д3ю 2 роки тому

      @@timurdanilenko3582 Ничего подобного. Тем более, что в итоге все равно будет конкатенация.

    • @mendicator4319
      @mendicator4319 2 роки тому +2

      Через строку конкатенация это колхоз

    • @timurdanilenko3582
      @timurdanilenko3582 2 роки тому

      @@МихаилАаа-д3ю нет, не тоже самое. Когда мы складываем строки, проге приходиться увеличивать количество памяти, занимаемой строковой переменной (как динамические массивы в дельфи и пр.), т.к. мы изначально выделили мало памяти (собственно сколько памяти нужно, в 1С указать нельзя). А метод СтрСоеденить вычисляет длину конечной строки, сразу создает переменную с нужной длиной и при конкатенации не нужно наращивать память. Примерно так это работает.

  • @NoBodyAnyBody32
    @NoBodyAnyBody32 Рік тому +1

    +100500

  • @Rio3000ful
    @Rio3000ful 2 роки тому +4

    Формат разбора задач супер. Лайк! p.s. иконку с автором бы поменьше сделать. в ~1,5 раза и фоновую музыку не включать))

    • @ЕвгенияПетрова-л9ы
      @ЕвгенияПетрова-л9ы 2 роки тому

      А у Вас свой канал есть? Или Вы только на чужих каналах советы раздаете?

  • @justserg4891
    @justserg4891 2 роки тому +1

    Условие видимости 1 строкой делается) примерно: Видимость = Вариант = Перечисление;
    В расширяемой функции тоже проще можно сделать: Возврат Результат ИЛИ РезультатИзменениеЗапрещено;
    Зачем городить ненужные кучи строк кода, но для новичков пойдет.

    • @ironskills-1c
      @ironskills-1c  2 роки тому

      спасибо за комментарий) да, можно короче, но хочется, чтобы начинающим тоже было понятно)

  • @Сахот
    @Сахот 2 роки тому +1

    Спасибо за видео! Формат нравится. Был пропущен момент с переносом галок справа налево.

  • @Андрей-ц6ъ9ф
    @Андрей-ц6ъ9ф 2 роки тому +2

    Спасибо за данный урок. Очень информативно. Единственное пожелание - убрать музыкальный фон.

    • @vama9606
      @vama9606 2 роки тому +1

      Я даже музыку не заметил) Слушал на скорости 1.5.