Advertisement
GLASHATAY_007

Untitled

Apr 15th, 2024
1,140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. CREATE TABLE ksp_15_04_24_fin_new AS
  3. WITH fin AS (
  4. SELECT
  5.   lot_id,
  6.   fin.budget_type,
  7.   fin.targetexpenseitemcode,
  8.   cs_name.name target_name,
  9.   MIN(CASE WHEN fin.TYPE=1 THEN fin.YEAR ELSE NULL END) first_year   -- первый год планового фин
  10.  ,MAX(CASE WHEN fin.TYPE=1 THEN fin.YEAR ELSE NULL END)  last_year-- последний год планового финас
  11.  ,SUM(CASE WHEN fin.TYPE=1 THEN fin.finsum ELSE NULL END) finsum_plan  -- 44 плановое финансирования по контракту
  12.  ,SUM(CASE WHEN fin.TYPE=2 THEN fin.finsum ELSE NULL END) finsum_fact -- 45 фактическое финансирования по контракту
  13.  ,MAX(CASE WHEN fin.targetexpenseitemcode IN (SELECT targetexpenseitemcode FROM dwh_targetexpenseitemcode_aip) THEN 1 ELSE 0 END) aip_flag -- 50 признак АИП (проверить)
  14. FROM dwh_contract_fin_kgntv_temp fin
  15. Left join dwh_kf_cs cs_name ON cs_name.code=fin.targetexpenseitemcode AND fin.YEAR=cs_name.YEAR
  16. WHERE fin.Targetexpenseitemcode IN (SELECT DISTINCT targetexpenseitemcode FROM dwh_targetexpenseitemcode_2020)
  17. AND fin.YEAR>=2023
  18. GROUP BY lot_id,fin.budget_type, fin.targetexpenseitemcode,cs_name.name
  19. )
  20.  
  21.  
  22. SELECT
  23.     c.lotid,
  24.     c.contractrnk, -- 1 рнк
  25.     p.f_year YEAR, -- 2 год бюджета, к которому относятся ассигнования (вместо года размещения процедуры (requestyear) берем год финансирования контракта.
  26.     fin.first_year first_fin_cont_year,-- 3 год первого финансирования по контракту
  27.     fin.last_year, -- год последнего финансирования контракта
  28.     c.requestyear f_year -- 5 год плана размещения
  29.     ,c.finsource --6 источники финансирования
  30.     ,fin.budget_type -- 7 тип бюджетных средств
  31.     ,fin.targetexpenseitemcode -- 8 код целевой статьи
  32.     ,fin.target_name -- 9 наименование целевой статьи
  33.     ,CASE
  34.         WHEN o_u.id IN (503,592,1407,2710,2229,2703,1409,2709,508,1898,2702,988,2711,504,509,500,1897,1411,1408,1412,1728) THEN o_u.full_name
  35.         ELSE NULL
  36.     END uo_org -- 10 уполномоченный орган
  37.    ,COALESCE(cons.inn,o_u.inn,c.customerinn) AS inn -- 11 ИНН организации разместившей извещение
  38.    ,COALESCE(cons.orgtitle, o_u.full_name,c.customername)AS c_org -- 12 наименование организации разместившей извещение*/
  39.    ,c.customerinn -- 13 заказчик инн организации
  40.    ,c.customername-- 14 заказчик наименование  
  41.    ,c.grbsname-- 15 ГРБС название
  42.    ,gr.fshorttitle -- 16 сокращенное наименование грбс
  43.    ,COALESCE ( p.reqnum,c.contractnoticenumber)contractnoticenumber  -- 17 номер извещения
  44.    ,p.date_notice_published -- 18 дата размещения извещения о закупке
  45.    ,CASE
  46.         WHEN  p.fordertypename = 'Закупка у единственного поставщика' AND p.oneexec = 'Часть 1 пункт 25 статьи 93 -  Закупка вследствие признания несостоявшимся запроса котировок в соответствии частями 1 и 3 статьи 79 Федерального закона решения об осуществлении закупки у единственного поставщика (подрядчика, исполнителя)'
  47.                                 THEN 'Запрос котировок в электронной форме'
  48.         WHEN p.fordertypename = 'Закупка у единственного поставщика' AND p.oneexec = 'Часть 1 пункт 25 статьи 93 -  Закупка вследствие признания несостоявшимся двухэтапного конкурса в соответствии с частями 1 и 7 статьи 55 Федерального закона решения об осуществлении закупки у единственного поставщика (подрядчика, исполнителя)'
  49.                 THEN 'Двухэтапный конкурс в электронной форме'
  50.         WHEN p.fordertypename = 'Закупка у единственного поставщика' AND p.oneexec = 'Часть 1 пункт 25 статьи 93 -  Закупка вследствие признания несостоявшимися открытого конкурса в соответствии с частями 1 и 7 статьи 55 Федерального закона решения об осуществлении закупки у единственного поставщика (подрядчика, исполнителя)'
  51.                 THEN 'Открытый конкурс в электронной форме'
  52.         WHEN p.fordertypename = 'Закупка у единственного поставщика' AND p.oneexec = 'Часть 1 пункт 25 статьи 93 -  Закупка вследствие признания несостоявшимся электронного аукциона в соответствии частями 1 – 3.1 статьи 71 Федерального закона решения об осуществлении закупки у единственного поставщика (подрядчика, исполнителя)'
  53.                 THEN 'Аукцион в электронной форме'
  54.         WHEN p.fordertypename = 'Закупка у единственного поставщика' AND p.oneexec = 'Часть 1 пункт 25 статьи 93 -  Закупка вследствие признания несостоявшимися конкурса с ограниченным участием в соответствии с частями 1 и 7 статьи 55 Федерального закона решения об осуществлении закупки у единственного поставщика (подрядчика, исполнителя)'
  55.                 THEN 'Конкурс с ограниченным участием в электронной форме'
  56.         WHEN p.fordertypename = 'Закупка у единственного поставщика' AND p.oneexec = 'Часть 1 пункт 25 статьи 93 -  Закупка вследствие признания несостоявшимся запроса предложений в соответствии с частью 18 статьи 83 Федерального закона решения об осуществлении закупки у единственного поставщика (подрядчика, исполнителя)'
  57.                 THEN 'Запрос предложений в электронной форме'
  58.         ELSE p.fordertypename
  59.     END   fordertypename -- 19 способо закупки на этапе размещения извещения
  60.    ,c.contractsigndate -- 20 дата заключения контракта
  61.    ,c.contractsubject -- 21 наименование объекта закупки
  62.    ,c.contractrejectdate -- 22 дата расторжения контракта
  63.    ,CASE WHEN c.contractoneexecreason  LIKE 'Часть 1 пункт 25 статьи 93%' THEN 'Закупка у единственного поставщика' ELSE c.ordertypename END ordertypename -- 23 соп
  64.    ,p.f_productprice -- 24 нмцк
  65.    ,c.contractsigningprice -- 25 первоначальная цена
  66.    ,c.contractfullprice -- 26 текущая цена
  67.    ,c.contractplaneexecdate -- 27 планируемая дата окончания исполнения контракта
  68.    ,c.contractactualexecdate -- 28 фактическая дата исполнения контракта
  69.    ,c.supplierinn -- 29 поставщик инн
  70.    ,c.suppliername -- 30 поставщик наименование
  71.    ,CASE WHEN c.contractoneexecreason IS NOT NULL THEN 1 ELSE 0 END onneexec_type-- 31 признак заключения контракта с единственным поставщиком
  72.    ,c.contractoneexecreason -- 32 основание заключения контракта с ед поставщиком    
  73.    ,c.stagetitle -- 33 статус контракта
  74.    ,c.contractrejectreason -- 34 основание расторжения контракта
  75.    ,CASE WHEN p.placement ='Централизованная закупка' THEN 1 ELSE 0 END central -- 35 признак централизованной закупки
  76.    ,p.joflag -- 36 признак совместных торгов
  77.    ,c.supply_impossible -- 37 признак невозможно определить количество
  78.    ,c.SUPPLIERCRIMINAL -- 38 учреждение уголовно-испытательной системы
  79.    ,c.SUPPLIERINVALID -- 39 учреждение инвалидов
  80.    ,c.SUPPLIERSMP -- 40 ПОСТАВЩИК ЯВЛЯЕТСЯ СМП ИЛИ СОНКО
  81.    ,c.SUPPLIERSMPSONCO -- 41 СОНКО
  82.    ,CASE WHEN penalty.sum_ IS NOT NULL THEN 1 ELSE 0 END penaty_flag-- 42 признак применения штрафных санкций
  83.    ,penalty.sum_ -- 43 сумма начисленных санкций
  84.    ,penalty.pen_pay_sum_ -- 44 сумма оплаченных санкций
  85.     ,fin.finsum_plan -- 45 плановое финансирования по контракту
  86.     ,fin.finsum_fact -- 46 фактическое финансирования по контракту
  87.    , CASE WHEN c.is_concluded_in_e_shop IS NOT NULL THEN 1 ELSE 0 END eshop_flag-- 47 признак заключения контракта в ЭМ
  88.    ,c.contract_modification_reasons   -- 48 причина изменения усвловий контракта/договора
  89.    ,pea.nmck_type -- 49 метод определения и обоснования НМЦК
  90.     ,fin.aip_flag -- 50 признак АИП (проверить)
  91.     ,CASE WHEN c.perc_size IS NOT NULL OR c.perc_rub_size IS NOT NULL THEN 1 ELSE 0 END subpodr_flag -- 51 признак наличия субподрпяда
  92.     ,c.perc_size -- 52 объем привлеченных к исполнению субподр %
  93.     ,c.perc_rub_size -- 53 объем привлеченных к исполнению субподр руб
  94.     ,p.ADVANCE_PAY_AMOUNT -- 54 размер аванса %
  95.     ,p.advance_hand_amount -- 55 размер аванса руб
  96. FROM dwh_contract_kgntv c
  97. join dwh_procedures_kgntv p ON c.lotid=p.lotuuid
  98. JOIN fin ON c.lotid=fin.lot_id
  99. LEFT JOIN dwh_procedures_cons_kgntv cons ON cons.lotuuid = p.Joint_procedure_id
  100. LEFT JOIN dwh_organization_kgntv o_u    ON o_u.id = p.uo_orgid
  101. LEFT JOIN ksp_grbs_shotname gr  ON gr.KGNTVID = c.grbsid
  102. LEFT join(SELECT
  103.             contractid,
  104.             listagg(list_, '; ') within GROUP (ORDER BY contractid) pen,
  105.             SUM(NVL(amount,0))sum_
  106.             ,SUM(NVL(penalty_pay_sum,0)) pen_pay_sum_
  107.           FROM (SELECT
  108.                      id contractid,
  109.                     CASE
  110.                         WHEN reason_id IN (1,3) THEN 'Исполнитель'  WHEN reason_id IN (2,4) THEN 'Заказчик'
  111.                         ELSE NULL
  112.                     END  list_
  113.                     ,amount
  114.                     ,penalty_pay_sum
  115.                 FROM dwh_contract_penalty_kgntv
  116.                 )GROUP BY contractid
  117.         )penalty ON penalty.contractid = c.contractid
  118. LEFT JOIN (
  119. SELECT
  120. COALESCE(l.lot_id,sovm.lot_id) lot_id,
  121. COALESCE(l.plnm_name,l.plnm_name2,sovm.plnm_name) nmck_type
  122. FROM DWH_LOT_KGNTV_EXT_ATTR_1 l
  123. LEFT JOIN (SELECT
  124.             m.plnm_name,
  125.             COALESCE(l.lot_id,m.lot_id,TO_NUMBER(p.lotuuid)) lot_id,
  126.             COALESCE(p.MORD_FLAG,m.MORD_FLAG)
  127.             FROM DWH_LOT_KGNTV_EXT_ATTR_1 l
  128.             LEFT JOIN dwh_procedures_kgntv p ON p.lotuuid = l.lot_id AND p.MORD_FLAG = 'D' --
  129.             LEFT JOIN
  130.                (SELECT
  131.                 COALESCE(gm.plnm_name,gm.plnm_name2) plnm_name,
  132.                 COALESCE(l.lot_id,gm.lot_id,TO_NUMBER(p.lotuuid)) lot_id, --p.lotuuid
  133.                 COALESCE(p.MORD_FLAG,gm.MORD_FLAG) MORD_FLAG
  134.                 FROM DWH_LOT_KGNTV_EXT_ATTR_1 l
  135.                     LEFT JOIN
  136.                         (SELECT l.*,MORD_FLAG
  137.                          FROM DWH_LOT_KGNTV_EXT_ATTR_1 l
  138.                             LEFT JOIN dwh_procedures_kgntv p ON p.lotuuid = l.lot_id
  139.                          WHERE MORD_FLAG IS NULL
  140.                         ) gm ON gm.lot_id = l.joint_procedure_id
  141.                     LEFT JOIN dwh_procedures_kgntv p ON p.lotuuid = l.lot_id AND p.MORD_FLAG = 'M'
  142.                     WHERE
  143.                     l.joint_procedure_id IS NOT NULL
  144.                   )m ON m.lot_id = p.LOT_CONS_M) sovm ON sovm.lot_id = l.lot_id) pea ON pea.lot_id = p.lotuuid    
  145. ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement