Бухучет инфо. Публикации Переход к определению процедур и функций

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

Отличный пример – групповая обработка документов. Это инструмент, который позволяет провести/изменить/распечатать не один документ, а сразу много, по выбранному списку. Согласитесь – очень удобно.

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

Обработки 1С позволяют разрабатывать собственные инструменты как для программирования 1С, так и для настройки или управления 1С. Благодаря этому в интернете есть сотни типовых обработок (разработанных в компании 1С) и тысячи любительских обработок в интернете.

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

Что такое обработки 1С и как они используются

Маленькое вступление. Кто уже знаком с обработками 1С – может пропустить этот пункт.

Итак, обработка является инструментом, написанным программистом. Она ничего не умеет делать самостоятельно и не сохраняет данные в базу данных 1С, в отличие например от документа – который сохраняется в базу данных и самостоятельно умеет записываться и проводиться, без дополнительного программирования. Функции обработки 1С целиком зависят от программиста, который ее написал.

По функционалу обработки 1С можно поделить на три вида:

  • Вспомогательные обработки 1С конфигурации
    В каждой типовой конфигурации есть множество обработок. Они используются как дополнительные интерфейсные формы (рабочий стол пользователя, обзор конфигурации), как часть функционала конфигурации (внос начальных остатков, начальное заполнение базы данных, закрытие месяца).
  • Объекты (Классы)
    Кто знает другие языки программирования, уже знаком с понятием объект. Это некий класс, имеющий в своем распоряжении набор «переменных» и «функций». Его прелесть состоит в самодостаточности – то есть в одном классе собрано все, что нужно для выполнения его функций.

    В 1С классы можно создавать с помощью обработки 1С: «переменные» — реквизиты обработки 1С, «функции» — функции в модуле объекта обработки 1С (пометка Экспорт для публичных функций). Удобство состоит как в создании экземпляра такого класса, так и в его перемещении между конфигурациями.

    Хорошим примером послужат обработки 1С печати (дополнительных печатных форм), которые Вы можете найти в типовых конфигурациях в справочнике Дополнительные печатные формы. Они всегда имеют публичную функцию Печать() и стандартизированное использование.

    Обратите внимание, что конечно же, такие «классы» не связаны с данными напрямую – их требуется передавать или считывать в «конструкторе».

  • Дополнительные инструменты пользователя и администратора
    Существует множество универсальных инструментов для использования обычно администратором базы данных, которые не привязаны к конкретной конфигурации. Такие инструменты часто не входят в типовую поставку конфигурации и распространяются отдельно (обычно на дисках ИТС). Кроме типовых – программисты в интернете выкладывают массу собственных инструментов.

    В пример можно привести: обработки 1С работы с торговым оборудованием, консоль задач 1С (отображает список задач выполняющихся по расписанию), консоль запросов 1С (позволяет выполнять любые запросы без программирования) и т.п.

Где находятся обработки 1С

Итак, существуют обработки 1С встроенные в конфигурацию и внешние обработки 1С.

Встроенные обработки 1С используются программистом, разрабатывающим конфигурацию, ситуативно – то есть они могут быть или выведены в меню пользователя (часть в меню Сервис), или открываться программно из других объектов 1С (например, из формы справочника).

Так или иначе, под правами администратора можно открыть список встроенных в конфигурацих обработок и любую из них, если ее возможно открыть (то есть если у нее есть экранная форма и программист не поставил блокировку на открытие). Для этого в толстом клиенте используйте меню Операции/Обработки, в тонком клиенте используйте меню Все функции/Обработки. Если Вы не знаете, как найти эти меню – .

В конфигураторе встроенные в конфигурацию обработки 1С находятся в ветке Обработки.

Внешние обработки 1С открываются и в конфигураторе и в Предприятии с помощью меню Файл/Открыть.

Безопасность. Обратите внимание на . Модуль объекта обработки 1С выполняется автоматически при открытии обработки 1С в режиме Предприятия. Поэтому, если Вы открываете обработку написанную злоумышленником – она может быть выполнена автоматически без лишних вопросов.

Как сделать обработку 1С самостоятельно

Итак, приступаем к самому интересному – алгоритм создания обработки 1С самостоятельно с нуля.

Программы 1С включают в себя такое средство разработки справочников, отчетов и документов, как конфигуратор 1С. Он состоит из множества инструментов для разработки и усовершенствования информационных баз. Каждый пользователь имеет возможность с помощью конфигуратора подстроить программу учета под нужды и требования своего предприятия. Например, пользователи могут в конфигураторе 1С добавить документы, журналы, справочники или другие элементы, внести изменения в их структуру, реквизиты и свойства, то есть, - создать собственную информационную базу данных. Все эти действия производятся в подструктурах дерева объектов конфигуратора.

Как создать документ в конфигураторе 1С?
Работа с документами - обязательная составляющая ведения учета предприятия. Они нужны для того, чтобы описывать и отслеживать все операции, которые проводят сотрудники. Для каждой фирмы или компании набор необходимых для учета документов - индивидуальный. Поэтому каждый пользователь программы учета должен знать, как создать новый документ в конфигураторе 1С.

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

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

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

При создании нового документа в конфигураторе 1С важно позаботиться и о том, чтобы после добавления приходной накладной в регистре остатков появлялись данные о новом товаре. Для этого нужно использовать конструктор движения товаров. Здесь требуется нажать на кнопку «Запомнить выражения». После того, как создать документ в конфигураторе 1С 8 таким способом, вся информация с накладных автоматически будет добавляться в регистр «Остатки». Это поможет пользователям всегда обладать актуальной информацией о наличие товара на складе.

Удаление документов в конфигураторе
Если для того чтобы добавить новый документ в конфигуратор 1С не возникает никаких препятствий, то удаления документов напрямую система 1С не предвидит. Существует два способа: через пометку, прямое или интерактивное удаление. В большинстве случаев пользователи выбирают первый способ - удалить помеченные документы в конфигураторе 1С. Чтобы сделать это, необходимо перейти на вкладку «Операции»-«Обработка»-«Удаление помеченных объектов». После этого перед пользователем появится окно со списком всех объектов. Здесь нужно выбрать нужные документы и нажать кнопку «Контроль». Система проанализирует список и покажет, какие документы можно удалить, а какие - не рекомендуется, помечая их галочками и крестиками. Выбрав доступные для удаления документы, нужно нажать кнопку «Удалить».

Использовать интерактивное удаление рекомендуется только при необходимости отладки, потому что оно не гарантирует ссылочную целостность. Это значит, что в процессе удаления могут появиться «битые» ссылки, а это, в свою очередь, приводит к неполадкам в системе конфигурации. Для того чтобы включить возможность интерактивно удалить документ в конфигураторе 1С, нужно перейти в раздел «Общие»-«Роли», и активировать «Полные права». Они и предоставляют возможность прямого удаления документов. После этого для того чтобы удалить документ, достаточно выделить его и нажать Shift+Del на клавиатуре.

Редактирование документов в конфигураторе
Иногда случаются ситуации, когда пользователям необходимо изменить документ в конфигураторе 1С. Это можно сделать с помощью нескольких способов:
через окно редактирования объекта;
через палитру свойств объекта;
через окно «Дополнительно».

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

Второй метод изменения документа в конфигураторе в 1С - это палитра свойств документа. Открыть ее можно, нажав на «Свойства объекта» в меню или же воспользовавшись комбинацией Alt+Enter на клавиатуре. Окно «Дополнительно», которое тоже используют для редактирования, можно вызвать в контекстном меню объекта.

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

Другие операции с документами в конфигураторе
Печать документа из конфигуратора 1С осуществляется с помощью печатных форм. Для того чтобы открыть печатную форму документа, нужно в дереве объекта зайти в ветку «Макеты». Именно здесь прописываются шаблоны, вид и содержание печатных форм.

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

Множество пользователей интересуются, где в конфигураторе 1С проведение документов. Для того чтобы настроить эту операцию, необходимо перейти во вкладку «Обработка»-«Обработка документов». Именно здесь проводятся документы, и формируются реестры. Открыв эту обработку, можно редактировать процедуру проведения.

Если пользователю необходимо запретить возможность внесения изменения, можно установить для документа в конфигураторе 1С дату запрета изменений. Для этого конфигуратор содержит целую подсистему «Дата запрета изменений». Эта обработка проверяет, задана ли такая функция перед тем, как сохранять внесенные изменения. Если задана, редактирование не будет сохранено.

Скопировать документ в конфигураторе 1С можно, выделив его и нажав на клавиатуре Ctrl+C. После этого его можно будет вставить в другую базу данных, если нажать Shift+Insert. Также в некоторых конфигурациях можно выполнить копирование, просто перетянув документ мышью.

Помощь с объектами и документами в конфигураторе 1С
Специалисты компании «Сетби» проводят обучение азам программирования в конфигураторе 1С, для того чтобы сделать работу вашей компании максимально эффективной. Поэтому, если вам не удается самостоятельно разобраться с созданием и редактированием документов в конфигураторе 1С, обращайтесь к нам за помощью. Оставьте свои контакты, и мы свяжемся с вами для консультации.

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

Под катом я решил собрать несколько полезных фишек стандартного конфигуратора, которыми пользуюсь регулярно. Многие из них появились в платформе «1С:Предприятие 8.3.х», поэтому перед тестированием обязательно проверьте номер версии установленной у вас платформы.

Закладки

Функция установки в коде закладок появилось еще с первых релизов 8-й версии платформы «1С:Предприятие ». Штука чрезвычайно полезная и помогает разработчику быстрей передвигаться по коду. Например, у нас есть большой модуль, в который мы решили добавить ряд функций. Естественно, потом нам предстоит их отлаживать, а соответственно постоянно между ними переключаться.

Хорошо, если новые функции добавлены в самый конец модуля, а если потребовалось расположить в разных частях? Вот тут начинается самое интересное. Одни программисты начинают скролить текст (как правило, этим страдают новички). Более продвинутые применяют поиск по тексту (Ctrl + F ).

Оба способа рабочие, но пользоваться ими долго. Куда правильней использовать функцию «закладки». Например, переходим к какой-нибудь строке. Нажимаем ALT + F2 и получаем закладку (слева от строки отобразиться квадратик).

Убирается закладка тем же сочетанием клавиш. Так вот, закладок может быть в модуле расставлено много. По ним легко передвигаться нажатием клавиши F2 . Фича крутая, но она была изначально не доделана и не позволяла, например, передвигаться по закладкам в разных модулях. Это досадное ограничение создавало лишние тормоза для программистов, привыкших к хорошим IDE (например, Visual Studio, PHP Storm).

В версии 8.3 недочет исправили и сделали классную вещь – «Список закладок ». Нажимаем клавиши «Ctrl + Shift + F2 », и перед нами откроется окно с полным списком установленных закладок.

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

Таким образом, работать с закладками стало на порядок проще. Еще бы добавили возможность установки горячих клавиш на закладки, и стало бы совсем хорошо. Помню еще со времен «Delphi 6» привык к установке закладок по горячим клавишам Alt + . Наставил закладок и быстро перемещайся по ним.

Группировка строк

В «1С:Предприятие » с самого начала была одна большая проблема – отсутствие возможности создавать дополнительные модули для определенных объектов. Например, есть у меня справочник «Контрагенты» и мне хочется разделить его функционал на модули. Допустим, функционала очеееень много. Так вот, в моем распоряжении все равно стандартный набор: Модуль объекта, Модуль менеджера и модуль формы. Понятное дело, что у каждого модуля своя роль, но что делать мне с моими 100500 функциями, которые относятся непосредственно к справочнику «Контрагенты»?

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

Вот взять хотя бы библиотеку БСП. Стоит ее внедрить и в количестве модулей начинает теряться. Я уже молчу про конфигурации, которые построены на базе БСП. Там и сто пятьсот модулей от БСП, и еще столько же специально для конфигурации.

В общем, неудобство налицо (особенно после опыта разработки в языках, где нет подобных ограничений). Увы, спастись от этой проблемы в настоящее время не получится. Зато, мы можем использовать возможности группировки функций/процедур в модулях.

Например, есть у нас общий модуль «РаботаСКонтрагентами». В нем часть функций отвечают за поиск контрагента, другая часть за загрузку контрагентов из внешних источников и т.д. Чтобы не потеряться во всем этом многообразии возможностей, можно логически сгруппировать все функции/процедуру. Для этого в платформе 8.3 появилась функция под названием «Области». Рассмотрим пример:

#Область ПОИСК_КОНТРАГЕНТОВ Функция ПоискКонтрагентаПоПаспортнымДанным() //Код КонецФункции Функция ПоискКонтрагентаПоНаименованию() //Код КонецФункции #КонецОбласти #Область ИМПОРТ_КОНТРАГЕНТОВ Функция ИмпортКонтрагентаИзExcel() //Код КонецФункции Функция ИмпортКонтрагентаИзJSON() //Код КонецФункции #КонецОбласти

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

Клик мышкой по плюсику развернет область, и мы увидим свернутые функции. Если хочется сразу развернуть все имеющиеся функции (в пределах области), то кликаем по плюсику удерживая Ctrl.

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

Форматирование кода

Собственно говоря, тут и рассказывать особо нечего – выделяем код, нажимаем «Alt + Shift + F » и редактор попытается привести его в божеский вид в соответствии с вшитым code-style. Функция работает вполне сносно и ей обязательно надо пользоваться. Пишу это потому, что неоднократно видел, как разработчики пытаются отбивать отступы самостоятельно. Это конечно круто, но зачем тратить время, если большую часть работы можно выполнить одной горячей клавишей?

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

При необходимости, вы можете изменить стандартный макет и, в дальнейшем, осуществлять печать документа на основе вашего персонального ("пользовательского") макета. Для редактирования макета печатной формы предусмотрен механизм выгрузки на локальный компьютер. Правка макета проводится в локальной версии приложения системы "1С:Предприятие" (в частности, можно использовать бесплатное приложение 1С:Предприятие - Работа с файлами).


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




Редактирование макета печатной формы завершено, при выводе на печать документа будет использоваться макет, в который были внесены изменения.

Если вы захотите вернуться к прежнему макету печатной формы, нажмите кнопку Использовать стандартный макет . При этом, отредактированный макет будет по-прежнему присутствовать на сервере, и его можно будет снова включить нажатием кнопки Изменить .

Желаем приятной работы!

Как вставить в макет печатной формы логотип компании?

Приведем конкретный пример редактирования макета печатной формы Счета на оплату , а именно, рассмотрим, как вставить в него изображение, например, логотип компании (это изображение необходимо предварительно заготовить и сохранить в виде графического файла, например, в формате png или jpg).


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

Желаем приятной работы!

Скачать универсальную обработку объектов 1С 8.3.

В обычном приложении версии платформы 1С 8.2 и 8.1 (на обычных формах) была такая замечательная обработка, как «Универсальный подбор и обработка объектов». Она значительно упрощала жизнь программистам и администраторам программы.

Появилась такая же обработка 1С для управляемого приложения (8.3 и 8.2). До этого, в 1С 8.3, приходилось обходится типовой обработкой групповое изменение реквизитов, однако она решает не все задачи, которые требуются в повседневной работе пользователя или программиста 1С.

Поиск и отбор объектов

После скачивания обработки, мы можем запустить ее как внешнюю. Кто не знает, это делается через меню «Файл» – «Открыть». Появится окно обработки:

На первой закладке мы должны выбрать объект, с которым собираемся работать. И так, в поле «Объект поиска» уже выбран документ «Реализация (акты, накладные)». Это потому, что до этого уже выбирали данный объект. Обработка умеет запоминать.

По кнопке «Настройка отбора», мы можем установить отбор практически по любому полю объекта:

Если данных отборов не достаточно, можно отобрать нужные объекты с помощью произвольного запроса. Для этого переведите переключатель «Режим отбора» в соответствующее положение.

После всех настроек объекты нужно отобрать. Нажмем на кнопку «Найти объекты» и смотрим результат отбора:

Обработка элементов

Перейдем на закладку «Обработки»:

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

Произвольный алгоритм

Обработка «Произвольный алгоритм» позволяет написать программу действий над объектами на внутреннем языке 1С. Обработка требует навыков программирования и ее описание достойно отдельной статьи. С ее помощью можно сделать практические действия над объектами:

Установка реквизитов

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

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

Перенумерация объектов

Обработка «Перенумерация объектов» соответственно позволяет перенумеровать документы, либо изменить коды справочников. Обработка предоставляет богатый набор действий. Например, вы решили поменять префикс у документов, которые отобрали:

Теперь посмотрим, что мы можем сделать с сохраненными настройками. Оказывается, мы можем выполнить одним пакетом, перенеся в окно «Выбранные обработки»:

Теперь мы можем последовательно выполнить выбранные настройки, нажав кнопку «Выполнить».

По материалам: programmist1s.ru



 

Возможно, будет полезно почитать: