Ваши комментарии
Пример функции:
/* 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
Добрый день.
Сейчас скрипт наваяю..
Вы хотите, что первым всегда печатался "основной источник"?
Непонятно почему вы не можете дать развернутый ответ на поставленный вопрос...
Переделывать печатные формы для каждого банка, с сомнительной для пользователя выгодой, то еще удовольствие.
Извините, что утомил вас вопросами.
Включаю режим молчания.
З.Ы. Для сбера можете взять этот патч.( в поставку НЕ войдет)
В печатную форму добавлен столбец ТН:
З.ы.ы. с таким опытом сопровождения добавить столбец в печатную форму должно быть не сложным делом..
Добрый день.
Откуда родилась такая задача?
Мы никогда не занимались сортировкой "источников" в печатных формах...
Почему первым должен быть именно федеральный бюждет?
З.ы. на сортировку источников влияет не только настройка "порядок" в списке источников, но и в к.ч. "итоговый источник финансирования" и местоположение вида 305(источник, на котором заведен 305 считает главным, если включена настройка Учет ист.результ.п/н для сортировки Н-У:Настройка -> 6. Общие настройки системы -> 5. Специальные настройки системы)
Добрый день.
Данный вопрос обсуждался в этой теме
Я подумал у вас проблема с расчетом 121 вида.
При расчете часовой ставки для расчета процентных надбавок ( символ 4) берутся все виды, помеченные символом 1 в С1
Вы можете переопределить функцию для расчета ставки, либо переопределить сам 17 алгоритм
Если все сделали правильно - разницы по 040 и 070 быть не должно
Для 15го алгоритма вы в первом параметре можете указать номер столбца ТВХ, по которому должен рассчитываться вид...
1)В ТВХ добавляете столбец
2)В столбце отмечаете символом 1 те виды, на которые должен крутиться вид 121
3)Номер добавленного столбца указываете в параметрах алгоритма у 121 вида
Сервис поддержки клиентов работает на платформе UserEcho