發表文章

看ERP 裡的SQL寫法就知道他是不是菜鳥了

 今天在公司上班時,透過視線看著剛來公司的年輕小明寫SQL,他的座位剛好在我的斜前方,所以筆者 的位置可以很清楚地看見他整個螢幕畫面文字。此時他正在寫一段SQL,這SQL 裡的 TABLE 有20個欄位(column)只見他把這20幾個欄位分成上下2列,橫著把Columns 一個一個列出來。從這佈局動作,我就知道他是剛寫SQL程式菜鳥。 大家都知道,SQL Columns 佈局寫法,簡單說就分橫式和直式2種寫法。 先說明一下,所謂SQL 橫式和直式寫法差別,請看以下範例: 橫式Columns 佈局寫法 SELECT Column1,Column2,Column3  From Table1 Where Column1 = Something 直式Columns 佈局寫法(豆號一定要在左邊) SELECT Column1             ,Column2            ,Column3  From Table1 Where Column1 = Something 從以上的範例就可看到二者差別就在Column (欄) 是往右邊發展還是往下發展 Long Long Time Ago. 記得筆者是剛學SQL 程式的菜鳥,那時還沒網際網路,要學程式語言或SQL就是買書來看。那時SQL 書籍大部份教學範例都是橫式的(當然也有部份是直式的),所以,我那時寫的SQL順里成章也是橫式的,用此方式寫SQL字串最大的優點是雙引號會用的比較少(前後只要2個)。 出了社會寫過上千支SQL,發覺最困難不是寫SQL ,而是找出SQL裡的錯誤,要能快速找出問題所在,並給予修正。但橫式寫法裡Table Column 一堆擠在一起,有錯誤要一個一個刪除(或暫時移除)除錯非常麻煩且耗時,但那時還沒有知識要改成直式寫法(現在有網路真的太方便了)。這情形直到筆者換工作後接手維護新公司的系統程式後,看到程式裡面前輩SQL 直式寫法才恍然大悟,我弄錯方法了。 從此,我程式中的SQL 字串就改為直式寫法,在debug SQL時,可方便將有疑問 Column 註解(或暫時移除)方便除錯,這是此直式寫法的最大優點。也許有讀者會說:SQL 用直式寫法太麻煩了,要不斷地用Enter鍵將Column 移到下一行,又要排列整齊,耗時又耗工,沒有效率。老手與新手最大的差別就是在有沒有善用工具來創造自己寫程式的效能

換ERP的理由 資料反應太慢了

 在網路曾看過一篇文章,主題寫說他們公司換ERP的理由與經過。文章指公司舊ERP已用了五年了,不是不好用,只是反應太慢,報表下條件查詢資料要30幾秒才有反應,常常要人等資料出現,效率非常差,因此,決定更換ERP。 看完這文章後感覺這家公司MIS 人員非常失職,因ERP使用5年後,裡面某 Table 的資料應有上百萬筆了,印象中早期舊版的資料庫中如有Table 筆數達百萬筆以上,資料查詢將會變的很慢,一定要根據SQL 的查詢條件欄位建立一個新的多欄位索引(index ),舉例如SQL 裡的Where 查詢條件如有5個欄位,就要建立這5個欄位的索引,(不是5個索引,是這5個欄位的單一索引)。索引建立後再查詢,保證資料在2秒內即出來。 以上是我的工作經驗談,謹供大家參考。

ERP最好實施日期

 ERP 要在什麼時候開始實施上線? 有人認為是在1月1日 也有人認為是在7月1日 個人認為ERP最佳上線日期是在10月1日 為什麼? 因在上線2個月後就是公司企業傳統的年底大盤點 在盤點後,可拿ERP的庫存資料和實際的盤點結果比對 看盤點誤差值多少? 進而找出誤差原因並給予修正 所以,個人觀點10月才是最佳上線日期 當然如抛開盤點問題不計,任何時間都是上線的好日期

省錢的ERP導入方法之一

 最好的ERP導入方法就是買市售大廠的ERP軟體再加上自製的外掛軟體來操作。這是筆者個人認為是目前為止最好最省錢的導入ERP方法。         目前ERP軟體的計價方式,除了基本價格外,另外再加By 人數計算的License(帳號)費用,再加上客製軟體費用,基本就要550萬元起跳了。         如果將此價格拆開,則共有4項費用         1.ERP 軟體費用、顧問導入費用再加上5個基本使用帳號總價約要300萬元左右。         2.License(帳號)費用 1個License約10萬元(註:每家軟體報價都不一樣,請自洽軟體公司),一般中型公司至少要20個License ,扣除基本5個,約須要再加買15個License ,金額約要150萬。         3.客製軟體加客製報表費用約要50萬元左右。         4.硬體費用 ,金額約要50萬元左右。         第1項和第4項是基本費用,無法省,第2和第3項則是選配項目,如果公司有會設計程式的資訊人員,則可考慮自行設計外掛程式和報表,這樣第2項和第3項的金額就可以節省下來。這樣導入一套ERP約只要350萬元左右,適合中小型企業導入ERP系統。         筆者曾經到某傳統製造業公司參觀時,其公司的資訊部經理在介紹時,強調他們導入某家ERP軟體後,為節省購買License(帳號)的金額,著手設計外掛程式,經過2年的努力程式設計,目前除了會計系統外仍用原ERP的系統外,其他模組程式已全部改用自製的外掛程式了,節省了數百萬元的帳號費用和年度維護費用,降低公司的維運成本。         中小企業公司如沒有專業的程式設計人員協助設計自己的ERP ,可退而求其次買軟體公司的ERP ,而外掛程式和報表技術含量較低則可自己設計,這樣可以以較低的成本導入ERP系統。 註:以上各項金額非絕對值,有很多的變數存在,實際金額請自洽軟體公司

一個人在一年內寫一套ERP程式

一個人在一年寫一套ERP程式, 可能嗎?         筆者是朝正面且樂觀看待此事,認為一個人在一年內寫一套ERP程式是有可能的。當然,首先要滿足以下前題條件下才有辦法完成此項工作。 1.ERP程式的執行平台須為Windows 桌面版。         桌面版的設計階段和執行速度均比Web 版要方便且快速,如用 web 版來設計 ERP,筆者認為不太可能在一年內完成所有的程式,因為寫Web 程式非常耗時耗工(足厚工),有分前端後端程式還要搞定各廠牌瀏覽器(還有瀏覽器版本問題)差異就夠你忙了,時間都被耗廢在這邊,程式寫作時間都被縮減了,因此,建議還是使用桌面版的ERP程式比較有可能在一年內完成ERP程式。        現在因駭客多,有些公司怕被入侵,因此,將Web版的ERP 對外的Port關閉,只限內部使用,這樣使用Web設計ERP的優點就消失了,還不直接用Winfomr桌面版ERP。 2.程式語言要選C#         C# 具備簡捷快速方便的特性,是寫ERP首選程式,最重要就是C# 有 Form 的表單繼承功能,可減少大部份的工作時間,不用每支Form 都從頭開始寫。另外也要必須具備一定的使用C# DLL的方法和經驗 ,否則ERP全部數百支的FORM寫在同一支執行檔裡,執行檔案SIZE 恐要超過20 MB ,這20 MB 的ERP 程式一執行,個人電腦的記憶體就被耗光了,其他事情就不用做了。 3.取消(或減少)報表設計工作         在ERP程式寫作工作中,除了建立FORM程式外,另外工作量最多的就是寫報表了,如取消報表工作將可加快完成ERP程式。         早期無電子表單,資料文件都要印出來供主管簽名確認,現在都電子化,可直接線上簽核就可,因此,設計報表的工作極乎可省略或減少9成的報表工作。減少報表的工作後,作業時間可全部專注在Form的程式創作,ERP專案才有可能在一年內完成。 註:這邊所謂的線上簽核不是去買一套電子表單流程簽核,而是直接在ERP Form 程式中直接審核按核准即可。 4.取得某大ERP廠商完整且全套的說明書         在這些大廠ERP說明書裡有詳細的程式介紹和流程還有一些基本的計算公式可供使用,最重要的是這些說明書裡有完整的Form 畫面控件編排(Layout)可供參考,在寫Form程式時你只要照說明書去排版就可,省略