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

Пример функции

&НаКлиенте

ПроцедураКоманда1(Команда)

ПеременнаяЧисло2=Объект.ПеременнаяЧисло*0.8;

ПеременнаяЧисло1=Объект.ПеременнаяЧисло;

ПеременнаяБулево1=Объект.ПеременнаяБулево;

Результат=УмножениеИСложение(ПеременнаяЧисло1,ПеременнаяЧисло2,ПеременнаяБулево1);

Сообщить(Результат);

Сообщить(ПеременнаяЧисло1);// не изменилось

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

&НаКлиенте

ФункцияУмножениеИСложение(ЗначА,Б,умножить=ложь)

Еслиумножить=ложьтогда

ВозвратА+Б;

иначе

ВременнаяПеременная=А*Б;

А=0;// изменим А

ВозвратВременнаяПеременная;

КонецЕсли;

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

пример сделан на основе обработки деланной ранее.

Скриншот обработки:

1- переменная 1

2- ПеременнаяБулево– это определяет какое действие сделать с числом. Истина(стоит галка) это умножение, Ложь это сложение.

3- Кнопка “Команда1” это кнопка выполняющая процедуруКоманда1при нажатии.

4- Окно с сообщениями

$13 Вывод сообщений пользователю

Вывод сообщений пользователю может пригодится для нескольких задач:

  • оповещение пользователя

  • вывод  ошибок

  • использование при отладки

  • вывод рекомендаций

Для вывода сообщений пользователю есть несколько способов, вот одни из них:

  • Сообщить()

  • ПоказатьОповещениеПользователя()

  • Предуприждение()

 

Сообщить

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

Синтаксис: Сообщить(<ТекстСообщения>, <СтатусСообщения>)

описание функции сообщить()

Пример: 

сообщить("текст");

Для очистки формы используется:

ОчиститьСообщения();

А вот закрытие окна не предусмотрено, но можно использовать данный скрипт:

ОкноСлужебноеСообщить=НовыйCOMОбъект("Wscript.shell");

ОкноСлужебноеСообщить.SendKeys("^+{z}");

ОкноСлужебноеСообщить.SendKeys("^+{я}");

 

ПоказатьОповещениеПользователя

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

Синтаксис: ПоказатьОповещениеПользователя(<Заголовок>, <Ссылка>, <Текст>, <КартинкаКТексту>)

Пример: 

ПоказатьОповещениеПользователя("ЗакрытьФорму",,"текст");

 Предупреждение

Предупреждении как и ПоказатьОповещениеПользователя является глобальной, а так же пока пользователь не нажмет кнопку OK окно не будет закрыто и не даст доступа к программе. Его использовать можно для уведомлений которые пользователь не должен пропустить.

Синтаксис: Предупреждение(<ТекстСообщения>, <ТаймаутДоАвтоматЗакрытия>, <ЗаголовокОкна>)

описание функции сообщить()

Пример: 

Предупреждение("текст",0,"ЗакрытьФорму");

Пример с использованием всех описанных уведомлений.

сообщить("текст");

ПоказатьОповещениеПользователя("ЗакрытьФорму",,"текст");

Предупреждение("текст",0,"ЗакрытьФорму");

ОчиститьСообщения();

Предупреждение("Окно сообщений пустое",0,"Окно сообщений");

ОкноСлСообщ=НовыйCOMОбъект("Wscript.shell");

ОкноСлСообщ.SendKeys("^+{z}");

ОкноСлСообщ.SendKeys("^+{я}");

 

На скриншоте отмечены все виды уведомлений:

  1. Окно сообщений.

  2. Окно с предупреждением.

  3. Окно оповещения.

$14 Обращение к свойствам объектов или элементов.

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

Обращаться к свойствам можно с помощью: “.” точки или “[]” квадратные скобки:

Первый способ, с помощью точки:

К примеру добавим элементы в массив.

1. Создадим новый массив

МассивА=НовыйМассив;

2.И теперь воспользуемся данным способом для вызова свойства

МассивА.Добавить(34);

МассивА.Добавить(33);

Итак мы для элемента МассивА вызвали с помощью “.” свойство Добавить(), данное свойство прозволяет добавить элемент в массив.

Второй способ, с помощью []

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

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

ВыбралиСотрудников=Истина;

ЕслиВыбралиСотрудников=ИстинаТогда

    Спр="Сотрудники";

Иначе

    Спр="Отделения";

КонецЕсли;

ВыбранныйСпр=Справочники[Спр];

А теперь, рассмотрим этот пример с первым способом:

ВыбралиСотрудников=Истина;

ЕслиВыбралиСотрудников=ИстинаТогда

   ВыбранныйСпр=Справочники.Сотрудники;

Иначе

    ВыбранныйСпр=Справочники.Отделения;

КонецЕсли;

$15 Директивы компиляции

  • 10 июля 2012

  • открыто в 1,890 раз

  • Встроенный язык 1С

Директивы компиляции– это директивы которые определяют в какой среде будут исполнятся процедуры и функции модулей форм, модуля команды и общего модуля управляемого приложения.

Перед определением директивы ставится “&”.

Если директива отсутствует используется директива по умолчанию – &НаСервере.

Использование нескольких директив вместе невозможно.