АнализПродаж
. Показывает объем продаж заданной группы товаров. Для получения данных будет использован регистр накопления Продажи.
| Общую структуру этого прикладного решения можно изобразить следующим образом (стрелки обозначают потоки данных):
| |
| Поясним основные взаимосвязи между объектами:
| |
| · | Данные из справочников обычно используются в других объектах конфигурации, так как именно в справочниках содержится информация о ключевых объектах предметной области.
| |
| · | Документы регистрируют происходящие события, имеющие смысл с точки зрения экономики, и изменяют состояние регистров.
| |
| · | Отчеты используют данные из регистров и других объектов конфигурации для показа нужной пользователям информации.
| |
| Задача разработчика ? создать или модифицировать необходимые объекты конфигурации, связать их друг с другом, настроив их свойства, задать поведение объектов, используя средства встроенного языка.
| |
| Все эти объекты создаются с помощью визуальных средств, как показано ниже.
| |
| Для начала работы после установки 1СПредприятия 8.0 создайте новую информационную базу, затем запустите 1С Предприятие 8.0 в режиме Конфигуратор и откройте дерево конфигурации. Все эти операции описаны в книге 1С:Предприятие 8.0. Руководство по установке и запуску, входящей в документацию к программному продукту.
| |
Действия
"): "Поиск ссылок на объект" и "Поиск ссылок в объекте". Они показывают список других объектов конфигурации, связанных с текущим.
Дерево конфигурации
представляет собой иерархический список всех объектов конфигурации. Раскрыв любую ветвь дерева, можно получить список объектов данного вида, например, список справочников. Если затем раскрыть любой справочник, то увидим его структуру и подчиненные объекты ? формы, макеты и т.д. Ниже на рисунке показано дерево конфигурации и рядом раскрытая ветвь справочника Номенклатура.
| Дерево конфигурации позволяет создавать и удалять объекты конфигурации, менять их порядок, копировать и переносить объекты, фильтровать объекты по подсистемам.
| |
| Также стоит отметить две полезные команды, доступные через контекстное меню (или по кнопке " |
Документы
используются для регистрации событий, происходящих в жизни предприятия. Документы сохраняются в информационной базе, имеют дату и время, а также номер. В нашей конфигурации будут созданы следующие документы:
| · | ПриходнаяНакладная. Осуществляет оприходование товара на склад, добавляет запись о приходе товара в регистр накопления Остатки.
| |
| · | РасходнаяНакладная. Регистрирует реализацию товара, уменьшает количество в регистре Остатки и добавляет запись в регистр Продажи.
| |
Документы хранят информацию о произошедших событиях в жизни организации, например, приходная накладная, платежное поручение. Документ характеризуется номером и датой. Обычно при проведении документа изменяется состояние регистров, например, при проведении приходной накладной увеличивается количество товара в регистре Остатки.
Хранилище конфигурации
. В хранилище содержится текущая разрабатываемая конфигурация и история ее изменения (версии).
| Чтобы внести изменения в какой-нибудь объект конфигурации, каждый разработчик должен сначала |
Интерфейсы
Представляют собой совокупность панелей интерфейса: меню и панели инструментов, например, интерфейсы Бухгалтер, Руководитель.
Языки
Языки интерфейса конфигурации, например, Русский, Английский, Украинский. В 1С:Предприятии 8.0 можно разрабатывать многоязычные конфигурации, рассчитанные на работу пользователей, говорящих на разных языках.
| Поведение объектов конфигурации определяется с помощью установленных свойств и программы на встроенном языке. Например, на встроенном языке задаются действия документа при его проведении, алгоритм формирования печатной формы отчета, процедура определения цены продажи со скидкой и т.д. Разработчик пишет текст программы в строго определенных точках конфигурации ? программных модулях, например, в модуле формы документа ПриходнаяНакладная или в модуле отчета ОстаткиТоваров. Различные типы программных модулей будут рассмотрены в главе "Встроенный язык", а сейчас мы познакомимся с основными инструментами разработки системы 1C: Предприятия 8.0.
| |
Код:
ВЫБРАТЬ Наименование, ЗакупочнаяЦена
ИЗ Справочник.Номенклатура
ГДЕ ЗакупочнаяЦена > 1300
| Более того, язык запросов 1С:Предприятия 8.0 содержит средства,не имеющие аналогов в стандартном SQL, например, разыменование ссылочных полей (обращение к свойствам объектов через точку), подсчет итогов и др.
| |
| Обратите внимание, что механизм запросов в 1С: Предприятии 8.0 применяется только для выборки данных, с его помощью нельзя изменить данные. Для изменения данных средствами встроенного языка необходимо получить специальный объект, позволяющий
| |
| модифицировать данные в базе данных (например, ДокументОбъект).
| |
Выборка = Справочники.Сотрудники.Выбрать ();
Пока Выборка.Следующий() Цикл
Если Выборка.Оклад > 10000 Тогда
Сообщить(Выборка.Наименование + " имеет оклад " + Выборка.Оклад);
КонецЕсли;
КонецЦикла;
Количество
.
| Экранную форму документа, в принципе, можно не создавать, она будет сгенерирована автоматически, когда в ней возникнет необходимость. Но иногда такие формы не вполне удобны для ввода и просмотра данных, тогда следует создать экранную форму самостоятельно.
| |
| Ниже показано окно для редактирования экранной формы документа.
| |
| В окне редактирования документа на закладке "Движения" отметьте регистры, по которым он может делать движения. Для приходной накладной нужно отметить регистр Остатки, а для расходной накладной ? регистры Остатки и Продажи.
| |
| Далее создадим алгоритм проведения приходной накладной, при котором в регистре Остатки будет увеличиваться количество товаров.
| |
| Воспользуемся для этого конструктором движений. В правой части отображаются реквизиты документа и его табличных частей, в нижней части измерения и ресурсы регистра. По нажатии кнопки "Заполнить выражения" соответствие между ними будет установлено автоматически. После нажатия на кнопку "ОК " конструктор движений сгенерирует текст программы на встроенном языке.
| |
| Документ РасходнаяНакладная создается аналогичным образом, за исключением того, что он еще делает движения типа "расход" по регистру Остатки и добавляет записи в регистр оборотов Продажи. Мы создадим дополнительные реквизиты |
Константы
В константах хранятся редко изменяемые значения, например, название организации, ИНН, ФИО руководителя и т.д.
Конструктор для элементов управления
| Размещает элементы управления в форме и настраивает их основные свойства
| |
Конструктор движений документа
| Формирует текст программы для документов, изменяющих состояние регистров.
| |
Конструктор форм
| Вызывается для новых экранных форм, автоматически размещает элементы управления и настраивает их связи с данными объекта.
| |
Конструктор меню
| Автоматически создает главное пользовательское меню конфигурации на основе списка всех объектов конфигурации.
| |
Конструктор печати
| Формирует процедуру и макет для печати информации об объектах, например, списка элементов справочника и сведений об одном элементе.
| |
Конструктор ввода на основании
| Предназначен для автоматического формирования алгоритма ввода одного объекта на основании другого, например, ввода расходной накладной на основании заказа покупателя. При вводе на основании часть реквизитов и табличных частей нового объекта можно заполнить, взяв их из объекта-основания, например, это могут быть реквизит Контрагент и табличная часть Товары.
| |
Конструктор выходной формы
| Позволяет сформировать более сложную выборку данных и макет для ее печати. Фактически является конструктором запросов с дополнительной закладкой "Выходная форма".
| |
Конструкторы объектов конфигурации
| Строго говоря, окна редактирования объектов конфигурации (справочников, документов...) тоже выполнены в виде конструкторов. Свойства объекта распределены по закладкам так, чтобы подсказать разработчику правильный порядок создания объекта.
| |
| Использование конструкторов облегчает выполнение типичных действий и упрощает освоение системы начинающими разработчиками. Но нельзя полагаться только на конструкторы! Нужно понимать, какие именно действия делает каждый конструктор, чтобы при необходимости произвести их вручную.
| |
Критерии отбора
Нужны для отбора данных по определенному признаку. Например, по критерию отбора Контрагент можно выбрать все документы, относящиеся к заданному контрагенту.
Масштабируемость:
| · Ожидается значительное увеличение масштабируемости прикладных решений при правильном использовании механизмеов платформы, особенно для клиент-серверного варианта работы.
| |
| · В клиент-серверном варианте реализуется трехуровневая архитектура, когда между клиентом и сервером баз данных располагается сервер 1С:Предприятия 8.0. Допускается работа программы на встроенном языке на сервере 1С:Предприятия 8.0.
| |
| · В файловом варианте работы 1C: Предприятия 8.0 информационная база хранится в одном файле, который включает в себя конфигурацию, данные и административную информации. Конфигурация (без данных) может быть выгружена в cf-файл (аналог md-файла версии 7.7).
| |
| · Введен механизм СОМ-соединения для взаимодействия с другими приложениями, поддерживающими данную технологию.
| |
| · Добавлены средства групповой разработки ? хранилище конфигурации с поддержкой истории изменений.
| |
Номенклатура
. Содержит список товаров.
| · | Контрагенты. Содержит список клиентов и поставщиков, а также всех внешних организаций.
| |
| · | Склады. Содержит список складов (мест хранения) организации.
| |
Нумераторы
Нумераторы предназначены для единой (сквозной) нумерации документов нескольких видов. Например, нумератор Кадровый используется для присвоения номеров всем кадровым приказам.
Обработки
Производят некоторую обработку информации, содержащейся в базе данных, например, обработка РасчетНачислений, ЗакрытиеПериода.
| Ниже дано краткое описание остальных объектов конфигурации, располагающихся в ветви "Общие" дерева конфигурации:
| |
Общие формы
Общие экранные формы не принадлежат конкретному объекту, а относятся к конфигурации в целом. Они могут использоваться в разных местах программы, например, форма ВводАдреса.
Общие картинки
Картинки, используемые на кнопках, формах и других интерфейсных объектах. Картинки можно рисовать с помощью редактора картинок.
Общие макеты
Общие макеты (шаблоны печатных форм) также не принадлежат конкретному объекту конфигурации, например, макет РеестрДокументов. Они используются в других программных модулях.
Общие модули
Содержат процедуры и функции, используемые в других программных модулях, например, общий модуль РегламентныеПроцедуры.
Общие отличия:
| · Встроенный язык версии 8.0 не совместим с языком версии 7.7. При конвертации информационной базы тексты программных модулей не конвертируются (переносятся в виде комментариев).
| |
| · Платформа теперь не делится на базовые объекты и поставляемые отдельно компоненты (бухгалтерия, оперативный учет, расчет). Все объекты конфигурации включены в стандартную поставку.
| |
| · Разработан механизм поставки и поддержки конфигураций.
| |
| · Разработан новый эргономичный дизайн пользовательского интерфейса, ориентированный на облегчение освоения программ неподготовленными пользователями и обеспечение высокой скорости работы для опытных пользователей, что особенно актуально при массовом вводе информации.
| |
| · В информационной базе всегда хранится две конфигурации: конфигурация базы данных, которая соответствует текущей базе данных (т.е. структуре таблиц), и текущая конфигурация, которую можно редактировать и сохранять без прерывания работы пользователей. Но при обновлении конфигурации базы данных требуется монопольный захват информационной базы.
| |
Основной
, для чего воспользуемся конструктором меню.
| Здесь же можно создать и главную панель инструментов. Для этого необходимо нарисовать или где-нибудь взять уже готовый набор пиктограмм для кнопок.
| |
| В свойствах конфигурации необходимо установить этот интерфейс в качестве основного, тогда он будет использоваться по умолчанию при запуске конфигурации. Итак, практически вся конфигурация была создана визуальными средствами. Алгоритмы проведения документов на встроенном языке были сформированы конструкторами. Единственное, что пришлось запрограммировать самостоятельно, это всего несколько строчек на встроенном языке в отчете АнализПродаж, причем запрос тоже был составлен с помощью конструктора.
| |
Остатки
. Показывает остатки товаров на выбранном складе. Данные будут браться из регистра накопления Остатки.
Отчеты
предназначены для отображения на экране и печати итоговых и детальных данных. Отчеты не хранят никаких данных в информационной базе, они лишь извлекают информацию из других объектов, обрабатывают ее и выводят результаты в выходную форму. В нашей простой конфигурации мы создадим всего два отчета:
На основе информации из базы данных отчеты выдают печатные формы, содержащие детальную и сводную информацию. В качестве примера можно привести отчеты ОборотноСальдоваяВедомость, СписокСотрудников, АнализПродаж.
Перечисления
Перечисление ? это набор значений, заданный еще на этапе разработки прикладного решения, он не редактируется в режиме "Предприятие". Главное, что стоит понять, сама конфигурация рассчитана на определенные перечисления, например, на перечисление ТипКлиента со значениями Обычный и ОченьВажнаяПерсона. Для VIP-клиентов в программе может быть предусмотрена скидка.
Планы счетов
Содержат список счетов бухгалтерского или управленческо-го учета, например, планы счетов Стандартный, Управленческий, План GААР.
Планы видов характеристик
Предназначены для хранения дополнительных видов характеристик объектов, например, дополнительных свойств товаров (вес, цвет, размер). Новые виды характеристик можно вводить в режиме "Предприятие". Через этот объект также реализован механизм аналитического учета по субконто в бухгалтерском учете.
Планы видов расчета
Содержат виды расчета, объединенные по сходным признакам, к которым относятся одинаковые базовые виды расчета, одинаковые правила перерасчета, общие правила вытеснения по времени. В качестве примера можно привести планы видов расчета ОсновныеНачисления, Налоги.
Подсистемы
Предназначены для группировки других объектов конфигурации, например, подсистемы Кадры, Торговля, Маркетинг. Каждый объект может входить сразу в несколько подсистем. Подсистемы могут быть подчиненными друг другу.
Последовательности
Предназначены для обеспечения правильной последовательности проведения документов с учетом возможных исправлений "задним числом", например, последовательность ПартионныйУчет.
Разработка:
| · Разработана новая унифицированная объектная модель системы. Добавлены, изменены или удалены некоторые объекты конфигурации, но обеспечивается преемственность с версией 7.7 по части основных понятий.
| |
| · Скорость освоения платформы должна возрасти за счет унифицированной объектной модели системы, так же как и скорость разработки конфигураций. Последнее достигается, например, благодаря новым программным объектам и механизмам.
| |
| · У справочников, документов и других объектов конфигурации поддерживается несколько табличных частей.
| |
| · Расширен набор элементов управления, их свойств и событий. Теперь в форме могут располагаться ActiveX-компоненты.
| |
| · Переработан механизм запросов, ориентированный на обработку экономической информации. Запросы рекомендуетется использовать как основное средство извлечения данных.
| |
| · Отладчик включен в Конфигуратор. Он умеет показывать список свойств объектов с указанием их значений и типов. Есть возможность просмотреть коллекции, например, массивы и таблицы значений.
| |
| · Функциональность внешней компоненты v7plus.dll включена в платформу в виде объектов Почта, СистемнаяИнформация, ИнтернетСоединение, FТРСоединение и т.д. Есть встроенные средства для работы с XML-документами.
| |
Регистрах накопления
хранится информация об остатках или оборотах, связанных с объектами предметной области. Нам понадобятся следующие регистры накопления:
| · | Остатки. Хранит записи о движении товаров на складе, пре доставляет информацию об остатке товаров на каждом складе.
| |
| · | Продажи. Хранит записи о продажах, предоставляет информацию об объеме продаж каждого товара в разрезе контрагентов.
| |
Регистры бухгалтерии
Хранят записи (проводки) основанные на определенном плане счетов, например, регистр бухгалтерии Управленческий.
Регистры накопления
Накапливают числовую информацию в разрезе заданных измерений, например, регистры ОстаткиТоваров, Продажи. Движения регистров накопления всегда связаны с документами (регистраторами) и обычно создаются в момент проведения документа.
Регистры расчета
Предназначены для хранения учетных записей сложных периодических расчетов, например, регистр расчета Удержания. Каждый регистр расчета основан на каком-либо плане видов расчета.
Регистры сведений
Предназначены для хранения любой информации об объектах в разрезе заданных измерений, например, регистр сведений ЦеныТоваров. Если требуется хранить историю изменения информации, то регистр сведений делается периодическим, например, регистр КурсыВалют.
Ресурс
Количество. Обратите внимание на то, что при указании типа данных для измерения Товар выбирается справочник Номенклатура. Так в простейшем случае настраиваются связи между объектами.
| Ниже показано окно для редактирования структуры регистра Остатки и его свойства.
| |
| Регистр Продажи создается таким же способом. В нем будут два |
Сумма. Регистр будет хранить объем продаж за период в разрезе контрагентов и товаров, т. е. это будет
Роли
Предназначены для определения прав пользователей, работающих с информационной базой, например, роли Кадровик, Администратор. Каждый пользователь может иметь несколько ролей.
Список пользователей
Чтобы пользователь имел возможность войти в систему, его необходимо зарегистрировать в списке пользователей, назначить ему интерфейс и доступные роли см. ниже. Администратор всегда может узнать, кто подключен к информационной базе в данный момент.
Справочники
предназначены для хранения условно-постоянной информации. Они используются в других объектах, например, документах, регистрах и отчетах. В нашем примере будут следующие справочники:
В справочниках содержится условно-постоянная списковая информация, например, список товаров, список сотрудников. Такие сведения обычно характеризуются кодом и наименованием.
Стили
Стили оформления, включающие в себя различные элементы: цвет фона экранной формы, цвет фона редактирования полей, цвет отрицательных чисел и т.д. В качестве примера можно назвать стили Основной, Яркий, РегламентныеПроцедуры.
Сумма
.
| Алгоритм проведения документа формируется автоматически конструктором, который мы уже использовали выше, в конструкторе надо добавить следующие движения , но на этот раз покажем, как выглядит программа на встроенном языке.
| |
| Заметьте, что все конструкции записаны на русском языке, но их также можно записывать и на английском.
| |
Тестирование и исправление информационной базы
Проверку необходимо проводить при возникновении подозрений на наличие ошибок в данных, после критических ситуаций, например, отключения электричества, а также периодически для профилактики возникновения неполадок.
Выгрузка и загрузка информационной базы
Эти команды позволяют выгрузить информационную базу в файл и загрузить ее из файла. Архивную копию базы рекомендуется делать каждый день, но в каждом конкретном случае периодичность архивирования определяется интенсивностью ввода и изменения данных.
| При использовании файлового варианта работы 1С:Предприятия 8.0 резервную копию можно сделать, просто скопировав файл информационной базы. В клиент-серверном варианте можно воспользоваться встроенными средствами MS SQL Server. Механизм выгрузки и загрузки позволяет переносить информационную базу между файловым и клиент-серверным вариантом.
| |
Захватить
данный объект или группу связанных объектов При этом они становятся недоступны для изменения другим разработчикам. После внесения изменений разработчик возвращает объекты в хранилище и снимает свои блокировки (отменяет захват).
Журнал регистрации
Предназначен для регистрации системных событий и действий пользователей. По умолчанию он отключен, так как его ведение требует некоторых дополнительных затрат при работе системы. Чтобы включить его, необходимо выбрать пункт меню "Администрирование
Настройка журнала регистрации"и указать уровень важности событий, которые будут регистрироваться в журнале.
Журналы документов
Журналы ? это средство группировки связанных по смыслу документов, например, журнал Склад объединяет приходные и расходные накладные. Аналогично могут быть созданы журналы Банк, Кадры и т.д.