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

Алгоритм программируемого каталогизатора

Алгоритм предназначен для формирования групп программируемого каталогизатора. Ссылка на алгоритм задается при создании програмируемого каталогизатора. Сам алгоритм может храниться в свойстве любого объекта аналитики. При формировании каталогизатора алгоритм запускается для каждого объекта ветки, и его задачей является ответ на вопрос: в какую группу следует отнести этот объект.

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

ВЫЧИСЛИТЬ ( ПЕРЕМ <Т>: объект; ПЕРЕМ СТРОКА: группа )
//…
КОНЕЦ

Пример создания автоматического каталогизотора

Создадим новый объект аналитики "ТОВАРЫ" со свойствами "цена" (вещественное число) и "страна" (строка).На странице "Дополнительно" диалога редактирования объекта установите признак "Использовать реальное имя типа" и задайте имя объектного типа - "Товары". Создайте в плане аналитики объект "ТОВАРЫ" со свойствами "цена" (вещественное число) и "страна" (строка) и добавим у него дочерние объекты с разными значениями свойств(Платье стоит 5000, Ботинки стоят 8000 и Брюки стоят 4000). В мастере создания каталогизатора указваем имя каталогизотора, корневой объект, тип каталогизатора - программируемый. На втором шаге указывается код объекта, и создается новое свойство("алг_каталог"), которое будет хранить алгоритм каталогизотора, после чего создается новый проект с исходным кодом/p>

ВЫЧИСЛИТЬ(ПЕРЕМ Товары: об;    // вход
          ПЕРЕМ СТРОКА: группа)// выход
  // группа = пустая строка - объект не заносится в каталогизатор
  // подгруппы разделяются ~  (пример: группа = "Группа~Подгруппа1~Подгруппа2") 
  ЕСЛИ об.цена < 2000 ТО
    группа = "Дешевые"
  ИНАЧЕ
    ЕСЛИ об.цена > 2000 И об.цена < 8000 ТО 
      группа = "Средние"
    ИНАЧЕ
      группа = "Дорогие"
    КОНЕЦ_ЕСЛИ
  КОНЕЦ_ЕСЛИ 
КОНЕЦ

В результате применения такого каталогизотора будут созданы группы: “Дешевые” (цена меньше 2000 ), “Средние” (цена от 2000 до 80000), “Дорогие” (более 8000). В каждой группе будут соответствующие условию цены объекты.


См. также: