Advertisement
GLASHATAY_007

ksp

Aug 1st, 2023
309
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. CREATE TABLE ksp_01_08_23 AS
  2. SELECT
  3.     fin.lot_id,
  4.     c.contractrnk,-- 1 рнк
  5.     CASE
  6.         WHEN fin.TYPE=1 THEN fin.YEAR ELSE NULL END first_fin_cont_year,-- 2 год планового финансирования по контракту
  7.     fin.finsource --4 источники финансирования
  8.     ,CASE
  9.         WHEN o_u.id IN (503,1407,2710,2229,2703,1409,2709,508,1898,2702,988,2711,504,509,500,1897,1411,1408,1412,1728) THEN o_u.full_name
  10.         ELSE NULL
  11.     END uo_org -- 5 уполномоченный орган
  12.     ,COALESCE(cons.inn,o.inn) AS inn -- 6 ИНН организации разместившей извещение
  13.     ,COALESCE(cons.orgtitle, o.full_name)AS c_org -- 7 наименование организации разместившей извещение
  14.     ,c.customerinn -- 8 заказчик инн организации
  15.     ,c.customername-- 9 заказчик наименование  
  16.     ,c.grbsname-- 10 ГРБС название
  17.     ,COALESCE ( p.reqnum,c.contractnoticenumber)contractnoticenumber  -- 11 номер извещения
  18.     ,p.date_notice_published -- 12 дата размещения извещения о закупке
  19.     ,CASE
  20.         WHEN  p.fordertypename = 'Закупка у единственного поставщика' AND p.oneexec = 'Часть 1 пункт 25 статьи 93 -  Закупка вследствие признания несостоявшимся запроса котировок в соответствии частями 1 и 3 статьи 79 Федерального закона решения об осуществлении закупки у единственного поставщика (подрядчика, исполнителя)'
  21.                                 THEN 'Запрос котировок в электронной форме'
  22.         WHEN p.fordertypename = 'Закупка у единственного поставщика' AND p.oneexec = 'Часть 1 пункт 25 статьи 93 -  Закупка вследствие признания несостоявшимся двухэтапного конкурса в соответствии с частями 1 и 7 статьи 55 Федерального закона решения об осуществлении закупки у единственного поставщика (подрядчика, исполнителя)'
  23.                 THEN 'Двухэтапный конкурс в электронной форме'
  24.         WHEN p.fordertypename = 'Закупка у единственного поставщика' AND p.oneexec = 'Часть 1 пункт 25 статьи 93 -  Закупка вследствие признания несостоявшимися открытого конкурса в соответствии с частями 1 и 7 статьи 55 Федерального закона решения об осуществлении закупки у единственного поставщика (подрядчика, исполнителя)'
  25.                 THEN 'Открытый конкурс в электронной форме'
  26.         WHEN p.fordertypename = 'Закупка у единственного поставщика' AND p.oneexec = 'Часть 1 пункт 25 статьи 93 -  Закупка вследствие признания несостоявшимся электронного аукциона в соответствии частями 1 – 3.1 статьи 71 Федерального закона решения об осуществлении закупки у единственного поставщика (подрядчика, исполнителя)'
  27.                 THEN 'Аукцион в электронной форме'
  28.         WHEN p.fordertypename = 'Закупка у единственного поставщика' AND p.oneexec = 'Часть 1 пункт 25 статьи 93 -  Закупка вследствие признания несостоявшимися конкурса с ограниченным участием в соответствии с частями 1 и 7 статьи 55 Федерального закона решения об осуществлении закупки у единственного поставщика (подрядчика, исполнителя)'
  29.                 THEN 'Конкурс с ограниченным участием в электронной форме'
  30.         WHEN p.fordertypename = 'Закупка у единственного поставщика' AND p.oneexec = 'Часть 1 пункт 25 статьи 93 -  Закупка вследствие признания несостоявшимся запроса предложений в соответствии с частью 18 статьи 83 Федерального закона решения об осуществлении закупки у единственного поставщика (подрядчика, исполнителя)'
  31.                 THEN 'Запрос предложений в электронной форме'
  32.         ELSE p.fordertypename END   fordertypename -- 13 способо закупки на этапе размещения извещения
  33.     ,TRUNC(c.contractsigndate)contractsigndate -- 14 дата заключения контракта
  34.     ,c.contractsubject -- 15 наименование объекта закупки
  35.     ,CASE
  36.         WHEN c.contractoneexecreason  LIKE 'Часть 1 пункт 25 статьи 93%' THEN 'Закупка у единственного поставщика'
  37.         ELSE c.ordertypename
  38.     END ordertypename -- 16 соп
  39.     ,p.f_productprice -- 17 нмцк
  40.     ,c.contractsigningprice -- 18 первоначальная цена
  41.     ,c.contractfullprice -- 19 текущая цена
  42.     ,c.contractplaneexecdate -- 20 планируемая дата окончания исполнения контракта
  43.     ,c.contractactualexecdate -- 21 фактическая дата исполнения контракта
  44.     ,c.supplierinn -- 22 поставщик инн
  45.     ,c.suppliername -- 23 поставщик наименование
  46.     ,c.contractoneexecreason -- 24 основание заключения контракта с ед поставщиком
  47.     ,c.contractrejectdate -- 25 дата расторжения контракта
  48.     ,c.contractrejectbase -- 26 основание расторжения контракта
  49.     ,CASE
  50.         WHEN p.placement ='Централизованная закупка' THEN 1
  51.         ELSE 0
  52.     END central -- 27 признак централизованной закупки
  53.     ,p.joflag -- 28 признак совместных торгов
  54.     ,c.supply_impossible -- 29 признак невозможно определить количество
  55.     ,penalty.sum_ -- 30 сумма начисленных санкций
  56.     ,penalty.pen_pay_sum_ -- 31 сумма оплаченных санкций
  57.     ,CASE
  58.         WHEN fin.TYPE=1 THEN fin.finsum
  59.         ELSE NULL
  60.     END finsum_plan -- 32 плановое финансирования по контракту
  61.     ,CASE
  62.         WHEN fin.TYPE=2 THEN fin.finsum
  63.         ELSE NULL
  64.     END finsum_fact -- 33 фактическое финансирования по контракту
  65.     ,pea.nmck_type -- 34 метод определения и обоснования НМЦК
  66.     ,c.perc_size -- 35 объем привлеченных к исполнению субподр %
  67.     ,c.perc_rub_size -- 36 объем привлеченных к исполнению субподр руб
  68.     ,p.ADVANCE_PAY_AMOUNT -- 37 размер аванса %
  69.     ,p.advance_hand_amount -- 38 размер аванса руб
  70.      FROM dwh_contract_kgntv c
  71. Inner Join dwh_procedures_kgntv p ON p.lotuuid = c.lotid AND c.contractsigndate BETWEEN TO_DATE ('01.01.22', 'dd.mm.yy') AND TO_DATE ('30.06.23','dd.mm.yy')
  72. Inner Join dwh_organization_kgntv o ON o.id = c.customerid
  73. Inner Join dwh_contract_fin_kgntv fin ON c.lotid=fin.lot_id
  74. Left Join dwh_procedures_cons_kgntv cons ON cons.lotuuid = p.Joint_procedure_id
  75. Left Join dwh_organization_kgntv o_u    ON o_u.id = p.uo_orgid
  76. Left Join (SELECT
  77.             COALESCE(l.lot_id,sovm.lot_id) lot_id,
  78.             COALESCE(l.plnm_name,l.plnm_name2,sovm.plnm_name) nmck_type
  79.           FROM DWH_LOT_KGNTV_EXT_ATTR_1 l
  80.           Left Join (SELECT
  81.                         m.plnm_name,
  82.                         COALESCE(l.lot_id,m.lot_id,TO_NUMBER(p.lotuuid)) lot_id,
  83.                         COALESCE(p.MORD_FLAG,m.MORD_FLAG)
  84.                     FROM DWH_LOT_KGNTV_EXT_ATTR_1 l
  85.                     Left Join dwh_procedures_kgntv p ON p.lotuuid = l.lot_id AND p.MORD_FLAG = 'D' --
  86.                     Left Join(SELECT
  87.                                 COALESCE(gm.plnm_name,gm.plnm_name2) plnm_name,
  88.                                 COALESCE(l.lot_id,gm.lot_id,TO_NUMBER(p.lotuuid)) lot_id, --p.lotuuid
  89.                                 COALESCE(p.MORD_FLAG,gm.MORD_FLAG) MORD_FLAG
  90.                               FROM DWH_LOT_KGNTV_EXT_ATTR_1 l
  91.                               Left Join(SELECT
  92.                                             l.*,
  93.                                             MORD_FLAG
  94.                                         FROM DWH_LOT_KGNTV_EXT_ATTR_1 l
  95.                                         Left Join dwh_procedures_kgntv p ON p.lotuuid = l.lot_id
  96.                                         WHERE MORD_FLAG IS NULL
  97.                                         ) gm ON gm.lot_id = l.joint_procedure_id
  98.                                Left Join dwh_procedures_kgntv p ON p.lotuuid = l.lot_id AND p.MORD_FLAG = 'M'
  99.                                WHERE l.joint_procedure_id IS NOT NULL
  100.                               )m ON m.lot_id = p.LOT_CONS_M) sovm ON sovm.lot_id = l.lot_id
  101.             ) pea ON pea.lot_id = p.lotuuid
  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 DISTINCT
  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.  ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement