-- f_deposit_update_sellerpaydate(受注No, 更新ユーザ, 更新PC, 更新カウンタ)

CREATE OR REPLACE FUNCTION f_deposit_update_sellerpaydate(
 IN _orderno        integer,    -- 受注No

 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_deposit WHERE orderno = _orderno;
    IF NOT FOUND OR cntcheck <> count THEN
        RAISE EXCEPTION '更新カウンタが不正です';
    END IF;

    -- 受注明細変更
    UPDATE t_deposit SET
        sellerpaydate = current_timestamp,
        updusrnm = upduser,
        updpcnm = pc
        WHERE orderno = _orderno;
    errcd := 1;
    code := _orderno;
    errmsg := '完了';
    RETURN;

END;
$BODY$
  LANGUAGE 'plpgsql' VOLATILE;