【摘 要】隨著社會的發(fā)展和全國招生考試制度改革,高職院校自主進行的各類考試逐漸增多,例如高職擴招考試、高校單獨招生考試、面向特殊行業(yè)的單獨招生考試等。這些類型的考試工作由學校組織,包括出卷、考場編排、組織考試、閱卷、劃線、錄取等工作。文章結合工作實際,利用VFP程序設計技術,分析考場編排設計的思路與方法,以及在VFP中實現的技巧。
【關鍵詞】VFP;程序設計;單獨招生考試;考場編排
【中圖分類號】TP399 【文獻標識碼】A 【文章編號】1674-0688(2021)04-0059-03
0 引言
根據考生報名信息,高??荚嚱M織部門需要編排考場、制作考生準考證、制作考場座位貼、制作考場門貼等工作,在VFP環(huán)境下,能夠實現以上功能。
1 建立考場庫
為了便于考場安排、設計各類打印報表,需要建立單獨招生考試考場庫,考場庫包含的主要字段見表1。
1.1 手工建立考場庫
在VFP環(huán)境下,使用create<考場庫>命令[1],依次輸入相關字段名稱、類型和寬度。
1.2 由報名庫生成考場庫
考場庫主要包括姓名、性別、縣市、身份證號、報考專業(yè)、畢業(yè)學校、通信地址、聯系電話等信息,在此基礎上,增加考點名稱、樓棟名稱、準考證號、考場號、座位號等字段,實現方法如下。
Use bmk &&打開學生報名信息庫
Copy to bmk_kch &&將學生報名信息庫復制為學生考場庫
Alter table bmk_kch add 考點名稱 C(16)&&在考場庫增加考點名稱字段
Alter table bmk_kch add樓棟名稱C(16)&&在考場庫增加樓棟名稱字段
Alter table bmk_kch add準考證號C(14)&&在考場庫增加準考證號字段
Alter table bmk_kch add考場號C(2)&&在考場庫增加場場號字段
Alter table bmk_kch add座位號C(2)&&在考場庫增加座位號字段
1.3 添加數據
在VFP中,執(zhí)行以下程序代碼,添加考生基本信息數據:
Use bmk_kch
Appe from bmk
2 編排考場
考場編排,實則是根據一定的規(guī)則,完善考場庫中的考點名稱、樓棟名稱、準考證號、考場號、座位號等字段內容。編排考場的方法很多,可以隨機生成,可以按生源地編排,按報考科目編排,根據其他條件人工編排等??紤]到考試的公平性,隨機打亂編排考場較為合理,這種方式可以將來自不同區(qū)域的考生隨機打亂編排,避免同一區(qū)域考生集中在一個考場的現象。這里重點介紹一下隨機編排考場的實現方法。
VFP提供的隨機函數rand(),可以隨機產生0~1之間的任意數[2],根據這個函數的功能,給每一位學生生成一個隨機數,然后按隨機數由小到大順序排列,再根據考場需求,生成學生準考證號、考場號和座位號。在VFP中主要代碼如下。
Alter table bmk_kch add隨機數N(7,6)&&增加隨機數字段
use bmk_kch
scan
repl 隨機數 with rand()
ends
inde on 隨機數 to 001 &&按隨機數升序建立索引文件
對于一個考點,按每考場30人安排,主要代碼如下:
use bmk_kch
inde on 隨機數 to 001 &&按隨機數升序建立索引文件
k0='2042118201'
k1=1
k2=1
scan
if k1<10
p1='0'+allt(str(k1))
endif
if k1>=10
p1=allt(str(k1))
endif
if k2<10
p2='0'+allt(str(k2))
endif
if k2>=10
p2=allt(str(k2))
endif
repl 考場號 with p1
repl 座位號 with p2
repl 準考證號 with k0+kch+p2
k2=k2+1
if k2>30
k1=k1+1
k2=1
endif
ends
repl all 考點名稱 with 'XX學校',樓棟名稱 with 'XX棟三樓'
3 制作學生考試準考證
單獨招生考試的主考院校需要制作學生準考證,在考試前發(fā)放給考生,供考生考試時使用。在VFP中,設計準考證報表,包括3個部分的內容,即考生基本信息、考試科目及時間、注意事項,其中考生基本信息和考試科目及時間在表格中呈現,表格利用報表的直線完成,注意事項用文字描述,用標簽控件完成[3]。主要標簽和域控件(考場庫中的字段)為考生姓名、性別、身份證號、照片、準考證號、考場號、座位號、考試地點、考試科目、考試時間等,制作后的報表如圖1所示。
4 制作考場座位貼
單獨招生的主考院校需要制作考場座位貼,供考場使用。本例按30人一考場進行,并在一個頁面打印一個考場的座位貼。在VFP報表中,將頁面設置為2列,每列15人,在打印預覽時調整細節(jié)區(qū)域大小,使得每列顯示15人。設計時,細節(jié)區(qū)域添加如下標簽:姓名、性別、身份證號、準考證號、考場號、座位號、考試時間及科目等,以及與標簽對應的域控件(考場庫中的字段):姓名、性別、身份證號、準考證號、考場號、座位號。制作后的報表如圖2所示。
5 制作考場門貼
單獨招生的主考院校需要制作考場門貼,張貼于考場進門口,方便考生查詢??紙鲩T貼主要是在考場門口公布本考場考生準考號、座位號、姓名等,在設計VFP報表時,主要控件為標簽和域控制(考場庫中的字段),制作步驟及方法與考場座位貼類似。
6 VFP報表生成PDF文檔
VFP不能直接將報表打印出的文檔另存為PDF文檔,可以通過PDF虛擬打印機,將報表打印輸出為PDF文檔,方便打印和今后留存。實現方法如下:首先安裝PDF虛擬打印機,如安裝“Doro PDF Writer”虛擬打印,然后在運行VFP報表時,選擇打印機為“Doro PDF Writer”,如圖3所示,點擊“確定”后,即生成PDF文檔,并給PDF文檔命名即可。以上所有報表打印出來的文檔都可以打印為PDF文檔。
7 結語
在VFP環(huán)境下,高??荚嚱M織部門實現了編排考場、制作準考證、考場座位貼、門貼等工作。用到了VFP的修改表結構、隨機函數、數據排序、報表設計等技術,順利完成了單獨招生考試的相關工作,提高了工作效率。
參 考 文 獻
[1]Microsoft Corporation.Microsoft Visual FoxPro6.0中文版語言參考手冊[M].北京:希望圖書創(chuàng)作室,1999.
[2]曾曉紅.VFP編程實例及提高[M].成都:四川大學出版社,2010.
[3]易學文.隨機抽簽在單獨招生管理系統中的應用[J].黃岡職業(yè)技術學院學報,2013(3):97-99.