Войдите на сайт как ученик
Внутренний язык программирования 1С 8.3 для начинающих программистов: установка 1С и ваша первая программа на языке 1С
Если вы не читали введение к урокам - пожалуйста, прочтите его: .
Установка учебной версии 1С
Для обучения программированию нам понадобится 1С 8.3 (не ниже 8.3.13.1644 ) .
Если у вас есть установленная 1С версии 8.3 - используйте её. Если нет - скачайте и установите учебную версию, которую фирма 1С выпускает специально для образовательных целей.
Задание №1 : скачать и установить учебную версию 1С 8.3.
После выполнения Задания №1 на вашем рабочем столе должен появиться вот такой ярлык:
Поздравляю! Платформа 1С установлена и очень скоро вы сможете написать первую программу.
Первая программа
Это уже стало традицией для программистов - изучая новый язык, первое, что на нём пишут это программу, печатающую на экране фразу "Hello, World!".
Не станем исключением и мы. Но, будучи русскими программистами, заставим компьютер вывести на экран фразу "Привет, Мир!".
Задание №2: написать программу на языке 1С 8.3, которая при запуске выводит на экран фразу "Привет, Мир!".
Инструкция для выполнения:
1. Запустите ярлык "1С:Предприятие" на вашем рабочем столе.
2. Перед вами открылся список баз 1С. Как видите, он пуст. Давайте создадим учебную базу, в которой и будем программировать. Нажмите кнопку "Добавить ".
3. Выберите пункт "Создание новой информационной базы " и нажмите кнопку "Далее ".
4. Выберите пункт "Создание информационной базы без конфигурации... " и нажмите кнопку "Далее ".
5. В качестве имени базы укажите "Учебная " и нажмите кнопку "Далее ".
6. В качестве каталога базы укажите любую пустую папку (в данном случае это папка "Учебная" в моих документах). Нажмите кнопку "Далее".
7. Укажите вариант аутентификации "Выбирать автоматически ", режим запуска "Толстый клиент ". В качестве версии 1С:Предприятия ничего не указывайте, нажмите кнопку "Готово".
8. Как видите, в списке, наконец, появилась первая база, которую мы только что создали сами! Начнем писать код. Нажмите кнопку "Конфигуратор ".
9. В открывшемся окне, выберите через меню "Конфигурация "->"Открыть конфигурацию ".
10. В открывшейся слева панели нажмите правой кнопкой мыши на слове "Конфигурация " и выберите из списка "Открыть модуль управляемого приложения ".
11. Открылось окно с редактором. Сюда можно писать текст! С ним мы и будем работать в дальнейшем.
12. Теперь, не задумываясь, просто перепишите в это окно следующий текст:
Сообщить("Привет, Мир!" ) ; |
13. Отлично! Код нашей первой программы готов. Запустим его на выполнение. Через меню "Отладка "->"Начать отладку " (или клавиша F5 ).
14. На вопрос ответим утвердительно.
15. Спустя секунду или две запустится 1С и в окне снизу появится надпись "Привет, Мир!". Мы добились от компьютера того, чего хотели. Поздравляю вас с первой программой!
Что-то не получилось? Остались вопросы? Задайте их мне на почту [email protected] и я отвечу вам сегодня же. Ваш преподаватель: Владимир Милькин .
Обращение преподавателя
Уровень сложности уроков идёт снизу вверх. Поэтому старайтесь заниматься последовательно, ничего не пропуская и не откладывая на потом.
Обязательно выполняйте все тесты и домашние задания, старайтесь улучшить свои результаты. Сверяйтесь с эталонными решениями только после самостоятельного выполнения задач.
Войдите на сайт как ученик
Войдите как ученик, чтобы получить доступ к материалам школы
Язык программирования 1С — формальная знаковая система, предназначенная для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, задающих внешний вид программы и действия, которые выполнит исполнитель (компьютер) под её управлением.
Платформа 1С Предприятие 8 имеет полноценный функционал для разработки собственных решений для разработчика. Главный инструмент разработки — это встроенный язык программирования 1С 8.3.
Создание новых классов программно в языке 1С 8.3 запрещено. Так как платформа 1С Предприятие специализирована для задач учета, состав классов заранее предопределен:
- и т.д.
На основании типовых классов можно в создать любое количество подклассов, имеющих свои наборы. С помощью модулей менеджеров можно незначительно расширить функционал подкласса.
Сложный ли язык программирования 1С?
Вопрос достаточно спорный и относительный. Если рассматривать его относительно других языков, возможно, он покажется немного проще. Однако помимо самого программирования, Вам придется изучать предметную область — бухгалтерию, производство, налоговый учет и т.д., что делает в совокупности язык программирования 1С не таким простым, как может показаться с первого взгляда.
Если Вы имели до знакомства с 1C солидный опыт на других предметно-ориентированных языках программирования, Вам не составит труда разобраться и в тонкостях 8.2, главное — желание. Всё что Вам нужно — найти хороший самоучитель по языку программированию 1С.
Русский синтаксис языка 1С
В этой статье рассмотрим такую конструкцию языка прогрммирования 1С как Циклы .
Существует три способа организации циклов.
- Циклы с использование логического выражения (выполняются до тех пор пока логическое выражение истинно)
- Обход коллекций в цикле
Рассмотрим каждый из этих способов.
Циклы с использованием переменной — счетчика цикла
Синтаксис:
Для < Переменная> = < НачальноеЗначение> По < КонечноеЗначение> Цикл КонецЦикла ;При таком способе организации циклов переменной-счетчику присваивается некое начальное значение и выполняется он до тех пор пока значение переменной-счетчика меньше или равно указанного конечного значения.
С каждой итерацией значение счетчика увеличивается на единицу. Вот самый элементарный пример такого цикла:
Для Счетчик = 0 По 1000 Цикл КонецЦикла ;В отиличие от многих других языков программирования в 1С не предусматривается возможность указания шага в цикле. При необходимости это можно сделать прибавлением к счетчику нужного значения внутри цикла
Для Счетчик = 0 По 1000 Цикл Счетчик = Счетчик + 10 ; КонецЦикла ;Циклы с использование логического выражения
Синтаксис:
Пока < ЛогическоеВыражение> Цикл КонецЦикла ;Отказ = Ложь ; ГенераторСЧ = Новый ГенераторСлучайныхЧисел(1 ) ; Пока НЕ Отказ Цикл СлучайноеЧисло = ГенераторСЧ. СлучайноеЧисло(0 , 10 ) ; Если СлучайноеЧисло > 5 Тогда Отказ = Истина ; КонецЕсли ; КонецЦикла ;
То есть цикл будет выполняться до тех пор пока не будет сгенерировано случайное число больше пяти.
Обход коллекций в цикле
В языке программирования 1С существует такое понятие как коллекция. Она представляет собой набор элементов, содержащихся внутри какого-то объекта.
К коллекции мы можем отнести такие объекты как: массив, таблица значений, выборка из результата запроса, метаданные и т.д. Понятие это достаточно условное, но в синтакс-помощнике встречается на каждом шагу. Очень часто встречается задача, когда нам надо последовательно перебрать все элементы коллекции, чтобы совершить над ними какие-то действия. Для этого и существует синтаксическая конструкция:
Для каждого < ЭлементКоллекции> Из < Коллекция> Цикл КонецЦикла ;Здесь <ЭлементКоллекции>
— это переменная в которую последовательно помещаются элементы из коллекции. И внутри цикла она соответствующим образом обрабатывается.
В качестве примера приведу обход в цикле строк таблицы значений. Пусть она называется ТаблицаТовары
и выглядит вот таким образом:
Обойдем в цикле эту таблицу и для каждой строки выведем сообщение с наименованием и ценой товара:
Для каждого СтрокаТаблицы Из ТаблицаТовары Цикл Наименование = СтрокаТаблицы. Наименование; Цена = СтрокаТаблицы. Цена; Сообщение = Новый СообщениеПользователю; Сообщение. Текст = "Наименование товара: "На самом деле то же самое можно проделать и воспользовавшись первым вариантом, т.е в цикле с использованием счетчика:
КоличествоСтрок = ТаблицаТовары. Количество() ; Для Счетчик = 0 По КоличествоСтрок - 1 Цикл СтрокаТаблицы = ТаблицаТовары[ Счетчик] ; Наименование = СтрокаТаблицы. Наименование; Цена = СтрокаТаблицы. Цена; Сообщение = Новый СообщениеПользователю; Сообщение. Текст = "Наименование товара: " + Наименование + "; Цена: " + Цена; Сообщение. Сообщить() ; КонецЦикла ;
Но как видим использовать обход элементов коллекции гораздо проще и удобней
Вспомогательные операторы
Часто встречается ситуация, когда в зависимости от какого-то необходимо прервать выполнение цикла, либо перейти с следующей итерации.
Прерывание осуществляется с помощью оператора Прервать . В этом случае выполнение цикла прерывается и управление передается следующей за циклом конструкции языка. Если же нужно перейти к следующей итерации, необходимо использовать оператор Продолжить . Тогда управление передается на начало цикла. Проиллюстрируем небольшим примером:
Для Счетчик = 0 По 100 Цикл Если Счетчик = 0 Тогда Продолжить ; КонецЕсли ; Если Счетчик = 4 Тогда Прервать ; КонецЕсли ; Результат = 1 / Счетчик; Сообщение = Новый СообщениеПользователю; Сообщение. Текст = Строка(Результат) ; Сообщение. Сообщить() ; КонецЦикла ;Ноль пропускаем, т.к. на ноль делить нельзя. И всего цикл выполниться пять раз, для значений переменной Счетчик от 0 до 4
Встроенный язык программирования программ 1С:Предприятие - это язык программирования, используемый в семействе программ автоматизации учета «1С:Предприятие». Этот язык относится к классу предварительно компилируемых предметно-ориентированных языков высокого уровня. Его средой исполнения является платформа 1С:Предприятие (включая и 1С:Бухгалтерия). Его визуальная среда разработки называется «Конфигуратором» и является частью пакета 1С:Предприятие.
Язык поддерживает синтаксис команд на русском и английском языке. Диалекты встроенного языка для версий 1С:7.0, 1С:7.5 и 1С:7.7 с незначительными исключениями совместимы «снизу вверх». Диалекты для 1С:7х совместимы с 1С:8х по основным операторам, однако значительно отличаются по работе с объектами приложений, вследствие чего практически лишен смысла перенос кода с платформы 1С:7х на платформу 1С:8х.
По своему синтаксису язык программирования 1С:8 похож на язык Visual Basic. Платформа предоставляет фиксированный набор основных классов, которые предназначены для решения типовых задач своей прикладной области. Некоторые базовые классы:
- Документ,
- Журнал документов,
- Константа,
- Обработка,
- Отчет,
- Перечисление,
- План счетов,
- Справочник и др.
Из этих базовых классов можно средствами визуального конфигурирования создавать любое число порожденных классов. Причем отсутствует возможность программно определить новый класс. Допускается только явная ступень в наследовании классов. Объекты порожденных классов, как правило, представляют собой записи в базе данных или наборы записей. В терминах языка 1С они называются объектами метаданных и образуют так называемое «Дерево метаданных».
Видами этих объектов метаданных являются Бизнесс-процессы, Документы, Задачи, Обработки, Отчеты, Планы видов расчета и характеристик, Планы счетов, Регистры накопления, расчета и сведений, Справочники. Проекты, написанные на языке 1С:Предприятия, называют конфигурациями. Продажа, внедрение и сопровождение 1С и ее конфигураций является основной коммерческой деятельностью фирм-партнеров 1С.
Существуют также дополнительные компоненты, расширяющие основные классы, позволяющие их свободное создание и изменение. Однако эти компоненты не рекомендованы фирмой-разработчиком к использованию. На практике их использование влечет за собой отказ от технической поддержки со стороны фирмы 1С и ее партнеров.
Так, например, компонента 1С++ расширяет язык средствами полноценного ООП. Ее использование расширяет возможности по конфигурированию 1С. Это - свободный продукт, распространяемый под открытой лицензией GNU GPL.
Существует также свободный проект 2C, который не использует проприетарных модулей от фирмы 1С и других производителей ПО. Это - переписанное что называется «с нуля» расширяемое ядро системы, подобной 1С, которое свободно распространяется под лицензией GNU GPL. «Встроенные объекты» 1C, такие как регистры и справочники, являются в нем переопределяемыми прикладным программистом классами.
Первоначально язык 1С носил рабочее название «1Сик», которое произносилось как «одинэсик». Однако оно быстро исчезло из употребления в официальных источниках. При упоминании этого встроенного языка в документах сейчас принято называть его «1С Язык программирования». На данный момент он не имеет собственного названия, удобного для устного произнесения. В контексте обсуждения пакета 1С:Предприятие его часто называют просто «встроенным языком».
Хотелось бы завершить обзор примером программы, выводящим традиционное приветствие для новичков, изучающих язык программирования:
Сообщить("Здравствуй, Мир!");
Этот код будет работать в 1С:Предприятие версии 7.7.
21.12.2010
Предыдущие публикации:
Даже если вы заранее изучали другие языки программирования, например, C++, PHP, Java, стоит помнить, что 1С хоть и во многом сходе, но все-таки имеет много принципиальных различий.
Самое главное в 1С – то, что не нужно придумывать свои виды объектов. Все они уже есть в конфигурации.
Установите технологическую платформу 1С себе на компьютер, и откройте в конфигураторе новую или уже существующую базу. Для начала можно использовать абсолютно для обучения программированию.
В левой части окна вы увидите дерево объектов конфигурации. К ним относятся документы, справочники, регистры, бизнес-процессы и многое другое.
Данные так же хранятся в СУБД, но разработчик обычно не работает с ними напрямую. При помощи технологической платформы программист обращается уже к объектам конфигурации или информационной базы.
В 1С, как и во многих других языках программирования, очень часто используются запросы. схож с языком T-SQL. Запросы можно писать как на английском, так и на русском, в прочем, как и остальной код.
Вроде бы все просто, но для работы «в полевых условиях» одного знания языка программирования чаще всего не достаточно. Дело в том, что в большинстве организаций, использующих 1С, установлены типовые конфигурации, и их нужно знать.
В плане работы для 1С программистов существуют две основные ветви: франчайзи или работа «на себя» и работа в качестве штатного программиста it-отдела какой-либо организации. Данный выбор зависит только от ваших предпочтений.
При работе в франчайзи, на фрилансе или ведении собственного бизнеса оплата будет сдельная. Работы может быть много и нужно выкладываться по-полной. Верхней планки по заработной плате здесь нет, и вы можете заработать внушительную сумму денег.
Если вы решите работать на фрилансе, либо открыть собственный бизнес, не нужно будет ни с кем «делиться» своим заработком (кроме государства и фрилансовой площадки естественно). Но в таком случае и клиентов будет необходимо искать самостоятельно.
Если вы все же решили устроиться в организацию в качестве штатного программиста, то будете мало зависеть т объема выполненной работы. В данном случае есть некая стабильность, но и зарплатная планка ограничена.
Конечно же, эти два способа можно совместить, работая штатным программистом днем и на фрилансе по вечерам.
Что хорошо у 1С программистов, так это то, что у вас может не быть технического образование (например, вы экономист, бухгалтер и т. п.). Для подтверждения своих знаний перед клиентами или работодателем вы можете предоставить свои сертификаты 1С.
Сертификаты бывают различных видов, как по платформе (для программистов), так и по типовым решениям. Получить их можно в фирме 1С, сдав экзамен в виде теста или практического задания.
Книги по 1С
Лучше всего изучать 1С по книгам, которые были изданы фирмой 1С. Так сказать, от первоисточника. Некоторые из них идут с поставками типовых конфигураций. Так же вы можете купить отдельные книги.
Книга «1С:Программирование для начинающих» предназначена для людей, далеких от программирования, но желающих научиться создавать собственные решения на 1С 8.3 с самого нуля.
«Hello, 1C» показывает самые простые, основные возможности разработки прикладных решений в системе 1С:Предприятие 8.
В «101 совете» описаны различные способы решения одних и тех же задач.
Практическое пособие разработчика 1С Предприятие 8.3 — очень подробное пособие, описывающее приемы разработки с простыми и понятными примерами. Данная книга одна из самых лучших для изучения 1С программирования.
В данном пособии описывается язык запросов с нуля для тех, кто не знаком даже с SQL.