Процедуры и функции в 1С 8.3: чем они отличаются и как их использовать

  Рет қаралды 165,874

Школа 1С - видеоуроки бесплатно

Школа 1С - видеоуроки бесплатно

7 жыл бұрын

Ключевое отличие процедуры от функции в 1С и других языках программирования. Примеры использования данных конструкций. Оператор "Возврат".
Читайте статьи по 1С на нашем сайте:
programmist1s.ru/materialyi-po...

Пікірлер: 124
@Alex345674
@Alex345674 6 жыл бұрын
все классно. Без лишних слов,все по делу, без нуятины и без этих надоедливых "ээээ" через каждые 5 секунд. Ваши уроки очень интересны и бесконечно полезны
@user-do8ns6cx5i
@user-do8ns6cx5i 5 жыл бұрын
Блин, он реально гений-обучений! Человек реально думает - как лучше объяснить и в каком порядке подать информацию, чтобы "пазлы сложились". Много курсов пытался смотреть, у большинства авторов уже после 2...3 уроков - начинаешь понимать, что что-то "недообъяснили" исходят из того, что все элементарно, явно важные моменты не пытаются объяснить, перескакивают. Илья Леоньев - ты супер! Еще нравится, что он как бы случайно делает типовые ошибки, объясняет, почему делают эти ошибки и как правильно - и самое главное почему так правильно. Ну, просто красавчик! :)
@albert10651
@albert10651 4 жыл бұрын
подскажите, почему перед М не стоит Перем М; а потом уже М = Максимум2(ЧислоА, ЧислоБ);
@xxxsliiready
@xxxsliiready 3 жыл бұрын
@@albert10651 Потому что в операцию присваивания (знак равенства) уже включена операция определения переменной.
@user-lw8li2eq6r
@user-lw8li2eq6r 2 жыл бұрын
@@albert10651 смотри бро, после буквы "М" сразу идет знак равенства, там же сразу же присвоили имя переменной (Максимум2) Понятно?)
@user-it4bk3bs8k
@user-it4bk3bs8k Жыл бұрын
Как я тебя понимаю) Прямо сейчас прохожу такой курс и там автор как раз такой, каким ты его описал тут) Вот думаю начать по ютубу по этим роликам начать заниматься)
@user-eg5cg3lk3e
@user-eg5cg3lk3e 7 ай бұрын
Как у вас успехи, коллеги? На этом блоггере остановились или еще какой ресурс порекомендуете?
@formatceft2654
@formatceft2654 4 жыл бұрын
Однозначно Лайк! Без "воды" и все по делу!
@user-yo8pq8mu6k
@user-yo8pq8mu6k 2 жыл бұрын
Илья, огромнейшее спасибо за курс! Лучше, что мне пока встречалось, как для начинающего!
@user-oy9rc8sd5h
@user-oy9rc8sd5h 4 жыл бұрын
Так все понятно и лаконично. Только недавно начала изучать 1С и эти уроки очень помогают. Спасибо за Вашу работу))
@AlexeySvoi
@AlexeySvoi 4 жыл бұрын
Здесь звук мягче, лучше! Хорошие уроки, спасибо!
@user-dw7be6mm7h
@user-dw7be6mm7h 5 жыл бұрын
проходил курс начальной подготовки на edu.1c такой препод нудный был что нечерта за месяц не понял, Илюха ты пока что лучший в интернете по крайней мере по донесению информации слушателю! Ну это сугубо моё мнение! Спасибо!
@Gzugza
@Gzugza 4 жыл бұрын
И сугубо моё)
@user-ld5un5gg9o
@user-ld5un5gg9o 2 жыл бұрын
@@Gzugza И моё))
@zenden505
@zenden505 Жыл бұрын
А что за препод? Фамилию не скажете? Потом, если что, можно удалить, как только я прочту)
@vsevolodyurachkovskyy9638
@vsevolodyurachkovskyy9638 5 жыл бұрын
It is very, very usefull. This is the best tutorial I saw. Thank you.
@NosovYuriy
@NosovYuriy Жыл бұрын
@@user-zd2em4tt3o "Это очень, очень полезно. Это лучший туториал (обучалка) который я видел. Спасибо."
@olgadyadkina
@olgadyadkina 5 жыл бұрын
Сделала на Трех числах. Все работает. Спасибо. Только осваиваю, когда что-то не работает - включайте мозг и и ищите ошибку в коде))))) Надо больше уроков по управляемой версии.
@user-us8fz8fr3d
@user-us8fz8fr3d Жыл бұрын
Здравствуйте Илья, после ваших уроков, многое становится понятно. Скажите пожалуйста, как можно выбрать процедуру или функцию при создании в поле модуля горячими клавишами кроме ctrl+пробел
@mihaillomatsky5563
@mihaillomatsky5563 3 жыл бұрын
Небольшое замечание про переключение языков: Чтобы не переключаться, можно нажимать Alt + НомерСимволаASCII. Например для знака "
@oleksii2362
@oleksii2362 3 жыл бұрын
У меня на получается ( Как нажимать "60"?
@oleksii2362
@oleksii2362 3 жыл бұрын
Гугл помог, все ок )
@nadyar4951
@nadyar4951 6 жыл бұрын
И еще, может быть Вы подскажете, где познакомиться с темой о переходах по навигационным ссылкам, о уникальных идентификаторах
@hanty9910
@hanty9910 6 жыл бұрын
Здравствуйте. Сделайте тоже самое только на управляемом приложение, от обычного все уже уходят. И при переходе на управляемое приложение, просто ни чего не понятно. Просмотров будет еще больше. Успехов!
@user-eh1et6ls8q
@user-eh1et6ls8q 6 жыл бұрын
Спасибо, к управляемым скоро перейдем
@hanty9910
@hanty9910 6 жыл бұрын
Буду ждать, надеюсь долго ждать не придется). Успехов!
@FromCrimea
@FromCrimea 5 жыл бұрын
​@@hanty9910 Попробовал допилить раннее созданное управляемое приложение кнопкой "НайтиМакс" , всё работает , принцип тот же.
@Don_Pehot
@Don_Pehot 5 жыл бұрын
Мне нра. Подскажите как изменить иконку в УТ 10.3 например у справочника номенклатура (по умолчанию шкаф с выдвинутым ящиком).
@user-vg9zy8bc9c
@user-vg9zy8bc9c 6 жыл бұрын
Здравствуйте, делаю все в точь как у вас, у меня даже ошибка почему тоне вылезла как у вас, когда к словам Максимум добавляли (2,3) не знаю почему если честно, но когда писал формулу М = Максимум2(ЧислоА, ЧислоБ); Сообщить ("Максимум = " + М); пишет ошибку Переменная не определена (Число Б), почему?
@denisfatkulin
@denisfatkulin 7 жыл бұрын
Подскажите как вы вызываете подсказки при написании кода. Я имею ввиду в частности момент на 8:18, где у вас открыт после равно список математических функций.
@ARJV007
@ARJV007 7 жыл бұрын
В одном из предыдущих видео упоминалось об этом, комбинация CRTL + Пробел
@user-kc3fe5kl2s
@user-kc3fe5kl2s 5 жыл бұрын
Илья, Добрый День! Во-первых, спасибо за уроки! Они реально кайфовые) Во-вторых, осмысливая данный урок, спросил себя, а теперь и Вас, почему нельзя было написать такой код? ) Процедура ОсновныеДействияФормыОсновныеДействияФормыВыполнить(Кнопка) Максимум (ЧислоА, ЧислоБ); Сообщить (Максимум(ЧислоА, ЧислоБ)); КонецПроцедуры Функция Максимум(А, Б); Если А > Б Тогда Возврат А; Иначе Возврат Б; КонецЕсли; КонецФункции; т.е. в кнопке Выполнить идет вывоз процедуры, которая вызывает Функцию и сообщает результат этой функции.
@IlyaLeontyev
@IlyaLeontyev 5 жыл бұрын
Можно было. Только имейте в виду, что при нажатии на кнопку у вас лишний раз происходит вызов функции Максимум(), он не нужен, его можете удалить. Достаточно написать только Сообщить (Максимум(ЧислоА, ЧислоБ)).
@mgrup7
@mgrup7 6 жыл бұрын
В максимуме из трех и выше, саму функцию можно взять за способ проверки и ссылаться на нее, для упрощения, в случае увеличения выборки.
@sertrim
@sertrim 3 жыл бұрын
Если ">", тогда alt + 62 :) Спасибо за уроки!
@STRIZH_FPV
@STRIZH_FPV 2 жыл бұрын
Вот спасибочки
@11Gleb11
@11Gleb11 Жыл бұрын
Здравствуйте! Подскажите пожалуйста, почему на этом занятии, при запуске режимной конфигурации у меня открывается окно управляемого приложения?
@user-eh1et6ls8q
@user-eh1et6ls8q 7 жыл бұрын
Ключевое отличие процедуры от функции в 1С и других языках программирования. Примеры использования данных конструкций. Оператор "Возврат". Услуги 1С программиста в Москве: 1cproger.ru/ Читайте статьи по 1С на нашем сайте: programmist1s.ru/materialyi-po-1s/
@user-lt1it1cu6m
@user-lt1it1cu6m 4 жыл бұрын
Илья, здравствуйте! Начиная с того момента, как прописывается процедура СообщитьОМаксимуме у меня вылетала ошибка синтаксиса. Я долго не мог понять что такое, но потом поменял местами Процедуру СообщитьОМаксимуме и Процедуру кнопки (очень длинное название у которой) и все заработало! НО! Почему у Вас работает и так, а у меня нет?
@melkiy1735
@melkiy1735 3 жыл бұрын
Но функция же может быть и без слова Возврат. Зачем тогда вообще нужны процедуры?
@Ykutdza
@Ykutdza 3 жыл бұрын
Вопрос от начинающих... В чем разница между такими скобками () или такими {}? Для чего ставится ; в конце Строки? А Так же Важность наличия пробелов между текстом например "Если А > Б Тогда" Важно ли наличие пробелов между А > Б, или можно написать без пробелов А>Б? попробовал и так, и так работает, т.е. это вопрос только эстетики текста?
@annaagafonova8459
@annaagafonova8459 Жыл бұрын
Добрый день, синтаксис 1с, наверное, как и синтаксис большинства языков, в смысле пробелов достаточно гибкий. И с пробелами и без язык все сворачивает и удачно компилирует в случае если нет синтаксических ошибок. Потому да, тут больше эстетика.
@user-jn4yc2vo6j
@user-jn4yc2vo6j 3 жыл бұрын
1.Отличается-ли визуально, вызов функции от вызова процедуры? Нет ли каких либо ключевых слов ? 2.Функция должна быть описана в самом начале кода ? Я изучал Python и поэтому провожу аналогию.
@boomx2000
@boomx2000 4 жыл бұрын
норм
@user-bq8eq8db2m
@user-bq8eq8db2m 7 жыл бұрын
Почему числа в функции мы называем просто А и Б? Они же у нас ЧИСЛА? ЧислоА и ЧислоБ. Как комп с этим разбирается?
@ARJV007
@ARJV007 7 жыл бұрын
А, Б и ЧислоА, ЧислоБ это не одно и тоже. Буквы А и Б можно с таким же успехом заменить на любые другие буквы и всё будет работать. Описывая функцию, после названия функции в скобках мы перечисляем её параметры. В данном примере функция Максимум2 принимает 2 числа и сохраняет их в переменных А и Б, в функции Максимум3 - 3 числа и сохраняет их в переменных А, Б и В. Функции по большому счёту всё равно что это за числа и откуда они взяты, её задача принять эти числа, обработать их (в данном случае сравнить что больше/меньше) и что то вернуть. А вот вызывая эту функцию мы уже и указываем то что должны передать на обработку, в данном примере в функции Максимум2 это ЧислоА и ЧислоБ, но это могут быть и любые другие данные, к примеру ЧислоА и Число В, или просто обычные числа.
@kronhtein9225
@kronhtein9225 6 жыл бұрын
Смотрите матчасть Переменные. P/S Язык программирования в вашем вопросе не важен
@ovo4420
@ovo4420 6 жыл бұрын
Артём Яшнов, спасибо тебе человек
@Vicont4063
@Vicont4063 6 жыл бұрын
Максимум2 (А,Б) //А и Б переменные Процедура ОсновныеДействияФормыОсновные.... Максимум2(ЧислоА, ЧислоБ); //Это вызов числа которые нам нужно сравнить. Получется эти числа (2) и (4) летят в (1,2) тобишь (А,Б) теперь в переменной А = 2, в Б = 4, далее ПРоцедура сравнивает их из функции (ну или сама функция сравнивает) эти числа между собой и выдает уже результат. Максимум2 (А,Б) //Это переменные //Название (переменная А - которая будет хранить числоА, переменная Б - которая будет хранить числоБ).
@nomad7626
@nomad7626 5 жыл бұрын
Ну ладно, допустимя я вместо А написал Ю. И что? Где мы назначаем в системе что Ю это переменная, и что на него записана такая-то функция или число? Ведь у нас есть текстовые поля с именем "ЧислоА", как он поймет и свяжет Ю с ЧислоА, если говорите что все будет работать?
@Alex-net-brn
@Alex-net-brn 5 жыл бұрын
опущен тонкий момент, (Оператор1)ТОЧКА С ЗАПЯТОЙ ; это конец любого оператора.
@Igor-ld5pf
@Igor-ld5pf 3 жыл бұрын
Есть ли курс обучения платный ?
@user-vd6nu2zi9o
@user-vd6nu2zi9o 4 жыл бұрын
немогу понять - почему в теле процедуры пишем "М =" ? а не Макс,или Максимум..?в подсказках "М" не нашел...
@VovanTelephone
@VovanTelephone 6 жыл бұрын
Если в коде размещаю Процедуру после Функции, как в примере, то выдает ошибку "Определения процедур и функций должны размещаться перед операторами тела модуля". Когда поменял их местами - т.е. сначала идет Процедура затем Функция, то все работает. Может, что не так делаю?
@VovanTelephone
@VovanTelephone 6 жыл бұрын
проблема была в поставленной точке с запятой после "Конецфункции"
@user-hp4xr9lk8s
@user-hp4xr9lk8s 6 жыл бұрын
Здравствуйте, сделал всё точь в точь, но выходит ошибка (конецесли). где прописали функцию максимум3(А,Б,В) пришлось 2 раза подряд написать конецесли и лишь тогда начинает работать. в чём прикол понять не могу.
@user-hp4xr9lk8s
@user-hp4xr9lk8s 6 жыл бұрын
Всё спасибо, нашёл ошибку, пробел поставил случайно
@Pavel_2408
@Pavel_2408 Жыл бұрын
Добрый день, а почему когда сравниваю 10 и 100, то пишет что "Максимум - 100", а когда сравниваю 111 и 22, то "Максимум - 22"? Как так получается, что он будто просто первые цифры только сравнивает?
@user-it4on3zm7j
@user-it4on3zm7j 5 жыл бұрын
Не могу понять, что происходит. Учебная версия, нахожу максимум из 3х. В первый раз после запуска внешней обработки все получилось... Во второй раз почему то перестал видеть числоВ (А и Б видит), какое бы большое значение "В" не возвращалось, учитывается только максимум А и Б. В третий раз перестала срабатывать кнопка выполнить, то есть, она срабатывает, но сообщение не выводит... Что это может быть?
@user-it4on3zm7j
@user-it4on3zm7j 5 жыл бұрын
Чудеса, да и только: удалил реквизиты, удалил форму, создал все заново, опять работает как в первый раз. Интересно, надолго ли...
@iskanderlej
@iskanderlej Жыл бұрын
Ребята, у меня в обработчике ошибка какая-то. Не могу понять, почему перед функцией и процедурой что то стоять должно.
@user-qg6zg6nd2x
@user-qg6zg6nd2x Жыл бұрын
9:35 работает Функция2, а показывает на Функцию3. Функция выше по Модулю.
@DATO201288
@DATO201288 5 жыл бұрын
я в 1 с не силен объясните пожалуйста в чем разница между "Управляемым" и "Обычным" режимом?
@anzimin
@anzimin 5 жыл бұрын
Лучше тебе в этом вопросе изучить это более подробно, но если в двух словах - в обычном все делаешь сам, в управляемом половину вещей делает система. От этого меняется логика языка. Но для современного разработчика изучать лучше сразу управляемое
@user-vg9zy8bc9c
@user-vg9zy8bc9c 6 жыл бұрын
и показывает такое сообщение : {ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Форма(35,25)}: Переменная не определена (ЧислоБ) М = Максимум2 (ЧислоА,
@mainlord8203
@mainlord8203 6 жыл бұрын
Проверь язык переменных, может ты указал английскую M, вместо русской M
@vitaliynsk289
@vitaliynsk289 6 жыл бұрын
30 Минут искал в чем ошибка))
@QW-uj6oq
@QW-uj6oq 7 күн бұрын
То есть в 1С нету перегрузки функции?
@user-li4ji2hk2i
@user-li4ji2hk2i 3 жыл бұрын
Почему в продцедуре сообшить. Максимум2(а, б) а в сообщить о максимуме (числоА, числоБ)? Если ввше закоментировали максимум2(числрА, числоБ). Кода нудно писать числоА и число Б. А когда можно просто укачать А Б?
@user-ez7yz4ky9i
@user-ez7yz4ky9i 3 жыл бұрын
в чем ошибка подскажите плиз ({ВнешняяОбработка.ВнешняяОбработка2.Форма.Кнопки.Форма(3,15)}: Переменная не определена (ЧислаА) М = Максимум(>ЧислаБ); )
@muziklife6108
@muziklife6108 2 жыл бұрын
Должно быть Объект.ЧислаА, а не ЧислаА.
@TripolitovVladimir
@TripolitovVladimir 5 жыл бұрын
а нельзя в Сообщить() передать вызов процедуры или функции?
@TripolitovVladimir
@TripolitovVladimir 5 жыл бұрын
работает Сообщить("Максимум = " + Максимум2(А, Б));
@IlyaLeontyev
@IlyaLeontyev 5 жыл бұрын
Вызов функции - можно. Вызов процедуры - нельзя.
@VZRVEL
@VZRVEL 4 жыл бұрын
@@TripolitovVladimir Оптимизация в деле)
@gottastoppo
@gottastoppo 3 жыл бұрын
Здесь 8:56 возникает ошибка Несоответствие типов (параметр номер '2'), не понимаю, где проблема, если честно. П. С. Думала уже все, не решу, а так глупо получилось. Запятая, чтоб тебя.
@TripolitovVladimir
@TripolitovVladimir 5 жыл бұрын
у меня не было ошибок, когда две функции были определены с одинаковым названием..
@mykolayatcenko9839
@mykolayatcenko9839 3 жыл бұрын
потому что namespace разный наверное
@kilka13
@kilka13 3 жыл бұрын
не работало, пока не закомментировала //Функцию Максимум3 {ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Форма(41,11)}: Переменная не определена (B) Возврат
@user-rt3on4mw4l
@user-rt3on4mw4l 4 жыл бұрын
Плохо, что на русской раскладке пишутся команды, постоянно переводить приходится с одного языка на DRUGOY
@olegf3728
@olegf3728 4 жыл бұрын
команды можно писать как на русском языке так и на английском. разницы к примеру между "Процедура" и "Procedure" нет ни какой. в справке 1с команда на русском языке, а в скобках синтаксис на английском - Процедура (Procedure)
@Gzugza
@Gzugza 4 жыл бұрын
@@olegf3728 ага) все прям так и используют английский вариант написания) проще сделать по-другому. Например, амперсанд - & - чтоб не переключаться, я использую альт + 38 (на цифр. клав.). Также и остальные символы.
@user-vg9zy8bc9c
@user-vg9zy8bc9c 6 жыл бұрын
ВСе Я разобрался
@user-or4sy1xs5d
@user-or4sy1xs5d 5 жыл бұрын
Никита Кудрин в чем причина была? У меня такая же ошибка не могу понять что делать
@user-mr1tm5vl3t
@user-mr1tm5vl3t 3 жыл бұрын
У меня тоже пишет переменная не определена, и при чем пишет что переменные должны быть поверх функций, задал Перем ЧислоА и Перем ЧислоБ, ошибку больше не выдает, но при отладке не сообщает результат, хотя в Процедуре указано Сообщить М как у вас. В чем может быть причина? Если кто разобрался - напишите
@vladyan01
@vladyan01 2 жыл бұрын
Странно что процедуры и функции разделены.
@melkiy1735
@melkiy1735 5 жыл бұрын
Все видео у Ильи интересные. Но пока что ни у одного не увидел внятного объяснения, почему нельзя обходиться только Функцией. Например, из видео, тело процедуры поместить в функцию, ведь точно так же отработает. Зачем нужно это деление.
@stacysmind8548
@stacysmind8548 4 жыл бұрын
Разве процедура действия на кнопку не понадобится в любом случае? В ней, конечно, достаточно прописать лишь вызов функции, а все остальное прописать в функции. Но как совсем без процедуры обойтись - не понимаю что-то... Тогда же при нажатии на "Выполнить" - никакого толка
@user-vg9zy8bc9c
@user-vg9zy8bc9c 6 жыл бұрын
вот так я все указал Функция Максимум2(А,Б) Если А > Б Тогда Возврат А; Иначе Возврат Б; КонецЕсли КонецФункции Функция Максимум3(А, Б, В) Если А > Б И А > В Тогда Возврат А; ИначеЕсли Б > В Тогда Возврат Б; Иначе Возврат В; КонецЕсли КонецФункции Процедура ОсновныеДействияФормыОсновныеДействияФормыВыполнить(Кнопка) // ЧислоА > ЧислоБ = Ложь //Если {Условие1} Тогда // {Оператор1}; //ИначеЕсли {Условие2} Тогда // {Оператор2}; //Иначе // {Оператор3} //КонецЕсли; М = Максимум2 (ЧислоА, ЧислоБ); Сообщить("Максимум = " + М);
@YolyaSNZ
@YolyaSNZ 5 жыл бұрын
В чем была ошибка? Мне также пишет, не могу разобраться..
@user-yo8pq8mu6k
@user-yo8pq8mu6k 2 жыл бұрын
Дополню, может кому пригодится: запись "Если А > Б и А > В Тогда" равна записи "Если А > Б > В Тогда"
@hazrat6544
@hazrat6544 Жыл бұрын
Добрый день. Не согласен. Можно проверить просто подставив числа. Допустим: А -10 Б-5 В-8 В этом случае А>Б И А>В сработает корректно в отличие от А>Б>В
@user-yo8pq8mu6k
@user-yo8pq8mu6k Жыл бұрын
@@hazrat6544, спасибо! Про минусы не подумал.
@hazrat6544
@hazrat6544 Жыл бұрын
@@user-yo8pq8mu6k бывает. Пожалуйста
@hazrat6544
@hazrat6544 Жыл бұрын
@@user-yo8pq8mu6k Как успехи? Уже прошло пол года с момента написания этого комментария
@user-yo8pq8mu6k
@user-yo8pq8mu6k Жыл бұрын
@@hazrat6544, в общем, я до этого изучал Python, потом знакомые предложили попробовать 1С, дошёл до экзамена на 1С: Специалист по платформе. Прошёл курсы и за две недели до самого экзамена меня пригласили джуном по питону и я не задумываясь ушёл в питонисты, т.к. 1С мне не особо нравится.
@romanbush5164
@romanbush5164 3 жыл бұрын
Люди внатуре не вникают, для чего нужны функции , как и я когда то. А ДЛЯ ТОГО ЧТОБЫ ОДИН И ТОТ ЖЕ КОД НЕ ПИСАТЬ 10 РАЗ, а подставлять нужные значения переменных или же сами эти переменные , в аргументы функции ( либо же выполнять некую масивную обработку функцией без аргументов)... Это нужно понять самому
@nomad7626
@nomad7626 5 жыл бұрын
Вообще не понял. Как система понимает что А это число и что Б тоже число? Ведь мы не указывали, допустим как в других языках, что например "А = 1" и "Б = 2". В каком месте к этим буквам назначается число, и какое число назначается, когда мы успели их сделать переменными??? Даже если система берет А и Б из надписей "ЧислоА" и "ЧислоБ", то как он определяет какую букву из этого словосочетания взять? Почему он не может взять допустим букву Ч из "Число" и не запутатся в параметрах и в вычислении?????? Пробовал в параметрах писать всякую ахинею, синтаксическая проверка не прошлась. Так как млять этот гребаный язык программирования понял что есть А и что есть Б????? Мляяяя вообще хз че происходит DX
@IlyaLeontyev
@IlyaLeontyev 5 жыл бұрын
Типы значения реквизитов А и Б мы определили на этапе их создания в обработке.
@sergejsimagin3741
@sergejsimagin3741 4 жыл бұрын
@@IlyaLeontyev , все равно не понятно, на этапе создания обработки мы создали реквизиты ЧислоА и ЧислоБ и указали что тип число, но негде не указывали что ЧислоА=А, я тоже на этом застопорился, почему в функции мы пишем просто А и Б, а в процедуре ЧислоА и ЧислоБ, пробовал в процедуре написать просто А и Б не проходит синтаксическую проверку. И было бы замечательно, если бы немного рассказали о правилах написания и дали бы какую нибудь ссылочку на справочную инфу по функциям и процедурам, где какие кавычки, скобки, точки с запятой надо ставить, где пробелы ставятся , а где нет.
@sergejsimagin3741
@sergejsimagin3741 4 жыл бұрын
Тоже ломал голову над этим вопросом, потом нашел на другом сайте описание функции и понял, что Кога мы описывали функцию вычисления максимума, мы могли там поставить любые буквы например Д и Е в качестве параметров, а вот при вызове этой функции (через вызов прцедуры сообщить) мы указываем эти параметры ЧислоА и ЧислоБ, мы можем еще раз добавить вызов процедуры сообщить А в качестве параметров указать ЧислоА и ЧислоС, и выведется 2 максимума.
@user-wm7gd2cg8c
@user-wm7gd2cg8c 4 жыл бұрын
@@sergejsimagin3741 А если мы в функцию передадим число и строку, функция крашнется. И будет сообщение об ошибке. {Форма.Форма.Форма(22)}: Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата) Если А > Б тогда
@user-wm7gd2cg8c
@user-wm7gd2cg8c 4 жыл бұрын
Я человек ленивый, поэтому функцию сравнения трех чисел написал вот так Функция макс3(А, Б, В) Возврат Макс2(Макс2(А,Б),Макс2(В,Б)); КонецФункции Может и не оптимально с точки зрения количества операций, выполняемых компьютером. Но зато в одну строчку.
@user-ui1ub5rm6n
@user-ui1ub5rm6n 3 жыл бұрын
Можно так: Функция Макс3(А, Б, В) Возврат Макс2(Макс2(А,Б),В); КонецФункции
@user-wm7gd2cg8c
@user-wm7gd2cg8c 3 жыл бұрын
@@user-ui1ub5rm6n Да так лучше.
@cryptoprofit1190
@cryptoprofit1190 11 ай бұрын
Все настолько легко, проще пареной репы просто!
@Rykovskiy
@Rykovskiy 2 ай бұрын
Не работает Функция Максимум1(А, Б) Если А > Б Тогда Возврат А; Иначе Возврат Б; КонецЕсли; КонецФункции Процедура СообщитьОМаксимуме(А, Б) М = Максимум1(А, Б); Cообщить ("Максимум =" + М); КонецПроцедуры Процедура КомандаВыполнить(Команда) СообщитьОМаксимуме (ЧислоА, ЧислоБ); КонецПроцедуры
@solar9238
@solar9238 14 күн бұрын
Решение проблемы: Короче, я два дня не мог понять в чем ошибка Я поставил ; после КонецФункции После, синтаксических ошибок не обнаружено
@lankaster4769
@lankaster4769 5 жыл бұрын
без домашних заданий это малоэффективное освоение материала.
@retertwerwr2970
@retertwerwr2970 4 жыл бұрын
ну так используй .В чем проблема ?
@Grishka48
@Grishka48 5 жыл бұрын
И зря не проверили Функцию максимум из трех! Работает не верно! Правильнее было ИначеЕсли В > А Тогда Возврат В; Иначе Возврат Б; . У нас по условию выходит В меньше А, если у нас Б будет больше В, то оно все-равно может быть меньше А. Отсюда ошибка. Не в обиду автора, огромное ему спасибо за уроки, очень познавательно, скорее всего просто был невнимателен =)
@PartizannN437
@PartizannN437 5 жыл бұрын
Я вбил код на три числа с экрана и у меня всё работает. Читайте внимательно код, Б никак не может быть меньше А.
@Grishka48
@Grishka48 5 жыл бұрын
@@PartizannN437 как у нас Б не может быть меньше А, если первое же условие говорит что А>Б?
@TripolitovVladimir
@TripolitovVladimir 5 жыл бұрын
Вы знаете как работает оператор И? Если А > Б И А > В, тогда мы возвращаем А. Иначе А
@user-pn9yd6ee1h
@user-pn9yd6ee1h 6 жыл бұрын
Ахаха достигнуто предельное количество подключений к ИБ, это блин учебная версия ограничена по количеству запусков. Ну и жлобы. Только начал учить 1С програмирование а уже такой бред, придётся ставить пиратку, ибо такие ограничения ни в какие ворота не лезут.
@luckykulon1847
@luckykulon1847 6 жыл бұрын
код на русском языке - извращение и боль глазам
@lEpIvIaKl
@lEpIvIaKl 5 жыл бұрын
Да на самом деле это дело вкуса и привычки. Я пока этим не занимаюсь (1С, посматриваю иногда из любопытства), а вот в своё время тренировался обычными ЯП, помню каким извращением и джунглями С++ со всеми этими { } ; * казался после VB. А через какое-то время после С++ уже VB казался "рукалицо" )) Ко всему привыкаешь за недельку... Соответственно и отвыкаешь.
@pusena274
@pusena274 Жыл бұрын
Что попало,только не для новичков,вообще ничего не понятно,хотя знаю другие языки программирования.
@gromovdenis7
@gromovdenis7 6 ай бұрын
Всё ок, всё понятно, хотя не знаю языки программирования))
Циклы в 1С языке программирования 1С
9:25
Школа 1С - видеоуроки бесплатно
Рет қаралды 129 М.
Как долго расти до 100к программисту 1С
29:07
Желтый клуб — 1С программирование
Рет қаралды 52 М.
WHO DO I LOVE MOST?
00:22
dednahype
Рет қаралды 75 МЛН
Дибала против вратаря Легенды
00:33
Mr. Oleynik
Рет қаралды 3,5 МЛН
Суть 1С программирования за 25 минут
26:44
Желтый клуб — 1С программирование
Рет қаралды 333 М.
Справочники в 1С 8.3 - создание и свойства на примерах
14:52
Школа 1С - видеоуроки бесплатно
Рет қаралды 154 М.
Урок 8. Циклы в 1С (часть 1).
34:48
1С Франчайзи Домрачев консалтинг
Рет қаралды 2,1 М.
Управляемые формы в 1С 8.3 - знакомимся и создаем первую форму
11:21
Школа 1С - видеоуроки бесплатно
Рет қаралды 216 М.
Регистры сведений в 1С 8.3
12:33
Школа 1С - видеоуроки бесплатно
Рет қаралды 154 М.
Процедуры и функции в 1С
18:57
Заказать бота
Рет қаралды 10 М.
Использование запросов 1С в коде
12:35
Школа 1С - видеоуроки бесплатно
Рет қаралды 60 М.