DBA Data[Home] [Help]

APPS.CSTPPLLC SQL Statements

The following lines contain the word 'select', 'insert', 'update' or 'delete':

Line: 35

    SELECT transaction_id,
           completion_transaction_id,
           transaction_source_id,
           repetitive_line_id,
           inventory_item_id,
           organization_id,
           flow_schedule
    FROM   mtl_material_transactions mmt
    WHERE  transaction_source_type_id = 5        /* job or schedule */
    AND    transaction_action_id IN (30, 31, 32) /* scrap,completion,return */
    AND    transaction_date BETWEEN trunc(c_start_date)
           AND (trunc(c_end_date) + 0.99999)
    AND    EXISTS(
             SELECT 'exists'
             FROM   cst_cost_group_assignments
             WHERE  cost_group_id = c_cost_group_id
             AND    organization_id = mmt.organization_id);
Line: 70

     The (-1, inventory_item_id) combination inserted will signify that there
     has been a completion/scrap/return for the item
    ------------------------------------------------------------------------*/

    INSERT INTO
	   cst_pac_explosion_temp (
           pac_period_id,
           cost_group_id,
           assembly_item_id,
           component_item_id,
           deleted,
           loop_count)
    SELECT i_pac_period_id,
           i_cost_group_id,
           -1,
           comp_rec.inventory_item_id,
           'N',
           1000
    FROM   dual
    WHERE  NOT EXISTS (
             SELECT 'exists'
    	     FROM   cst_pac_explosion_temp
       	     WHERE  assembly_item_id = -1
       	     AND    component_item_id =  comp_rec.inventory_item_id
       	     AND    pac_period_id = i_pac_period_id
       	     AND    cost_group_id = i_cost_group_id);
Line: 100

          INSERT INTO
	         cst_pac_explosion_temp(
                 pac_period_id,
       	         cost_group_id,
       	         assembly_item_id,
       	         component_item_id,
       	         deleted,
       	         loop_count)
          SELECT DISTINCT
       	         i_pac_period_id,
       	         i_cost_group_id,
       	         comp_rec.inventory_item_id,
       	         wro.inventory_item_id,
       	         'N',
       	         1000
          FROM   wip_requirement_operations wro
          WHERE  wro.wip_entity_id = comp_rec.transaction_source_id
          AND    NOT EXISTS (
                   SELECT 'exists'
                   FROM   cst_pac_explosion_temp
                   WHERE  assembly_item_id = comp_rec.inventory_item_id
                   AND    component_item_id = inventory_item_id
                   AND    pac_period_id = i_pac_period_id
                   AND    cost_group_id = i_cost_group_id);
Line: 125

          INSERT INTO
		 cst_pac_explosion_temp(
                 pac_period_id,
                 cost_group_id,
                 assembly_item_id,
                 component_item_id,
                 deleted,
                 loop_count)
          SELECT DISTINCT
                 i_pac_period_id,
                 i_cost_group_id,
                 comp_rec.inventory_item_id,
                 mmt.inventory_item_id,
                 'N',
                 1000
          FROM   mtl_material_transactions mmt
          WHERE  transaction_source_id = comp_rec.transaction_source_id
          AND    transaction_source_type_id = 5
          AND    transaction_action_id IN (1,27,33,34)
          AND    transaction_date BETWEEN trunc(i_start_date)
	         AND (trunc(i_end_date) + 0.99999)
          AND    NOT EXISTS (
                   SELECT 'exists'
                   FROM   cst_pac_explosion_temp
                   WHERE  assembly_item_id = comp_rec.inventory_item_id
                   AND    component_item_id = inventory_item_id
                   AND    pac_period_id = i_pac_period_id
                   AND    cost_group_id = i_cost_group_id)
          GROUP  BY
                 mmt.inventory_item_id
          HAVING sum(mmt.primary_quantity) <> 0;
Line: 159

          INSERT INTO
		 cst_pac_explosion_temp(
                 pac_period_id,
                 cost_group_id,
                 assembly_item_id,
                 component_item_id,
                 deleted,
                 loop_count)
          SELECT DISTINCT
                 i_pac_period_id,
                 i_cost_group_id,
                 comp_rec.inventory_item_id,
                 wro.inventory_item_id,
                 'N',
                 1000
          FROM   mtl_material_txn_allocations mmta ,
                 wip_requirement_operations wro
          WHERE  mmta.transaction_id = comp_rec.transaction_id
          AND    mmta.repetitive_schedule_id = wro.repetitive_schedule_id
          AND    wro.wip_entity_id = comp_rec.transaction_source_id
          AND    NOT EXISTS (
		   SELECT 'exists'
                   FROM   cst_pac_explosion_temp
                   WHERE  assembly_item_id = comp_rec.inventory_item_id
                   AND    component_item_id = inventory_item_id
                   AND    pac_period_id = i_pac_period_id
                   AND    cost_group_id = i_cost_group_id);
Line: 187

          INSERT INTO
		 cst_pac_explosion_temp(
                 pac_period_id,
                 cost_group_id,
                 assembly_item_id,
                 component_item_id,
                 deleted,
                 loop_count)
          SELECT DISTINCT
                 i_pac_period_id,
                 i_cost_group_id,
                 comp_rec.inventory_item_id,
                 mmt.inventory_item_id,
                 'N',
                 1000
          FROM   mtl_material_transactions mmt
          WHERE  transaction_source_id = comp_rec.transaction_source_id
          AND    repetitive_line_id = comp_rec.repetitive_line_id
          AND    transaction_source_type_id = 5
          AND    transaction_action_id IN (1,27,33,34)
          AND    transaction_date BETWEEN trunc(i_start_date)
	         AND (trunc(i_end_date) + 0.99999)
          AND    NOT EXISTS (
		   SELECT 'exists'
                   FROM   cst_pac_explosion_temp
                   WHERE  assembly_item_id = comp_rec.inventory_item_id
                   AND    component_item_id = inventory_item_id
                   AND    pac_period_id = i_pac_period_id
                   AND    cost_group_id = i_cost_group_id)
	  GROUP  BY
                 mmt.inventory_item_id
          HAVING sum(mmt.primary_quantity) <> 0;
Line: 226

	INSERT INTO
	       cst_pac_explosion_temp(
               pac_period_id,
               cost_group_id,
               assembly_item_id,
               component_item_id,
               deleted,
               loop_count)
        SELECT DISTINCT
               i_pac_period_id,
               i_cost_group_id,
               comp_rec.inventory_item_id,
               mmt.inventory_item_id,
               'N',
               1000
        FROM   mtl_material_transactions mmt
        WHERE  mmt.completion_transaction_id =
                 comp_rec.completion_transaction_id
        AND    transaction_date BETWEEN trunc(i_start_date)
               AND    (trunc(i_end_date) + 0.99999)
        AND    mmt.transaction_action_id in (1,27,33,34)
        AND    NOT EXISTS (
                 SELECT 'exists'
                 FROM   cst_pac_explosion_temp
                 WHERE  assembly_item_id = comp_rec.inventory_item_id
                 AND    component_item_id = inventory_item_id
                 AND    pac_period_id = i_pac_period_id
                 AND    cost_group_id = i_cost_group_id);
Line: 255

	INSERT INTO
	       cst_pac_explosion_temp(
               pac_period_id,
               cost_group_id,
               assembly_item_id,
               component_item_id,
               deleted,
               loop_count)
        SELECT DISTINCT
               i_pac_period_id,
               i_cost_group_id,
               comp_rec.inventory_item_id,
               mmt.inventory_item_id,
               'N',
               1000
        FROM   mtl_material_transactions mmt
        WHERE  mmt.completion_transaction_id =
                 comp_rec.completion_transaction_id
        AND    transaction_date BETWEEN trunc(i_start_date)
               AND    (trunc(i_end_date) + 0.99999)
        AND    mmt.transaction_action_id in (1,27,33,34)
        AND    NOT EXISTS (
                 SELECT 'exists'
                 FROM   cst_pac_explosion_temp
                 WHERE  assembly_item_id = comp_rec.inventory_item_id
                 AND    component_item_id = inventory_item_id
                 AND    pac_period_id = i_pac_period_id
                 AND    cost_group_id = i_cost_group_id)
        GROUP  BY
	       mmt.inventory_item_id
        HAVING sum(primary_quantity) <> 0;
Line: 333

  CURSOR C_comp_not_deleted (
    c_pac_period_id IN NUMBER,
    c_cost_group_id IN NUMBER)
  IS
    SELECT DISTINCT
           component_item_id cii
    FROM   cst_pac_explosion_temp
    WHERE  pac_period_id = c_pac_period_id
    AND    cost_group_id = c_cost_group_id
    AND    deleted = 'N';
Line: 352

    SELECT DISTINCT
	   msik1.inventory_item_id assembly_item_id,
	   msik1.concatenated_segments assembly_item,
	   msik2.inventory_item_id component_item_id,
	   msik2.concatenated_segments component_item,
	   we.wip_entity_id wip_entity_id,
	   we.wip_entity_name wip_entity
    FROM   cst_pac_explosion_temp cpet,
           mtl_material_transactions mmt1,
	   mtl_material_transactions mmt2,
           mtl_system_items_kfv msik1,
           mtl_system_items_kfv msik2,
           wip_entities we
    WHERE  cpet.pac_period_id = c_pac_period_id
    AND    cpet.cost_group_id = c_cost_group_id
    AND    cpet.deleted = 'N'
    AND    mmt1.inventory_item_id = cpet.assembly_item_id
    AND    mmt1.transaction_source_type_id = 5
    AND    mmt1.transaction_action_id IN (30,31,32)
    AND    mmt1.transaction_date BETWEEN trunc(c_start_date)
           AND (trunc(c_end_date) + 0.99999)
    AND    (
             SELECT count('exists')
             FROM   cst_cost_group_assignments
	     WHERE  cost_group_id = c_cost_group_id
             AND    organization_id = mmt1.organization_id
             and    rownum < 2 ) > 0
    AND    mmt2.inventory_item_id = cpet.component_item_id
    AND    mmt2.transaction_action_id IN (1,27,33,34)
    AND    mmt2.transaction_date BETWEEN trunc(c_start_date)
           AND (trunc(c_end_date) + 0.99999)
    AND    (   (   (   NVL(mmt1.flow_schedule,'N') <> 'Y')
	       AND mmt1.repetitive_line_id IS NULL
	       AND mmt2.transaction_source_id = mmt1.transaction_source_id
	       AND mmt2.transaction_source_type_id = 5)
	   OR  (   (   NVL(mmt1.flow_schedule,'N') <> 'Y')
	       AND mmt1.repetitive_line_id IS NOT NULL
	       AND mmt2.transaction_source_id = mmt1.transaction_source_id
	       AND mmt2.repetitive_line_id = mmt1.repetitive_line_id
	       AND mmt2.transaction_source_type_id = 5)
	   OR  (   (   NVL(mmt1.flow_schedule,'N') = 'Y')
	       AND mmt2.completion_transaction_id = mmt1.completion_transaction_id))
    AND    msik1.organization_id = mmt1.organization_id
    AND    msik1.inventory_item_id = mmt1.inventory_item_id
    AND    msik2.organization_id = msik2.organization_id
    AND    msik2.inventory_item_id = mmt2.inventory_item_id
    AND    we.wip_entity_id = mmt2.transaction_source_id
    GROUP  BY
	   msik1.inventory_item_id,
           msik1.concatenated_segments,
	   msik2.inventory_item_id,
	   msik2.concatenated_segments,
	   we.wip_entity_id,
	   we.wip_entity_name
    HAVING sum(mmt2.primary_quantity) <> 0;
Line: 411

  l_update_flag          BOOLEAN DEFAULT FALSE;
Line: 429

  UPDATE cst_pac_explosion_temp
  SET    deleted = 'Y',
         loop_count = l_iteration
  WHERE  component_item_id = assembly_item_id
  AND    deleted = 'N'
  AND    pac_period_id = i_pac_period_id
  AND    cost_group_id = i_cost_group_id;
Line: 438

    l_update_flag := FALSE;
Line: 444

    OPEN C_comp_not_deleted(i_pac_period_id,i_cost_group_id);
Line: 447

      FETCH C_comp_not_deleted INTO l_cii;
Line: 448

      EXIT when C_comp_not_deleted%NOTFOUND;
Line: 454

        parent. Need to only check with rows that have been updated by
        previous iterations since components can occur at different levels
        --------------------------------------------------------------------*/
      l_stmt_num := 40;
Line: 459

      UPDATE /*+ index(cet1 CST_PAC_EXPLOSION_TEMP_N1) */
            cst_pac_explosion_temp cet1
      SET    deleted = 'Y',
             loop_count = l_iteration
      WHERE  component_item_id = l_cii
      AND    deleted = 'N'
      AND    pac_period_id = i_pac_period_id
      AND    cost_group_id = i_cost_group_id
      AND    NOT EXISTS (
               SELECT 'exists as a parent'
               FROM   cst_pac_explosion_temp cet2
               WHERE  cet2.assembly_item_id = l_cii
               AND    pac_period_id = i_pac_period_id
               AND    cost_group_id = i_cost_group_id
               AND    loop_count >= l_iteration);
Line: 476

        if no rows are updated then it implies that the component exists as a
        parent and should not for now be inserted into the CPLLC table
        --------------------------------------------------------------------*/
      l_stmt_num := 50;
Line: 482

        l_update_flag := TRUE;
Line: 483

        INSERT INTO
	       cst_pac_low_level_codes (
                 pac_period_id,
                 cost_group_id,
                 inventory_item_id,
                 low_level_code,
                 last_update_date,
                 last_updated_by,
                 creation_date,
                 created_by)
               VALUES (
	         i_pac_period_id,
                 i_cost_group_id,
                 l_cii,
                 l_level_code,
                 sysdate,
                 -1,
                 sysdate,
                 -1);
Line: 504

    CLOSE C_comp_not_deleted;
Line: 513

      if "undeleted" rows still exist in cst_pac_explosion_temp and no rows
      were updated, then this implies there is a LOOP.
      ----------------------------------------------------------------------*/

    IF (NOT l_update_flag AND l_counter > 0) THEN
      IF (i_method = 1) THEN
        raise LOOP_WARNING;
Line: 530

    completion/return/scrap. So we delete all leaf node items from cpllc. We
    make sure that assembly items with completion/scrap/return are not
    considered as leaf nodes even if they might appear with LLC of 1000
    ------------------------------------------------------------------------*/

  DELETE FROM
         cst_pac_low_level_codes cpllc
  WHERE  low_level_code = 1000
  AND    cost_group_id = i_cost_group_id
  AND    pac_period_id = i_pac_period_id
  AND    NOT EXISTS (
           SELECT component_item_id FROM cst_pac_explosion_temp cpet
           WHERE  assembly_item_id = -1
           AND    component_item_id = cpllc.inventory_item_id
           AND    cost_group_id = i_cost_group_id
           AND    pac_period_id = i_pac_period_id);
Line: 549

    DELETE FROM
           cst_pac_low_level_codes
    WHERE  cost_group_id = i_cost_group_id
    AND    pac_period_id = i_pac_period_id;
Line: 553

    DELETE FROM
           cst_pac_explosion_temp
    WHERE  cost_group_id = i_cost_group_id
    AND    pac_period_id = i_pac_period_id;
Line: 568

    DELETE FROM
           cst_pac_low_level_codes
    WHERE  cost_group_id = i_cost_group_id
    AND    pac_period_id = i_pac_period_id;