2014-08-28 5 views
0

에 고침 냄 I 코드의 2 개 세트를 가지고Lightswitch 2013 : 다음 JS

  1. 데이터

myapp.activeDataWorkspace.ProjectHandlerData.saveChanges 저장();

2.Refreshes 페이지

window.location.reload(); 

함께 하나 개의 버튼에 이러한 작업을 모두 만들 수있는 방법이이 같은 현재 내가 저장을 클릭하면, 브라우저는 변경 사항을 인식하고는 (당신입니다 확실히 당신은

환호

이것은 HTML 클라이언트입니다

답변

5

, 바로 .. 그 라인을 따라 페이지) 메시지 또는 뭔가 팝업 떠나고 싶어?

saveChanges를() 당신이 원하는 것, 그래서 비동기 작업은 다음과 같습니다 :

myapp.activeDataWorkspace.ProjectHandlerData.saveChanges().then(function() { 
    window.location.reload(); 
}); 

이는 다시로드하기 전에 변경 사항을 저장 완료 될 때까지 대기하는 방법을 가 그런 경우입니다 가정 화면.

그러나 사용자 입장에서 볼 때 더 부드러운 방법이 있습니다. 편집 화면에서 Save 메서드를 종료하고 LightSwitch가 처리하도록하십시오. 사용자가 저장을 클릭하면 편집 화면이 닫히고 이전 위치로 되돌아갑니다. showScreen 메서드의 options 매개 변수를 사용하여 해당 동작을 변경할 수 있습니다.

변경과 같은 편집 화면 호출 방법 : 편집 화면이 닫힌 후,

myapp.showEditProject(screen.Project, { 
    afterClosed: function (editScreen) { 
     myapp.showViewProject(editScreen.Project); 
    } 
}); 

이 방법을, 그리고 당신을 위해 변경 내용을 저장 작업을 처리 한 응용 프로그램이 자동으로 이동합니다 최근 편집 된 항목의 상세보기 화면.

대신 새로운 엔티티 추가 한 후 찾아보기 화면을 새로 고치하고자하는 경우 :

myapp.showAddEditProject(null, { 
    beforeShown: function (addEditScreen) { 
     addEditScreen.Project = new myapp.Project(); 
    }, 
    afterClosed: function() { 
     screen.Projects.load(); 
    } 
}); 

그 두 가지 옵션, beforeShown 및 afterClosed을, 응용 프로그램에서 탐색에 영향을 당신에게 정말 멋진 능력을 많이 제공 .

나는 당신이 추가/편집 창에서 저장하고 다음을 수행하여 다시 가고 메인 페이지 다시로드 할 수 있다는 것을 배웠습니다
+0

필자 그러나 그것은 ViewOrderscreen에서가는 내 스크린의 작동 방식을 작업 코드의 중간 비트를 얻었다. ViewOrderscreen에 다시 저장하면 ViewOrderscreen의 테이블보기에서 다른 화면으로 이동합니다 -> 편집 화면. 이 여전히 나에게 아무것도, 어떤 제안이라도 업데이트하기 전에 페이지를 새로 고쳐야한다는 오류 메시지가 표시됩니까? 플러스 위의 스크린 ive를 기반으로 더하기 코드의 맨 아래 부분에 어떻게 적용해야합니까? – Crezzer7

0

예를 들어

: (주문 화면에 주문을 추가)

  1. 주문을 추가 하시려면 버튼을 클릭하십시오.
  2. 세부 사항을 입력하십시오.
  3. 유효성 검사가 포함 된 맞춤 저장 버튼을 누르십시오.다음 줄에 commitChanges(); 쓰기 전에
  4. : screen.OrderLine.OrderTable.details.refresh(); 당신이 당신의 세부 사항이 업데이트되어 있어야 화면으로 돌아 가면
  5. "이 시나리오에 적용 할 필요가있다"는 (예를 들어 총 가치는 지금 내 경우에는 정확한 값을 표시합니다 > AddPartscreen -이 도움)

희망 ...

관련 문제