Калькулятор 1С

Также на эту тему:
Простые математические действия -
сложение, вычитание, умножение, деление

1С ЦЕЛ - целое число
1С ОКР - округление чисел 1С
1С POW – число в степень
1С SQRT – квадратный корень

Дополнительные материалы:
Электронная книга "Язык 1С. Том 2"

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

На всякий случай пройдемся кратко по ним. Чтобы не было скучно – параллельно сделаем простенький калькулятор 1С.

 

Краткое техническое задание на калькулятор 1С

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

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

Если для операции нужны два числа – первое запомним и предложим ввести второе.

Результат будем выводить в то же числовое поле.

 

Создание калькулятора 1С

Форма и кнопки
Для пользователя калькулятор 1С в первую очередь состоит из формы. Создадим наш гений дизайнерской красоты.

Итак, создаем внешнюю обработку: Конфигуратор/Файл/Новый/Внешняя обработка.

Добавляем форму калькулятора 1С. На форме нам нужно разместить

  • Поле ввода числа
  • Кнопки с цифрами
  • Кнопки управления.

Калькулятор 1С — толстый клиент
Ненужную нам кнопку «Выполнить», добавленную на форму по-умолчанию, удалим (выделить кнопку левой кнопкой мыши, кнопка DEL на клавиатуре).

Добавим поле на форму калькулятора 1С. В его свойствах установим тип данных – число.

Кнопки калькулятора 1С придется «рисовать» руками. Хорошо, что до нас придумали «копипаст». Главное – нарисовать первую кнопку. Чтобы долго не прицеливаться – в свойствах кнопки (правой кнопки мыши на кнопку) прямо укажем размер – ширину и высоту.

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

У кнопки калькулятора 1С есть имя. По-умолчанию кнопка называется «Кнопка1». Мы можем зашифровать в имени кнопки выполняемое ей действие, например «Умножить». Что нам это дает? Кнопок будет много – а обработчик события один. Это удобно.

Копировать кнопку калькулятора 1С можно

  • Привычным Ctrl+C и Ctrl+V
  • Перетаскивая ее мышью с зажатой клавишей Ctrl.

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

Калькулятор 1С — тонкий клиент
В тонком клиенте калькулятора 1С кнопки создаются по-другому: сначала создается команда, потом она перетаскивается на форму и «превращается» в кнопку. Но нам это неудобно – нам же хочется, чтобы у разных кнопок был один и тот же обработчик.

Создадим команду, назовем «НажатиеКнопкиКоманды». Добавим обработчик.

Теперь добавим кнопку на калькулятор 1С. Обратите внимание – кнопку создаем для элемента Форма, а не в подчинении «Командной панели».

Войдем в свойтва кнопки (правой кнопкой мыши). Выберем команду в свойстве «Имя команды».

Ну а дальше – уже привычным копипастом – сделаем нужные нам кнопки калькулятора 1С. При копировании все также меняется имя кнопки (кроме нуля), и остается выбранная команда.

Чтобы навести красоту на форме калькулятора 1С:

  • В кнопках укажем верный заголовок (*, :, =)
  • Сгруппируем кнопки
    o Добавим группу («Группа – обычная группа»)
    o Исправим свойства кнопки (Группировка – горизонтальная, Отображение – Нет, Отображать заголовок – Нет)

 

Программируем действия кнопок калькулятора 1С

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

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

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

Пример программного кода:


Только зарегистрированные пользователи VIP группы могут видеть этот контент.


В тонком клиенте в параметре указана команда. Однако у формы есть понятие «текущий элемент» и в момент нажатия на кнопку текущим элементом будет эта кнопка.



Только зарегистрированные пользователи VIP группы могут видеть этот контент.



Проголосовать за этот пост:

1 Star2 Stars3 Stars4 Stars5 Stars (1 голосов, среднее: 1,00 из 5)
Loading ... Loading ...

Также на эту тему:
Простые математические действия -
сложение, вычитание, умножение, деление

1С ЦЕЛ - целое число
1С ОКР - округление чисел 1С
1С POW – число в степень
1С SQRT – квадратный корень
Тригонометрические и
логарифмические функции 1С

1С строку в число
Преобразовать число в строку 1С
1С случайное число
Модуль числа 1С

Дополнительные материалы:
Электронная книга "Язык 1С. Том 2"

Добавить комментарий