Вспомогательный инструмент облегчающий разработку стандартных элементов системы 1с предприятие это
Разработка в среде 1С:Предприятие 8 состоит из нескольких частей (весьма упрощенная градация):
Я постараюсь в данной публикации собрать ссылки и описания на публикации и разработки, которыми сам пользуюсь в реальной работе и которые сам считаю очень удобными и полезными.
1. Разработка архитектуры решения в режиме Конфигуратор - метаданные, связи и т.п.
Очень часто при реализации различных проектов по доработке типовых конфигураций, как маленьких, так и больших проектов, достаточно важным становится требование облегчения выполнения обновления на следующие релизы типовой конфигурации. Опытный специалист, который сопровождает и дорабатывает типовые конфы, всегда должен помнить об этом.
Для этого могут помочь внешние печатные обработки и отчеты, а также специальные методики, которые в разы могут облегчить подобные обновления.
Например, я использую внешние обработки для создания печатных форм объектов, обработки для заполнения табличных частей документов, TODO-списки для описания изменений и дальнейшего их поиска перед обновлением, и т.п.
Часть этих методик я описал в части 2, см.чуть ниже.
Вопрос минимизации трудоемкости обновлений очень хорошо проанализирован в разработке Использование свойств объектов при доработке типовых конфигураций автор poppy
я также использую подобную методику.
2. Непосредственное кодирование в режиме Конфигуратор или Предприятие
- Главный и мощнейшний помощник для работы в Конфигураторе - Рекомендую начать знакомство с ним со страницы Маленькая хитрость при кодировании поможет частично решить проблемы с контекстной подсказкой, той самой, что идет после нажатия точки.
. - Шаблоны для Конфигуратора от ndm или от GROOVY также очень хорошо помогают в разработке, т.к. упрощают ввод многих конструкций, как простых типа Если/Тогда/КонецЕсли, так и намного более сложных алгоритмов и целых блоков кода.
. - Отличный проект Внедрение проекта весьма несложно.
. - Довольно часто приходится создавать печатные формы к различным объектам конфигураций. Для этого очень удобно использовать специальную технику создания внешних печатных форм в типовых конфигурациях.
Очень удобное описание данной методики есть у автора poppy в целом цикле статей
Внешние печатные формы в восьмерке
Внешние печатные формы в восьмерке II
и готовая обработка для тестирования собственных печатных форм без постоянного добавления обработки в справочник "Внешних отчетов/обработок"
Обработка для тестирования внешних печатных форм в восьмерке
3. Внесение исправлений непосредственно в данные в режиме Предприятие
Подобные изменения можно вносить как с помощью специализированных разработок, сделанные под какие-то конкретные задачи, так и с помощью универсальных средств, позволяющих задавать различные алгоритмы для разных задач.
Две главнейших разработки, без которых я просто не мыслю свою работу, работа просто не будет столь эффективной:
Это подсистема, которую нужно объединять со своей конфигурацией. Подключение к своей конфигурации очень просто.
Возможностей подсистемы очень много - 3 мощнейших консоли (запросов, построителей, системы компоновки данных, удобная работа с подзапросами и временными таблицами), произвольные алгоримы, универсальные обработки (поиск и замена, универсальный подбор и обработка, поиск ссылок и т.д.), универсальный редактор, универсальный список и т.д. и т.п.
Это внешняя универсальная обработка со своими дополнительными модулями в виде внешних обработок, можно использовать без изменения своей конфигурации, т.е. буквально сразу же.
Возможностей подсистемы также очень много - совместная работа с 3 видами консолей (запросов, построителей, СКД), возможность сравнения как результатов запросов, так и текстов запросов, удобная работа с параметрами запросов, возможность формирования собственных отчетов СКД на базе файлов-шаблонов (в поставке есть куча шаблоново) и своей настройки СКД, мощнейшая возможность генерации кода 1С для создания запроса, установки параметров, его выполнения, и получения результатов, и многое другое.
В разработке данной обработки я участвую :) - так что старался, чтобы было удобно.
Универсальная консоль отчетов и Подсистема "ИР" могут решать задачи по внесению изменений в данные как на базе данных запросов, так и в произвольной форме
Также можно использовать различные консоли кода
4. Тестирование и исправление
Практически ни один разработчик/программист не считает работу над разработкой или проектом или простым фрагментом кода, не проверив перед этим их работоспособность (исключение составляют слишком небрежные либо слишком самоуверенные разработчики).
Проверять данные и свой проект можно в ручном режиме (подавляющее большинство разработчиков так и работают :( ), или в автоматическом/полуавтоматическом режиме.
ИМХО наиболее удобно все-таки автоматическое тестирование.
Очень часто при разработке я применяю юнит-тестирование и функциональное тестирование.
В качестве среды для создания тестов я использую собственную систему тестирования функциональных тестов Functest.v8 - например, с ее помощью удобно отлаживать код создания печатных форм, движений документов, запросов, правильность и неизменность данных (бухгалтерских через простые отчеты типа ОСВ, пользовательских через спец.запросы и т.п.)
Полезные ссылки по тестированию в 1С 8 я выложил в форуме данной разработки, в дальнейшем этот список будет обновляться.
Хотелось бы обсудить, какие еще средства улучшения разработки я упустил, их плюсы/минусы, возможное сопоставление
Форум
Конфигуратор
Все начинается с запуска Конфигуратора. Программы для 1С:Предприятие называются "конфигурациями" и создаются они в специальном режиме для разработчика "Конфигуратор". Обычные пользователи работают в режиме "Предприятие".
Объекты, свойства и методы
Самое главное понятие 1С -- это "объект". Объект -- это элемент реального мира. Объектом может быть все что угодно: компьютер, облако, кошка. Но нас интересуют только те объекты, которые имеются в офисной деятельности предприятия: документы, отчеты, справочники. Программа для 1С представляется как совокупность объектов, взаимосвязанных между собой, т.е. конфигурация объектов. Например, документ "Приказ о приеме на работу", справочник "Сотрудники", отчет "Сотрудники, принятые за период".
У объектов имеются некоторые атрибуты (свойства, реквизиты). Например, сотрудник имеет фамилию, имя, отчество, оклад, табельный номер. Приказ о приеме имеет номер и дату. Набор свойств объекта задается разработчиком.
Также объекты имеют определенные методы (процедуры и функции). Например, вы можете выбрать всех сотрудников с помощью метода справочника ВыбратьЭлементы(), или можно сохранить документ методом Записать().
Встроенный язык
Поведение объектов конфигурации задается на встроенном языке. Программист может писать на встроенном языке 1С свои собственные модули, состоящие из процедур и функций. Встроенный язык позволяет работать со справочниками, документами и другими объектами 1С. Можно, например, с помощью методов объектов выбрать все элементы справочника Сотрудники для вывода в отчет, или создать и сохранить любой документ.
Модули, процедуры и функции
Вся конфигурация, как вы уже наверное заметили, состоит из модулей. Это могут быть модули документов или модули отчетов или другие модули. Модули состоят из процедур и функций. Процедура -- это небольшая программа для выполнения определенной задачи. Функция отличается от процедуры, только тем, что имеет результат. Говорят, "функция возвращает результат". Например, модуль "Приказа о приеме на работу" может иметь следующие процедуры ПроверитьПравильность( ) и НапечататьПриказ( ).
Глобальный модуль
В системе 1С есть так называемый Глобальный модуль.Он относится к конфигурации в целом. Глобальный модуль нужен для того, что писать процедуры и функции, доступные в любом месте программы (в любом другом модуле). Для этого необходимо просто указать ключевое слово Экспорт. Также можно создать глобальные переменные, которыми можно будет пользоваться в любом месте программы. Но чем меньше будет таких глобальных переменных, тем лучше, так как модули получаются более независимыми друг от друга, что снижает количество ошибок в программе и облегчает отладку.
Для описания специфических алгоритмов обработки информации и создания интерфейса, ориентированного на удобное представление описанных в конфигурации данных, в системе 1С:Предприятие используется несколько технологических механизмов.
Встроенный программный язык. Необходимость наличия встроенного языка определена концепцией настраиваемости системы.
Синтаксис встроенного языка вполне отвечает стандартам высокоуровневых языков.
Язык является предметно-ориентированным. Он поддерживает специализированные типы данных предметной области, определяемые конфигурацией системы. Работа с этими типами данных в языке организована с использованием объектной техники. Язык ориентирован на пользователей различной квалификации. В частности, его отличает мягкая типизация данных (обеспечивающая быстрое написание программных модулей) и жесткий контроль синтаксических конструкций, уменьшающий вероятность ошибок.
Так как система сочетает в себе визуальные и языковые средства конфигурирования, использование встроенного языка в системе имеет событийно-зависимую ориентацию, то есть языковые модули используются в конкретных местах для отработки отдельных алгоритмов, настраиваемых в процессе конфигурации. Так, например, для документа можно описать алгоритм автоматического заполнения реквизитов при вводе нового документа. Данная процедура будет вызвана системой в нужный момент.
Механизм запросов. Для получения произвольных отчетов сложной структуры в системе предусмотрен предметно-ориентированный механизм запросов. Данное средство опирается на существующую условно-переменную структуру информационной базы системы, что позволяет сравнительно просто описывать достаточно сложные запросы.
Встроенный текстовый редакториспользуется системой для создания программных модулей на встроенном языке и для редактирования документов в текстовом виде.
Одной из особенностей редактора является возможность контекстного выделения цветом синтаксических конструкций встроенного языка.
Благодаря тому, что встроенный язык системы имеет мощные средства манипулирования текстами, текстовый формат может быть успешно использован для обмена с другими системами самой различной информацией.
Встроенный редактор диалогов. Работа с настраиваемыми структурами данных и работа в интерфейсе операционной системы MS Windows вызывает необходимость произвольной настройки форм ввода и редактирования информации. Для этого в системе 1С:Предприятие существует встроенный редактор экранных диалогов.
Редактор позволяет оформить большинство окон, которые используются в системе для ввода и просмотра предметной информации (формы документов, справочников, настройки отчетов).
Встроенный редактор табличных документов. Для всех выходных документов (первичных документов и отчетов) в системе предусмотрен единый формат — формат табличных документов. Это мощное средство, сочетающее в себе оформительские возможности табличной структуры и векторной графики. Таким образом, он может быть использован как для создания небольших документов с очень сложной структурой линий (типа платежного поручения), так и для объемных ведомостей, журналов и других подобных документов.
Редактор табличных документов предоставляет пользователям богатый набор оформительских возможностей (шрифты, цвета, линии, узоры). Имеется возможность вывода информации в графическом виде (диаграммы).
Одной из главных особенностей табличного редактора является ориентация на формирование отчетов при помощи встроенного языка системы 1С:Предприятие. Гибкое построение отчетов с его помощью становится возможным благодаря наличию механизма манипулирования секциями (областями документа). Редактор таблиц позволяет манипулировать не только горизонтальными, но и вертикальными секциями, что делает возможным создание отчетов, масштабируемых не только в высоту, но и в ширину.
С другой стороны, реализована и возможность создания отчета в виде интерактивной таблицы, являющейся одновременно инструментом ввода данных, их обработки и отображения результатов.
Конструкторы. Конструкторы — вспомогательные инструменты, облегчающие разработку стандартных элементов системы 1С:Предприятие. В системе имеются конструкторы справочника, документа, журнала документов, отчета и вида субконто. Еще пять конструкторов облегчают разработку программных модулей в стандартных случаях.
Система настройки пользовательских интерфейсов. Для того чтобы интерфейс конкретной конфигурации системы полностью отражал настроенные структуры данных и алгоритмы, в системе , помимо редактора диалоговых форм и табличных документов, предусмотрена возможность настройки общих интерфейсных компонент системы: меню, панелей инструментов, комбинаций клавиш.
На этапе конфигурирования может быть создано несколько пользовательских интерфейсов для разных категорий пользователей (руководителей, менеджеров, кладовщиков и других).
Система настройки прав пользователей и авторизации доступа. Данная система позволяет описывать наборы прав, соответствующие должностям пользователей. Структура прав определяется конкретной конфигурацией системы. Например, могут быть введены такие наборы прав, как «Главный бухгалтер», «Кладовщик», «Менеджер», «Начальник отдела».
Сам список пользователей создается уже для конкретной организации. Каждому пользователю назначается роль, включающая набор прав и пользовательский интерфейс.
Отладчик. Для удобства разработки конфигурации в системе предусмотрен отладчик. Отладчик позволяет прослеживать исполнение программных модулей конфигурации, замерять сравнительное время исполнения, просматривать содержимое переменных.
Администрирование работы пользователей. Для отслеживания текущего состояния работы системы используется монитор пользователей. Он позволяет просмотреть, кто из пользователей в настоящий момент работает с конкретной информационной базой, и в каком режиме.
Журнал регистрации измененийведется системой автоматически. В нем отражаются все факты изменений данных пользователями.
Глава 2.
Основные понятия системы 1С:Предприятие
В этой главе рассматриваются основные понятия, которыми оперирует система 1С:Предприятие. Данная глава будет полезна тем, кто еще не знаком с системой 1С:Предприятие.
Описание тех или иных механизмов будет сопровождаться примерами. Возможно, что в описании примеров будут встречаться еще незнакомые вам понятия и термины. Продолжайте чтение: смысл используемых терминов будет ясен в процессе изложения, а для более подробной информации всегда можно обратиться к соответствующим главам настоящего Руководства.
+(14) Предложение надо расценивать так:
1. Выложи деньги за:
1.3. Решение.
Там не 630 рублей, а на порядок больше.
если бы с франчовых времен у меня не остались красные и зеленые ключики, то обязательно купил-бы
(19) Тоже проверяется. Платформу отправил на проверку? Я что-то сдуру эксперта по техвопросам. Уже часа 3 вертится что проверяется
(21)(23) Похоже на перепись фрилансеров, ещё и за деньги :). Может в этом и есть смысл акции?
Коллеги, а программный ключ можно с одного пк на другой пк ведь перенести?
С доступом на ИТС что? Не понятно - Льготный купон, это все равно на ограниченный срок?
Пусть оно и стоило 6 300, но намного лучше.
(27) а вот хз. Переносить программный нельзя, а только заново его регать. Т.е. оно должно по особому обрабатывать пин-код.
Но раньше в комплекте разработчика, как я помню, ключик был юсб.
(32) ну ставь на линукс и будет тебе мини-сервер. И даже еще круче, чем мини-сервер по числу одновременно разрешенных соединений.
(34) т.е. ты предлагаешь мне сношаться с линухом на той же рабочей станции домашней? а мне оно надо?
(33) на мое разумение, для сертифицированного 1С эти все проблемы не имеют особого смысла. Я и без сертификата рабочий комп юзаю на стороне Заказчика.
(28) я что-то пропустил? У меня лет 10 уже комплект разработчика. Там с ним шла мукулатура и ключик. Вроде никаких преференций больше не давало.
(34) Ну есть альтернативные работающие способы и на винде. Но при каждом обновлении платфомы мне неуютно, что они могут сломаться. Так что мини-сервер вообще вещь для меня. Я понимаю, что я его могу с дисконтом взять без проблем, но лучше я эту разницу пропью за здоровье БН :)
(35) сношайся! Если ты на таком уровне оцениваешь свой профессионализм, то ты просто . подставь любое уместное окорбление
Но я думал, что ты умней, чем показал себя сейчас в такой реакции на слово линукс.
(40) чтобы делать такие выводы тебе надо знать конфигурацию моего компа хотя бы.
может она не позволяет держать отдельную виртуалку с линуксом.
и дешевле купить мини сервер за 3 тыщи, чем отдельный комп под линукс за 50.
(44) ну что делать. значит такая цена твоему профессионализму. Утверждение, что держать отдельную виртуалку с линуксом нет никакой возможности - ну не смеши читателей ветки
Бросился было покупать. Но "программный ключ" для разработчика, с привязкой к ОСи и железу? С ума сошли? Три раза материнку сменишь и всё, приплыли.
(41) кстати, а твой опыт с развертыванием нужного окружения в контейнерах, или как их там слово забыл, чем заменяют прежние виртуалки - сейчас этим пользуешься?
(48) Так в комплекте разработчика как раз только железный. 4 тыр цена вопроса (правда, еще любой курс от УЦ 1С надо купить).
(50) "ПИН-коды лицензии, обеспечивающей запуск "1С:Предприятия 8" на одном рабочем месте;"
(54) Это другая тема. Для покупки недостаточно сертификата спеца.
интересно, а вот у меня есть древний комплект разработчика (купленный официально), но нет сертификатов, чего я могу юзать?
(0) Странноватые все же маркетолухи в 1С. Разрабов на свою платформу не могут обеспечить всем необходимым забесплатно.
(61) эээ. так вроде любой любой сертифицированный с этой коробкой может получить доступ?
Я так понимаю просто снизили цену, не?
(58) А ключ - юсб-ключ из того комплекта куда дел? Если не потерял, то им пользуйся.
А вот на доступ к обновлениям платформы и на доступ к материалам на ИТС нужно проверить. По идее, если по описанию, то регистрация на юзерсы из комплекта разработчика дается навсегда.
(0) а ты уже эксперт по технологическим вопросам и эксплуататор ниибических систем?
Я уж думал домашний эмуль выкидывать, 630 рублей занести. До чего же жлобская контора, 30 лет уже на разработчиков бабки жмут.
Кстати я не понял. Владельцам одного из сертификатов или всех 3? Там и или ИЛИ? Если ИЛИ то я подхожу.
У кого нибудь проверка сертификата прошла?
Как долго?
На фоне Visual Studio community edition, MS SQL Server developer edition и комплекта разработчика (с железным ключиком) который мне сама 1с задарила на олимпиаде финансового университета в Москве в 2013-м году, сайт с зависшим колесиком "Сертификат проходит проверку" в очереди за платной программной лицензией выглядит не очень.
(74) наверное проверка включает личный визит нуралиева к каждому адинэкнику
дада что это за эксплуататор который до сих пор без купленной 1С сидит :)
Идея хорошая. Только зачем вот эти требования:
1С:Эксплуататор крупных ИС.
И вот это непонятно: "одну из самых массовых типовых конфигураций;". Почему одну? Я хочу больше!
(86) возможно, что девелоперы нужны 1С только для того чтобы подпитывать франчей и саму 1С.
локальная самодеятельность на местах - это так побочка - фикси самой 1С не нужны.
поэтому мне показалась странной коллаборация "Охотницы. " в ролике с 1С.
у них так то разные интересы в конечном итоге.
Мелочь, а приятно. Вот и еще одна польза от полученных когда-то сертификатов. Жаль Microsoft не позволяет съэкономить при наличии их же сертификатов.
Надеюсь у 1С это будет только первым шагом, и они все же введут льготы на приобретение конфигураций. Давно хочу сделать пару решений для 1С:УХ, но позволить себе эту конфигурацию немогу☹
Не гораздо проще купить БУ ключь USB и не иметь геморроя с программной лицензией
так как у разработчика может часто меняться железка или иные обстоятельства что приводят к сбоям активации
Читайте также: