메뉴 건너뛰기

SAP 한국 커뮤니티

주민번호 체크로직

오향 2008.02.29 17:38 조회 수 : 5107 추천:4

 



기본적인 주민번호체크 루틴입니다.


*"----------------------------------------------------------------------
*"*"로컬인터페이스:
*" IMPORTING
*" VALUE(INPUT)
*" EXPORTING
*" VALUE(OUTPUT)
*"----------------------------------------------------------------------
DATA: N1 TYPE I,
N2 TYPE I,
N3 TYPE I,
N4 TYPE I,
N5 TYPE I,
N6 TYPE I,
N7 TYPE I,
N8 TYPE I,
N9 TYPE I,
N10 TYPE I,
N11 TYPE I,
N12 TYPE I,
N13 TYPE I,
LEN TYPE P,
VAL(14) TYPE C,
RESULT TYPE I.


OUTPUT = 'ERROR'.
LEN = STRLEN( INPUT ).
IF LEN <> 13 AND ( LEN <> 14 ).
EXIT.
ENDIF.
VAL = INPUT.
IF VAL+6(1) = '-'.
VAL+6 = VAL+7.
ENDIF.
IF VAL+0(1) < '0' OR ( VAL+0(1) > '9' ).
EXIT.
ENDIF.
IF VAL+1(1) < '0' OR ( VAL+1(1) > '9' ).
EXIT.
ENDIF.
IF VAL+2(1) < '0' OR ( VAL+2(1) > '9' ).
EXIT.
ENDIF.
IF VAL+3(1) < '0' OR ( VAL+3(1) > '9' ).
EXIT.
ENDIF.
IF VAL+4(1) < '0' OR ( VAL+4(1) > '9' ).
EXIT.
ENDIF.
IF VAL+5(1) < '0' OR ( VAL+5(1) > '9' ).
EXIT.
ENDIF.
IF VAL+6(1) < '0' OR ( VAL+6(1) > '9' ).
EXIT.
ENDIF.
IF VAL+7(1) < '0' OR ( VAL+7(1) > '9' ).
EXIT.
ENDIF.
IF VAL+8(1) < '0' OR ( VAL+8(1) > '9' ).
EXIT.
ENDIF.
IF VAL+9(1) < '0' OR ( VAL+9(1) > '9' ).
EXIT.
ENDIF.
IF VAL+10(1) < '0' OR ( VAL+10(1) > '9' ).
EXIT.
ENDIF.
IF VAL+11(1) < '0' OR ( VAL+11(1) > '9' ).
EXIT.
ENDIF.
IF VAL+12(1) < '0' OR ( VAL+12(1) > '9' ).
EXIT.
ENDIF.


N1 = VAL+0(1).
N2 = VAL+1(1).
N3 = VAL+2(1).
N4 = VAL+3(1).
N5 = VAL+4(1).
N6 = VAL+5(1).
N7 = VAL+6(1).
N8 = VAL+7(1).
N9 = VAL+8(1).
N10 = VAL+9(1).
N11 = VAL+10(1).
N12 = VAL+11(1).
N13 = VAL+12(1).
RESULT = N1 * 2 + N2 * 3 + N3 * 4 + N4 * 5 + N5 * 6 + N6 * 7 + N7 * 8
+ N8 * 9 + N9 * 2 + N10 * 3 + N11 * 4 + N12 * 5.
RESULT = RESULT MOD 11.
RESULT = 11 - RESULT.
RESULT = RESULT MOD 10.
IF RESULT = N13.
OUTPUT = INPUT.
ENDIF.
 


 


 

번호 제목 글쓴이 날짜 조회 수
227 tables // data ~ like 로 선언한 WA 변수의 차이점 [3] bizarre 2008.06.03 3967
226 서버 리스트 한번에 올리기... [8] bizarre 2008.06.02 4025
225 강제 Search Help 코딩과 선택시 해당 Description 채우기 [11] file 별이고픈구름 2008.05.29 4395
224 Internal Table 내용 PC에 저장하기 [11] 별이고픈구름 2008.05.28 3833
223 CTS Rollback [5] 심마니 2008.05.23 5948
222 FIELD-SYMBOL설명 및 예제 프로그램 [17] Delight 2008.04.30 9480
221 SAP의 On-line Program에서 Double Click Event 잡는 법 [8] Delight 2008.04.30 6473
220 유용한 t-code 모음들 [26] 아이디빵 2008.04.24 8829
219 요일 찾는 Function [3] Delight 2008.04.23 5115
218 PC 실행파일 구동시키기 [5] Delight 2008.04.23 4446
217 문자열에서 특정문자(열) 변경 및 삭제 [9] Delight 2008.04.23 7485
216 Widget 한번 개발해 보세요.. [11] 해처리 2008.04.17 4039
215 RFC GUIDE 입니다.. [22] file 나야나 2008.04.10 4293
214 CBO 테이블 데이터 변경 프로그램 [10] sapjoy 2008.03.28 7427
213 smart form 교재 [35] file alal 2008.03.27 4377
212 화면상에 입력된 parameter , selection-option 값 inter table로 담는 펑션 ㅋ [5] file bd 2008.03.25 5309
211 SAP GUI 접속시 'sapdp00' unknown 에러가 뜰때 [7] 밤톨™ 2008.03.05 5793
» 주민번호 체크로직 [14] 오향 2008.02.29 5107
209 월 계산 함수 [5] 오향 2008.02.28 4979
208 CLUSTER 테이블 찾는법~~ [4] 첼시 2008.02.28 3857