Advertisement
Evra70

okeeessss

Apr 6th, 2022
1,304
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --sl_so_item(tax_percentage,tax_price,nett_sell_price,tax_amount,nett_item_amount)
  2. begin;
  3. UPDATE sl_so_item A
  4. SET tax_percentage = 10.0,
  5. tax_price =
  6.     f_tax_rounding(A.tenant_id, f_get_amount_before_tax((A.gross_sell_price - A.discount_amount),A.flg_tax_amount, 10.0,
  7.         f_get_digit_decimal_doc_curr(301, A.curr_code), 'RHU'), 10.0),
  8. nett_sell_price =
  9.     f_get_amount_before_tax((A.gross_sell_price - A.discount_amount), A.flg_tax_amount, 10.0,
  10.         f_get_digit_decimal_doc_curr(301, A.curr_code), 'RHU'),
  11. tax_amount =
  12.     f_tax_rounding(A.tenant_id, f_get_amount_before_tax(A.qty_int*(A.gross_sell_price - A.discount_amount),A.flg_tax_amount, 10.0,
  13.          f_get_digit_decimal_doc_curr(301, A.curr_code), 'RHU'), 10.0),
  14. nett_item_amount =
  15.     f_get_amount_before_tax(A.qty_int*(A.gross_sell_price - A.discount_amount), A.flg_tax_amount, 10.0,
  16.         f_get_digit_decimal_doc_curr(301, A.curr_code), 'RHU')
  17. WHERE A.tax_id <> -99
  18. AND A.so_id IN (4647477,4647480,4647557,4647595,4647423,
  19. 4647474,4647555,4647558,4647481);
  20.  
  21. --sl_so_balance_invoice(price_so,item_amount)
  22. UPDATE sl_so_balance_invoice D
  23. SET price_so = C.nett_sell_price,
  24. item_amount = f_get_amount_before_tax(B.qty_dlv_so * (C.gross_sell_price - C.discount_amount), C.flg_tax_amount, 10.0,
  25.                 f_get_digit_decimal_doc_curr(311, C.curr_code), 'RHU')
  26. FROM sl_do A, sl_do_item B, sl_so_item C
  27. WHERE A.do_id = B.do_id AND
  28.       B.ref_id = C.so_item_id AND
  29.       C.tax_id <> -99 AND
  30.       D.so_id = C.so_id AND
  31.       C.so_id IN (4647477,4647480,4647557,4647595,4647423,
  32.         4647474,4647555,4647558,4647481);
  33.  
  34. --sl_so_balance_invoice_tax(tax_percentage,base_amount,tax_amount)
  35. UPDATE sl_so_balance_invoice_tax D
  36. SET tax_percentage = 10.0,
  37. base_amount = f_get_amount_before_tax(B.qty_dlv_so * (C.gross_sell_price - C.discount_amount), C.flg_tax_amount, 10.0,
  38.                 f_get_digit_decimal_doc_curr(311, C.curr_code), 'RHU'),
  39. tax_amount = f_tax_rounding(A.tenant_id, f_get_amount_before_tax(B.qty_dlv_so * (C.gross_sell_price - C.discount_amount), C.flg_tax_amount, 10.0,
  40.                  f_get_digit_decimal_doc_curr(311, C.curr_code), 'RHU'), 10.0)
  41. FROM sl_do A, sl_do_item B, sl_so_item C
  42. WHERE A.do_id = B.do_id AND
  43.       B.ref_id = C.so_item_id AND
  44.       C.tax_id <> -99 AND
  45.       D.so_id = C.so_id AND
  46.       C.so_id IN (4647477,4647480,4647557,4647595,4647423,
  47.         4647474,4647555,4647558,4647481);
  48.  
  49. --sl_so_tax(tax_percentage,base_amount,tax_amount)
  50. WITH temp_update_sl_so_tax AS(
  51.     SELECT A.so_id,
  52.         SUM(f_get_amount_before_tax((A.qty_so * (A.gross_sell_price - A.discount_amount)), A.flg_tax_amount, 10.0,
  53.         f_get_digit_decimal_doc_curr(301, A.curr_code), 'RHU')) AS base_amount,
  54.         f_tax_rounding(A.tenant_id, SUM(f_get_amount_before_tax((A.qty_so * (A.gross_sell_price - A.discount_amount)), A.flg_tax_amount, 10.0,
  55.         f_get_digit_decimal_doc_curr(301, A.curr_code), 'RHU')), 10.0) AS tax_amount
  56.     FROM sl_so_item A
  57.     WHERE A.so_id IN (4647477,4647480,4647557,4647595,4647423,
  58.         4647474,4647555,4647558,4647481)
  59.     GROUP BY A.so_id,A.tenant_id
  60. )
  61. UPDATE sl_so_tax A
  62. SET tax_percentage = 10.0,
  63. base_amount = B.base_amount,
  64. tax_amount = B.tax_amount,
  65. remark = 'PPN 10%'
  66. FROM temp_update_sl_so_tax B
  67. WHERE A.so_id = B.so_id;
  68. --rollback
  69. --end  
  70.    
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement