날짜/시간 함수를 효율적으로 사용하는 방법 | Mendix

메인 컨텐츠로 가기

날짜/시간 함수를 효율적으로 사용하는 방법

이 블로그 게시물에서는 날짜/시간 함수를 활용할 때 사용할 수 있는 접근 방식에 대해 논의하겠습니다. 마이크로플로를 사용하여 시간의 차이를 계산할 때, 사용하는 함수가 올바른 시간 출력을 생성하는지 아는 것이 빠르게 혼란스러울 수 있습니다.

특히 시간과 분의 차이를 계산하는 경우 흔히 발견되는 또 다른 문제는 분과 함께 초를 올바르게 표시하기 위해 몇 가지 추가 계산이 필요하다는 것입니다.

예시

이 예에서 나는 사용자가 작업을 완료하는 데 걸리는 평균 시간을 계산하는 마이크로플로를 만들 것입니다(사용자가 작업 관리 앱을 사용하고 있다고 가정). 이 시간은 다음 형식으로 표시되어야 합니다. Xmin Ysec여기서 X는 분당 평균 시간을 표시하는 변수이고 Y는 초당 평균 시간을 표시하는 변수입니다(아래 참조).
블로그2픽2

구성

언뜻 보기에 이것은 어려운 작업일 수 있습니다. 왜냐하면 평균 시간을 두 개의 변수로 분리해야 하고, 또한 시간이 분과 초 모두에 대한 시간을 올바르게 표시하도록 해야 하기 때문입니다. 아래 그림은 이를 처리할 마이크로플로를 보여줍니다.
블로그2픽1

 

이것이 매우 복잡한 마이크로플로우처럼 보이지는 않지만, 마지막 액션 버튼은 약간의 복잡성을 필요로 하며 올바르게 구성되지 않으면 개발자에게 큰 골치거리가 될 수도 있습니다. 위에서 언급한 두 시간 변수를 계산하려면 다음을 계산하는 두 개의 함수를 만들어야 합니다.

  1. 작업을 완료하는 데 걸리는 평균 시간을 계산한 다음, 그 숫자를 반올림하여 최종 결과가 평균 시간 분 값입니다.
  2. 작업을 완료하는 데 걸리는 평균 시간을 계산한 다음 위에서 계산한 평균 분 값을 빼면 최종 결과가 평균 시간(초) 값입니다.

이를 달성하기 위해 아래의 두 가지 마이크로흐름 함수를 활용하겠습니다.

  1. 반올림 – 지정된 정밀도로 선택적으로 부동 소수점 숫자를 반올림합니다.
  2. Floor – 부동 소수점 숫자 반올림

아래는 참조용으로 사용할 마이크로플로우 동작의 올바른 속성 계산에 대한 스크린샷입니다.
블로그2픽3

디버깅 팁

위의 속성 계산을 디버깅할 때는 각 IF 문의 각 섹션을 분해하여 계산의 특정 섹션만 포함하는 마이크로플로에 변수를 만드는 것이 가장 좋습니다. 이 방법을 사용하면 모델러에서 정확한 디버거 중단점을 설정할 수 있으며, 이를 통해 방정식의 어느 섹션이 잘못되었는지 쉽게 알아낼 수 있습니다. 아래는 위의 속성을 디버깅하는 방법의 예입니다.
블로그2픽4
강조된 각 선택 항목은 자체 변수에 복제되므로 사용자는 디버거를 통해 해당 함수가 잘못된 값을 계산하는지 확인할 수 있습니다.
블로그2픽5
위에서 볼 수 있듯이, 계산된 속성의 각 기능을 캡처하기 위해 5개의 특정 변수가 생성되었습니다. 그런 다음 첫 번째 섹션에 디버거 중단점을 추가하고 계산된 값이 무엇인지 확인합니다. 허용되는 값인 경우 두 번째 변수로 이동할 수 있습니다. 변수가 허용되는 값이 아닌 경우 코드의 해당 섹션에서 작업할 수 있습니다. 이 프로세스를 통해 실수가 정확히 어디에 있는지 알아내고 복잡한 속성을 계산한 다음 값이 올바르지 않은 경우 어디서부터 시작해야 할지 모를 때의 좌절감을 줄일 수 있습니다.

결론적으로

제공된 날짜/시간 함수를 활용합니다. Mendix 코드 디버깅을 체계적으로 수행한다면, 모델러는 작업 완료에 따른 사용자 지표를 시각적으로 표시하는 강력한 방법이 될 수 있습니다.

언어를 선택하세요