陳丙強
(長沙礦山研究院, 湖南長沙 410012)
基于VFP的多金屬地質儲量管理系統研究*
陳丙強
(長沙礦山研究院, 湖南長沙 410012)
針對柿竹園多金屬礦年度地質儲量計算和年度儲量計劃編制工作,以 Visual Fox-Pro為平臺,利用其數據編制各類儲量計算表,同時結合 Excel進行報表編制、打印,開發出簡單可行的應用程序,初步實現了地質儲量管理的電算化。
多金屬礦;地質儲量管理;VFP;計算機應用
儲量管理是礦山最基礎也是最重要的地質工作,直接影響著資源評價、生產計劃的編制和部署、生產中的貧化損失等一系列工作的進行。同時儲量計算、計劃是一年一度的經常性地質管理工作,具有很強的連續性和相承性,認真編制好年終儲量計算和年中儲量計劃則格外重要。然而傳統的管理模式常常因資料繁雜、管理混亂,導致查詢困難,甚至服務滯后,已難于滿足企業對技術的要求,因此,及時引進計算機管理,充分發揮電腦對數據管理的特有優勢,對提高礦山地質技術水平將起到不可估量的作用。本文以 Visual FoxPro 6.0和 Excel 2003為平臺進行設計開發,并應用于柿竹園有色金屬有限責任公司多金屬儲量計算工作中。
按照儲量管理的有關規定及技術規范,結合多金屬礦山實際,制定統一規范的設計方案是設計的基礎,對后面的計算、資料的統一規范管理影響很大。本文采用塊段計算法,對特高品位按平均值處理,計算范圍和類別為礦體位置、儲量級別、礦塊編號、礦房或礦柱、礦帶分類、礦石或夾石,計算內容為礦體、礦塊、礦房或各礦柱 (北、南、西、東、底柱 )的塊段體積,及夾石體積、副產體積、礦石體積、礦石儲量 (夾石含量)、鎢鉬鉍地質品位和金屬量。儲量成果表 (打印表)有品位表、礦塊表、開采損失表、掘進副產表、勘探增減表、重算增減表、儲量平衡表等。為保證各表間數據的互通,方便數據查詢、更新,應設置成規范統一的字段,各表中字段的類型、長度、數值型字段的小數位盡量一致,字段內容統一規格,特別是關鍵詞應確保一致。本文使用表達式“ALLTR I M(礦體位置)+ALLTR I M(儲量級別)+ALLTR I M(礦塊編號)+ALLTR I M(礦房礦柱)+ALLTR I M(礦帶代號)+ALLTR I M(礦石夾石)”或其中的一部分作為完整的關鍵詞。此后,可對照已有的儲量計算成果表,預制相應的 Visual FoxPro 6.0數據庫項目,在其中新建或添加相應的儲量計算表,并逐步建立所需的命令程序。同樣地,可在 Excel 2003中預先設置好相應的成果打印表備用,完善并最后定型后可直接套用,一勞永逸。
2.1 品位表的編制
在Visual FoxPro 6.0數據庫的品位項目文件中建立品位表,主要的品位表有柱狀孔品位表、礦塊地探工程品位表、生探工程品位表、礦房礦柱品位計算表。輸入程序、查詢程序、檢查程序與品位表相對應。通過查詢以上基礎品位表可建立本年度所需的最新儲量計算品位表,作為下面各表金屬量計算的根據。其中應特別注意關鍵詞表達式的正確性,各礦房、礦柱品位數據的唯一性 (建立候選索引文件)和完整性,以確保后面各表中的礦房、礦柱皆能在此查詢到唯一正確的品位數據。
2.2 礦塊表的編制
本年的礦塊表以上年底的礦塊表為基礎,初表可通過拷貝原表獲取。因此在編制本年度的礦塊表之前,首先應檢查上年底礦塊表的正確性,主要通過查詢檢查各類別的分類匯總結果,檢查無誤后才能繼續進行后面的工作。
對勘探升級礦塊采用直接添加法,即先在數據庫表中打上刪去標記,然后對原有礦塊細分成礦房、礦柱,進行品位更新后再分別計算其相應的體積參數、礦石儲量、金屬量,最后添加并物理刪除原有礦塊,并在備注中加以說明。品位更新過程中應特別注意關鍵詞表達式的正確性,及兩表記錄的對應關系 (不能為“多多關系”,應為“一一對應”或“一對多”或“多對一”)。數值精度應通過 ROUND()函數保證。
對無勘探升級礦塊常采用減去法,即按其與開采損失表、掘進副產表的對應關系,并按前述關聯查詢的要求,用對應項相減即可獲得。更新中應注意分礦石與夾石分別進行。
2.3 掘進副產表和開采損失表的編制
此兩表數據來源于本年度計劃的月報表統計,因此數據庫表可通過 Excel表轉入,即先在 Excel表格中匯總年度報表統計,并對關鍵字段進行必要的名稱校正,字段內容進行必要的完善、規范,然后對數值型字段進行必要的設置,才可“另存為”數據庫表。在 Visual FoxPro中,還應增加“礦石夾石”字段,按主關鍵詞分類匯總,并按前述關聯查詢的要求對其進行品位更新和數據計算,即可形成所需的掘進副產表和開采損失表。
2.4 儲量增減表的編制
因勘探增減、重算增減只需計算整個礦塊的量,不考慮礦房礦柱和礦帶代號,故只需按“ALLTR I M(礦體位置)+ALLTR I M(礦塊編號)”制作 1個含年初保有、開采損失、掘進副產、年終保有的聯接表,在查詢程序中再增加儲量增減、鎢鉬鉍金屬量增減字段便可。
具體步驟如下:先利用設計好的分類匯總查詢命令,分別對年初保有、開采損失、掘進副產、年終保有表中的儲量、鎢鉬鉍金屬量按“ALLTR I M(礦體位置)+ALLTR I M(礦塊編號)”進行分類匯總,然后進行聯接查詢,并設計程序對字段進行必要的增、刪、改工作,以獲得礦塊的儲量增減表;對儲量增減表按增減性質進行分解,便可獲得所需的勘探增減表、重算增減表 (因多表聯接較復雜,可采用雙表逐步聯接實現多表間數據查詢)。
2.5 平衡表的編制
與儲量增減表的制作類似,只是需增加勘探增減、重算增減內容的字段,損失量單獨設項,開采量中需加上掘進副產部分。分類匯總關鍵詞表達式變成“ALLTR I M(礦體位置 )+ALLTR I M(儲量級別)”,另需增加儲量、金屬量的平衡檢查字段。
2.6 打印表的制作
對照設計好的表格打印形式,在 VFP數據庫中,查詢對應字段并設置好排列順序,必要時可以對字段進行增、刪、改,使其盡量符合表格打印要求。最后導出到電子表格中,稍作格式調整和表格編輯即可。
CLOSE ALL
SELECT 1
USE f:年初礦塊.dbf&&打開年初礦塊表 (已改動升級礦塊的三量級別)
COPY TO f:礦塊 X.dbf
USE f:礦塊 X.dbf
DELE FOR I NL IST(礦塊編號 ,′K5-0/1′,′P4/5-0′,′P4/5-1′)
PACK &&消除礦塊中的多余記錄
APPE FROM f:勘探重算增加礦塊.dbf&&添加新記錄
DO f:礦塊匯總.qpr &&運行已編制好的匯總程序
**已制作基礎的新礦塊 (消除了部分勘變前的礦塊,增加了勘變礦塊)
CLOSE ALL
SELE 2
USE f:礦塊 Y.dbf
COPY TO f:礦塊 X.dbf
CLOSE ALL
SELECT 1
USE f:礦塊 X.dbf
SELE 2
USE f:勘探重算減少礦塊.dbf
COPY TO f:礦塊 Y.dbf
USE f:礦塊 Y.dbf
DO f:礦塊_礦塊.qpr &&運行已編制好的關聯程序
**消除了勘變前的礦塊
CLOSE ALL
SELECT 1
USE f:礦塊 Z.dbf
COPY TO f:礦塊 X.dbf
USE f:礦塊 X.dbf
DO f:礦塊匯總.qpr
CLOSE ALL
SELECT 1
USE f:礦塊 Y.dbf
COPY TO f:礦塊 X.dbf
USE f:礦塊 X.dbf
SELECT 3
USE f:采損.dbf
COPY TO f:采損 x.dbf
USE f:采損 x.dbf
DO f:礦塊_采損.qpr &&運行已編制好的關聯程序
**減去了開采和損失
CLOSE ALL
SELECT 1
USE f:礦塊 Z.dbf
COPY TO f:礦塊 X.dbf
USE f:礦塊 X.dbf
SELE 4
USE f:掘副.dbf
COPY TO f:掘副 x.dbf
USE f:掘副 x.dbf
DO f:礦塊_掘副.qpr &&運行已編制好的關聯程序
**減去了掘進副產
地質儲量管理工作是一項最基本的比較繁瑣的日常地質工作,利用 Visual FoxPro數據庫的強大功能進行管理,再結合 Excel進行報表編制和打印,使工作快捷、方便。
程序設計中,有不少細節問題不容忽視。首先,應做到文件存放目錄清晰明了,字段名稱長度類型和小數位盡量統一規范,清晰可讀;設計程序前應對原始表做好備份,以防不測;程序運行前應多作調試,盡量從簡到繁,確保程序簡單高效。另外,熟練掌握更多的命令和函數可達到事半功倍的效果。
[1]羅周全,劉曉明,吳亞斌,等.地質統計學在多金屬礦床儲量計算中的應用研究[J].地質與勘探,2007,43(3):83-87.
[2]焦 建,孫文潔,崔正筠.Excel在煤礦地質工作中的應用[J].山東煤炭科技,2009,(6):79-80.
[3]吳鴻敏,楊 佳,張寶一.固體礦產儲量估算系統的研究與實現[J].地理信息世界,2007,5(1):73-78.
[4]梁 艷,郝多虎,潘 懋,等.礦產儲量估算系統的開發研究[J].黑龍江科技信息,2010,(7):34-35.
“十一五”國家科技支撐計劃項目 (2006BAB02B05-1).
2010-10-20)
陳丙強 (1968-),男,工程師,主要從事礦山地質工作,Email:chenbq163@163.com。