메뉴 건너뛰기

SAP 한국 커뮤니티

주민번호 체크

임선미 2007.10.23 10:38 조회 수 : 4795 추천:11

적당히 펑션으로 생성하셔서 사용해보세요. 기본적인 주민번호체크 루틴입니다.

*"----------------------------------------------------------------------
*"*"로컬인터페이스:
*" 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.
번호 제목 글쓴이 날짜 조회 수
387 미니 SAP 설치 메뉴얼 입니다. [5] 신종철™ 2007.09.17 4574
386 사용자별 Upload & Download 기본값 [1] 홍성현 2007.08.09 3661
385 Python과 SAP RFC 통신 [3] 홍성현 2007.08.09 5808
384 ABAP TIP [4] file 둘리67 2007.10.03 5954
383 4.6에서 ALV 필드 변경 안될때 버퍼 지우는 방법 신종철 2007.08.10 4783
382 ABAP에서 웹브라우져 호출 홍성현 2007.08.09 8330
381 간단팁2 : 특정 값으로 구분된 텍스트, 한방에 분리 및 각각의 변수에 저장 [2] 윤훈태 2007.10.15 4142
380 ICON ascii code [3] file sapjoy 2007.10.05 5006
379 조회조건 동적으로 보이기 [5] 신종철™ 2007.08.20 4777
378 트리 만들기 [6] 푸른밤 2007.07.31 5357
» 주민번호 체크 [3] 임선미 2007.10.23 4795
376 그룹을 이용하여 SAP PRD 시스템 접속하기 [2] file 이명환 2007.10.18 4532
375 스페이스를 2자리로 먹을때 1자리로 먹게 바꾸기 [1] 신종철™ 2007.08.20 3953
374 Internal table 사용시 속도개선을 위한 구문 [16] 노름마치 2007.11.14 10040
373 NATIVE SQL의 INSERT 문 [4] sapjoy 2007.11.13 6259
372 Tip : 전표 라인 아이템 Direct 조회 [5] 2007.10.23 10190
371 새로운 Print format 추가하기 [5] file 이명환 2007.10.18 3679
370 SAP 어플리케이션의 구성 [3] file 노름마치 2007.10.10 3897
369 widget을 이용한 Job monitor 데모 [1] 해처리 2007.10.24 3603
368 FIELD-SYMBOL설명 및 예제 프로그램 [17] Delight 2008.04.30 9471