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

Существует два способа кастомизации:

  1. Использование механизма расширений (рекомендуемый). Использование расширений предпочтительно тем, что все изменения в программе будут являться внешними по отношению к исходной конфигурации, что в свою очередь, позволяет безболезненно проводить обновление программы официальными версиями Nullarity, без потери ваших собственных изменений. Расширения, можно воспринимать как плагины или addon-ы, которые вы часто можете встречать в других программных решениях, таких как почтовые клиенты или интернет-обозреватели (Chrome, Mozilla FireFox и другие).
  2. Непосредственное изменение исходной конфигурации (не рекомендуемый). Этот вариант требует глубоких знаний в области конфигурирования системы 1С:Предприятие 8, предпочтителен в случае значительных программных изменений и требует ручного управления загрузкой официальных обновлений Nullarity.

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

Запуск конфигуратора

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

Затем, нужно открыть конфигурацию:

Использование расширения

После того, как конфигурация была открыта, добавим расширение:

И установим следующие параметры:

После этого, по правому клику на строке с расширением, сменим область его действия:

Это сделает наше расширение доступным для всех организаций (не путать с контрагентами).

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

Теперь, мы можем менять добавленную в расширение печатную форму. Например, выделим надпись Дата выписки жирным шрифтом с подчеркиванием:

После модификации, сохраним внесенные изменения:

И запустим программу в режиме 1С:Предприятие, убедимся, что наше расширение успешно применилось:

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

Управление расширениями

Вы можете создавать сколь угодно много расширений, и включать в них самые разнообразные объекты. Технически, расширения представляют из себя файлы с расширением cfe. Расширение можно сохранить в файл, передать по электронной почте и загрузить в другой информационной базе. При необходимости, расширение можно отключить или удалить (например, специфичная функциональность вам больше не требуется, или она была включена в официальное обновление Nullarity).

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

Непосредственное изменение исходной конфигурации

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

Конфигурация Nullarity 5 поставляется в режиме включенной поддержки пользователей, что по умолчанию, отключает возможность модификации решения, визуально, все объекты в дереве метаданных "на замочке":

Для включения возможности изменения конфигурации, необходимо произвести следующие действия:

При этом конфигурация становится доступной для модификаций.

Внимание!

Подробное описание процессов конфигурирования системы 1С:Предприятие 8 выходит за рамки справочного портала Nullarity 5, и доступно на сайте информационно-технологической поддержки компании 1С

Приложение: Идентификаторы и имена объектов

Для того, что бы вам было проще находить объекты конфигурации в структуре метаданных Nullarity 5, мы подготовили список соответствия идентификаторов и имен объектов: 

Справочники

Представление Идентификатор
Автомобили Cars
Агенты Agents
Адреса Addresses
Адресная книга AddressBook
Банки Banks
Банковские приложения BankingApps
Банковские счета BankAccounts
Валюты Currencies
Варианты оплаты PaymentOptions
Виды кампаний CampaignTypes
Виды контактов ContactTypes
Виды образования EducationTypes
Виды субконто Dimensions
Виды товаров ItemTypes
Города Cities
Графики Schedules
Графики амортизации DepreciationSchedules
Группы долгосрочных активов AssetTypes
Группы налогов с продаж TaxGroups
Группы пользователей Membership
Группы пользователей (документы) UserGroupsDocuments
Группы цен PriceGroups
Диапазоны БСО Ranges
Договора Contracts
Документы об образовании EducationDocuments
Должности Positions
Единицы Units
Задачи Tasks
Значения свойств PropertyValues
Источники лидов LeadSources
Календарь Calendar
Категории застрахованных лиц Insurance
Классификатор банков BanksClassifier
Классификатор должностей PositionsClassifier
Ключи оплат PaymentKeys
Ключи строк RowKeys
Ключи товаров ItemKeys
Книги Books
Коды налогов TaxCodes
Компании Companies
Компьютеры Computers
Константы Constants
Контакты Contacts
Контрагенты Organizations
Лиды Leads
Логины Logins
Маркетинговые кампании Campaigns
Марки и виды автомобилей CarTypes
Места оплаты PaymentLocations
Метаданные Metadata
Мобильные приложения MobileApps
Налоги и отчисления Taxes
Налоги с продаж TaxItems
Настройки обмена Exchange
Настройки отчетов ReportSettings
Настройки пользователей UserSettings
НДС VAT
Нематериальные активы IntangibleAssets
Номенклатура Items
Нумератор Numeration
Образование Education
Обращения Salutations
Операции Operations
Организации Tenants
Освобождения DeductionsClassifier
Основные средства FixedAssets
Отражение затрат ExpenseMethods
Отрасли Industries
Отчетность Reports
Оформление календаря CalendarAppearance
Партии товаров Lots
Подразделения Departments
Подразделения покупателей CustomerDivisions
Пользователи Users
Помещения Rooms
Почтовые ключи MailKeys
Почтовые метки MailLabels
Почтовые ящики Mailboxes
Праздники Holidays
Причины отказов QuoteRejects
Проекты Projects
Промо-коды PromoCodes
Профессии Professions
Разделы задач Sections
Районы States
Распоряжения Commands
Сеансы Sessions
Серии Series
Склады Warehouses
Сотрудники Employees
Спецификации BOM
Способы доставки DeliveryMethods
Статусы задач Statuses
Статусы лидов LeadStatuses
Статьи ДДС CashFlows
Статьи затрат Expenses
Статьи увольнения Terminations
Страны Countries
Таможенные группы CustomsGroups
Таможенные платежи CustomsCharges
Теги Tags
Телефонные номера Phones
Территориальные подразделения Divisions
Удостоверяющие документы IDTypes
Упаковки Packages
Условия Terms
Условия свойств PropertyConditions
Учебные заведения Institutions
Физлица Individuals
Характеристики Features
Цены Prices
Шаблоны содержаний ContentTemplates

Документы

Представление Идентификатор
Авансовый отчет ExpenseReport
Авансы по ЗП PayAdvances
Акт закупки товаров ItemsPurchase
Акт закупки услуг ServicesPurchase
Амортизация ОС и НМА AssetsCalculation
АО, Мобильный MobileReport
Больничный SickLeave
Ввод в эксплуатацию ОС Commissioning
Ввод МБП в эксплуатацию Startup
Ввод остатков Balances
Внутренняя заявка InternalOrder
Возврат денег от поставщика VendorRefund
Возврат денег покупателю Refund
Возврат от покупателя Return
Возврат поставщику VendorReturn
Встреча Meeting
Входящее IncomingEmail
Выплата агентам AgentPayment
Выплата ЗП PayEmployees
Выпуск продукции Production
Документ Document
Загрузка из банка LoadPayments
Задолженность покупателей Debts
Задолженность поставщикам VendorDebts
Заказ на производство ProductionOrder
Заказ покупателя SalesOrder
Заказ поставщику PurchaseOrder
Заказ-инвентаризация IOSheet
Закрытие авансовых отчетов ClosingEmployees
Закрытие выданных авансов ClosingAdvancesGiven
Закрытие полученных авансов ClosingAdvances
Запись времени TimeEntry
Запись НДС с покупок VATPurchases
Запись НДС с продаж VATSales
Инвентаризация Inventory
Инвентаризация МБП LVIInventory
Инвентаризация НМА IntangibleAssetsInventory
Инвентаризация ОС AssetsInventory
Исходящее OutgoingEmail
Кадровые изменения EmployeesTransfer
Кассовое перемещение CashTransfer
Коммерческое предложение Quote
Комплектация Assembling
Копия DocumentVersion
Корректировка долга покупателя AdjustDebts
Корректировка долга поставщика AdjustVendorDebts
Мой заказ TenantOrder
Моя оплата TenantPayment
Настройка амортизации НМА AmortizationSetup
Настройка амортизации ОС DepreciationSetup
Начисление ЗП Payroll
НН InvoiceRecord
Операция Entry
Оплата покупателя Payment
Оплата поставщику VendorPayment
Оплата проектов ProjectsPayment
Остатки ЗП PayrollBalances
Остатки НМА IntangibleAssetsBalances
Остатки ОС AssetsBalances
Остатки ТМЦ ItemBalances
Отгрузка Shipment
Отклонение Deviation
Отпуск Vacation
Отсутствие на работе Absence
Перемещение Transfer
Перемещение диапазона TransferRange
Перемещение МБП LVITransfer
Перемещение НМА IntangibleAssetsTransfer
Перемещение ОС AssetsTransfer
ПКО CashReceipt
Платежное поручение PaymentOrder
Подготовка к отгрузке PickupOrder
Поступление товаров VendorInvoice
Прием на работу Hiring
Принятие к учету НМА IntangibleAssetsCommissioning
Прочее поступление ReceiveItems
Путевой лист Waybill
Разделение диапазона SplitRange
Разукомплектация Disassembling
Расчет курсовой разницы CalculationRatesDifferences
Реализация Invoice
Реализация (проекты) ProjectsInvoice
Регистрация диапазона EnrollRange
РКО CashVoucher
Роли Roles
Событие Event
Списание WriteOff
Списание бланка WriteOffForm
Списание МБП LVIWriteOff
Списание НМА IntangibleAssetsWriteOff
Списание ОС AssetsWriteOff
Счет покупателя Bill
Счет поставщика VendorBill
Табель Timesheet
Таможенная декларация CustomsDeclaration
Увольнение Termination
Установка цен SetupPrices

Отчеты

Представление Идентификатор
Акт сверки взаиморасчетов Reconciliation
Анализ лидов Leads
Анализ проектов Projects
Анализ рабочего времени TimeWorked
Анализ счета AccountAnalysis
Банк времени BankedHours
Взаиморасчеты с покупателями DebtDetails
Взаиморасчеты с поставщиками VendorDebtDetails
Внутренние заказы InternalOrders
Выплата ЗП PayEmployeesFilling
Движения документа Records
Дебиторы Debts
Диапазоны БСО Ranges
Доходы и расходы IncomeStatement
Журнал рабочего времени WorkLog
Журнал-ордер SubsidiaryLedger
Задолженность по проектам ProjectPayments
Заказы на производство продукции ProductionOrderItems
Заказы покупателей SalesOrders
Заказы поставщикам PurchaseOrders
Заказы товаров покупателей SalesOrderItems
Заказы товаров поставщикам PurchaseOrderItems
Закрытие авансовых отчетов ClosingEmployeesFilling
Закрытие выданных авансов ClosingAdvancesGiven
Закрытие полученных авансов ClosingAdvancesFilling
Заполнение ОС AssetsFilling
Заполнение платежных поручений PaymentOrdersFilling
Карточка субконто AnalyticTransactions
Карточка счета Transactions
Кассовая книга CashBook
Книга покупок PurchasesRegister
Книга продаж SalesRegister
Кредиторы VendorDebts
Личная карточка PersonalCard
Начисление ЗП PayrollFilling
Обеспечение заказов Provision
Оборотно-сальдовая ведомость BalanceSheet
Обороты счета AccountTurnovers
Общий Common
ОСВ по счету AccountBalance
Остатки на складах Stock
Отчет по проводкам Entries
Прайс-лист PriceList
Проблемные БСО RangeProblems
Продажи Sales
Продажи проектов ProjectSales
Размещение Allocation
Размещение AllocationProduction
Расчетная ведомость Payroll
Расчетные листки Payslips
Расчеты с агентами Agents
Расчеты с организациями Tenants
Себестоимость Cost
Состояние коммерческих предложений QuoteStatuses
Табель Timesheet
Табеля по проектам TimesheetProjects
Товары Items
Утверждение табелей TimesheetApprovals
Часы работ к выставлению TimeEntriesInvoicing

Обработки

Представление Идентификатор
Print test PrintTest
Выбор цвета Colors
Выгрузка в банк UnloadPayments
Выгрузка накладных UnloadInvoices
Генерация промо-кодов PromoCodes
Загрузка валют DownloadCurrencies
Загрузка накладных LoadInvoices
История изменений UpdateInfobase
Календарь Calendar
Консоль заданий JobConsole
Лицензирование Licensing
Обмен данными ExchangeData
Обновление приложения Updates
Операции с ценами Prices
Печать AN-1 AN1
Печать MF-1 MF1
Печать авансового отчета ExpenseReport
Печать акта на списание AssetsWriteOff
Печать выплаты и авансов по ЗП Paysheet
Печать инвентаризации Inventory
Печать инвентаризации ДА InventoryAssets
Печать коммерческого предложения,
счета на оплату, накладной, заказа покупателя/поставщика,
внутренней заявки
Print
Печать МБ-8 OV8
Подбор товаров Items
Подготовка к отгрузке PickupOrder
Подпись Signature
Почта EmailClient
Расчет себестоимости Cost
Свойства Properties
Счет на оплату Bill
Таблицы Tables
Удаление объектов DeleteObjects
Универсальный обмен данными в формате XML Exchange