• Passa al contenuto principale
  • Passa alla barra laterale primaria
  • INIZIA QUI
  • HOME
  • CHI SONO

APPin5Minuti

Creare APP Gestionali con Oracle APEX e Low-Code

Crea Applicazioni Gestionali con Oracle APEX e gli strumenti Low-Code.

Come costruire una Pagina di Ricerca Globale in Oracle APEX

Dicembre 7, 2022

Se c’è un aspetto che determina il successo di una applicazione, quel qualcosa è senza dubbio la capacità di soddisfare il bisogno che ha un utente di trovare quello che cerca nel più breve tempo possibile.

Non è un mistero, infatti, che la popolarità dei più famosi motori di ricerca sia dovuta proprio a questo aspetto.

Anche le applicazioni gestionali non fanno eccezione e secondo me dovrebbero sempre mettere a disposizione degli utente funzionalità di ricerca avanzate.

Mi riferisco in particolare alla possibilità di eseguire nei sistemi delle ricerca globali, ovvero capaci di restituire all’utente i riferimenti a diverse tipologie di oggetti.

Cosa significa esattamente?

Bene, facciamo qualche esempio concreto per capirci meglio.

Immaginiamo di avere un CRM all’interno del quale vengono gestiti leads, contatti, opportunità, offerte, ecc..

Quando un venditore fa una ricerca per nome cliente sarebbe utile che il sistema restituisse tutti gli oggetti correlati al quel cliente affinché possa vedere in sola pagina tutti i risultati, opportunamente raggruppati per tipo.

In questo modo l’utente non dovrebbe navigare tra pagine diverse per andare letteralmente a caccia di quello di cui ha bisogno.

Un altro esempio potrebbe essere quello di un operatore del customer care che effettuando anch’esso una ricerca per nome cliente dovrebbe accedere velocemente a tutte le richieste di supporto, gli ordini effettuati e gli interventi di assistenza che sono stati prestati nel tempo.

Ovviamente questi sono solo due casi d’uso ma se ne potrebbero fare a decine.

In questo articolo ti spiegherò come puoi costruire con Oracle APEX una pagina di ricerca globale, ovvero capace di fare più ricerche simultaneamente.

IN QUESTO ARTICOLO

  • Prima di Iniziare
  • Come configurare le Ricerche (Searches)
    • Ricerca dei Leads
    • Ricerca dei Contacts
    • Ricerca degli Accounts
    • Ricerca delle Opportunità
  • Come creare una Pagina di Ricerca (Search Page)
  • Come configurare la Pagina di Ricerca
  • Conclusioni

Prima di Iniziare

Per fare questo esercizio utilizzeremo una APP di prova messa a disposizione nella APP Gallery di Oracle APEX che si chiama Opportunities e che altro non è che un semplice CRM.

  • Accedi all’APP Builder
  • Clicca su Create New APP > Starter APP e seleziona l’applicazione chiamata Opportunities
  • Clicca Install e avvia l’applicazione.

Come noterai immediatamente, usando questo semplice CRM puoi gestire i tipici oggetti di un qualsiasi CRM come Leads, le Opportunità e i Clienti.

Quello che faremo è creare una pagina di ricerca globale che sia in grado di restituire i riferimenti a più oggetti.

Utilizzeremo un metodo molto facile ed immediato basato sull’utilizzo del componente Search, introdotto con la Release 22.2 di Oracle APEX.

Come configurare le Ricerche (Searches)

L’oggetto Search è indubbiamente il modo più immediato e veloce per creare una funzionalità di ricerca globale.

Per configurarlo dovremo prima di tutto impostare le Ricerche (Search Configurations).

Cosa sarebbero esattamente?

Si tratta di una novità che è stato introdotta proproio con la Release 22.2 di Oracle APEX.

Una Ricerca è un oggetto condiviso (Shared Component) che devi configurare per definire gli oggetti che devono essere cercati dal componente Search (tra poco capirai di cosa parlo).

Dovrai configurare una Ricerca per ciascun oggetto che desideri cercare.

Poichè nel mio caso vorrei costruire una ricerca globale che lavori su Leads, Contacts, Accounts ed Opportunities, dovrò configurare una Ricerca per ciascuno di questi oggetti.

Ricerca dei Leads

  • Accedi all’APP Builder e vai in Shared Components > Search Configurations
  • Clicca Create per configurare una nuova Ricerca. Seleziona il tipo di ricerca Standard (ma puoi usare anche delle Liste oppure una tabella indicizzata da Oracle Text)
  • Nella schermata successiva devi configurare l’Origine Dati della Ricerca
    • Data Source: Local Database
    • Source Type: SQL Query
  • Inserisci la query seguente e premi Next
select l.id lead_id, 
  l.row_key ,
  nvl(l.lead_priority, 5) lead_priority,
  c.customer_name account_name,
  slsc.status_code lead_status,
  ls.lead_source,
  t.territory_name,
  l.lead_name_01 name
from eba_sales_leads l
left join eba_sales_customers c
  on c.id = l.account_id
left join eba_sales_territories t
  on t.id = c.customer_territory_id 
left join eba_sales_lead_status_codes slsc
  on slsc.id = l.lead_status_id
left join eba_sales_lead_sources ls
  on ls.id = l.lead_source_id
  • Nella sezione Column Mapping andremo a configurare i campo della Ricerca.
    • Primary Key Column: LEAD_ID
    • Title Column: NAME
    • Icon Source: Icon Class
    • Icon CSS Classes: fa-flag
  • Clicca Create Search Configuration per completare la procedura

Una volta creata la Ricerca possiamo personalizzarla ulteriormente. Ad esempio possiamo aggiungere altri campi da visualizzare.

  • Vai alla sezione Column Mapping e configura le opzioni seguenti:
    • Primary Key Column: LEAD_ID
    • Title Column: NAME
    • Subtitle Column: ACCOUNT_NAME
    • Description Column: LEAD_STATUS
  • Vai alla sezione Link per impostare la pagina di destinazione
    • Link Type: Redirect to Page in this Application
    • Page: inserisci la pagina di destinazione
    • Set these items: inserisci il parametri da passare alla pagina
    • With these Value: inserisci i valori dei parametri da passare
  • Clicca Apply Changes per salvare il lavoro

Ricerca dei Contacts

In maniera del tutto simile a quando visto poco fa, dovrai configurare una Ricerca per i Contatti

  • Torna in Shared Components > Search Configurations
  • Clicca Create per configurare una nuova Ricerca di tipo Standard di nome Contacts
  • Seleziona la Source Type di tipo SQL Query ed inserisci la seguente Query SQL
select cc.id contact_id, 
  cc.row_key,
  cc.contact_title,
  cc.contact_name,
  cc.contact_email,
  c.customer_name account,
  t.territory_name
from eba_sales_customer_contacts cc
join eba_sales_customers c
  on c.id = cc.customer_id
left join eba_sales_territories t
  on t.id = c.customer_territory_id
  • Vai in Column Mapping per configurare le informazioni da visualizzare nella Pagina di Ricerca
    • Primary Key Column: CONTACT_ID
    • Title Column: CONTACT_NAME
    • Subtitle Column: CONTACT_TITLE
    • Custom Column 1: ACCOUNT
  • Vai alla sezione Link e configura come in figura

Ricerca degli Accounts

Configura la Ricerca degli Accounts ovvero i Clienti che sono stati salvati nel CRM

  • Query SQL
select c.id account_id,
  c.row_key,
  c.customer_name,
  t.territory_name
from eba_sales_customers c
left join eba_sales_territories t
  on c.customer_territory_id = t.id
  • Column Mapping
    • Primary Key Column: ACCOUNT_ID
    • Title Column: CUSTOMER_NAME
    • Subtitle Column: TERRITORY_NAME
  • Link

Ricerca delle Opportunità

Completiamo la configurazione delle Ricerche con quella per le Opportunità

  • Query SQL
select d.id oppty_id,
  d.row_key,
  d.deal_name,
  t.territory_name,
  c.customer_name account,
  dsc.status_code,
  d.deal_amount
from eba_sales_deals d
join eba_sales_customers c
  on c.id = d.customer_id
left join eba_sales_deal_status_codes dsc
  on dsc.id = d.deal_status_code_id
left join eba_sales_territories t
  on t.id = c.customer_territory_id
  • Column Mapping
    • Primary Key Column: OPPTY_ID
    • Title Column: DEAL_NAME
    • Subtitle Column: STATUS_COLUMN
    • Custom Column 1: ACCOUNT
    • Badge Column: DEAL_AMOUNT
  • Link

Come creare una Pagina di Ricerca (Search Page)

Ora che abbiamo configurato gli oggetti da cercare possiamo finalmente creare la nostra pagina di ricerca.

  • Accedi all’APP Builder e clicca Create Page
  • Seleziona il tipo pagina Search Page e clicca Next
  • Configura la Search Page:
    • Name: Search Page
    • Page Mode: Normal
  • Nelle opzioni Search Configurations seleziona quali Ricerche tra quelle che hai creato prima desideri che la pagina esegua e poi premi Create Page.

Il risultato che dovresti ottenere è una pagina fatta più o meno così

Search Results è un componente di tipo Search che, come vedi in figura, è collegato alle quattro Ricerche che abbiamo configurato,

Proviamo ad eseguire la pagina per vedere il risultato finale.

  • Dal Page Builder clicca su Run Page
  • Inserisci la chiave di ricerca che preferisci per eseguire una ricerca.

Se hai fatto tutto correttamente vedrai apparire nei risultato diversi tipi di oggetti.

Poichè abbiamo definito i Link è possibile cliccare su uno qualsiasi dei record per accedere alla sua pagina di dettaglio.

Come configurare la Pagina di Ricerca

Modifichiamo la Page Search affinché sia in grado di cercare altre tipologie di oggetti.

  • Accedi all’APP Builder e seleziona il componente Search
  • Seleziona Search Sources e con il pulsante destro del mouse clicca Create Search Source
  • Seleziona la nuova origine che hai creato
  • Assegna un nome e specifica la Ricerca che deve essere utilizzata. Ad esempio io ho creato una nuova Ricerca per i territori (che ho chiamato con grande fantasia Territories)

Conclusioni

Abbiamo finito, spero che questa funzionalità ti piaccia.

Io personalmente l’ho molto apprezzata perché arricchisce non poco le potenzialità delle applicazioni gestionali sviluppate con Oracle APEX.

Se poi desideri approfondire altri metodi di ricerca che puoi costruire ti consiglio di leggere questo articolo.

Un abbraccio

Daniele

TI POTREBBE INTERESSARE:

  • Come migrare le applicazioni da Oracle Forms ad Oracle APEX
  • CPQ in Oracle APEX
  • Come sviluppare applicazioni sicure con Oracle APEX
  • Programmare in PL-SQL: guida facile per principianti
  • Prevedere l'interesse di un cliente verso un prodotto o servizio con Oracle APEX e Machine Learning
  • Costruiamo un CRM con Oracle APEX

build apps, oracle apex

Interazioni del lettore

Lascia un commento Annulla risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Barra laterale primaria

BENVENUTO!

Il mio nome è Daniele Trasarti, autore di APPin5Minuti, il blog italiano che parla di piattaforme di Oracle APEX e applicazioni low-code.

Qui troverai tantissimi tutorial e risorse per imparare a sviluppare in pochissimo tempo bellissime applicazioni per gestire i dati ed i processi della tua azienda.

Se vuoi saperne di più inizia da qui.

Seguimi sui social!

  • LinkedIn
  • Twitter

NEWSLETTER

Iscriviti anche tu per far parte della più grande community italiana di persone che amano sviluppare low-code!

api rest appsheet appsheet data sources appsheet views appsheet workflow automation autonomous database build apps cpq crm css cyber security database dynamic layout facebook flowform flows4apex google google cloud interactive grid interactive report javascript list microsoft microsoft access mobile oracle oracle apex oracle cloud oracle rest data service ords pl-sq PL-SQL power apps product configurator sales configurator security social login software gestionale sql theme roller ux woocommerce wordpress workflows

COMMENTI RECENTI

  1. Daniele Trasarti su Oracle APEX: come creare un’applicazione web in 5 minuti

    Ciao Sabatino, grazie per l'apprezzamento. Riguardo alla tua domanda ti consiglio di usare Oracle Cloud. Puoi creare un account gratis…

  2. Sabatino Iannazzo su Oracle APEX: come creare un’applicazione web in 5 minuti

    Ciao Daniele, complimenti per la guida, mi hai aperto un mondo! volevo chiederti se con Apex e Oracle Database Express…

  3. Laura su Autenticazione a 2 Fattori basata su TOTP (Time-based One-time Password) con Oracle APEX

    Ciao, trovo molto interessante il tuo articolo. Hai qualche suggerimento per l'autenticazione con spid? pensi di fare qualche guida al…

  4. Mario Volpetti su Oracle APEX: come creare un’applicazione web in 5 minuti

    Ottima spiegazione e complimenti per la semplicità che ai usato. Sono riuscito a farlo anche io con un foglio excel…

  5. Riccardo Liviabella su Google AppSheet: come creare una APP Mobile da un foglio Excel in 5 minuti

    Ciao Daniele e grazie per le tue interessanti spiegazioni. E' da un pò di anni che lavoro su Appsheet e…

  6. Daniele Trasarti su Come costruire Workflows Approvativi in Oracle APEX

    Ciao Bhavin, I think you badly copied PL-SQL because the one you provided is not correct. Fix the script and…

  7. Daniele Trasarti su Applicazione di Prenotazione Appuntamenti in Oracle APEX

    Grazie mille Franca!

Copyright © 2023 · APPin5Minuti.it · Privacy Policy · Cookie Policy