采购接收检验入库程序

CREATE OR REPLACE PACKAGE MEW_PO_RECEIVE_DELIVER_PKG IS

  --采购检验包含入库
  PROCEDURE PO_ACCEPT(RETCODE             OUT NUMBER
                     ,ERRBUF              OUT VARCHAR2
                     ,P_LINE_ID           NUMBER
                     ,P_DELIVER_NUMBER    VARCHAR2
                     ,P_QRCODE_RECORD_ID  NUMBER
                     ,P_ORGANIZATION_ID   NUMBER
                     ,P_INVENTORY_ITEM_ID NUMBER);

  --采购入库
  PROCEDURE PO_DELIVER(P_LINE_ID           NUMBER
                      ,P_DELIVER_NUMBER    VARCHAR2
                      ,P_QRCODE_RECORD_ID  NUMBER
                      ,P_ORGANIZATION_ID   NUMBER
                      ,P_INVENTORY_ITEM_ID NUMBER);
END;
/
CREATE OR REPLACE PACKAGE BODY MEW_PO_RECEIVE_DELIVER_PKG IS

  --采购检验包含入库
  PROCEDURE PO_ACCEPT(RETCODE             OUT NUMBER
                     ,ERRBUF              OUT VARCHAR2
                     ,P_LINE_ID           NUMBER
                     ,P_DELIVER_NUMBER    VARCHAR2
                     ,P_QRCODE_RECORD_ID  NUMBER
                     ,P_ORGANIZATION_ID   NUMBER
                     ,P_INVENTORY_ITEM_ID NUMBER) IS
 
    L_IFACE_RCV_REC PO.RCV_TRANSACTIONS_INTERFACE%ROWTYPE;
 
    CURSOR C1 IS
      SELECT A.INTERFACE_TRANSACTION_ID
            ,A.GROUP_ID
            ,A.LAST_UPDATE_DATE
            ,A.LAST_UPDATED_BY
            ,A.CREATION_DATE
            ,A.CREATED_BY
            ,A.LAST_UPDATE_LOGIN
            ,A.TRANSACTION_TYPE
            ,A.TRANSACTION_DATE
            ,A.QUANTITY
            ,A.UNIT_OF_MEASURE
            ,A.INTERFACE_SOURCE_CODE
            ,A.SHIPMENT_HEADER_ID
            ,A.SHIPMENT_LINE_ID
            ,A.VENDOR_ID
            ,A.VENDOR_SITE_ID
            ,A.SOURCE_DOCUMENT_CODE
            ,A.PARENT_TRANSACTION_ID
            ,A.PO_HEADER_ID
            ,A.PO_LINE_ID
            ,A.PO_LINE_LOCATION_ID
            ,A.INSPECTION_STATUS_CODE
            ,A.DESTINATION_TYPE_CODE
            ,A.LOCATION_ID
            ,A.DESTINATION_CONTEXT
            ,A.TRANSACTION_ID
            ,A.PO_DISTRIBUTION_ID
            ,RSL.ITEM_ID
            ,RSL.TO_ORGANIZATION_ID
            ,RSL.SHIP_TO_LOCATION_ID
            ,A.QUANTITY -
             MEW_ADI_INV_RECEIVE_PKG.GET_ACCEPTED_QUANTITY(A.TRANSACTION_ID) UNACCEPTED_QTY
            ,A.CURRENCY_CODE
            ,A.CURRENCY_CONVERSION_TYPE
            ,A.CURRENCY_CONVERSION_RATE
            ,A.CURRENCY_CONVERSION_DATE
            ,A.PO_UNIT_PRICE
        FROM RCV_TRANSACTIONS /*_INTERFACE*/     A
            ,RCV_SHIPMENT_HEADERS RSH
            ,RCV_SHIPMENT_LINES   RSL
       WHERE --A.SHIPMENT_HEADER_ID = 1009182
      --comment on 2011-09-08 by sie chenyueyong
      /*RSH.ATTRIBUTE14 = P_LINE_ID
      AND*/
       RSH.ATTRIBUTE15 = P_DELIVER_NUMBER
       AND A.SHIPMENT_HEADER_ID = RSH.SHIPMENT_HEADER_ID
       AND A.SHIPMENT_LINE_ID = RSL.SHIPMENT_LINE_ID
       AND A.TRANSACTION_TYPE = 'RECEIVE'
       AND A.QUANTITY -
       MEW_ADI_INV_RECEIVE_PKG.GET_ACCEPTED_QUANTITY(A.TRANSACTION_ID) > 0;
    V_GROUP_ID           NUMBER;
    V_REQUEST_ID         NUMBER;
    V_WAIT_COMPLETE_FLAG BOOLEAN;
    V_PHASE              VARCHAR2(240);
    V_STATUS             VARCHAR2(240);
    V_DEV_PHASE          VARCHAR2(240);
    V_DEV_STATUS         VARCHAR2(240);
    V_MESSAGE            VARCHAR2(240);
  BEGIN
 
    SELECT PO.RCV_INTERFACE_GROUPS_S.NEXTVAL INTO V_GROUP_ID FROM DUAL;
 
    FOR R1 IN C1
    LOOP
   
      L_IFACE_RCV_REC.LAST_UPDATE_DATE  := SYSDATE;
      L_IFACE_RCV_REC.LAST_UPDATED_BY   := FND_GLOBAL.USER_ID;
      L_IFACE_RCV_REC.CREATION_DATE     := SYSDATE;
      L_IFACE_RCV_REC.CREATED_BY        := FND_GLOBAL.USER_ID;
      L_IFACE_RCV_REC.LAST_UPDATE_LOGIN := -1;
   
      SELECT RCV_TRANSACTIONS_INTERFACE_S.NEXTVAL
        INTO L_IFACE_RCV_REC.INTERFACE_TRANSACTION_ID
        FROM DUAL;
   
      L_IFACE_RCV_REC.SHIPMENT_HEADER_ID      := R1.SHIPMENT_HEADER_ID; --Shipment Header
      L_IFACE_RCV_REC.PROCESSING_STATUS_CODE  := 'INSPECTION';
      L_IFACE_RCV_REC.TRANSACTION_STATUS_CODE := 'INSPECTION';
      L_IFACE_RCV_REC.PROCESSING_MODE_CODE    := 'IMMEDIATE';
   
      L_IFACE_RCV_REC.RECEIPT_SOURCE_CODE := 'VENDOR';
      L_IFACE_RCV_REC.VENDOR_ID           := R1.VENDOR_ID;
      L_IFACE_RCV_REC.VENDOR_SITE_ID      := R1.VENDOR_SITE_ID; --Optional
   
      L_IFACE_RCV_REC.SOURCE_DOCUMENT_CODE := 'PO';
      L_IFACE_RCV_REC.PO_HEADER_ID         := R1.PO_HEADER_ID;
      L_IFACE_RCV_REC.PO_LINE_ID           := R1.PO_LINE_ID;
      L_IFACE_RCV_REC.PO_LINE_LOCATION_ID  := R1.PO_LINE_LOCATION_ID;
   
      L_IFACE_RCV_REC.TRANSACTION_TYPE      := 'ACCEPT'; --交货时为DELIER
      L_IFACE_RCV_REC.DESTINATION_TYPE_CODE := 'RECEIVING'; --交货时为INVENTORY
      L_IFACE_RCV_REC.SHIPMENT_LINE_ID      := R1.SHIPMENT_LINE_ID;
      L_IFACE_RCV_REC.PARENT_TRANSACTION_ID := R1.TRANSACTION_ID;
      L_IFACE_RCV_REC.PO_DISTRIBUTION_ID    := R1.PO_DISTRIBUTION_ID;
   
      L_IFACE_RCV_REC.ITEM_ID                 := R1.ITEM_ID;
      L_IFACE_RCV_REC.TRANSACTION_DATE        := SYSDATE;
      L_IFACE_RCV_REC.QUANTITY                := R1.UNACCEPTED_QTY;
      L_IFACE_RCV_REC.UNIT_OF_MEASURE         := R1.UNIT_OF_MEASURE; --Not Code
      L_IFACE_RCV_REC.PRIMARY_QUANTITY        := R1.UNACCEPTED_QTY;
      L_IFACE_RCV_REC.PRIMARY_UNIT_OF_MEASURE := R1.UNIT_OF_MEASURE;
      L_IFACE_RCV_REC.TO_ORGANIZATION_ID      := R1.TO_ORGANIZATION_ID;
      L_IFACE_RCV_REC.SHIP_TO_LOCATION_ID     := R1.SHIP_TO_LOCATION_ID;
      L_IFACE_RCV_REC.LOCATION_ID             := R1.SHIP_TO_LOCATION_ID;
      L_IFACE_RCV_REC.INTERFACE_SOURCE_CODE   := 'RCV';
      L_IFACE_RCV_REC.INSPECTION_STATUS_CODE  := 'ACCEPTED';
      L_IFACE_RCV_REC.DESTINATION_CONTEXT     := 'RECEIVING';
   
      L_IFACE_RCV_REC.CURRENCY_CODE            := R1.CURRENCY_CODE; --add on 2011-08-10 by sie chenyueyong
      L_IFACE_RCV_REC.CURRENCY_CONVERSION_TYPE := R1.CURRENCY_CONVERSION_TYPE;
      L_IFACE_RCV_REC.CURRENCY_CONVERSION_RATE := R1.CURRENCY_CONVERSION_RATE;
      L_IFACE_RCV_REC.CURRENCY_CONVERSION_DATE := R1.CURRENCY_CONVERSION_DATE;
      L_IFACE_RCV_REC.PO_UNIT_PRICE            := R1.PO_UNIT_PRICE;
   
      INSERT INTO RCV_TRANSACTIONS_INTERFACE
        (LAST_UPDATE_DATE
        ,LAST_UPDATED_BY
        ,CREATION_DATE
        ,CREATED_BY
        ,LAST_UPDATE_LOGIN
        ,INTERFACE_TRANSACTION_ID
        ,GROUP_ID
        ,SHIPMENT_HEADER_ID
        ,PROCESSING_STATUS_CODE
        ,TRANSACTION_STATUS_CODE
        ,PROCESSING_MODE_CODE
        ,RECEIPT_SOURCE_CODE
        ,VENDOR_ID
        ,VENDOR_SITE_ID
        ,SOURCE_DOCUMENT_CODE
        ,PO_HEADER_ID
        ,PO_LINE_ID
        ,PO_LINE_LOCATION_ID
        ,TRANSACTION_TYPE
        ,DESTINATION_TYPE_CODE
        ,SHIPMENT_LINE_ID
        ,PARENT_TRANSACTION_ID
        ,PO_DISTRIBUTION_ID
        ,ITEM_ID
        ,TRANSACTION_DATE
        ,QUANTITY
        ,UNIT_OF_MEASURE
        ,PRIMARY_QUANTITY
        ,PRIMARY_UNIT_OF_MEASURE
        ,TO_ORGANIZATION_ID
        ,SHIP_TO_LOCATION_ID
        ,LOCATION_ID
        ,INTERFACE_SOURCE_CODE
        ,INSPECTION_STATUS_CODE
        ,DESTINATION_CONTEXT
        ,CURRENCY_CODE
        ,CURRENCY_CONVERSION_TYPE
        ,CURRENCY_CONVERSION_RATE
        ,CURRENCY_CONVERSION_DATE
        ,PO_UNIT_PRICE)
      VALUES
        (L_IFACE_RCV_REC.LAST_UPDATE_DATE
        ,L_IFACE_RCV_REC.LAST_UPDATED_BY
        ,L_IFACE_RCV_REC.CREATION_DATE
        ,L_IFACE_RCV_REC.CREATED_BY
        ,L_IFACE_RCV_REC.LAST_UPDATE_LOGIN
        ,L_IFACE_RCV_REC.INTERFACE_TRANSACTION_ID
        ,V_GROUP_ID
        ,L_IFACE_RCV_REC.SHIPMENT_HEADER_ID
        ,L_IFACE_RCV_REC.PROCESSING_STATUS_CODE
        ,L_IFACE_RCV_REC.TRANSACTION_STATUS_CODE
        ,L_IFACE_RCV_REC.PROCESSING_MODE_CODE
        ,L_IFACE_RCV_REC.RECEIPT_SOURCE_CODE
        ,L_IFACE_RCV_REC.VENDOR_ID
        ,L_IFACE_RCV_REC.VENDOR_SITE_ID
        ,L_IFACE_RCV_REC.SOURCE_DOCUMENT_CODE
        ,L_IFACE_RCV_REC.PO_HEADER_ID
        ,L_IFACE_RCV_REC.PO_LINE_ID
        ,L_IFACE_RCV_REC.PO_LINE_LOCATION_ID
        ,L_IFACE_RCV_REC.TRANSACTION_TYPE
        ,L_IFACE_RCV_REC.DESTINATION_TYPE_CODE
        ,L_IFACE_RCV_REC.SHIPMENT_LINE_ID
        ,L_IFACE_RCV_REC.PARENT_TRANSACTION_ID
        ,L_IFACE_RCV_REC.PO_DISTRIBUTION_ID
        ,L_IFACE_RCV_REC.ITEM_ID
        ,L_IFACE_RCV_REC.TRANSACTION_DATE
        ,L_IFACE_RCV_REC.QUANTITY
        ,L_IFACE_RCV_REC.UNIT_OF_MEASURE
        ,L_IFACE_RCV_REC.PRIMARY_QUANTITY
        ,L_IFACE_RCV_REC.PRIMARY_UNIT_OF_MEASURE
        ,L_IFACE_RCV_REC.TO_ORGANIZATION_ID
        ,L_IFACE_RCV_REC.SHIP_TO_LOCATION_ID
        ,L_IFACE_RCV_REC.LOCATION_ID
        ,L_IFACE_RCV_REC.INTERFACE_SOURCE_CODE
        ,L_IFACE_RCV_REC.INSPECTION_STATUS_CODE
        ,L_IFACE_RCV_REC.DESTINATION_CONTEXT
        ,L_IFACE_RCV_REC.CURRENCY_CODE
        ,L_IFACE_RCV_REC.CURRENCY_CONVERSION_TYPE
        ,L_IFACE_RCV_REC.CURRENCY_CONVERSION_RATE
        ,L_IFACE_RCV_REC.CURRENCY_CONVERSION_DATE
        ,L_IFACE_RCV_REC.PO_UNIT_PRICE);
   
    END LOOP;
 
    V_REQUEST_ID := FND_REQUEST.SUBMIT_REQUEST('PO'
                                              ,'RVCTP'
                                              ,'接收事务处理处理器'
                                              ,TO_CHAR(SYSDATE
                                                      ,'dd-mon-yy hh:mi:ss')
                                              ,FALSE
                                              ,'IMMEDIATE'
                                              , --Start Date
                                               V_GROUP_ID
                                              ,CHR(0)
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,'');
    COMMIT;
 
    IF V_REQUEST_ID > 0
    THEN
      LOOP
        V_WAIT_COMPLETE_FLAG := FND_CONCURRENT.WAIT_FOR_REQUEST(REQUEST_ID => V_REQUEST_ID
                                                               ,INTERVAL   => 10
                                                               ,MAX_WAIT   => 0
                                                               ,PHASE      => V_PHASE
                                                               ,STATUS     => V_STATUS
                                                               ,DEV_PHASE  => V_DEV_PHASE
                                                               ,DEV_STATUS => V_DEV_STATUS
                                                               ,MESSAGE    => V_MESSAGE);
        EXIT WHEN V_DEV_PHASE = 'COMPLETE';
      END LOOP;
   
    END IF;
 
    PO_DELIVER(P_LINE_ID
              ,P_DELIVER_NUMBER
              ,P_QRCODE_RECORD_ID
              ,P_ORGANIZATION_ID
              ,P_INVENTORY_ITEM_ID);
 
    COMMIT;
 
  END;

  --采购入库
  PROCEDURE PO_DELIVER(P_LINE_ID           NUMBER
                      ,P_DELIVER_NUMBER    VARCHAR2
                      ,P_QRCODE_RECORD_ID  NUMBER
                      ,P_ORGANIZATION_ID   NUMBER
                      ,P_INVENTORY_ITEM_ID NUMBER) IS
 
    L_IFACE_RCV_REC PO.RCV_TRANSACTIONS_INTERFACE%ROWTYPE;
 
    CURSOR C1 IS
      SELECT A.INTERFACE_TRANSACTION_ID
            ,A.GROUP_ID
            ,A.LAST_UPDATE_DATE
            ,A.LAST_UPDATED_BY
            ,A.CREATION_DATE
            ,A.CREATED_BY
            ,A.LAST_UPDATE_LOGIN
            ,A.TRANSACTION_TYPE
            ,A.TRANSACTION_DATE
            ,A.QUANTITY
            ,A.UNIT_OF_MEASURE
            ,A.INTERFACE_SOURCE_CODE
            ,A.SHIPMENT_HEADER_ID
            ,A.SHIPMENT_LINE_ID
            ,A.VENDOR_ID
            ,A.VENDOR_SITE_ID
            ,A.SOURCE_DOCUMENT_CODE
            ,A.PARENT_TRANSACTION_ID
            ,A.PO_HEADER_ID
            ,A.PO_LINE_ID
            ,A.PO_LINE_LOCATION_ID
            ,A.INSPECTION_STATUS_CODE
            ,A.DESTINATION_TYPE_CODE
            ,A.LOCATION_ID
            ,A.DESTINATION_CONTEXT
            ,A.TRANSACTION_ID
            ,RSL.PO_DISTRIBUTION_ID
            ,RSL.ITEM_ID
            ,RSL.TO_ORGANIZATION_ID
            ,RSL.SHIP_TO_LOCATION_ID
            ,A.QUANTITY -
             MEW_ADI_INV_RECEIVE_PKG.GET_DELIVERED_QUANTITY(A.TRANSACTION_ID) QTY_UNDELIVERED
            
            ,A.CURRENCY_CODE
            ,A.CURRENCY_CONVERSION_TYPE
            ,A.CURRENCY_CONVERSION_RATE
            ,A.CURRENCY_CONVERSION_DATE
            ,A.PO_UNIT_PRICE
        FROM RCV_TRANSACTIONS     A
            ,RCV_SHIPMENT_HEADERS RSH
            ,RCV_SHIPMENT_LINES   RSL
       WHERE A.SHIPMENT_HEADER_ID = RSH.SHIPMENT_HEADER_ID
         AND A.SHIPMENT_LINE_ID = RSL.SHIPMENT_LINE_ID
         AND A.TRANSACTION_TYPE = 'ACCEPT'
            --comment on 2011-09-08 by sie chenyueyong
            -- AND RSH.ATTRIBUTE14 = P_LINE_ID
         AND RSH.ATTRIBUTE15 = P_DELIVER_NUMBER
         AND A.QUANTITY -
             MEW_ADI_INV_RECEIVE_PKG.GET_DELIVERED_QUANTITY(A.TRANSACTION_ID) > 0;
 
    V_DISTRIBUTION_ID      NUMBER;
    V_RECEIVING_ROUTING_ID NUMBER;
    V_QRCODE_RECORD_ID     NUMBER;
    V_SUBINVENTORY_CODE    VARCHAR2(30);
    V_GROUP_ID             NUMBER;
    V_REQUEST_ID           NUMBER;
  BEGIN
    SELECT PO.RCV_INTERFACE_GROUPS_S.NEXTVAL INTO V_GROUP_ID FROM DUAL;
    FOR R1 IN C1
    LOOP
      L_IFACE_RCV_REC.LAST_UPDATE_DATE  := SYSDATE;
      L_IFACE_RCV_REC.LAST_UPDATED_BY   := FND_GLOBAL.USER_ID;
      L_IFACE_RCV_REC.CREATION_DATE     := SYSDATE;
      L_IFACE_RCV_REC.CREATED_BY        := FND_GLOBAL.USER_ID;
      L_IFACE_RCV_REC.LAST_UPDATE_LOGIN := -1;
   
      SELECT RCV_TRANSACTIONS_INTERFACE_S.NEXTVAL
        INTO L_IFACE_RCV_REC.INTERFACE_TRANSACTION_ID
        FROM DUAL;
   
      L_IFACE_RCV_REC.SHIPMENT_HEADER_ID      := R1.SHIPMENT_HEADER_ID; --Shipment Header
      L_IFACE_RCV_REC.PROCESSING_STATUS_CODE  := 'PENDING';
      L_IFACE_RCV_REC.TRANSACTION_STATUS_CODE := 'PENDING';
      L_IFACE_RCV_REC.PROCESSING_MODE_CODE    := 'IMMEDIATE';
   
      L_IFACE_RCV_REC.RECEIPT_SOURCE_CODE := 'VENDOR';
      L_IFACE_RCV_REC.VENDOR_ID           := R1.VENDOR_ID;
      L_IFACE_RCV_REC.VENDOR_SITE_ID      := R1.VENDOR_SITE_ID; --Optional
   
      L_IFACE_RCV_REC.SOURCE_DOCUMENT_CODE := 'PO';
      L_IFACE_RCV_REC.PO_HEADER_ID         := R1.PO_HEADER_ID;
      L_IFACE_RCV_REC.PO_LINE_ID           := R1.PO_LINE_ID;
      L_IFACE_RCV_REC.PO_LINE_LOCATION_ID  := R1.PO_LINE_LOCATION_ID;
   
      L_IFACE_RCV_REC.TRANSACTION_TYPE      := 'DELIVER'; --交货时为DELIER
      L_IFACE_RCV_REC.AUTO_TRANSACT_CODE    := NULL;
      L_IFACE_RCV_REC.DESTINATION_TYPE_CODE := 'INVENTORY'; --交货时为INVENTORY
      L_IFACE_RCV_REC.SHIPMENT_LINE_ID      := R1.SHIPMENT_LINE_ID;
      L_IFACE_RCV_REC.PARENT_TRANSACTION_ID := R1.TRANSACTION_ID;
   
      L_IFACE_RCV_REC.ITEM_ID                 := R1.ITEM_ID;
      L_IFACE_RCV_REC.TRANSACTION_DATE        := SYSDATE;
      L_IFACE_RCV_REC.QUANTITY                := R1.QTY_UNDELIVERED;
      L_IFACE_RCV_REC.UNIT_OF_MEASURE         := R1.UNIT_OF_MEASURE; --Not Code
      L_IFACE_RCV_REC.PRIMARY_QUANTITY        := R1.QTY_UNDELIVERED;
      L_IFACE_RCV_REC.PRIMARY_UNIT_OF_MEASURE := R1.UNIT_OF_MEASURE;
      L_IFACE_RCV_REC.TO_ORGANIZATION_ID      := R1.TO_ORGANIZATION_ID;
   
      L_IFACE_RCV_REC.INTERFACE_SOURCE_CODE  := 'RCV';
      L_IFACE_RCV_REC.INSPECTION_STATUS_CODE := 'ACCEPTED';
      L_IFACE_RCV_REC.DESTINATION_CONTEXT    := 'INVENTORY';
   
      L_IFACE_RCV_REC.CURRENCY_CODE            := R1.CURRENCY_CODE; --add on 2011-08-10 by sie chenyueyong
      L_IFACE_RCV_REC.CURRENCY_CONVERSION_TYPE := R1.CURRENCY_CONVERSION_TYPE;
      L_IFACE_RCV_REC.CURRENCY_CONVERSION_RATE := R1.CURRENCY_CONVERSION_RATE;
      L_IFACE_RCV_REC.CURRENCY_CONVERSION_DATE := R1.CURRENCY_CONVERSION_DATE;
      L_IFACE_RCV_REC.PO_UNIT_PRICE            := R1.PO_UNIT_PRICE;
   
      SELECT PLLA.RECEIVING_ROUTING_ID
        INTO V_RECEIVING_ROUTING_ID
        FROM PO_LINE_LOCATIONS_ALL PLLA
       WHERE PLLA.LINE_LOCATION_ID = R1.PO_LINE_LOCATION_ID;
   
      --   IF V_RECEIVING_ROUTING_ID = 3
      -- THEN
      BEGIN
        SELECT MDP.QRCODE_RECORD_ID
          INTO V_QRCODE_RECORD_ID
          FROM MEW_DELIVERY_PLAN_DETAILS MDP
         WHERE MDP.HEADER_ID = P_QRCODE_RECORD_ID
           AND MDP.INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID
           AND ROWNUM = 1;
     
        SELECT ORACLE_SUBINVENTORY_CODE
          INTO V_SUBINVENTORY_CODE
          FROM MEW_QRCODE_DEFINITIONS_B MQB
         WHERE MQB.RECORD_ID = V_QRCODE_RECORD_ID;
     
      EXCEPTION
        WHEN NO_DATA_FOUND THEN
          BEGIN
            SELECT SUBINVENTORY_CODE
              INTO V_SUBINVENTORY_CODE
              FROM MTL_ITEM_SUB_DEFAULTS MID
             WHERE ORGANIZATION_ID = P_ORGANIZATION_ID
               AND MID.DEFAULT_TYPE = 2
               AND INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID;
          EXCEPTION
            WHEN NO_DATA_FOUND THEN
              ROLLBACK;
              RAISE_APPLICATION_ERROR(-20001
                                     ,'当前物料未设置默认接收子库');
          END;
      END;
      -- END IF;
   
      L_IFACE_RCV_REC.SUBINVENTORY := V_SUBINVENTORY_CODE;
   
      SELECT PO_DISTRIBUTION_ID
        INTO V_DISTRIBUTION_ID
        FROM PO_DISTRIBUTIONS_ALL
       WHERE LINE_LOCATION_ID = R1.PO_LINE_LOCATION_ID;
   
      L_IFACE_RCV_REC.PO_DISTRIBUTION_ID := V_DISTRIBUTION_ID; --R1.PO_DISTRIBUTION_ID;
   
      INSERT INTO RCV_TRANSACTIONS_INTERFACE
        (LAST_UPDATE_DATE
        ,LAST_UPDATED_BY
        ,CREATION_DATE
        ,CREATED_BY
        ,LAST_UPDATE_LOGIN
        ,INTERFACE_TRANSACTION_ID
        ,GROUP_ID
        ,SHIPMENT_HEADER_ID
        ,PROCESSING_STATUS_CODE
        ,TRANSACTION_STATUS_CODE
        ,PROCESSING_MODE_CODE
        ,RECEIPT_SOURCE_CODE
        ,VENDOR_ID
        ,VENDOR_SITE_ID
        ,SOURCE_DOCUMENT_CODE
        ,PO_HEADER_ID
        ,PO_LINE_ID
        ,PO_LINE_LOCATION_ID
        ,TRANSACTION_TYPE
        ,AUTO_TRANSACT_CODE
        ,DESTINATION_TYPE_CODE
        ,SHIPMENT_LINE_ID
        ,PARENT_TRANSACTION_ID
        ,PO_DISTRIBUTION_ID
        ,ITEM_ID
        ,TRANSACTION_DATE
        ,QUANTITY
        ,UNIT_OF_MEASURE
        ,PRIMARY_QUANTITY
        ,PRIMARY_UNIT_OF_MEASURE
        ,TO_ORGANIZATION_ID
        ,INTERFACE_SOURCE_CODE
        ,INSPECTION_STATUS_CODE
        ,DESTINATION_CONTEXT
        ,SUBINVENTORY
        ,CURRENCY_CODE
        ,CURRENCY_CONVERSION_TYPE
        ,CURRENCY_CONVERSION_RATE
        ,CURRENCY_CONVERSION_DATE
        ,PO_UNIT_PRICE)
      VALUES
        (L_IFACE_RCV_REC.LAST_UPDATE_DATE
        ,L_IFACE_RCV_REC.LAST_UPDATED_BY
        ,L_IFACE_RCV_REC.CREATION_DATE
        ,L_IFACE_RCV_REC.CREATED_BY
        ,L_IFACE_RCV_REC.LAST_UPDATE_LOGIN
        ,L_IFACE_RCV_REC.INTERFACE_TRANSACTION_ID
        ,V_GROUP_ID
        ,L_IFACE_RCV_REC.SHIPMENT_HEADER_ID
        ,L_IFACE_RCV_REC.PROCESSING_STATUS_CODE
        ,L_IFACE_RCV_REC.TRANSACTION_STATUS_CODE
        ,L_IFACE_RCV_REC.PROCESSING_MODE_CODE
        ,L_IFACE_RCV_REC.RECEIPT_SOURCE_CODE
        ,L_IFACE_RCV_REC.VENDOR_ID
        ,L_IFACE_RCV_REC.VENDOR_SITE_ID
        ,L_IFACE_RCV_REC.SOURCE_DOCUMENT_CODE
        ,L_IFACE_RCV_REC.PO_HEADER_ID
        ,L_IFACE_RCV_REC.PO_LINE_ID
        ,L_IFACE_RCV_REC.PO_LINE_LOCATION_ID
        ,L_IFACE_RCV_REC.TRANSACTION_TYPE
        ,L_IFACE_RCV_REC.AUTO_TRANSACT_CODE
        ,L_IFACE_RCV_REC.DESTINATION_TYPE_CODE
        ,L_IFACE_RCV_REC.SHIPMENT_LINE_ID
        ,L_IFACE_RCV_REC.PARENT_TRANSACTION_ID
        ,L_IFACE_RCV_REC.PO_DISTRIBUTION_ID
        ,L_IFACE_RCV_REC.ITEM_ID
        ,L_IFACE_RCV_REC.TRANSACTION_DATE
        ,L_IFACE_RCV_REC.QUANTITY
        ,L_IFACE_RCV_REC.UNIT_OF_MEASURE
        ,L_IFACE_RCV_REC.PRIMARY_QUANTITY
        ,L_IFACE_RCV_REC.PRIMARY_UNIT_OF_MEASURE
        ,L_IFACE_RCV_REC.TO_ORGANIZATION_ID
        ,L_IFACE_RCV_REC.INTERFACE_SOURCE_CODE
        ,L_IFACE_RCV_REC.INSPECTION_STATUS_CODE
        ,L_IFACE_RCV_REC.DESTINATION_CONTEXT
        ,L_IFACE_RCV_REC.SUBINVENTORY
        ,L_IFACE_RCV_REC.CURRENCY_CODE
        ,L_IFACE_RCV_REC.CURRENCY_CONVERSION_TYPE
        ,L_IFACE_RCV_REC.CURRENCY_CONVERSION_RATE
        ,L_IFACE_RCV_REC.CURRENCY_CONVERSION_DATE
        ,L_IFACE_RCV_REC.PO_UNIT_PRICE);
   
    --INSERT INTO PO.RCV_TRANSACTIONS_INTERFACE VALUES L_IFACE_RCV_REC;
    END LOOP;
    DBMS_OUTPUT.PUT_LINE('GROUP_ID: ' || V_GROUP_ID);
    V_REQUEST_ID := FND_REQUEST.SUBMIT_REQUEST('PO'
                                              ,'RVCTP'
                                              ,'接收事务处理处理器'
                                              ,TO_CHAR(SYSDATE
                                                      ,'dd-mon-yy hh:mi:ss')
                                              ,FALSE
                                              ,'IMMEDIATE'
                                              , --Start Date
                                               V_GROUP_ID
                                              ,CHR(0)
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,''
                                              ,'');
    COMMIT;
    --DBMS_OUTPUT.PUT_LINE('group_id:' || L_IFACE_RCV_REC.GROUP_ID);
 
  END;

END;
/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值