DBA Data[Home] [Help]

APPS.PV_OPP_MATCH_PUB SQL Statements

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

Line: 73

   p_opp_selection_tab t_opp_selection_tab
)
RETURN NUMBER;
Line: 150

PROCEDURE Opportunity_Selection(
   p_api_version            IN  NUMBER,
   p_init_msg_list          IN  VARCHAR2  := FND_API.g_false,
   p_commit                 IN  VARCHAR2  := FND_API.g_false,
   p_validation_level       IN  NUMBER    := FND_API.g_valid_level_full,
   p_entity_id              IN  NUMBER,
   p_entity                 IN  VARCHAR2,
   p_user_name              IN  VARCHAR2  := NULL,
   p_resource_id            IN  NUMBER    := NULL,
   x_selected_rule_id       OUT NOCOPY NUMBER,
   x_matched_partner_count  OUT NOCOPY NUMBER,
   x_failure_code           OUT NOCOPY VARCHAR2,
   x_return_status          OUT NOCOPY VARCHAR2,
   x_msg_count              OUT NOCOPY NUMBER,
   x_msg_data               OUT NOCOPY VARCHAR2
)
IS
   l_api_name           VARCHAR2(30) := 'Opportunity_Selection';
Line: 182

   Opportunity_Selection(
      p_api_version            => p_api_version,
      p_init_msg_list          => p_init_msg_list,
      p_commit                 => p_commit,
      p_validation_level       => p_validation_level,
      p_entity_id              => p_entity_id,
      p_entity                 => p_entity,
      p_user_name              => p_user_name,
      p_resource_id            => p_resource_id,
      p_routing_flag           => 'Y',
      x_partner_tbl            => l_partner_tbl,
      x_partner_details        => l_partner_details,
      x_flagcount              => l_flagcount,
      x_distance_tbl           => l_distance_tbl,
      x_distance_uom_returned  => l_distance_uom_returned,
      x_selected_rule_id       => x_selected_rule_id,
      x_return_status          => x_return_status,
      x_msg_count              => x_msg_count,
      x_msg_data               => x_msg_data
   );
Line: 249

END Opportunity_Selection;
Line: 270

PROCEDURE Opportunity_Selection(
   p_api_version            IN  NUMBER,
   p_init_msg_list          IN  VARCHAR2  := FND_API.g_false,
   p_commit                 IN  VARCHAR2  := FND_API.g_false,
   p_validation_level       IN  NUMBER    := FND_API.g_valid_level_full,
   p_entity_id              IN  NUMBER,
   p_entity                 IN  VARCHAR2,
   p_user_name              IN  VARCHAR2  := NULL,
   p_resource_id            IN  NUMBER    := NULL,
   p_routing_flag           IN  VARCHAR2  := 'N',
   x_partner_tbl            OUT NOCOPY JTF_NUMBER_TABLE,
   x_partner_details        OUT NOCOPY JTF_VARCHAR2_TABLE_4000,
   x_flagcount              OUT NOCOPY JTF_VARCHAR2_TABLE_100,
   x_distance_tbl           OUT NOCOPY JTF_NUMBER_TABLE,
   x_distance_uom_returned  OUT NOCOPY VARCHAR2,
   x_selected_rule_id       OUT NOCOPY NUMBER,
   x_return_status          OUT NOCOPY VARCHAR2,
   x_msg_count              OUT NOCOPY NUMBER,
   x_msg_data               OUT NOCOPY VARCHAR2
)
IS
   l_api_version        NUMBER := 1.0;
Line: 292

   l_api_name           VARCHAR2(30) := 'Opportunity_Selection';
Line: 411

   l_count := g_opp_selection_tab.COUNT;
Line: 420

      Debug('Opportunity Rule Selection Starts....................................');
Line: 428

         Debug('Rule # :::' || g_opp_selection_tab(i).process_rule_id);
Line: 434

      l_attribute_id := g_opp_selection_tab(i).attribute_id;
Line: 468

         i := Get_Next_Rule_Index(i, g_opp_selection_tab);
Line: 486

      IF (g_opp_selection_tab(i).count = 1) THEN
         -- ------------------------------------------------------------------------
         -- Use operator to do the match. If the match fails, go to the next rule
         -- until all rules are exhausted.
         -- If the match succeeds, check if last_attr_flag = TRUE. If yes, there's
         -- a match. set l_stop_flag = TRUE
         -- ------------------------------------------------------------------------
        IF (g_rule_engine_trace_flag = 'Y') OR FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW) THEN
           Debug('Calling Check_Match...AND LOGIC...');
Line: 504

	   --Debug('p_rule_attr_value:   ' || g_opp_selection_tab(i).attribute_value);
Line: 505

	   l_attr_val_temp := g_opp_selection_tab(i).attribute_value;
Line: 511

	   Debug('p_operator:          ' || g_opp_selection_tab(i).operator);
Line: 520

                         p_rule_attr_value    => g_opp_selection_tab(i).attribute_value,
                         p_rule_to_attr_value => g_opp_selection_tab(i).attribute_to_value,
                         p_operator           => g_opp_selection_tab(i).operator,
                         p_input_filter       => l_input_filter,
                         p_delimiter          => l_delimiter,
                         p_return_type        => l_entity_attr_value(l_attribute_id).return_type,
                         p_rule_currency_code => g_opp_selection_tab(i).currency_code
                      );
Line: 546

            l_stop_at_index   := i + g_opp_selection_tab(i).count - 1;
Line: 551

                                    g_opp_selection_tab(j).attribute_value || l_delimiter;
Line: 554

                                       g_opp_selection_tab(j).attribute_to_value || l_delimiter;
Line: 574

	       Debug('p_operator:          ' || g_opp_selection_tab(i).operator);
Line: 584

                            p_operator           => g_opp_selection_tab(i).operator,
                            p_input_filter       => l_input_filter,
                            p_delimiter          => l_delimiter,
                            p_return_type        => l_entity_attr_value(l_attribute_id).return_type,
                            p_rule_currency_code => g_opp_selection_tab(i).currency_code
                         );
Line: 612

            i := Get_Next_Rule_Index(i, g_opp_selection_tab);
Line: 620

            IF (g_opp_selection_tab(i).last_attr_flag = 'Y') THEN
               IF (l_matching_type = 'STOP_AT_FIRST_RULE') THEN
                  l_stop_flag := TRUE;
Line: 628

               x_selected_rule_id := g_opp_selection_tab(i).process_rule_id;
Line: 631

                  Debug('%%%%%%%Selected Rule ID: ' || x_selected_rule_id);
Line: 645

                  Debug('Calling Partner_Selection................................');
Line: 648

               Partner_Selection(
                  p_api_version     => 1.0,
                  p_process_rule_id => x_selected_rule_id,
                  p_entity_id       => p_entity_id,
                  p_entity          => p_entity,
                  p_user_name       => p_user_name,
                  p_resource_id     => p_resource_id,
                  p_routing_flag    => p_routing_flag,
                  p_incumbent_partner_only => 'N',
                  x_partner_tbl     => x_partner_tbl,
                  x_partner_details => x_partner_details,
                  x_flagcount       => x_flagcount,
                  x_distance_tbl    => x_distance_tbl,
                  x_distance_uom_returned => x_distance_uom_returned,
                  x_return_status   => l_return_status,
                  x_msg_count       => l_msg_count,
                  x_msg_data        => l_msg_data
               );
Line: 688

                 PV_ENTITY_RULES_APPLIED_PKG.Insert_Row(
                    px_ENTITY_RULE_APPLIED_ID => l_entity_rule_applied_id,
                    p_LAST_UPDATE_DATE        => SYSDATE,
                    p_LAST_UPDATED_BY         => p_resource_id,
                    p_CREATION_DATE           => SYSDATE,
                    p_CREATED_BY              => p_resource_id,
                    p_LAST_UPDATE_LOGIN       => p_resource_id,
                    p_OBJECT_VERSION_NUMBER   => 1,
                    p_REQUEST_ID              => FND_API.G_MISS_NUM,
                    p_PROGRAM_APPLICATION_ID  => FND_API.G_MISS_NUM,
                    p_PROGRAM_ID              => FND_API.G_MISS_NUM,
                    p_PROGRAM_UPDATE_DATE     => SYSDATE,
                    p_ENTITY                  => p_entity,
                    p_ENTITY_ID               => p_entity_id,
                    p_PROCESS_RULE_ID         => x_selected_rule_id,
                    p_PARENT_PROCESS_RULE_ID  => FND_API.G_MISS_NUM,
                    p_LATEST_FLAG             => FND_API.G_MISS_CHAR,
                    p_ACTION_VALUE            => FND_API.G_MISS_CHAR,
                    p_PROCESS_TYPE            => 'BACKGROUND_PARTNER_MATCHING',
                    p_WINNING_RULE_FLAG       => l_winning_rule_flag,
                    p_entity_detail           => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE_CATEGORY      => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE1              => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE2              => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE3              => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE4              => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE5              => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE6              => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE7              => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE8              => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE9              => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE10             => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE11             => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE12             => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE13             => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE14             => FND_API.G_MISS_CHAR,
                    p_ATTRIBUTE15             => FND_API.G_MISS_CHAR,
                    p_PROCESS_STATUS          => FND_API.G_MISS_CHAR
                 );
Line: 770

            Debug('Calling Partner_Selection for incumbent partner only......');
Line: 773

         Partner_Selection(
            p_api_version     => 1.0,
            p_process_rule_id => null,
            p_entity_id       => p_entity_id,
            p_entity          => p_entity,
            p_user_name       => p_user_name,
            p_resource_id     => p_resource_id,
            p_routing_flag    => p_routing_flag,
            p_incumbent_partner_only => 'Y',
            x_partner_tbl     => x_partner_tbl,
            x_partner_details => x_partner_details,
            x_flagcount       => x_flagcount,
            x_distance_tbl    => x_distance_tbl,
            x_distance_uom_returned => x_distance_uom_returned,
            x_return_status   => l_return_status,
            x_msg_count       => l_msg_count,
            x_msg_data        => l_msg_data
         );
Line: 847

END Opportunity_Selection;
Line: 867

PROCEDURE Partner_Selection(
   p_api_version            IN  NUMBER,
   p_init_msg_list          IN  VARCHAR2  := FND_API.g_false,
   p_commit                 IN  VARCHAR2  := FND_API.g_false,
   p_validation_level       IN  NUMBER    := FND_API.g_valid_level_full,
   p_process_rule_id        IN  NUMBER,
   p_entity_id              IN  NUMBER,
   p_entity                 IN  VARCHAR2,
   p_user_name              IN  VARCHAR2  := NULL,
   p_resource_id            IN  NUMBER    := NULL,
   p_routing_flag           IN  VARCHAR2,
   p_incumbent_partner_only IN  VARCHAR2  := 'N',
   x_partner_tbl            OUT NOCOPY JTF_NUMBER_TABLE,
   x_partner_details        OUT NOCOPY JTF_VARCHAR2_TABLE_4000,
   x_flagcount              OUT NOCOPY JTF_VARCHAR2_TABLE_100,
   x_distance_tbl           OUT NOCOPY JTF_NUMBER_TABLE,
   x_distance_uom_returned  OUT NOCOPY VARCHAR2,
   x_return_status          OUT NOCOPY VARCHAR2,
   x_msg_count              OUT NOCOPY NUMBER,
   x_msg_data               OUT NOCOPY VARCHAR2
)
IS
   -- -------------------------------------------------------------------------
   -- Cursor for retrieving partner-to-opportunity mapping for a process rule.
   -- -------------------------------------------------------------------------
   CURSOR lc_partner_mapping IS
      SELECT a.source_attr_id, a.target_attr_id, a.operator, b.return_type
      FROM   pv_entity_attr_mappings a,
             pv_attributes_vl b
      WHERE  a.target_attr_id   = b.attribute_id AND
             a.process_rule_id  = p_process_rule_id AND
             a.source_attr_type = 'LEAD' AND
             --a.source_attr_type = 'OPPORTUNITY' AND
             a.target_attr_type = 'PARTNER';
Line: 905

   CURSOR lc_partner_selection IS
      SELECT a.attribute_id, a.operator,
             b.attribute_value, b.attribute_to_value,
             a.selection_criteria_id,
             c.return_type
      FROM   pv_enty_select_criteria a,
             pv_selected_attr_values b,
             pv_attributes_vl c
      WHERE  a.attribute_id          = c.attribute_id AND
             a.selection_criteria_id = b.selection_criteria_id (+) AND
             a.selection_type_code   = 'PARTNER_SELECTION' AND
             a.process_rule_id       = p_process_rule_id
      ORDER  BY a.attribute_id, b.selection_criteria_id;
Line: 922

   CURSOR lc_entity_routings (p_selected_rule_id IN NUMBER) IS
      SELECT entity_routing_id, max_nearest_partner, distance_from_customer,
             distance_uom_code, routing_type,
             NVL(bypass_cm_ok_flag, 'N') bypass_cm_ok_flag
      FROM   pv_entity_routings
      WHERE  process_rule_id = p_selected_rule_id;
Line: 933

      SELECT b.location_id
      FROM   as_leads_all   a,
             hz_party_sites b,
             hz_locations   l
      WHERE  a.lead_id       = p_entity_id AND
             a.customer_id   = b.party_id AND
             b.party_site_id = a.address_id AND
             b.location_id   = l.location_id AND
             l.geometry IS NOT NULL;
Line: 947

      SELECT process_rule_name
      FROM   pv_process_rules_vl
      WHERE  process_rule_id = p_process_rule_id;
Line: 955

   l_api_name            VARCHAR2(30) := 'Partner_Selection';
Line: 1056

      Debug('***Rule ID Selected Is: ' || p_process_rule_id || '***');
Line: 1109

      SELECT currency_code
      INTO   l_rule_currency_code
      FROM   pv_process_rules_b
      WHERE  process_rule_id = p_process_rule_id;
Line: 1254

      Debug('Appending Partner Selection Attributes...');
Line: 1269

   FOR x IN lc_partner_selection LOOP
      IF (l_previous_attr_id = x.attribute_id AND
          l_previous_sc_id   = x.selection_criteria_id)
      THEN
         l_attr_value_tbl(i - 1) := l_attr_value_tbl(i - 1) ||
                                    l_delimiter || x.attribute_value;
Line: 1321

      l_previous_sc_id   := x.selection_criteria_id;
Line: 1343

      SELECT resource_id
      INTO   l_resource_id
      FROM   fnd_user a, jtf_rs_resource_extns b
      WHERE  a.user_id   = b.user_id AND
             a.user_name = p_user_name;
Line: 1365

     p_attr_selection_mode => 'OR',
     p_att_delmter         => l_delimiter,
     p_selection_criteria  => 'ALL',
     p_resource_id         => l_resource_id,
     p_lead_id             => p_entity_id,
     p_auto_match_flag     => 'N',
     x_matched_id          => x_partner_tbl,
     x_return_status       => l_return_status,
     x_msg_count           => l_msg_count,
     x_msg_data            => l_msg_data
   );
Line: 1604

   SELECT INCUMBENT_PARTNER_PARTY_ID
   INTO   l_preferred_partner_party_id
   FROM   as_leads_all asla
   WHERE  lead_id = p_entity_id;
Line: 1616

         SELECT idx
         FROM   (SELECT rownum idx, column_value party_id
                 FROM  (SELECT column_value
                        FROM TABLE (CAST(x_partner_tbl AS JTF_NUMBER_TABLE)))) a
         WHERE  a.party_id = l_preferred_partner_party_id)
      LOOP
         l_preferred_idx := x.idx;
Line: 1918

         SELECT a.user_name
         INTO   l_user_name
         FROM   fnd_user a, jtf_rs_resource_extns b
         WHERE  b.resource_id   = p_resource_id AND
                a.user_id       = b.user_id;
Line: 2018

END Partner_Selection;
Line: 2079

         SELECT a.attribute_id, a.operator, b.return_type
         FROM   pv_enty_select_criteria a,
                pv_attributes_vl b
         WHERE  a.process_rule_id            = p_process_rule_id AND
                UPPER(a.selection_type_code) = 'TIE_BREAKING' AND
                a.attribute_id               = b.attribute_id
         ORDER  BY a.rank;
Line: 2099

         SELECT b.party_id,
                DECODE(a.attr_text, NULL, TO_CHAR(a.attr_value), a.attr_text) attribute_value
         FROM   pv_search_attr_values a,
                hz_parties b
         WHERE  a.party_id     (+) = b.party_id AND
                a.attribute_id (+) = l_attribute_id AND
                b.party_id IN (
                  SELECT * FROM TABLE (CAST(x_partner_tbl AS JTF_NUMBER_TABLE))
                )
         ORDER  BY b.party_id;
Line: 2122

     '          SELECT /*+ leading(c) */ ' ||
     '	        b.party_id, ' ||
     '           DECODE(a.attr_text, NULL, TO_CHAR(a.attr_value), a.attr_text) attribute_value, ' ||
     '           c.idx ' ||
     '    FROM   pv_search_attr_values a, ' ||
     '           hz_parties b, ' ||
     '          (SELECT * ' ||
     '           FROM   (SELECT rownum idx, column_value party_id ' ||
     '                   FROM  (SELECT column_value ' ||
     '                          FROM TABLE (CAST(x_partner_tbl AS JTF_NUMBER_TABLE))))) c ' ||
     '    WHERE  a.party_id     (+) = b.party_id AND ' ||
     '           a.attribute_id (+) = l_attribute_id AND ' ||
     '           b.party_id     = c.party_id ' ||
     '    ORDER  BY c.idx ' ;
Line: 2148

               (SELECT *
                FROM   (SELECT rownum idx, column_value party_id
                        FROM  (SELECT column_value
                               FROM TABLE (CAST(x_partner_tbl AS JTF_NUMBER_TABLE))))) c
         WHERE  a.party_id     (+) = b.party_id AND
                a.attribute_id (+) = l_attribute_id AND
                b.party_id     = c.party_id
         ORDER  BY c.idx;
Line: 2338

            SELECT *
            INTO   l_dup_count
            FROM (
               SELECT COUNT(*)
               FROM   THE (SELECT CAST(l_tie_breaking_tab AS PV_TIE_BREAKING_TBL)
                           FROM   dual) a
               WHERE  ROWNUM < 2
               GROUP  BY concat_value_str
               HAVING COUNT(*) > 1) b;
Line: 2393

         SELECT *
         FROM   THE (SELECT CAST(l_tie_breaking_tab AS PV_TIE_BREAKING_TBL)
                     FROM   dual) a
         ORDER  BY concat_value_str DESC)
      LOOP
         x_partner_tbl(l_index) := x.party_id;
Line: 2412

         SELECT *
         FROM   THE (SELECT CAST(l_tie_breaking_tab AS PV_TIE_BREAKING_TBL)
                     FROM   dual) a
         ORDER  BY concat_value_str DESC, idx ASC)
      LOOP
         x_partner_tbl(l_index) := x.party_id;
Line: 2553

   CURSOR lc_opp_selection IS
      SELECT prr.process_rule_id,
             prr.rank,
             pesc.attribute_id,
             prr.currency_code,
             pesc.operator,
             pesc.selection_criteria_id,
             psav.attribute_value,
             psav.attribute_to_value
      FROM   pv_process_rules_vl prr,
             pv_enty_select_criteria pesc,
             pv_selected_attr_values psav
      WHERE  prr.process_rule_id = pesc.process_rule_id AND
             pesc.selection_criteria_id = psav.selection_criteria_id (+) AND
             prr.status_code = 'ACTIVE' AND
             TRUNC(SYSDATE) BETWEEN prr.start_date AND
                NVL(prr.end_date, to_DATE('31-12-4000', 'DD-MM-YYYY')) AND
             pesc.selection_type_code = 'OPPORTUNITY_SELECTION'
      ORDER  BY prr.rank DESC, prr.process_rule_id, pesc.attribute_id,
             pesc.selection_criteria_id;
Line: 2587

   IF (g_opp_selection_tab.COUNT = 0) THEN
      FOR l_opp_selection IN lc_opp_selection LOOP
         g_opp_selection_tab(i).rank                  := l_opp_selection.rank;
Line: 2590

         g_opp_selection_tab(i).process_rule_id       := l_opp_selection.process_rule_id;
Line: 2591

         g_opp_selection_tab(i).attribute_id          := l_opp_selection.attribute_id;
Line: 2592

         g_opp_selection_tab(i).currency_code         := l_opp_selection.currency_code;
Line: 2593

         g_opp_selection_tab(i).operator              := l_opp_selection.operator;
Line: 2594

         g_opp_selection_tab(i).selection_criteria_id := l_opp_selection.selection_criteria_id;
Line: 2595

         g_opp_selection_tab(i).attribute_value       := l_opp_selection.attribute_value;
Line: 2596

         g_opp_selection_tab(i).attribute_to_value    := l_opp_selection.attribute_to_value;
Line: 2604

      l_count    := g_opp_selection_tab.COUNT;
Line: 2609

            g_opp_selection_tab(i).last_attr_flag := 'Y';
Line: 2614

               g_opp_selection_tab(j).count := l_or_count;
Line: 2618

            l_next_index        := g_opp_selection_tab.NEXT(i);
Line: 2619

            l_next_rule_id      := g_opp_selection_tab(l_next_index).process_rule_id;
Line: 2620

            l_next_attribute_id := g_opp_selection_tab(l_next_index).attribute_id;
Line: 2621

            l_next_sc_id        := g_opp_selection_tab(l_next_index).selection_criteria_id;
Line: 2627

            IF (l_next_rule_id <> g_opp_selection_tab(i).process_rule_id) THEN
               g_opp_selection_tab(i).last_attr_flag := 'Y';
Line: 2630

               g_opp_selection_tab(i).last_attr_flag := 'N';
Line: 2638

            IF (l_next_rule_id      = g_opp_selection_tab(i).process_rule_id) AND
               (l_next_attribute_id = g_opp_selection_tab(i).attribute_id) AND
               (l_next_sc_id        = g_opp_selection_tab(i).selection_criteria_id)
            THEN
               l_or_count := l_or_count + 1;
Line: 2648

                  g_opp_selection_tab(j).count := l_or_count;
Line: 2662

      l_count    := g_opp_selection_tab.COUNT;
Line: 2666

         Debug(g_opp_selection_tab(i).rank || '::' ||
               g_opp_selection_tab(i).process_rule_id || '::' ||
               g_opp_selection_tab(i).attribute_id || '::' ||
               g_opp_selection_tab(i).currency_code || '::' ||
               g_opp_selection_tab(i).operator || '::' ||
               g_opp_selection_tab(i).selection_criteria_id || '::' ||
               g_opp_selection_tab(i).attribute_value || '::' ||
               g_opp_selection_tab(i).attribute_to_value || '::' ||
               g_opp_selection_tab(i).last_attr_flag || '::' ||
               g_opp_selection_tab(i).count
         );
Line: 2702

   g_opp_selection_tab.DELETE;
Line: 2727

   p_opp_selection_tab t_opp_selection_tab
)
RETURN NUMBER
IS
   i                 NUMBER := p_current_index;
Line: 2732

   l_current_rule_id NUMBER := p_opp_selection_tab(p_current_index).process_rule_id;
Line: 2733

   l_last_index      NUMBER := p_opp_selection_tab.LAST;
Line: 2749

   WHILE ((p_opp_selection_tab(i).process_rule_id = l_current_rule_id) AND
         (i < l_last_index))
   LOOP
      i := i + 1;
Line: 2759

      (p_opp_selection_tab(i).process_rule_id = l_current_rule_id))
   THEN
      i := g_no_more_rules;