期刊/設定ischool plugin

出自台灣中等學校資訊管理人學會

跳轉到: 導航, 搜索

在本文中我們介紹ischool plugin專案的設定方式,讀者可以參考以下兩篇文章對於ischool plugin有基本的介紹,本文著重於操作上的細節介紹:

目錄

[編輯] ischool 下載及登入說明

首先我們需要有ischool系統,並確認能登入ischool中,這部份讀者可以參考下面的文章;此部份因不只plugin開發者適用,一般使用者也可參考,故筆者獨立成一篇文章。

[編輯] ischool plugin 開發環境

開發ischool plugin所使用的環境如下:

  • 作業系統:Windows XP或是Windows Vista
  • 開發環境:Visual Studio 2005
  • 程式語言:C#

在作業系統方面相信讀者都有安裝,但在Visual Studio 2005方面可能不是每位讀者都有,可以使用免費的Visual C# 2005 Express Edition:

另外也可以參考Visual Studio Express系列:

[編輯] 建立Visual Studio專案

[編輯] 步驟一:選擇建立新專案選單

2792744951_450604d286_o.png

[編輯] 步驟二:選擇及輸入專案資訊

2793320462_8e6cdd04ce_o.png

[編輯] 步驟三:專案畫面

2843456294_4350d83663_b.jpg

[編輯] 引用元件

[編輯] 步驟一:選擇Add Reference...

2792687421_73e117af40_o.png

[編輯] 步驟二:加入引用元件

  • 在加入引用元件的部份,特別注意路徑是在ischool的kernel目錄下,以筆者而言的目錄為C:\Users\ChangKH\Desktop\iSchool\kernel。
  • SmartSchool.Customization.Plugin.dll及SmartSchool.Customization.Data.dll為開發plugin所必須的元件,其它元件可視專案需求加入。

2793539022_5f9ed66f71_b.jpg

[編輯] 步驟三:確認加入元件

2792724341_2a1712b816_o.png

[編輯] 步驟四:將元件Copy Local的屬性設為False

此步驟為選擇性的,建議讀者將Copy Local設為False,不會將元件複製到專案目錄下內,可節省Plugin的檔案大小。

2794623207_141c6a383f_o.png

[編輯] 程式碼

我們將原本的專案程式碼改為以下,讀者可看註解來瞭解意義。

using System;
using System.Collections.Generic;
using System.Text;
 
//引用ischool plugin參考
using SmartSchool.Customization.Data.StudentExtension;
using SmartSchool.Customization.Data;
using SmartSchool.Customization.PlugIn;
 
 
namespace iSchoolPlugin
{
 
    //plugin的類別及主要方法要是Static Class及Static Method。
    public static class Class1
    {
 
        //加入MainMethod的標籤,讓ischool核心程式確認為plugin的進入點。
        [MainMethod()]
        public static void Main()
        {
            //新增PluginButton物件,ButtonAdapter為Plugin所提供之類別,用來描述實際Plugin資訊。
            ButtonAdapter PluginButton = new ButtonAdapter();
 
            //設定報表路徑
            PluginButton.Path = "自訂報表";
 
            //設定報表名稱
            PluginButton.Text = "學生成績證明單";
 
            //加入報表實際執行的事件
            PluginButton.OnClick += new EventHandler(PluginButton_OnClick);
 
            //將PluginButton物件加入到學生報表當中    
            SmartSchool.Customization.PlugIn.Report.StudentReport.AddReport(PluginButton);
        }
 
        static void PluginButton_OnClick(object sender, EventArgs e)
        {
           //於此處加入plugin的主要程式碼
        }
    }
}

[編輯] 專案設定

[編輯] 步驟一:選擇專案屬性

2794525619_d329474692_o.png

[編輯] 步驟二:設定plugin產生至ischool的Customize目錄下

2795392598_e4fc55e013_b.jpg

[編輯] 步驟三:設定ischool.exe開始執行程式

2794572929_f22b921823_b.jpg

[編輯] 步驟四:登入ischool,確認載入plugin

2795558316_043d60b266_o.png

[編輯] 小結

在本文中以圖文並茂的方式介紹ischool的plugin設定方式,是相當基礎的介紹,希望帶給plugin的開發者感受是“無痛入門“;若有不清楚的細節皆可來信詢問,在後續的文章就會直接分享更深入的plugin範例。