메뉴 건너뛰기

SAP 한국 커뮤니티

주민번호 체크로직

오향 2008.02.29 17:38 조회 수 : 5104 추천: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 3965
226 서버 리스트 한번에 올리기... [8] bizarre 2008.06.02 4022
225 강제 Search Help 코딩과 선택시 해당 Description 채우기 [11] file 별이고픈구름 2008.05.29 4389
224 Internal Table 내용 PC에 저장하기 [11] 별이고픈구름 2008.05.28 3828
223 CTS Rollback [5] 심마니 2008.05.23 5943
222 FIELD-SYMBOL설명 및 예제 프로그램 [17] Delight 2008.04.30 9447
221 SAP의 On-line Program에서 Double Click Event 잡는 법 [8] Delight 2008.04.30 6459
220 유용한 t-code 모음들 [26] 아이디빵 2008.04.24 8797
219 요일 찾는 Function [3] Delight 2008.04.23 5106
218 PC 실행파일 구동시키기 [5] Delight 2008.04.23 4441
217 문자열에서 특정문자(열) 변경 및 삭제 [9] Delight 2008.04.23 7391
216 Widget 한번 개발해 보세요.. [11] 해처리 2008.04.17 4038
215 RFC GUIDE 입니다.. [22] file 나야나 2008.04.10 4290
214 CBO 테이블 데이터 변경 프로그램 [10] sapjoy 2008.03.28 7416
213 smart form 교재 [35] file alal 2008.03.27 4374
212 화면상에 입력된 parameter , selection-option 값 inter table로 담는 펑션 ㅋ [5] file bd 2008.03.25 5307
211 SAP GUI 접속시 'sapdp00' unknown 에러가 뜰때 [7] 밤톨™ 2008.03.05 5789
» 주민번호 체크로직 [14] 오향 2008.02.29 5104
209 월 계산 함수 [5] 오향 2008.02.28 4973
208 CLUSTER 테이블 찾는법~~ [4] 첼시 2008.02.28 3853