현재 로그온 한 사용자의 직위에 따라 권한을 다르게 부여하거나 혹은 값을 다르게 부여하고자 한다면.
1. 현재 로그온한 사용자의 직위 확인
App – OnStart 속성에 아래와 같이 변수 설정
현재 로그온 한 사용자의 Email 값으로 JobTitleNo에 값을 넣기 위해 With 함수 사용
With( {JobTitleNo : LookUp(Employee1,EMail=User().Email).EJNo },...
Employee1의 EJNo 값을 가져와서 JobTitleNo에 넣기
JobTitleNo를 가지고 LookUp(JobTitle1,JNo=JobTitleNo).JName
JobTitle No를 가지고 JName을 가져와서 실제 직위를 가져오게 구성
전역변수 설정인 Set 을 이용하여 검색한 직위명을 varJobTitle 설정
Set(varJobTitle,With({JobTitleNo :LookUp(Employee1,EMail=User().Email).EJNo },LookUp(JobTitle1,JNo=JobTitleNo).JName)); |
2. 과장이상인지 확인 방법
IsBlank 함수로 참인지 거짓인지 확인 과장 이상이면 true
IsBlank(With({JobTitleList:Sort(Filter(JobTitle1,JOrderNo>=18),JOrderNo).JName},LookUp(JobTitleList,JName=varJobTitle,JName))) |
JobTitleList 변수에 JogTitle1의 SharePoint Lists를 Filter 하여 18 즉 대리 이하인 JName 값을 추출
JobTitleList : Sort(Filter(JobTitle1,JOrderNo>18),JOrderNo).JName
JobTitleList에는 아래와 같이 값이 들어가게 됨.
위의 결과 값과 varJobTitle 값을 비교하여 JName 값이 있는지 확인
만약 값이 없으면 Blank 임으로 true 가 나오고 값이 있으면 false가 나옴
IsBlank(With({JobTitleList:Sort(Filter(JobTitle1,JOrderNo>=18),JOrderNo).JName}, LookUp(JobTitleList,JName=varJobTitle,JName))) |
결론적으로 true 이면 대리, 주임, 사원 이 아님으로 과장 이상이라는 결과를 얻게됨.
위의 내용을 기준으로 아래와 같이 회사에서 지원하는 복지 기준을 설정할 수 있음.
아래의 경우 과장 이상 210,000원 대리 이하 150,000원이라고 가정할 때 자동으로 로그온 한 사용자의 직급을 파악하여 금액을 나타내 주는 예
댓글