Ваши комментарии
вот так должно работать (в ExtSrcToInt() нужно передавать не массив символов, а один символ)
istn=GetSrcName(ExtSrcToInt(ist[0]));
З.ы.
1)лучше давать "говорящие" названия переменным
2)объявлять переменную лучше в месте ее использования
var Tabl = CreateObject("CurPrnTbl");
long adr = Tabl.GetAdrListTabl();
int rcr = Tabl.GetRcrInListTabl();
var svlist = CreateObject("CurPrnTbl");
svlist.Initial(adr);
char istCode[2]; istCode=svlist.TextS("Src",rcr); //здесь внешний код источника, при отладке вижу значение ist="О" (если источник О)
string istName=GetSrcName(ExtSrcToInt(istCode[0]));
Добрый день!
По внешнему коду источника определяем внутренний код, а потом вызываем GetSrcName()...
GetSrcName(ExtSrcToInt('Х'))
Указывайте РВ только по первому источнику
Добрый вечер.
Примерно так:
int stolbec=25;
int month=mtek;
string date="24.06.2020";
GetSummFromValidRows(date,stolbec,month)
{
//получаем список видов
var nuList=GetListNu(stolbec);
var validOnDate=KDateFromStr(date);
double rez=0.;
//цикл по видам
for (bool Cur=nuList.InitIterator();Cur;Cur=nuList.Next())
{
int code=atoi(nuList.GetCurKey()); //внутренний код вида
int rowkod[ROWMAX];//массив с номерами строк
int cntrow=poiskosnkod(code,rowkod,1,0);
if ( cntrow==0 || KDateFromStr(GetEndDate(rowkod[0])).LT(validOnDate)) //строку не нашли или дата окончания строки continue ;
double summ=CollectSumm(code,0,month,CL_MV);//сумма по виду за месяц month
rez+=summ;
}
return rez;
}
GetListNu(stolbec)
//stolb - столбец ТВХ
{
var mapNu = CreateObject("MapString");
mapNu.Clear();
for (int i=0;i < cntplus;i++)
{
char Sim[2];Sim[1]=0;
Sim[0]=Sim_For_Intern_Cod(kodnu1[i],stolbec-1); //определяем символ в ТВХ
if ( Sim!="0" )
MapNu.Add(to_string(kodnu1[i]),"");
}
return mapNu;
}
Какой то витиеватый вопрос... скорей всего повлияет, например idки (используются для заполнения 6-ндфл) разнесутся на суммы, попавшие в ведомость.
Может вам сначала стоит попробовать? Хотя бы на копии базы?
Если вы хотите выполнить разноску в будущий месяц, то проблем в этом нет
Есть ли какой-то сакральный смысл, чтобы разносить сразу
В момент формирования ведомости программа "запоминает" какие суммы и по каким вида попали в ведомость.
(При повторном формировании ведомости суммы, попавшие в предыдущие ведомости, в текущую ведомость не попадут)
А чтобы в дальнейшем "дебет сошелся с кредитом" выполняется автоматическая разноска ведомости.
Основная претензия расчетчиков к данной настройке, что сразу выполняется разноска
Чем мешает разноска?
От "своих" расчетчиков я претензий не получал..
Бюджетники по 10 раз и так и сяк выверяют сформированные ведомости, прежде чем их разнести в ЛС
Да хоть 100..
Сформировали - не понравилось - удалили, сформировали заново.
Объясните на конкретном примере: чем вам мешаете разнесенная сумма?
но в июне месяце приказ на увольнение с 28 06 2020
Какие изменения вы внесли в программу в связи с этим "неожиданным" приказом на увольнение?
программа пересчитывает, и убирает отпуск только июнь месяц, а июль не снимает суммы по отпуску
Зайдите в ЛС
В правом верхнем углу выберите 07.2020
Встаньте на строку отпуска
Нажмите F4 (пересчитать строку)
Какой смысл перекладывать массив символов из BufCnf в StrSimv?
так тоже должно работать
char BufCnf[256];
GetCommonCnf("MINUS_DNI","отпуск",BufCnf,255);
int id = dney_v_tab(BufCnf,calm,info.z1,info.z2);
Сервис поддержки клиентов работает на платформе UserEcho
Добрый день.
Этих данных в программе нет - можете забивать данные прямо в форму..