更新PAC期初成本

2021-08-07 08:33:20 字數 1129 閱讀 4759

1、建立臨時表,存放期初資料

create

table cux_bh_cost_ny7 (item_id number,

item_num varchar2(260),

item_des varchar2(260),

cost_group_id number,

pac_period_id number,

quantity number,

item_cost_amount number);

2、將整理的資料新增到臨時表

select * from cux_bh_cost_ny7 for

update;

3、更新pac物料成本表

declare

cursor c_c is

select cpic.cost_layer_id, t.*

from cst_pac_item_costs cpic, cux_bh_cost_ny7 t

where t.item_id = cpic.inventory_item_id

and t.pac_period_id = cpic.pac_period_id

and t.cost_group_id = cpic.cost_group_id;

begin

for c in c_c loop

update cst_pac_item_costs t

set t.total_layer_quantity = c.quantity

where t.cost_layer_id = c.cost_layer_id;

update cst_pac_item_cost_details t

set t.item_balance = c.item_cost_amount,

t.item_cost = c.item_cost_amount / c.quantity

where t.cost_layer_id = c.cost_layer_id;

end loop;

commit;

end;

4、提交pac成本計算程式,系統將會按照新的數量和金額產生pac期初成本。

線段樹(單點更新and成段更新)

線段樹需要的空間。區間為1 n 假設是一棵完全二叉樹,且樹高為i。完全二叉樹性質 第i層最多有2 i 1 個結點。那麼 2 i 1 n i log2 n 1 共有 2 i 1 個結點,即 2 log2 n 1 1個結點 即2 2 log2 n 1 2 n 1 但這是建立樹是完全二叉樹的情況下。但是如...

線段樹成段更新之延遲更新

成段更新的重點是延遲更新,以區間 1,3 為例說明。注意,此例中 更新 為修改元素的值為a,查詢 為求區間中所有元素之和。建立二叉樹如圖示 每乙個圓圈代表乙個結點,圓內數字分別為結點標號和所對應區間,i 表示只含乙個數,只出現在葉節點中。當 要更新區間 1,2 中所有元素時,對應上圖即要更新結點4,...

線段樹成段更新 MB

include include using namespace std struct node a 4 1100000 int dp 1100000 n,m long long max long long int x,long long int y void build int l,int r,in...