ОПЕР РАБ.ТББ.ЗЕМЛЯ.РЕГИСТР="Регистрация проводок"
   (КАДЕДН      :S;  -- кадастровая единица
    КБК_НАЛОГ   :S;  -- код КБК налога
    КБК_ШТРАФ   :S;  -- код КБК штрафа
    СУММА_НУ    :N;  -- сумма налога
    СУММА_ШУ    :N;  -- сумма пеней
    ДО_Н_ДАТ    :D;  -- документ основание дата (текущие налоги)
    ДО_Н_НОМ    :S;  -- документ основание номер (текущие налоги)
    ДОКОС_НУ    :S;  -- документ основание комментарий (текущие налоги)
    ДО_Ш_ДАТ    :D;  -- документ основание дата (штрафы)
    ДО_Ш_НОМ    :S;  -- документ основание номер (штрафы)
    ДОКОС_ШУ    :S;  -- документ основание комментарий (штрафы)

    ПРДОПР      :S;  -- период опрации
    ПРИЗНД      :S;  -- дополнительные проводки
    КОММЕНТ     :S;  -- комментарий
    ИСКЛП       :L;  -- исключение проводки

    КОММ_ОПР    :S;  -- комментарий операции
    ПРОШЛЫХ_ЛЕТ :L;  -- регистрация до(пере)начислений за прошедшие учетные года
    КАКОСТАТКИ  :L;  -- провести как остатки
    ТИПОПР      :I)  -- тип операции

 var СЧДЕБ1     :S;
 var СЧКРЕ1     :S;
 var KBKP       :S;
 var ТИП_НАЧИСЛ :S;
 var DOC_OSN    :S;
 var KOMM_OPER  :S;
--var Настр_Прзн_Начисл_Аванс           :String="НБ.НЧСЛ_ОБ"; -- Оплата обычных начислений текущего финансового года
--var Настр_Прзн_Начисл_Доначисл        :String="НБ.НЧСЛ_ПЛ"; -- Оплата до(пере)начислений прошлых лет
--var Настр_Прзн_Начисл_Штрафы          :String="НБ.НЧСЛ_ШП"; -- Оплата начислений штрафов и пеней текущего финансового года

 if not ИСКЛП:
   -- в приоритете комментарий позиции, если его нет используем комментарий операции
   KOMM_OPER=if(КОММЕНТ<>"", КОММЕНТ, if(КОММ_ОПР<>"", КОММ_ОПР, " "));
   if СУММА_НУ<>0.00:
     if Match(КБК_НАЛОГ, "????.??????????.???"):
       if ДО_Н_НОМ<>"" and ДО_Н_ДАТ>1.1.1800: DOC_OSN=if(ТИПОПР=1 or ТИПОПР=11:"Начисление"|ТИПОПР=2:"Оплата","")+" N"+ДО_Н_НОМ+" от "+Str(Day(ДО_Н_ДАТ))+"."+Str(Mon(ДО_Н_ДАТ))+"."+Str(Year(ДО_Н_ДАТ))+" "+ДОКОС_НУ;
       |True:                                 DOC_OSN=if(ДОКОС_НУ<>"", ДОКОС_НУ, " ");
       fi;
       if ТИПОПР=1 or ТИПОПР=11:
          СЧДЕБ1=if(КАКОСТАТКИ, "00", КБК_НАЛОГ+".1.401.20.291");
          СЧКРЕ1=КБК_НАЛОГ+".1.303.13.731";
          KBKP = "КР."+КБК_НАЛОГ;
          ТИП_НАЧИСЛ = if(КАКОСТАТКИ, "НБ.ОСТАТКИ", if(ПРОШЛЫХ_ЛЕТ, "НБ.НЧСЛ_ПЛ", "НБ.НЧСЛ_ОБ"));
          :   СУММА_НУ   $СЧДЕБ1 $СЧКРЕ1 {$КАДЕДН КОСГУ.291 $ПРДОПР $ТИП_НАЧИСЛ $KBKP $ПРИЗНД} --$KOMM_OPER $DOC_OSN
       |  ТИПОПР=2:
          СЧДЕБ1=КБК_НАЛОГ+".1.303.13.831";
          СЧКРЕ1=if(КАКОСТАТКИ, "00", КБК_НАЛОГ+".1.304.05.291");
          KBKP = "КР."+КБК_НАЛОГ;
          :   СУММА_НУ   $СЧДЕБ1 $СЧКРЕ1 {$КАДЕДН КОСГУ.291 $ПРДОПР $KBKP $ПРИЗНД} --$KOMM_OPER $DOC_OSN
       fi;
     fi;
   fi;
   if СУММА_ШУ<>0.00:
     if Match(КБК_ШТРАФ, "????.??????????.???"):
       if ДО_Ш_НОМ<>"" and ДО_Ш_ДАТ>1.1.1800: DOC_OSN=if(ТИПОПР=1 or ТИПОПР=11:"Начисление"|ТИПОПР=2:"Оплата","")+" требования N"+ДО_Ш_НОМ+" от "+Str(Day(ДО_Ш_ДАТ))+"."+Str(Mon(ДО_Ш_ДАТ))+"."+Str(Year(ДО_Ш_ДАТ))+" "+ДОКОС_ШУ;
       |True:                                 DOC_OSN=if(ДОКОС_ШУ<>"", ДОКОС_ШУ, " ");
       fi;
       if ТИПОПР=1 or ТИПОПР=11:
          СЧДЕБ1=if(КАКОСТАТКИ, "00", КБК_ШТРАФ+".1.401.20.292");
          СЧКРЕ1=КБК_ШТРАФ+".1.303.05.731";
          KBKP = "КР."+КБК_ШТРАФ;
          :   СУММА_ШУ   $СЧДЕБ1 $СЧКРЕ1 {$КАДЕДН КОСГУ.292 $ПРДОПР НБ.НЧСЛ_ШП $KBKP $ПРИЗНД} --$KOMM_OPER $DOC_OSN
       |  ТИПОПР=2:
          СЧДЕБ1=КБК_ШТРАФ+".1.303.05.831";
          СЧКРЕ1=if(КАКОСТАТКИ, "00", КБК_ШТРАФ+".1.304.05.292");
          KBKP = "КР."+КБК_ШТРАФ;
          :   СУММА_ШУ   $СЧДЕБ1 $СЧКРЕ1 {$КАДЕДН КОСГУ.292 $ПРДОПР $KBKP $ПРИЗНД} --$KOMM_OPER $DOC_OSN
       fi;
     fi;
   fi;

 fi;

РЕПО;