Уроки по внутреннему языку программирования 1С 8.3 для начинающих
«Я думаю, что каждому стоит учиться программированию, потому что это учит людей думать» — Стив Джобс (Основатель Apple)
Основы языка программирования 1С 8.3, представленные в уроках ниже, предназначены для начинающих программистов. Для тех, кто не программировал раньше на других языках. Для тех у кого язык 1С — первый в их списке.
Если же вы уже владеете 1С на некотором уровне, то возможно вам лучше сразу перейти к упражнениям (ссылка) для продвинутых.
Обычно такие люди — достаточно опытные пользователи 1С. Они хорошо разбираются в одной из предметных областей. Это и внедренцы и консультанты, и главные бухгалтеры. В своей профессии они достигли уже такого уровня, что начинают осваивать смежные.
И это правильно, потому что знание элементарных основ программирования позволит специалисту в любой предметной области достичь новых высот в своём деле.
Например, бухгалтер, владеющий основами программирования и конфигурирования 1С сможет не только автоматизировать свою деятельность без помощи программистов, найти ошибки и понять, почему программа выдает тот или иной результат. Но если ему и понадобится помощь программистов — он сможет разговаривать с ними на одном языке. Грамотно ставить задачи. А это уже 50% успеха.
Итак, вы решили освоить профессию программиста 1С (или хотя бы её основы) и не знаете с чего начать? Растерянность на этом этапе вполне понятна. И тут бесполезно лезть в конфигуратор и сразу пытаться делать новые справочники, документы и прочие объекты, которые создаются при помощи мышки.
Самое главное, что вам нужно сделать, это усвоить суть программирования. Ухватить сам принцип выполнения программы. А для этого нужно не объекты новые создавать в базе, а изучать основы самого языка программирования 1С 8. А всё остальное уже потом приложится и будет изучено быстро и легко.
Итак, начнем!
№1: установка 1С и ваша первая программа на языке 1С№2: основные правила языка 1С№3: типы данных в 1С№4: имена переменных в 1С№5: простые логические выражения в 1С№6: сложные логические выражения в 1С№7: условная команда в 1С№8: циклы в 1С часть 1№9: циклы в 1С часть 2№10: комбинирование простых конструкций в 1С№11: массивы в 1С№12: структуры в 1С№13: функции и процедуры в 1С часть 1№14: функции и процедуры в 1С часть 2№15: отладка в 1С№16: синтакс-помощник 1С№17: работа с датами в 1С№18: математика в 1С№19: формат в 1С№20: использование диалогов в 1С№21: список значений в 1С№22: работа со строками в 1С
Авторизуйтесь, чтобы получить доступ ко всем материалам школы
Высокоуровневые языки программирования
Для решения проблем читабельности кода и чрезмерной сложности были разработаны высокоуровневые языки программирования. C, C++, Pascal, Java, JavaScript и Perl — это всё языки высокого уровня. Они позволяют писать и выполнять программы, не переживая о совместимости кода с разными архитектурами процессоров. Программы, написанные на языках высокого уровня, также должны быть переведены в машинный код перед выполнением. Есть два варианта:
компиляция, которая выполняется компилятором;
интерпретация, которая выполняется интерпретатором.
Компилятор – это программа, которая читает код и создаёт автономную (способную работать независимо от другого аппаратного или программного обеспечения) исполняемую программу, которую процессор понимает напрямую. При запуске программы весь код компилируется целиком, а затем создаётся исполняемый файл и уже при повторном запуске программы компиляция не выполняется.
Если по-простому, то процесс компиляции выглядит следующим образом:
Интерпретатор — это программа, которая напрямую выполняет код, без его предыдущей компиляции в исполняемый файл. Интерпретаторы более гибкие, но менее эффективны, так как процесс интерпретации выполняется повторно при каждом запуске программы.
Процесс интерпретации:
Любой язык может быть компилируемым или интерпретируемым, однако, такие языки, как C, C++ и Pascal — компилируются, в то время как «скриптовые» языки, такие, как Perl и JavaScript — интерпретируются. Некоторые языки программирования (например, Java) могут как компилироваться, так и интерпретироваться.
Книги по 1С
Лучше всего изучать 1С по книгам, которые были изданы фирмой 1С. Так сказать, от первоисточника. Некоторые из них идут с поставками типовых конфигураций. Так же вы можете купить отдельные книги.
Книга «1С:Программирование для начинающих» предназначена для людей, далеких от программирования, но желающих научиться создавать собственные решения на 1С 8.3 с самого нуля.
«Hello, 1C» показывает самые простые, основные возможности разработки прикладных решений в системе 1С:Предприятие 8.
В «101 совете» описаны различные способы решения одних и тех же задач.
Практическое пособие разработчика 1С Предприятие 8.3 — очень подробное пособие, описывающее приемы разработки с простыми и понятными примерами. Данная книга одна из самых лучших для изучения 1С программирования.
В данном пособии описывается язык запросов с нуля для тех, кто не знаком даже с SQL.
Настоятельно советуем книгу «Разработка сложных отчетов в 1С:Предприятие 8» для углубленного изучения СКД. Зачастую даже на форумах по 1С людям, спрашивающим совет по решению проблем с отчетами, рекомендуют именно ее.
Данная книга даст вам более углубленные знания 1С в качестве разработчика.
Если ранее вы занимались разработкой на 1С, но на обычных формах, советуем эту книгу. В ней вы получите много знаний по новому управляемому интерфейсу.
Так же много полезной информации, как по программированию, так и по работе с типовыми решениями вы можете узнать из наших статей по программированию.
Списание материалов
Чаще всего материалы в 1С 8.3 списываются в производство либо требованием-накладной, либо отчетом производства за смену:
- ТН обычно используется в тех случаях, когда нет привязки к конкретному готовому изделию. Например, мы списываем расходные материалы, общехозяйственные расходы и т. п.
- Отчет производства за смену списывает материалы на какое-то конкретное изделие.
Требование-накладная
Данный документ находится в разделе «Производство».
В шапке документа заполните организацию и подразделение. Далее добавьте в таблицу материалов все списываемые позиции и их количество.
Счет затрат при проведении документа подставится автоматически. Если вам необходимо его изменить, например вместо основного производства указать общехозяйственные расходы, установите флаг в пункте «Счета затрат на закладке «Материалы»». В появившейся колонке таблицы материалов внесите все необходимые изменения.
В нашем примере мы спишем только три собственных материала. Материалы заказчика использовать не будем.
При проведении данное требование-накладная сформирует три движения по .
Подробную статью по этой операции читайте в статье Как списать материалы с 10 счета или смотрите видео на примере канцтоваров:
Выпуск готовой продукции с помощью Отчета производства за смену
Теперь рассмотрим, как сделать аналогичное списание, но уже с привязкой к конкретному изделию. Обычно это делается при помощи документа «Отчет производства за смену». Он так же находится в разделе «Производство».
В шапке выберите организацию, подразделение и подразделение затрат. Счет затрат по умолчанию 20.01.
На первой вкладке «Продукция» добавим строку и выберем наш «Стул резной». Сразу же после этого автоматически подставится основная спецификация и счет учета. При необходимости значения в данных колонках можно изменить.
Далее проставляем количество производимой готовой продукции и плановую цену. Ее нужно проставлять из-за того, что себестоимость стула нам еще не известна.
На вкладке услуги и возвратные отходы мы ничего заполнять не будем. Перейдем лучше к заполнению материалов.
На последней вкладке «Материалы» нажмите на кнопку «Заполнить» и все данные попадут сюда автоматически из указанной спецификации. В нашем случае добавились три материала: доска, гвозди и лак.
Данный документ сформировал четыре проводки: одну по выпуску продукции «Стул резной» и три по списанию материалов (доски, гвозди, лак) в производство.
Язык ассемблера
Так как программировать на машинном языке — удовольствие специфическое, то программисты изобрели язык ассемблера. В этом языке каждая команда идентифицируется коротким именем (а не набором единиц с нулями), и переменными можно управлять через их имена. Таким образом, писать/читать код стало гораздо легче. Тем не менее, процессор всё равно не понимает язык ассемблера напрямую. Его также нужно переводить, с помощью ассемблера, в машинный код. Ассемблер – это транслятор (переводчик), который переводит код, написанный на языке ассемблера, в машинный язык. В Интернете этот язык называют просто — «Ассемблер».
Преимуществом Ассемблера является производительность (точнее скорость выполнения) и он до сих пор используется, когда это имеет решающее значение. Тем не менее, причина подобного преимущества заключается в том, что программирование на этом языке адаптируется к конкретному процессору. Программы адаптированы под один процессор не будут работать с другим. Кроме того, чтобы программировать на Ассемблере, по-прежнему нужно знать очень много не очень читабельных инструкций для выполнения даже простого задания.
Например, вот та же команда, что выше, но на языке ассемблера:
Спецификация
Далее нам обязательно необходимо добавить наше будущее готовое изделие в справочник «Номенклатура».
Далее в программу необходимо внести спецификацию производимого нами стула. В ней отражаются необходимые для производства материалы и их количество. Своего рода ингредиенты нашего готового изделия.
Перейти к спецификациям номенклатуры можно из ее карточки в справочнике (подменю «Еще»).
Из формы списка можно создать новую спецификацию и указать уже существующую в качестве основной.
Создадим новую спецификацию и заполним ее табличную часть.
По-умолчанию первая созданная спецификация автоматически будет установлена в качестве основной для данного изделия. В нашем случае для производства одного стула требуется 1 доска, 100 грамм гвоздей и 800 миллилитров лака.
Русскоязычные каналы
WebForMySelf
Программированию с нуля по видеоурокам обучает команда проекта webformyself.com, цель которого — максимально доступно и подробно рассказать о создании сайтов начинающим веб-разработчикам, фрилансерам и всем интересующимся. На канале выложено большое количество обучающих видео, а на сайте — множество инструкций и статей о создании программ, основах SEO и веб-дизайне.
На WebForMySelf можно посмотреть курсы по:
- объектно-ориентированному программированию;
- JavaScript — одному из лидирующих языков веб-разработки;
- теории и практике адаптивной верстки сайтов;
- фреймворку Bootstrap — набору популярных инструментов фронтенд-разработки;
- Node.js — платформе, с помощью которой можно писать серверный код на языке фронтенда JavaScript.
С чего начать с нуля?
Самое главное в 1С – то, что не нужно придумывать свои виды объектов. Все они уже есть в конфигурации.
Установите технологическую платформу 1С себе на компьютер, и откройте в конфигураторе новую или уже существующую базу. Для начала можно использовать абсолютно бесплатную учебную версию 1С 8.3 для обучения программированию.
В левой части окна вы увидите дерево объектов конфигурации. К ним относятся документы, справочники, регистры, бизнес-процессы и многое другое.
Данные так же хранятся в СУБД, но разработчик обычно не работает с ними напрямую. При помощи технологической платформы программист обращается уже к объектам конфигурации или информационной базы.
В 1С, как и во многих других языках программирования, очень часто используются запросы. Язык запросов в 1С схож с языком T-SQL. Запросы можно писать как на английском, так и на русском, в прочем, как и остальной код.
Вроде бы все просто, но для работы «в полевых условиях» одного знания языка программирования чаще всего не достаточно. Дело в том, что в большинстве организаций, использующих 1С, установлены типовые конфигурации, и их нужно знать.
Рекомендуется изучить самые распространенные конфигурации. К ним относятся такие, как «Бухгалтерия» и «Управление торговлей». Так же часто используются «ЗУП» и «Розница».
В плане работы для 1С программистов существуют две основные ветви: франчайзи или работа «на себя» и работа в качестве штатного программиста it-отдела какой-либо организации. Данный выбор зависит только от ваших предпочтений.
При работе в франчайзи, на фрилансе или ведении собственного бизнеса оплата будет сдельная. Работы может быть много и нужно выкладываться по-полной. Верхней планки по заработной плате здесь нет, и вы можете заработать внушительную сумму денег.
Если вы решите работать на фрилансе, либо открыть собственный бизнес, не нужно будет ни с кем «делиться» своим заработком (кроме государства и фрилансовой площадки естественно). Но в таком случае и клиентов будет необходимо искать самостоятельно.
Если вы все же решили устроиться в организацию в качестве штатного программиста, то будете мало зависеть т объема выполненной работы. В данном случае есть некая стабильность, но и зарплатная планка ограничена.
Конечно же, эти два способа можно совместить, работая штатным программистом днем и на фрилансе по вечерам.
Что хорошо у 1С программистов, так это то, что у вас может не быть технического образование (например, вы экономист, бухгалтер и т. п.). Для подтверждения своих знаний перед клиентами или работодателем вы можете предоставить свои сертификаты 1С.
Сертификаты бывают различных видов, как по платформе (для программистов), так и по типовым решениям. Получить их можно в фирме 1С, сдав экзамен в виде теста или практического задания.
Заключение
В англоязычном сегменте хороших видеокурсов по разработке больше, чем на русском YouTube, и мы привели далеко не полный список блогов. А как вы лучше всего воспринимаете информацию: через видео, текст или аудио? И что предпочитаете: смотреть на языке оригинала или адаптированный контент на русском?
Бесплатные видеоуроки по программированию хороши доступностью, но самостоятельно разбираться в нем без наставника и мотивации трудно и долго. Зато если вы заплатили за обучение, то оно пройдет куда эффективнее и быстрее. Курс «Я — веб-разработчик PRO» откроет вам двери в веб: преподаватели научат всему, что знают и умеют сами, разберут домашние задания, проведут по всей программе, которую вы завершите дипломной работой и гарантированным трудоустройством в одной из компаний-партнеров.