PAC成本更新事务处理


DECLARE
  l_itfs_rec mtl_transactions_interface% ROWTYPE;
BEGIN
  --插入接口表
  SELECT mtl_material_transactions_s.nextval
    INTO l_txn_header_id
    FROM dual;

  v_date                                := p_end_date - 1 || '
06:00:00';
  l_end_date                            := to_date(v_date,
                                                   'dd/mm/yy hh24:mi:ss');
  l_itfs_rec.transaction_header_id      := l_txn_header_id;
  l_itfs_rec.source_code                := 'CUXPACIP';
  l_itfs_rec.source_line_id             := 0;
  l_itfs_rec.source_header_id           := 0;
  l_itfs_rec.process_flag               := 1;
  l_itfs_rec.transaction_mode           := 2;
  l_itfs_rec.validation_required        := 1;
  l_itfs_rec.transaction_type_id        := 26; --固定
  l_itfs_rec.transaction_source_type_id := 14; --固定
  l_itfs_rec.organization_id            := get_mst_organization_id; --主组织
  SELECT cst.cost_type_id
    INTO l_itfs_rec.cost_type_id
    FROM cst_cost_types cst
   WHERE cst.cost_type = 'PAC'; --成本类型PAC
  l_itfs_rec.org_cost_group_id    := l_cost_group_id; --组织成本组
  l_itfs_rec.transaction_date     := l_end_date; --事务处理日期
  l_itfs_rec.inventory_item_id    := rec_i.inventory_item_id;
  l_itfs_rec.transaction_quantity := 0;
  l_itfs_rec.transaction_uom      := 'kg'; --物料主组织单位
  --l_itfs_rec.new_average_cost           := p_new_avg_cst;--新期间成本
  --l_itfs_rec.percentage_change          := p_percent_chage;--更改百分比

  l_value_chage                         := 30;
  l_itfs_rec.value_change               := l_value_chage; --库存值更改
  l_itfs_rec.material_account           := l_ap_accrual_account; --物料账户
  l_itfs_rec.material_overhead_account  := l_ap_accrual_account; --物料间接费用账户
  l_itfs_rec.resource_account           := l_ap_accrual_account; --资源账户
  l_itfs_rec.outside_processing_account := l_ap_accrual_account; --外协加工账户
  l_itfs_rec.overhead_account           := l_ap_accrual_account; --制造费用
  --l_itfs_rec.reason_id                  := p_reason_id;
  --l_itfs_rec.transaction_reference      := p_txn_ref;
  /*    l_itfs_rec.attribute_category    := p_att_cat;
  l_itfs_rec.attribute1            := p_att1;
  l_itfs_rec.attribute2            := p_att2;
  l_itfs_rec.attribute3            := p_att3;
  l_itfs_rec.attribute4            := p_att4;
  l_itfs_rec.attribute5            := p_att5;
  l_itfs_rec.attribute6            := p_att6;
  l_itfs_rec.attribute7            := p_att7;
  l_itfs_rec.attribute8            := p_att8;
  l_itfs_rec.attribute9            := p_att9;
  l_itfs_rec.attribute10           := p_att10;
  l_itfs_rec.attribute11           := p_att11;
  l_itfs_rec.attribute12           := p_att12;
  l_itfs_rec.attribute13           := p_att13;
  l_itfs_rec.attribute14           := p_att14;
  l_itfs_rec.attribute15           := p_att15;*/
  --set who
  l_itfs_rec.created_by             := g_user_id;
  l_itfs_rec.creation_date          := SYSDATE;
  l_itfs_rec.last_updated_by        := g_user_id;
  l_itfs_rec.last_update_date       := SYSDATE;
  l_itfs_rec.last_update_login      := g_login_id;
  l_itfs_rec.request_id             := g_request_id;
  l_itfs_rec.program_id             := g_prog_id;
  l_itfs_rec.program_application_id := g_prog_appl_id;
  l_itfs_rec.program_update_date    := SYSDATE;

  INSERT INTO mtl_transactions_interface VALUES l_itfs_rec;
END LOOP ;
--新增事务处理
IF x_return_status = fnd_api.g_ret_sts_success THEN
  l_api_flag := inv_txn_manager_pub.process_transactions(p_api_version      => 1.0,
                                                         p_init_msg_list    => fnd_api.g_false,
                                                         p_commit           => fnd_api.g_false,
                                                         p_validation_level => fnd_api.g_valid_level_full,
                                                         x_return_status    => x_return_status,
                                                         x_msg_count        => x_msg_count,
                                                         x_msg_data         => x_msg_data,
                                                         x_trans_count      => l_api_trans_cnt,
                                                         p_table            => 1,
                                                         p_header_id        => l_txn_header_id);
  IF nvl(l_api_flag,
-1 ) <> 0 OR nvl (x_return_status, 'X')
<> 'S' THEN
    fnd_message.set_name( 'FND', 'FND_GENERIC_MESSAGE' );
    fnd_message.set_token( 'MESSAGE', '成本更新失败' );
    fnd_msg_pub.add;
 
    fnd_message.set_name( 'FND', 'FND_GENERIC_MESSAGE' );
    fnd_message.set_token( 'MESSAGE',
                          'x_return_status : ' ||
x_return_status);
    fnd_msg_pub.add;
 
    fnd_message.set_name( 'FND', 'FND_GENERIC_MESSAGE' );
    fnd_message.set_token( 'MESSAGE', 'x_msg_data
: ' || x_msg_data);
    fnd_msg_pub.add;
 
    RAISE fnd_api.g_exc_error;
    --RAISE e_itfs_fail;
  END IF;
END IF ;
END;

EBS-PAC成本更新事务处理的更多相关文章

  1. EBS中OPM成本更新处理流程及对应的表结构、SLA表

    OPM成本更新流程:  1.跑实际成本处理  功能作用:计算成本  2.成本更新        功能作用:更新成本  3.OPM会计预处理程序->活动->提交流程 功能作用:是创建会计事件 ...

  2. 【SD系列】SAP 退货冲账过账成本更新

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[SD系列]SAP 退货冲账过账成本更新   前 ...

  3. 【EBS】取数SQL-平均成本更新的物料事务处理追溯到应付发票

    SELECT hou.name,--组织 aia.invoice_num,--发票编号 msib.segment1,--物料编码 mmt.transaction_id--物料事务处理 FROM mtl ...

  4. Amazon EBS的功能更新

    Amazon EBS(Elastic Block Store.简称EBS) 为 Amazon EC2 实例提供块级存储服务.EBS 卷须要通过网络訪问,而且能独立于实例的生命周期而存在.也就是说假如E ...

  5. 查询物料单位PAC成本

    select cpp.period_name 期间名称, ccga.organization_id 组织ID, ood.ORGANIZATION_CODE 组织代码, OOD.ORGANIZATION ...

  6. Oracle EBS CST 成本请求报错

    (文档 ID 430533.1) When running CMCPAW, Periodic Actual Cost Worker,  an error is received in the logf ...

  7. Oracle EBS OPM 生产批创建事务处理

    --生产批创建事物处理 --created by jenrry DECLARE p_mmti_rec mtl_transactions_interface%ROWTYPE; p_mmli_tbl gm ...

  8. EBS成本核算方法

    业务背景 成本核算方法,对应EBS系统中的成本方法,有四种: 1.标准成本 2.平均成本 平均成本又分为永续平均成本,即 Average Cost 期间平均成本,按照期间(自然月)来计算的平均成本 F ...

  9. Oracle EBS 如何月结、对账[Z]

    在Oracle系统处理月结业务时,需要遵循一定的操作顺序.这些业务,牵涉到相应的模块,包括:应付模块.采购模块.库存模块.应收模块.薪资模块.固定资产和总帐模块等 在Oracle系统中,总帐模块处于财 ...

随机推荐

  1. JDK版本错误:Unsupported major.minor version 51.0

    错误原因 有时候把项目从本机编译文件部署到服务器,或者发给别人使用时,会报如下异常: java.lang.UnsupportedClassVersionError: test_hello_world ...

  2. Java基础知识强化57:经典排序之希尔排序(ShellSort)

    1. 希尔排序的原理: 希尔排序(Shell Sort)是插入排序的一种.也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本.希尔排序是非稳定排序算法.该方法因DL.Shell于1959年提出 ...

  3. C#Transfrom

    代码如下: private void btnConvertType_Click(object sender, EventArgs e) { if (rdo_btn_ConvertObject.Chec ...

  4. linux系统自动执行任务(转)

    开机启动 开机启动应该是我们很经常的需求了,我们常需要在开机时就自动执行某些命令来开启服务,进程等,有了它我们不必再在每次开机时输入同一堆命令. chkconfig命令 使用chkconfig命令可以 ...

  5. linux od命令

    用户通常使用od命令查看特殊格式的文件内容.通过指定该命令的不同选项可以以十进制.八进制.十六进制和ASCII码来显示文件.od命令系统默认的显示方式是八进制,这也是该命令的名称由来(Octal Du ...

  6. Handler Looper 原理 详解

    演示代码 public class MainActivity extends ListActivity {     private TextView tv_info;     private CalT ...

  7. 触发器内insert,delete,update判断执行不同的内容

    create trigger tr_aon afor insert,update,delere asbegin IF EXISTS(SELECT 1 FROM inserted) AND NOT EX ...

  8. INVALID_USER_SCODE问题的解决办法

    在用高德地图API的时候,还会遇见一个为题,就是总是提示:INVALID_USER_SCODE.当遇见这个问题的时候,一般的问题都是,注册key之后没有十分钟就开始使用这个key值了.另外一种情况就是 ...

  9. java 修改文件名

    // 修改文件名 public static boolean modifyFileName(String serverPath, String oldFileName, String newLogin ...

  10. MySql事务及隔离级别

    在数据库中,所谓事务是指作为单个逻辑工作单元执行的一系列操作. 事务的操作: 先定义开始一个事务,然后对数据作修改操作, 这时如果提交(COMMIT),这些修改就永久地保存下来 如果回退(ROLLBA ...