3 개의 그리드, 하나의 그리드가 머리로, 다른 하나가 세부 사항으로, 그리드를 처음 선택하면 2 개의 그리드를 새로 고침하고 싶습니다. AutoCallBack
을 사용해 보았지만 여전히 1 그리드 만 새로 고침 할 수 있습니다. 자동으로 호출하는 방법은 무엇입니까?Acumatica : 다중 대상이 포함 된 자동 콜백
답변
이렇게하는 데는 몇 가지 방법이 있지만 조직 - 조직 구조 아래의 "배정 및 승인 맵"을 보는 것이 좋습니다.
"규칙"그리드를 클릭하면 "조건"그리드가 자동으로 새로 고침됩니다.
이 낮은/세부 그리드 두 가지 AutoCallback 상단의 명령 항목
1)/2 그리드 ) PARAMATERS 의해 주로 제어된다.예를 들어, 화면에서 두 그리드 "topGrid"및 "bottomGrid"
topGrid 존재 참조 갖는다는 topgrid 행은 bottomGrid로 리프레시를 발행 할 것이다
<AutoCallBack Target="tree" Command="Refresh" ActiveBehavior="True">
<Behavior RepaintControlsIDs="formRuleType,bottomGrid" ></Behavior>
</AutoCallBack>
이며 다음과 같다 선택/변경됨. 행을 현재 선택한 행으로 (유지 '현재'선택으로 topGrid의 정의에서 "KeepPosition"와 "SyncPosition"플래그는 게시물을 강제
을 이제 하단 그리드는 다음과 같습니다.
<Parameters>
<px:PXControlParam ControlID="topGrid" Name="routeID" PropertyName="DataValues["AssignmentRouteID"]" Type="Int32" ></px:PXControlParam>
</Parameters>
는 "bottomGrid는"그것은 topgrid의 "AssignmentRouteID"에서 값의 당긴다 "routeID"라는 이름의 PARM을 가지고 있다고 말한다.
당신이 차 DataMember를이 "규칙"입니다합니다 (bottomGrid의 BQL 보면 다음 정의가 표시됩니다.
protected virtual IEnumerable rules([PXDBInt] int? routeID)
{
정의는 헤드 그리드 행을 선택 당신이 당신의 세부 그리드를 새로 고침 할 수 있습니다이 방법을 사용하여 정확한 기록
를 반환하는 SELECT 문에 사용할 여기에 그것을 통과, 정의 PARAM을 사용합니다. 동시에 디테일 그리드는 select 문에 대한 매개 변수로 헤드 그리드의 값을 사용합니다.
작품, 고마워요. – Distor4by
grid2에서 grid1에 선택된 레코드와 관련된 레코드를 표시하도록 하시겠습니까? 따라서 사용자가 grid1에서 일부 레코드를 선택하면 grid2에서 레코드를 다시로드해야합니까? –