Бесплатный курс «Программирование в 1С 8.3
Бесплатный видео-курс
Записаться бесплатно! ➔
Бесплатный видео-курс
Записаться бесплатно! ➔
Чему Вы научитесь всего за три недели:
Вы сами разработаете Полную систему учета торговой компании.
Научитесь разрабатывать Наглядные отчеты для руководства.
Вам будет прост и понятен даже код расчета себестоимости.
Сможете разрабатывать механизмы управления Задачами.
Реализуете “мечту директора” — Управленческий Баланс.
Автоматизируете
Бизнес-процессы.
Реализуете
Задачи управления и контроля персонала.
Создадите
CRM-систему (контроль отношений с клиентами)
Изучим все основные механизмы 1С:Предприятие 8.3:
Оперативный учет
Будет построена достаточно сложная конфигурация:
- Заказы, статусы
- Закупки, продажи, контроль
- Расчет себестоимости
- Регламентные процедуры
Бизнес-процессы и задачи
Создаем линейные и циклические бизнес-процессы на примере:
- Бизнес-процесс «Прием сотрудника на работу»
- Бизнес-процесс «Продажа»
Расчет заработной платы
Добавляем расчет заработной платы:
- Расчет оклада с учетом отработанного времени
- Формирование графика работы
- Регистрация невыходов, прогулов
- Расчет премии по базе (можно задавать разные базовые виды расчета, разные проценты для премии)
- Выплата заработной платы
Бухгалтерский учет
Добавим механизмы бухгалтерского учета:
- Проводки у оперативных документов — реализация, поступление, документы расчетов
- Документ «Бухгалтерская операция»
- Управленческий баланс
- Операция закрытия месяца
Отчеты и СКД (система компоновки данных)
Создадим наиболее интересные для анализа отчеты:
- Остатки товаров
- Данные о продаже и выручке,
- Себестоимость, прибыль (в табличном виде и в виде диаграммы)
- Данные по взаиморасчетам с нашими клиентами
- Валовая прибыль в виде диаграммы
- Отчет «Эффективность работы менеджеров» — сколько заказов ввел менеджер, прибыль, полученная сотрудником
- ABC-классификация / сегментация клиентов
- Бухгалтерский баланс
- Отчет по начислениям сотрудников
- Отработанное время (диаграмма Гантта)
Плюс бонусная тема – Вы сами создадите CRM-систему!
- Формирование задач
- Контроль бизнес-процессов
- Аналитические отчеты по контрагентам
- Оценка узких мест и эффективности работы сотрудников
Покажем, на чем зарабатывают программисты 1С
Наглядно:
Мы именно ПОКАЖЕМ, как это работает.
Весь курс записан в видео-формате — чтобы Вы увидели, как идет разработка конфигураций.
Удобно:
Свободный график. В “минимальном режиме” достаточно одного часа в день.
Начинаем с самых основ – учиться смогут люди, не имеющие никакого опыта программирования.
Практика:
Не только теория: небольшие, но важные домашние задания закрепят материал.
Уже через неделю Вы разработаете свою первую достаточно сложную конфигурацию.
И это займет у вас около 20 часов, включая выполнение Домашних Заданий!
Не пропустите этот курс!
Никакие книги не заменят живой демонстрации
Предварительная регистрация на новый поток курса
Коллеги, мы приняли решение вернуться к модели, которую использовали с 2010 года – проведение курсов в потоках.
Прием новых участников на курс приостановлен.
Рекомендуем пройти предварительную регистрацию в новую группу:
- Вы получите приглашение – и не пропустите курс
- Предварительная регистрация Вас ни к чему не обязывает
Основы программирования на языке 1С (уроки)
Всем, кто хочет заняться программированием мы хотим объяснить некоторые простые вещи о которых сказано не во всех учебниках по программированию, но об этом следует знать тому, кто с нуля хочет освоить программирование на языке 1С.
1. Язык программирования — это прежде всего Язык.
Прежде чем приступить к изучению языка морально будьте готовы к тому что это процесс не быстрый. Чтобы вы конкретно представили что такое изучение языка программирования — это почти то же самое как изучение иностранного языка. Все в школе изучали иностранный язык и все прекрасно понимают, чтобы знать язык недостаточно просто выучить перевод слов по словарю с иностранного на родной язык. Например, фразу «Я знаю английский язык» может сказать человек, который в состоянии: прочитать текст на английском языке, перевести, составить предложение без ошибок, выразится устно. Перевод иностранных слов без умения грамотно составить предложение (читай синтаксис языка программирования) точно не означает знание иностранного языка. Поэтому, Урок 1 — относитесь к изучению языка программирования так, как относились бы к изучению иностранного языка с целью полностью его освоить.
2. Практика.
Наверняка вы слышали как некоторые люди хорошо знающие иностранный язык постепенно его забывали без практики использования. Изучив азы программирования на 1С ежедневно практикуйтесь в выполнении несложных задач для того чтобы не утратить знания добытые ранее и постепенно беритесь за выполнение более сложные задач. Повышайте квалификацию.
3. Мотив.
Любое дело лучше двигается, если есть мотивация. Для вас в перспективе навыки программирования — это денежное вознаграждение, хорошая работа, легкий социальный лифт и т. д. Не секрет, что программный продукт «1С Предприятие» очень популярен на постсоветском пространстве. Из десяти компаний восемь используют для учета хозяйственной деятельности программу 1С. Соответственно им нужен администратор или программист 1С, который бы обслуживал, дорабатывал программу. Естественно такой рынок нуждается в специалистах 1С. Порой фирмы готовы взять сотрудника не слишком высокой квалификации с навыками программирования на приличный оклад с условием самосовершенствования. И даже, если вы не захотите работать в коммерческой компании или франчайзинге хороший квалифицированный программист сможет найти работу на фриланс-биржах или выполнять проекты на заказ. В общем без работы программист 1С не останется.
С вводной частью в азы программирования мы закончили. Остальная часть материала будет посвящена освоению основам кода языка 1С. Возможно некоторые части будут описаны слишком коротко, но целью данного материала является не полное погружение читателя в синтаксис языка, а скорее первоначальное ознакомление специалистов с архитектурой языка 1С, чтобы сложить в голове у пользователя некий скелет (базу) на который в дальнейшем будут навешиваться все знания.
Урок № 1. Простой калькулятор на языке 1С.
Язык программирования 1С
Язык программирования 1С (скрипт 1С:Предприятия) — язык программирования, встроенный в платформу 1С:Предприятия. Это важная часть технологической платформы «1С:Предприятие», поскольку она предоставляет разработчикам инструменты для описания алгоритмов пользовательских прикладных решений.
Язык программирования 1С имеет много общего с другими языками программирования, такими как Pascal, JavaScript и Basic, что упрощает процесс обучения. Но это не копия ни одного из этих языков.
Основными особенностями языка программирования 1С являются:
- предварительная компиляция: модули, содержащие язык программирования 1С, конвертируются во внутренний код перед их выполнением;
- скомпилированных модулей кэшируются в памяти;
- слабая типизация: тип переменной определяется сохраненным значением и может меняться со временем;
- отсутствует описание программирования объектов конфигурации: разработчики могут использовать объекты, встроенные в платформу, или объекты прикладного решения, созданные в визуальном редакторе.
Язык событий
Методология создания прикладного решения определяет назначение языка программирования 1С. Прикладные решения на базе «1С:Предприятия» никогда не пишутся в чистом коде. Разработчики создают прикладные решения в основном в визуальных редакторах. Сюда входит создание объектов конфигурации и задание их свойств, форм представления, взаимосвязей и т.д. Язык программирования 1С нужен только для описания нестандартного поведения объектов прикладного решения и пользовательских алгоритмов обработки данных.
Поэтому модули, содержащие язык программирования 1С, используются только в определенных ситуациях, которые могут возникнуть во время выполнения. Эти ситуации называются событиями . События могут быть связаны с функциональностью объектов прикладного решения или с самим прикладным решением.
Например, функционал объекта прикладного решения Каталог включает набор событий. Один из них — BeforeWrite .
Это событие происходит перед записью данных элемента каталога в базу данных. Разработчик может использовать язык программирования 1С для написания алгоритма, который проверяет правильность введенных пользователем данных. Добавляя алгоритм в соответствующий модуль, разработчик гарантирует, что каждый раз, когда пользователь попытается сохранить элемент каталога, платформа будет запускать алгоритм для проверки того, заполнил ли пользователь все обязательные атрибуты каталога.
Другими словами, язык программирования 1С — это скриптовый язык для описания бизнес-логики, а вызовы модулей языка программирования 1С — событийно-ориентированные. Модули выполняются, когда в прикладном решении происходят определенные события.
Коллекции универсальных ценностей
Язык программирования 1С включает в себя большое количество разнообразных объектов. Конечно, прикладные объекты составляют наиболее важную группу объектов, поскольку они используются для описания алгоритмов бизнес-логики.
Однако важны также объекты, в которых хранятся временные данные сеанса пользователя.
Обычно они служат для сбора, группировки, анализа и обработки данных.Кратко рассмотрим их функциональные возможности.
Массив
Пронумерованная коллекция значений, которая может иметь любой тип. Вы можете получить доступ к элементу массива по его индексу. Элемент массива может сам быть массивом, что позволяет создавать многомерные массивы.
Структура
Именованная коллекция, состоящая из пар ключ-значение. Ключи всегда имеют строковый тип, а значения могут иметь любой тип. Вы можете получить доступ к элементу структуры по его ключу (т.е. по имени). Структуры предназначены для хранения небольшого количества значений, где каждое значение имеет уникальное имя.
Карта
Набор пар ключ-значение, похожий на структуру, но со следующим отличием: ключи могут быть практически любого типа.
Список значений
Список значений предназначен в основном для интерфейсных задач.
Списки значений используются для создания наборов динамических значений и управления ими (включая добавление, редактирование, удаление и сортировку элементов). Они могут хранить значения любого типа. Более того, в одном списке могут храниться значения разных типов. Например, вы можете использовать список значений для выбора конкретного документа из списка документов, сформированного по сложному алгоритму.
Таблица значений
Таблица значений используется для создания динамических наборов значений и управления ими. Он может хранить значения любого типа. В одной таблице могут храниться значения разных типов.
Например, вы можете использовать таблицу значений для создания представления списка элементов каталога в форме при условии, что список элементов каталога формируется с использованием сложного алгоритма.
Дерево значений
Дерево значений — это динамически генерируемый набор значений любого типа, аналогичный таблице значений. В отличие от строк таблицы значений, строки дерева значений могут образовывать иерархические структуры. Каждая строка дерева может иметь набор подчиненных строк, которые, в свою очередь, также могут иметь подчиненные строки и так далее. Поиск значений, сортировка и получение итогов могут выполняться как в пределах текущего уровня иерархии, так и в пределах текущего уровня и всех подчиненных уровней.
COMSafeArray
Оболочка объекта над многомерным SAFEARRAY из COM. COMSafeArray используется для создания и управления экземплярами SAFEARRAY для обмена данными между COM-объектами.
Фиксированный массив
Массив, который нельзя изменить. Заполняется платформой при инициализации объектов данного типа. В качестве альтернативы разработчик может заполнить его с помощью конструктора массива.
Редактор текстов и модулей
Разработчики могут использовать текстовый и модульный редактор для написания или редактирования языка программирования 1С. Редактор предоставляет удобные инструменты для написания, редактирования и проверки синтаксиса.
Следующая страница: Библиотека 1С:Подсистемы
См. также:
- Основная функциональность
Что со всеми 1 и 0?
На стене в крыле информатики висит серебряная табличка. Вот фото:
Так что же со всеми 1 и 0? Это просто для галочки, или это действительно что-то значит?
Я не говорю о «значении чего-то» в философском смысле. Действительно ли эти 1 и 0 превращаются в действия и цели с нашей стороны, это тема для другого поста. Вместо этого в этой статье я имею в виду нечто гораздо более прозаичное, гораздо более запутанное. Что означают единицы и нули в нашем повседневном языке и почему компьютеры вообще разговаривают на этом странно ограниченном языке?
Давайте сначала рассмотрим второй вопрос. Почему компьютеры говорят единицами и нулями? Этот язык 1 и 0 называется двоичным . Компьютеры говорят в двоичном формате из-за того, как они построены. Компьютер — это не что иное, как огромный набор переключателей. На этих странно выгравированных платах внутри компьютера есть миллионы наноскопически маленьких электронных переключателей. Выключатель, если он не сломан, может быть включен или выключен, замкнут или разомкнут. Переключатель в положении «включено» или «замкнут» пропускает через себя электрический сигнал, в то время как переключатель в положении «выключено» или «разомкнут» блокирует этот сигнал. Ученые-компьютерщики представляют переключатель «вкл.» с 1 и переключатель «выкл.» с 0,9.0005
Выражая данные в единицах и нулях, мы упаковываем их таким образом, чтобы имитировать организацию вещей внутри компьютера. Последствия этого решения являются глубокими и вдохновляющими, и на самом деле неясно, знали ли первые ученые-компьютерщики, насколько случайным окажется их решение выражать данные в виде единиц и нулей. Создавая данные точно так же, как устроен компьютер, который их обрабатывает, они позволили компьютерам обрабатывать как данные, так и инструкции, используя одни и те же компоненты и инструменты. Позже это привело к повсеместной архитектуре фон Неймана, которой следует практически каждый современный компьютер. Невероятная вычислительная производительность и объем памяти, которыми мы сейчас наслаждаемся, были бы невозможны без этого способа организации компьютера и данных, которые он обрабатывает.
Давайте вернемся к обсуждаемому вопросу: что на самом деле означают эти 1 и 0? Компьютеры не работают напрямую с текстом. Вместо этого они получают значение только из чисел. Требуется 8 из этих единиц и нулей (другими словами, 8 90 136 битов 90 137), чтобы построить одно число. Например, рассмотрим этот набор из 8 битов:
0 1 0 0 1 0 0 1
Вы заметите, что это первый набор из 8 битов на нашей табличке, показанной на рисунке. Этот набор из 8 бит называется байт . В байте каждый бит имеет связанное с ним значение. Это ничем не отличается от того, с чем вы привыкли работать в своей повседневной работе с числами. Например, если я скажу, что должен вам 1234 доллара, во-первых, будьте уверены, что я никогда вам не заплачу, а во-вторых, подумайте, что это значит. Каждая из этих цифр представляет собой степень числа 10. Крайняя правая цифра является наименее значимой, и это количество единиц. Вторая цифра справа представляет количество десятков. Третья справа цифра обозначает количество сотен. Наконец, крайняя левая цифра представляет число тысяч.
В нашем примере 4 на месте единиц, 3 на месте десятков, 2 на месте сотен и 1 на месте тысяч. Таким образом, общее значение этого числа равно
1 * 1000 + 2 * 100 + 3 * 10 4 * 1 = 1 234
Это точно такая же интерпретация, которую мы применяем к битам в байте, чтобы определить значение, которое оно представляет. . Единственная разница в том, что вместо того, чтобы каждая цифра представляла, сколько у нас есть чисел определенной степени 10, каждый бит в байте представляет, сколько у нас есть чисел определенной степени 2. Крайний правый бит представляет, сколько двойок в степени 0 (т. е. сколько единиц) у нас есть. Второй бит справа представляет, сколько двойок в степени 1 (т. е. сколько двойок) у нас есть. Бит, третий справа, представляет, сколько степеней двойки в степени 2 (т. е. сколько 4-х) у нас есть. Четвертый-до …
Эй, заткнись, ботаник. Я умираю здесь.
ОК. Спасибо, что вытащил меня из этого. Вернемся к нашему примеру. Рассмотрите 0 1 0 0 1 0 0 1 и работайте с каждым битом, начиная с самого правого.
У нас 1 на месте 1.
У нас 0 вместо двойки.
У нас 0 вместо 4.
У нас 1 вместо 8.
У нас 0 на месте 16.
У нас 0 на месте 32
У нас 1 на месте 64.
У нас 0 вместо 128.
Откуда взялись числа 1, 2, 4, 8, 16, 32, 64 и 128? Каждое из этих чисел является степенью двойки, что, как мы сказали, представляет каждый бит в байте. Каждый бит представляет одну из этих степеней двойки, и либо эта степень двойки есть в общем числе, которое представляет байт, либо ее нет. Другими словами, переключатель, соответствующий этому биту, либо замкнут, либо разомкнут. Заметили идеальное соответствие между данными и структурой? Это делает интерпретацию и представление данных намного проще, чем это было бы в противном случае.