Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
теория по 1С.docx
Скачиваний:
75
Добавлен:
07.02.2015
Размер:
24.76 Mб
Скачать

Пример 3. Условие с использованием ИначеЕсли

Если число равно “20″ то выводим сообщение “Число = 20″, иначе если число равно “23″ то вывести сообщение “Число = 23″ и если число не равно ни одному числу вывести сообщение “Число неизвестно условному оператору”.

Число=20;

Если(Число=20)Тогда

Сообщить("Число = 20");

ИначеЕсли(Число=23)Тогда

Сообщить("Число = 23");

Иначе

Сообщить("Число неизвестно условному оператору");

КонецЕсли;

// В первом случае выполнилось первое условие и вывелось сообщение "Число = 20"

Число=23;

Если(Число=20)Тогда

Сообщить("Число = 20");

ИначеЕсли(Число=23)Тогда

Сообщить("Число = 23");

Иначе

Сообщить("Число неизвестно условному оператору");

КонецЕсли;

// Во втором случае выполнилось второе условие и вывелось сообщение "Число = 23"

Число=24;

Если(Число=20)Тогда

Сообщить("Число = 20");

ИначеЕсли(Число=23)Тогда

Сообщить("Число = 23");

Иначе

Сообщить("Число неизвестно условному оператору");

КонецЕсли;

// В третьем случае не выполнилось ни одно условие и

//вывелось сообщение "Число неизвестно условному оператору"

//т.к. мы обрабатываем ложное выполнение условия

$09 Короткие условия и пример работы с ними

В системе 1с также присутствует сокращенные формы условий.

1-ое это используя ?, котоая похожа на excel и простое условие которое возвращает значение истина или ложь.

Структура короткого условия:

?(<Логическое выражение>,<выражение при истине>,<выражение при возврате ложь>,);

Пример 1:

Число=1;

Результат=?(Число=1,"один","ошибка");

Пример 2:

Число=20;

Результат=?(Число=20,Истина,ложь);

 

Структура простого условия:

<переменная> = <Логическое выражение>;

В результате выполнения данного условия возвращается Истина или Ложь. С помощью данного условия можно сократить предыдущий пример 2.

Число=20;

Результат=Число=20;

$10 Циклы и примеры работы с ними (Для, Для каждого, Пока)

Цикл Для (For)

Оператор цикла Дляпредназначен для циклического повторения операторов, находящихся внутри цикла. Цикл будет выполнятся пока<переменная> не будет равно или  меньше<КонечноеЗначение>,  <переменная> будет увеличиваться на 1 автоматически. Условие (сравнение) выполняется перед выполнением цикла.

Выполнение цикла можно можно прервать в любой момент при помощи оператора Прервать; после него управление передастся операторам после КонецЦикла;.  Так же можно прервать только текущую итерацию и перейти к следующей итерации при помощи операторПродолжить.

 

Структура цикла (Русскоязычный синтаксис):

Для<переменная>=<НачальноеЗначение>По<КонечноеЗначение>Цикл

<операторы>

КонецЦикла;

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

Структура цикла (Англоязычный синтаксис):

For<переменная>=<НачальноеЗначение>To<КонечноеЗначение>Do

<операторы>

EndDo;

Оператор Прерватьможно заменить наBreak, иПродолжитьнаContinue.

 

Цикл Для каждого (For each)

Оператор цикла Для каждогопредназначен для циклического обхода коллекций значений. Цикл будет выполнятся пока не достигнет последнего элемента коллекции<ТекКоллекция>. В переменную<ТекЭлемент> заносится  текущий элемент коллекции на время итерации.

Аналогично с предыдущим, выполнение цикла можно можно прервать в любой момент при помощи оператора Прервать; после него управление передастся операторам после КонецЦикла;.  И так же можно прервать только текущую итерацию и перейти к следующей итерации при помощи операторПродолжить.

Структура цикла (Русскоязычный синтаксис):

Длякаждого<ТекЭлемент>Из<ТекКоллекция>Цикл

<операторы>

КонецЦикла;

Структура цикла (Англоязычный синтаксис):

Foreach<ТекЭлемент>In<ТекКоллекция>Do

<операторы>

EndDo;

Оператор Прерватьможно заменить наBreak, иПродолжитьнаContinue.