Типы договоров

Материал из GB wiki
Версия от 07:25, 31 марта 2010; Bars (обсуждение | вклад) (Новая страница: «Категория:Справочники ГБ == Виды типов договоров == Типы договоров делятся на системные …»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск


Виды типов договоров

Типы договоров делятся на системные и несистемные, за это отвечает свойство System в типе договора.

Договор системного типа не нужно выбирать на документе, он будет работать всегда. Договор обычного типа (не системного) обязательно должен быть выбран в документе в поле Contract.

С каждым партнером может быть связан набор договоров, некоторые из которых могут быть системными. Для любых типов договоров можно определять управляющие воздействия, которые могут изменять процесс работы с документами. При наличии действующего системного договора (на дату документа) нельзя изменять партнера.

Воздействия

Каждое воздействие описывается 4 параметрами:

  • Момент воздействия
    Определены следующие моменты воздействия договора:
    • Изменение документа
    • Отгрузка документов (группировка по партнеру)
    • Выбор товара
    • Выбор партнера
    • Выбор договора
    • Поиск товара
    • Открытие документа
    • Управляющее воздействие для модемного сервера
    • Отгрузка документа
    • Изменение количества товара
    • Отгрузка документа (проверка товаров)
    • Изменение цены товара
    • Пользовательское
  • Условие - логическое выражение, при выполнении которого срабатывает воздействие.
  • Воздействие – определяет поведение системы при срабатывании условия.
    Специфические функции для воздействий договоров:
    • WARN(строка с сообщением) – выдает окошко для подтверждения действия
    • DENY(строка с сообщением) – запрещает выполнение действия
    • LOG(Осн. параметр, Доп.параметр1, Доп.параметр2) – записывает в лог значения параметров.
  • Приоритет – у одного типа договора на один и тот же момент воздействия может быть определено несколько воздействий с разными приоритетами. Выполняться будет только одно – с максимальным приоритетом (при выполнении соответствующего условия)
Пример:
 Момент – Изменение документа
 Условие – TotalSum-OldTotalSum>SystemContract.Heap.@Amount
 Действие – 
  WARN("Дельта "+(Totalsum-OldTotalSum)+" >"+(SystemContract.Heap.@Amount)+". Все равно изменить?"),LOG(TotalSum-OldTotalSum-SystemContract.Heap.@Amount, 0, 0)
Приоритет – 1

Лог решений

Этот функционал использовался для того, чтобы фиксировать, какой пользователь и когда принимал решения по спорным вопросам - например, отгрузка с превышением кредитного лимита С каждым договором может быть связан лог решений, в котором хранятся:

  • Пользователь, выполнивший операцию
  • Дата и время операции
  • Документ, с которым была произведена операция
  • Три числовых параметра, характеризующих операцию и условия в момент ее совершения.

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