Skip to content

Instantly share code, notes, and snippets.

@potados99
Created December 27, 2022 05:51
Show Gist options
  • Save potados99/a1a93b2fcaa6e0d5ebb40d3851809450 to your computer and use it in GitHub Desktop.
Save potados99/a1a93b2fcaa6e0d5ebb40d3851809450 to your computer and use it in GitHub Desktop.
Public API 템플릿
/**
POP 클라이언트가 직접 호출하는 public 프로시저 템플릿입니다.
모든 예외가 여기서 잡히며, 트랜잭션을 관리합니다.
프로시저 이름, 아래 주석과 v_tag, v_summary, v_detail을 수정한 후 사용하여 주세요.
*/
create
definer = MES_DHSol@`%` procedure sp_POP_GJ_BLAH_BLAH(
in $EQP_MASTER_CD varchar(32),
in $PRD_WO_CD varchar(32),
in $EMP_CD varchar(32)
)
comment '~하는 경주 POP 프로시저'
begin
/**
## 개요
텅 빈 프로시저 템플릿 입니다. 수정해주세요.
## 파라미터
다음 파라미터가 필요합니다:
- 설비코드(`$EQP_MASTER_CD`): 작업이 진행되는 설비의 식별자입니다.
- 작업지시코드(`$PRD_WO_CD`): 작업중인 작업지시의 식별자입니다.
- 작업자코드(`$EMP_CD`): 작업을 진행하는 작업자의 식별자입니다.
## 기여
- 작성: 송병준
- 문서: 송병준
*/
################################################################
# 선언과 초기화
################################################################
declare v_tag varchar(255) default 'sp_POP_GJ_BLAH_BLAH';
declare v_summary varchar(255) default '무엇을 무엇';
declare v_detail varchar(255) default '무엇을 무엇 하여 이렇게 무엇';
# -) 최상위 예외 처리기
declare exit handler for sqlexception
begin
get diagnostics condition 1 @error = message_text;
rollback;
call log_error(v_tag, concat(
v_summary, '하는 중 문제가 생겼습니다: "', @error, '". ',
'인자는 다음과 같았습니다: ', json_object(
'$EQP_MASTER_CD', $EQP_MASTER_CD,
'$PRD_WO_CD', $PRD_WO_CD,
'$EMP_CD', $EMP_CD
)
));
call sp_report(@error);
end;
start transaction;
-- TODO 선언은 여기에
call log_info(v_tag, concat(
v_summary, '하는 최상위 프로시저에 진입하였습니다. ',
v_detail, '합니다.'
));
-- TODO 초기화는 여기에
################################################################
# 로직 전개 시작
################################################################
본처리:
begin
-- TODO 로직은 여기에
end;
call sp_result('OK', '정상', null);
call log_info(v_tag, concat(
v_summary, '하는 최상위 프로시저를 마칩니다.'
));
commit;
end;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment