직원의 정보를 입력 및 수정할 수 있게 구성
아래는 실제 사용 중인 앱 화면
수정 전 화면
왼쪽 메뉴
1. 검색을 이름, 부서 등 다양한 조건으로 검색이 가능해야 한다. (검색 조건을 내 맘대로 추가하고 싶다.)
2. 재직과 퇴직자를 구분하여 설정 할 수 있어야 한다. (퇴직일 설정되면 퇴직자)
3. 회사 이름의 아이콘을 클릭하면 아래 직원이 접힐 수 있게 구성 (회사가 여러개일 경우 회사별 그룹 설정)
데이터 새로 고침
App을 실행 할때와 동일하게 직원 화면을 선택하면 데이터를 새롭게 불러와 최신 데이터를 적용 할 수 있게 구성
OnVisible
// ColDepartment 초기화 및 생성
ClearCollect(ColDepartment,AddColumns(OrgDepartment,NewID,ID));
// OrgCompany의 회사 정보를 ColDepartment에 추가
ForAll(
OrgCompany,
Collect(
ColDepartment,
{
No: Text(OrderNo,"00"),
CompanyID : ID,
Name: Name,
Level: 0,
OrderNo: Text(OrderNo,"00") & "000000000000000000000000000000",
Visible:true
}
)
);
// ColEmployee 초기화 및 생성
ClearCollect(ColEmployee,AddColumns(OrgEmployee,NewID,ID));
ForAll(
OrgCompany,
Collect(
ColEmployee,
{
No: Text(OrderNo,"00"),
CompanyID : ID,
Name: Name,
Level: 0,
OrderNo: Text(OrderNo,"00") & "000000000000000000000000000000",
Visible:true
}
)
);
|
재직 / 퇴사 선택 갤러리
갤러리 Items 설정
Items = Table({ID:1,Name:"재직"},{ID:2,Name:"퇴사"})
|
Button Mouse Over 설정
HoverFill = ColorFade(RGBA(248, 248, 255, 0.8), -30%) |
갤러리 설정
EmployeeGallery Items 설정
검색 조건을 이름과 부서명을 설정 Or 조건으로 원하는 조건을 추가 할 수 있다.
//Search([@OrgEmployee], SearchInput1.Text, Name, Name)
/*
If(TitleMenuGallery_2.Selected.ID = 1,
Sort(Filter(ColEmployee,Visible=true And IsBlank(ResignationDate) Or Level=0),OrderNo),
Sort(Filter(ColEmployee,Visible=true And !IsBlank(ResignationDate) Or Level=0),OrderNo)
)
*/
If(TitleMenuGallery_2.Selected.ID = 1,
Sort(
// Visible 값이 true이고 퇴사일자에 값이 없을 때
Filter(ColEmployee,Visible=true And IsBlank(ResignationDate) And
(
// 이름에 검색 키워드가 있으면 표시
Name in Search(ColEmployee,EmployeeSearch.Text,Name).Name Or
// 부서 이름에 검색 키워드가 있으면 표시
Department in Search(ColEmployee,EmployeeSearch.Text,Department).Department
// 원하는 값은 계속 추가 가능 전화번호 등등
) Or
// Level=0 회사명은 표시
Level=0 ) ,
// OrderNo로 정렬
OrderNo
),
Sort(
// Visible 값이 true이고 퇴사일자에 값이 있을 때
Filter(ColEmployee,Visible=true And !IsBlank(ResignationDate) And
(
// 이름에 검색 키워드가 있으면 표시
Name in Search(ColEmployee,EmployeeSearch.Text,Name).Name Or
// 부서 이름에 검색 키워드가 있으면 표시
Department in Search(ColEmployee,EmployeeSearch.Text,Department).Department
// 원하는 값은 계속 추가 가능 전화번호 등등
) Or
// Level=0 회사명은 표시
Level=0 ) ,
// OrderNo로 정렬
OrderNo
)
)
|
갤러리 아이콘 설정
회사 앞에만 회사 아이콘 설정 사용자에게 아이콘을 나타내지 않
Icon = If(ThisItem.Level=0,Icon.OfficeBuilding)
|
회사 이름 및 부서 이름
회사 이름과 부서 이름을 표시
Text = If(ThisItem.Level=0,ThisItem.Name,ThisItem.Department)
|
댓글