Руководство по коду 1с

Обновлено: 30.06.2024

Если даже вы не знакомы с программированием, то благодаря этому руководству постепенно, за шагом шаг, сможете изучить 1С.

Информация по реквизитам объекта метаданных на полную глубину

Дерево реквизитов объектов метаданных. На всю глубину (т.е. смотрит реквизиты у реквизитов).

10.06.2011 15808 171 kosmo0 5

3.1 Hello world

Вместо Hello World можно написать произвольный текст.

Обратите внимание, что код состоит из операторов, каждый из которых заканчивается точкой с запятой.

В одной строке можно размещать несколько операторов, но так не принято у программистов 1С:

Сообщить("Hello Wold"); Сообщить("И снова привет!");

Исправление ошибки 1С:Предприятие 7.7/8.0 - 100% загрузка процессора при ожидании блокировки Промо

Цель использования: разгрузить процессор, когда два или более пользователей пытаются провести документ. 1С пытается заблокировать таблицы, но делает это без пауз, и загружает процессор на 100%. При этом пользователи практически "встают", и нормальная работа прекращается. Компонента (или патч) позволяет решить эту проблему и нормализовать работу пользователей. Особенно актуально при работе в режиме сервера терминалов.

13.12.2007 57013 7804 romix 79

Ввод по строке для управляемых форм

Ввод по строке с поиском по номеру телефона и наименованию контрагента с помощью обработчика "АвтоПодбор".

08.10.2020 3427 34 anrahell 2

Вызов демонов в 1С

Вызываем демонов прямо из 1С!

28.01.2021 9005 171 the1 36

[BackgroundWorker] - Фоновые задания в файловом режиме 1С 8.x

ActiveX-компонента позволяет выполнять задачи в фоне с индикацией прогресса и возможностью прерывания выполнения. Также работает и клиент/серверном варианте, в качестве альтернативы типовым фоновым заданиям

Получение ссылки из форматированной строки

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

05.06.2020 4758 0 VZhulanov 1

Как сохранить данные табличного поля в табличный документ / файл Excel программно

Пример сохранения табличного поля в табличный документ не через ПКМ -> Вывести список, с автоподбором ширины по содержимому.

31.05.2020 6875 0 rpashkovsky 16

3.6 Использование форм для ввода/вывода данных

3.6.1 Создание формы обработки

У обработки можно создать форму. Для этого в форме настройки обработки нужно ПКМ на пункте «Формы» и выбрать «Добавить», затем нажать «Готово». Будет создана основная форма обработки и открыта в Конфигураторе для редактирования.

Если щелкнуть на синем заголовке формы, откроются свойства формы.

3.6.2 Добавление элементов управления

Команда «Форма – Вставить элемент управления» позволяет разместить на форме элемент управления.

Попробуем разместить на форме поле для ввода целого числа, и заголовок для него.

Команда «Форма – Вставить элемент управления – Поле ввода – ОК» добавляет новое поле ввода.

Команда «Форма – Вставить элемент управления – Надпись – ОК» добавляет надпись.

3.6.3 Настройка элементов управления

Разместим надпись справа от поля ввода.

Если щелкнуть на элементе управления, открываются его свойства.

Для надписи установим заголовок «Число».

Для поля ввода установим значение свойств «Имя» и «Данные» в «Число». Обычно «Имя» и «Данные» всегда совпадают.

3.6.4 Настройка поведения формы

В низу формы есть три закладки «Диалог», «Модуль» и «Реквизиты».

Перейдем на закладку «Модуль». Мы увидим код модуля формы. В модуле есть только такой код:

// Вставить содержимое обработчика.

Изменим его следующим образом:

Так происходит потому, что у кнопки «Выполнить» в свойстве «Действие» указано «КнопкаВыполнитьНажатие».

3.6.5 Элементы для вывода данных

Добавим еще одно поле, дадим ему имя «Результат». В свойствах укажем «Только просмотр» в «Истина». Теперь это поле доступно только для просмотра.

Изменим процедуру на такую:

3.6.6 Сохранение значений

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

Теперь зайдем в 1С, введем в поле «Число» значение 2. Выполним «Действия – Сохранить значения». Сохраним в настройку «Основная», установим галочку «Использовать при открытии».

Теперь закроем обработку и откроем ее еще раз. В поле «Число» окажется значение 2. Таким образом, можно сохранять значения для любого количества элементов формы, чтобы не заполнять их повторно.

Можно использовать несколько настроек и перезаписывать существующие настройки.

3.7 Строки

Рассмотрим работу со строками в 1С.

3.7.1 Запись строковых констант

Строки записываются в двойных кавычках, пример мы уже видели: "Hello World!"

Если нужно записать кавычку внутри строки, она повторяется два раза: "Я использую для бизнеса программы фирм ""1С"" и ""Микрософт""".

Строка может быть помещена в переменную так:

Если в строке встречается перевод строки, то она записывается с помощью символа вертикальной черты:

"Съешь конфеточку, дружок!

|Или хочешь пирожок?";

3.7.2 Конкатенация

Простейшая операция над строками – склейка (конкатенация).

В результате в переменную В будет помещена строка "Привет мир".

3.7.3 Строковые функции

Рассмотрим основные строковые функции:

Длина = СтрДлина(С); //10 - длина строки

С1 = Лев(С, 2); //Пр - левые 2 символа

С2 = Прав(С, 3); //мир - правые 3 символа

С3 = Сред(С, 5, 2); //ет - два символа, начиная с 5-й позиции

Задача:

Используя только функции Лев, Прав и Сред, получите из строки «Привет мир» строки «веер», «Пирр» и «ветер ветер».

3.7.4 Служебные символы

Не все символы можно включать в строку. Некоторые символы можно получить только по их коду.

В данном примере мы выводим символ табуляции между строками «Поз1» и «Поз2».

Сообщить("Поз1" + Символ(9) + "Поз2");

Но для наиболее часто используемых служебных символов в 1С существуют специальные константы:

Сообщить("Поз1" + Символы.Таб + "Поз2"); //Табуляция

Сообщить("Поз1" + Символы.ПС + "Поз2"); //Перевод строки

Задача:

Выведите строки «Хлеб», «Батон», «Булочка», «Пирожок», каждую с новой строки. Решить задачу двумя способами – с помощью символа вертикальной черты и конкатенацией с символом перевода строки.

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

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

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


Вводите копированный код из конфигуратора и работаете с ним



и тут же получаете результат


Обработка работает на всех конфигурациях и платформах.

Тестировалось на 1С:Предприятие 8.3 (8.3.16.1814).

Ссылка на публикацию Работа с кодом и его выполнение, в режиме 1С Предприятие:

Специальные предложения

Electronic Software Distribution

Интеграция 1С с системой Меркурий

Алкогольная декларация

Готовые переносы данных

54-ФЗ

Управление проектом на Инфостарте

Траектория обучения 1С-разработчика

Комментарии Свернуть все 1. Evg-Lylyk 3637 11.03.21 16:37 Сейчас в теме PowerBoy; shiaju; LeXXeR; + 3 – Ответить 2. Nik_Name 11.03.21 17:33 Сейчас в теме (1)Отличное исполнение 3. Steelvan 123 11.03.21 19:38 Сейчас в теме 4. Идальго 199 11.03.21 19:57 Сейчас в теме В инструментах разработчика разве нет этого? Там вроде и консоль такая есть, плюс куча других полезняшек прицепом. 5. nporrep 50 11.03.21 23:57 Сейчас в теме новое поколение изобретателей велосипедов? 6. Nik_Name 12.03.21 09:31 Сейчас в теме Че пристали? Мало ли кому пригодится, плюс я за это ничего не беру 7. gull22 88 17.03.21 14:34 Сейчас в теме Будущее за альтруистами! + 8. Nik_Name 17 01.04.21 09:17 Сейчас в теме Статистика:

Просмотры 3066

Загрузки 124

Рейтинг 8

Создание 11.03.21 16:30

Обновление 11.03.21 16:30

№ Публикации 1401079

Характеристики:

Конфигурация Конфигурации 1cv8

Операционная система Не имеет значения

Вид учета Не имеет значения

Доступ к файлу Бесплатно (free)

Код открыт Да


См. также

3.5 Арифметика

Рассмотрим использование арифметических операций в 1С.

Числа в 1С записываются интуитивно понятным образом:

Б = 10.2; //Десять целых, ноль десятых

В = -0.123; //Минус ноль целых сто двадцать три тысячных

Порядки вещественных чисел и отличные от десятичной системы счисления числа не используются.

Математические операции выполняются тоже просто:

А = 4/2; //4 разделить на 2

Б = А * 10; //Значение из переменной А умножаем на 10

В = А % 10; //Берем остаток от деления из переменной А на 2

Г = А + Б - В; //В Г помещаем А + Б – В

Д = (А+Б) * Б //Сначала вычисляем А + Б, затем полученное значение умножаем на Б

Е = ((А+Б)-Г) * Б //Сначала вычисляем А + Б, затем от полученного значения отнимаем Г, затем полученное значение умножаем на Б

Можно использовать также арифметические функции:

Б = Окр(А/3); //Округление при делении А на 3

Запрос против рекурсии или разузлование номенклатуры

В задаче "разузлования" номенклатуры в БП 1.6 (2.0) покажем , что запрос более эффективен, чем рекурсия.

23.11.2010 55436 882 Ish_2 258

23.11.2010 13199 261 AlkB 9

Задача: Программа, выводящая на экран свой исходный код (куайн)

Программа, выводящая свой исходный код на экран, не пользуясь внешними источниками данных.

27.07.2011 12091 349 archie 17

Простая конфигурация для заполнения школьного расписания

Решение задачи контрольной работы.

12.12.2020 2927 52 vova-1c 29

Исполнение кода в модуле формы при разработке в 1С 8.2

Немного теории о новом подходе к программированию форм в 1С 8.2 Рассматриваются директивы компиляции процедур и функций, которые определяются в модуле формы.

15.01.2011 28746 168 1cNike 19

Демосцена на 1С

Графическое демо "Плазма". Олдскульный эффект из 90-х. Воссоздан по исходнику на ассемблере x86. Посвящается Дню программиста 2021.

12.09.2021 1200 53 saver77 9

Подсистема хранения файлов

Отличия от реализации в типовых: - версионирование - запрет одновременного редактирования файла несколькими пользователями - линковка файлов многие-ко-многим (т.е. один файл может быть прилинкован к нескольким объектам и наоборот) - создание коллекций файлов (например коллекций: типовые договора или унифицированных формы) - возможность типизации файлов (например, факсы могут подсвечиваться при работе синим, а договора зеленым) - одновременный просмотр прилинкованных файлов к нескольким объектам (например, просмотр файлов привязанных к клиенту и к его договорам) - просмотр прилинкованных файлов из форм списка

23.03.2010 7047 761 koreav 32

Модульная (open source) конфигурация "INFOSTART ERP community edition" Промо

Учетная модульная конфигурация "INFOSTART ERP community edition" для ведения комплексного учета на предприятии.

31.08.2020 14420 959 33lab 146

2.2 Создание пустой обработки для опытов

В Конфигураторе создайте новую внешнюю обработку через меню «Файл – Новый – Внешняя обработка». Откроется форма настройки новой внешней обработки.

Код для опытов будем писать непосредственно в модуле обработки. Модуль можно открыть через меню «Действия – Открыть модуль объекта» в форме настройки обработки.

После внесения изменений в код не забывайте сохранить обработку. Для этого активизируйте форму настройки внешней обработки и нажмите «Действия – Открыть модуль объекта».

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

[Скрипт] Чтение EXIF данных

18.02.2011 24387 284 Душелов 14

2 Создание рабочей среды

Для начала работы вам нужно создать рабочую среду. Для этого вы должны:

1. Создать любую из типовых демо-баз БП, УТ, где вы будете упражняться.

2. Научиться заходить в 1С в режиме Предприятие и Конфигуратор.

Демо-база должна быть с заполненными документами и справочниками, чтобы вам не заниматься вводом данных, а сосредоточиться на изучении программирования., чтобы вам не заниматься вводом данных, а сосредоточиться на изучении программирования.

v77. Тип данных "Месяц"

Нет такого в 1С типа данных. Но если очень хочется.

12.03.2012 10868 7 item 2

2.1 Создание демо-базы для опытов

Пока что раздел не написан. Предполагается, что создавать новую базу вы умеете или попросите знакомых.

3.4 Комментарии

В коде можно использовать комментарии. Они не выполняются, а просто содержат описание того, что выполняется в коде или служат для заметок, чтобы не забыть какие-либо важные вещи. Комментарии важны, чтобы другой человек, или вы сами, спустя какое-то время могли разобраться, что и зачем вы делали в коде.

Изменим предыдущий код:

//Выводим приветствие миру

Комментарий начинается с символов // и длится до конца строки. Начинать комментарий можно в любом месте.

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

Попробуйте выделить следующие строки с помощью мышки или курсорных клавиш, а затем выбрать команду «Текст – Блок – Добавить комментарий»:

Вы увидите, что текст изменится на:

Соответственно, можно выделить участок кода и выполнить обратную команду «Текст – Блок – Удалить комментарий», при этом текст раскомментируется.

Пример работы MiracleV8.dll в режиме Управляемого приложения (тонкий клиент)

Пример конфигурации Управляемое приложение с использованием MiracleV8.dll

09.04.2012 22298 223 Abadonna 26

Обработка поиска дублей кода. Исходного кода модулей 1С

Цель разработки - помочь в поиске похожих блоков кода для дальнейшего выделения их в отдельные процедуры.

12.04.2011 8640 206 bk-81 37

Генерация кода управляемой формы (декомпиляция элементов) Промо

Изменение форм типовых конфигураций лучше выполнять программно. Эта обработка упрощает добавление элементов на форму, генерируя код создания элементов, реквизитов и команд формы.

29.09.2014 116475 9480 ekaruk 139

3 Первые шаги

3.2 Помощь по функциям

Конструктор шаблона подобия для строк

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

17.08.2010 15016 35 YVolohov 11

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

Ещё один менеджер обработок - но для разработчика)

09.04.2010 13534 150 Lancelot-2M 5

Программа "Рюкзак" для файлов.

31.07.2011 11928 56 Ткачев 3

3.3 Переменные

Рассмотрим использование переменных в 1С.

Модифицируем обработку «Hello World» следующим образом:

Значение переменной можно менять многократно, посмотрите как работает этот код:

Экспорт встроенных XML-схем описаний типов 1С:Предприятия

Экспорт встроенных XML-схем описаний типов 1С:Предприятия

01.11.2010 24106 205 Dmitryiv 7

Читайте также: