Процедуры в языке 1С 8.3, 8.2 (в примерах)
Вступайте в мою группу помощник программиста.
В ней мы обсуждаем программирование в 1С.
2017-12-18T22:02:53+00:00Дата Если Массивы Математика Процедуры Строки Циклы
Диалоги ОписаниеТипов ОперационнаяСистема Приложение Соответствие
СписокЗначений Структура ТаблицаЗначений ФайловаяСистема Формат
ОбщиеОбъекты Запросы ПрикладныеОбъекты УниверсальныеФункции
См. урок #1 для начинающих по процедурам в 1С
См. урок #2 для начинающих по процедурам в 1С
Скачать эти примеры в виде тестовой базы (как загрузить, как исследовать)
Смотреть видео с демонстрацией выполнения кода
/// Как передать в процедуру параметр по ссылке в 1с 8.3, 8.2 &НаКлиенте Процедура П1(ПараметрПереданныйПоСсылке) // изменяем значение и внутри и снаружи ПараметрПереданныйПоСсылке = 25; КонецПроцедуры &НаКлиенте Процедура Пример1(Команда) Перем А; А = 1; // сейчас А равно 1 П1(А); // а после вызова процедуры уже 25 КонецПроцедуры /// Как передать в процедуру параметр по значению в 1с 8.3, 8.2 // возможно только для простых типов (число, строка, дата, ... ) // более сложные объекты всё равно будут переданы по ссылке &НаКлиенте Процедура П2(Знач ПараметрПереданныйПоЗначению) // изменяем значение только внутри процедуры ПараметрПереданныйПоЗначению = 25; КонецПроцедуры &НаКлиенте Процедура Пример2(Команда) Перем А; А = 1; // сейчас А равно 1 П2(А); // после вызова процедуры А по-прежнему равно 1 КонецПроцедуры /// Как передать в процедуру массив по значению в 1с 8.3, 8.2 // это можно сделать только через создание копии массива &НаКлиенте Процедура П3(Параметр) // меняем первый элемент массива Параметр[0] = 25; // теперь в массиве Параметр // числа 25 2 КонецПроцедуры &НаКлиенте Процедура Пример3(Команда) Числа = Новый Массив(); Числа.Добавить(1); Числа.Добавить(2); // сейчас в массиве числа: 1 2 // создаём копию массива КопияЧисел = Новый СписокЗначений; КопияЧисел.ЗагрузитьЗначения(Числа); КопияЧисел = КопияЧисел.ВыгрузитьЗначения(); // вызываем процедуру, меняющую // переданный массив П3(КопияЧисел); // после вызова процедуры в массиве Числа // по-прежнему числа: 1 2 КонецПроцедуры /// Как для параметра процедуры установить значение /// по умолчанию в 1с 8.3, 8.2 &НаКлиенте Процедура П4(Имя = "Сергей", Отчество, Фамилия = "не задано") Сообщить(Имя + " " + Отчество + " " + Фамилия); КонецПроцедуры &НаКлиенте Процедура Пример4(Команда) П4("Вадим", "Иванович", "Сидоров"); // Вадим Иванович Сидоров П4("Вадим", "Иванович"); // Вадим Иванович не задано П4(, "Иванович"); // Сергей Иванович не задано П4(,,); // Сергей Неопределено не задано КонецПроцедуры /// Как в процедуре объявить локальные переменные в 1с 8.3, 8.2 &НаКлиенте Процедура П5() // объявляем переменные // в самом начале процедуры Перем ч1, ч2; Перем ч3; ч1 = 12; ч2 = 15; ч3 = 45; // а вот здесь уже объявлять // новые переменные нельзя КонецПроцедуры &НаКлиенте Процедура Пример5(Команда) П5(); КонецПроцедуры /// Как сделать процедуру доступной из других модулей в 1с 8.3, 8.2 // объявляем эту процедуру в общем модуле Библиотека &НаКлиенте Процедура П6() Экспорт Сообщить("Привет, я процедура П6"); КонецПроцедуры &НаКлиенте Процедура Пример6(Команда) // вызываем экспортную процедуру П6 // из модуля Библиотека Библиотека.П6(); КонецПроцедуры /// Как вернуть значение из функции в 1с 8.3, 8.2 &НаКлиенте Функция Сумма(А, Б) Возврат А + Б; КонецФункции &НаКлиенте Процедура Пример7(Команда) Результат = Сумма(5, 3); // 8 Сообщить(Результат); КонецПроцедуры /// Скачать и выполнить эти примеры на компьютере |
Скачать эти примеры в виде тестовой базы (как загрузить, как исследовать)
Процедуры в языке 1С 8.3, 8.2 (в примерах)
Дата Если Массивы Математика Процедуры Строки Циклы
Диалоги ОписаниеТипов ОперационнаяСистема Приложение Соответствие
СписокЗначений Структура ТаблицаЗначений ФайловаяСистема Формат
ОбщиеОбъекты Запросы ПрикладныеОбъекты УниверсальныеФункции