Настройка модулей системы DIRECTUM
Общая настройка
Тексты пользовательских расчетов
Текст пользовательского расчета создается в редакторе ISBL-текстов. Редактор запускается по нажатию кнопки Текст в карточке расчета. При задании вычислений можно использовать все возможности языка ISBL, функции, константы, предопределенные переменные, объектную модель.
При написании вычисления необходимо иметь в виду, что предопределенная переменная Object (см. раздел «Общие переменные» в описании объектной модели DIRECTUM) и функция GetComponent() будут возвращать компоненту, для которой выполняется пользовательское событие.
Например, для того чтобы при создании нового договора в справочнике Договоры автоматически заполнялись поля *Дата регистрации и *Ответственный, нужно задать следующий текст расчета:
// Заполнить работника, ответственного за договор.
UserName = Application.Connection.UserName
User = ServiceFactory.GetUserByName(UserName)
Employee = SubString(ПоискСпр('РАБ'; 'Пользователь:' & User.Code);
'|'; 1)
Object.Работник = Employee
// Заполнить дату регистрации.
Object.Дата = Today()
Для того чтобы при сохранении РКК выдавалось предложение снять РКК с контроля, если завершены все этапы, в карточке пользовательского расчета можно задать следующее вычисление:
// Определить находится ли РКК на контроле.
OnControl = Object.Requisites('ДаНет2').AsString
if OnControl == YES_VALUE
// Проверить завершены ли все этапы.
I = 1
Count = СпрТблСтрКол(;; 2)
StepNumber = СпрТблСтрМин(;; 2)
AllStepsFinished = TRUE
while (I <= Count) and AllStepsFinished
FinishDate = СпрРекв(;; 'Дата2Т2'; StepNumber;)
AllStepsFinished = (FinishDate <<>> '')
StepNumber = СпрТблСтрСлед(;; 2; StepNumber)
I = I + 1
endwhile
// Если завершены все этапы, предложить снять РКК с контроля.
if (Count > 0) and AllStepsFinished
Result = MessageBox('Снятие с контроля';
'Завершены все этапы, снять с контроля?'; 'Да|Нет';
YES_VALUE; NO_VALUE)
Object.ДаНет2 = IfThen(Result == YES_VALUE; NO_VALUE; YES_VALUE)
endif
endif
См. также:
· Общие сведения о программной настройке справочников;
· Перечень справочников, в которых предусмотрена программная настройка;
· Настройка программной обработки событий;
· Виды пользовательских событий.
© 2009, Компания DIRECTUM
|
Отправить комментарий к этому разделу на
support@directum.ru
|