Задача 102.112848

Задача :102.112848

Краткое описание :
Избавиться от глобальных для всей системы переменных
Описание :
Другие вопросы по ОС
Что измененно :

Избавиться от глобальных для всей системы переменных

GloVars.inc:
var
wProtCalc_Amort //Признак формирования протокола при расчете/отмене амортизации
, wTypeProtCalc_Amort: word; //Тип протокола (полный/только ошибки) при расчете/отмене амортизации

wIsCalcAmLgotaCurSession: word; // битовая маска по методам учета выполнения расчета аморт.льгот
// в тек.сеансе расчета амортизации

Добавлено по ПИР 102.79321, 102.66550; Ревизии 181140, 156285.
Решение это - неверное.
Переменные используются для передачи информации между несколькими интерфейсами.

Надо переделать более современным способом. Например, это должны быть поля объекта, который будет использоваться совместно F_OS и F_OsOper. Можно еще придумать много разных вариантов.
Как измененно :

Избавился от глобальных переменных.

В amort.vih определена структура для параметров амортизации
type TCalcAmortParm = record куда и вошли удаленные переменные.

Функции для передачи структуры.
procedure SetAmortParm( _ap : TCalcAmortParm );
function GetAmortParm : TCalcAmortParm;


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

Название продукта Название компонента Тип Последняя версия Дата выхода
F_OSF_OSRES9.1.001.0
F_OSF_OSRES9.1.1.0
F_OSOPERF_OSOPERRES9.1.001.0
F_OSOPERF_OSOPERRES9.1.1.0