Configurar a Integração do Aplicativo Oracle Sales and Service

Nesta seção, você adicionará a funcionalidade comum do aplicativo Oracle Sales and Service necessária para se comunicar com o OCM. Isso envolve a criação de novos serviços Web para comunicação com as APIs REST do documento OCM, as funções globais do aplicativo Oracle Sales and Service para chamar esses novos serviços Web e um mashup do aplicativo Oracle Sales and Service para expor essa integração de IU Incorporada do OCM.

Criar um Sandbox

Para criar um sandbox para implementar as alterações do Oracle Sales and Service Application para esta integração:

  1. Acesse como administrador do Oracle Sales and Service.
  2. Clique em Ícone de hambúrguer no canto superior esquerdo da página. Selecione a opção Configuração no menu e, em seguida, selecione Sandboxes.

  3. Na página Criar Sandbox, preencha os seguintes campos:

    1. Na página Sandboxes, clique em Criar Sandbox.
    2. Na página Criar Sandbox, especifique um nome para esse sandbox no campo Nome (por exemplo, Integração do OCI Document Collaboration).
    3. Na lista Todas as Ferramentas, marque a caixa de seleção Application Composer.
    4. Clique em Criar e Informar.
  4. Para informar o Application Composer no qual você fará alterações na integração do OCM, clique em Ferramentas no canto superior esquerdo da página e selecione Application Composer na lista drop-down.

Criar Web Services

Os Web Services são usados para comunicação com o OCM por meio das APIs REST do documento OCM.

OCMCreateFolderService

Para criar o serviço Web de criação de pasta do OCM:
  1. Escolha Configuração Comum e, em seguida, Web Services no menu de navegação esquerdo.
  2. Na página Web Services, clique no ícone Criar um novo Web Service.
  3. Na caixa de diálogo Selecionar Tipo de Conexão, selecione a opção REST e clique em OK.
  4. Na página Criar Conexão de Web services REST, preencha os seguintes campos:

    1. No campo Nome, especifique o nome da pasta como OCMCreateFolderService.
    2. No campo URL, digite o URL do web service como https://<OCMServerURL>/documents/api/1.2/folders/##OCMParentFolderId##?name=##OCMFolderName##, que é necessário para criar a pasta OCM. Onde <OCMServerURL> é o servidor do Oracle Content Management usado para essa integração (por exemplo, https://mycloud.com/documents/api/1.2/folders/##OCMParentFolderId##?name=##OCMFolderName##).
    3. Na seção Esquema de Autenticação, selecione a opção Nenhum, pois ela será configurada na próxima etapa.
    4. Na seção Selecionar e Configurar Métodos em relação ao Recurso, marque a caixa de seleção POST.
    5. Na seção Payload de Resposta, selecione a opção Amostra de Código e adicione {} à caixa de texto de várias linhas.
  5. Para criar o esquema de autenticação OAUTH do IDCS que será usado para os web services, na página Criar Conexão de Web Services REST, preencha os seguintes campos:

    Observação:

    Essas etapas só são necessárias quando você está criando um web service para o OCM pela primeira vez.


    1. Na seção Esquema de Autenticação, selecione a opção Chamar usando o IDCS OAUTH.
    2. No campo URI do Token, digite o URL do servidor IDCS https://<idcsServerURL>/oauth2/v1/token. Em que <idcsServerURL> é o URL para o servidor IDCS usado para essa integração.
    3. No campo Escopo, informe o escopo que foi copiado acima ao criar o esquema de autenticação OAUTH do IDCS (por exemplo, https://BD2F184D9D2344CB8134FCD4CBFF7DF.mycloud.com:443/urn:opc:cec:all).
    4. Para criar a chave de credencial do cliente, preencha os seguintes campos:
      1. Selecione o ícone Criar Chave de Credencial ao lado do campo Chave de Credencial do Cliente.
      2. No campo Chave CSF, digite a chave (por exemplo, Web Services).
      3. No campo Nome do Usuário, informe o ID do cliente que foi copiado acima ao criar o esquema de autenticação OAUTH do IDCS (por exemplo, c585b2d3e97c40e491ca99112281e36).
      4. No campo Senha, informe o segredo do cliente que foi copiado acima ao criar o esquema de autenticação OAUTH do IDCS (por exemplo, 768b9513-658e-4854-bac7-2fe72d19011).
      5. Clique em OK.
    5. Para criar a chave de credencial OCM para alternar a identidade, preencha os seguintes campos:
      1. Selecione o ícone Criar Chave de Credencial ao lado do campo Chave de Credencial para Chave de Credencial.
      2. No campo Chave CSF, informe a chave (por exemplo, Chave de Integração OCM).
      3. No campo Nome do Usuário, informe o usuário de integração do OCM (o que você usou para criar a pasta raiz do OCM anteriormente) que é usado para comunicação com o OCM (esse deve ser um usuário empresarial no OCM).
      4. No campo Senha, insira a senha de usuário de integração do OCM.
      5. Clique em OK.
    6. Clique em Salvar e Fechar.

OCMSearchUserService

Para criar o serviço Web do usuário de pesquisa do OCM, na página Criar Conexão de Serviço Web REST, preencha os seguintes campos:
A descrição de searchuser.png é exibida a seguir
Descrição da ilustração searchuser.png

  1. No campo Nome, especifique o nome do usuário de pesquisa como OCMSearchUserService.
  2. No campo URL, especifique o URL do usuário da pesquisa como https://<OCMServerURL>/documents/api/1.2/users/items?info=##userName##. Onde <OCMServerURL> é o servidor do Oracle Content Management usado para essa integração.
  3. Na seção Esquema de Autenticação, selecione a opção Chamar usando o IDCS OAUTH e use os mesmos valores usados acima para os parâmetros do IDCS OAUTH.
  4. Na seção Selecionar e Configurar Métodos em relação ao Recurso, marque a caixa de seleção GET.
  5. Na seção Payload de Resposta, selecione a opção Amostra de Código e adicione {} à caixa de texto de várias linhas.

OCMSharedFolderUsersService

Para criar o web service do usuário da pasta compartilhada do OCM, na página Criar Conexão de Web Service REST, preencha os seguintes campos:
A descrição de sharedfolder.png é exibida a seguir
Descrição da ilustração sharedfolder.png

  1. No campo Nome, especifique o nome do usuário da pasta compartilhada como OCMSharedFolderUsersService.
  2. No campo URL, especifique o URL do usuário da pasta compartilhada como https://<OCMServerURL>/documents/api/1.2/shares/##folderId##/items. Onde <OCMServerURL> é o servidor do Oracle Content Management usado para essa integração.
  3. Na seção Esquema de Autenticação, selecione a opção Chamar usando o IDCS OAUTH e use os mesmos valores usados acima para os parâmetros do IDCS OAUTH.
  4. Na seção Selecionar e Configurar Métodos em relação ao Recurso, marque a caixa de seleção GET.
  5. Na seção Payload de Resposta, selecione a opção Amostra de Código e adicione {} à caixa de texto de várias linhas.

OCMShareFolderService

Para criar o web service da pasta de compartilhamento OCM, na página Criar Conexão de Web Service REST, preencha os seguintes campos:
Veja a seguir a descrição da ilustração share-folder.png
Descrição da ilustração share-folder.png

  1. No campo Nome, especifique o nome do usuário da pasta de compartilhamento como OCMShareFolderService.
  2. No campo URL, especifique o URL do usuário da pasta de compartilhamento como https://<OCMServerURL>/documents/api/1.2/shares/##folderId##. Onde <OCMServerURL> é o servidor do Oracle Content Management usado para essa integração.
  3. Na seção Esquema de Autenticação, selecione a opção Chamar usando o IDCS OAUTH e use os mesmos valores usados acima para os parâmetros do IDCS OAUTH.
  4. Na seção Selecionar e Configurar Métodos em relação ao Recurso, marque a caixa de seleção POST.
  5. Na seção Payload de Solicitação, selecione a opção Amostra de Código e adicione {} à caixa de texto de várias linhas.
  6. Na seção Payload de Resposta, selecione a opção Amostra de Código e adicione {} à caixa de texto de várias linhas.

OCMDeleteFolderService

Para criar o serviço Web da pasta de exclusão do OCM, na página Criar Conexão de Serviço Web REST, preencha os seguintes campos:
A descrição de deletefolder.png é exibida a seguir
Descrição da ilustração deletefolder.png

  1. No campo Nome, especifique o nome da pasta como OCMDeleteFolderService a ser excluída.
  2. No campo URL, especifique o URL da pasta de exclusão como https://<OCMServerURL>/documents/api/1.2/folders/##folderId##. Onde <OCMServerURL> é o servidor do Oracle Content Management usado para essa integração.
  3. Na seção Esquema de Autenticação, selecione a opção Chamar usando o IDCS OAUTH e use os mesmos valores usados acima para os parâmetros do IDCS OAUTH.
  4. Na seção Selecionar e Configurar Métodos em relação ao Recurso, marque a caixa de seleção DELETE.
  5. Na seção Payload de Resposta, selecione a opção Amostra de Código e adicione {} à caixa de texto de várias linhas.

Criar Funções Globais

As funções globais são usadas para encapsular a lógica de negócios nos serviços Web para que possam ser facilmente usadas em outros locais.

OCMCreateFolderFunction

Para criar a função global de pasta de criação do OCM que usará o serviço Web OCMCreateFolderService:

  1. Escolha Configuração Comum e, em seguida, Funções Globais no menu de navegação esquerdo.
  2. Na página Funções Globais, clique no ícone Adicionar uma Função Global.
  3. Na página Criar Função Global, preencha os seguintes campos:

    1. No campo Nome da Função, especifique o nome da função como OCMCreateFolderFunction.
    2. Selecione String no menu drop-down Retorna.
    3. No campo Descrição, digite o texto "Cria uma nova pasta OCMFolderName no OCM sob o OCMParentFolderId especificado e retorna o ID de pasta recém-criado".
    4. Na seção Parâmetros, clique no ícone Adicionar Parâmetro.

      No campo Nome, especifique o nome como OCMParentFolderId e selecione String no menu drop-down Tipo.

    5. Na seção Parâmetros, clique no ícone Adicionar Parâmetro.

      No campo Nome, especifique o nome como OCMFolderName e selecione String no menu drop-down Tipo.

    6. No campo Editar Script, cole o seguinte script:
      def OCMFolder = [:]
      try {
        OCMFolder = adf.webServices.OCMCreateFolderService.POST(OCMParentFolderId, OCMFolderName)
        println("OCM Folder Created: " + OCMFolder)
        return OCMFolder.id   
      } catch (Exception e) {
        println("Create OCM Folder Error: " + e)
      }
    7. Clique em Salvar e Fechar.

OCMSearchUserFunction

Para criar a função global do usuário de pesquisa do OCM, em uma nova página Criar Função Global, que será usada para acessar o serviço Web OCMSearchUserService, preencha os seguintes campos:
A descrição de searchuserfunction.png é exibida a seguir
Descrição da ilustração searchuserfunction.png

  1. No campo Nome da Função, especifique o nome da função como OCMSearchUserFunction.
  2. Selecione String no menu drop-down Retorna.
  3. No campo Descrição, informe o texto "Pesquisa um usuário no OCM pelo userName especificado e retorna o Id do Usuário".
  4. Na seção Parâmetros, no campo Nome, especifique o nome como userName e selecione String no menu drop-down Tipo.
  5. No campo Editar Script, cole o seguinte script:
    def response = [:]
    try {
      response = adf.webServices.OCMSearchUserService.GET(userName)
      def responseItems = [:]
      responseItems = response.items
      println("OCM Search User Result: " + responseItems.getAt(0))
      return responseItems.getAt(0).id
    } catch (Exception e) {
      println("Search OCM User Error: " + e)
    }
  6. Clique em Salvar e Fechar.

OCMIsFolderSharedFunction

Para criar a função global da pasta de compartilhamento OCM, em uma nova página Criar Função Global, que será usada para acessar o serviço Web OCMSharedFolderUsersService, preencha os seguintes campos:
A descrição de ocmis.png é exibida a seguir
Descrição da ilustração ocmis.png

  1. No campo Nome da Função, especifique o nome da função como OCMIsFolderSharedFunction.
  2. Selecione Booliano no menu drop-down Retorna.
  3. No campo Descrição, digite o texto "Retorna verdadeiro se o OCMUserId especificado tiver sido compartilhado com o OCMFolderId especificado".
  4. Na seção Parâmetros, adicione os seguintes valores:
    Nome Tipo
    OCMFolderId String
    OCMUserId String
  5. No campo Editar Script, cole o seguinte script:
    def response = [:]
    try {
      response = adf.webServices.OCMSharedFolderUsersService.GET(OCMFolderId)
      def responseItems = [:]
      responseItems = response.items
      for (item in responseItems) {
        if (item['type'] == 'share') {
          if (item['user']['id'] == OCMUserId) {
            return true
          }
        }
      }
      return false
    } catch (Exception e) {
      println("OCM Folder Shared Error: " + e)
      return false
    }
  6. Clique em Salvar e Fechar.

OCMShareFolderFunction

Para criar a função global da pasta de compartilhamento OCM, em uma nova página Criar Função Global, que será usada para acessar o serviço Web OCMShareFolderService, preencha os seguintes campos:
A descrição de sharefolderfunction.png é exibida a seguir
Descrição da ilustração sharefolderfunction.png

  1. No campo Nome da Função, especifique o nome da função como OCMShareFolderFunction.
  2. Selecione Booliano no menu drop-down Retorna.
  3. No campo Descrição, informe o texto "Compartilha o OCMFolderId especificado no OCM com o OCMUserId e o OCMRole especificados retornando verdadeiro se bem-sucedido".
  4. Na seção Parâmetros, adicione os seguintes valores:
    Nome Tipo
    OCMFolderId String
    OCMUserId String
    OCMRole String
  5. No campo Editar Script, cole o seguinte script:
    def params = [:]
    params.userID = OCMUserId
    params.role = OCMRole
    def response = [:]
    try {
      response = adf.webServices.OCMShareFolderService.POST(OCMFolderId, params)
      if (response.errorCode == "0") {
        println("OCM Folder Shared: " + OCMFolderId + "(" + OCMUserId + ":" + OCMRole + ")")
        return true
      } else {
        println("Share OCM Folder Failed: " + OCMFolderId + "(" + OCMUserId + ":" + OCMRole + ")")
        return false
      }
    } catch (Exception e) {
      println("Share OCM Folder Error: " + e)
      return false 
    }
  6. Clique em Salvar e Fechar.

OCMDeleteFolderFunction

Para criar a função global da pasta de compartilhamento OCM, em uma nova página Criar Função Global, que será usada para acessar o serviço Web OCMDeleteFolderService, preencha os seguintes campos:
A descrição de ocmdelete.png é exibida a seguir
Descrição da ilustração ocmdelete.png

  1. No campo Nome da Função, especifique o nome da função como OCMDeleteFolderFunction.
  2. Selecione Booliano no menu drop-down Retorna.
  3. No campo Descrição, digite o texto "Exclui o OCMFolderId especificado no OCM".
  4. Na seção Parâmetros, no campo Nome, especifique o nome como OCMFolderId e selecione String no menu drop-down Tipo.
  5. No campo Editar Script, cole o seguinte script:
    def response = [:]
    try {
      adf.webServices.OCMDeleteFolderService.DELETE(OCMFolderId)
      println("OCM Folder Deleted: " + OCMFolderId)
      return true
    } catch (Exception e) {
      println("Delete OCM Folder Error: " + e)
      return false 
    }
  6. Clique em Salvar e Fechar.

Criar um Mashup

Um Mashup é uma janela para um aplicativo externo independente, como o OCM.

Para criar um Mashup para incorporar a UI incorporada do OCM para que ela possa ser exposta em um objeto de negócios do Oracle Sales and Service:

  1. Escolha Configuração Comum e Conteúdo de Flash no menu de navegação esquerdo.
  2. Na página Conteúdo de Mashup: Aplicativos Web, clique no botão Registrar Aplicativo Web.
  3. Na página Registrar Aplicativo Web, preencha os seguintes campos:

    1. No campo Nome, especifique o nome do aplicativo como OCMEmbeddedFolderUIMashup.
    2. Para o campo Tipo, selecione a opção Expressão Groovy.
    3. No campo Definição do URL, informe o URL da UI incorporada do OCM como https://<OCMServerURL>/documents/embed/v2/folder/. Onde <OCMServerURL> é o servidor do Oracle Content Management usado para integração.
    4. Clique em Salvar e Fechar.