Advertisement
aadddrr

FIX_LOG_STOCK_GENERATE_PO_DAN_RG

Jan 31st, 2018
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. CREATE TABLE in_log_product_balance_stock_20180131 AS SELECT * FROM in_log_product_balance_stock
  2.  
  3. SELECT * FROM pu_receive_goods LIMIT 10
  4.  
  5. SELECT * FROM pu_receive_goods_item LIMIT 10
  6.  
  7. SELECT product_status_code --INTO vProductStatus
  8.     FROM m_product_status
  9.     WHERE flg_buy = 'Y'
  10.  
  11.  
  12. SELECT * FROM pu_receive_goods WHERE doc_no = 'GRR/201610/010/000012'
  13. SELECT * FROM pu_receive_goods_item WHERE receive_goods_id = 774
  14.  
  15. SELECT * FROM pu_po WHERE po_id = 1134
  16.  
  17. SELECT * FROM pu_po_item WHERE po_id = 1134
  18.  
  19. SELECT * FROM pu_po_
  20.  
  21.  
  22. SELECT * FROM in_log_product_balance_stock A WHERE A.doc_no LIKE 'GRR%' AND A.doc_date LIKE '2016%' AND NOT EXISTS (
  23.     SELECT 1 FROM pu_receive_goods B
  24.     INNER JOIN pu_receive_goods_item C ON B.receive_goods_id = C.receive_goods_id
  25.     WHERE B.doc_no = A.doc_no
  26.     AND B.doc_date = A.doc_date
  27.     AND B.doc_type_id = A.doc_type_id
  28.     AND B.receive_goods_id =A.ref_id
  29.     AND C.product_id = A.product_id
  30.     AND C.qty_rcv_int = A.qty
  31. )
  32.  
  33. SELECT * FROM in_log_product_balance_stock_20180131 A WHERE A.doc_no LIKE 'GRR%' AND A.doc_date LIKE '2017%' AND NOT EXISTS (
  34.     SELECT 1 FROM pu_receive_goods B
  35.     INNER JOIN pu_receive_goods_item C ON B.receive_goods_id = C.receive_goods_id
  36.     WHERE B.doc_no = A.doc_no
  37.     AND B.doc_date = A.doc_date
  38.     AND B.doc_type_id = A.doc_type_id
  39.     AND B.receive_goods_id =A.ref_id
  40.     AND C.product_id = A.product_id
  41.     AND C.qty_rcv_int = A.qty
  42. )
  43.  
  44. SELECT * FROM in_log_product_balance_stock A
  45. WHERE A.doc_no LIKE 'GRR%'
  46.     AND A.doc_date LIKE '2016%'
  47.     AND NOT EXISTS(
  48.         SELECT 1
  49.         FROM pu_receive_goods B
  50.         INNER JOIN pu_receive_goods_item C ON B.receive_goods_id = C.receive_goods_id
  51.         WHERE B.tenant_id = A.tenant_id
  52.                     AND B.ou_id = A.ou_id
  53.                     AND B.doc_type_id = A.doc_type_id
  54.                     AND B.receive_goods_id = A.ref_id
  55.                     AND B.doc_no = A.doc_no
  56.                     AND B.doc_date = A.doc_date
  57.                     AND B.warehouse_id = A.warehouse_id
  58.                     AND C.product_id = A.product_id
  59.                     --AND C.product_balance_id = A.product_balance_id
  60.                     --AND C.product_status = A.product_status
  61.                     AND C.qty_rcv_int = A.qty
  62.     )
  63.  
  64. BEGIN
  65.  
  66.         /*INSERT INTO tr_report_sales_supplier(
  67.                    session_id, tenant_id, ou_id, partner_id, so_item_id, transaction_type, doc_no,
  68.                    doc_date, payment_method, product_id, product_code, supplier_product_code,
  69.                    product_name, product_style, color, psize, normal_price, sold_price,
  70.                    discount, margin_supp, sold_price_after_margin, qty_so, product_balance_id)*/
  71.             SELECT 'ADR123', 10, 10, C.supplier_id, E.ref_id, f_get_doc_desc(A.doc_type_id), A.doc_no,
  72.                    A.doc_date, $4, A.product_id, f_get_product_code(A.product_id), C.supplier_product_code,
  73.                    f_get_product_name(A.product_id), B.style_product, B.color, B.size, F.normal_price_correction, F.sold_price_used,
  74.                    F.discount, F.margin_supp_correction, F.sold_price_after_margin, SUM(A.qty) * -1, A.product_balance_id
  75.             SELECT A.product_balance_id
  76.             FROM in_log_product_balance_stock A
  77.             INNER JOIN m_product_custom B ON A.product_id = B.product_id
  78.             INNER JOIN m_product_consignment_supp_info C ON A.product_id = C.product_id
  79.             INNER JOIN in_inventory D ON A.ref_id = D.inventory_id
  80.             INNER JOIN in_inventory_item G ON D.inventory_id = G.inventory_id AND A.product_id = G.product_id
  81.             INNER JOIN sl_do_item E ON G.ref_item_id = E.do_item_id AND G.product_id = E.product_id
  82.             INNER JOIN pu_po_balance_item_consignment_sold F ON E.ref_id = F.so_item_id AND C.supplier_id = F.supplier_id
  83.             WHERE A.tenant_id = 10
  84.                 --AND A.doc_date BETWEEN '201601' AND $6
  85.                 AND A.doc_date LIKE '2016%'
  86.                 AND A.ou_id = 10
  87.                 AND B.flg_buy_konsinyasi = 'Y'
  88.                 AND A.doc_type_id IN (502)
  89.             AND F.from_manual = 'N'
  90.             GROUP BY C.supplier_id, E.ref_id, A.doc_type_id, A.doc_no, A.doc_date, A.product_id, C.supplier_product_code, B.style_product, B.color, B.size,
  91.             F.normal_price_correction, F.sold_price_used, F.discount, F.margin_supp_correction, F.sold_price_after_margin, A.product_balance_id
  92.  
  93.  
  94.         /*INSERT INTO tr_report_sales_supplier(
  95.                    session_id, tenant_id, ou_id, partner_id, so_item_id, transaction_type, doc_no,
  96.                    doc_date, payment_method, product_id, product_code, supplier_product_code,
  97.                    product_name, product_style, color, psize, normal_price, sold_price,
  98.                    discount, margin_supp, sold_price_after_margin, qty_so, product_balance_id)*/
  99.             SELECT 'ADR123', 10, 10, C.supplier_id, E.ref_id, f_get_doc_desc(A.doc_type_id), A.doc_no,
  100.                    A.doc_date, '', A.product_id, f_get_product_code(A.product_id), C.supplier_product_code,
  101.                    f_get_product_name(A.product_id), B.style_product, B.color, B.size, F.normal_price_correction, F.sold_price_used,
  102.                    F.discount, F.margin_supp_correction, F.sold_price_after_margin, SUM(A.qty) * -1, A.product_balance_id
  103.             FROM in_log_product_balance_stock A
  104.             INNER JOIN m_product_custom B ON A.product_id = B.product_id
  105.             INNER JOIN m_product_consignment_supp_info C ON A.product_id = C.product_id
  106.             INNER JOIN in_do_receipt D ON A.ref_id = D.do_receipt_id
  107.             INNER JOIN in_do_receipt_item G ON D.do_receipt_id = G.do_receipt_id AND A.product_id = G.product_id
  108.             INNER JOIN sl_do_item E ON G.ref_id = E.do_item_id AND G.product_id = E.product_id
  109.             INNER JOIN pu_po_balance_item_consignment_sold F ON E.ref_id = F.so_item_id AND C.supplier_id = F.supplier_id
  110.             WHERE A.tenant_id = 10
  111.                 AND A.doc_date LIKE '2016%'
  112.                 AND A.ou_id = 10
  113.                 AND B.flg_buy_konsinyasi = 'Y'
  114.                 AND A.doc_type_id IN (526)
  115.             AND F.from_manual = 'N'
  116.             GROUP BY C.supplier_id, E.ref_id, A.doc_type_id, A.doc_no, A.doc_date, A.product_id, C.supplier_product_code, B.style_product, B.color, B.size,
  117.             F.normal_price_correction, F.sold_price_used, F.discount, F.margin_supp_correction, F.sold_price_after_margin, A.product_balance_id
  118.  
  119. BEGIN
  120.  
  121.     --DELETE FROM in_log_product_balance_stock A WHERE A.doc_no LIKE 'GRR%' AND A.doc_date LIKE '2016%' AND NOT EXISTS (
  122.         SELECT 1 FROM pu_receive_goods B
  123.         INNER JOIN pu_receive_goods_item C ON B.receive_goods_id = C.receive_goods_id
  124.         WHERE B.doc_no = A.doc_no
  125.         AND B.doc_date = A.doc_date
  126.         AND B.doc_type_id = A.doc_type_id
  127.         AND B.receive_goods_id =A.ref_id
  128.         AND C.product_id = A.product_id
  129.         AND C.qty_rcv_int = A.qty
  130.     )
  131.  
  132.     SELECT * FROM in_log_product_balance_stock WHERE create_datetime = '20180131132801' ORDER BY doc_date
  133.    
  134.     DELETE FROM in_log_product_balance_stock WHERE create_datetime = '20180131132801'
  135.  
  136.     SELECT * FROM in_log_product_balance_stock WHERE create_datetime = '20180131132801'
  137.     WHERE EXISTS (
  138.         SELECT 1
  139.         FROM in_log_product_balance_stock
  140.         WHERE create_datetime = '20180131132801'
  141.     )
  142.    
  143.     SELECT tenant_id, ou_id, doc_type_id, ref_id, doc_no, doc_date, warehouse_id, product_id, product_balance_id, product_status FROM in_log_product_balance_stock WHERE create_datetime = '20180131132801'
  144.     GROUP BY tenant_id, ou_id, doc_type_id, ref_id, doc_no, doc_date, warehouse_id, product_id, product_balance_id, product_status
  145.     ORDER BY doc_date
  146.  
  147.     WITH tt_update_stock AS (
  148.         WITH tt_not_found AS (
  149.             SELECT * FROM in_log_product_balance_stock_20180131 A
  150.             WHERE A.doc_no LIKE 'GRR%' AND A.doc_date LIKE '2016%'
  151.                 AND NOT EXISTS (
  152.                     SELECT 1 FROM pu_receive_goods B
  153.                     INNER JOIN pu_receive_goods_item C ON B.receive_goods_id = C.receive_goods_id
  154.                     WHERE B.doc_no = A.doc_no
  155.                     AND B.doc_date = A.doc_date
  156.                     AND B.doc_type_id = A.doc_type_id
  157.                     AND B.receive_goods_id =A.ref_id
  158.                     AND C.product_id = A.product_id
  159.                     AND C.qty_rcv_int = A.qty
  160.                 )  
  161.         )
  162.         SELECT A.tenant_id, A.ou_id, A.doc_type_id,
  163.             A.receive_goods_id, A.doc_no, A.doc_date, A.partner_id, B.product_id, A.warehouse_id,
  164.             D.product_balance_id, 'GOOD', B.base_uom_id, SUM(B.qty_rcv_int) AS qty_rcv_int
  165.         FROM pu_receive_goods A
  166.         INNER JOIN pu_receive_goods_item B ON A.receive_goods_id = B.receive_goods_id
  167.         INNER JOIN in_product_balance D ON
  168.             A.tenant_id = D.tenant_id AND
  169.             B.product_id = D.product_id
  170.         AND EXISTS(
  171.             SELECT 1
  172.             FROM tt_not_found Z
  173.             WHERE A.receive_goods_id = Z.ref_id
  174.                 AND A.doc_type_id = Z.doc_type_id
  175.                 AND A.doc_no = Z.doc_no
  176.                 AND A.doc_date = Z.doc_date
  177.         )
  178.         GROUP BY A.tenant_id, A.ou_id, A.doc_type_id,
  179.             A.receive_goods_id, A.doc_no, A.doc_date, A.partner_id, B.product_id, A.warehouse_id,
  180.             D.product_balance_id, B.base_uom_id
  181.     )
  182.     UPDATE in_log_product_balance_stock Y
  183.     SET qty = Y.qty + A.qty_rcv_int
  184.     FROM tt_update_stock A
  185.         WHERE A.tenant_id = Y.tenant_id
  186.         AND A.ou_id = Y.ou_id
  187.         AND A.doc_type_id = Y.doc_type_id
  188.         AND A.receive_goods_id =  Y.ref_id
  189.         AND A.doc_no = Y.doc_no
  190.         AND A.doc_date = Y.doc_date
  191.         AND A.partner_id = Y.partner_id
  192.         AND A.product_id = Y.product_id
  193.         AND A.warehouse_id = Y.warehouse_id
  194.         AND A.product_balance_id = Y.product_balance_id
  195.         AND A.base_uom_id = Y.base_uom_id
  196.         AND A.product_status = Y.product_status
  197.  
  198.     WITH tt_not_found AS (
  199.         SELECT * FROM in_log_product_balance_stock_20180131 A
  200.         WHERE A.doc_no LIKE 'GRR%' AND A.doc_date LIKE '2016%'
  201.             AND NOT EXISTS (
  202.                 SELECT 1 FROM pu_receive_goods B
  203.                 INNER JOIN pu_receive_goods_item C ON B.receive_goods_id = C.receive_goods_id
  204.                 WHERE B.doc_no = A.doc_no
  205.                 AND B.doc_date = A.doc_date
  206.                 AND B.doc_type_id = A.doc_type_id
  207.                 AND B.receive_goods_id =A.ref_id
  208.                 AND C.product_id = A.product_id
  209.                 AND C.qty_rcv_int = A.qty
  210.             )
  211.     )
  212.     INSERT INTO in_log_product_balance_stock(
  213.             tenant_id, ou_id, doc_type_id,
  214.             ref_id, doc_no, doc_date, partner_id, product_id, warehouse_id,
  215.             product_balance_id, product_status, base_uom_id, qty, version,
  216.             create_datetime, create_user_id, update_datetime, update_user_id)
  217.         SELECT A.tenant_id, A.ou_id, A.doc_type_id,
  218.             A.receive_goods_id, A.doc_no, A.doc_date, A.partner_id, B.product_id, A.warehouse_id,
  219.             D.product_balance_id, 'GOOD', B.base_uom_id, SUM(B.qty_rcv_int), 0,
  220.             '20180131132801', -1, '20180131132801', -1
  221.         FROM pu_receive_goods A
  222.         INNER JOIN pu_receive_goods_item B ON A.receive_goods_id = B.receive_goods_id
  223.         INNER JOIN in_product_balance D ON
  224.         A.tenant_id = D.tenant_id AND
  225.         B.product_id = D.product_id
  226.         AND EXISTS(
  227.         SELECT 1
  228.         FROM tt_not_found Z
  229.         WHERE A.receive_goods_id = Z.ref_id
  230.             AND A.doc_type_id = Z.doc_type_id
  231.             AND A.doc_no = Z.doc_no
  232.             AND A.doc_date = Z.doc_date
  233.         )
  234.         AND NOT EXISTS(
  235.         SELECT 1
  236.         FROM in_log_product_balance_stock Y
  237.         WHERE A.tenant_id = Y.tenant_id
  238.             AND A.ou_id = Y.ou_id
  239.             AND A.doc_type_id = Y.doc_type_id
  240.             AND A.receive_goods_id =  Y.ref_id
  241.             AND A.doc_no = Y.doc_no
  242.             AND A.doc_date = Y.doc_date
  243.             AND A.partner_id = Y.partner_id
  244.             AND B.product_id = Y.product_id
  245.             AND A.warehouse_id = Y.warehouse_id
  246.             AND D.product_balance_id = Y.product_balance_id
  247.             AND B.base_uom_id = Y.base_uom_id
  248.             AND Y.product_status = 'GOOD'
  249.         )
  250.         GROUP BY A.tenant_id, A.ou_id, A.doc_type_id,
  251.             A.receive_goods_id, A.doc_no, A.doc_date, A.partner_id, B.product_id, A.warehouse_id,
  252.             D.product_balance_id, B.base_uom_id
  253.  
  254.    
  255.  
  256.         --DELETE FROM in_log_product_balance_stock A WHERE A.doc_no LIKE 'GRR%' AND A.doc_date LIKE '2017%' AND NOT EXISTS (
  257.         SELECT 1 FROM pu_receive_goods B
  258.         INNER JOIN pu_receive_goods_item C ON B.receive_goods_id = C.receive_goods_id
  259.         WHERE B.doc_no = A.doc_no
  260.         AND B.doc_date = A.doc_date
  261.         AND B.doc_type_id = A.doc_type_id
  262.         AND B.receive_goods_id =A.ref_id
  263.         AND C.product_id = A.product_id
  264.         AND C.qty_rcv_int = A.qty
  265.     )
  266.            
  267.  
  268.         --DELETE FROM in_log_product_balance_stock A WHERE A.doc_no LIKE 'GRR%' AND A.doc_date LIKE '2017%' AND NOT EXISTS (
  269.         SELECT 1 FROM pu_receive_goods B
  270.         INNER JOIN pu_receive_goods_item C ON B.receive_goods_id = C.receive_goods_id
  271.         WHERE B.doc_no = A.doc_no
  272.         AND B.doc_date = A.doc_date
  273.         AND B.doc_type_id = A.doc_type_id
  274.         AND B.receive_goods_id =A.ref_id
  275.         AND C.product_id = A.product_id
  276.         AND C.qty_rcv_int = A.qty
  277.     )
  278.  
  279.  
  280.     WITH tt_update_stock AS (
  281.         WITH tt_not_found AS (
  282.             SELECT * FROM in_log_product_balance_stock_20180131 A
  283.             WHERE A.doc_no LIKE 'GRR%' AND A.doc_date LIKE '2017%'
  284.                 AND NOT EXISTS (
  285.                     SELECT 1 FROM pu_receive_goods B
  286.                     INNER JOIN pu_receive_goods_item C ON B.receive_goods_id = C.receive_goods_id
  287.                     WHERE B.doc_no = A.doc_no
  288.                     AND B.doc_date = A.doc_date
  289.                     AND B.doc_type_id = A.doc_type_id
  290.                     AND B.receive_goods_id =A.ref_id
  291.                     AND C.product_id = A.product_id
  292.                     AND C.qty_rcv_int = A.qty
  293.                 )  
  294.         )
  295.         SELECT A.tenant_id, A.ou_id, A.doc_type_id,
  296.             A.receive_goods_id, A.doc_no, A.doc_date, A.partner_id, B.product_id, A.warehouse_id,
  297.             D.product_balance_id, 'GOOD', B.base_uom_id, SUM(B.qty_rcv_int) AS qty_rcv_int
  298.         FROM pu_receive_goods A
  299.         INNER JOIN pu_receive_goods_item B ON A.receive_goods_id = B.receive_goods_id
  300.         INNER JOIN in_product_balance D ON
  301.             A.tenant_id = D.tenant_id AND
  302.             B.product_id = D.product_id
  303.         AND EXISTS(
  304.             SELECT 1
  305.             FROM tt_not_found Z
  306.             WHERE A.receive_goods_id = Z.ref_id
  307.                 AND A.doc_type_id = Z.doc_type_id
  308.                 AND A.doc_no = Z.doc_no
  309.                 AND A.doc_date = Z.doc_date
  310.         )
  311.         GROUP BY A.tenant_id, A.ou_id, A.doc_type_id,
  312.             A.receive_goods_id, A.doc_no, A.doc_date, A.partner_id, B.product_id, A.warehouse_id,
  313.             D.product_balance_id, B.base_uom_id
  314.     )
  315.     UPDATE in_log_product_balance_stock Y
  316.     SET qty = Y.qty + A.qty_rcv_int
  317.     FROM tt_update_stock A
  318.         WHERE A.tenant_id = Y.tenant_id
  319.         AND A.ou_id = Y.ou_id
  320.         AND A.doc_type_id = Y.doc_type_id
  321.         AND A.receive_goods_id =  Y.ref_id
  322.         AND A.doc_no = Y.doc_no
  323.         AND A.doc_date = Y.doc_date
  324.         AND A.partner_id = Y.partner_id
  325.         AND A.product_id = Y.product_id
  326.         AND A.warehouse_id = Y.warehouse_id
  327.         AND A.product_balance_id = Y.product_balance_id
  328.         AND A.base_uom_id = Y.base_uom_id
  329.         AND A.product_status = Y.product_status
  330.  
  331.     WITH tt_not_found AS (
  332.         SELECT * FROM in_log_product_balance_stock_20180131 A
  333.         WHERE A.doc_no LIKE 'GRR%' AND A.doc_date LIKE '2017%'
  334.             AND NOT EXISTS (
  335.                 SELECT 1 FROM pu_receive_goods B
  336.                 INNER JOIN pu_receive_goods_item C ON B.receive_goods_id = C.receive_goods_id
  337.                 WHERE B.doc_no = A.doc_no
  338.                 AND B.doc_date = A.doc_date
  339.                 AND B.doc_type_id = A.doc_type_id
  340.                 AND B.receive_goods_id =A.ref_id
  341.                 AND C.product_id = A.product_id
  342.                 AND C.qty_rcv_int = A.qty
  343.             )
  344.     )
  345.     INSERT INTO in_log_product_balance_stock(
  346.             tenant_id, ou_id, doc_type_id,
  347.             ref_id, doc_no, doc_date, partner_id, product_id, warehouse_id,
  348.             product_balance_id, product_status, base_uom_id, qty, version,
  349.             create_datetime, create_user_id, update_datetime, update_user_id)
  350.         SELECT A.tenant_id, A.ou_id, A.doc_type_id,
  351.             A.receive_goods_id, A.doc_no, A.doc_date, A.partner_id, B.product_id, A.warehouse_id,
  352.             D.product_balance_id, 'GOOD', B.base_uom_id, SUM(B.qty_rcv_int), 0,
  353.             '20180131132801', -1, '20180131132801', -1
  354.         FROM pu_receive_goods A
  355.         INNER JOIN pu_receive_goods_item B ON A.receive_goods_id = B.receive_goods_id
  356.         INNER JOIN in_product_balance D ON
  357.         A.tenant_id = D.tenant_id AND
  358.         B.product_id = D.product_id
  359.         AND EXISTS(
  360.         SELECT 1
  361.         FROM tt_not_found Z
  362.         WHERE A.receive_goods_id = Z.ref_id
  363.             AND A.doc_type_id = Z.doc_type_id
  364.             AND A.doc_no = Z.doc_no
  365.             AND A.doc_date = Z.doc_date
  366.         )
  367.          AND NOT EXISTS(
  368.         SELECT 1
  369.         FROM in_log_product_balance_stock Y
  370.         WHERE A.tenant_id = Y.tenant_id
  371.             AND A.ou_id = Y.ou_id
  372.             AND A.doc_type_id = Y.doc_type_id
  373.             AND A.receive_goods_id =  Y.ref_id
  374.             AND A.doc_no = Y.doc_no
  375.             AND A.doc_date = Y.doc_date
  376.             AND A.partner_id = Y.partner_id
  377.             AND B.product_id = Y.product_id
  378.             AND A.warehouse_id = Y.warehouse_id
  379.             AND D.product_balance_id = Y.product_balance_id
  380.             AND B.base_uom_id = Y.base_uom_id
  381.             AND Y.product_status = 'GOOD'
  382.         )
  383.         GROUP BY A.tenant_id, A.ou_id, A.doc_type_id,
  384.             A.receive_goods_id, A.doc_no, A.doc_date, A.partner_id, B.product_id, A.warehouse_id,
  385.             D.product_balance_id, B.base_uom_id
  386.  
  387.  
  388. END
  389.  
  390.  
  391.     WITH tt_not_found AS (
  392.         SELECT * FROM in_log_product_balance_stock_20180131 A
  393.         WHERE A.doc_no LIKE 'GRR%' AND A.doc_date LIKE '2017%'
  394.             AND NOT EXISTS (
  395.                 SELECT 1 FROM pu_receive_goods B
  396.                 INNER JOIN pu_receive_goods_item C ON B.receive_goods_id = C.receive_goods_id
  397.                 WHERE B.doc_no = A.doc_no
  398.                 AND B.doc_date = A.doc_date
  399.                 AND B.doc_type_id = A.doc_type_id
  400.                 AND B.receive_goods_id =A.ref_id
  401.                 AND C.product_id = A.product_id
  402.                 AND C.qty_rcv_int = A.qty
  403.             )
  404.     )
  405.     /*INSERT INTO in_log_product_balance_stock(
  406.             tenant_id, ou_id, doc_type_id,
  407.             ref_id, doc_no, doc_date, partner_id, product_id, warehouse_id,
  408.             product_balance_id, product_status, base_uom_id, qty, version,
  409.             create_datetime, create_user_id, update_datetime, update_user_id)*/
  410.         /*SELECT A.tenant_id, A.ou_id, A.doc_type_id,
  411.             A.receive_goods_id, A.doc_no, A.doc_date, A.partner_id, B.product_id, A.warehouse_id,
  412.             D.product_balance_id, 'GOOD', B.base_uom_id, B.qty_rcv_int, 0,
  413.             '20180131132801', -1, '20180131132801', -1*/
  414.         SELECT A.*
  415.         FROM pu_receive_goods A
  416.         INNER JOIN pu_receive_goods_item B ON A.receive_goods_id = B.receive_goods_id
  417.         --INNER JOIN pu_receive_goods_product C ON B.receive_goods_item_id = C.receive_goods_item_id
  418.         /*INNER JOIN in_product_balance D ON
  419.         A.tenant_id = D.tenant_id AND
  420.         B.product_id = D.product_id */
  421.         --AND
  422.         --C.serial_number = D.serial_number AND
  423.         --C.lot_number = D.lot_number
  424.         AND EXISTS(
  425.         SELECT 1
  426.         FROM tt_not_found Z
  427.         WHERE A.receive_goods_id = Z.ref_id
  428.         )
  429.  
  430.  
  431. SELECT * FROM pu_receive_goods_product WHERE receive_goods_item_id = 21010
  432.  
  433. ROLLBACK
  434.  
  435.  
  436. SELECT log_product_balance_stock_id, 'N', tenant_id, A.ou_id, doc_type_id, ref_id, doc_no,
  437.        doc_date, partner_id, A.product_id, D.flg_buy_konsinyasi, warehouse_id, product_balance_id,
  438.        product_status, base_uom_id, qty, ' ', -99, B.ou_bu_id, '201712'
  439.     FROM in_log_product_balance_stock A, m_ou_structure B, dt_date C, m_product_custom D
  440.     WHERE A.ou_id = B.ou_id AND
  441.         B.ou_bu_id = 10 AND
  442.         A.doc_date = C.string_date AND
  443.         C.year_month_date = '201712' AND
  444.         A.product_id = D.product_id AND
  445.         A.tenant_id = 10
  446.        
  447.     SELECT *
  448.     FROM in_log_product_balance_stock A, m_ou_structure B, dt_date C, m_product_custom D
  449.     WHERE A.ou_id = B.ou_id AND
  450.         B.ou_bu_id = 10 AND
  451.         A.doc_date = C.string_date AND
  452.         C.year_month_date = '201712' AND
  453.         A.product_id = D.product_id AND
  454.         A.tenant_id = 10
  455.     AND EXISTS (
  456.         SELECT 1
  457.         FROM in_log_product_balance_stock Y
  458.         WHERE A.tenant_id = Y.tenant_id
  459.             AND A.ou_id = Y.ou_id
  460.             AND A.doc_type_id = Y.doc_type_id
  461.             AND A.ref_id =  Y.ref_id
  462.             AND A.doc_no = Y.doc_no
  463.             AND A.doc_date = Y.doc_date
  464.             AND A.partner_id = Y.partner_id
  465.             AND A.product_id = Y.product_id
  466.             AND A.warehouse_id = Y.warehouse_id
  467.             AND A.product_balance_id = Y.product_balance_id
  468.             AND A.base_uom_id = Y.base_uom_id
  469.             AND A.product_status = Y.product_status
  470.             AND A.log_product_balance_stock_id <> Y.log_product_balance_stock_id
  471.     )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement