본문 바로가기
기술자료 (KB)/Power Platform

PowerApps 자동 번호 및 순서 변경

by 이완주 2024. 4. 12.

요구 사항

1.  새로 만들기 할 경우 자동으로 번호를 설정할 수 있어야 한다.

2.  편집으로 화면에 나타나는 순서를 변경할 수 있어야 한다.

3.  자동 번호 설정으로 새로 만들기에서는 화면에 나타나지 않는다.

 

결과 화면

 

새로 만들기

 

편집 화면

 

트리 뷰

 

편집 모드일 때 화면에 나타남

 

편집 버튼을 눌렀을 때 colOrderList 편집 모드와 컬렉션을 만들기

OnSelect UpdateContext({ editMode: true, selectedRecord: RecordsGallery_2.Selected });
 
Clear(colOrderList);
ForAll(
    Sort(Filter( colFavorites, If(CurrentItem.Level=5,And(Level=5,'만든 사람'.Email=User().Email),Level=CurrentItem.Level)),No,SortOrder.Ascending),
    Collect(
        colOrderList,
        {
            cNo:ID,
            cName:Title,
            cOrderNo:No,
            cID : First(Sort(colOrderList,cID,SortOrder.Descending)).cID + 1,
            cIsCheck : false
        }
    )
);

 

 [참고자료]

[Microsoft Power Apps 강좌] 시즌2 7. Power Apps Collection 순서 변경

https://www.youtube.com/watch?v=bjrQO10GST4&t=1295s

 

자동 번호 설정

Default If(
    //[새로 만들기] = newMode=true
    newMode,      
        If(
            //Level 값이 비어 있을 - Level=3 없다면 Level * 10 + 1 해당 번호를 부여
            // 비어 있지 않으면 기존 값의 최고 값을 가져와 + 1
            IsBlank(First(Sort(Filter(colFavorites,Level=MenuDropdown_2.Selected.Level),No,SortOrder.Descending)).No),
                Value(MenuDropdown_2.Selected.Level) * 100 +1,
                First(Sort(Filter(colFavorites,Level=MenuDropdown_2.Selected.Level),No,SortOrder.Descending)).No + 1
        ),
    And(CurrentItem.Level <> MenuDropdown_2.Selected.Level,editMode),
        If(
            //Level 값이 비어 있을 - Level=3 없다면 Level * 10 +1 해당 번호를 부여
            // 비어 있지 않으면 기존 값의 최고 값을 가져와 + 1
            IsBlank(First(Sort(Filter(colFavorites,Level=MenuDropdown_2.Selected.Level),No,SortOrder.Descending)).No),
                Value(MenuDropdown_2.Selected.Level) * 100 +1,
                First(Sort(Filter(colFavorites,Level=MenuDropdown_2.Selected.Level),No,SortOrder.Descending)).No + 1
        ),
    Parent.Default
)

 

댓글