Параметры SELECTSALARYDEPARTMENTS

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
varvara
Постоянный обитатель
Сообщения: 130
Зарегистрирован: 21 дек 2005, 19:12

Параметры SELECTSALARYDEPARTMENTS

Сообщение varvara »

Подскажите пожалуйста параметры интерфейса SELECTSALARYDEPARTMENTS .
При попытке определить тип параметров в конфигурировании меню рабочего места выдаетcя следующее:
SELECTSALARYDEPARTMENTS(Comp;Comp;Неизве
Что означает 3-ий параметр ?
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5187
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

Parameters
prChange, // режим работы интерфейса
// 0 - установить текущее подразделение, заполнить базу текущих лицевых счетов и выйти
// 1 - выбрать текущее подразделение и 0

// 2 - выбрать подразделение ничего не изменяя
// 5 - выбрать подразделение (+ пункт "Все подразделения")
// 6 - выбрать подразделение без учета разграничения прав доступа

// 10 - пересканировать текущие лицевые счета помеченных подразделений
// 11 - пометить несколько подразделений и пересканировать текущие лицевые счета

prCex, // nRec текущего подразделения

DepartmentValidator,
DateView; // период для пересканирования

===========================

DepartmentValidator: IDepartmentValidator;
- это объекнтый фейс.
varvra
Сообщения: 5
Зарегистрирован: 21 дек 2005, 18:28

Сообщение varvra »

Спасибо большое, мне пока достаточно и первых двух параметров,
но буду очень благодарна, если приведете пример вызова фейса
со всеми параметрами
varvra
Сообщения: 5
Зарегистрирован: 21 дек 2005, 18:28

Сообщение varvra »

Запускаю интерфейс
runinterface(SELECTSALARYDEPARTMENTS,11) с одним параметром,
помечаю подразделения, но вот куда помещаются ссылки на них?
Думала, что в PICK,
но не все так просто...
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5187
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

пометка идет по маркеру
FoundMarker(Marker, SDEPARTMENTS.NREC)
(fieldname = Marked),
перед использованием
var Marker:longint ;
Marker := InitMarker('CurrentDepartments', 8, 200, 100, true);
после
DoneMarker(Marker, '');
varvra
Сообщения: 5
Зарегистрирован: 21 дек 2005, 18:28

Сообщение varvra »

Cпасибо,все получилось.
Screw
Слесарь-системщик
Сообщения: 304
Зарегистрирован: 29 мар 2005, 17:49
Откуда: р.Беларусь, Унитарное предприятие "ТОП СОФТ"
Контактная информация:

Сообщение Screw »

С некоторых пор предложенный edward_K способ перестанет работать.
Упомянутый интерфейс используется для установки сквозного (в рамках модуля "Заработная плата") фильтра по подразделениям, а доступ к списку помеченных подразделений лучше осуществлять при помощи методов объектного интерфейса ICurLSFunctions (его стандартная реализация - CurLSFunctions). Ниже следует содержимое заголовочного файла CLSFuncs.vih

Код: Выделить всё

#ifndef _CLSFUNCS_INCLUDED_
#define _CLSFUNCS_INCLUDED_

#ifdef ComponentVersion
  #component "Z_Lschet"
#end

#include DepTree.vih

//******************************************************************************
// Базовый функционал работы со списком текущих лицевых счетов и подразделений
//******************************************************************************
objinterface ICurLSFunctions;
//------------------------------------------------------------------------------
// вернуть маркер с nrec-ами текущих подразделений
//------------------------------------------------------------------------------
  function LoadCurrentDepartmentList: longint;
//------------------------------------------------------------------------------
// вернуть маркер с nrec-ами текущих подразделений, если
// маркер пуст (установлен фильтр по всем подразделениям, загрузить в него
// все доступные подразделения
//------------------------------------------------------------------------------
  function LoadFullCurrentDepartmentList: longint;
//------------------------------------------------------------------------------
// рассчитать контрольную сумму пометок (предполагаемый размер элемента = 8б)
//------------------------------------------------------------------------------
  function GetDepartmentsCheckSum(Departments: longint): longint;
//------------------------------------------------------------------------------
// принудительно выгрузить ссылки на лицевые счета текущих подразделений
//------------------------------------------------------------------------------
  function ReScan: boolean;
//------------------------------------------------------------------------------
// выгрузить ссылки на лицевые счета подразделений из списка Departments, если в
// том есть реальная необходимость
//------------------------------------------------------------------------------
  function ReScanIfNecessary(Departments: longint): boolean;
//------------------------------------------------------------------------------
// получить информационную строку о текущем фильтре по подразделению
//------------------------------------------------------------------------------
  function GetDepartmentFilterStr: string;
end;

//******************************************************************************
// Определение состояния фильтра по подразделениям
//******************************************************************************
objinterface IDepartmentFilterStateDetector;
  function IsDepartmentFilterSet: boolean;
end;

//******************************************************************************
// Дополнительный функционал работы с текущими лицевыми счетами
//******************************************************************************
objinterface ICurLSFunctions1;
  // установить значение флага необходимости пересканирования текущих лицевых
  // счетов для всех пользователей
  procedure SetRescanNecessary4AllUsers(Value: boolean);
  // установить значение флага необходимости пересканирования текущих лицевых
  // счетов для текущего пользователя
  procedure SetRescanNecessary(Value: boolean);
end;

//******************************************************************************
// Работа с периодом для текущих лицевых счетов
//******************************************************************************
objinterface IPeriodForScanFuncs;
  // установить период для пересканирования
  procedure SetPeriodViewBeginning(dValue: date);
  // получить период для пересканирования
  function GetPeriodViewBeginning: date;
end;

//******************************************************************************
// Декларация стандартной реализации функционала работы со списком текущих
// лицевых счетов и подразделений
//******************************************************************************
vipInterface CurLSFunctions
  implements
    ICurLSFunctions,
    IDepartmentValidatorEquipped,
    IDepartmentFilterStateDetector,
    ICurLSFunctions1,
    IPeriodForScanFuncs
;

#end
Виталий
AlexV
Посетитель
Сообщения: 36
Зарегистрирован: 18 окт 2005, 17:54

Re: Параметры SELECTSALARYDEPARTMENTS

Сообщение AlexV »

varvara писал(а): При попытке определить тип параметров в конфигурировании меню рабочего места выдаетcя следующее:
SELECTSALARYDEPARTMENTS(Comp;Comp;Неизве
Как? Как это делать? Что означает в конфигурировании меню рабочего места?(вернее, я знаю что это, но где там можно узнать о параметрах интерфейсов?)
Подскажите, пожалста, на что нажать. :?
varvara
Постоянный обитатель
Сообщения: 130
Зарегистрирован: 21 дек 2005, 19:12

Сообщение varvara »

При редактировании пункта меню нажать экранную кнопку «Правка», выбрать закладку «Дополнительные» и пожалуйста – выбирайте любой интерфейс по экранной кнопке «Выбор»
Ответить