드로우홀릭 더베이직

안녕하세요 
이것 저것 따라하면서 로그인까지는 잘 실행이 됩니다
로그인 후 어드민권한이 로그인 할때와 유저권한 사용자가 로그인할때 다르게하고 싶어요.
우선 pjtdetailDB라는 이름의 데이터시트가 있습니다
해당 pjtdetailDB 데이터시트 중에는 user 라는 항목이 있습니다.
또한 Pjtlist라는 이름의 폼이 있는데 이 폼은 prjdetailDB를 가지고 만들었습니다
ㅡ어드민 권한을 가진 사용자가 로그인시 pjtlist폼 실행
ㅡ유저 권한을 가진 사용자가 로그인시 pjtlist폼 실행 후 사용자 이름과 User 가 같은 항목만 보여주기.
 If UserLevel = 1 Then ' for admin
 DoCmd.OpenForm "pjtlist"
 Else
 DoCmd.OpenForm "Pjtlist"
 End If 그리고 어떻게 써야 하나요?
Option Compare Database

Private Sub Command1_Click()
Dim User As String
Dim UserLevel As Integer
Dim TempPass As String
Dim ID As Integer
Dim UserName As String
Dim TempID As String


If IsNull(Me.txtUserName) Then
 MsgBox "Please enter UserName", vbInformation, "Username required"
 Me.txtUserName.SetFocus
ElseIf IsNull(Me.txtPassword) Then
 MsgBox "Please enter Password", vbInformation, "Password required"
 Me.txtPassword.SetFocus
Else
 If (IsNull(DLookup("UserLogin", "tblUser", "UserLogin = '" & Me.txtUserName.Value & "' And UserPassword = '" & Me.txtPassword.Value & "'"))) Then
 MsgBox "Invalid Username or Password!"
 Else
 TempID = Me.txtUserName.Value
 UserName = DLookup("[UserName]", "tblUser", "[UserLogin] = '" & Me.txtUserName.Value & "'")
 UserLevel = DLookup("[UserType]", "tblUser", "[UserLogin] = '" & Me.txtUserName.Value & "'")
 TempPass = DLookup("[UserPassword]", "tblUser", "[UserLogin] = '" & Me.txtUserName.Value & "'")
 UserLogin = DLookup("[UserLogin]", "tblUser", "[UserLogin] = '" & Me.txtUserName.Value & "'")
 DoCmd.Close
 If (TempPass = "password") Then
 MsgBox "Please change Password", vbInformation, "New password required"
 DoCmd.OpenForm "frmUserinfo", , , "[UserLogin] = " & UserLogin
 Else
 'open different form according to user level
 If UserLevel = 1 Then ' for admin
 DoCmd.OpenForm "pjtlist"
 Else
 DoCmd.OpenForm "pjtlist"
 End If

 End If
 End If
End If
End Sub

Private Sub Form_Load()
Me.txtUserName.SetFocus
End Sub

profile

돌직구

2017.03.02 16:18:39
*.149.161.117

용어가 조금 헷갈립니다만..

'pjtdetailDB' <-- 이것이 '데이터시트'라고 하셨는데요.. 이것이 테이블입니까? 폼 입니까?

테이블로 이해하고 답변 달겠습니다.


Pjtlist Form의 Open 이벤트에, 다음과 같은 코드를 달면 됩니다.


If UserLevel = 1 Then ' for admin
	Me.RecordSource = "pjtdetailDB"
Else
 	Me.RecordSource = "SELECT * FROM pjtdetailDB WHERE user = '" & UserName & "'"
End If

즉, Pjtlist 라는 이름의 폼이 열릴 때, 관리자가 아니라면 폼에 표시되는 데이터 원본이 자기 자신의 레코드만 표시되도록 제어하는 것 입니다.


항상 드리는 말씀입니다만, 파일을 첨부하시면 보다 나을 것 같습니다. ^^

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 FAQ: 어떤 과정을 수강하는 것이 좋을까요? 외 돌직구 2017-08-29 31811
공지 좋은 답변을 이끌어 내는 방법 [1] 돌직구 2017-07-14 27950
공지 액세스 Q/A 게시판 형식을 변경합니다. 돌직구 2014-09-10 23096
339 Access 2013으로 매크로함수를 이용하여 앱을 개발할 경우... 1 클로이 2019-06-08 4113
338 액세스2013 무작정따라하기에서 궁금한 게 있습니다 1 deneb 2019-06-05 2672
337 데스크탑DB를 만든 후에 웹앱으로 컨버전이 되는지요? 1 클로이 2019-06-05 2688
336 안녕하세요 union 쿼리 사용시 질문이 있습니다ㅜㅜ file 2 망고 2019-06-04 2718
335 조회폼에서 자꾸 멈춥니다. 2 Michael 2019-05-31 6063
334 실무 액세스 3 재수강 문의 1 ltsky79 2019-05-22 2825
333 setfilter 식이 정확히 입력되지 않았거나 너무 복잡해서 계산할 수 없습니다 4 망고 2019-05-16 5046
332 조회 및 등록폼에 대한 질문있습니다. file 2 feroz 2019-05-13 2902
331 액세스 임시 변수 설정 관련 문의드립니다. 2 1 feroz 2019-05-07 11478
330 MS Access 64bit 설치 관련문의 1 호수달 2019-05-01 2147
329 폼의 텍스트상자 크기가 텍스트의 양만큼 자동으로 높이맞춤이 가능할까요? 1 watzza 2019-04-18 3595
328 엑세스로 재고관리대장을 만들계획입니다. 2 1 똥구녕멍멍 2019-04-18 32374
327 개발된 앱의 테이블 소스를 다른 사람이 열어볼 수 없게 하는 방법이 있나요? 2번째,,,문의 드립니다. 1 요술곰 2019-03-27 1933
326 메크로 작성시 함수 setvalue 2 sky3300 2019-03-27 8602
325 오피스365 사용하여 ACCESS 작성 배포 2 요술곰 2019-03-27 7621
324 입력식에 유호하지 않는 날짜값이 있습니다. 2 sky3300 2019-03-26 24981
323 엑셀자료를 액세스로 업로드 하는 방법 file 1 바다거북이 2019-03-24 4410
322 동일한 필드 내의 문자열 데이터도 합칠 수 있을까요? 4 그루터기 2019-03-21 2028
321 식이 정확히 입력되지 않았거나 너무 복잡해서 계산할 수 없습니다.... file 2 준사모 2019-03-20 7363
320 로그인과 암호 fmc후세 2019-03-12 1936


  주소  12925 경기도 하남시 미사대로 540, B동 917호 (현대지식산업센터 한강미사2차) ㈜팀데이터이십일  |  고객센터 전화번호  02-467-2998  |  대표이사  염기웅
개인정보관리책임자  염기웅 (ml_privacy@td21.com)  |  사업자등록번호  120-86-79260  |  통신판매업신고번호  제 2021-경기하남-1166 호  [사업자 정보 확인]
  TD21의 사전 서면 동의 없이 TD21 사이트 일체의 정보, 콘텐츠 및 UI 등을 상업적 목적으로 전시, 전송, 스크래핑 등 무단 사용할 수 없습니다.