+7 (495) 252-0255 market@galaktika.ru

Представляем пошаговую инструкцию по созданию решения в Microsoft Visual Studio для создания прикладной конфигурации на платформе Галактика CnP.

Создание Solution

Нужно создать пустой Solution:

Рисунок 1 Создание Solution

Папки для группировки проектов в решении

Необходимо создать следующие папки для группировки проектов в зависимости от их назначения:

  • .nuget – папка содержит в себе проект для установки NuGet пакетов
  • Olap – папка для группировки всех Olap проектов
  • SQL — папка для группировки всех SQL проектов

Рисунок 2 Создание папок

Создание проекта для установки NuGet пакетов

В папке .nuget необходимо создать проект типа «Class library»

Рисунок 3 Создание проекта CommonBin

Рисунок 4 Создание проекта CommonBin

Class1.cs необходимо удалить из проекта.

Проект CommonBin должен использовать Target framework .NET Framework 4.5.1. Результат сборки должен необходимо положить в «..\..\dll\»

Установка NuGet пакетов в проект CommonBin

NuGet пакеты используемые для прикладного решения необходимо установить в проект CommonBin. Для прикладной конфигурации необходимо установить следующие NuGet пакеты:

  • DevExpress.XAF
  • DevExpress.XAF.Mvc
  • DevExpress.XAF.Web
  • Xafari.Framework.Base
  • Xafari.Framework.Mvc
  • Xafari.Framework.Web
  • Galaktika.CnP.Core.Develop

Проект для описания классификаторов

Рисунок 5 Создание проекта

Рисунок 6 Выбор типа проекта

Рисунок 7 XAF проект

Рисунок 8 XAF проект

Нужно удалить ненужные папки и файлы

Рисунок 9 Удаление файлов

Можно удалить NuGet пакет «EntityFramework»

Настройка ссылок (reference) для проекта

Все ссылки (references) должны иметь значения следующих свойств:

  • Copy Local=false
  • Specific version=false

Необходимо удалить все ссылки DevExpress.*

Нужно добавить следующие ссылки DevExpress из папки dll, в которую собирается проект CommonBin:

  • DevExpress.Data.v16.2
  • DevExpress.ExpressApp.v16.2
  • DevExpress.ExpressApp.ViewVariantsModule.v16.2
  • DevExpress.ExpressApp.Xpo.v16.2
  • DevExpress.Persistent.Base.v16.2
  • DevExpress.Xpo.v16.2

 

Необходимо добавить следующие ссылки Galaktika.CnP из папки dll, в которую собирается проект CommonBin:

  • Galaktika.CnP.BudgetModel
  • Galaktika.CnP.Model

 

Необходимо добавить следующие reference Xafari из папки dll, в которую собирается проект CommonBin
  • Xafari
  • Xafari.Arms
  • Xafari.BC
  • Xafari.BC.DC
  • Xafari.BC.Model
  • Xafari.XF

Настройка содержимого проекта

В проект Demo нужно добавить папку «Classifiers»

Внести изменения в Module.cs:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using DevExpress.ExpressApp;
using DevExpress.Persistent.Base;
using DevExpress.Xpo;
using System;
using Xafari;
using Xafari.Base;
using Galaktika.CnP.BudgetModel.Core;
 
namespace Demo {
    public sealed partial class DemoModule : ModuleBase {
        public DemoModule() {
            ModelDifferenceResourceName = «Budgeting.Model.DesignedDiffs»;
            InitializeComponent();
 
        }
 
        public override void Setup(XafApplication application) {
            base.Setup(application);
        }
    }
}

Внесем изменения в Module.Designer.cs

Подключим необходимые модули

1
2
3
4
5
6
7
8
private void InitializeComponent() 
{
    this.RequiredModuleTypes.Add(typeof(DevExpress.ExpressApp.ViewVariantsModule.ViewVariantsModule));
    this.RequiredModuleTypes.Add(typeof(Xafari.XafariModule));
    this.RequiredModuleTypes.Add(typeof(Xafari.BC.XafariBCModule));
    this.RequiredModuleTypes.Add(typeof(Xafari.BC.Model.XafariBCModelModule));
    this.RequiredModuleTypes.Add(typeof(Xafari.Arms.XafariArmsModule));
}

Проект для настройки представлений в приложении MVC

Рисунок 10 Создание проекта

Рисунок 11 Выбор типа проекта

Рисунок 12 XAF проект

Рисунок 13 XAF проект

Рисунок 14 Удаление файлов

Можно удалить NuGet пакет «EntityFramework»

Настройка ссылок (reference) для проекта

Все ссылки (references) должны иметь значения следующих свойств:

  • Copy Local=false
  • Specific version=false

Нужно удалить все ссылки DevExpress.*

Необходимо добавить следующие ссылки на модули DevExpress из папки dll, в которую собирается проект CommonBin:

  • DevExpress.Data.v16.2
  • DevExpress.ExpressApp.v16.2
  • DevExpress.ExpressApp.Web.v16.2
  • DevExpress.ExpressApp.Xpo.v16.2
  • DevExpress.Persistent.Base.v16.2
  • DevExpress.Persistent.BaseImpl.v16.2
  • DevExpress.Printing.v16.2.Core
  • DevExpress.Web.Mvc5.v16.2
  • DevExpress.Xpo.v16.2

Нужно добавить ссылка на проект Demo из Solution

Нужно доабвить ссылки на модули Xafari из папки dll, в которую собирается проект CommonBin

  • Xafari.Editors.Mvc
  • Xafari.Mvc
  • Xafari.Mvc.MVCx

Нужно добавить следующие ссылки на системные библиотеки:

  • System.Web
  • System.Web.Mvc

Настройка содержимого проекта

Требуется внести изменения в Module.cs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
using System;
using System.Text;
using System.Linq;
using DevExpress.ExpressApp;
using System.ComponentModel;
using DevExpress.ExpressApp.DC;
using System.Collections.Generic;
using DevExpress.Persistent.Base;
using DevExpress.Persistent.BaseImpl;
using DevExpress.ExpressApp.Model;
using DevExpress.ExpressApp.Actions;
using DevExpress.ExpressApp.Editors;
using DevExpress.ExpressApp.Updating;
using DevExpress.ExpressApp.Model.Core;
using DevExpress.ExpressApp.Model.DomainLogics;
using DevExpress.ExpressApp.Model.NodeGenerators;
using DevExpress.ExpressApp.Xpo;
using Demo;
 
namespace Demo.Mvc {
    public sealed partial class MvcModule : ModuleBase {
        public MvcModule() {
            InitializeComponent();
            BaseObject.OidInitializationMode = OidInitializationMode.AfterConstruction;
        }
 
        public override void Setup(XafApplication application) {
            base.Setup(application);
        }
 
        public override void CustomizeTypesInfo(ITypesInfo typesInfo) {
            base.CustomizeTypesInfo(typesInfo);
            CalculatedPersistentAliasHelper.CustomizeTypesInfo(typesInfo);
        }
    }
}

Требуется внести изменения в Module.Designer.cs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using DefaultCore = Demo;
 
namespace Demo.Mvc {
    partial class MvcModule {
        private System.ComponentModel.IContainer components = null;
 
        protected override void Dispose(bool disposing) {
            if(disposing && (components != null)) {
                components.Dispose();
            }
 
            base.Dispose(disposing);
        }
 
        private void InitializeComponent() {
            this.RequiredModuleTypes.Add(typeof(DefaultCore.DemoModule));
            this.RequiredModuleTypes.Add(typeof(Xafari.Mvc.MVCx.XafariMVCxModule));
            this.RequiredModuleTypes.Add(typeof(Xafari.Editors.Mvc.XafariEditorsMvcModule));
        }
    }
}

Создание SSAS проекта

В папку Olap необходимо SSAS проект для работы с кубом. В настройках Solution настроить что бы данный проект не развертывался при сборке

Рисунок 15 Выбор проекта для создание Olap куба

SQL проект

В папку SQL необходимо добавить SQL проект для работы с реляционной БД. В настройках Solution настроить что бы данный проект не развертывался при сборке

Рисунок 16 Выбор проекта для создание реляционной БД

Настройка SQL проекта

В настройках проекта необходимо изменить target platform на SQL Server 2014

Нужно добавить ссылки на описание SQL базы ядра:

Рисунок 17 Добавление reference

Рисунок 18 Добавление reference

Решение готово к разработке

Обратная связь