Схема разработки на основе моделей
Состав системы программ «1С: Предприятие»
К понятию «конфигурация»
Процесс обновления информационной базы
Файловый вариант работы
Трехуровневая архитектура 1С: Предприятия
ПЗМ «1С: Предприятие»
Взаимосвязь программных и основных объектов
Простейшая информационная система на основе документов и отчетов
Схема взаимодействия основных объектов
Механизм подчиненных справочников
Механизм иерархии справочника
Контекстная диаграмма модели TO BE
Первый уровень декомпозиции бизнес-процессов в модели ТО ВЕ
Бизнес-процесс в нотации BPMN
Диаграмма «Дерево узлов» модели TO BE
Стандарты оформления технического задания
1.44M
Category: softwaresoftware

Схема разработки на основе моделей. Состав системы программ «1С: Предприятие»

1. Схема разработки на основе моделей

2. Состав системы программ «1С: Предприятие»

Конфигурации
Единая
технологическая
платформа

3. К понятию «конфигурация»

1
Работа программиста в среде разработки
Конфигуратор. На этом этапе конфигурация главный объект процесса разработки.
2
Создание в среде разработки Конфигуратор
файлов поставки конфигурации (дистрибутива
конфигурации). На этом этапе конфигурация
превращается в типовую или партнерскую и
становится «программой».
3
Установка конфигурации на компьютере
пользователя. Пользователь запускает
программу, например 1С:Бухгалтерия, которая
на самом деле является типовой
конфигурацией, работающей с помощью
платформы.

4. Процесс обновления информационной базы

Основная
конфигурация
Конфигурация
БД
Информационная база
Единый файл конфигурации .1cd

5. Файловый вариант работы

1С: Предприятие 8
(клиентская часть)
Информационная
база

6. Трехуровневая архитектура 1С: Предприятия

1С: Предприятие 8
(клиентская часть)
Кластер серверов
1С: Предприятие 8
Сервер базы данных
Информационная база

7. ПЗМ «1С: Предприятие»

Предметная
область
Объектная
модель
Программный
код
Интерфейс
Процессная
модель
Табличная
модель
БД
ПЗМ

8. Взаимосвязь программных и основных объектов

Шаблон (класс)
объекта
Программный
объект
Основной объект
Объект
коллекции

9. Простейшая информационная система на основе документов и отчетов

Документ
Отчет

10. Схема взаимодействия основных объектов

Справочник
Документ
Отчет
Регистр

11.

12.

Перем ИмяПеременной;
Процедура ИмяПроцедуры(Имяпараметра1,.....)
// тело процедуры
КонецПроцедуры
Функция ИмяФункции(ИмяПараметра1,...)
// тело функции
Возврат(ВозвращаемоеЗначение);
КонецФункции
Если Условие
Тогда
// код
ИначеЕсли Условие
Тогда
//код
Иначе
// код
КонецЕсли;

13.

Для ПеременнаяСчетчик = НачальноеЗначение
По КонечноеЗначение Цикл
// тело цикла
КонецЦикла;
Для Каждого ПеременнаяЦикла Из ИмяКоллекции Цикл
// тело цикла
КонецЦикла;
Пока УсловиеЦикла Цикл
// тело цикла
КонецЦикла;

14.

Для обращения к свойству объекта можно использовать два подход
Наим = Спр.Наименование;
Наим = Спр["Наименование"];
Вызов методов объектов производиться «через точку»
Спр.Печать();
Допускаются следующие конструкции:
ок.Контрагент.ПолучитьОбъект().ПечатьКарточкиКлиента();

15.

16.

ПередНачаломРаботыСистемы
ПриНачалеРаботыСистемы
ОбработатьПараметрыЗапуска

17.

ИмяОбщегоМодуля.ИмяПроцедуры/Функции

18.

В модуле объекта документа ПриходнаяНакладная могут быть такие
процедуры как ОбработкаЗаполнения, ПередЗаписью и т.д.
В модуле менеджера документа ПриходнаяНакладная могут быть такие
процедуры как ВыполнитьКонтроль, Печать и т.д

19.

20.

Модуль
внешнего
соединения
Модуль
сеанса
Модули
менеджеров
Модуль
управляемого
приложения
Не глобальные
Общие
модули
Модули
команд
Модули
объектов
Модули
форм

21.

22.

23.

24.

25. Механизм подчиненных справочников

Ведущий
справочник
Подчиненный
справочник
N
Имя
N
Наименование
Владелец
А
Контрагент
B
Конт. Лицо 1
Ссылка А
C
Конт. Лицо 2
Ссылка А

26. Механизм иерархии справочника

N
Наименование
Родитель
A
Элемент уровня 0
NULL
B
Элемент уровня 1
Ссылка A
C
Элемент уровня 2
Ссылка B

27.

28.

29.

30.

Проведение документа
Создание
движения
Документ
Процедура
проведения
Заполнение
движения
Движение
Регистр

31.

Пример оперативного проведения

32.

33.

К определению измерений и ресурсов
Измерения
N
Дата
С
Ресурс
Номенклатура
Склад
Кладовщик
Ячейка
Количество
01.01.01
Товар 1
Склад 1
Иванов
1
16
N
01.01.01
Товар 2
Склад 1
Иванов
4
20
M
04.01.01
Товар 1
Склад 2
Петров
2
10

34.

Взаимосвязь объектов для работы с регистрами
РегистрыСведенийМенеджер
РегистрыСведенийЦены
РегистрСведенийКлючЗаписи
СоздатьКлючЗаписи()
РегистрСведенийНаборЗаписей
РегистрСведенийМенеджер
РегистрСведенийМенеджер
СоздатьНаборЗаписей()
Добавить()
Выбрать()
ВыбратьПоРегистратору()
СоздатьМенеджерЗаписи()
РегистрСведенийЗапись
РегистрСведенийВыборка
РегистрСведенийМенеджерЗаписи
ПолучитьМенеджерЗаписи()

35.

36.

Алгоритм выполнения запроса
Создание объекта
запроса средствами
встроенного языка
Редактор
кода
Создание текста
запроса
Констурктор
запроса
Задание параметров
Выполнение запроса
Использование
результатов запроса в
программном коде
Отображение
результатов запроса в
пользовательском
интерфейсе

37.

Для использования запросов имеется объект встроенного языка:
НекоторыйЗапрос = Новый Запрос(текст);
Текст запроса также можно задавать не в конструкторе, но и при помощи
свойства
Запрос.Текст = “ВЫБРАТЬ …..”;
Параметры запроса задаются методом
Запрос.УстановитьПараметр(Имя, Значение);
Выполнение запроса осуществляется методом
Запрос.Выполнить();
Результаты запроса необходимо представить пользователю или использовать
в программном коде для дальнейшей работы. Метод Выполнить() возвращает
коллекцию РезультатЗапроса, которая содержит набор записей запроса.
Структура записей определяется свойством Колонки.
Обращаться к коллекции можно так:
РезультатЗапроса[1][1]
РезультатЗапроса.Колонки[1]

38.

Перебор записей результата запроса осуществляется при
помощи объекта Выборка:
Выборка = РезультатЗапроса.Выбрать();
И его метода
Выборка.Следующий();
Перебор может быть организован в цикле:
Пока Выборка.Следующий() Цикл

КонецЦикла;

39.

Текст запроса состоит из следующих логических
частей:
<Описание запроса>
[<Объединение запросов>]
[<Упорядочивание результатов>]
[АВТОУПОРЯДОЧИВАНИЕ]
[<Описание итогов>]

40.

Описание
запроса
определяется
следующей
конструкцией
ВЫБРАТЬ
[РАЗРЕШЕННЫЕ]
[РАЗЛИЧНЫЕ]
[ПЕРВЫЕ <Количество>]
<Список полей выборки>
[ИЗ <Список источников>]
[ГДЕ <Условие отбора>]
[СГРУППИРОВАТЬ ПО <Поля группировки>]
[ИМЕЮЩИЕ <Условие отбора>]
[ДЛЯ ИЗМЕНЕНИЯ [<Список таблиц верхнего
уровня>]]

41.

42.

43.

44.

45.

Различают четыре вида соединения:
[ВНУТРЕННЕЕ] СОЕДИНЕНИЕ
ЛЕВОЕ [ВНЕШНЕЕ] СОЕДИНЕНИЕ
ПРАВОЕ [ВНЕШНЕЕ] СОЕДИНЕНИЕ
ПОЛНОЕ [ВНЕШНЕЕ] СОЕДИНЕНИЕ

46.

Таблица 1
Номенкл.
Номер1
Ручка
1
Карандаш
2
Вилка
3
Таблица 2
ЕдИзм
Номер2
Шт
1
Гр
3
Кг
4
Банка
1
Пусть условием связи будет:
Таблица1.Номер1=Таблица2.Номер2

47.

В соответствии с условием можно выделить записи,
для которых условие выполняется:
Записи, неудовлетворяющие условию соединения:

48.

Внутреннее соединение: в результат
выполнения запроса войдут только данные
записей из обеих таблиц, для которых
выполняется условие соединения т.е.
Ручка
Шт.
Ручка
банка
Вилка
Гр.

49.

Левое внешнее соединение: в результат
выполнения запроса войдут данные из записей,
для которых выполняется условие соединения и
«не вошедшие» из Таблицы №1.
Ручка
Шт.
Ручка
банка
Вилка
Гр.
Карандаш
Null

50.

Правое внешнее соединение обратно левому.
Ручка
Шт.
Ручка
банка
Вилка
Гр.
Null
Кг.

51.

Полное внешнее соединение. В результат
запроса войдут как записи, для которых выполнялось
условие соединения, так и записи, полученные из
«не вошедших» данных из обеих таблиц.
Ручка
Шт.
Ручка
банка
Вилка
Гр.
Карандаш
Null
Null
Кг.

52.

53.

Показать курсы всех валют, которые хранятся в
регистре сведений КурсыВалют. Возможно, что для
некоторой валюты не будет найдено соответствующей
записи в регистре сведений, но она также должна попасть
в отчет.
| ВЫБРАТЬ Спр.Наименование, Рег.Курс
| ИЗ Справочник.Валюты КАК Спр
| ЛЕВОЕ СОЕДИНЕНИЕ
|
РегистрСведений.КурсыВалют.СрезПоследних()
КАК Рег
| ПО Спр.Ссылка = Рег.Валюта

54.

Или то же самое можно сделать так:
| ВЫБРАТЬ Спр.Наименование, Рег.Курс
| ИЗ РегистрСведений.КурсыВалют.СрезПоследних() КАК
Рег
| ПРАВОЕ СОЕДИНЕНИЕ
|
Справочник.Валюты КАК Спр
| ПО Спр.Ссылка = Рег.Валюта

55.

| ВЫБРАТЬ Наименование КАК Товар
| ИЗ Справочник.Номенклатура
| УПОРЯДОЧИТЬ ПО Товар ИЕРАРХИЯ");
// Найти 3 самых дорогих товара
| ВЫБРАТЬ ПЕРВЫЕ 3 Наименование КАК Товар,
ЦенаПродажи КАК Цена
| ИЗ Справочник.Номенклатура
| УПОРЯДОЧИТЬ ПО Цена УБЫВ");

56.

57.

// Выбрать товары, которых продали не менее 100 штук
| ВЫБРАТЬ Номенклатура,
|
СУММА(Количество) КАК Продано
| ИЗ Документ.ПродажаТоваров.Товары
| СГРУППИРОВАТЬ ПО Номенклатура
| ИМЕЮЩИЕ Сумма(Количество) >= 100
// Итоги по группировкам
// Объем продаж по каждой комбинации контрагента и номенклатуры
| ВЫБРАТЬ Контрагент, Номенклатура, Сумма
| ИЗ РегистрНакопления.Продажи
| ИТОГИ СУММА(Сумма)
|
ПО Контрагент, Номенклатура
| АВТОУПОРЯДОЧИВАНИЕ

58.

// Использование параметров и ключевого слова
МЕЖДУ
З = Новый Запрос ("
| ВЫБРАТЬ Наименование КАК Товар,
|
ЦенаПокупки
| ИЗ Справочник.Номенклатура
| ГДЕ ЦенаПокупки МЕЖДУ &МинЦена И &МаксЦена");
З.УстановитьПараметр("МинЦена", 100);
З.УстановитьПараметр("МаксЦена", 1000);
РЗ = З.Выполнить();

59.

60.

61.

План видов
характеристик
Подчиненный
справочник
дополнительных
значений
характеристик
...
Красный
Синий
Белый
...
...
План видов
характеристик
Длина
Ширина
Цвет
...
N Номенклатура
Характеристика
Значение
Товар 1
Длина
99
Товар 1
Ширина
10
Элемент «Товар 1»
справочника Номенклатура
...
Регистр
сведений
...
Товар 1
...
Цвет
Синий
Характеристика
Значение
Длина
Ширина
Цвет
99
10
Синий

62.

Регистр сведений для хранения характеристик
Ссылка на элемент
Ссылка на вид
характеристик
Номенклатура 1
Цвет
...
...
Номенклатура 2
Форма
Значение
...
Синий
...
...
Куб

63. Контекстная диаграмма модели TO BE

64. Первый уровень декомпозиции бизнес-процессов в модели ТО ВЕ

65. Бизнес-процесс в нотации BPMN

66. Диаграмма «Дерево узлов» модели TO BE

67.

68.

69. Стандарты оформления технического задания

• ГОСТ 34.602–89. Информационная
технология. Техническое задание на
создание автоматизированной системы;
• ГОСТ 19.201–78 ЕСПД. Техническое задание.
Требования к содержанию и оформлению;
• Международный стандарт ISO/IEC/IEEE
29148–2011 Systems and software engineering
– Life cycle processes – Requirements
engineering;
English     Русский Rules