какой должен быть порядок определения процедур и функций в программном модуле

Описание процедур и функций

Область применения: управляемое приложение, мобильное приложение, обычное приложение.

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

При разработке на платформе 1С:Предприятие 8.3 текст комментария также выводится в контекстной подсказке процедур, функций и их параметров. Подробнее см. раздел «Контекстная подсказка при вводе текстов модулей» главы 27 «Инструменты разработки» в документации к платформе.

При разработке в 1C:Enterprise Development Tools (EDT) текст комментария также используется для уточнения типизации параметров и возвращаемого значения процедур и функций, и тем самым помогает выявлять ошибки кодирования на этапе разработки.

3. Прочие процедуры и функции (в том числе обработчики событий модулей форм, объектов, наборов записей, менеджеров значений и т.п.) рекомендуется комментировать, если требуется пояснить назначение процедуры (функции) или особенности её работы. Также рекомендуется описывать причины невыполнения некоторых действий, если они кажутся неочевидными для данной процедуры или функции.

Но если процедура (функция) не сложна для понимания и ее назначение и порядок работы следуют из ее названия и имен формальных параметров, комментарий допускается не писать.

4. Следует избегать комментариев, не дающих дополнительных пояснений о работе не-экспортной процедуры (функции).
Например, неправильно:

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

Этот комментарий не дает никакой дополнительной информации о функции.

5. Комментарий размещается перед объявлением процедуры (функции) и имеет следующий вид.

5.1. Секция «Описание» (англ. «Description» ) содержит описание назначения процедуры (функции), достаточное для понимания сценариев ее использования без просмотра ее исходного кода. Также может содержать краткое описание принципов работы и перекрестные ссылки на связанные процедуры и функции.

Может быть единственной секцией для процедур без параметров. Описание не должно совпадать с именем процедуры (функции). Для процедур и функций секция должна начинаться с глагола. Для функций это, как правило: «Возвращает…». В тех случаях, когда возвращаемый результат является не основным в работе функции, – то с основного действия, например: «Проверяет…», «Сравнивает…», «Вычисляет…» и т.п. Не рекомендуется начинать описание с избыточных слов «Процедура. », «Функция. », а также с имени самой процедуры (функции), от удаления которых смысл не меняется.

5.2. Секция «Параметры» (англ. «Parameters» ) описывает параметры процедуры (функции). Если их нет, секция пропускается. Предваряется строкой «Параметры:», затем с новой строки размещаются описания всех параметров.

5.2.1. Описание параметра начинается с новой строки, далее имя параметра, затем дефис и список типов (*), далее дефис и текстовое описание параметра.

Имя параметра необходимо стремиться выбирать таким образом, чтобы его назначение было понятно в контексте функции без дополнительных пояснений

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

В данном примере текстовое описание для параметра «Адреса» нужно чтобы

Текстовое описание для параметра ЗадачаИсполнителя не нужно.

5.2.2. Для параметров типа Структура и ТаблицаЗначений также задается описание их свойств и колонок, которые начинаются с новой строки и предваряются символом *.
Например:

При этом текстовое описание свойства (колонки) рекомендуется заполнять в том случае, когда только имени свойства в контексте параметра не достаточно для понимания назначения свойства или требуется дать дополнительную информацию о типе.

5.2.3. Для параметров типа Массив следует указывать тип элементов с помощью ключевого слова «из» (англ. «of» ):

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

5.2.4. Также для параметра типа СтрокаТаблицыЗначений ( СтрокаДереваЗначений ) возможно задать состав свойств, соответствующий колонкам его таблицы-владельца (дерева-владельца):
Например:

// СведенияОРегионе – СтрокаТаблицыЗначений: см. РегистрыСведений.АдресныеОбъекты.КлассификаторСубъектовРФ

5.2.5. Также для каждого параметра можно задать одно или несколько дополнительных описаний типов параметра. Каждое дополнительное описание начинается с новой строки, затем обязательный дефис, далее список типов параметра далее дефис и текстовое описание.
Например:

5.2.6. Описание также могут быть заданы с помощью ссылки на функцию-конструктор в формате «см. ПутьКФункции» (англ «see MethodPath» ).
Например:

При разработке кода, обращающегося к реквизитам конкретного объекта метаданных или формы, можно ссылаться на типы реквизитов этого объекта (формы):

Также в редких случаях, когда подходящей функции-конструктора не существует и ее невозможно создать, допустимо указывать ссылку на другую процедуру (при полном совпадении параметров) или на параметр другой процедуры или функции, например:

// См. ПодключаемыеКомандыПереопределяемый.ПриОпределенииКомандПодключенныхКОбъекту
//
Процедура ПриОпределенииКомандПодключенныхКОбъекту(НастройкиФормы, Источники, ПодключенныеОтчетыИОбработки, Команды) Экспорт

5.3. Секция «Возвращаемое значение» (англ. «Returns» ) описывает тип и содержание возвращаемого значения функции. Для процедур эта секция отсутствует. Предваряется строкой «Возвращаемое значение:». Затем с новой строки тип возвращаемого значения, дефис и текст описания. При использовании возвращаемого значения составного типа следует каждый тип писать с новой строки и с дефиса. Например:

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

Для возвращаемых значений также действуют требования п.5.2.2 и 5.2.3.

5.4. Секция «Пример» (англ. «Example» ) содержит пример использования процедуры, или функции. Предваряется строкой «Пример:». Далее с новой строки пример использования. Имя процедуры (функции) следует писать вместе с именем общего модуля, в котором она расположена. Из примера должно быть понятно, что передается на входе и что возвращается на выходе.
Например, неправильно:

5.4.1. В переопределяемых модулях в секции «Пример» следует размещать пример реализации переопределяемой процедуры, а не пример ее вызова. Например, для процедуры ПриОпределенииОбщихПараметровБазовойФункциональности(ОбщиеПараметры):

5.5. В редких случаях, когда сразу несколько параметров имеют дополнительные типы, рекомендуется добавить секцию «Варианты вызова» (англ. «Сall options» ), в которой дать описания наиболее частых или всех возможных вариантов вызова функции с различными комбинациями типов параметров. Секция начинается фразой «Варианты вызова:» с новой строки, затем идут описания вариантов, каждое начинается с новой строки. Каждый вариант вызова представляется в виде имени функции со списком типов, перечисленных через запятую в круглых скобках, затем следует дефис и текстовое описание варианта.

5.6. В любом месте документирующего комментария можно добавить переход к другим объектам конфигурации, процедурам и функциям (в частности, для перехода к функциям-конструкторам структур). При использовании 1C:Enterprise Development Tools среда оформит такие переходы в виде гиперссылки.
Например:

5.7. В случаях когда возникает необходимость отметить процедуру (функцию) как устаревшую, в первой строке ее описания размещается слово «Устарела» (англ. «Deprecated» )..
Например:

7. Код процедур и функций должен отделяться друг от друга в тексте модуля пустыми строками.

Примеры описания процедур и функций

Пример описания функции с одним параметром:

Пример описания процедуры без параметров:

Источник

Структура модуля

Область применения: управляемое приложение, мобильное приложение, обычное приложение.

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

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

Требование о разделении кода модуля на разделы призвано повысить читаемость кода и упростить внесение изменений в код разными авторами (разработчиками) как при коллективной разработке, так и при доработке прикладных решений на конкретных внедрениях.

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

1.3. Разделы и подразделы оформляются в виде областей. При этом имена областей должны удовлетворять требованиям стандарта Правила образования имен переменных

1.4. Шаблон (заготовка для копирования) разделов для общих модулей:

Для объемных общих модулей рекомендуется разбивать этот раздел на подразделы, по функциональному признаку. Например:

1.5. Шаблон оформления разделов для модулей объектов, менеджеров, наборов записей, обработок, отчетов и т.п.:

1.6. Шаблон оформления разделов для модулей форм:

1.7. Шаблон оформления разделов для модулей команд:

1.8. В модуле не должно быть пустых областей.

2. Общие требования к разделам программных модулей.

2.1. Заголовок модуля представляет собой комментарий в самом начале модуля. В заголовке модуля приводится его краткое описание и условия применения.
Например:

Для модулей форм в заголовке рекомендуется размещать описание параметров формы.

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

Методическая рекомендация (полезный совет)

2.4.2. Рекомендуется обработчики одного элемента формы располагать вместе, придерживаясь, при этом, порядка их следования в панели свойств редактора формы в конфигураторе.

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

2.5. Обработчики событий модулей объекта и менеджера объекта размещаются после раздела с программным интерфейсом, но до служебных процедур и функций модуля.

Методическая рекомендация (полезный совет)

2.5.1. Рекомендуется располагать обработчики, придерживаясь порядка их следования в описании встроенного языка.

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

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

2.7. Раздел инициализации содержит операторы, инициализирующие переменные модуля или объект (форму).
Например:

Для оформления разделов кода в виде областей рекомендуется воспользоваться приложенной обработкой.

Источник

Комплект вопросов сертификационного экзамена на знание основных механизмов платформы «1С: Предприятие 8» (стр. 15 )

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39

5.67 Если конфигурация уже запущена в режиме «1С:Предприятие», для ее отладки.

5.68 В конфигурацию внесены изменения. Можно ли для контроля их работоспособности запустить программу в режиме отладки при наличии подключенных к базе данных пользовательских сеансов?

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

3. Можно, если не выполнять обновление конфигурации базы данных

4. Можно, если изменения не связаны с изменением структуры таблиц информационной базы

5.69 Хранилище конфигурации.

1. является основным элементом механизма групповой разработки и обеспечиваем синхронизацию работ нескольких разработчиков

2. используется для разделения доступа к объектам конфигурации

3. место, в которое средствами конфигуратора помещается конфигурация

4. верны ответы 1 и 3

5. все варианты верны

6. нет правильного ответа

5.70 Можно ли управлять включением/отключением точек останова?

1. Нет, можно только управлять установкой/удалением точек останова

4. Да, программно, посредством объекта «Метаданные»

6. Объектная модель прикладного решения

6.1 Какие виды программных модулей существуют в «1С:Предприятие 8»?

1. Общие модули, модуль сеанса, модули форм

2. Модуль обычного приложения, модуль управляемого приложения, общие модули, модуль сеанса, модули объектов, модули форм

3. Модуль обычного приложения, модуль управляемого приложения, модуль внешнего соединения, модуль сеанса, общие модули и модули форм

4. Модуль обычного приложения, модуль управляемого приложения, модуль внешнего соединения, модуль сеанса, общие модули, модули форм и модули макетов

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

6. Модуль приложения, модуль внешнего соединения, модуль сеанса, общие модули, модули форм, модули макетов, модули объектов и модули набора записей

6.2 Какие разделы существуют в общем модуле?

1. Раздел объявления переменных, раздел процедур и функций, раздел основной программы

2. Только раздел процедур и функций

3. Только раздел основной программы

4. Только раздел объявления переменных и раздел описания процедур и функций

6.3 В каком случае рекомендуется использовать общий модуль для описания только экспортных функций?

1. Для общих раздел объявления переменных, раздел процедур и функций, раздел основной программы

2. Только раздел процедур и функций

3. Только раздел основной программы

4. Только раздел объявления переменных и раздел описания процедур и функций

6.4 Модуль приложения рекомендуется использовать.

1. для определения предопределенных процедур «При11ачалеРаботыСисте-мы» и т. п.

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

3. как место определения предопределенных процедур, которые инициализируются при старте и окончании работы системы в режиме внешнего соединения

4. верны ответы 1 и 2

6.5 В общих модулях.

1. нет ограничений на описание переменных, процедур, функций

2. нельзя описывать переменные

3. нельзя описывать переменные, процедуры и функции без ключевого слова «Экспорт»

6.6 Типизация переменных во встроенном языке «1С:Предприятие 8».

1. не жесткая, т. к. тип переменной определяется ее значением

2. не жесткая, т. к. неявным определением переменной является ее первое упоминание в левой части оператора присваивания

3. жесткая, т. к. обязательным является объявление переменной в явном виде

4. жесткая, т. к. неявным определением переменной является ее первое упоминание в левой части оператора присваивания

5. верны утверждения 1 и 2

6. верны утверждения 3 и 4

6.7 В модуле приложения.

1. нет ограничений на описание переменных, процедур, функций

2. нельзя описывать переменные

3. нельзя описывать процедуры и функции без ключевого слова «Экспорт»

6.8 Какой должен быть порядок определения процедур и функций в программном модуле?

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

2. Описание вызываемых процедур и функций должно идти выше вызывающих

3. Порядок следования процедур и функций не имеет значения

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

6.9 Какое высказывание о модуле приложения верно?

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

2. Модуль приложения используется для объявления глобальных переменных

3. Модуль приложения используется для объявления глобальных процедур и функций, доступных в любых других модулях

4. Верны все вышеперечисленные высказывания

5. Верны ответы 1 и 2

6.10 Только определения процедур и функций может содержать только следующий вид модуля:

1. модуль приложения

6.11 Модуль сеанса (выберите наиболее полный правильный ответ):

1. предназначен для инициализации параметров сеанса и отработки действий, связанных с сеансом работы

2. не содержит экспортируемых процедур и функций

3. в кластере серверов 1С:Предприприятия 8 исполняется в привилегированном режиме

4. исполнение происходит после начала исполнения модуля приложения (модуля внешнего соединения)

6.12 Имя общего модуля может совпадать с именем свойства глобального контекста (например «Отчеты»):

1. может в любом случае

2. может, но только если модуль глобальный

3. может, но только если модуль пе глобальный

6.13 Какие функции отсутствуют во встроенном языке «1С:Предприятие 8»:

1. Функции работы со значениями типа Дата

2. Функции работы со значениями типа Время

3. Функции работы со значениями типа Строка

4. Функции работы со значениями типа Число

5. Все вышеперечисленные функции имеются во встроенном языке

6.14 Ключ может быть произвольного типа.

4. ни у одного из вышеперечисленных

6.15 Что произойдет, если удалить запись регистра сведений и создать новую с такими же полями (измерениями, ресурсами, реквизитами)?

1. Ничего, на логику программы это никак не повлияет

2. У этой записи будет другой внутренний идентификатор (ссылка) и это может повлиять на логику программы

3. Возникнет исключительная ситуация

6.16 Как повлияет удаление элемента справочника, который уже используется в других объектах, а потом создать новый с такими же реквизитами, на поведение программы?

1. Ничего, на логику программы это никак не повлияет

2. У элемента будет другой внутренний идентификатор (ссылка) и это может повлиять на логику программы

3. Возникнет исключительная ситуация

6.17 В каком свойстве хранится дата документа?

4. Нет правильного ответа

6.18 С помощью объекта какого типа можно перебирать элементы справочника?

6.19 Где располагаются процедуры-обработчики событий прикладных объектов, например, ПриЗаписи, ПередУдалением?

3. В модуле приложения

4. Таких событий у прикладных объектов нет

6.20 Что такое «системные перечисления»?

1. Перечень значений, заданный на этапе разработки конфигурации (ветвь Перечисления в дереве конфигурации)

2. Перечень значений, заданный в платформе » 1 С:Предириятие 8.0″

3. Конструкция встроенного языка, используемая разработчиком для объявления перечислимых типов данных

4. Системные перечисления отсутствуют в системе «1С:Предприятие 8.0»

6.21 Какая коллекция из нижеперечисленных не относится к универсальным?

Источник

Процедуры и функции (бесплатная статья по Программированию 1С)
из цикла статей «Первые шаги в разработке на 1С»

О чем эта статья

Эта статья продолжает цикл статей «Первые шаги в разработке на 1С». В ней будут рассмотрены следующие вопросы:

Применимость

Материал полностью актуален для платформы «1С:Предприятие 8» редакций 8.2. и 8.3.

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

В отдельные процедуры и функции можно выносить общие алгоритмы. Одинаковый программный код из разных модулей (какой-то общий алгоритм) разумно выносить в процедуру или функцию какого-нибудь модуля и обращаться к ней.

При этом мы избавляемся от дублирования кода, заменив его вызовом процедуры (функции). Если возникает потребность внести изменения в алгоритм, то эти изменения будет достаточно внести в одном месте.

Кроме того, процедуры и функции повышают читаемость программного кода. Гораздо проще просмотреть, что выполняет данный код, особенно, если вызовы процедур имеют осмысленные названия.

В итоге облегчается сопровождение прикладного решения.

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

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

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

Процедура, в отличии от функции, не может иметь возвращаемое значение. Она просто вызывается и выполняет какие-то действия.

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

Процедура или функция начинает описываться со слова Процедура (Функция). Далее следует Имя процедуры (функции). После имени обязательно указываются круглые скобки. Внутри скобок могут находиться описываемые параметры.

Данные параметры нужно будет передавать при вызове (при обращении к процедуре). После круглых скобок может стоять слово Экспорт (экспортная функция).

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

В теле могут находиться вызовы других процедур и функций данного модуля или других модулей, которые доступны из текущего программного модуля. Обязательным является наличие заключительного слова КонецПроцедуры (КонецФункции).

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

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

Параметры, переданные в процедуру (функцию) при ее вызове, могут быть использованы при формировании возвращаемого результата функцией или при выборе используемого алгоритма в процедуре.

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

В том случае, если при вызове процедуры (функции) значение параметра будет не задано, то оно примет значение, используемое по умолчанию.

Таким образом, параметры, для которых указано значение по умолчанию, являются необязательными для указания при вызове. В описании процедуры(функции) вначале следуют обязательные параметры, а потом необязательные.

Кроме этого, существует передача параметров по ссылке и по значению. Внутри процедуры (функции) параметр может анализироваться, а также может изменяться. Все данные хранятся в оперативной памяти компьютера.

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

Т.е. при вызове процедуры (функции) мы передавали параметр с одним значением, а после отработки вызываемой процедуры (функции) значение параметра изменилось.

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

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

По умолчанию все параметры передаются по ссылке. Чтобы передать параметр по значению, в описании процедуры перед параметром нужно поставить ключевое слово Знач.

Следует сказать, что в некоторые процедуры-обработчики передается такой параметр, как Отказ. Значение данного параметра по умолчанию – Ложь.

Если в теле процедуры-обработчика установить данному параметру значение Истина, то процедура не отработает.

Порядок следования процедур и функций в модуле 1С:Предприятие 8 значения не имеет. Из любой процедуры (функции) модуля можно вызывать любую другую процедуру или функцию данного модуля.

Чтобы обратиться к списку процедур текущего модуля в панели конфигуратора можно нажать на кнопку в виде лупы с надписью «PROC» или использовать горячие клавиши (Ctrl+Alt+P).

Откроется диалоговое окно, в котором описаны функции F(x) и процедуры P( ). К ним возможно обращаться.

Список может быть отсортирован в алфавитном порядке (для этого устанавливается галочка «Сортировка»).

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

Кроме процедур и функций в списке для разных модулей будут доступны разные стандартные обработчики. При выборе обработчика двойным кликом мыши в модуле создается шаблон соответствующей процедуры (обработчика события).

Если в диалоговом окне «Процедуры и функции» выбрать процедуру и нажать на кнопку Перейти, то мы окажемся в начале выбранной процедуры (функции).

Справа от кнопки с надписью «PROC» располагается поле. В этом поле указано имя текущей процедуры (функции).

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

PDF-версия статьи

Если Вы еще не вступили в группу – сделайте это сейчас и в блоке ниже (на этой странице) появятся ссылка на скачивание материалов.

Статья в PDF-формате

Вы можете скачать эту статью в формате PDF по следующей ссылке:
Ссылка доступна для зарегистрированных пользователей)

Ссылка доступна для зарегистрированных пользователей)
Ссылка доступна для зарегистрированных пользователей)
Ссылка доступна для зарегистрированных пользователей)

Комментарии / обсуждение (4):

Все хорошо, можно бы добавить про передачу параметра Отказ.

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

Источник

Понравилась статья? Поделиться с друзьями:

Не пропустите наши новые статьи:

  • какой должен быть перерыв при 12 часовом рабочем дне по трудовому кодексу
  • какой должен быть отпуск по трудовому кодексу
  • какой должен быть код на листе нетрудоспособности при заболевании коронавирусом
  • какой должен быть код в тик токе
  • какой должен быть диск для установки windows 10

  • Операционные системы и программное обеспечение
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии