import "layer92.dll" AlgorithmCalc(&info,&r) { return SysAlgorithmCalc(info,r); } SysAlgorithmCalc(&info,&r) { // á­ ç «® ¢ë§ë¢ ¥¬ ¯®«ì§®¢ â¥«ìáªãî ç áâì  «£®à¨â¬®¢, ¨ ⮫쪮 // ¯®â®¬ - á¨á⥬­ãî int R_C=UserAlgorithmCalc(info,r); if ( R_C ) return R_C; int Ver = GetVerInfo(); if ( Ver ) { if ( Ver & V_UVD ) R_C=AlgorithmCalcSpecUVD(info,r); if ( R_C ) return R_C; if ( Ver & V_SCHOOL ) R_C=AlgorithmCalcSpecRONO(info,r); if ( R_C ) return R_C; if ( Ver & V_MEDICINE ) R_C=AlgorithmCalcSpecMedicine(info,r); if ( R_C ) return R_C; } switch(info.kod_alg) { case 3: return SysAlg3(info,r); case 4: return SysAlg4(info,r); case 5: case 192: return SysAlg5_192(info,r); case 6: return SysAlg6(info,r); case 12: case 15: case 25: case 115: return SysAlg12_15_25_115(info,r); case 13: return SysAlg13(info,r); case 14: return SysAlg14(info,r); case 17: return SysAlg17(info,r); case 23: return SysAlg23(info,r); case 27: return SysAlg27(info,r); case 35: return SysAlg35(info,r); case 7: case 10: case 47: return SysAlg7_10_47(info,r); case 96: case 97: case 186: case 187: return SysAlg96_97_186_187(info,r); case 98: case 99: return SysAlg98_99(info,r); case 121: return SysAlg121(info,r); case 178: return SysAlg178(info,r); case 184: return SysAlg184(info,r); case 185: return SysAlg185(info,r); case 215: return SysAlg215(info,r); case 218: return SysAlg218(info,r); case 225: return SysAlg225(info,r); case 228: return SysAlg228(info,r); // case 255: case 256: // return SysAlg255_256(info,r); case 897: return SysAlg897(info,r); case 247: return SysAlg247(info,r); default: return 0; } } SysAlg3(&info,&r) { worktime(info.crow,info.b3,0); // § ¯®«­¥­¨¥ à ¡®ç.¤­¥© ¢ â ¡¥«¥ if(r[2] == 0. && nkalend == knorm) // ¥á«¨ áâப  áç¨â ¥âáï ¯® ®á­®¢­®¬ã £à ä¨ªã ‹‘ skoljko(r[2],data,info.z1,info.z2,rsimv,calm,cht); char t[20]; if((info.c=korrv(r,t,0,info.h,flagrow,jf)) != 1) return code_ReturnCode; if(FL_V_ALG && uprc != NO_SCREEN) infolist.add_record("� ¡®ç¥¥ ¢à¥¬ï",r[2]); return code_Break; } SysAlg4(&info,&r) { return SysAlg4_6(info,r,false); } SysAlg4_6(&info,&r,bHours) { unsigned idxNorm = bHours?2:1; worktime(info.crow,info.b3,0); var ListBZ;// = CreateObject("MapString"); unsigned cnt=GetListBZ(info.kod,data+0.01,data+countday/100.,GetBase(info.crow),ListBZ); // if ( ListBZ.Size()<2 ) if ( cnt<2 ) { if(nkalend == knorm) //* ¥á«¨ áâப  áç¨â ¥âáï ¯® ®á­®¢­®¬ã £à ä¨ªã ‹‘ { if ( bHours ) skoljko(r[2],data,info.z1,info.z2,rsimv,calm,cht); else r[2]=dney_v_tab(rsimv,calm,info.z1,info.z2); } char t[20]; if((info.c=korrv(r,t,0,info.h,flagrow,jf)) != 1) return code_ReturnCode; info.n1=r[2]*info.bz/norm(idxNorm); if(FL_V_ALG && uprc != NO_SCREEN) { infolist.add_record("� ¡®ç¥¥ ¢à¥¬ï",r[2]); infolist.add_record(bHours?"�®à¬  ç á®¢":"�®à¬  ¤­¥©",norm(idxNorm)); infolist.add_record("Žª« ¤",info.bz); infolist.add_record("�¥§ã«ìâ â",info.n1); } } else { if(FL_V_ALG&&uprc!=NO_SCREEN) { infolist.add_record(bHours?"�®à¬  ç á®¢":"�®à¬  ¤­¥©",norm(idxNorm)); } // bool bCur = ListBZ.InitIterator(); unsigned idx=0; double DatB = ListBZ[idx][1];// atof(ListBZ.GetCurKey()); double _do = do_chisla(info.ikod); info.n1 = 0.; r[2]= 0.; var Tmp = CreateObject("KDate"); var Tmp1 = CreateObject("KDate"); // while ( bCur ) while ( idx 0) { var i=atoi(reinterpret_cast_to_string(Work.List_Par[0])); if( (i > 0 && i <= 99) || ( info.kod_alg >= 25 && i > SPECT && i <= SPECT+24 ) ) stolbec=i; } //-- ¯ à ¬¥âà 2 - ¬¥áïæ ­ ç «  ¢ë¡®àª¨ (®â­®á¨â¥«ì­® à áç¥â­®£®) // (¯® 㬮«ç ­¨î ¡¥à¥âáï §  ®¤¨­ ⥪ã騩 ¬¥áïæ) if(Work.Count_Par > 1) { var i=atoi(reinterpret_cast_to_string(Work.List_Par[1])); if( (i >= (- P2MES) && i <= B2MES) || ( info.kod_alg >= 25 && i >= (-P2MES) && i <= B2MES ) ) mes1=mes2=i; } //-- ¯ à ¬¥âà 3 - ¬¥áïæ ª®­æ  ¢ë¡®àª¨ (®â­®á¨â¥«ì­® à áç¥â­®£®) // (¯® 㬮«ç ­¨î ¡¥à¥âáï §  ®¤¨­ ¬¥áïæ, 㪠§ ­­ë© ¯ à ¬¥â஬ 2) if(Work.Count_Par > 2) { var i=atoi(reinterpret_cast_to_string(Work.List_Par[2])); if( (i >= mes1 && i <= B2MES) || (info.kod_alg >= 25 && i >= mes1 && i <= B2MES) ) mes2=i; } //-- ¯ à ¬¥âà 4 - ’¨¯ à ¡®âë á £à ä®© �‚: if(Work.Count_Par > 3) TipFillRV=atoi(reinterpret_cast_to_string(Work.List_Par[3])); //-- ¯ à ¬¥âà 5 - ᨬ¢®«ë ¢ë¡®àª¨ if(Work.Count_Par > 4) sprintf(StrSimv,"%.50s",reinterpret_cast_to_string(Work.List_Par[4])); //-- ¯ à ¬¥âà 6 - ᯮᮡ ¢ë¡®àª¨ ¤«ï //  «£®à¨â¬®¢ 25 ¨ 115 var Flag=(info.kod_alg == 25) ? ( CL_MV| CL_COL| CL_QUICK ) : ( CL_MV| CL_EXACT| CL_QUICK ); // 23.08.05 SVV ‚¥à­ã«¨áì ª ⨯㠭¥¯®«­®âë ¯® à ¡®ç¨¬ ¤­ï¬, â.ª. // ¢¯®«­¥ «®£¨ç­® ¢ë£«ï¤¨â, çâ® ¯à¥¬¨ï áç¨â ¥âáï ¯à®¯®à樮­ «ì­® // ®âà ¡®â ­­®¬ã ¢à¥¬¥­¨. ˆ ª ⮬㠦¥ â ª ¡ë«® ¨ ¢ áâ à®¤ ¢­¨¥ ¢à¥¬¥­ . // Š®à®ç¥ ¢®®¡é¥ ­¥¯®­ïâ­® á 祣® ¢¤à㣠¯à¨è«¨ ª ¯à®¯®à樨 ¯® ­®à¬ â¨¢­ë¬ ¤­ï¬ // (᪮॥ ¢á¥£® ¯®â®¬ã çâ® ¯à¨ à áç¥â¥ ç¥à¥§ "¯ à ¬¥âàë  «£®à¨â¬®¢" ⨯ ­¥¯®«­®âë // ¯® 㬮«ç ­¨î ¡ë« à ¢¥­ 2, ᥩç á ¯¥à¥¯à ¢¨« ­  4). int TipNep = 4; // ⨯ ­¥¯®«­®âë if ( Work.Count_Par>5 ) { if ( info.kod_alg<25 ) TipNep=atoi(reinterpret_cast_to_string(Work.List_Par[5])); else Flag=Tip__Flag(reinterpret_cast_to_string(Work.List_Par[5])); } //-- ¯ à ¬¥âà 7 - ¯á¥¢¤®­¨¬ ¯®«ï Š— ¤«ï åà ­¥­¨ï ¯à®æ¥­â  // ¯® ¢à¥¬¥­¨ string ps=""; bool bTimeProc = false; if (Work.Count_Par>6) { string p = reinterpret_cast_to_string(Work.List_Par[6]); long idx = InStrN(1,p,"ps:"); if ( idx ) { ps = MidN(p,idx+3,0); int Pos = kch_num_sys(ps); if ( Pos!=EOF ) bTimeProc=true; else ps=""; } } var n5=0.; if(info.kod_alg >= 25) toMatrLS(); var hSrc=GetCurPropCountLS(); for(var m=mes1; m<=mes2; m++) { double r9; if(info.kod_alg < 25) s1001simv(StrSimv,"*",info.d1,info.d2,m,stolbec-1,r9,TipNep,0); else { // ¯à®æ. ­ ¤¡ ¢ª  ¯® ¬¥á. ­ ç. ¡¥§ ­®à¬¨à®¢ ­¨ï // ¯® ¤ â ¬ if(info.kod_alg == 25) r9=CollectSummPropSimv( static_cast_to_string(StrSimv),stolbec-1,0,m+mrasch, Flag|CL_SOURCE,hSrc ); else r9=s1001simv_mvProp( StrSimv,info.d1,info.d2,m+mrasch,stolbec-1,TipNep, Flag|CL_SOURCE, hSrc ); } n5+=r9; } // 08.11.95 if( FL_V_ALG && uprc!=NO_SCREEN) { infolist.add_record("Œ¥áïæ ­ ç «  ¢ë¡®àª¨",mes1); infolist.add_record("Œ¥áïæ ®ª®­ç ­¨ï ¢ë¡®àª¨",mes2); infolist.add_record("‘⮫¡¥æ ¢ë¡®àª¨",stolbec); infolist.add_record("‘¨¬¢®«ë ¢ë¡®àª¨",StrSimv); if ( info.kod_alg<25 ) infolist.add_record("’¨¯ ­¥¯®«­®âë",TipNep); infolist.add_record("‘㬬  ¢ë¡®àª¨",n5); } double SrednProc = 0.; int CountProc = 0; if ( bTimeProc ) // ®¯à¥¤¥«¨¬ "á।­¨©" ¯à®æ¥­â ¥á«¨ ¯à®æ¥­â ¬¥­ï«áï ¯® ¢à¥¬¥­¨ { // € ⥯¥àì ¯à®©¤¥¬áï ¯® ¯®«î ª ¤à®¢®© ç á⨠// ˆ ¢®§ì¬¥¬ ®ââ㤠 ¢á¥ §­ ç¥­¨ï ¯à®æ¥­â®¢, ¤¥©á⢮¢ ¢è¨¥ // ¢ à ááç¨â뢠¥¬®¬ ¬¥áïæ¥ info.n1=0.; // ®¡­ã«¨«¨ ¨â®£®¢ãî á㬬ã // „ â  ª®­æ  ¤¥©áâ¢¨ï ®ç¥à¥¤­®£® §­ ç¥­¨ï ¯à®æ¥­â  // ‚ á ¬®¬ ­ ç «¥ ®­  à ¢­  ¯®á«¥¤­¥¬ã ¤­î ¬¥áïæ . var DateEnd = CreateObject("KDate"); DateEnd.SetDateII(countday,mrasch); // � ©¤¥¬ ¤ âã ­ ç «  ¤¥©áâ¢¨ï ®ç¥à¥¤­®£® §­ ç¥­¨ï ¯à®æ¥­â  char StrD[21]; GetKchDate(ps,StrD,10,DateEnd); var Date=CreateObject("KDate"); Date.SetDate(static_cast_to_string(StrD)); // …᫨ ¢¤à㣠¤ â  ­ ç «  ¯ãáâ ï ¨«¨ ¢ë室¨â §  à ¬ª¨ à áç¥â­®£® // ¬¥áïæ , â® ãáâ ­®¢¨¬ ¥¥ à ¢­®© ¯¥à¢®¬ã ç¨á«ã à áç¥â­®£® ¬¥áïæ  if ( Date.IsEqI(INVALID_DATE_VALUE) || Date.GetAbs()1)?"‘।­.¯à®æ¥­â":"�à®æ¥­â",rv); infolist.add_record("�¥§ã«ìâ â",info.n1); } return R_C; } SysAlg13(&info,&r) { // ¯à¥¬¨ï á㬬®© §  ¬¥áïæ if(info.n1 == 0. && func[6]) info.n1=info.bz; return code_MDefault; } SysAlg14(&info,&r) { // -- ¤ ® ¯ «   â   §  ᢥàåãà. // SVV 06.12.05 ¯à®æ¥­âë ¤®¯« âë §  ¯¥à¢ë¥ 2 ç á  ¨ // §  ¯®á«¥¤ãî饥 ¢à¥¬ï ¯ à ¬¥âਧ®¢ ­ë, §  áç¥â í⮣® //  «£®à¨â¬ ¬®¦­® ¨á¯®«ì§®¢ âì ª ª ¤«ï ¤®¯« âë // §  ᢥàå.ãà®ç­ë¥ (0.5 ¨ 1) â ª ¨ ¤«ï Ž�‹€’› // ᢥàåãà®ç­ëå (1.5 ¨ 2 ᮮ⢥âá⢥­­®) struct Struct_Alg Work; Get_AlgWithParam(Work,info.ikod); // 31.01.1995 double pr1 = 0.5, pr2 = 1; // Work.Count_Par - ç¨á«® ¯ p ¬¥âp®¢ ¤«ï ª®¤   «£®p¨â¬  //-- ¯ à ¬¥âà 1 - ¯à®æ¥­â ®¯« âë ¯¥à¢ëå 2 ç á®¢ if (Work.Count_Par>0) { double i=atof(reinterpret_cast_to_string(Work.List_Par[0])); if ( i!=0 ) pr1 = i; } //-- ¯ à ¬¥âà 2 - ¯à®æ¥­â ®¯« âë ®áâ «ì­ëå ç á®¢ if (Work.Count_Par>1) { double i=atof(reinterpret_cast_to_string(Work.List_Par[1])); if ( i!=0 ) pr2 = i; } // �‡ - â à¨ä ¤®¯« âë r[2]=r[2]-info.h[2]; // ãç¥â ¤«ï á«ãç ï ¯¥à¥áç¥â  char t[20]; indstr(scr04,mrasch,windrow,r,t,1); r[2]=r[2]+info.h[2]; // ãç¥â ¤«ï á«ãç ï ¯¥à¥áç¥â  // if (mmimo==1) goto mdfault; // if (uprc!=NO_SCREEN) flagrow1[jf1]=crow; double n3=0.,n4=0.; // 4.02.94 if(uprc != NO_SCREEN) { flagrow[jf][2]=1; zaprosd( scr04,windrow+1,0, "‘¢¥àåãà®ç­®¥ �‚ §  ¯¥à¢ë¥ 2 ç á ", 7,r[2],n3,-500.,500.,0 ); zaprosd( scr04,windrow+2,0, "‘¢¥àåãà®ç­®¥ �‚ §  á«¥¤ãî騥 ç áë", 7,0.,n4,-500.,500.,0 ); } var n5=info.bz; // â à¨ä var n6=0.5; // ¯à®æ¥­â ¤®¯« âë â à¨ä  §  ¯¥à¢ë¥ 2 ç á  var n7=1.; // ¯à®æ¥­â ¤®¯« âë â à¨ä  §  á«¥¤. ç áë info.n1=n5*(n3*n6+n4*n7)/100.; r[2]=n3+n4; if(FL_V_ALG && uprc != NO_SCREEN) { infolist.add_record("’ à¨ä",n5); infolist.add_record("Š®íä䍿. §  ¯¥à¢. 2 ç á ",n6); infolist.add_record("‚à¥¬ï §  ¯¥à¢ë¥ 2 ç á ",n3); infolist.add_record("Š®íä䍿. §  á«¥¤. ç áë",n7); infolist.add_record("‚à¥¬ï §  á«¥¤. ç á ",n4); infolist.add_record("�¥§ã«ìâ â",info.n1); } return code_MDefault; } SysAlg17(&info,&r) { // ¤®¯«. §  ­®ç­. ¢à¥¬ï; �‚ - ¢ ç á å // �‡ - ¯à®æ¥­â ¤®¯« âë double n5; s96(info.d1,info.d2,n5,1); char t[20]; if((info.c=korrv(r,t,0,info.h,flagrow,jf)) != 1) return code_ReturnCode; info.n1=n5*r[2]*info.bz/100.; if(FL_V_ALG && uprc != NO_SCREEN) { infolist.add_record("‘â ¢ª ",n5); infolist.add_record("� ¡®ç¥¥ ¢à¥¬ï",r[2]); infolist.add_record("�à®æ¥­â ¢ë¯« âë",info.bz); infolist.add_record("�¥§ã«ìâ â",info.n1); } return code_Break; } SysAlg23(&info,&r) { // à §«¨ç­ë¥ ­ ¤¡ ¢ª¨ á㬬®© double n6; info.kod_alg=s98(0,n6); if(info.kod_alg == 1) // "¤­¥¢­¨ª" n6=dney_v_tab(rsimv,calm,info.z1,info.z2)/norm(1); else { double n2; // "ç á®¢¨ª" skoljko(n2,data,info.z1,info.z2,rsimv,calm,cht); n6=n2/norm(2); } // n6 - ®â­®è¥­¨¥ ”�‚/��‚ info.n1=n6*info.bz; if(FL_V_ALG && uprc != NO_SCREEN) { infolist.add_record("Žâ­®è¥­¨¥ ”�‚/��‚",n6); infolist.add_record("� ¤¡ ¢ª ",info.bz); infolist.add_record("�¥§ã«ìâ â",info.n1); } return code_MDefault; } SysAlg27(&info,&r) { // ¤­¨ ¯®¢ë襭­®© ®¯« âë double n6; var m1=s98(0,n6); double n2; double k; if(m1 == 1) s97(info.d1,info.d2,n2,k,1); // ¤­¥¢­ë¥ else s96(info.d1,info.d2,n2,1); // ç á®¢ë¥ char t[20]; if((info.c=korrv(r,t,0,info.h,flagrow,jf)) != 1) return code_ReturnCode; info.n1=r[2]*n2*info.bz/100.; if(FL_V_ALG && uprc != NO_SCREEN) { infolist.add_record("� ¡®ç¥¥ ¢à¥¬ï",r[2]); infolist.add_record("‘â ¢ª ",n2); infolist.add_record("�à®æ¥­â",info.bz); infolist.add_record("�¥§ã«ìâ â",info.n1); } return code_Break; } SysAlg35(&info,&r) { double n2; double k; // ã祡­ë¥ ¤­¨, �‡-¯à®æ¥­â ®â áâ ¢®ç­®© ®¯« âë ¤­ï s97(data+.01,data+countday/100.,n2,k,1); if(nkalend == knorm) // ¥á«¨ áâப  áç¨â ¥âáï ¯® ®á­®¢­®¬ã £à ä¨ªã ‹‘ r[2]=dney_v_tab("“",calm,info.z1,info.z2); char t[20]; if((info.c=korrv(r,t,0,info.h,flagrow,jf)) != 1) return code_ReturnCode; info.n1=r[2]*n2*info.bz/100.; if(FL_V_ALG && uprc != NO_SCREEN) { infolist.add_record("“祡­ë¥ ¤­¨",r[2]); infolist.add_record("‘â ¢ª ",n2); infolist.add_record("�à®æ¥­â",info.bz); infolist.add_record("�¥§ã«ìâ â",info.n1); } return code_Break; } SysAlg96_97_186_187(&info,&r) { r[2] = DefineSevS(mrasch, info.d1, info.d2)*100.; double r9; if(info.kod_alg == 97 || info.kod_alg == 187) // ”‡� s1001simv("1","­",info.d1,info.d2,0,ST_RK,r9,2,0); if(info.kod_alg == 96 || info.kod_alg == 186) // ”Œ� s1001simv("2","­",info.d1,info.d2,0,ST_RK,r9,2,0); char t[20]; if((info.c=korrv(r,t,0,info.h,flagrow,jf)) != 1) return code_ReturnCode; info.n1=r9*r[2]/100.; if(FL_V_ALG && uprc != NO_SCREEN) { infolist.add_record("‘㬬 ",r9); infolist.add_record("‘¥¢¥à­ë© ¯à®æ¥­â",r[2]); infolist.add_record("�¥§ã«ìâ â",info.n1); } return code_Break; } DefineSevS(month, d1, d2) { return PriorityCall("UserDefineSev","SysDefineSev",month, d1, d2); } SysDefineSev(month, d1, d2) { return DefineSev(month, d1, d2); /* double proc_sev = 0; char Str_Work[11]; double p1,p2; kch_from("data_r",Str_Work); // ¤ â  ஦¤¥­¨ï var DR=CreateObject("KDate"); DR.SetDate(static_cast_to_string(Str_Work)); DR.ImproveDay(); if ( kch_tip_ps("sever")!='T' ) kch_from("sever",Str_Work); else { char StrStag[81]; var D = CreateObject("KDate"); D.SetDateII(1,month); GetKchDate("sever",Str_Work,10,D); GetKchValue("sever",StrStag,50,D); var DateBeg = CreateObject("KDate"); DateBeg.SetDate(static_cast_to_string(Str_Work)); DateBeg.ImproveDay(); var DatTmp = CreateObject("KDate"); DatTmp.SetDate(static_cast_to_string(StrStag)); DatTmp.ImproveDay(); if ( !DatTmp.IsEqI(INVALID_DATE_VALUE) && DateBeg.IsEqI(INVALID_DATE_VALUE) ) DateBeg.SetDate(DatTmp.GetStr()); else if ( !DateBeg.IsEqI(INVALID_DATE_VALUE) && Str_Cmp(StrStag," "," ") ) { // �â® §­ ç¨â çâ® ¢ Š— § ¤ ­®: ­  â ªãî â® ¤ âã ã 祫®¢¥ª  ¡ë« â ª®©-â® áâ ¦ // ¨ ­ ¬ ­ ¤® áç¨â âì á ãç¥â®¬ íâ¨å ¤ ­­ëå var Param = CreateObject("ParamFuncRW"); Param.IInitial(static_cast_to_string(StrStag),",./|;()[]<>\\- «£‹ƒ¬ŒmM¤„",3); int CountParam = Param.Count(); if ( CountParam ) { int off_year=atoi(Param.Get(0)); int off_m =0, off_d=0; if ( CountParam>1 ) off_m=atoi(Param.Get(1)); if ( CountParam>2 ) off_d=atoi(Param.Get(2)); if ( off_year>-1 && off_m>-1 && off_d>-1 ) { int CountM = off_year*12+off_m; DateBeg.SetDateII(DateBeg.GetDay(), DateBeg.GetAbs()-CountM); DateBeg.SetDateD(DateBeg.GetOffs(-off_d)); } } } stccpy(Str_Work,DateBeg.GetStr('.'),11); } var DS=CreateObject("KDate"); DS.SetDate(static_cast_to_string(Str_Work)); DS.ImproveDay(); var MRasch=CreateObject("KMonth"); MRasch.SetMonth(month); // à áç¥â­ë© ¬¥áïæ if(MRasch.GetAbs()-DR.GetAbs() <= 360 && !DR.IsEqI(INVALID_DATE_VALUE) ) procent_ot_staga(80,"sever",1,0,1,EOF,d1,d2,proc_sev); // ᥢ¥à­ë¥ ¤® 30 «¥â else // ®¡ëç­ë¥ ᥢ¥à­ë¥ tabl=81; { procent_ot_staga(80,"sever",1,0,1,EOF,d1,d2,p1); procent_ot_staga(81,"sever",1,0,1,EOF,d1,d2,p2); if(p1 == p2) proc_sev=p1; // ᥢ¥à­ë¥ ¯®«­®áâìî else { if( (DR.GetAbs()+360 < DS.GetAbs() && !DS.IsEqI(INVALID_DATE_VALUE) ) || DR.IsEqI(INVALID_DATE_VALUE)) // ᥢ¥à­ë© áâ ¦ ­ ç «áï procent_ot_staga(81,"sever",1,0,1,EOF,d1,d2,proc_sev);// ¯®á«¥ 30 «¥â¨ï else { DR.SetMonthYear(DR.GetMonth(),DR.GetYear()+30); // 30 «¥â¨¥ // �¥®¡å®¤¨¬® ¢ëç¨á«¨âì "ᬥ饭¨¥" ¤«ï ¤ âë ­ ç «  áâ ¦ : // 1) Š®«-¢® ¬¥áïæ¥¢ ¤® 30-«¥â¨ï ¨¤¥â "¬¥áïæ §  ¤¢ " (­® ⮫쪮 // ¯®á«¥ ¯¥à¢ëå 12 ¬¥áïæ¥¢, ¯¥à¢ë¥ 12 ¬¥áïæ¥¢ áç¨â îâáï ®¤¨­ ª®¢®, çâ® // ¤® 30 «¥â, çâ® ¯®á«¥ 30 «¥â) var i=DR.GetAbs()-DS.GetAbs(); if(i-12 >= 0) i=(i-12)*2+12; // else i=0; // ­¥ ­ ¤® ­¨ç¥£® ®¡­ã«ïâì - ¡¥à¥¬ ¬¥áïæë ®¤¨­ ª ®¤­®¬ã! // 2) Š®«-¢® ¬¥áïæ¥¢ ¯®á«¥ 30-«¥â¨ï ¨¤ãâ ®¤¨­ ª ®¤­®¬ã i += month-DR.GetAbs(); var DS1=CreateObject("KDate"); DS1.SetDateII(DS.GetDay(),month-i); procent_ot_staga(81,"",1,0,1,EOF,DS1.GetDouble(),d2,proc_sev);// ¯®«ã稫¨ % á ãç¥â®¬ 30 «¥â¨ï } } } double Epsilon = 0.0000001; return proc_sev / 100.; */ } SysAlg7_10_47(&info,&r) // 7: /* ®¯« â  "¯® á।­¥¬ã"; �‡-¯à®æ¥­â ¢ë¯« âë */ // 47: /* ¢ë室­®¥ ¯®á®¡¨¥ */ // 10: /* ¤®¯« â  ¤® á।­¥£®; �‡-¯à®æ¥­â ¢ë¯« âë */ { struct Struct_Alg Work; Get_AlgWithParam(Work,info.ikod); // 31.01.1995 // Work.Count_Par - ç¨á«® ¯ p ¬¥âp®¢ ¤«ï ª®¤   «£®p¨â¬  //-- ¯ à ¬¥âà 1 - ᨬ¢®« ¤«ï â ¡¥«ï char SimvTab[2]; SimvTab="ƒ"; // Work.Count_Par - ç¨á«® ¯ p ¬¥âp®¢ ¤«ï ª®¤   «£®p¨â¬  //-- ¯ à ¬¥âà 1 - ᯨ᮪ ᨬ¢®«®¢ á㬬¨à®¢ ­¨ï if(Work.Count_Par > 0) { char Simv = reinterpret_cast_to_string(Work.List_Par[0])[0]; if ( Simv>' ' ) SimvTab[0]=Simv; } // Œ¥áïæ, á ª®â®à®£® ­ã¦¥­ ãç¥â 㢥«¨ç¥­¨ï // áâ ¢ª¨ ¢ ¯¥à¨®¤¥ ®â¯ã᪠ ¨ "¯® á।­¥¬ã" double DATA_M_SRED=199501.; double Eps = 0.000001; double r9=0.; int FLAG_M_SRED; char str[256]; char t[20]; if ( strlen(GetCommonCnf("FL_M_SRED","r0alg",str,10)) < 1 ) FLAG_M_SRED = 1; else FLAG_M_SRED = atoi(str); //--- ¢á¯®¬®£ â¥«ì­ë© ¢ë¢®¤ áâப¨ r[2]=r[2]-info.h[2]; // ãç¥â ¤«ï á«ãç ï ¯¥à¥áç¥â  indstr(scr04,mrasch,windrow,r,t,1); r[2]=r[2]+info.h[2]; // ãç¥â ¤«ï á«ãç ï ¯¥à¥áç¥â  var Dat=CreateObject("KDate"); var PoSredn = CreateObject("KCalcSredn"); if ( PoSredn.InitSredn(info.crow,info.kod_alg,Dat,uprc!=NO_SCREEN?2:0)==ESC ) return code_Break; // - § ¯¨áì ¨§¬¥­¥­¨© ¢ â ¡¥«ì ‹‘ ¯¥à¥¤ ¢ë§®¢®¬ tabl_sredn s145(colc2,1); //--- ¯®¤áç¥â á।­¥£® §  ¥¤¨­¨æã ¢à¥¬¥­¨ PoSredn.Calculate(0,2); // if (uprc==3) menuras(0); // ¯¥à¥¢ë¢®¤ ¬¥­î à áç¥â  var Nastr = PoSredn.GetNastr(); double d1m= Nastr.GetMonthSr().GetDouble(); //--- ¯®¤áç¥â �‚ ¨ ¥£® § ¯à®á if ( info.kod_alg == 7 ) // 7 -"¯® á।­¥¬ã" { int day1=Nastr.GetDateSr().GetDay(), day2=Nastr.GetDateEndSr().GetDay(); zamena_simv_v_tab(simv_nr,SimvTab,calm,day1,day2,info.crow,0); if (nkalend==knorm) /* ¥á«¨ áâப  áç¨â ¥âáï ¯® ®á­®¢­®¬ã £à ä¨ªã ‹‘ */ { if ( Nastr.GetNastr(TIP_RV)==1) r[2]=dney_v_tab(SimvTab,calm,day1,day2); else skoljko(r[2],data,day1,day2,SimvTab,calm,cht); } } if ( info.kod_alg == 10 ) // 10 - ¤®¯« â  ¤® á।­¥£® { if (nkalend==knorm) /* ¥á«¨ áâப  áç¨â ¥âáï ¯® ®á­®¢­®¬ã £à ä¨ªã ‹‘ */ { if (Nastr.GetNastr(TIP_RV)==1) r[2]=dney_v_tab(rsimv,calm,info.z1,info.z2); else skoljko(r[2],data,info.z1,info.z2,rsimv,calm,cht); } } if ( (info.c=korrv(r,t,0,info.h,flagrow,jf)) != 1 ) return code_ReturnCode; // 20.03.95 //--- ¯®¤áç¥â á㬬ë double stavka_1d, stavka_p, koef=1.; int flag_tarif=0; // ⨯ ®á­®¢­®© ®¯« âë: 0-®ª« ¤, 1-â à¨ä if ( FLAG_M_SRED ) { if ( info.kod_alg!=47 && KDateFromD(data).GE(KDateFromD(DATA_M_SRED)) ) { // !=47 - ­¥ ¢ë室­®¥ ¯®á®¡¨¥ ¨ ¤«ï ¬¥áïæ¥¢ á 01.95 // - § ¯¨áì ¨§¬¥­¥­¨© ¢ â ¡¥«ì ‹‘ ¯¥à¥¤ ¢ë§®¢®¬ s50 s145(colc2,1); int mvrem=mrasch; // ===== ãç¥â, çâ® ¢ â¥ç¥­¨¥ ®¯« âë ¨«¨ ¤®¯« âë "¯® á।­¥¬ã" // ¬®£«  ¨§¬¥­ïâìáï áâ ¢ª  // --- à áç¥â áâ ¢ª¨ ­  �€—€‹Ž ®¯« âë ¨«¨ ¤®¯« âë "¯® á।­¥¬ã" s50(absmec(d1m)); s97(d1m,d1m,stavka_1d,r9,2); if ( nabs(r9)>Eps ) flag_tarif=1; if (flag_tarif==0) // ®ª« ¤­¨ª¨ - áâ ¢ª  ¢ ¬¥áïæ stavka_1d=stavka_1d*norm(1); else // â à¨ä­¨ª¨ - áâ ¢ª  ¢ ç á s96(d1m,d1m,stavka_1d,3); //--- à áç¥â áâ ¢ª¨ ­  �…�ˆŽ„ ®¯« âë ¨«¨ ¤®¯« âë // "¯® á।­¥¬ã" ¢ ¬¥áïæ¥ mrasch s50(mvrem); if (flag_tarif==0) { // ®ª« ¤­¨ª¨ - áâ ¢ª  ¢ ¬¥áïæ if (info.kod_alg==10) s97(info.d1,info.d2,stavka_p,r9,4); else s97(info.d1,info.d2,stavka_p,r9,SimvTab[0]); stavka_p=stavka_p*norm(1); } else { // â à¨ä­¨ª¨ - áâ ¢ª  ¢ ç á if (info.kod_alg==10) s96(info.d1,info.d2,stavka_p,5); else s96(info.d1,info.d2,stavka_p,300+SimvTab[0]); } // - ­ å®¦¤¥­¨¥ ª®íä䍿¨¥­â  if (nabs(stavka_1d)>Eps) koef=stavka_p/stavka_1d; if (nabs(koef)<1.) koef=1.; // - § ¯à®á, ­ã¦­® «¨ 㢥«¨ç¨¢ âì if ( uprc!=NO_SCREEN && nabs(r[2])>Eps && nabs(PoSredn.SumSredn())>Eps && nabs(info.bz)>Eps && nabs(koef)>1.-Eps /* && !func[4] */ ) // ¯à¨ func[4]=1 ( ¢â®¬ â.à áç¥â) - ­¥ § ¯à è¨¢ âì (???) { //- ¢á¯®¬®£ â¥«ì­ë© ¯¥à¥¢ë¢®¤ áâப¨ r[2]=r[2]-info.h[2]; // ãç¥â ¤«ï á«ãç ï ¯¥à¥áç¥â  indstr(scr04,mrasch,windrow,r,t,1); r[2]=r[2]+info.h[2]; // ãç¥â ¤«ï á«ãç ï ¯¥à¥áç¥â  //- § ¯à®á ª®íää-â  zaprosd(scr04,windrow+1,0, "‚ ¯¥à¨®¤ ®¯« âë 㢥«¨ç¨« áì áâ ¢ª . “¢¥«¨ç¨¢ âì á㬬㠭  ###### ? (0-­¥â)", 6,koef,koef,-summax,summax,13); if (nabs(koef) 0) { int i = atoi(reinterpret_cast_to_string(Work.List_Par[0])); if ( i>0 ) NumSet = i; } // ‚ëá«ã£  «¥â // 17.04.97 //procent_ot_staga(78,"datavys",1,0,31,info.crow,d1,d2,&n3); //¯®-áâ à®¬ã double n3; procent_ot_staga(NumSet,"datavys",1,0,1,info.crow,info.d1,info.d2,n3); // n3 - % ®â áâ ¦  double n6; s98(0,n6); r[2]=n6*norm(1); // r[2] - ®âà ¡®â ­­ëå ¤­¥© char t[20]; if((info.c=korrv(r,t,0,info.h,flagrow,jf)) != 1) return code_ReturnCode; double n2; double n5; s97(info.d1,info.d2,n2,n5,1); // n2 - ¤­¥¢­ ï áâ ¢ª  info.n1=r[2]*n2*n3/100.; if(FL_V_ALG && uprc != NO_SCREEN) { infolist.add_record("”�‚ ¤­¨",r[2]); infolist.add_record("‘â ¢ª ",n2); infolist.add_record("�à®æ¥­â ¢ëá«ã£¨",n3); infolist.add_record("�¥§ã«ìâ â",info.n1); } return code_Break; } SysAlg184(&info,&r) { // �®«¥¢ë¥ var pcW; struct Struct_Alg Work; Get_AlgWithParam(Work,info.ikod); // 31.01.1995 // Work.Count_Par - ç¨á«® ¯ p ¬¥âp®¢ ¤«ï ª®¤   «£®p¨â¬  //-- ¯ à ¬¥âà 1 - ᯨ᮪ ᨬ¢®«®¢ á㬬¨à®¢ ­¨ï if(Work.Count_Par > 0) pcW=Work.List_Par[0]; else pcW=reinterpret_cast_to_long(rsimv); r[2]=dney_v_tab(reinterpret_cast_to_string(pcW),calm,info.z1,info.z2); char t[20]; if((info.c=korrv(r,t,0,info.h,flagrow,jf)) != 1) return code_ReturnCode; info.n1=r[2]*info.bz; if(FL_V_ALG && uprc != NO_SCREEN) { infolist.add_record("‘¨¬¢®«ë â ¡¥«ï",reinterpret_cast_to_string(pcW)); infolist.add_record("—¨á«® ¤­¥©",r[2]); infolist.add_record("‘㬬  §  ¤¥­ì",info.bz); infolist.add_record("�¥§ã«ìâ â",info.n1); } return code_Break; } SysAlg185(&info,&r) { // ¯¨â ­¨¥ var n3=dney_v_tab("��‘",calm,info.z1,info.z2); r[2]=norm(1)-n3; char t[20]; if((info.c=korrv(r,t,0,info.h,flagrow,jf)) != 1) return code_ReturnCode; info.n1=r[2]*info.bz/norm(1); if(FL_V_ALG && uprc != NO_SCREEN) { infolist.add_record("�®à¬ ",norm(1)); infolist.add_record("�ணã«ë, ‘¯à ¢ª¨, �¥à ¡.",n3); infolist.add_record("� ¡®ç¨¥ ¤­¨",r[2]); infolist.add_record("�  ¯¨â ­¨¥",info.bz); infolist.add_record("�¥§ã«ìâ â",info.n1); } return code_Break; } SysAlg215(&info,&r) { // ‘“ŒŒ€=�‡ if(info.n1 == 0.) info.n1=info.bz; return code_MDefault; } SysAlg218(&info,&r) { //  «¨¬¥­âë // 06.10.1999 struct Struct_Alg Work; int TypeCalc = 0; Get_AlgWithParam(Work,info.ikod); // Work.Count_Par - ç¨á«® ¯ p ¬¥âp®¢ ¤«ï ª®¤   «£®p¨â¬  //-- ¯ à ¬¥âà 1 - ⨯ à áç¥â  ( ¯® 㬮«ç ­¨î = 0, ¯® ¬¥áïæã ¯à¨­ ¤«¥¦­®áâ¨, 1 - ¯® ¬¥áïæã ­ ç¨á«¥­¨ï) if(Work.Count_Par > 0) TypeCalc = atoi(reinterpret_cast_to_string(Work.List_Par[0])); double n3=0.; double n4=0.; if ( TypeCalc==1 || TypeCalc==2 ) { toMatrLS(); var CurProp = GetCurPropCountLS(); if ( TypeCalc==1 ) { //--- ¢ë¡®àª  ­ ç¨á«¥­¨© §  ⥪ã騩 ¬¥áïæ info.n1 = s1001simv_mvProp("1",info.d1,info.d2,mrasch,ST_ALIMENT,2, CL_EXACT | CL_MV | CL_NACH, CurProp); //--- ¢ë¡®àª  㤥ঠ­¨© §  ⥪ã騩 ¬¥áïæ n3 = s1001simv_mvProp("1",info.d1,info.d2,mrasch,ST_ALIMENT,2, CL_EXACT | CL_MV | CL_UD, CurProp); } else { //--- ¢ë¡®àª  ­ ç¨á«¥­¨© §  ⥪ã騩 ¬¥áïæ info.n1 = CollectSummPropSimv("1", ST_ALIMENT, 0, mrasch, CL_MV | CL_COL | CL_NACH, CurProp); //--- ¢ë¡®àª  㤥ঠ­¨© §  ⥪ã騩 ¬¥áïæ n3 = CollectSummPropSimv("1", ST_ALIMENT, 0, mrasch, CL_MV | CL_COL | CL_UD, CurProp); } } else { //--- ¢ë¡®àª  ­ ç¨á«¥­¨© §  ⥪ã騩 ¬¥áïæ s1001simv("1","­",info.d1,info.d2,0,ST_ALIMENT,info.n1,2,0); // 08.11.95 //--- ¢ë¡®àª  㤥ঠ­¨© §  ⥪ã騩 ¬¥áïæ s1001simv("1","ã",info.d1,info.d2,0,ST_ALIMENT,n3,2,0); //--- ¢ë¡®àª  㤥ঠ­¨© §  ¯à®è«ë© ¬¥áïæ, ¥á«¨ ®­¨ ­ §­ ç¥­ë s1001simv("2","ã",info.d1,info.d2,-1,ST_ALIMENT,n4,2,0); } var t_nu=info.n1-n3-n4; info.n1=info.n1-n3-n4; info.n1=info.n1*info.bz/100.; if(FL_V_ALG && uprc != NO_SCREEN) { infolist.add_record("‘⮫¡¥æ ’/‚",ST_ALIMENT+1); infolist.add_record("� ç¨á«. - “¤¥à¦¥à¦ ­®",t_nu); infolist.add_record("�à®æ.  «¨¬¥­â®¢",info.bz); infolist.add_record("�¥§ã«ìâ â",info.n1); } var simv=poiskprch(info.ikod); if(simv == 4) { char str[256]; char str1[256]; Rkv_from(GetCode(info.crow),"¤®«£",str1,str); // „®«£ ¯®  «¨¬¥­â ¬ 㬥­ìè ¥âáï ¯à¨ ¯¥à¥å®¤¥ // ¢ ­®¢ë© ¬¥áïæ ­  á㬬ã, ¢ëç¨á«¥­­ãî ­¨¦¥ var r9=atof(str); if(r9 && r9 < info.n1) { // „®«£ ¯®  «¨¬¥­â ¬ ¢¥¤¥âáï ¨ // ¤®«£ ¯®  «¨¬¥­â ¬ < áã¬¬ë  «¨¬¥­â®¢ char str1[80]; sprintf(str1,"„®«£ ¯®  «¨¬¥­â ¬ %-8.2f",r9); if(uprc != NO_SCREEN) vwriteat(scr04,windrow+1,0,str1); info.n1=r9; } } return code_MDefault; } SysAlg225(&info,&r) { // ¯à®äá.¢§­®áë double r9; s1001("­",info.d1,info.d2,0,ST_PROFS,r9,2); // 08.11.95 info.n1=static_cast_to_long(r9)*0.01; if(FL_V_ALG && uprc != NO_SCREEN) { infolist.add_record("‘⮫¡¥æ â/¢",ST_PROFS+1); infolist.add_record("‚롮ઠ",r9); infolist.add_record("�à®æ¥­â",1.); infolist.add_record("�¥§ã«ìâ â",info.n1); } return code_MDefault; } SysAlg228(&info,&r) { // ¯¥à¥ç¨á«¥­¨¥ ç áâ¨, ¥á«¨ ¥áâì (­  á¡/ª ááã, ¯® ¯®çâ¥); // �‡ - ¬¥áïç­ ï á㬬  ¯¥à¥ç¨á«¥­¨ï if(info.n1 == 0.) { toMatrLS(); var n7=CollectSummProp( 'a',0,mrasch, CL_MV|CL_COL| CL_REAL|CL_SOURCE, GetCurPropCountLS() ); var n6 = CollectSummProp(info.kod,mrasch,mrasch, CL_M|CL_MV|CL_REAL|CL_SOURCE|CL_EXACT,GetCurPropCountLS()); n7 += n6; //n7=sum[1]-sum[5]; /* sum[1]-¢á¥£® ­ ç¨á«¥­® */ // sum[5]-¢á¥£® 㤥ঠ­® if(n7+0.001-info.bz < 0.) info.n1=0.; else info.n1=info.bz; } return code_MDefault; } SysAlg255_256(&info,&r) { /* ¯®çâ®¢ë© á¡®à - kod_alg==255 */ /* ¢®§¢à â ¯®ç⮢®£® á¡®à  - kod_alg==256*/ if ( info.kod_alg=255 && (info.b3==B3_OTPUSK || info.b3==B3_UVL || mrasch!=mtek) ) return code_MDefault; /* �‡ - ¢­¥è­¨© ª®¤ ¢¨¤ , ­  ª®â®àë© ­ ªàã稢 ¥âáï á¡®à*/ /* à ááç¨â뢠¥âáï ⮫쪮 ¯à¨ "� áç¥â¥ §  ¬¥áïæ" */ /* ¤«ï ⥪ã饣® ¬¥áïæ  */ { /* ‘«¥¤ãî騥 ¯¥à¥¬¥­­ë¥ ¯à¥¤­ §­ ç¥­ë ¤«ï ­ áâனª¨ à áç¥â  ¢¨¤ : */ int reg=2; /* ०¨¬ ®ªà㣫¥­¨ï áã¬¬ë ¤«ï ¯®ç⮢®£® á¡®à : 0 - ®ªà㣫ïâì, 1 - ®â¡à á뢠âì, 2 - ¤®¯®«­ïâì*/ double _do=1.; /* á㬬  ¤«ï ¯®ç⮢®£® á¡®à  ®ªà㣫ï¥âáï (®â¡à á뢠¥âáï, ¤®¯®«­ï¥âáï) ¤® 㪠§ ­­®© ¢ _do ¢ àã¡«ïå ¢¥«¨ç¨­ë, ­ ¯à¨¬¥à, _do=1000.; - ¤® âëáïç¨ àã¡«¥©. */ double dop_sum=0.; /* ¤®¯®«­¨â¥«ì­ ï á㬬 , ¯à¨¡ ¢«ï¥¬ ï ª ¯®ç⮢®¬ã á¡®àã ¢­¥ § ¢¨á¨¬®á⨠®â ­ ç¨á«¥­­®© áã¬¬ë ¯®ç⮢®£® á¡®à  */ double oldsumm=0.; char str_proc[256],str_comm[256]; int setka=0; double kod_rkv=info.kod; // ¢ëç¨á«ï¥¬ ¢­ãâ७­¨© ª®¤ double int_kod=Extern_To_InternE(info.bz); if ( int_kod<0. ) return code_MDefault; toMatrLS(); // ¤«ï á«ãç ï ¢®§¢à â  ¯/á¡®à  ¢ëç¨á«ï¥¬ á㬬㠯® ­¥¬ã // ¨ ¥£® �‡ if ( info.kod_alg == 256 ) { kod_rkv = int_kod; oldsumm = CollectSummProp(int_kod,0,mrasch, CL_MV | CL_EXACT | CL_SOURCE, GetCurPropCountLS()); poiskbz(0,int_kod,1," ",int_kod); int_kod=Extern_To_InternE(int_kod); } struct Struct_Alg Work; Get_AlgWithParam(Work,kod_rkv+0.000001); // 14.01.98 // Work.Count_Par - ç¨á«® ¯ p ¬¥âp®¢ ¤«ï ª®¤   «£®p¨â¬  //-- ¯ à ¬¥âà 1 - ¢¥«¨ç¨­  ¤® ª®â®à®© ®ªà㣫ï¥âáï (®â¡à á뢠¥âáï, // ¤®¯®«­ï¥âáï) á㬬  ¤«ï ¯®ç⮢®£® á¡®à  (¯® 㬮«ç ­¨î ¤® 1 àã¡.) if (Work.Count_Par>0) { double i = atof(reinterpret_cast_to_string(Work.List_Par[0])); if ( i>=0 ) _do=i; } var Dat = CreateObject("KDate"); Dat.SetDate("01.01.1998"); if ( mrasch1) { int i=atoi(reinterpret_cast_to_string(Work.List_Par[1])); if (0<=i && i<=2 ) reg = i; } //-- ¯ à ¬¥âà 3 - ¤®¯®«­¨â¥«ì­ ï á㬬  ª ¯®ç⮢®¬ã á¡®àã // (¯® 㬮«ç ­¨î ¡¥à¥âáï 0) if (Work.Count_Par>2) { double i=atof(reinterpret_cast_to_string(Work.List_Par[2])); if (i>=0) dop_sum=i; } //-- ¯ à ¬¥âà 4 - ¬¨­¨¬ «ì­ ï á㬬  ¯®ç⮢®£® á¡®à , ®¯à¥¤¥«ï¥â // á㬬㠬¥­ìè¥ ª®â®à®© ¯®çâ®¢ë© á¡®à ¡ëâì ­¥ ¬®¦¥â double min_sum=0.; /* ¬¨­¨¬ «ì­ ï á㬬  ¯®ç⮢®£® á¡®à  */ if (Work.Count_Par>3) min_sum=atof(reinterpret_cast_to_string(Work.List_Par[3])); double sum_mes=0.,sum_for=0.; info.n1=0.; // ç¨â ¥¬ ¤®¯.४¢¨§¨âë Rkv_from(kod_rkv,"¯à®æ¥­â", str_comm,str_proc); double proc=atof(str_proc); // ¢ëç¨á«ï¥¬ ¯à®æ¥­â ¯® á¥âª¥ Rkv_from(kod_rkv,"á¥âª ", str_comm, str_proc); setka=atoi(str_proc); // …᫨ ­¥â á¥âª¨ ¨ ãáâ ­®¢«¥­ ­ã«¥¢®© ¯à®æ¥­â, â® ¡¥à¥¬ á¥âªã ¯® 㬮«ç ­¨î if (setka == 0 && nabs(proc)<0.0001) setka = 84; Rkv_from(int_kod,"­®¬_ᯨá",str_comm,str_proc); int numsp = atoi(str_proc); Rkv_from(int_kod,"ª®¬ã",str_comm,str_proc); string Who=str_proc; // ¢ëç¨á«ï¥¬ á㬬㠤«ï ®¡«®¦¥­¨ï for (int idxrow=0; idxrow0.00000001 && Sim_For_Intern_Cod(iCod,ST_PRCH) != '4') || GetEndDate(idxrow)<0.00001 ) continue; double kod = GetCode(idxrow); // …᫨ 㪠§ ­ ­®¬¥à ᯨ᪠, ⮠ᮡ¨à ¥¬ ¨­ä®à¬ æ¨î ¯® ¤à㣨¬ áâà®çª ¬ á â ª¨¬ ¦¥ ­®¬¥à®¬ if ( nabs(kod-int_kod)>0.00000001 ) { if ( !numsp ) continue; Rkv_from(kod,"­®¬_ᯨá",str_comm,str_proc); int num = atoi(str_proc); if ( numsp!=num ) continue; Rkv_from(kod,"ª®¬ã",str_comm,str_proc); if ( Str_Cmpi(str_proc,Who," .,;") ) continue; } if ( mrasch == mtek ) { for ( int mes=-P2MES;mes<=B2MES; mes++ ) sumvid("=â",kod,mes,sum_mes), sum_for+=sum_mes; } else { sum_for += CollectSummProp(kod,0,mrasch, CL_MV | CL_EXACT | CL_SOURCE, GetCurPropCountLS()); } } // ¯®çâ®¢ë© á¡®à ­  ®âà¨æ â¥«ì­ãî // á㬬㠭¥ ­ ç¨á«ï¥âáï if ( sum_for<0. ) sum_for = 0.; // ®ªà㣫¥­¨¥ áã¬¬ë ¤«ï ®¡«®¦¥­¨ï round2(sum_for,reg,_do,sum_for); // ¯à®¢¥à¨¬, ¥áâì «¨ ॣà¥áᨢ­ ï á¥âª  á ­ã¦­ë¬ ­®¬¥à®¬ // ‚®®¡é¥ ¦¥ ॣà¥áᨢ­ ï á¥âª , "§ è¨â ï" ¢  «£®à¨â¬ // ¢áâ㯨«  ¢ ¤¥©á⢨¥ ¯® ‘¢¥à¤«®¢áª®© ®¡« á⨠á 07.2002 int NumSetP = GetNumFileSetP(setka,-1, mrasch, 0); // ãç¥â ¯à®æ¥­â  ¯® á¥âª¥ int FlagRegress=0; // á 01.07.2002 ¯® ॣà¥áᨢ­®© 誠«¥ var DatRegr = CreateObject("KDate"); DatRegr.SetDate("01.07.2002"); if ( setka > 0 && NumSetP==EOF ) { double proc_value=0.; int CodOrg = GetOrgForPodr(GetPodrOfCod(info.kod)); if ( Value_Procent_SetkiO(setka,CodOrg,sum_for,data,proc_value) >=0 ) proc=proc_value; else if ( mrasch>=DatRegr.GetAbs() ) FlagRegress=1; } else if ( (proc<=0.001 && mrasch>=DatRegr.GetAbs()) || NumSetP!=EOF ) { // ¥á«¨ ­¥ § ¤ ­  ­¨ á¥âª  ­¨ ¯à®æ¥­â ¨«¨ ¥áâì ­®¬¥à ॣà¥áᨢ­®© á¥âª¨ FlagRegress=1; } // ᮡá⢥­­® à áç¥â if ( !FlagRegress ) info.n1=sum_for*proc*0.01; else if (sum_for>0.001) { if ( NumSetP!=EOF ) info.n1=CalculatedSumSetkaP(sum_for, NumSetP, proc, 2); else { if (FL_V_ALG&&uprc!=NO_SCREEN) infolist.add_record("�¥â ॣà¥á.á¥âª¨","�஢¥àì⥠ª®¤ á¥âª¨"); info.n1=0.; /* if ( sum_for+0.001>50000.00 ) info.n1 = 1810.00 + (sum_for-50000.00)*0.02; else if ( sum_for+0.001>25000.00 ) info.n1 = 1060.00 + (sum_for-25000.00)*0.03; else if ( sum_for+0.001>6000.00 ) info.n1 = 300.00 + (sum_for- 6000.00)*0.04; else if ( sum_for+0.001>200.00 ) info.n1 = sum_for*0.05; else info.n1 = 10.; */ } } // ¤®¯®«­¨â¥«ì­ ï á㬬  info.n1+=dop_sum; if (Work.Count_Par>3 && sum_for>0.001 && info.n13) infolist.add_record("Œ¨­. á㬬 ",min_sum); infolist.add_record("�¥§ã«ìâ â",info.n1); } } return code_MDefault; } SysAlg250(&info,&r) { /* ¯¥à¥ç¨á«¥­¨¥ ®áâ âª  (¯® ¯®çâ¥, ¢ ᡥઠááã); */ /* �‡ - ¤® ᪮«ìª¨ ®â¡à á뢠âì १ã«ìâ â ¤«ï ¯¥à¥¢®¤  */ /* (0 - á ª®¯¥©ª ¬¨) */ if ( info.b3==B3_OTPUSK || info.b3==B3_UVL || mrasch!=mtek) { info.kod_alg = 1000+'0'; return code_ReturnCode; } /* à ááç¨â뢠¥âáï ⮫쪮 ¯à¨ "� áç¥â¥ §  ¬¥áïæ" */ /* ¤«ï ⥪ã饣® ¬¥áïæ  */ //r9=sum[1]-sum[5]; /* Žáâ â®ª = � ç¨á«¥­® - “¤¥à¦ ­® */ toMatrLS(); double r9 = CollectSummProp('a',0,0,CL_MTEK|CL_COL|CL_REAL|CL_SOURCE,GetCurPropCountLS()); double n6 = CollectSummProp(info.kod,mtek,0,CL_M|CL_MTEK|CL_REAL|CL_SOURCE|CL_EXACT,GetCurPropCountLS()); r9 += n6; if ( r9>0.) { info.n1=r9; round2(info.n1,1,info.bz,info.n1); } else info.n1=0.; return code_MDefault; } GetListBZobsolete(ikod,dateB,dateE,bz,&pmap) //// ikod-ª®¤ ¢¨¤ ,dateB-¤ â  ­ ç « ,dateE-¤ â  ª®­æ ,bz-¡ §®¢®¥ §­ ç¥­¨¥,pmap-¬í¯ /// ‚ ®â«¨ç¨¥ ®â ä㭪樨 bz_kod - ¯®«ãç ¥¬ ‘�ˆ‘ŽŠ §­ ç¥­¨©, ¤¥©áâ¢ãîé¨å // ¢ ¯¥à¨®¤¥ [dateB,dateE] (¥á«¨ ª®­ç¥­® ¡§ § ª®¤¨à®¢ ­® ¨ ¡¥à¥âáï ¨§ á¥âª¨) //////////////// { // ¤®¯ã饭¨¥!!! …᫨ §­ ç¥­¨¥ bz_kod ­  ¤ âã ­ ç «  ¯¥à¨®¤  ¨ ­  ¤ âã ª®­æ  ¯¥à¨®¤  ®ª ¦¥âáï // ®¤­¨¬ ¨ ⥬ ¦¥, ¯à¥¤¯®« £ ¥¬, çâ® ®­® ¨ ­¥ ¬¥­ï«®áì! ˆ ¢®®¡é¥ ®âà ¡ â뢠¥¬ ¢ ¯à¥¤¯®«®¦¥­¨¨, // çâ® §­ ç¥­¨¥ ­  ¤ âã ª®­æ  ¢ 㪠§ ­­®¬ ¯¥à¨®¤¥ ­¥ ¯®¢â®àï¥âáï var Date = CreateObject("KDate"); double Epsilon = 0.0000001; double rzB=0.,rzE=0.; bz_kod(ikod,dateB,bz,rzB); bz_kod(ikod,dateE,bz,rzE); Date.SetDateD(dateB); Date.ImproveDay(); char key[256];sprintf(key,"%.2f",Date.GetDouble()); char value[256];sprintf(value,"%.2f",rzB); pmap.Add(static_cast_to_string(key),static_cast_to_string(value)); double rz=rzB; while ( nabs(rzB-rzE)>Epsilon ) { while(nabs(rzB-rz)1 ) { //¢ëç¥â ­ ¬ ­ã¦¥­ ¯® ¢á¥¬ ¨áâ®ç­¨ª ¬ var ts = CreateObject("TempCommonSrc"); ts.TempCommonSrcInitial(CMN_SRC_COUNT_LS); var Src=CreateObject("APropBE"); SetCommonProp(CMN_SRC_COUNT_LS,Src); sumVychIspolz = GetDiscount311(mrasch-mtek-mcal+1,mrasch-mtek-1); } if (Sim=="*") //­ã¦­® ãç¥áâì ¯à¥¤®áâ ¢«¥­­ë¥ ¢ëç¥âë ¯® ®áâ «ì­ë¬ ¨áâ®ç­¨ª ¬ { sumVychIspolz+= GetDiscount311(mrasch-mtek,mrasch-mtek); //¤®¡ ¢«ï¥¬ á㬬㠯® 311 ¢ëç¥âã §  ⥪. ¬¥áïæ (¢á¥ ¨áâ®ç­¨ª¨) sumVychIspolz-= CashSumm(0,info.kod,mrasch,0,32,CL_EXACT|CL_M,0);//㡨ࠥ¬ á㬬㠯® ⥪ã饬㠢¨¤ã } double sumVychMes = min(NDFLBase,info.bz-sumVychIspolz); // C㬬  // …᫨ ¯®«ã祭­ë© ¢ëç¥â ¬¥­ìè¥ ­ã«ï (¡ë«¨ ¯¥à¥áç¥âë ­  ¬¨­ãá ¨«¨ ­¥â ¤®å®¤ , ­® ¥áâì áâ ­¤ àâ­ë¥ ¢ëç¥âë) // ¢ í⮬ á«ãç ¥ ¬ë ¬®¦¥¬ ®âà¨æ â¥«ì­ãî á㬬㠢§ïâì ­¥ ¡®«ìè¥, 祬 ¯à¥¤®¤áâ ¢¨«¨ ¢ëç¥â®¢ ¢ ¯à¥¤ë¤ãé¨å ¬¥áïæ å if ( sumVychMes<0. ) if ( sumVychIspolz>-0.0001 ) sumVychMes = max(sumVychMes,-sumVychIspolz); else sumVychMes = 0.; info.n1 = sumVychMes; if(FL_V_ALG && uprc != NO_SCREEN) { infolist.add_record("Ž¡« £ ¥¬ ï ¡ §  �„”‹ §  ¬¥áïæ", NDFLBase); infolist.add_record("ˆá¯®«ì§®¢ ­® ¢ëç¥â  à ­¥¥", sumVychIspolz); infolist.add_record("‚ëç¥â §  ¬¥áïæ", info.n1); } return code_Break; } SysAlg897 ( &info, &r ) /* „®¯« â  ¤® Œ�Ž’ */ { double Epsilon = 0.00001; struct Struct_Alg Work; //§­ ç¥­¨ï ¯ à ¬¥â஢ ¯® 㬮«ç ­¨î: 19,86,0,0,0,0 Get_AlgWithParamEx(Work, info.ikod, "19,86,0,0,0,0,4"); //-- ¯ à ¬¥âà 1 - á⮫¡¥æ â ¡«¨æë ¢å®¤¨¬®á⨠(¯® 㬮«ç ­¨î 25) int stolbec =19; int param=atoi(reinterpret_cast_to_string(Work.List_Par[0])); if ( param>0 && param<=99 ) stolbec=param; //-- ¯ à ¬¥âà 2 - �®¬¥à á¥âª¨ ¤«ï Œ�Ž’ (¯® 㬮«ç ­¨î 86) int numberSet=86; param=atoi(reinterpret_cast_to_string(Work.List_Par[1])); if ( param>0 ) numberSet = param; //-- ¯ à ¬¥âà 3 - �®¬¥à áâப¨ ¢ á¥âª¥ (¯® 㬮«ç ­¨î 0) int rowSet=0; param=atoi(reinterpret_cast_to_string(Work.List_Par[2])); if ( param > 0 && param <= 999) rowSet=param; //-- ¯ à ¬¥âà 4 - ’¨¯ ”�‚: // 0 - ¢ ç á å (¯® 㬮«ç ­¨î) // 1 - ¢ ¤­ïå bool bHours= atoi(reinterpret_cast_to_string(Work.List_Par[3]))==0; int idxNorm = bHours?2:1; //-- ¯ à ¬¥âà 5 - “¢¥«¨ç¨âì Œ�Ž’ ­  �Š ¨ ‘¥¢¥à­ë¥ (¯®áâ ­®¢«¥­¨¥ Š‘ ®â 07.12.2017 ü 38-�) // 0 - ¤®¯« â  ¤® "ç¨á⮣® Œ�Ž’" (¯® 㬮«ç ­¨î) // 1 - ¤®¯« â  ¤® "Œ�Ž’*(�Š + ‘¥¢¥à­ë¥)" bool bUseRk=atoi(reinterpret_cast_to_string(Work.List_Par[4]))!=0; //-- ¯ à ¬¥âà 6 - Žá®¡¥­­®á⨠à áç¥â  ¤®¯« âë (ä« £¨): // 0x01 - ­¥ à ááç¨â뢠âì ¤®¯« âã, ¥á«¨ ”�‚/��‚<1 // 0x02 - Ž£à ­¨ç¨âì ”�‚/��‚ ¥¤¨­¨æ¥© // 0x04 - ¢ëç¨á«ïâì ”�‚/��‚ ç¥à¥§ s98() // 0x08 - ­¥ § ¯®«­ïâì â ¡¥«ì (§ ¢®¤ïâ ¢¨¤ "­ ¢á¥£¤ " ¨ ­¥ å®âïâ ç⮡ë ã 㢮«¥­­ëå ¤¥« «áï à áç¥â) // 0x10 - ­¥ § ¯®«­ïâì �‚ ¢ ¢¨¤¥ (¬¥è ¥âáï ¢ ᢮¤ å ¨ ¢ë¡®àª å) int Flag=atoi(reinterpret_cast_to_string(Work.List_Par[5])); bool calcOnlyFullMonth=(Flag & 0x01)!=0; bool limitFrv =(Flag & 0x02)!=0; bool useS98 =(Flag & 0x04)!=0; bool fillTabel =(Flag & 0x08)==0; bool fillRv =(Flag & 0x10)==0; //-- ¯ à ¬¥âà 7 - ’¨¯ ­¥¯®«­®âë ¤«ï ¢ë¡®àª¨ á㬬: int tipnep=atoi(reinterpret_cast_to_string(Work.List_Par[6])); double frv_nrv=1.; if(fillTabel) worktime(info.crow,info.b3,0); /* § ¯®«­¥­¨¥ à ¡®ç.¤­¥© ¢ â ¡¥«¥ */ //”�‚ if (useS98) s98(0,frv_nrv); else { if (nkalend==knorm) { if (!bHours) r[2]=dney_v_tab(rsimv,calm,info.z1,info.z2); else skoljko(r[2],data,info.z1,info.z2,rsimv,calm,cht); } char t[20]; if(fillRv && (info.c=korrv(r,t,0,info.h,flagrow,jf)) != 1) return code_ReturnCode; frv_nrv=r[2]/norm(idxNorm); } // „® 04.2018 ¡ë«® ®ªà£ã«¥­¨¥ ª®íä䍿¨¥­â . “¡à «¨ ¥£® ⮫쪮 á 04.2018 // ç⮡ë 㠫© ­¥ ¯®«¥§ ¯¥à¥áç¥â §  ¯à®è«ë¥ ¬¥áïæë ­  ª®¯¥©ª¨. if ( mrasch<364 ) roundd(frv_nrv, 2, frv_nrv); if ( limitFrv && frv_nrv>1+Epsilon ) frv_nrv=1.; //á㬬  ¢ë¡®àª¨ double summ=0.; s1001("­",info.d1,info.d2,0,stolbec-1,summ,tipnep); //á㬬  ¢ë¡®àª¨ ­¥ ¬®¦¥â ¡ëâì ®âà¨æ â¥«ì­®© if(summ<-Epsilon) summ=0.; // Š®íä䍿¨¥­â § ­ïâ®á⨠¨§ Š— double k_employ=1.; char strTemp[11]; var mraschLastDay = KDateFromInt_WithDay(countday,mrasch); var rowLastDay= KDateFromD(info.d2); //¤ â  ®ª®­ç ­¨ï áâப¨ ¬¥­ìè¥ ¤ âë ®ª®­ç ­¨ï mrasch var D=(rowLastDay.IsValid()&&rowLastDay.LE(mraschLastDay))? rowLastDay: mraschLastDay; GetKchValue("k_employ",strTemp,10,D); if (Str_Cmp(strTemp," "," ")!=0) k_employ=atof(strTemp); //double k_employ=GetKoefEmployment(D,0,0x1); //"ç¨áâë©" Œ�Ž’ double mrot=0.; int CodOrg = GetOrgForPodr(GetPodrOfCod(info.kod)); if (Value_For_Table_CodO(numberSet, CodOrg, rowSet, data, mrot) == EOF) mrot=info.bz; // Ž¯à¥¤¥«ï¥¬áï á à ©®­­ë¬¨ ¨ ᥢ¥à­ë¬¨ ­ ¤¡ ¢ª ¬¨ double rk_sev = 0.; if( bUseRk ) { rk_sev= DefineRkFull(data+countday/100.,false); //2018.03.20 - ¯à®æ¥­â ᥢ¥à­ëå ®¯à¥¤¥«ï¥¬ ⮫쪮 ¢ ⮬ á«ãç ¥, ¥á«¨ ¢ ‹‘ ­ è«¨ ¤¥©áâ¢ãîéãî áâப㠢¨¤  "ᥢ¥à­®© ­ ¤¡ ¢ª¨" //¢¨¤ ï¥âáï "ᥢ¥à­®© ­ ¤¡ ¢ª®©", ¥á«¨ ã ¥£®  «£®à¨â¬ ®¤¨­ ¨§: "96,97,186,187" if (FindSevNu(mrasch)) rk_sev += DefineSev(mrasch,0.,0.); } //Œ�Ž’ ¤«ï à áç¥â  double mrot_frv_nrv=mrot*k_employ*frv_nrv*(1 + rk_sev); roundd(mrot_frv_nrv, 2, mrot_frv_nrv); info.n1 = ( summ>mrot_frv_nrv || calcOnlyFullMonth && frv_nrv+Epsilon<1. ) ? 0. : mrot_frv_nrv-summ; if( FL_V_ALG && uprc!=NO_SCREEN ) { if( !useS98 ) { infolist.add_record("”�‚",r[2]); infolist.add_record("��‚",norm(idxNorm)); } if ( limitFrv ) infolist.add_record("”�‚/��‚ ­¥ ¡®«ìè¥ 1", "¤ "); infolist.add_record("”�‚/��‚",frv_nrv); infolist.add_record("‘⮫¡¥æ ¢ë¡®àª¨",stolbec); infolist.add_record("‘㬬  ¢ë¡®àª¨",summ); infolist.add_record("’¨¯ ­¥¯®«­®âë",tipnep); infolist.add_record("-----------------------","------------------------------"); infolist.add_record("�®¬¥à á¥âª¨ ¤«ï Œ�Ž’",numberSet); infolist.add_record("�®¬¥à áâப¨ ¢ á¥âª¥",rowSet); infolist.add_record("Œ�Ž’",mrot); infolist.add_record("Š®íää.§ ­ïâ®áâ¨",k_employ); if (bUseRk) infolist.add_record("% �Š ¨ ‘¥¢¥à­ëå", rk_sev*100.); infolist.add_record("Œ�Ž’ ¤«ï à áç¥â ",mrot_frv_nrv); infolist.add_record("-----------------------","------------------------------"); if (calcOnlyFullMonth && frv_nrv+Epsilon<1. ) infolist.add_record("„®¯« â  ­¥ ­ã¦­ ", "”�‚/��‚<1"); infolist.add_record("„®¯« â ",info.n1); } if (!fillRv) r[2] = 0; return code_Break; } FindSevNu(month) { double dmonth = KDateFromInt(month).GetDouble(); //ª®¤ë  «£®à¨â¬®¢, ª®â®àë¥ ¨á¯®«ì§ãîâáï ¤«ï à áç¥â  "ᥢ¥à­ëå" var sevNuList; int cnt = CodeAlgToListNUSafeArray("96,97,186,187", ",",sevNuList); for (int i = 0; i < cnt; ++i) { int code = sevNuList[i]; //¢­ãâ७­¨© ª®¤ ¢¨¤  if (poisk_row(code,0, dmonth,0) == EOF) //¢¨¤ á ¢­.ª®¤®¬ code ­¥ ­ è«¨, ¯¥à¥å®¤¨¬ ª á«¥¤ãî饬ã continue; return true;//­ è«¨ áâப㠢¨¤  á ª®¤®¬ code, ¤¥©áâ¢ãîéãî ¢ month } return false; } SysAlg121 ( &info, &r ) // ®¯« â  ¯à®á⮥¢ //  «£®à¨â¬ ¨¬¥¥â 5 ¯ à ¬¥â஢ // 1: �‚ ¢ ¤­ïå - 1; �‚ ¢ ç á å - 2 // 2: �‚ § ¤ ¥âáï - 0; �‚ ¡¥à¥âáï ¨§ â ¡¥«ï ¯® ᨬ¢®« ¬ '‚' ¤«ï ¯à®áâ®ï ¯® // ¢¨­¥ à ¡®â®¤ â¥«ï ¨«¨ '…' ¤«ï ¯à®áâ®ï ­¥ ¯® ¢¨­¥ à ¡®â®¤ â¥«ï ¥á«¨ // 5-¬ ¯ à ¬¥â஬ ­¥ ®¯à¥¤¥«¥­ ¤à㣮© ᨬ¢®« // 3: áç¨â âì ¯® â à¨ä­®© áâ ¢ª¥ - 0; ¯® á।­¥¬ã § à ¡®âªã - 1 // 4: ª®íä䍿¨¥­â à áç¥â  ¯à®áâ®ï (­¥ ¬®¦¥â ¡ëâì ¬¥­ìè¥ 2/3) // 5: ᨬ¢®« ¤«ï ®¡®§­ ç¥­¨ï ¤­ï ¯à®áâ®ï ¢ â ¡¥«¥ à ¡®â­¨ª  { double Epsilon = 0.00001; int tip_rv=1; // 1 - �‚ ¢ ¤­ïå; 2 - �‚ ¢ ç á å int where_rv=1; // 0 - �‚ § ¤ ¥âáï; 1 - �‚ ¨§ â ¡¥«ï ¯® ᨬ¢®« ¬ '‚' int tip_ras=1; // 0- áç¨â âì ¯® â à¨ä­®© áâ ¢ª¥; 1- ¯® á।­¥¬ã § à ¡®âªã double koef_prost=2./3.; // ª®íä䍿¨¥­â à áç¥â  ¯à®áâ®ï char SimvTab[2]; SimvTab[0]=SimvTab[1]='\0'; struct Struct_Alg Work; //§­ ç¥­¨ï ¯ à ¬¥â஢ ¯® 㬮«ç ­¨î: Get_AlgWithParamEx(Work, info.ikod, "1,1,1,0,0"); // Work.Count_Par - ç¨á«® ¯ p ¬¥âp®¢ ¤«ï ª®¤   «£®p¨â¬  //-- ¯ à ¬¥âà 1 - �‚ ¢ ¤­ïå - 0; �‚ ¢ ç á å - 1 int param=atoi(reinterpret_cast_to_string(Work.List_Par[0])); if ( param>=1 && param<=2 ) tip_rv=param; //-- ¯ à ¬¥âà 2 - �‚ § ¤ ¥âáï - 0 ¨«¨ // �‚ ¡¥à¥âáï ¨§ â ¡¥«ï ¯® ᨬ¢ « ¬ '‚'- 1; ¯® 㬮«ç ­¨î - 0 param = atoi(reinterpret_cast_to_string(Work.List_Par[1])); if (param >= 0 && param <= 1) where_rv = param; //-- ¯ à ¬¥âà 3 - ¯à®á⮩ áç¨â âì ¯® â à¨ä­®© áâ ¢ª¥ - 0; // ¯® á।­¥¬ã § à ¡®âªã - 1 param = atoi(reinterpret_cast_to_string(Work.List_Par[2])); if (param >= 0 && param <= 1) tip_ras = param; //-- ¯ à ¬¥âà 4 - ª®íä䍿¨¥­â à áç¥â  ¯à®áâ®ï (­¥ ¬¥­¥¥ 2/3) double paramf = atof(reinterpret_cast_to_string(Work.List_Par[3])); if ( paramf >= Epsilon ) koef_prost = paramf; //-- ¯ à ¬¥âà 5 - ᨬ¢®« ¤«ï â ¡¥«ï // ¯® 㬮«ç ­¨î '‚' - ¯à®á⮩ ¯® ¢¨­¥ à ¡®â®¤ â¥«ï // '…' - ¯à®á⮩ ­¥ ¯® ¢¨­¥ à ¡®â®¤ â¥«ï SimvTab[0]= (tip_ras)?'‚':'…'; if ( Work.List_Par[4] && GetCharFromStr(reinterpret_cast_to_string(Work.List_Par[4]),0)>'0' ) { char Simv = GetCharFromStr(reinterpret_cast_to_string(Work.List_Par[4]),0); if ( Simv>' ' ) SimvTab[0] = Simv; } //--- ¢á¯®¬®£ â¥«ì­ë© ¢ë¢®¤ áâப¨ r[2]=r[2]-info.h[2]; // ãç¥â ¤«ï á«ãç ï ¯¥à¥áç¥â  char t[20]; indstr(scr04,mrasch,windrow,r,t,1); r[2]=r[2]+info.h[2]; // ãç¥â ¤«ï á«ãç ï ¯¥à¥áç¥â  if (where_rv==1 && uprc!=NO_SCREEN) { // ’ ¡¥«ì à áᬠâਢ ¥¬ ⮫쪮 ⮩ áâப¨, çâ® à ááç¨â뢠¥¬ var ts = CreateObject("TempCommonSrc"); ts.TempCommonSrcInitial(CMN_SRC_INT_LS); SetCommonProp(CMN_SRC_INT_LS,GetPropOfCod(info.kod)); corcal(mrasch,3); } int day1 = info.z1, day2 = info.z2; double base_sum = 0.; if (tip_ras) // áç¨â ¥¬ ¯® á।­¥¬ã § à ¡®âªã { var Dat=CreateObject("KDate"); var PoSredn = CreateObject("KCalcSredn"); if ( PoSredn.InitSredn(info.crow,info.kod_alg,Dat,uprc!=NO_SCREEN?2:0)==ESC ) return code_Break; var Nastr = PoSredn.GetNastr(); Nastr.SetNastr(TIP_RV,tip_rv); // - § ¯¨áì ¨§¬¥­¥­¨© ¢ â ¡¥«ì ‹‘ ¯¥à¥¤ ¢ë§®¢®¬ tabl_sredn s145(colc2,1); //--- ¯®¤áç¥â á।­¥£® §  ¥¤¨­¨æã ¢à¥¬¥­¨ PoSredn.Calculate(0,2); // if (uprc==3) menuras(0); // ¯¥à¥¢ë¢®¤ ¬¥­î à áç¥â  // „­¨ §  ª®â®àë¥ ¯à®á⮩ áç¨â ¥¬ + ¡ §®¢ ï á㬬  ®â ª®â®à®© ¤¥« ¥¬ à áç¥â day1 = Nastr.GetDateSr().GetDay(), day2 = Nastr.GetDateEndSr().GetDay(); base_sum = PoSredn.SumSredn(); } else // áç¨â ¥¬ ¯® â à¨ä­®© áâ ¢ª¥ { double stavka=0.,r9=0.; if (tip_rv==1) // ®ª« ¤­¨ª¨ - áâ ¢ª  ¢ ¬¥áïæ s97(info.d1,info.d2,stavka,r9,0); else // â à¨ä­¨ª¨ - áâ ¢ª  ¢ ç á s96(info.d1,info.d2,stavka,3); if (nabs(stavka)