25.5. Модуль обработки Фузеева

30. Откройте обработку Фузеева: в конфигураторе выберите вкладку Модуль

31. Внимание! Закомментируйте программу 1: перед каждой строкой введите знак комментария //. Текст должен стать зеленым.

32. Введите в модуле обработки код, содержащий (1) объявление переменной модуля а, (2) пользовательскую процедуру Выполнить и (3) основную программу из одного оператора:

Пример 25.2. Модуль обработки

// Пример 2
// Объявляем переменную модуля обработки
// Она может быть использована в любой процедуре  модуля и его основной
программе
перем а;
// Основная программа модуля состоит из одного оператора
а = 5.1; // Определяем значение переменной модуля
процедура Выполнить( ) // Выполнить - имя процедуры
 перем б;  // Локальная переменная процедуры Выполнить
 ОчиститьОкноСообщений( ); // Очищаем окно сообщений
 Сообщить("а = " + а); // Выводим значение переменной а в окно
сообщений
 б = 4.2; // Определяем значение локальной переменной б
 Сообщить("Сумма а и б равна " + (а + б));
конецПроцедуры 
 

33. Проверьте синтаксис — см. 25

34. Если ошибка — то исправьте и снова — см. 25.

35. Сохраните обработку: Ctrl+S.

36. Запустите 1С:Предприятие: нажмите F11, выберите Начало, выберите Пуск, нажмитекнопку Пуск, в окне сообщений должно появиться число а=5.1. Сумма а и б равна 9.3

37. Закройте 1С:Предприятие

В общем случае процедура модуля может быть вызвана как из диалога, так и из иного программного модуля, в том числе и из иного программного компонента модуля, в том числе и из его основной программы.

38. Внимание! Закомментируйте пример 2.

39. Введите такой код:

Пример 25.3. Вызов процедуры модуля

// пример 3 
процедура Выполнить( ) // Связана с кнопкой Пуск обработки Фузеева
 б = 4.2;   // Определяем значение локальной переменной б
 Сообщить("б = " + б);
конецПроцедуры  
// Основная программа модуля
ОчиститьОкноСообщений( )
а = 5.1; // Определяем значение локальной переменной а
Сообщить("а = " + а);
// Процедура Выполнить вызвана из основной программы при загрузке обработки
Фузеева
Выполнить( );


40. Проверьте синтаксис — см. 25

41. Сохраните обработку: Ctrl+S.

42. Запустите 1С:Предприятие: нажмите F11, выберите Начало | Пуск, нажмите Пуск, в окне сообщений должно появиться число а=5.1 б =4.2

43. Нажмите несколько раз на кнопке Пуск, должна появляться только строка б =4.2. Код основной программы модуля для исполнения более недоступен.

44. Закройте 1С:Предприятие

Что есть функция? Функция — программный компонент, возвращающий значение и вызываемый из выражения, которое это значение использует.

44. Закомментируйте пример 3. Текст должен стать зеленым.

45. Введите в модуле обработки следующий код:

Пример 25.4. Пользовательская функция модуля

// Пример 4 
функция ВычислитьУ (х) // х - формальный параметр функции ВычислитьУ
 у = 2 * Лог(х); // Лог - встроенная функция
// Вернем в выражение, из которого вызывается функция ВычислитьУ, значение у
 возврат у;
конецФункции
процедура Выполнить( ) // Связана с кнопкой Пуск обработки Фузеева
 б = ВычислитьУ(3.0); // Функция ВычислитьУ вернет 2ln(3)
 ОчиститьОкноСообщений( ); // Очищаем окно сообщений
 Сообщить("б = " + б);
конецПроцедуры // Выполнить

 

46. Проверьте синтаксис

47. Сохраните обработку: Ctrl+S

48. Запустите 1С:Предприятие: нажмите F11, выберите Начало | Пуск, нажмите кнопку Пуск, в окне сообщений должно появиться число б = 2.197224577336

49. Если не так. Ищите ошибку.

Учтите, что функция ВычислитьУ должна быть размещена в модуле до процедуры Выполнить из которой она вызывается. Если же вы хотите записать код функции ВычислитьУ после процедуры Выполнить, то в начале модуля надо привести предварительно описание функции:

Функция ВычислитьУ(х) далее

Процедура Выполнить()

конецПроцедуры

функция ВычислитьУ(х)

….

КонецФункции