아래 자료는 Excel 데이터의 자료를 Power Automate를 이용하여 검색하여 자료를 가져오는 방법에 대한 설명
Sharepoint 목록의 많은 데이터를 검색하게 되면 데이터 행 제한으로 인해 결과 갯수가 정확히 표시가 되지 않는 문제가 발생하게 된다.
아래 값은 최대 2000까지 늘릴 수 있다.
관련 테스트를 위해 Sharepoint lists에 5109개의 항목으로 준비
[결과 화면]
1. 1000번 이상의 숫자를 나타내라
해당 요청 숫자 이상의 갯수의 값
2. 검색 버튼으로 Power Automate에 값 요청하여 리턴 값을 저장
OnSelect = Set(varSum,SharepointSearchResultCount.Run(Value(TextInput1.Text)));
|
3. 검색 결과를 갤러리로 표시 한번에 100개씩 추가 되어 최종 결과 출력
갤러리는 한번에 최대 100개 까지만 가지고 올 수 있다.
100개 이상이면 마우스 스크롤을 아래로 최대한 늘리면 다음 100개가 추가되어 갤러리에는 200개의 값이 나타난다.
5109개의 데이터 중 1000번 이상의 값을 요청하였으니 계속 스크롤을 내리면 4109개의 행이 나타나게 된다.
Items = Filter(num5100,No>Value(TextInput1.Text))
|
4. 현재 갤러리에 표시된 개수
3번에 설명대로 최초 100개의 값을 가져 왔음으로 현재 100개가 표시된다.
만약 100개 미만이면 검색된 숫자가 나타나게 된다.
마우스 스크롤로 1100개가 넘으면 자동으로 100개를 추가로 불러와 값은 200으로 표시 된다.
Text = "갤러리 합 : " & Gallery1.AllItemsCount
|
5. 검색 결과 오류
CountIf 함수로 결과를 가져오려고 하였으나 데이터 행 제한으로 인해 원하는 결과를 확인 할 수 없음을 알 수 있다.
현재 검색 조건이 1000임으로 500개 이상으로 값은 0으로 표시 된다.
만약 검색 조건을 100으로 했다면 결과는 100 이상임으로 400이 되게 됨으로 원하는 결과와는 맞지 않느다.
Text = "검색 결과 : " & CountIf(num5100,No>Value(TextInput1.Text))
|
6. Power Automate로 검색 개수 가져오기
위의 5번 문제를 해결하기 위해서는 Power Automate를 이용해서 갯수를 확인하고 갯수를 받아 표시하게 되면 정확한
결과를 알 수 있게 된다.
검색 개수가 많아 진다면 검색 로딩이 걸릴 수 있음
2번의 검색 버튼으로 Power Automate를 호출하여 결과를 받아 아래에 표시 한다.
Text = "Power Automate로 가져온 결과 : " & varSum.result
|
Power Automate 설정
숫자 추가 - 작업 추가 - sharepoint - 항목 가져오기 (2개 이상) - 이름을 sharepoint로 변경 - sharepoint 사이트 및 목록 설정 - 필터 쿼리 설정 No gt @{triggerBody()['number']} - Power App 또는 흐름에 응답 - 숫자 - 변수 선언 result - 식 추가 length(body('sharepoint')?['value'])
위의 설정으로 원하는 결과가 나오지 않는 것을 알 수 있다. 이는 기본 임계값이 100이어서 아래와 같이 설정에서 임계값을 늘려 주어야 한다.
아래는 테스트를 위해 10,000개로 설정
Power Apps에서 Power Automate 흐름 추가
문자열 검색
Sharepoint 목록에 값을 검색 Power Automate Filter Query 설정
Title 열 설정에 '로벌' 이라는 이름이 들어간 경우의 모든 값을 찾게 됨.
substringof('로벌',Title) |
위에 검색 조건에서 Title 즉 Rows 값은 한글로 하게 되면 오류가 발생하여 검색이 되지 않음.
댓글