PHP與MSSQL結合


日前向公司提議,要以網頁技術為基礎,製作簡易的資料瀏覽與彙整的系統(或介面),來彙整公司內ERPSFTHRM;會有這樣的想法產生的原因有3
1)關鍵欄位缺乏:
系統商開發的管理軟體,資料呈現上有缺陷,有時候關鍵欄位並沒有顯示,經常需要人員額外匯出成EXCEL再次整理,才可以得到所需要資料。
2)帳戶數目問題
系統開發商販售軟體、系統維護等收入,另外一個收入來源就是配合系統的帳戶數目。帳戶樹面試管控該系統同時使用人數;而公司可能因為預算原因等,帳戶數目購買數量不夠,而當有人員需要長時間瀏覽,可能會因為已達人數上限,被系統踢出。
3)模組功能缺乏:
 此原因可能是購買系統不夠完全(起因可能是預算問題)或是系統商設計時未考量,若要增加模組可能需要採用客製化製作。例如:SFC有物料追蹤之用途,但都僅有當下的批量狀態(LOT)也就是製造管理中所稱的WIP數量,但是對於要執行精實管理可能需要了解在製品水位,制定對策解決。所以需要撈取資料,匯出到額外建立的資料庫表格內,再行撈取、彙整。
鑑於以上理由,所以萌生額外製作系統之想法。

回到網頁技術,根據過去學校所教的網頁設計,靜態部分就已HTML為架構、CSS做美化,動態部分則以JavaScript來達成。而要連結資料庫、撈取資料,則要用PHP達成。經朋友推薦,前端網頁的美化,直接選擇套用BootStrap提供的模板使用,節省不少時間,官方連結於此請點我,若只是要套用簡單模板,可以直接到Getting Started的頁籤下面看範例,如此一來網頁開發就可以直接聚焦在我們的伺服其設定、資料來源邏輯撰寫與最終呈現。

由於公司的資料庫是採用Microsoft SQL Server 2008 R2,當然這部分可能會有人建議用C#ASP.NET等方式,來取代網頁跟PHP的功能,但是由於是短期的案子,就暫且打住。畢竟有接過案子的都知道,先取得主管信任、做出成果,才有後續的預算繼續進行;另一方面,ASP.NET也不慎熟悉,為求專案進行順利,就先以簡單的為主。

前面的背景介紹差不多完成,就要進到更細部的設計端。由於公司系統是Windows,所以為求簡便,我就用Windows提供的IIS 7.0來做伺服器設定與管理,然後為了讓IIS可以運行PHP,所以下載了PHP(由於要使用MSSQL,因此下載了PHP5的版本),再進行預設處理常式的設定,之後我們就可以用localhost測試,看是否可以跑php語法,最簡單就是用<?php phpinfo(); ?>來看看設置是否生效。而以上幾點,按照這樣設定,就能解決大半問題。另外其他遭遇狀況可能就是要補Service pack等。
php可以生效後,我們就要看我們希望php協助我們什麼功能,然後去調整php.ini檔案,把需要的功能前頭的分號(;)移除,開啟對應功能,便可於php中呼叫對應的函示。以本專案來說,我們需要用PHP連結使用MSSQL的語法,來取得MSSQL資料庫的表格,所以修改了以下幾行:


未完待續
英文縮寫或專有名詞說明:
ERP Enterprise Resource Planning,企業資源規劃系統
SFT Shop Floor Tracking,廠區生產追蹤系統,為鼎新電腦所推出系統之一;等同於常說的SFCShop Floor Control
HRM Human Resource Management,人力資源管理系統
WIPWork in Process,中文為在製品,屬於存貨的一種(可參考製造管理筆記,存貨有三類,原料、在製品、成品)。在一般的系統中,所定義的在製品都採取廣義的定義,也就是物料在現場製作就屬之;狹義的在製品則僅代表目前在機台上面加工的物料。以管理意義來說,前者比較能知道現場物料堆放狀況。
HTMLHypertext Markup Language,超文件標籤語言,屬於靜態網頁文件。
CSS
PHP
MSSQL
C#
ASP.NET

留言