需求簡介
只用鍵盤熱鍵就能馬上開啟,單一入口,由入口導引到不同工作區。
可以決定是否先進行不限次數的查詢,再來輸入資料。
輸入的資料分三大類:客戶個別商品訂單、個別商品詳細資料、客戶基本資料。
加總客戶訂單後的訂購數量單,為執行特定 sh 檔後自動生成。
可以查詢任兩組不相鄰的 and 或 or 關鍵字,篩選出符合條件的行。
上述所輸入的客戶及商品資料,每行都需要準備一個獨立編號,以備往後可能用到。
可以直接編輯已輸入的資料。
介面導覽
以熱鍵開啟 linux 終端機後,執行「sh foo.sh」即可進入功能選擇介面。
接著可以做四件事。一、輸入客戶訂單;二、輸入商品資料;三、輸入客戶資料;四、查詢訂購數量單。
上述四種功能,都會先跑出搜尋詢問選項,直接輸入關鍵字,或留白時會跑搜尋篩選,只有在輸入小寫 no 時,才會進入輸入新資料的模式。
客戶訂單格式
客戶訂單需具備以下幾項內容,且要能隨時擴充新內容,但不影響查詢及加總功能。
- 獨立訂單編號:格式為「id[yymmddhhmmss]」。
- 不與他人重複的客戶名稱。
- 獨立商品編號:格式為「pd#######」。
- 商品名稱:名稱中要盡可能完整描述商品種類及出版商。
- 商品集數:集數要與名稱分開。格式為 (數字)。
- 商品價格:日幣。
- 商品數量:上限為九,一定要寫在行末。
- 銷單字元:當商品完成結帳出貨時,可以寫上數字零,訂購數量表就不會再計算這筆了。
商品資料格式
商品資料的重點是供其他程式引用,需具備以下幾項內容,且要能隨時擴充新內容,但不影響查詢及加總功能。
- 獨立商品編號:格式為「pd#######」。pd 後接的七位數數字,是等差遞增的數字,所以每新加一筆時,都要檢查是否與前一行相同。(如有需要,也可以把位數加多一點)
- 發售日期:格式為「yy mm dd」。
- 購買方式:如「店購」「網購」「場購」。事先準備這一項有好處的。
- 購入店家:因為關係到店家特典,所以必須要有這一項。
- 商品名稱:名稱中要盡可能完整描述商品種類及出版商、附贈品。
- 商品集數:集數要與名稱分開。格式為 (數字)。
- 商品價格:日幣。
- 備註及網址:雖然終端機沒有支援超連結,但還是會辨視連結文字,用滑鼠右鍵還是能開到瀏覽器中的。(本項不限長度但太長可能會影響輸出畫面,建議可以利用短網址服務,可以的話,請建立本機的轉址服務。)
客戶資料格式
客戶資料的重點,是確認某客戶的連絡收件資料,還有查看總購買件數及金額,格式可依個人需求自由發揮,不過建議要弄成可以方便輸出列印的格式。(比如說可以吐成 HTML/PDF 檔來列印之類的)
訂購數量格式
訂購數量單的重點,在於該在何時,訂購哪些東西、多少數量,所以金額部分可以省略。為了避免混亂,每次開始計算前,都要先將舊檔改名,建立新檔來儲存算出的結果。
- 獨立商品編號:格式為「pd#######」。
- 發售日期:格式為「yy mm dd」。
- 購買方式:如「店購」「網購」「場購」。
- 購入店家:因為關係到店家特典,所以必須要有這一項。
- 商品名稱:名稱中要盡可能完整描述商品種類及出版商、附贈品。
- 商品集數:集數要與名稱分開。格式為 (數字)。
- 加總數量:從「客戶訂單」中,抓符合資料的數字後,加總出的數字。因為是只抓行末的單一位數字,所以把已處理好的客戶訂單行末附加個數字零,就不會再加到這裡面去。不過這個加總算是最花計算時間的,能做成只加總計算想要的複數項目,應該是比較好的。
- 備註及網址:為了方便馬上查閱及訂購,請務必在此加入網址。
待克服的問題
- 不確定如何做到「無限次查詢」而不必跳離程式。
- 不確定如何只輸入商品編號,就把商品資料中的必要欄位,移到其他文件。
- 不確定如何將篩選資料的數字加總。
- 不確定如何讓程式自動判斷是否使用短址服務。
- 不確定如何直接修改文件資料。
- 不確定文件檔要變多大時,才會明顯影響速度。
0 comments:
張貼留言