드로우홀릭 더베이직
안녕하세요
이번에 일때문에 액세스를 새로 배우고있는데요
새롭게 테이블을 만드는데 일련번호를 붙여야 됩니다.
일련번호를 10000-20160817001 이렇게 -앞에는 고정이고 뒤에는 오늘날짜고 001은 그 날짜에 첫번째라고 해서 일련번호를 만들고싶은데요 날짜랑 번호를 합치는것부터 막힙니다.. 날짜도 식을 입력하면 보이는방식이 -가 붙고요.. 어떻게 하면좋을까요??
도와주세요~
말씀하신 사항은 간단히 구현하기 어렵습니다.
이런 것을 '채번'이라고 하는데요.. 년/월/일이 들어갈 경우, 현재 최대값을 보유하고 있는 테이블이 있어야 합니다.
그리고, 새 레코드가 추가되는 시점(Before Insert)에 이 테이블에서 값을 읽어온 뒤, +1 해서 폼에 뿌려주어야 하지요.
이 때, 동시에 여러 사람이 입력하게 되면, 같은 값이 들어갈 수도 있는데, 이를 막으려면 트랜잭션 개념도 알고 있어야 합니다.
동시에 여러 사람이 입력하는 것을 무시한다면, 비교적 간단히 만들 수 있습니다. 다음과 같은 식을, 새 레코드가 추가되는 시점에 적용시키면 됩니다.
"10000-" & Format(Now(),"yyyymmdd") & Format(25,"000")
이 식에서, '25'라는 값을 계산해서 이 식에 넣어 주어야 합니다. 그리고 Format(25,"000") 라는 식은 25을 025로 표시해 줍니다.
어쨌거나, 동시성을 해소하는 것이 관건일 것 같은데요.. 이것은 튜터링으로 해도 30분은 설명해야 할 것 같습니다.