Справка Инфо-Бухгалтер 10

Клиентский алгоритм изменения в таблице табличного признака

Алгоритм служит для обработки события изменения в подчиненной таблице табличного признака. Ссылка на алгоритм задается в менеджере настроек отображения.

Параметры алгоритма:

ВЫЧИСЛИТЬ(ПЕРЕМ ОПЕР_КОНТЕКСТ: контекст;
          СТРОКА: вариант;
          ПЕРЕМ <ТИП>: оп;
          ЦЕЛОЕ: строка;
          ПЕРЕМ СТРОКА: рез)
// …
КОНЕЦ

Алгоритм может возвращать три строковых значения результата: OK, CANCEL и CONTINUE.

Пример

Пример иллюстрирует использование алгоритма изменения табличного признака в подчиненной таблице. В ходе работы алгоритма происходит вызов диалогового окна для редактирования значений колонок табличного признака. В качестве колонок табличного признака "товары" выступают код соответствующего объекта аналитики, количество и цена.

В настройке отображения в узле "Изменение" для подчиненной таблицы с табличным признаком задается ссылка на алгоритм изменения.

Показать подробное объявление типов для диалогового окна

ВЫЧИСЛИТЬ(ПЕРЕМ ОПЕР_КОНТЕКСТ: контекст; // вход
          СТРОКА: вариант;               // вход   
          ПЕРЕМ ОПЕРАЦИЯ: оп;            // вход
          ЦЕЛОЕ: строка;                 // вход
          ПЕРЕМ СТРОКА: рез)             // выход

  ПЕРЕМ ДобПризн: длг
  ПЕРЕМ ССЫЛКА: ссл
  ПЕРЕМ ЦЕЛОЕ: стр
  ПЕРЕМ ЦЕЛОЕ: кол
  ссл = оп.таб_признаки["товары"].ячейки[строка, "код"]
  длг.Ввод_кода1.текст = ссл.код
  длг.Ввод_целого1.значение = оп.таб_признаки["товары"].ячейки[строка, "количество"]
  длг.Ввод_числа1.значение = оп.таб_признаки["товары"].ячейки[строка, "цена"]
  ЕСЛИ длг.ПОКАЗАТЬ_МОДАЛЬНЫЙ = "OK" ТО
    ссл.код= длг.Ввод_кода1.текст
    оп.таб_признаки["товары"].ячейки[строка, "код"] = ссл
    оп.таб_признаки["товары"].ячейки[строка, "количество"] = длг.Ввод_целого1.значение
    оп.таб_признаки["товары"].ячейки[строка, "цена"] = длг.Ввод_числа1.значение
    рез = "OK"
  ИНАЧЕ
    рез = "CANCEL"
  КОНЕЦ_ЕСЛИ
КОНЕЦ

См. также: