Копировать ссылку на страницу Перейти в предыдущий раздел Перейти в следующий раздел

Замена значения реквизита типа «Выбор» на «Да» в одной из строк таблицы. Во всех остальных строках этого столбца значение должно стать «Нет».

 

WebAccess.ready(function() {
// Проверить, что текущий справочник - "Регистрационно-контрольные карточки".
  if (this.current.getReferenceCode() !== "РКК") return;
  var tableDFMName = "Grid31";
  var columnRequisiteName = "ДаНетТ";
  var rows;
  if (this.current.getReferenceCode() !== "РКК") return;
  var tableDFMName = "Grid31";
  var columnRequisiteName = "ДаНетТ";
  var rows;
 
// Функция, изменяющая значения строк в зависимости от значения реквизита типа "Выбор".
  function switchState(state,current_index) {
      if (state != "Д") return;  
      for(index in rows) {    
        if (!isNaN(index) && index != current_index) {
        var req = rows[index].getRequisites()[columnRequisiteName];
            req.setValue("Н");
            req.setDisplayValue("Нет");    
      }(index);
  };}
 
// Функция, привязывающая обработчики событий ко всем реквизитам columnRequisiteName.
  function setupBindings() {
       rows = WebAccess.current.form.controls.tables[tableDFMName].getRows();
      for(index in rows) {
          if (!isNaN(index)) {  
            var reqName = rows[index].getRequisites()[columnRequisiteName].name;      
             $('#' + CardForm().reqID[reqName]).bind("result",{"current_index": index}, function(event,state) { switchState(state,event.data.current_index); });
          };
      }
  };
 
// Применить обработчики событий для новых добавляемых строк таблицы.
   $("html").bind("CardFormAddRow", function() {setupBindings();});
   setupBindings();
});

© Компания DIRECTUM, 2018 Сообщество пользователей DIRECTUM
.navbar > a:hover { background: #FFD73B; }