--以下代码于20171230在TONY环境中实现

--初始化

/*
begin
  fnd_global.apps_initialize(user_id      => 1110,
                             resp_id      => 50597,
                             resp_appl_id => 20003);
  mo_global.init('M');
end;
*/

--上PA模块的采购合同导入代码--测试通过20170906,205采购订单--只导入单行,如果是多行,则需要加loop
DECLARE
    l_api_name CONSTANT VARCHAR2(30) := 'create_purchase_order';
    l_savepoint_name       VARCHAR2(30) := '';
    p_batch_id             NUMBER;
    l_header_iface_rec     po_headers_interface%ROWTYPE;
    l_line_iface_rec       po_lines_interface%ROWTYPE;
    l_dist_iface_rec       po_distributions_interface%ROWTYPE;
    l_line_num             NUMBER;
    l_task_id              NUMBER;
    l_chart_of_accounts_id NUMBER;
    l_segment1             VARCHAR2(30);
    l_segment2             VARCHAR2(30);
    l_segment3             VARCHAR2(30);
    l_segment4             VARCHAR2(30);
    l_segment5             VARCHAR2(100);
    l_segment6             VARCHAR2(30);
    l_segment7             VARCHAR2(30);
    l_segment8             VARCHAR2(30);
    l_segment9             VARCHAR2(30);
    l_segment10            VARCHAR2(30);
    l_line_type_id         NUMBER;
    l_expenditure_type     pa_expenditure_types.expenditure_type%TYPE;
    l_charge_account_id    NUMBER;
    l_agent_id             NUMBER;
    l_validate_status      VARCHAR2(1);
 
  BEGIN
--获取采购订单行类型对应的ID,1020代表费用金额,对应单位为元

/*      SELECT plt.line_type_id
        FROM po_line_types_vl plt, mtl_units_of_measure_vl muom
       WHERE plt.unit_of_measure = muom.unit_of_measure
        -- AND muom.uom_code = p_uom_code
         AND rownum = 1;*/
    
      l_task_id              := 335351;--NULL;
      l_chart_of_accounts_id := NULL;
      l_segment1             := NULL;
      l_segment2             := NULL;
      l_segment3             := NULL;
      l_segment4             := NULL;
      l_segment6             := NULL;
      l_segment7             := NULL;
      l_segment8             := NULL;
      l_segment9             := NULL;
      l_segment10            := NULL;
      l_line_type_id         := 1;--NULL;
      l_expenditure_type     := NULL;
      l_charge_account_id    := NULL;
      l_agent_id             := NULL;
      
      --project_id=237441 org_id = 351 agent_id = 1034
begin
  fnd_global.apps_initialize(user_id      => 1110,
                             resp_id      => 50597,
                             resp_appl_id => 20003);
  mo_global.init('M');
end;

l_segment5 := 'GT-2016-JZ·G-702';--rec_progress.project_number;
    
      --如果是期初的劳务的应付暂估,将使用(期初应付暂估中转科目),且项目段为0 
/*      IF rec_progress.is_qichu = 'QICHU' THEN
        l_segment3 := '9006';
        l_segment5 := '0';
      END IF;*/
    
      --获取PO借记账户--取不到,待测试
      BEGIN
        l_charge_account_id := cux_gl_utl.get_coa_ccid(p_chart_of_accounts_id => 50388,
                                                       p_seg1                 => '1027',
                                                       p_seg2                 => '0',
                                                       p_seg3                 => '0',
                                                       p_seg4                 => '0',
                                                       p_seg5                 => '0',
                                                       p_seg6                 => '0',
                                                       p_seg7                 => '0',
                                                       p_seg8                 => '0',
                                                       p_seg9                 => '0',
                                                       p_seg10                => '0');
      EXCEPTION
        WHEN others THEN
          dbms_output.put_line('empty1');--null;
      END;
      IF l_charge_account_id IS NULL THEN
        dbms_output.put_line('empty2');--null;
      END IF;
      l_line_type_id := 1;--货物--get_line_type_id(rec_progress.currency_code);

l_agent_id := 61;--get_agent_id(rec_progress.created_by);

l_header_iface_rec                     := NULL;
      l_header_iface_rec.interface_header_id := po_headers_interface_s.nextval;
      IF p_batch_id IS NULL THEN
        p_batch_id := l_header_iface_rec.interface_header_id;
      END IF;
      l_header_iface_rec.batch_id              := p_batch_id;
      l_header_iface_rec.interface_source_code := 'PO';
      l_header_iface_rec.process_code          := 'PENDING';
      l_header_iface_rec.action                := 'ORIGINAL';
      l_header_iface_rec.document_type_code    := 'STANDARD';
      l_header_iface_rec.document_subtype      := NULL;
      l_header_iface_rec.approval_status       := 'APPROVED';
      l_header_iface_rec.vendor_id             := 1;--2352;--rec_progress.vendor_id;
      l_header_iface_rec.vendor_site_id        := 1;--279463;--rec_progress.vendor_site_id;
      l_header_iface_rec.terms_id              := 10000;--10060;--rec_progress.terms_id;
      l_header_iface_rec.ship_to_location_id   := 144;--rec_progress.ship_to_location_id;
      l_header_iface_rec.bill_to_location_id   := 144;--rec_progress.bill_to_location_id;
      l_header_iface_rec.agent_id              := l_agent_id;
      l_header_iface_rec.currency_code         := 'CNY';--rec_progress.currency_code;
      l_header_iface_rec.org_id                := 82;--rec_progress.org_id;
    
      l_header_iface_rec.attribute_category := 'STANDARD';
        --材料
        l_header_iface_rec.attribute2 := '10';

l_header_iface_rec.attribute3 := '30';
      l_header_iface_rec.attribute4 := 'FB12345';--rec_progress.contract_number;
      --l_line_iface_rec.attribute5 := rec_progress.work_progress_id;
      l_header_iface_rec.interface_source_code := 'WORK_PROGRESS';
    
      l_header_iface_rec.creation_date          := SYSDATE;
      l_header_iface_rec.created_by             := 1110;
      l_header_iface_rec.last_update_date       := SYSDATE;
      l_header_iface_rec.last_updated_by        := 1110;
      l_header_iface_rec.last_update_login      := -1;
      l_header_iface_rec.program_application_id := 20003;
      l_header_iface_rec.program_id             := -1;
      l_header_iface_rec.program_update_date    := SYSDATE;
      l_header_iface_rec.request_id             := -1;
    
      INSERT INTO po_headers_interface VALUES l_header_iface_rec;
    
      l_line_num := 0;
      
        l_line_num       := l_line_num + 1;
        l_line_iface_rec := NULL;
        --LINES
      
        l_line_iface_rec.interface_header_id := l_header_iface_rec.interface_header_id;
        l_line_iface_rec.interface_line_id   := po_lines_interface_s.nextval;
        l_line_iface_rec.process_code        := 'PENDING';
        l_line_iface_rec.action              := 'ORIGINAL';
        l_line_iface_rec.line_num            := 1;
        l_line_iface_rec.line_type_id        := 1020;--l_line_type_id;
        l_line_iface_rec.item_description    := '测试金额';--rec_line.line_entity;
    --    l_line_iface_rec.item_id             := 81;--rec_line.line_entity;--不用输入
        l_line_iface_rec.quantity            := 100;--rec_line.amount; ---增值税上线修改
    --    l_line_iface_rec.unit_price          := 1;--不用输入,在采购订单行类型中会自动带出价格
        l_line_iface_rec.need_by_date        := SYSDATE;
        l_line_iface_rec.line_attribute15    := 222222;--rec_line.progress_line_id;
      
        --SHIPMENTS
        l_line_iface_rec.shipment_num            := 1;
        l_line_iface_rec.ship_to_organization_id := 81;--rec_progress.inventory_organization_id;
        l_line_iface_rec.receiving_routing_id    := 3;--1:--标准接受--3; --直接交货 
      
        l_line_iface_rec.creation_date     := SYSDATE;
        l_line_iface_rec.created_by        := 1110;
        l_line_iface_rec.last_update_date  := SYSDATE;
        l_line_iface_rec.last_updated_by   := 1110;
        l_line_iface_rec.last_update_login := -1;
      
        INSERT INTO po_lines_interface VALUES l_line_iface_rec;
        --distributions
        l_dist_iface_rec                             := NULL;
        l_dist_iface_rec.interface_header_id         := l_header_iface_rec.interface_header_id;
        l_dist_iface_rec.interface_line_id           := l_line_iface_rec.interface_line_id;
        l_dist_iface_rec.interface_distribution_id   := po_distributions_interface_s.nextval;
        l_dist_iface_rec.distribution_num            := 1;
        l_dist_iface_rec.charge_account_id           := 1002;--226697l_charge_account_id; --PO借记账户对应form界面的CODE_COMBINATION_ID
       -- l_dist_iface_rec.project_id                  := 237441;--rec_progress.project_id;
      --  l_dist_iface_rec.task_id                     := l_task_id;--不必添加task_id不然会在入库的时候匹配不上货位信息,可测试
        --l_dist_iface_rec.expenditure_type            := l_expenditure_type;
       -- l_dist_iface_rec.expenditure_organization_id := 315;--rec_progress.inventory_organization_id;
        --l_dist_iface_rec.expenditure_item_date       := SYSDATE;
        l_dist_iface_rec.quantity_ordered            := 100;--rec_line.amount;
      
        l_dist_iface_rec.creation_date     := SYSDATE;
        l_dist_iface_rec.created_by        := 1110;
        l_dist_iface_rec.last_update_date  := SYSDATE;
        l_dist_iface_rec.last_updated_by   := 1110;
        l_dist_iface_rec.last_update_login := -1;
      
        INSERT INTO po_distributions_interface VALUES l_dist_iface_rec;

DECLARE
      l_count NUMBER;
    BEGIN
      IF p_batch_id IS NOT NULL THEN
        po_docs_interface_sv5.process_po_headers_interface(x_selected_batch_id          => p_batch_id,
                                                           x_buyer_id                   => NULL,
                                                           x_document_type              => 'STANDARD',
                                                           x_document_subtype           => NULL,
                                                           x_create_items               => 'N',
                                                           x_create_sourcing_rules_flag => NULL,
                                                           x_rel_gen_method             => NULL,
                                                           x_approved_status            => 'APPROVED',
                                                           x_commit_interval            => 10,
                                                           x_process_code               => 'PENDING',
                                                           x_interface_header_id        => NULL,
                                                           x_org_id_param               => 82,--org_id
                                                           x_ga_flag                    => NULL,
                                                           p_sourcing_level             => NULL,
                                                           p_inv_org_id                 => NULL);
      END IF;
    
    EXCEPTION
      WHEN OTHERS THEN
        null;

END;

EXCEPTION
    WHEN others THEN
      
    dbms_output.put_line('ERRPR1');

END create_purchase_order;

EBS开发_费用类采购订单创建相关推荐

  1. EBS开发_费用类采购订单接收

    --以下脚本于20171230在tony上成功实现 --费用类采购订单接受成功_20171230_只需要输入一个采购订单号即可 --初始化 /* begin   fnd_global.apps_ini ...

  2. EBS开发_费用类采购订单退货

    --以下脚本于20171230在tony上成功实现 --费用类采购订单退货成功_20171230_只需要输入一个采购订单号即可 --初始化 /* begin   fnd_global.apps_ini ...

  3. 费用型采购订单(科目分配类别=K)向成本中心计入费用

    文章目录 一.概述 二.费用型采购订单创建收货发票校验 2.1 创建费用型采购订单-ME21N 2.2 收货-MIGO 2.3 发票校验-MIRO 三.成本中心费用查询-S_ALR_8701361 3 ...

  4. SAP SD VL31N BBP_INB_DELIVERY_CREATE 根据采购订单创建内向交货单

    本人诚心接ABAP远程开发任务,价格公道,有需要的联系我,欢迎个人,甲方爸爸,乙方私信联系. VL31N根据采购订单创建内向交货单 BBP_INB_DELIVERY_CREATE 代码示例 LS_HE ...

  5. SAP MM ML81N为采购订单创建服务接收单,报错- No matching PO items selected -

    SAP MM ML81N为采购订单创建服务接收单,报错- No matching PO items selected - SAP里的服务采购流程跟有形的实物采购流程并不相同.除了在采购单据上的差异以外 ...

  6. SAP QM初阶之事务代码QC51为采购订单创建Quality Certificate

    SAP QM初阶之事务代码QC51为采购订单创建Quality Certificate 执行事务代码QC51 输入采购订单号,ITEM号,执行,进入如下界面, 输入相关数据,保存, 这样就为这个PO创 ...

  7. SAP中服务类采购订单的收货审批确认

    通过事务ML81N进行服务采购订单的确认,类型MIGO收货操作: 在事务中执行采购服务项目的审批确认动作: 如果仅尚未进行审批确认,观察采购订单历史,可以看到生成的单据: 完成服务确认审批(收货)后, ...

  8. BAPI_PO_CREATE1 采购订单创建BAPI

    导语:没有导语,直接看代码吧. BAPI名称:BAPI_PO_CREATE1 BAPI描述:采购订单创建

  9. SAP S4 MM前台操作讲解-框架采购订单创建与发票校验

    1.框架采购订单创建 概念及功能说明 如果低值易耗品或价值很低的服务采购也和正常标准采购流程一样,从处理流程的成本来看是很不合算的.为了简化低值易耗品的采购流程,降低处理流程成本,这时就可以使用框架采 ...

最新文章

  1. window.print()前端实现打印功能
  2. Oracle 聚合函数(Aggregate Functions)说明
  3. 频繁模式(frequent pattern)
  4. mysql 单例模式好处_PHP单例模式的优点分析
  5. WinForm资源文件使用
  6. BigDecimal的四舍五入的RoundingMode 选择
  7. 列联表分析程序,以卢淑华书上的例子为例
  8. POSIX标准总体分析
  9. GitOps:Kubernetes多集群环境下的高效CICD实践
  10. springboot---mybits整合
  11. (四)训练运行Deep CycleGAN以进行移动风格迁移
  12. 逻辑运算符 用法解释
  13. Java小项目 屏幕自定义尺寸GIF生成器V1.0
  14. 30+英文电子书免费下载网站,跟喜欢看英文电子书的朋友分享
  15. java 汇率换算_汇率换算自然语言理解功能JAVA DEMO
  16. Typora 实用教程
  17. MACD怎样判断趋势?巧用MACD指标研判市场的强弱!(实例)
  18. [人物] “在人间播种子,在天上洒甘霖。” 国士无双,袁老千古。
  19. 怎样与常见的9种人打交道
  20. cscd期刊是c刊吗_武工商C刊和北大核心期刊论文发表数量位列全省同类高校前三甲...

热门文章

  1. pat考试1018 锤子剪刀布
  2. 人工智能的前世今生(一)
  3. 开发过程中常用学习资源网站
  4. 教学|zbrush图片转浮雕的方法,diy你想要的logo
  5. android 麦克风权限设置,绝地求生刺激战场麦克风权限怎么设置?刺激战场麦克风权限设置方法[多图]...
  6. 某乎搜索接口header参数x-zse-96、x-zst-81逆向分析
  7. 智能混剪系统爆款生成器移动端-----H5手机版(小程序端)
  8. 高新计算机考试题库安装,计算机信息高新技术考试模块题库教材配套一览表.doc...
  9. FS4059C ESOP8 5V升压充电12.6V三串锂电池充电IC
  10. 【你问我答】机器学习遇到问题了?尽管问,我们负责解答!