Форум по программе Контур.Зарплата.

Здесь мы отвечаем на вопросы возникающие у наших пользователей или партнеров при работе с программой или при внедрении ее в организации.

Прежде чем создать обращение, воспользуйтесь поиском. Попробуйте найти похожий топик по ключевому слову. Например "СЗВ-СТАЖ" или "6-НДФЛ".


Если Вы нашли "чужую" тему с похожим вопросом, где уже был дан ответ (есть сообщение помеченное как "Ответ"), но при этом ответ не подходит для Вашей ситуации, то не задавайте свой вопрос в комментариях к "чужой" теме. Лучше создайте новую тему со своим вопросом.

Полезные ссылки по Контур.Зарплата:

  1. Полный дистрибутив и Веб-обновления
  2. Обучающий урок
  3. Вебинары(YouTube)  RuTube
  4. "Старый" форум отключен, архив
  5. Дистрибутив ПФ-Отчет+
0
Отвечен

Добавление произвольного столбца в свод

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

В служебном режиме добавил в свод произвольный столбец с функцией суммирования предыдущих трёх:

Image 4499

Как сделать чтобы по нему тоже подводились итоги?

0
Отвечен

Больничный по МРОТ. Сумма рассчитанного БЛ не совпадает на несколько копеек из за округлений..

При расчете больничного по уходу по МРОТ в программе выходит сумма за 8 дней 3719,87

А должно исходя из минималки ( с ур коэфф) в сентябре 464,98 * 8дней = 3719,84

ZPL_zplinfo_full(20200921_112214).cab

Image 4494

Image 4495

Больничный
0
Отвечен

Итоговая сумма в своде

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

Клиенту необходимо разделять сумму взносов в ПФР на 22% и 10%. Для этого в ЛС присутствуют виды:

341 - вся сумма взносов в ПФР

940 - взносы в ПФР 22%

941 - взносы в ПФР 10%

В своде это выглядит так: 


Image 4493


Т.е. в итоговой строке учитываются лишние 297355.09 руб.

Как поправить EXCELSV.S, чтобы суммы по 940 и 941 видам минусовались из итога? 

0
Отвечен

Символ табеля для дополнительного отпуска

Игорь Шалдин 5 лет назад в Расчеты начислений и удержаний / Отпускные обновлен 5 лет назад 13

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

Ситуация следующая.

1. Из КП приходит приказ на допотпуск.

2. Расчётчик приказ обрабатывает, в табеле автоматически проставляется символ "О".

3. В КП утверждают табеля и символ "О" в табеле КЗ заменяется на "Ь".

4. После расчёта за месяц начисленная сумма за допотпуск обнуляется, т.к. "Ь" не воспринимается как символ отпуска.

Пробовал в ussetsim написать

TA[9] ="О";

Пробовал даже в SetSim заменить "Ь" на "О". Ни чего не помогло. Где ещё можно посмотреть?

Script
Ответ

Подведем итог:

Для того, чтобы символ табеля для дополнительного отпуска, пришедший из КП ( ОД ), перекодировался в понятный для Амбы символ отпуска (О), нужно в USSETSIM.S в функцию User_Tabel_Sootv() добавить строку:

   TA[9] ="О"; TB[9] ="ОД"; TC[9] ="О";  TD[9] ="10"; ON[9] = 15; // Ежегодный дополнительный оплачиваемый отпуск

При этом, нужно обратить внимание на то, откуда грузятся пользовательские скрипты ( из локальной папки Script или из сетевого zpl)

0
На рассмотрении

Ошибка при импорте ЭЛН

Добрый день Ошибка при импорте ЭЛН Текст исключения: невозможно создать обьект хэш-алгоритма.

КЗ 606.12 Крипто-про 4.0.9963 Win 7 максимальная х64

Серт установлен в КЭ заходит без проблем в личных есть проверял. Была установлена 5 версия крипто-про снес поставил 4 ошибка не исчезла. Подскажите где копать. КЗ была перенесена на новый комп после этого ЭЛН не грузятся.

0
Отвечен

Как в скрипте посчитать количество дней между двумя датами?

Игорь Шалдин 5 лет назад в Прочее обновлен Гашков Николай (Эксперт) 5 лет назад 3

Как в скрипте посчитать количество дней между двумя датами? Причём даты начала и конца периода могут находиться в разных месяцах. 

Script
0
На рассмотрении

Ошибка в процессе создания архива

Katti 5 лет назад в Прочее обновлен Гашков Николай (Эксперт) 5 лет назад 1

1) Операционная система : Windows 8.1 (32 разрядная)

2) Офис 2013.

3) Сетевой ZPL

При создании архива базы стала появляется следующая ошибка. Архив сохраняем на локальный диск.


Причем жалуется именно на файлы excel 

Image 4474







0
Завершен

Выгрузка файлов(реестров) в Газпромбанк. Код организации.

Добрый день! При выгрузке файлов в Газпромбанк требует ввести Код организации . Если код начинается с 1* или 2* , то даёт ввести 5 символов кода. У нас начинается с 3 ( 36621). Величина обрезается - становится 4 символа. Где можно поправить???

0
Отвечен

Как в скрипте получить значение заголовка столбца из сетки

Участились просьбы клиентов настроить автоматический расчёт компенсации за задержку выплаты отпускных.

Два года назад в этой теме Вячеслав предложил сделать некий начальный шаблон таблицы для расчёта суммы и последующей разноски в ЛС. Но дело с мертвой точки похоже не сдвинулось. 

Появилась идея написать скриптовый алгоритм для расчёта суммы компенсации, который будет работать так:

- невыплаченная сумма берётся из БЗ вида

- плановая и фактическая даты выплаты даты начала и конца действия вида

- 1/150 ставки центробанка - из сетки.

Проблема в том, что при расчёте необходимо учитывать изменение ставки в периоде задолженности. А для этого надо пробежать по столбцам сетки и считать заголовки столбцов:

Image 4459

Можно ли в скрипте это как-то реализовать?

Script
Ответ

Пример функции:

/*
numSet- номер сетки
row - номер строки в сетке ( нумерация с 1)
d1 - дата начала периода (в виде строки дд.мм.гггг)
d2 - дата окончания периода
*/
GetRateValues(numSet,row,d1,d2)
{
  var map = CreateObject("MapString");
  char zplPath[256];  GetCurrentDirectory(255,zplPath);  // путь до zpl
  char filePath[256];sprintf(filePath,"%s\\TABLSET\\Tabl%d.Set",zplPath,numSet);  // путь до сетки
  if ( access(filePath,0) )
  {
    AmbaMessageBox("Файл с сеткой не найден","Ошибка",MB_OK|MB_ICONERROR,0);
    return map;
  }
  
  var db=KDateFromStr(d1);
  var de=KDateFromStr(d2);
  
  var tabl = CreateObject("CurPrnTbl");  tabl.InitialNameFile(to_string(filePath));
  int countFld=tabl.Count_Fld();// число столбцов
  //цикл по столбцам
  double prevRateValue=0.;
  for(int idxFld=0; idxFld < countFld ;idxFld++)
  {
    string fldName=tabl.Name(idxFld);FreeSpaceString (fldName,3,""); 
    var date=KDateFromStr(fldName);
    //нас интересую только столбцы с датой
    if(!date.IsValid()) 
      continue;
    
    //значение ставки
    double rateValue=atof(tabl.Text(idxFld,row-1));
    prevRateValue=rateValue;
    
    //дата не входит в интересующий нас период
    if (date.GT(de) || date.LT(db))
      continue;
    
    //добавим значение ставки на начало периода
    if(!map.IsExist(db.GetDouble()))
      map.Add(db.GetDouble(),prevRateValue);
    
    //добавим значение ставки на дату date  
    map.Add(date.GetDouble(),rateValue);
  }
  return map;
}

Пример использования:

var map=GetRateValues(85,3,"01.01.2020","31.08.2020");
ShowRates(map,"01.01.2020","31.08.2020");

Результат:

Скрипт: USFUNCRW.S

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