DoljnElem - класс для получения информации о должности

InitFromKCH - метод инициализации по полю КЧ
InitFromSpravByID - метод инициализации по внутреннему коду должности
InitFromSpravByName - метод инициализации по Названию должности
InitFromSpravByExtcode - метод инициализации по внешнему коду
Детали работы в сетевой версии
Пример:Функция расчета для добавления должностей в справочник:

Класс для инициализации и получения информации по должности

Методы класса:
Имя методаОписание
Методы инициализации:
int InitFromKCH (
  BSTR strDate, int ID_Combine) 
метод инициализации по полю КЧ
int InitFromSpravByID (
  int ID_Doljn)
метод инициализации по внутреннему коду должности
int InitFromSpravByName (
  BSTR Name)
метод инициализации по Названию должности
int InitFromSpravByExtcode (
  BSTR ExtCode)
метод инициализации по внешнему коду

Методы получения значений

bool IsEmpty ()
проверяет пустой или нет объект должности (для отражения того, что Init* методы не нашли запрашиваемую должность)
BSTR GetExtCode ()
Получает внешний код должности
long GetID ()
Получает ID должности
BSTR GetName ()
Получает название должности
int GetOKPDTRCode ()
Получает код ОКПДТР
BSTR GetOKPDTRCodeStr ()
Получает код ОКПДТР в виде строки. Отличается от предыдущего метода тем, что коды должностей гос.службы возвращаются в корректной форме: с дефисами (например: "01-1-1-123")
int GetPodr ()
Получает код подразделения (привязанный к должности)
int GetOkladSet ()
Получает код сетки оклада
int GetOkladRcr ()
Получает строку сетки оклада
int GetKoefSet ()
Получает код сетки коэффициента
int GetKoefRcr ()
Получает строку сетки коэффициента
int GetFacetCount ()
Получает количество фасетов у должности
BSTR GetFacets ()
Получает строку фасетов должности
int GetFacetValue (
  int facetnum)
Получает значение фасета должности с номером facetnum
Методы записи значений
void CreateNewDoljnElem (
  BSTR doljnName)
Создать новый объект должности с названием doljnName (который потом можно добавить с справочник с помощью AddToDoljnList)"
void SetName (
  BSTR newName)
Установить новое название должности
void SetExtCode (
  BSTR newExtCode)
Установить внешний код должности (только первые DOLJN_COD_SIZE символов)
bool SetOKPDTRCode (
  int newOKPDTR, bool fillfacet, 
  bool fillname)
Установить код ОКПДТР + возможность задать 1-ый(10-ый) фасет (ОКЗ) должности (fillfacet=true) и ее название (fillname=true) из справочника ОКПДТР. Возращает true в случае успеха
bool SetOKPDTRCode (
  BSTR newOKPDTR, bool fillfacet, 
  bool fillname)
Аналогичен предыдущему методу с разницей, что новый код ОКПДТР принимается в виде строки, что имеет значение для кодов должностей гос.службы (которые содержат дефисы, например, "01-1-1-123")
void SetPodr (
  int Podr)
Установить код подразделения
void SetSetsStr (
  BSTR setsStr)
Установить сетку и строку оклада и коффициента из строки вида "setOklad.setKoef,rcrOklad.rcrKoef"
bool SetFacetValue (
  int facetNum, int facetValue)
Установить значение фасета с номером facetNum
void SetFacets (
  BSTR s_facets)
Установить значение фасетов из строки (!!! вызываем после установки кода ОКПДТР, т.к. от него зависит количество фасетов)
void AttachFacets (
  BSTR s_facets)
Добавить непустые значения фасетов из строки, пустые пропускаются
int AddToDoljnList (
  bool saveDoljnList)
Добавить должность в список должностей. saveDoljnList = true - сохранить список должностей после добавления должности. Возращает внутренний код добавленной должности.