Ваши комментарии

Добрый день!

Как вы прекрасно знаете в КЗ доступны только следующие категории пользователей:

Категории пользователя:

  • Мастер
    Максимальный доступ: Может изменять настройки безопасности и имеет полный доступ к расшареным ЛС

Доступ ко всем ЛС имеет пользователь с группой 1 (T_REMOTE\USERLIST.TAB)

Пользователей с группой 1 может быть несколько

  • Расчетчик
    Имеет полный доступ к расшареным ЛС, но можно ограничить определенные режимы работы (через "Режимы с заблокированным доступом")
  • Кадры
    Не имеет доступа к суммам
  • Справки
    Нет прав на корректировку данных в ЛС (только режим чтения)
  • Табель
    Доступен для корректировки только табель
  • Сделать так, чтобы были видны только приказы нет возможности. Я думаю достаточно поставить кадровику ресурс КАДРЫ и этого будет достаточно: суммы в ЛС он не увидит.

Алгоритм для отпуска написан на *.cpp, а не на скриптах и файлы находятся в каталоге TOOLS, которого сейчас даже нет в поставке. 

Добрый день!

Суммы для этой справки берутся по настройке 238 алгоритма соответствующего года (Соц.Страх в Настройке страховых взносов). Как вариант в этом ЛС нет 338 вида в соответствующих годах. Или, если у вас тариф льготный (вы не платите страховые взносы в Соц. страх), возможно в настройке 238 алгоритма нет строки с предельной величиной базы. 

Для льготного периода надо будет в "Справочники" - "Настройка страховых взносов" завести строку на2018 год с 0% и не забыть про строку  с предельной величиной базы. 

Здравствуйте!

Для дополнительного отпуска можно выделить свой вид, а вот поставить свою букву в табеле - нет. По крайней мере, такой настройки нет. 

Добрый день!

Вы завели столбец "Дата". Хорошо. Зайдите в таблицу входимости -> таблица входимости для сводов и там в столбце О1. Виды, разбиваемые по месяцам поставьте 1 только у видов Отпуска и БЛ (как правило, разбивают по месяцам только эти виды). Тогда у вас в своде будет строка отпуска за текущий месяц и будут строки отпуска за другие месяцы. А если надо, чтобы и ШЗ были разные, то зайдите в Справочники -> 3. Таблицы соответствия для подготовки сводов -> Таблица Вид Н-У-Фонд-ШЗ и у 140-го вида в графе "Шифр затрат дополнительный" поставьте ШЗ, на который идут отпускные будущих месяцев.  

Добрый день!

Если смотреть данный ЛС, то у него источники 1 и 8 и он работает в подразделении 1. А если зайти в Настройка -> 4. Настройки параметров расчета -> 3. Настройка расчета отпуска -> Список источников для расчета отпуска, то там среди подразделений нет подразделения 1. Отметьте в этой настройке подразделение 1 и тогда расчёт будет такой:

Добрый день!

Подождите, пожалуйста, выход версии 599.16. Там эта проблема решена.Пока пользуйтесь новой КЧ.

Добрый день!

К сожалению, в указанной справке, не корректно отражается количество недель (программа в любом случае пишет 52 недели, т.е. столько сколько должно быть за год):

Задача на рассмотрении. Как будет исправлено, я сообщу.

Добрый день!

Я бы написал так (согласно вашему письму) :

if (kod_kat==7 || kod_kat==8 || kod_kat==9) return row=1; // Если категория равна 7 или 8 или 9, то берётся строка 1

if (kod_kat==10) return row=2; // Если категория равна 10, то берётся строка 2

if (kod_kat==11) return row=3; // Если категория равна 11, то берётся строка 3

и т.д. См. написание ф-ции ниже.

//коэффициент пересчета для ОТП по категориям 28.05.19 ВТР
usrGetRowForOtp()
{
int row=0;
//определяем категорию сотрудника
var D = CreateObject("KDate");D.SetDateII(1,mrasch); //значение категории берем на начало расчетного месяца
char StrKat[81];
GetKchValue("kat",StrKat,2,D);
int kod_kat=atoi(StrKat); //значение кода категории
// если код категории НЕ равен 4 и НЕ равен 5 индексация по 1-ой строке сетки
//if ( kod_kat!=4 && kod_kat!=5) return row=1;
//иначе индексация по 3-ей строке сетки
//else row=3;
if (kod_kat==1 || kod_kat==2) return row=1; // Если категория равна 1 или 2, то берётся строка 1
if (kod_kat==3) return row=2; // Если категория равна 3, то берётся строка 2
if (kod_kat==11) return row=3; // Если категория равна 11, то берётся строка 3
else row=0;
}

В вашей сетке завёл строку 0 (ноль) с голыми нулями (чтобы при неуказанной категории в КЧ коэффициент увеличения для расчета отпуска не изменялся ): 

Добрый день!

Если у вас заведена сетка индексации отпуска и в этой сетке для каждой категории заведена своя строка, то в настройке отпуска в строке "Код строки из сетки для коэфф. увелич" пишем ф-цию: return usrGetRowForOtp(); что означает код строки из сетки индексации возвращает функция usrGetRowForOtp.


Скрипт функции (нужно вставить в usfuncrw.s):
usrGetRowForOtp()

{

int row=0;

//определяем категорию сотрудника

var D = CreateObject("KDate");D.SetDateII(1,mrasch); //значение категории берем на начало расчетного месяца

char StrKat[81];

GetKchValue("kat",StrKat,2,D);

int kod_kat=atoi(StrKat); //значение кода категории

// если код категории НЕ равен 4 и НЕ равен 5 индексация по 1-ой строке сетки

if ( kod_kat!=4 && kod_kat!=5) return row=1;

//иначе индексация по 3-ей строке сетки

else row=3;

}

Функция реагирует на значение из кадровой части - код категории. В примере, приведенном выше: если код категории 4 или 5, тогда индексация идет по 3-ей строке сетки, иначе по строке 1 из сетки. Вам нужно подставить сюда свои категории 7,8,9 по 1 строке, 10 по 2 строке, 11 по 3 строке.

Сервис поддержки клиентов работает на платформе UserEcho