發表文章

目前顯示的是 6月, 2015的文章

Basic Accounting #1

圖片
這是沒學過會計學的門外漢,為了開發會計軟體對應到系統所需要的基本概念所做的摘要。 會計 T 字帳速記 張老師 Tip : 資產跟費用同方向! 費用發生要付錢! 所以費用增加在借方 資產減少在貸方 收入發生要收錢! 所以收入增加在貸方 資產增加在借方 實科目與虛科目 實科目其實是存量(stock),代表的是 在某一特定「時點」的狀態。而虛科目則是流量(flow),表彰的是在某一特定「期間」內權益變化的原因。 <--- 這句有點玄 「資產」、「負債」、「權益」 就是  「實科目」 「收益」、「費用」、「利益」、「損失」 則是 「虛科目」 舉例說明 : 阿邦今年長高了5公分,年底的身高是180公分: "長高 5公分"  是一段期間(今年)的變化量,是流量。  <--- 虛科目 "身高180公分" 是特定時點的狀態,是存量。 <--- 實科目 張老師 Tip:收入費用是虛科目,其他三個是實科目。 筆者依此判斷虛科目,在開帳時應該均為零 !? 進銷存案例試算 從實務上採購進貨(立帳、沖帳),到銷售出貨(立款、沖款) 這四個作業流程,會產生會計分錄如下: 採購進貨 借 - 進貨費用 : 100 貸 - 應付帳款 : -100 當付款給廠商 借 - 應付帳款 : 100 貸 - 銀行存款 : -100 銷售出貨 借 - 應收帳款 : 120 貸 - 銷貨收入 : -120 收到客戶款項 借 - 銀行存款 : 120 貸 - 應收帳款:  -120 (正數表示借方、負號表示為貸方) <--- 國外的用法 總帳 此時從總帳上查閱大類/科目/金額如下: 費用 / 進貨費用 : 100 負債 / 應付帳款 : 0 資產 / 銀行存款 : 20 資產 / 應收帳款 : 0 收入 / 銷貨收入 : -120 應付帳款、應收帳款會在沖帳後抵銷。 會計科目範本 一、資產類 A、流動資產 現 金 銀行存款 短期投資 (有價證券) 應收票據 應收帳款 5-1 備抵呆帳(備抵壞帳):減項(評價) 其他應收款:賣出商品以外的資產,所發生的債權。 應收收入 存 貨:期末未

Using Transaction Procedure Template

圖片
問題描述 在 SQL Server 中撰寫具有交易(Transaction)控制的預存程序,若考慮預存程序會被另一個預存程序或觸發呼叫,如上圖 ProcedureA 呼叫 ProcedureB,在兩個預存程序中均可能發生錯誤需要進行 Rollback Transaction,此時交易控制不能如下段這般簡單 BEGIN TRY BEGIN TRANSACTION; -- Do Something COMMIT TRANSACTION; END TRY BEGIN CATCH ROLLBACK TRANSACTION; END CATCH; 解決方案 此時需要做一點手腳,以下這個範本適用在主要預存程序或被呼叫附屬預存程序,撰寫時不需要額外傳遞交易狀態等參數。 DECLARE @hasOuterTransaction bit = case when @@trancount > 0 then 1 else 0 end; DECLARE @rollbackPoint nvarchar(32)=replace(convert(nchar(36), newid()), N'-', N''); BEGIN TRY IF @hasOuterTransaction = 1 BEGIN SAVE TRANSACTION @rollbackPoint; END ELSE BEGIN BEGIN TRANSACTION @rollbackPoint; END; -- Do Something IF @hasOuterTransaction = 0 BEGIN COMMIT TRANSACTION @rollbackPoint; END; END TRY BEGIN CATCH IF xact_state() = 1 BEGIN ROLLBACK TRANSACTION @rollbackPoint; END; DECLARE @error_message nvarchar(1000)=ERROR_MESSAGE(); THROW 51000, @error_message, 1; END