Возврат к значениям по умолчанию PowerBuilder 11

У меня есть объект DataWindow с этими тремя столбцами:

  • статус - который является флажком
  • критерии - который является dropdownDW
  • другой

Когда статус 1 (проверено), то criteria.Protect='0', Если пользователь выбирает из списка критериев "другие критерии", то another.Protect='0' и пользователь может написать все, что он хочет.

Проблема в том, что пользователь передумал и снял флажок со статусом. Критерии и другой столбец имеют последние значения, которые он выбрал / написал ранее. Как я могу сбросить 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

2 ответа

Используйте выражение для свойства Protect столбца состояния в объекте datawindow.

Что-то вроде:

case (describe('criteria.protect') when '0' then 1 else 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
Другие вопросы по тегам