“收款以后”指的就是預付款訂單。上面講到過,銷售訂單設計時有兩條線,其中一條就是跟客戶付款有關。收款以后這個交付規(guī)則的含義就是客戶要先付完款(可能只是一部分),然后企業(yè)才能夠發(fā)貨。此時系統(tǒng)分析師在設計的時候,就需要讓系統(tǒng)在發(fā)貨之前去判斷這張訂單客戶的付款情況。如果客戶按規(guī)定交付了貨款(即在財務模塊有這張訂單的付款記錄),則允許生成發(fā)貨單。否則的話,系統(tǒng)就不允許發(fā)貨,并發(fā)出相關的警告。“強制”這個交付規(guī)則就相對簡單了。如果用戶選擇這個交付規(guī)則的話,根據(jù)銷售訂單來生成發(fā)貨單,在后臺就不會做相關的控制。即不會管庫存數(shù)量、訂單的完成情況與客戶付款情況。一般強制規(guī)則只用在系統(tǒng)測試與實施的初期。由于系統(tǒng)剛上線的時候,基礎數(shù)據(jù)還不怎么準確。所以允許用戶進行強制出貨。而強制出貨帶來的一個明顯的負面效應,就是在倉庫的帳面上會有負數(shù)庫存。顯然這是一種明顯的錯誤。為了系統(tǒng)實施的需要,一般在設計時都需要有這個規(guī)則。等到系統(tǒng)完善之后,用戶可以根據(jù)自己的情況采取其他嚴格的控制條件。發(fā)貨控制中的細節(jié)在系統(tǒng)設計時,除了要實現(xiàn)如上這些交付規(guī)則的后臺控制之外,下面這些細節(jié)的內容也有助于提高系統(tǒng)的可用性。第一個是客戶交付規(guī)則與訂單交付規(guī)則的關系。有時候會根據(jù)客戶設置不同的交付規(guī)則。如某些客戶經(jīng)過企業(yè)評估之后,認為其信用不好。此時企業(yè)就會要求這個客戶必須先付款然后才能夠發(fā)貨。也就是說,這個客戶的交付規(guī)則是“付款以后交貨”。此時為了管理方便,用戶會在客戶級別上設置交付規(guī)則。這個設計跟上面的訂單級別設計類似。而筆者這里要強調的是,如何將客戶的交付規(guī)則與訂單的交付規(guī)則統(tǒng)一起來。如在銷售訂單的時候需要輸入客戶的信息,那么這個訂單的交付規(guī)則就可以從客戶信息那邊自動帶過來。然后需要考慮的問題是,這個交付規(guī)則業(yè)務員能否改呢?通常情況下,如果這個交付規(guī)則需要專業(yè)的人員才能夠更改。如企業(yè)的信用部門或者銷售經(jīng)理才有權進行更改。此時就涉及到權限的限制。為此如何將客戶的交付規(guī)則與訂單的交付規(guī)則統(tǒng)一起來,并在訂單級別上做好相關的權限設計,這是系統(tǒng)分析師在設計時要全面考慮的內容。第二個需要注意的內容是,一家企業(yè)往往不需要用到所有的交付規(guī)則。如像一般超市,采用的就是“收款以后”這種交付規(guī)則。而生產(chǎn)企業(yè)可能會采用“完成行”或者“收款以后”兩種交付規(guī)則。在系統(tǒng)設計的時候,為了提高系統(tǒng)的靈活性,需要將各種交付規(guī)則都考慮進去。但是同時需要設置一個開關,讓企業(yè)選擇哪些交付規(guī)則是可用的。否則的話,一點這個下拉列表,這么多交付規(guī)則出來容易搞暈。所以在設計的時候,可以考慮讓用戶自己去選擇可用的交付規(guī)則,屏蔽掉不用的交付規(guī)則。第三個細節(jié)問題是“默認的交付規(guī)則”。企業(yè)往往會有一種主要的交付規(guī)則。為了提高工作的效率,要能夠在訂單與客戶級別上設置默認的交付規(guī)則。