如何使用VS2019编写统计方案 - DigitalPlatform/dp2 GitHub Wiki

使用VS2019编写统计方案的步骤

1.启动VS2019,按下面说明创建统计方案项目

点菜单 文件/新建/项目,弹出新建项目对话框,在左侧目录里选择Visual C#/Windows桌面,然后选择 Windows窗体应用(.NET Framework),在下方指定:

  • 项目名称
  • 位置
  • 解决方案选择 创建新解决方案
  • 程序自动按项目名称命名解决方案名称,同时勾中 创建新解决方案
  • 框架选.NET Framework 4.7.2 点 确定 按钮。 项目和解决方案新建成功,在右侧 解决方案资源管理器 可以看到新建的方案。

2.添加引用

1)拷贝需要引用的dp2内务的exe和dll到统计方案项目的目录下:在统计方案项目下创建一个dll目录,然后启动dp2内务,点菜单 帮助/打开程序文件夹,打开dp2内务程序文件目录,筛选文件类型,勾上 应用程序 和 应用程序扩展,将筛选出来的文件拷贝到统计方案项目下的dll目录里。

2)选中统计方案项目,单击右键菜单 添加/引用,在 引用管理器 窗口,点 浏览…,打开该项目下的dll文件,选择全部dll和exe,点 添加 即可将dll与exe添加到 引用管理器,点 确定 回到主界面。这样该项目就添加了对exe和dll的引用。

3.创建类

选中统计方案项目,单击右键菜单 添加/类,弹出 增加新项 对话框,输入类名,点 添加 按钮,一个类就创建完成了,然后在这个类中写具体统计方案的代码,下面是一些具体统计方案的代码结构。

日志统计方案

using System;
using System.Windows.Forms;
using System.IO;
using System.Text;
using System.Xml;

using dp2Circulation;
using DigitalPlatform.Xml;
public class MyStatis : OperLogStatis
{
	public override void OnBegin(object sender, StatisEventArgs e)
	{
	}
}

读者统计方案

using System;
using System.Windows.Forms;
using System.IO;
using System.Text;
using System.Xml;

using dp2Circulation;
using DigitalPlatform.Xml;
public class MyStatis : ReaderStatis
{
	public override void OnBegin(object sender, StatisEventArgs e)
	{
	}
}

具体参考:读者统计方案中的公共属性和函数

册统计方案

using System;
using System.Windows.Forms;
using System.IO;
using System.Text;
using System.Xml;

using dp2Circulation;
using DigitalPlatform.Xml;
public class MyStatis : ItemStatis
{
	public override void OnBegin(object sender, StatisEventArgs e)
	{
	}
}

订购统计方案

using System;
using System.Windows.Forms;
using System.IO;
using System.Text;
using System.Xml;

using dp2Circulation;
using DigitalPlatform.Xml;
public class MyStatis : ItemStatis
{
	public override void OnBegin(object sender, StatisEventArgs e)
	{
	}
}

书目统计方案

using System;
using System.Windows.Forms;
using System.IO;
using System.Text;
using System.Xml;

using dp2Circulation;
using DigitalPlatform.Xml;
public class MyStatis : BiblioStatis
{
	public override void OnBegin(object sender, StatisEventArgs e)
	{
	}
}

XML统计方案

using System;
using System.Windows.Forms;
using System.IO;
using System.Text;
using System.Xml;

using dp2Circulation;
using DigitalPlatform.Xml;
public class MyStatis : XmlStatis
{
	public override void OnBegin(object sender, StatisEventArgs e)
	{
	}
}

ISO2709统计方案

using System;
using System.Windows.Forms;
using System.IO;
using System.Text;
using System.Xml;

using dp2Circulation;
using DigitalPlatform.Xml;
using DigitalPlatform.Marc;
public class MyStatis : Iso2709Statis
{
	public override void OnBegin(object sender, StatisEventArgs e)
	{
	}
}

框架窗口统计方案

using System;
using System.Collections.Generic;
using System.Windows.Forms;
using System.IO;
using System.Text;
using System.Xml;

using dp2Circulation;

using DigitalPlatform.Xml;

public class MyStatis : MainFormHost
{
	public override void Main(object sender, EventArgs e)
	{
	}
}

【小贴士】

为了方便管理,可以根据服务单位名称在项目下面创建对应的文件夹,进行统计方案的管理。