Advertisement
aadddrr

r_achievement_vs_target 20180313

Mar 13th, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. CREATE OR REPLACE FUNCTION r_achievement_vs_target(character varying, bigint, bigint, bigint, character varying, bigint, bigint, bigint, character varying, character varying)
  2.   RETURNS SETOF refcursor AS
  3. $BODY$
  4. DECLARE
  5.     pRefHeader                  REFCURSOR := 'refHeader';
  6.     pRefDetailSummary           REFCURSOR := 'refDetailSummary';
  7.     pRefDetail                  REFCURSOR := 'refDetail';
  8.     pSessionId                  ALIAS FOR $1;
  9.     pTenantId                   ALIAS FOR $2;
  10.     pUserId                     ALIAS FOR $3;
  11.     pRoleId                     ALIAS FOR $4;
  12.     pDatetime                   ALIAS FOR $5;
  13.    
  14.     pOuId                       ALIAS FOR $6;
  15.     pSalesmanId                 ALIAS FOR $7;
  16.     pCustomerId                 ALIAS FOR $8;
  17.     pYear                       ALIAS FOR $9;
  18.     pPeriod                     ALIAS FOR $10;
  19.  
  20.     vPartnerCodeMou                 character varying(50);
  21.     vPartnerNameMou                 character varying(100);
  22.     vDocTypeIdSOByBrand             bigint;
  23.     vStatusReleased                 character varying(1);
  24.     vStatusFinal                    character varying(1);
  25.     vStatusInProgress               character varying(1);
  26.     vStatusDraft                    character varying(1);
  27.     vTagKeyMOU                  character varying(10);
  28.     vDocTypeIdReturnNote                bigint;
  29.     vDocTypeIdSalesInvoice              bigint;
  30.     vDocTypeIdInvoiceTemp               bigint;
  31.     vDocTypeIdConversionOfExchangeIn        bigint;
  32.     vDocTypeIdConversionOfExchangeOut       bigint;
  33.     vDocTypeIdRRS                   bigint;
  34.     vStatusMapping                  character varying(1);
  35.     vStatusApproved                 character varying(1);
  36.     vRaw                        character varying(20);
  37.     vSummary                    character varying(20);
  38.     vEmptyId                    bigint;
  39.     vOne                        integer := 1;
  40.     vEmptyValue                 character varying;
  41.     vParamCodeInsentif          character varying := 'INCENTIVE';
  42.     vActivityGLCodeInsentif     character varying;
  43.     vActivityGLInsentif         bigint;
  44.    
  45.     vFlagYes                    character varying(1) :='Y';
  46.    
  47.     vCurrentDate                character varying;
  48.     vSystemCurrentYear          character varying;
  49.     vLastYear                   character varying;
  50.     vEndDate                    character varying;
  51.     vDateTo                     character varying;
  52.     vFlgTypeSOReg               character varying;
  53.     vZero                       numeric;
  54.     vDocTypeIdSOB               bigint;
  55.     vComboGroupBrand            character varying;
  56.     vArraySeparator             character varying;
  57.     vQuote                      character varying;
  58.     vDocTypeIdReturnInvoice     bigint;
  59.     vDocTypeIdCNAR              bigint;
  60.     vDocTypeIdDNAR              bigint;
  61.     i                           bigint;
  62.    
  63. BEGIN
  64.    
  65.     vPartnerCodeMou := ' ';
  66.     vPartnerNameMou := ' ';
  67.     vDocTypeIdSOByBrand := 398;
  68.     vStatusReleased := 'R';
  69.     vStatusFinal := 'F';
  70.     vStatusInProgress := 'I';
  71.     vStatusDraft := 'D';
  72.     vTagKeyMOU := 'MOU';
  73.     vDocTypeIdReturnNote := 502;
  74.     vDocTypeIdSalesInvoice := 321;
  75.     vDocTypeIdInvoiceTemp := 361;
  76.     vDocTypeIdConversionOfExchangeIn := 394;
  77.     vDocTypeIdConversionOfExchangeOut := 395;
  78.     vDocTypeIdRRS :=381;
  79.     vStatusMapping := 'M';
  80.     vStatusApproved := 'A';
  81.     vRaw := 'RAW';
  82.     vSummary := 'SUMMARY';
  83.     vEmptyId := -99;
  84.     vEmptyValue := '';
  85.     vEndDate := '1231';
  86.     vFlgTypeSOReg := 'REG';
  87.     vZero := 0;
  88.     vDocTypeIdSOB := 398;
  89.     vComboGroupBrand := 'GROUPBRANDPARENT';
  90.     vArraySeparator := ', ';
  91.     vQuote := '''';
  92.     vDocTypeIdReturnInvoice := 380;
  93.     vDocTypeIdCNAR := 251;
  94.     vDocTypeIdCNAR := 241;
  95.     i := 0;
  96.    
  97.     -- Get data-data activity gl code incentive dari system config value
  98.     SELECT TRIM(REPLACE(f_get_value_system_config_by_param_code(pTenantId, vParamCodeInsentif), ';', ''',''')) INTO vActivityGLCodeInsentif;
  99.    
  100.     SELECT TO_CHAR(current_timestamp, 'YYYY') INTO vSystemCurrentYear;
  101.     SELECT TO_CHAR(TO_DATE(pYear,'YYYY') - INTERVAL '1 Year','YYYY') INTO vLastYear;
  102.    
  103.     IF (pYear = vSystemCurrentYear) THEN
  104.         SELECT TO_CHAR(current_timestamp, 'YYYYMMDD') INTO vDateTo;
  105.     ELSIF (pYear < vSystemCurrentYear) THEN
  106.         SELECT vLastYear || vEndDate INTO vDateTo;
  107.     END IF;
  108.    
  109.    
  110.     DELETE FROM tt_salesman_from_salesman_hierarchy WHERE session_id = pSessionId;
  111.     DELETE FROM tt_salesman_customer_info_for_report_achievement_and_target WHERE session_id = pSessionId;
  112.     DELETE FROM tt_achievement_transaction_for_report_achievement_and_target WHERE session_id = pSessionId;
  113.     DELETE FROM tt_summary_for_report_achievement_and_target WHERE session_id = pSessionId;
  114.  
  115.     --Mendapatkan daftar salesman dalam hierarchy periode
  116.     PERFORM f_get_salesman_from_salesman_hierarchy(pSessionId, pTenantId, pSalesmanId, pPeriod);
  117.    
  118.     WITH grouped_salesman AS (
  119.         SELECT DISTINCT A.tenant_id, A.sales_child_id, A.group_brand, A.level
  120.         FROM tt_salesman_from_salesman_hierarchy A
  121.         WHERE A.session_id = pSessionId AND
  122.             A.tenant_id = pTenantId AND
  123.             pPeriod BETWEEN A.period_from AND A.period_to
  124.     )
  125.     INSERT INTO tt_salesman_customer_info_for_report_achievement_and_target (
  126.         session_id, tenant_id, customer_id, customer_code, customer_name, customer_city,
  127.         salesman_id, salesman_code, salesman_name, salesman_level, group_brand,
  128.         target_sales, q1_amount, q2_amount, q3_amount  
  129.     )
  130.     SELECT DISTINCT pSessionId, A.tenant_id, COALESCE(D.customer_id, vEmptyId), COALESCE(E.partner_code, vEmptyValue), COALESCE(E.partner_name, vEmptyValue), COALESCE(I.city, vEmptyValue),
  131.         A.sales_child_id, C.partner_code, C.partner_name, A.level, A.group_brand,
  132.         vZero, vZero, vZero, vZero
  133.     FROM grouped_salesman A
  134.     INNER JOIN m_partner C
  135.         ON A.sales_child_id = C.partner_id
  136.             AND A.tenant_id = C.tenant_id
  137.     LEFT JOIN m_salesman_to_customer D
  138.         ON A.tenant_id = D.tenant_id
  139.             AND A.sales_child_id = D.salesman_id
  140.             AND A.group_brand = D.group_brand
  141.             AND pPeriod BETWEEN D.period_from AND D.period_to
  142.     LEFT JOIN m_partner E
  143.         ON D.customer_id = E.partner_id
  144.             AND D.tenant_id = E.tenant_id
  145.     LEFT JOIN m_ctgr_partner F
  146.         ON F.tenant_id = E.tenant_id
  147.             AND F.ctgr_partner_id = F.ctgr_partner_id
  148.     LEFT JOIN t_user_role G
  149.         ON G.user_id = pUserId
  150.             AND G.role_id = pRoleId
  151.     LEFT JOIN m_policy_partner H
  152.         ON H.ctgr_partner_id = F.ctgr_partner_id
  153.             AND H.user_role_id = G.user_role_id
  154.     LEFT JOIN m_partner_address I
  155.         ON I.tenant_id = E.tenant_id
  156.             AND I.partner_id = E.partner_id
  157.             AND I.flg_default = vFlagYes
  158.     WHERE EXISTS (
  159.         SELECT 1
  160.         FROM m_partner_ou D
  161.         INNER JOIN m_ou_structure E
  162.             ON ( E.ou_bu_id = D.ou_id
  163.                 OR E.ou_branch_id = D.ou_id
  164.                 OR E.ou_sub_bu_id = D.ou_id )
  165.         WHERE C.partner_id = D.partner_id
  166.             AND e.ou_id = pOuId
  167.     );
  168.            
  169.     UPDATE tt_salesman_customer_info_for_report_achievement_and_target A
  170.     SET curr_code = B.curr_code,
  171.         target_sales = B.target_sales,
  172.         q1_amount = B.q1_amount,
  173.         q2_amount = B.q2_amount,
  174.         q3_amount = B.q3_amount
  175.     FROM m_customer_target_sales B
  176.     WHERE B.tenant_id = A.tenant_id
  177.         AND A.customer_id = B.customer_id
  178.         AND B.year = pYear
  179.         AND B.group_brand = A.group_brand;
  180.        
  181.     --Temporary Sales Invoice
  182.     EXECUTE
  183.     'INSERT INTO tt_achievement_transaction_for_report_achievement_and_target (
  184.         session_id, tenant_id, ou_id,
  185.         doc_id, doc_type_id, doc_no, doc_date, partner_id, curr_code, amount,
  186.         status_doc, workflow_status,
  187.         group_brand_parent_code
  188.     )
  189.     SELECT DISTINCT ON (D.so_id) $1, A.tenant_id, C.ou_id,
  190.         C.invoice_temp_id AS doc_id, C.doc_type_id, C.doc_no, C.doc_date, C.partner_id, B.curr_code, B.amount,
  191.         C.status_doc AS status_doc_invoice_temp, C.workflow_status,
  192.         G.code
  193.     FROM tt_salesman_customer_info_for_report_achievement_and_target A
  194.     INNER JOIN fi_invoice_ar_balance B ON B.partner_id = A.customer_id
  195.     INNER JOIN sl_invoice_temp C ON C.invoice_temp_id = B.invoice_ar_id
  196.     INNER JOIN sl_so_info D ON D.so_id = C.ref_id
  197.     INNER JOIN sl_so_brand_item E ON E.so_id = D.so_id
  198.     INNER JOIN m_brand_ext F ON F.brand_id = E.brand_id
  199.     INNER JOIN t_combo_value G ON A.group_brand = G.code
  200.     WHERE A.session_id = $1 AND
  201.         C.tenant_id = $2 AND
  202.         C.ou_id = $3 AND
  203.         B.doc_type_id = $4 AND
  204.         C.ref_doc_type_id = $5 AND
  205.         D.flg_type_so = $6 AND
  206.         SUBSTR(C.doc_date, 1, 4) BETWEEN $7 AND $8 AND
  207.         G.combo_id = $9 AND
  208.         $11 || F.group_brand || $11 = ANY (string_to_array (G.prop_key, $10))'
  209.     USING pSessionId, pTenantId, pOuId, vDocTypeIdInvoiceTemp, vDocTypeIdSOB, vFlgTypeSOReg, vLastYear, pYear, vComboGroupBrand, vArraySeparator, vQuote;
  210.        
  211.     --Sales Invoice
  212.     EXECUTE
  213.     'INSERT INTO tt_achievement_transaction_for_report_achievement_and_target (
  214.         session_id, tenant_id, ou_id,
  215.         doc_id, doc_type_id, doc_no, doc_date, partner_id, curr_code, amount,
  216.         status_doc, workflow_status,
  217.         group_brand_parent_code
  218.     )
  219.     SELECT DISTINCT ON (D.so_id) $1, A.tenant_id, C.ou_id,
  220.         C.invoice_id AS doc_id, C.doc_type_id, C.doc_no, C.doc_date, C.partner_id, B.curr_code, B.amount,
  221.         C.status_doc AS status_doc_invoice_temp, C.workflow_status,
  222.         G.code
  223.     FROM tt_salesman_customer_info_for_report_achievement_and_target A
  224.     INNER JOIN fi_invoice_ar_balance B ON B.partner_id = A.customer_id
  225.     INNER JOIN sl_invoice C ON C.invoice_id = B.invoice_ar_id
  226.     INNER JOIN sl_so_info D ON D.so_id = C.ref_id
  227.     INNER JOIN sl_so_brand_item E ON E.so_id = D.so_id
  228.     INNER JOIN m_brand_ext F ON F.brand_id = E.brand_id
  229.     INNER JOIN t_combo_value G ON A.group_brand = G.code
  230.     WHERE A.session_id = $1 AND
  231.         C.tenant_id = $2 AND
  232.         C.ou_id = $3 AND
  233.         B.doc_type_id = $4 AND
  234.         C.ref_doc_type_id = $5 AND
  235.         D.flg_type_so = $6 AND
  236.         SUBSTR(C.doc_date, 1, 4) BETWEEN $7 AND $8 AND
  237.         G.combo_id = $9 AND
  238.         $11 || F.group_brand || $11 = ANY (string_to_array (G.prop_key, $10))'
  239.     USING pSessionId, pTenantId, pOuId, vDocTypeIdSalesInvoice, vDocTypeIdSOB, vFlgTypeSOReg, vLastYear, pYear, vComboGroupBrand, vArraySeparator, vQuote;
  240.    
  241.     --Return
  242.     EXECUTE
  243.     'INSERT INTO tt_achievement_transaction_for_report_achievement_and_target (
  244.         session_id, tenant_id, ou_id,
  245.         doc_id, doc_type_id, doc_no, doc_date, partner_id, curr_code, amount,
  246.         status_doc, workflow_status,
  247.         group_brand_parent_code
  248.     )
  249.     SELECT DISTINCT ON (D.request_return_sales_id) $1, A.tenant_id, C.ou_id,
  250.         C.invoice_id AS doc_id, C.doc_type_id, C.doc_no, C.doc_date, C.partner_id, B.curr_code, B.amount,
  251.         C.status_doc AS status_doc_invoice_temp, C.workflow_status,
  252.         G.code
  253.     FROM tt_salesman_customer_info_for_report_achievement_and_target A
  254.     INNER JOIN fi_invoice_ar_balance B ON B.partner_id = A.customer_id
  255.     INNER JOIN sl_invoice C ON C.invoice_id = B.invoice_ar_id
  256.     INNER JOIN sl_request_return_sales_brand_item D ON D.request_return_sales_id = C.ref_id
  257.     INNER JOIN m_brand_ext F ON F.brand_id = D.brand_id
  258.     INNER JOIN t_combo_value G ON A.group_brand = G.code
  259.     WHERE A.session_id = $1 AND
  260.         C.tenant_id = $2 AND
  261.         C.ou_id = $3 AND
  262.         B.doc_type_id = $4 AND
  263.         C.ref_doc_type_id = $5 AND
  264.         SUBSTR(C.doc_date, 1, 4) BETWEEN $7 AND $8 AND
  265.         G.combo_id = $9 AND
  266.         $11 || F.group_brand || $11 = ANY (string_to_array (G.prop_key, $10))'
  267.     USING pSessionId, pTenantId, pOuId, vDocTypeIdReturnInvoice, vDocTypeIdRRS, vFlgTypeSOReg, vLastYear, pYear, vComboGroupBrand, vArraySeparator, vQuote;
  268.    
  269.     --CN AR
  270.     EXECUTE
  271.     'INSERT INTO tt_achievement_transaction_for_report_achievement_and_target (
  272.         session_id, tenant_id, ou_id,
  273.         doc_id, doc_type_id, doc_no, doc_date, partner_id, curr_code, amount,
  274.         status_doc, workflow_status,
  275.         group_brand_parent_code
  276.     )
  277.     SELECT $1, A.tenant_id, C.ou_id,
  278.         C.invoice_ar_id AS doc_id, C.doc_type_id, C.doc_no, C.doc_date, C.partner_id, B.curr_code, B.amount,
  279.         C.status_doc AS status_doc_invoice_temp, C.workflow_status,
  280.         G.code
  281.     FROM tt_salesman_customer_info_for_report_achievement_and_target A
  282.     INNER JOIN fi_invoice_ar_balance B ON B.partner_id = A.customer_id
  283.     INNER JOIN fi_invoice_ar C ON C.invoice_ar_id = B.invoice_ar_id
  284.     INNER JOIN t_combo_value G ON A.group_brand = G.code
  285.     WHERE A.session_id = $1 AND
  286.         C.tenant_id = $2 AND
  287.         C.ou_id = $3 AND
  288.         B.doc_type_id = $4 AND
  289.         SUBSTR(C.doc_date, 1, 4) BETWEEN $7 AND $8 AND
  290.         G.combo_id = $9'
  291.     USING pSessionId, pTenantId, pOuId, vDocTypeIdCNAR, vDocTypeIdCNAR, vFlgTypeSOReg, vLastYear, pYear, vComboGroupBrand, vArraySeparator, vQuote;
  292.    
  293.     --DN AR
  294.     EXECUTE
  295.     'INSERT INTO tt_achievement_transaction_for_report_achievement_and_target (
  296.         session_id, tenant_id, ou_id,
  297.         doc_id, doc_type_id, doc_no, doc_date, partner_id, curr_code, amount,
  298.         status_doc, workflow_status,
  299.         group_brand_parent_code
  300.     )
  301.     SELECT $1, A.tenant_id, C.ou_id,
  302.         C.invoice_ar_id AS doc_id, C.doc_type_id, C.doc_no, C.doc_date, C.partner_id, B.curr_code, B.amount,
  303.         C.status_doc AS status_doc_invoice_temp, C.workflow_status,
  304.         G.code
  305.     FROM tt_salesman_customer_info_for_report_achievement_and_target A
  306.     INNER JOIN fi_invoice_ar_balance B ON B.partner_id = A.customer_id
  307.     INNER JOIN fi_invoice_ar C ON C.invoice_ar_id = B.invoice_ar_id
  308.     INNER JOIN t_combo_value G ON A.group_brand = G.code
  309.     WHERE A.session_id = $1 AND
  310.         C.tenant_id = $2 AND
  311.         C.ou_id = $3 AND
  312.         B.doc_type_id = $4 AND
  313.         SUBSTR(C.doc_date, 1, 4) BETWEEN $7 AND $8 AND
  314.         G.combo_id = $9'
  315.     USING pSessionId, pTenantId, pOuId, vDocTypeIdDNAR, vDocTypeIdDNAR, vFlgTypeSOReg, vLastYear, pYear, vComboGroupBrand, vArraySeparator, vQuote;
  316.    
  317.        
  318.     Open pRefHeader FOR
  319.         SELECT f_get_partner_name(pSalesmanId) AS salesman_name, vDateTo AS date_to, vLastYear AS last_year, pYear AS current_year;
  320.     RETURN NEXT pRefHeader;
  321.    
  322.     WITH tt_grouped_summary AS (
  323.         SELECT A.tenant_id, A.salesman_id,  
  324.             A.target_sales AS target,
  325.             SUM(COALESCE(B.amount, 0)) AS year_to_date_accumulative_amount,
  326.             A.salesman_level,
  327.             A.group_brand AS group_brand_parent_code
  328.         FROM tt_salesman_customer_info_for_report_achievement_and_target A
  329.         LEFT JOIN tt_achievement_transaction_for_report_achievement_and_target B
  330.             ON B.partner_id = A.customer_id AND
  331.                 B.tenant_id = A.tenant_id AND
  332.                 SUBSTR(B.doc_date, 1, 4) = pYear AND
  333.                 B.group_brand_parent_code = A.group_brand
  334.         WHERE A.session_id = pSessionId AND
  335.             A.tenant_id = pTenantId
  336.         GROUP BY A.tenant_id, A.salesman_id, A.target_sales, A.salesman_level, A.group_brand
  337.     )
  338.     INSERT INTO tt_summary_for_report_achievement_and_target (
  339.         session_id, tenant_id, salesman_id,
  340.         target_amount,
  341.         year_to_date_accumulative_amount,
  342.         salesman_level, group_brand_parent_code
  343.     )
  344.     SELECT pSessionId, A.tenant_id, A.salesman_id,  
  345.             SUM(A.target) AS target,
  346.             SUM(A.year_to_date_accumulative_amount) AS year_to_date_accumulative_amount,
  347.             A.salesman_level,
  348.             A.group_brand_parent_code
  349.     FROM tt_grouped_summary A
  350.     GROUP BY A.tenant_id, A.salesman_id, A.salesman_level, A.group_brand_parent_code;
  351.    
  352.    
  353.     SELECT MAX(A.salesman_level) - 1
  354.     FROM tt_salesman_customer_info_for_report_achievement_and_target A
  355.     WHERE A.session_id = pSessionId AND
  356.         A.tenant_id = pTenantId INTO i;
  357.    
  358.     WHILE i >= 1 LOOP
  359.         PERFORM f_get_total_achievement_from_salesman_hierarchy(pSessionId, pTenantId, A.salesman_id, pYear, A.group_brand_parent_code)
  360.         FROM tt_summary_for_report_achievement_and_target A
  361.         WHERE A.session_id = pSessionId AND
  362.             A.tenant_id = pTenantId AND
  363.             A.salesman_level = i;
  364.         i := i - 1 ;
  365.     END LOOP ;
  366.    
  367.     Open pRefDetailSummary FOR
  368.         SELECT f_get_partner_name(A.salesman_id) AS salesman_name,
  369.             SUM(A.target_amount) AS target_amount,
  370.             SUM(A.year_to_date_accumulative_amount) AS year_to_date_accumulative_amount
  371.         FROM tt_summary_for_report_achievement_and_target A
  372.         WHERE A.session_id = pSessionId AND
  373.             A.tenant_id = pTenantId
  374.         GROUP BY A.tenant_id, A.salesman_id;
  375.     RETURN NEXT pRefDetailSummary;
  376.    
  377.     PERFORM SETVAL('r_achievement_vs_target_line_no_seq', 0);
  378.    
  379.     Open pRefDetail FOR
  380.         SELECT NEXTVAL('r_achievement_vs_target_line_no_seq') AS line_no,
  381.             B.customer_code, B.customer_name, B.customer_city,
  382.             'Septi' AS manager_name, '-' AS supervisor_name, 'Efendi' AS senior_sales_name, B.salesman_name AS junior_sales_name,
  383.             SUM(
  384.                 CASE WHEN C.year_date = vLastYear THEN
  385.                     A.amount
  386.                 ELSE
  387.                     0
  388.                 END
  389.             ) AS last_year_achievement_amount,
  390.             B.target_sales AS current_year_target_amount, B.q1_amount, B.q2_amount, B.q3_amount,
  391.             SUM(
  392.                 CASE WHEN C.year_date = pYear THEN
  393.                     A.amount
  394.                 ELSE
  395.                     0
  396.                 END
  397.             ) AS year_to_date_amount,
  398.             SUM(
  399.                 CASE WHEN C.q_no = 1 THEN
  400.                     A.amount
  401.                 ELSE
  402.                     0
  403.                 END
  404.             ) AS q1_achievement_amount,
  405.             SUM(
  406.                 CASE WHEN C.q_no = 2 THEN
  407.                     A.amount
  408.                 ELSE
  409.                     0
  410.                 END
  411.             ) AS q2_achievement_amount,
  412.             SUM(
  413.                 CASE WHEN C.q_no = 3 THEN
  414.                     A.amount
  415.                 ELSE
  416.                     0
  417.                 END
  418.             ) AS q3_achievement_amount
  419.         FROM tt_achievement_transaction_for_report_achievement_and_target A
  420.         INNER JOIN tt_salesman_customer_info_for_report_achievement_and_target B
  421.             ON A.partner_id = B.customer_id AND
  422.                 A.tenant_id = B.tenant_id
  423.         INNER JOIN dt_date C ON A.doc_date = C.string_date
  424.         GROUP BY B.customer_code, B.customer_name, B.customer_city,
  425.             B.salesman_name,
  426.             B.target_sales, B.q1_amount, B.q2_amount, B.q3_amount, group_brand_parent_code;
  427.     RETURN NEXT pRefDetail;
  428.        
  429.     DELETE FROM tt_salesman_from_salesman_hierarchy WHERE session_id = pSessionId;
  430.     DELETE FROM tt_salesman_customer_info_for_report_achievement_and_target WHERE session_id = pSessionId;
  431.     DELETE FROM tt_achievement_transaction_for_report_achievement_and_target WHERE session_id = pSessionId;
  432.     DELETE FROM tt_summary_for_report_achievement_and_target WHERE session_id = pSessionId;
  433.    
  434. END;
  435. $BODY$
  436.   LANGUAGE plpgsql VOLATILE
  437.   COST 100
  438.   /
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement