Configura integrazione business object specifica

In quest'ultima sezione verranno eseguiti i passi necessari per aggiungere l'interfaccia utente della cartella incorporata OCM all'interno di un business object specifico dell'applicazione Oracle Sales and Service.

In questa sezione verranno utilizzate di nuovo le opportunità, ma i business object possono essere aggiornati mediante questi passi, ad esempio richieste di servizio, campagne, eventi e così via. Ciò comporta la creazione di un campo personalizzato all'interno dell'opportunità per memorizzare l'ID cartella OCM univoco. Questi passi aggiungono inoltre la scheda Documenti alla pagina dei dettagli dell'opportunità che espone l'interfaccia utente della cartella incorporata OCM tramite un mashup utilizzando l'ID cartella OCM specifico per l'opportunità.

Crea un campo personalizzato

Un campo personalizzato è specifico del business object in cui è stato creato. Queste variabili sono univoche per ogni istanza dei business object creati.

Per creare un campo personalizzato che contenga l'ID cartella OCM univoco correlato all'elemento opportunità specifico:
  1. Per immettere di nuovo la funzionalità Creazione applicazione, fare clic su Strumenti nell'angolo superiore sinistro della pagina, quindi selezionare Compositore applicazione dall'elenco a discesa.
  2. Scegliere Oggetti, Oggetti standard, Opportunità, quindi Campi dal menu di navigazione a sinistra.
  3. Nella pagina Campi, selezionare la scheda Personalizzato e fare clic sull'icona Crea un campo personalizzato.
  4. Nella finestra di dialogo Seleziona tipo di campo selezionare l'opzione Testo e fare clic su OK.
  5. Nella pagina Crea campo di testo, effettuare le operazioni riportate di seguito.

    1. Nel campo Etichetta di visualizzazione, specificare il nome come OCMFolderId. Il campo Nome viene compilato automaticamente in base al valore specificato nel campo Etichetta di visualizzazione.
    2. Nel campo Descrizione immettere il testo "Variabile personalizzata per l'oggetto Opportunità specifico per memorizzare l'ID cartella univoco utilizzato dall'integrazione collaborazione opportunità OCM".
    3. Fare clic su Salva e chiudi.

Estendi business object

I business object possono essere estesi utilizzando un Mashup (come quello creato sopra) per esporre un'applicazione esterna come OCM all'interno dell'interfaccia utente dei business object.

Per creare un nuovo layout di pagina opportunità per includere l'integrazione OCM, procedere come segue.
  1. Scegliere Oggetti standard, Opportunità, quindi Pagine dal menu di navigazione a sinistra.
  2. Nella sezione Layout pagina dettagli della pagina Opportunità: pagine fare clic su Duplica layout pagina dettagli.

    Nota:

    Se una pagina personalizzata è già stata creata, è possibile utilizzarla per l'integrazione OCM anziché crearne una nuova e ignorare il passo 3.
  3. Nella finestra di dialogo Duplica layout, completare i campi riportati di seguito.

    1. Nel campo Nuovo nome layout, specificare il nome come OCMEmbeddedUIIntegration.
    2. Nel campo Layout origine selezionare Layout standard dal menu a discesa.
    3. Fare clic su Salva e modifica.
  4. Nella pagina Layout dettagli, selezionare l'icona Aggiungi nella parte inferiore del menu di navigazione a sinistra della sezione Area delle schede secondarie per aggiungere l'interfaccia utente incorporata OCM.
  5. Selezionare l'opzione Contenuto cache. Fare clic su Successivo.
  6. Nella pagina successiva selezionare l'opzione OCMEmbeddedFolderUIMashup creata in precedenza e fare clic su Inserisci.
  7. Nella pagina successiva, completare i campi riportati di seguito.

    1. Nel campo Etichetta di visualizzazione, immettere Documenti.
    2. Per Icona visualizzazione, fare clic su Modifica icona in modo che nell'interfaccia utente delle opportunità venga visualizzata un'icona corrispondente a un documento come scheda.
    3. Nel campo Modifica script incollare lo script seguente:
      println("Opportunity Documents Tab Selected: " + Name)
      // Get the current user security context
      def secCtx = adf.context.getSecurityContext()
      // Get the current OCM user id based off the current Oracle Sales and Service User
      def OCMUserId = adf.util.OCMSearchUserFunction(secCtx.getUserName())
      // Now check to see if the OCM user has been shared to this folder
      boolean isFolderShared = adf.util.OCMIsFolderSharedFunction(OCMFolderId_c, OCMUserId)
      if (!isFolderShared) {
        // Share the current user as a Manager to the OCM Folder associated to this item
        adf.util.OCMShareFolderFunction(OCMFolderId_c, OCMUserId, "manager")
      }
      println("Loading OCM Embedded Docs UI")
      return OCMFolderId_c +'?options={"documentsView":{"layout":"grid","header":{"create":{"folder":true},"upload":true,"trash":true},"actions":{"open":{"file":true},"uploadNewVersion":true,"download":true,"delete":true,"shareLink":true,"members":true}},"documentViewer":{"actions":{"download":true,"uploadNewVersion":true,"shareLink":true},"sidebar":{"conversation":true}}}'
      

      Nota:

      Questo script assegna automaticamente il ruolo di manager a ciascun utente che accede alla cartella. Ciò potrebbe essere ulteriormente perfezionato per concedere al proprietario dell'opportunità il ruolo di manager fornendo al contempo il ruolo di collaboratore agli altri utenti.
    4. Fare clic sul pulsante Next.
    5. Fare clic su Salva e chiudi.

Aggiungere i trigger di eventi

Un trigger di evento verifica la presenza di un evento e, quando si verifica, esegue il codice associato al trigger.

OCMCreateFolderTrigger

Per aggiungere un trigger oggetto script server per creare la cartella OCM correlata quando viene creata l'opportunità:

  1. Scegliere Oggetti standard, Opportunità, quindi Script server dal riquadro di navigazione sinistro.
  2. Nella pagina Opportunità script server selezionare la scheda Trigger.
  3. Nella sezione Trigger oggetto, fare clic su Aggiungi un nuovo trigger.
  4. Nella pagina Crea trigger oggetto, completare i campi riportati di seguito.

    1. Nel menu a discesa Trigger selezionare Prima dell'inserimento nel database.
    2. Nel campo Nome trigger specificare il nome del trigger come OCMCreateFolderTrigger.
    3. Nel campo Descrizione immettere il testo "Creare la cartella OCM associata all'opportunità da creare".
    4. Nel campo Modifica script incollare lo script seguente sostituendo <OCMRootFolderId> con l'ID cartella radice OCM effettivo acquisito in OCM nei passi iniziali precedenti (ad esempio, F572711F9E557436A646AEC295F044A3C39B0):
      println("Opportunity.BeforeInsert(OCMCreateFolderTrigger): " + Name)
      def OCMParentFolderId = "<OCMRootFolderId>"
      // Create a new OCM folder under the parent folder based off the item name
      println("Create OCM Opportunity Folder under Pararent Folder Id: " + OCMParentFolderId)
      def OCMFolderId = adf.util.OCMCreateFolderFunction(OCMParentFolderId, Name)
      // and assign that new folder id to the OCMFolderId item variables
      setAttribute("OCMFolderId_c", OCMFolderId)
    5. Fare clic su Salva e chiudi.

OCMDeleteFolderTrigger

Per aggiungere un trigger di oggetto script del server, in una nuova pagina Crea trigger oggetto, per rimuovere la cartella OCM correlata quando viene eliminata l'opportunità:

Nota:

L'implementatore può scegliere di non implementare questo passo se si rende conto che qualsiasi contenuto inserito nella cartella opportunità OCM deve essere conservato anche dopo l'eliminazione dell'opportunità.


  1. Nel menu a discesa Trigger selezionare Prima dell'eliminazione nel database.
  2. Nel campo Nome trigger specificare il nome del trigger come OCMDeleteFolderTrigger.
  3. Nel campo Descrizione immettere "Rimuovi la cartella OCM associata all'opportunità da eliminare".
  4. Nel campo Modifica script incollare lo script seguente:
    println("Opportunity.BeforeDelete(OCMDeleteFolderTrigger): " + Name + "(" + OCMFolderId_c + ")")
    // Make sure that we have a folder to delete
    if (OCMFolderId_c != null) {
      adf.util.OCMDeleteFolderFunction(OCMFolderId_c)
    } else {
      println("Warning: No OCMFolderId associated to the Opportunity?")
    }
  5. Fare clic su Salva e chiudi.