모바일 앱용 워크플로 및 스크립트 만들기
관리자는 Dynamics 365 워크플로, Power Automate 흐름, JavaScript, 비즈니스 규칙 및 작업과 같은 프로세스를 사용하여 일선 작업자를 지원하고 비즈니스 프로세스를 자동화할 수 있습니다. 일부 프로세스는 Dynamics 365 Field Service 모바일 앱이 오프라인으로 먼저 실행될 때 작동하고 다른 프로세스는 인터넷 연결이 필요할 때 작동합니다. 자세한 내용은 다음 문서: 모바일 오프라인 기능 및 제한을 참조하십시오.
Dynamics 365 워크플로 및 Power Automate 흐름
워크플로 및 흐름은 일반적으로 데이터 유효성 검사를 실행하고 트리거 및 조건에 따라 데이터를 자동으로 채우는 데 사용됩니다. 워크플로 및 흐름을 만들 때 고려해야 할 사항이 많이 있습니다. 많은 Dynamics 워크플로가 Power Automate 흐름으로 대체되고 있으므로 Power Automate 흐름을 먼저 시도하여 미래에 대비하는 것이 좋습니다. 자세한 내용은 다음 문서: .워크플로 및 흐름 비교를 참조하십시오.
워크플로 및 흐름은 인터넷 연결을 통해서만 실행됩니다. 워크플로 및 흐름은 모바일 앱이 온라인 상태이거나 인터넷 연결이 있는 오프라인 우선 상태일 때 실행됩니다. 모바일 앱은 구성된 오프라인 프로필이 없는 경우에만 온라인으로 실행할 수 있습니다. 앱이 인터넷 연결을 통해 오프라인 우선에서 실행 중인 경우 사용자는 먼저 레코드를 저장하여 워크플로 및 흐름을 실행할 수 있습니다. 저장되면 변경 사항이 서버와 동기화되어 서버에서 워크플로우 또는 흐름을 트리거합니다. 그런 다음 사용자는 오프라인 데이터를 수동으로 동기화하거나 다음 동기화 주기(기본적으로 5분)를 기다렸다가 워크플로 또는 흐름의 결과를 가져올 수 있습니다.
비즈니스 규칙
JavaScript 코드를 작성하거나 플러그인을 만들지 않고도 양식 논리를 적용하는 비즈니스 규칙 및 권장 사항을 만들 수 있습니다. 비즈니스 규칙은 빠르게 변화하고 일반적으로 사용되는 규칙을 구현하고 유지하는 간단한 인터페이스를 제공합니다. 기본 및 빠른 작성 양식에 적용할 수 있습니다.
비즈니스 규칙은 온라인으로 실행되고, 인터넷에 연결되면 먼저 오프라인으로, 인터넷 연결 없이 먼저 오프라인으로 실행됩니다.
동작
작업을 사용하면 작업 생성, 업데이트, 삭제, 할당 또는 수행과 같은 작업을 수행할 수 있습니다. 내부적으로 작업은 사용자 지정 메시지를 만듭니다. 개발자는 이러한 작업을 "메시지"라고 합니다. 이러한 각 메시지는 레코드 종류에서 수행되는 작업에 따라 달라집니다. 프로세스의 목표가 레코드를 만들고, 업데이트한 후 할당하는 것이라면 다음과 같은 3단계가 있습니다.
작업은 앱이 온라인으로 실행될 때만 실행됩니다.
오프라인 JavaScript
iOS 및 Android 앱 모두에 대해 JavaScript 웹 자원을 모바일 양식에 추가하고 오프라인 우선으로 다운로드할 수 있습니다.
JavaScript는 온라인, 인터넷 연결 시 오프라인 우선, 인터넷 연결 없이 오프라인 우선(기본적으로 항상)을 실행합니다.
팁
- 오프라인 모드의 WebResources에 대한 플랫폼별 잠재적 제한 사항은 모바일 오프라인 기능 및 제한 사항을 참조하세요.
오프라인 JavaScript 예제
기술자가 엔터티를 업데이트한 후 조직에서 특정 필드 값에 대한 유효성 검사를 실행하려고 할 수 있습니다. 아래 예에서는 작업 주문 예약이 저장되면 최소 2시간 동안 지속되도록 합니다.
유효성 검사는 온라인 및 오프라인에서 작동하는 일부 JavaScript의 도움으로 수행할 수 있습니다.
자세한 내용은 Field Service 모바일 앱: 오프라인 JavaScript에 대한 동영상을 참조하세요.
Dynamics 365 Field Service에서 고급 설정을 선택합니다.
사용자 지정>사용자 지정으로 이동하고 시스템 사용자 지정을 선택합니다.
엔터티>예약 가능한 리소스 예약>양식을 확장합니다.
예약 및 작업 주문 양식을 선택합니다.
상단 리본에서 양식 속성을 선택합니다.
양식에 대한 새 JavaScript 웹 자원을 추가하고 작성하세요.
다음 코드 조각을 입력합니다.
function TestOnSave(executionContext) { var formContext = executionContext.getFormContext(); // get formContext var duration = formContext.getAttribute("duration").getValue(); formContext.ui.clearFormNotification("DurationErrorMessageId"); if (duration < 120) { executionContext.getEventArgs().preventDefault(); // Stop the Save formContext.ui.setFormNotification("Duration must be greater than 2 hours", "ERROR", "DurationErrorMessageId"); } }
이벤트 처리기 섹션에서 이벤트를 양식을 onLoad에서 onSave로 변경합니다.
)
사용자 지정을 저장하고 게시합니다.
모바일 앱 디버깅
Windows 또는 Android 애플리케이션을 사용하여 사용자 지정 코드를 디버깅할 수 있습니다.
- Windows 애플리케이션을 사용하여 JavaScript를 디버깅하십시오.
- Android 애플리케이션을 사용하여 JavaScript를 디버깅하십시오.
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기