2017-04-04 17 views
0

나는이 세 가지 열이있는 데이터 윈도우 개체가 상태가 1 (확인 됨)이면 criteria.Protect='0'입니다. 사용자가 기준 목록에서 "다른 기준"을 선택하면 another.Protect='0'과 사용자가 원하는 것을 쓸 수 있습니다.반환 파워 빌더 11

사용자가 마음을 바꾸고 상태를 선택 취소하면 문제가 발생합니다. 기준과 다른 열에는 그가 마지막으로 선택한/값이 있습니다. dropdownDW를 재설정하려면 어떻게해야합니까? 아니면 기본값을 다시 가질 수 있습니까? itemchange 이벤트에서

나는이 있습니다

choose case dwo.name 
    case "status" 
    if data ='0' then 
     dw_list.modify("criteria.Protect='1'") 
     dw_list.modify("another.Protect='1'") 
    else 
     dw_list.modify("criteria.Protect='0'") 
    end if 

답변

0
String ls_criteriaProtect 
String ls_anotherProtect 

//Save default values: 
ls_criteriaProtect = dw_list.describe("criteria.Protect") 
ls_anotherProtect = dw_list.describe("another.Protect") 

choose case dwo.name 
    case "status" 
    if data ='0' then 
     dw_list.modify("criteria.Protect='1'") 
     dw_list.modify("another.Protect='1'") 
    else 
     dw_list.modify("criteria.Protect='0'") 
    end if 
    case else 

     //Apply initial values: 
     dw_list.modify("criteria.Protect='" + ls_criteriaProtect + "'") 
     dw_list.modify("another.Protect='" + ls_anotherProtect + "'") 
End Choose 
+0

영업 이익은 사용자가 상자를 선택하거나 선택 취소하면 롤백의 종류를 수행하고 싶습니다. – Seki

+0

이것은 "커밋"또는 "롤백"과는 아무런 관련이 없습니다 ... 사용자가 마음을 바꾸고 선택을 취소하면 OP는 "criteria"및 "another"열의 값을 기본값으로 다시 설정하려고합니다. . 기존 itemChanged 이벤트에 "this.setItem (row,"criteria ", )"및 "this.setItem (row,"another ", )"를 추가하기 만하면됩니다. –

0

를 사용하여 데이터 윈도우 객체 내 상태 컬럼의 보호 특성에 식입니다. 같은

뭔가 :

case (describe('criteria.protect') when '0' then 1 else 0)