-- 銀行TB更新SP
CREATE OR REPLACE FUNCTION f_bank_update(
 IN _shiten         varchar,    -- 支店番号
 IN _kouza          varchar,    -- 口座番号

 IN upduser         varchar,    -- 更新ユーザ
 IN pc              varchar,    -- 更新マシン
 IN count           integer,    -- 更新カウンタ

 OUT errcd          integer,
 OUT errmsg         varchar,
 OUT code           integer) AS
$BODY$
DECLARE
    cntcheck integer;
BEGIN
    --
    -- パラメータチェック
    --



    -- 更新カウンタチェック
    SELECT updcnt INTO cntcheck FROM t_bank WHERE shitennumberkey = _shiten AND kouzanumberkey = _kouza;
    IF NOT FOUND OR cntcheck <> count THEN
        RAISE EXCEPTION '更新カウンタが不正です';
    END IF;

    -- ステータス更新
    UPDATE t_bank SET
        lastusedate = CURRENT_TIMESTAMP,

        updusrnm = upduser,
        updpcnm = pc
        WHERE shitennumberkey = _shiten AND kouzanumberkey = _kouza;
    errcd := 1;
    code := 0;
    errmsg := '完了';
    RETURN;

END;
$BODY$
  LANGUAGE 'plpgsql' VOLATILE;
