오늘 프로젝트를 진행하면서 팀원과 함께 많은 부분을 수정했습니다.
수정한 내용을 목록으로 보여드리겠습니다.
- 선택한 필수옵션 체크해제시 부모블록화면에서 값 안보이게 하기
- 필수옵션 선택(체크) 안 하고 담기버튼 눌렀을 경우 메시지(필수옵션을 선택해야합니다)출력
- 필수옵션이 없는 메뉴에서 담기버튼 눌렀을경우 위의 해결한 과정에서 메시지(필수옵션을 선택해야합니다)출력 안 하게하기
- 개수를 1미만으로 시도했을때 메시지(1개이상선택해야합니다)출력
차례대로 어떻게 해결하였는지 살펴보겠습니다.
첫번째
문제 : 선택한 필수옵션 체크해제시 부모블록화면에서 값 안보이게 하기.
위의 문제는 필수옵션 체크 액션에서 previousOptionName이라는 입력매개변수를 만들어 이전에 선택한 필수옵션을 담아주고 현재선택한 옵션과 같으면 이벤트트리거에서 전달할 값에 null을 전달해주었습니다.
아래는 필수옵션선택블록과 액션에서 생성한 변수입니다.
생성한변수는 PreviousOptionName
그리고 아래와 같이 블록이 실행될때 해당 변수에
MustOptionLabel 즉 부모블록에서 표시되는 필수옵션이름의 값을 넣어주었습니다. (MustOptionLabel 참고 : https://myeongsu0257.tistory.com/111)
마지막으로 라디오버튼클릭시 실행되는 액션에서
로직을 다음과 같이 수정해주었습니다.
먼저 로직에 들어가면 If문에서 현재옵션 = 이전옵션을 체크해주었습니다.
NewOption = PreviousOptionName
참이면 기존에 체크(클릭)하였던 옵션을 해제하는 것이므로
event2에서 부모로 Null값을 전달해주었습니다.
두번째
문제 : 필수옵션 선택(체크) 안 하고 담기버튼 눌렀을 경우 메시지(필수옵션을 선택해야합니다)출력
해당 문제는 담기버튼을 클릭하였을때의 Action안에 로직에서 If문을 사용하여 화면에 표시되는 변수의 값이 Null이면
"필수 옵션을 선택하세요!"라는 문장을 출력하도록 하였습니다.
먼저 이전에 생성하였던 담기버튼의 로직에서 If위젯을 만들어줍니다.
문제는 필수옵션이 없는 메뉴에서 담기버튼을 클릭한 경우 메시지를 출력하는 문제였습니다.
세번째
문제 : 필수옵션이 없는 메뉴에서 담기버튼을 클릭한 경우 메시지를 출력하는 문제
해당문제는 위의 If의 Condtion의 다음과 같이 문장을 추가해주었습니다.
네번째
문제 :개수를 1미만으로 시도했을때 메시지(1개이상선택해야합니다)출력
마지막 문제는 개수의 마이너스버튼을 눌렀을 때의 Action에서 해결하였습니다.
즉 개수에 해당하는 변수(화면에보여지는expression)가 1이하에서 마이너스를 클릭하였을때 메시지를 출력하도록 해주었습니다.
if문에서 개수를 체크하고 메시지를 출력하고 개수를 1로 고정해주었습니다.
아래는 if의 Condtion입니다.
SelectMenuCount <= 1
결과
1. 필수옵션을 체크하고 다시 해제하였을때 경우입니다.
아래는 필수옵션을 중 하나(우동)을 클릭하였을 때 입니다.
아래는 위의 체크하였던 필수옵션중 우동을 다시 해제하였을때 화면입니다.
정상적으로 부모블록에서 옵션이 보이지 않습니다.
2. 필수옵션을 선택하지 않았을 때 담기버튼을 누른 경우
정상적으로 "필수 옵션을 선택하세요!"라는 문장이 출력됨을 알 수 있습니다.
3. 필수옵션이 없는 메뉴에서 담기버튼을 눌렀을 경우
필수옵션이 없는 메뉴에서 담기버튼을 누른경우아래의 문구가 출력되고
아래의 메인화면에서 정상적으로 장바구니에 담깁니다.
4. 개수를 1미만으로 시도했을때 메시지 출력해야 하는 경우
개수가 1일때 -버튼을 클릭한경우 아래의 사진과 같이 메시지를 정상적으로 출력합니다.
앞으로 할일
사장님 입장에서 주문들어온거 확인하는 어플 제작
상품옵션데이터추가
결제블록에서 카드결제눌렀을때 떠야하는 스크린제작
화면디자인
결제블록css수정
결제화면 눌렀을때 주문완료되었습니다 뜨고 메인화면으로 돌아가기 (추가로 오더초기화)
'로우코드(Lowcode) > OutSystems프로젝트' 카테고리의 다른 글
outsystems - 9.Dependency , GetuserId() (0) | 2023.06.14 |
---|---|
outsystems - 8. Database에 값 전달 (0) | 2023.06.02 |
outsystems - 6. 메인화면 장바구니세부옵션표시 (0) | 2023.05.31 |
outsystems - 5.5 필수옵션 (1) | 2023.05.27 |
outsystems - 협력회사 방문기 (2) | 2023.05.26 |