Форум по программе Контур.Зарплата.
Здесь мы отвечаем на вопросы возникающие у наших пользователей или партнеров при работе с программой или при внедрении ее в организации.
Прежде чем создать обращение, воспользуйтесь поиском. Попробуйте найти похожий топик по ключевому слову. Например "СЗВ-СТАЖ" или "6-НДФЛ".
Если Вы нашли "чужую" тему с похожим вопросом, где уже был дан ответ (есть сообщение помеченное как "Ответ"), но при этом ответ не подходит для Вашей ситуации, то не задавайте свой вопрос в комментариях к "чужой" теме. Лучше создайте новую тему со своим вопросом.
Полезные ссылки по Контур.Зарплата:
- Полный дистрибутив и Веб-обновления
- Обучающий урок
- Вебинары(YouTube) RuTube
- "Старый" форум отключен, архив
- Дистрибутив ПФ-Отчет+

Доплата до МРОТ (алгоритм 897). Как выделить РК и СН?
Блин, с этимим северными...
Вячеслав предложил хорошее решение "крутить" СН, РК сверху доплаты до МРОТ. Но, блин теперь хочют выделять СН и РК с доплаты до МРОТ = "вернулись к тем же баранам" с кучей СН.
Наверное, одно из решений в 897м алгоритме при определении суммы МРОТ с СН и РК - искать виды северных в л/с и выбирать процент С/Н из РВ. Т.е.+ в колонке доплаты до МРОТ нужно отметить виды С/Н и выбирать либо РВ только по основному источнику/объекту/итд???

Вид можно завести любой в пределах начислений, а если заводите среди удержаний, то не забудьте поставить в столбце С23 специальной ТВХ букву "Н" (Начисление). Поскольку он будет считаться после видов начислений, поставьте порядок 100 или 130. Налоги будут браться, поэтому ставим 2000.

Возможность выгрузки данных организации из ЭЛН на сайт ФСС
Здравствуйте!
Существует ли возможность выгружать ЭЛН вместе с данными, указываемыми организацией (ИНН, к примеру), на сайт ФСС

Алгоритм для премии
Добрый день,
помогите пожалуйста с алгоритмом.
Надо посчитать в/о 202(премия) = оклад*РВ/НРВ*коэф, и округлить до 2знаков после запятой, где
оклад = БЗ основного в/о(5)
РВ = РВ из основного в/о(5)
КЧ(код категории)
коэф - берется из сетки окладов и др.табл в зависимости от категории и месяца.
Пример:
Оклад=8484
РВ=31
НРВ=75.5
КЧ(код категории)=13
Коэф =2.8247
Сумма премии = 8484*31/75.5*2.8247 = 9839.83
ЛС
КЧ (kat=13)
Сетка окладов и другие таблицы (№таблицы 4)

Здравствуйте.
Алгоритм: 4
Параметры: D2=Б(внутренний_код_оклада)/Н(1); D3=К(kat,4) // Н и К - русские
В 26 столбце спецТВХ символ 1

Как получить среднесписочную численность на человека за период
Нужно получить за период на каждого человека его среднесписочную численность и его выплаты. Как это можно сделать?
Видел в модуле SetSim функцию по теме, но не понятно как это можно использовать.
С функцией СОСТАВ тоже непонятно.

Форма П4 в квартальном варианте получает информацию о среднесписочной. Там используется функция СОСТАВ(3,месяц1,месяц2); (в варианте П4 передаются относительные месяцы, но функция поймет и вариант вида 01.2018,03.2018)

Запись РВ и суммы в НУ в ЛС
Здравствуйте. Делаю расчет аванса.
Если делаю из списка ЛС, то РВ и сумма записываются без проблем. Если делаю из ЛС, то заполнение происходить в зависимости от того, была ли заполнена РВ.
Что нужно сделать, чтобы это исправить (заполнение при РВ = 0 из ЛС при расчете аванса)?
P.S. Использую функции PutSumm и PutTime

Несколько состояний в табеле
Спрашивают про возможность учета в табеле несколько состояний сотрудника в день соответственно по часам. Например, часть дня работал, а другую часть был на учебе. Или учет сверхурочных, 8 часов работал и 3 часа сверхурочных. Возможно ли такое реализовать?

Создание вида оплаты для совместительства
Почему-то не получается создать начисление для совместительства.
Для смены совместительства использую TmpCurCombine, создаю с помощью
otkrsnu. Начисление создаётся, но для основного места работы.

Для открытия строки недостаточно одного совместительства. В общем случае для строки могут задаваться источники, объекты... otrksnu смотрит на "свойство" установленное в CMN_SRC_C_WORK
//AmbaMessageBox("982 = " + last_day_982.GetStr(),"",MB_OK|MB_ICONINFORMATION,0); //AmbaMessageBox("988 = " + last_day_988.GetStr(),"",MB_OK|MB_ICONINFORMATION,0); var Prop = CreateObject("APropBE"); Prop.SetCombine(comb); var ts1 = CreateObject("TempCommonSrc"); ts1.TempCommonSrcInitial(CMN_SRC_C_WORK); SetCommonProp(CMN_SRC_C_WORK,Prop); var ts2 = CreateObject("TempCommonSrc"); ts1.TempCommonSrcInitial(CMN_SRC_MAIN); SetCommonProp(CMN_SRC_MAIN,Prop); var tc=CreateObject("TmpCurCombine"); // Класс для временной смены, а затем и восстановления текущей должности tc.Init(comb);//инициализируем

Интеграция с Контур-Персоналом. Как восстановить обработанное письмо?
Добрый день!
При работе с клиентов возникла следующая ситуация:
Расчётчик не видит по ЛС приказа на увольнение сотрудника и выплату компенсации за неиспользованный отпуск. С помощью продемонстрированного вами ранее механизма фильтрации мы с расчётчикоом нашли данный приказ в "Обработанных письмах".
Очевидно, расчётчик по ошибке нажал F3 при обработке приказа. Такая ситуация возникла по нескольким ЛС - ошибочно помечены, как обработанные, приказы на отпуска и компенсации.
Сейчас вижу 2 варианта решения проблемы:
1. Рассчитать вручную.
2. Перепровести приказ в КП, чтобы пришло ещё одно письмо на синхронизацию.
Подскажите, пожалуйста, есть ли возможность вытащить письмо из "обработанных" обратно во "входящие" и обработать ещё раз?
Это позволило бы сильно сократить действия, которые необходимо выполнить пользователю для исправления своей ошибки.

Приказ удалить невозможно. По F3 приказ помечается как обработанный. Нажмите F9 и включите отображение всех приказов включая обработанные, галку что приказ обработан можно снимать двойным кликом мыши.

поиск вида оплаты в лицевом счете
Здравствуйте. Есть необходимость проверить существование некоторых видов оплат в конкретном лицевом счете, включая данные по датах начала и окончания действия.
Есть ли функция, выполняющая такой поиск? Или хотя бы как можно перечислить все виды оплат, получить данные по датах начала и окончания?
Спасибо.

Пример функции:
TryFindCodeValidOnDate(comb,extCode,kDate) { var Prob = CreateObject("APropBE"); Prob.Init(CLL_TOTAL_SRC,CLL_TOTAL_SUBJECT,CLL_TOTAL_PODR,comb); //инициализируем APropBE вн.кодом совместительства int rowkod[ROWMAX];//массив с номерами строк int cntrow=poiskosnkodProp(Extern_To_Intern(extCode),rowkod,0,Prob);//получаем список строк с кодом==kod for (int row=0; row<cntrow; row++) { double ikod=GetCode(rowkod[row]); var dbRow=KDateFromD(GetBegDate(rowkod[row])); var deRow=KDateFromD(GetEndDate(rowkod[row])); if (dbRow.IsValid() && dbRow.GT(kDate)) //вид еще не открыт continue; if (deRow.IsValid() && deRow.LT(kDate)) //вид закрыт continue; return row; } return -1; }
Использовать так:
var d=KDateFromInt_WithDay(1,mrasch); if (TryFindCodeValidOnDate(comb,extCode,d)==-1) //вид на 1 первое число расчетного месяца не найден.. { //код для открытия вида }

Шифр затрат в расчетном листе
Здравствуйте.
Есть необходимость вывести часть шифра затрат в расчетке у конкретных видов начислений. Подскажите, пожалуйста, как это сделать?
форма check102
Спасибо.

Есть переменная InternCodE, в которой находится внутренний точный код вида печатаемой строки.
Через GetShifrZatrRow(double IntCode) можно получить шифр затрат...
Добавить печать значения ШЗ можно например в comexcel.S в функции StringExcel(Part)
Например:
sprintf(cell,"S%d",NumStr); tWriteStringToCell(cell,OemToAnsi(ts1)); sprintf(cell,"T%d",NumStr); tWriteStringToCell(cell,OemToAnsi(arg)); }
Заменяем на
sprintf(cell,"S%d",NumStr); tWriteStringToCell(cell,OemToAnsi(ts1)); sprintf(cell,"T%d",NumStr); tWriteStringToCell(cell,OemToAnsi(arg)); if (kod==305) //ШЗ печатаем только для 305 вида { sprintf(cell,"U%d",NumStr); tWriteStringToCell(cell,OemToAnsi(GetShifrZatrRow(InternCodE))); } }
Сервис поддержки клиентов работает на платформе UserEcho