Подскажите функцию, которая бы заменяла старый табельный номер сотрудника на новый и ее можно было юзать в своем интерфейсе?
P.s. В галактике есть интерфейс CHANGETABN (Управление персоналом-Администратор-Замена табельных номеров), я так думаю, нужная мне функция привязана к кнопке [Продолжить].
Галактика 7.12
Замена табельного номера
Модераторы: m0p3e, edward_K, Модераторы
-
- На пенсии
- Сообщения: 797
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: г. Тюмень
- Контактная информация:
Код: Выделить всё
function ChangeClockNumber(
AccountID: Comp; // nrec лицевого счета
NewTabN: LongInt; // новое значение табельного номера
NewCex: Comp; // новое значение ссылки на подразделение
StrictChange: boolean; // выполнять замену также в переходах в межпериод и постоянных доплатах
SilentChange: boolean // подавить выдачу сообщений об ошибках во время работы функции
): Boolean;
Жду выхода Вселенная 2.12!
Ошибка: недопустимый тип параметра.
Если указать 4 параметра, то ошибки нет. Но методом перебора не удалось подобрать нужные параметры, все время функция возращает false.
p.s. стоит зар12. использую в ард отчете:
...
.begin
AccountID:=comp(6);
NewTabN:=2222;
//NewCex:=comp(10);
StrictChange:=true;
SilentChange:=false;
a1.getfirst lschet where ((AccountID==nrec))
if ChangeClockNumber(AccountID,newtabn,a1.lschet.cex,StrictChange) message('замена прошла')
else message('замена не прошла');
end.
...
Если указать 4 параметра, то ошибки нет. Но методом перебора не удалось подобрать нужные параметры, все время функция возращает false.
p.s. стоит зар12. использую в ард отчете:
...
.begin
AccountID:=comp(6);
NewTabN:=2222;
//NewCex:=comp(10);
StrictChange:=true;
SilentChange:=false;
a1.getfirst lschet where ((AccountID==nrec))
if ChangeClockNumber(AccountID,newtabn,a1.lschet.cex,StrictChange) message('замена прошла')
else message('замена не прошла');
end.
...
-
- Слесарь-системщик
- Сообщения: 304
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: р.Беларусь, Унитарное предприятие "ТОП СОФТ"
- Контактная информация:
Для нормальной работы функции требуется предварительная установка контекста (инициализация таблиц и некоторых рабочих структур). Инициализация контекста производится с помощью вызова
, финализация - с помощью вызова
Эти две рутины образуют т. н. "процедурные скобки", т. е., всегда встречаются парами, как "begin" и "end" в паскале. Если функция замены табельного номера вызывается несколько раз кряду, имеет смысл инициализацию контекста выполнить до первой замены, а финализацию - после последней.
Функция может также модифицировать кадровские данные. Какие именно - определяется настройками из раздела "Управление персоналом" - "Общие настройки" - "Автообновление данных "Кадров"".
Код: Выделить всё
function InitChange: boolean;
Код: Выделить всё
procedure DoneChange;
Функция может также модифицировать кадровские данные. Какие именно - определяется настройками из раздела "Управление персоналом" - "Общие настройки" - "Автообновление данных "Кадров"".
Виталий