Integração do Oracle Content Management
Nesta última etapa, você poderá estender o aplicativo Digital Customer Service com a colaboração de documentos do OCM. Isso requer:
- Criando um serviço de API REST de documento OCM
- Adicionando uma guia Documentos à página Detalhes da Solicitação de Serviço
- Adicionando uma variável de ID de pasta OCM à resposta do web service Obter Solicitação de Serviço do Visual Builder
- Atualizando a Cadeia de Ações Carregar Solicitação de Serviço
- Atualizando a página Detalhes da Solicitação de Serviço para expor a IU incorporada do OCM em uma nova guia Documentos
- Para criar o arquivo JSON de web services da API REST do OCM, digite o seguinte URL no seu browser:
https://docs.oracle.com/en/cloud/paas/content-cloud/rest-api-documents/swagger.json
Descrição da ilustração ocmrestapi.png
Clique com o botão direito do mouse na página do browser, selecione a opção Salvar para salvar o conteúdo no arquivo ocmRestApi.json.
- Para criar o serviço OCM:
Descrição da ilustração create-ser-conn.png
- Selecione os Serviços e, em seguida, Conexões de Serviço no menu de navegação esquerdo.
- Na página Conexões de Serviço, selecione o ícone Criar no canto superior direito da seção Serviços.
Selecione a opção Conexão de Serviço no menu suspenso.
- Selecione Definido pela Especificação nas opções de Origem.
- Na página Criar Conexão de Serviço, faça o seguinte:
- No campo Nome do Serviço, especifique o nome do serviço como ocmRestApi.
- No menu suspenso Tipo de API, selecione OpenAPI/Swagger.
- Na seção Especificação do Serviço, selecione a opção Documento.
- Selecione ou arraste o arquivo ocmRestApi.json criado acima para a área de arrastar e soltar da seção Especificações de Serviço.
- Clique no botão Criar para salvar a conexão.
- Para atualizar a conexão do servidor OCM:
Descrição da ilustração edit-server3prof.png
- Na página ocmRestApi, selecione Servidores.
- Na página Servidores, selecione o ícone Editar na extrema direita da conexão Sem Descrição.
- Na caixa de diálogo Editar Servidor, faça o seguinte:
- No campo URL da Instância, especifique o URL do servidor OCM que será usado nesta integração. Por exemplo,
https://oceserver.cec.ocp.oraclecloud.com
. - No menu drop-down Autenticação, selecione a opção OAuth Credenciais de Senha do Proprietário do Recurso 2.0.
- Clique no ícone Editar à direita do campo Nome do Usuário.
Na caixa de diálogo Credencial do Usuário, informe o nome do usuário e a senha do administrador de integração do OCM. Deve ser o mesmo usuário de integração usado durante a criação da integração do aplicativo de solicitação de serviço do Fusion. Por exemplo, IntegrationAdmin.
- Clique no botão Salvar para salvar as Credenciais de Usuário do Nome de Usuário.
- Clique no ícone Editar à direita do campo ID do Cliente.
- Informe o ID do cliente e os valores secretos do cliente que foram retornados durante a criação do aplicativo confidencial OCM IDCS nos campos ID do Cliente e Segredo do Cliente. Por exemplo, ID do Cliente: c585b2d3e97c40e491ca99112281e36d e Segredo do Cliente: 768b9513-658e-4854-bac7-2fe72d19011f.
- Clique no botão Salvar para salvar as Credenciais do Usuário do ID do Cliente.
- Informe o valor do URL do Escopo que foi retornado durante a criação do aplicativo confidencial OCM IDCS. Por exemplo,
https://BD2F184D9D2344CB8134FCD4CBFF7DFD.cec.ocp.oraclecloud.com:443/urn:opc:cec:all
- No campo URL do Token, informe o valor. Esse valor pode ser gerado anexando
/oauth2/v1/token
ao URL base do servidor OCM IDCS. Por exemplo,https://idcs.identity.oraclecloud.com
. - Na seção Tipo de Conexão, selecione o proxy Sempre usar, independentemente do suporte a CORS no menu drop-down.
- Clique no botão Salvar na página principal para salvar as alterações do servidor.
- No campo URL da Instância, especifique o URL do servidor OCM que será usado nesta integração. Por exemplo,
- Para configurar os parâmetros específicos do Ponto Final AppLink:
Descrição da ilustração applink-endpoints.png
- Na página ocmRestApi, selecione Pontos Finais.
- Na seção AppLinks, selecione Criar Applink de Pasta.
- Clique no botão Solicitar.
- Clique no botão Adicionar Parâmetro de Consulta Dinâmica. Na seção Parâmetros de Consulta Dinâmica, no campo Nome, informe o valor como assignedUser.
- Clique no botão Parâmetro de Consulta Estática. Na seção Parâmetros de Consulta Estática, no campo Nome, informe o valor como função.
No campo Valor, informe o valor como um colaborador. Clique em OK para salvar o parâmetro de consulta estática.
- Para adicionar a guia Documentos à página Detalhes da Solicitação de Serviço:
Descrição da ilustração work-orders.png
- Selecione Aplicativos Web no menu de navegação esquerdo.
- Na lista Aplicativos Web, selecione dcs, service-request-detail e, em seguida, service-request-detail-start.
- Na página de início de detalhes da solicitação de serviço, selecione a guia Designer de Página. Clique no botão Design no lado superior direito.
- Na página Designer de Páginas, selecione Ordens de Serviço.
- Selecione o pai
<li>
na seção Componentes à esquerda da Página de Design que tem oBind Text [[$app…serviceRequestDetail_workOrders]]
. - Clique em
<li>
e selecione Copiar. - Clique com botão direito do mouse no elemento
<li>
novamente e selecione Colar/Após. - No novo elemento
<li>
que acabou de ser criado, selecione o elementoBind Text
. - No painel de propriedades no lado direito, selecione o ícone Tornar String Traduzível (aparece como um mundo). Na caixa de diálogo String Traduzível, informe o valor Documentos no campo String.
No campo Chave, digite serviceRequestDetail_documents e clique em Salvar.
- Para modificar o código da página Detalhes da Solicitação de Serviço:
Descrição da ilustração oj-bind.png
- Selecione o botão Código no lado superior direito da página Designer de Página.
- Para formatar o código, clique com o botão direito do mouse no código e selecione Formatar Documento.
- Procure
serviceRequestDetail_documents
no código. - Substitua o elemento
<li>
paiid
porodcs-documents-tab
. - Na parte inferior da página, logo após o segundo último elemento
</oj-bind-if>
, adicione o seguinte código:<div id="OCMEmbeddedUI" style="display:none"> </div>
- Para formatar o documento mais uma vez, clique com o botão direito do mouse no código e selecione Formatar Documento.
- Para adicionar um evento à página Detalhes da Solicitação de Serviço:
Descrição do diagrama da ilustração -callfunc.png
- Clique no botão Design no lado superior direito da página Designer de Página.
- Selecione a Barra de Guias com a guia Documentos recém-adicionada na página do designer.
- Selecione a guia Eventos no canto superior direito da seção Propriedades. Clique no botão Novo Evento e selecione Seleção Em no menu suspenso.
- No TabBarSelectionChangeChain (que acabou de ser criado), arraste e solte uma Função de Chamada JS da seção Ações à esquerda da página para o ícone + na cadeia.
- Clique no link Criar ao lado do Nome da Função na seção Propriedades à direita da página.
No campo Nome da Função, informe o valor como displayEmbeddedUI. Clique em Criar.
Clique no link Ir para Função do Módulo. Substitua toda a funçãodisplayEmbeddedUI
(incluindo os comentários) pelo seguinte código:/** * Shows or hides the OCM Embedded UI element on the page * * @param {boolean} display Show OCM Embedded UI * @return {undefined} */ PageModule.prototype.displayEmbeddedUI = function(display) { var embedElement = document.getElementById("OCMEmbeddedUI"); if (display) { embedElement.style.display = "block"; } else { embedElement.style.display = "none"; } };
- Para formatar o documento, clique com o botão direito do mouse no código e selecione Formatar Documento.
- Para designar a variável de seleção à função
displayEmbeddedUI
:
Descrição da ilustração Assign-para.png
- Selecione a guia Designer de Página na parte superior da página.
- Selecione a Barra de Guias e clique no link TabBarSelectionChangeChain nas propriedades Eventos no lado direito da página.
- Na página Diagrama, selecione a função de chamada
displayEmbeddedUI
. - Clique no link Designar à direita dos Parâmetros de Entrada em Propriedades à direita da página.
- Na caixa de diálogo Parâmetros de Atribuição de Entrada, no lado esquerdo da página, clique em Origens, Cadeia de Ações e, em seguida, em Variáveis. No menu Variáveis, arraste a opção seleção para exibir dentro de Parâmetros (em Destino) no lado direito da página.
Na seção do código de exibição na parte inferior da página, adicione o seguinte código:
$variables.selection === 'odcs-documents-tab'
Clique no botão Salvar.
- Para adicionar o campo ID da pasta OCM aos serviços Web Obter Solicitação de Serviço:
Descrição da ilustração get-ser-req.png
- Selecione a guia Event Listeners na parte superior da página.
- Na seção Listeners de Eventos de Ciclo de Vida vbEnter, selecione o link Ir para Cadeia de Ações à direita de LoadServiceRequestAction.
- Selecione a etapa Chamar REST para crmRestApi/get_serviceRequests.
- Clique no link crmRestApi/get_serviceRequest na seção Pontos Finais das Propriedades no lado direito da página.
- Na página crmRestApi, selecione a guia Pontos Finais e clique no botão Resposta.
- Selecione o link definição de tipo de dados na parte inferior da página.
- Procure a seguinte seção:
oracle_apps_crm_service_svcMgmt_srMgmt_srMgmtService_view_ServiceRequestVO-updatableFields
Observação:
Haverá várias referências a essa variável, mas queremos a seção em que ela está sendo definida. - Adicione o seguinte código na subseção de propriedades na seção encontrada acima:
"OCMFolderId_c": { "type": "string", "title": "OCMFolderId", "maxLength": 80, "x-queryable": false, "nullable": true, "x-hints": { "AttributeType": "Text", "protectionKey": "ServiceRequestEO.OCMFolderId_c", "protectionObjectTitle": "Service Request", "protectionState": "TOKENIZED" } },
- Para formatar o documento, clique com o botão direito do mouse no código e selecione Formatar Documento.
- Para adicionar o campo ID da pasta OCM à Obter Resposta da Solicitação de Serviço:
Descrição da ilustração get-ser-req-response.png
- Na página inicial da solicitação de serviço, selecione a guia Tipos.
- Passe o mouse sobre { } getServiceRequestsResponse e selecione o link Editar do ponto de extremidade à direita.
- Verifique a variável OCMFolderId_c recém-criada na lista Estrutura do Ponto Final.
- Clique no botão Finalizar.
- Para adicionar o campo ID da pasta OCM à Ação Obter Solicitação de Serviço:
Descrição da ilustração get-ser-req-action.png
- Na página inicial de solicitação de serviço, selecione a guia Listeners de Eventos e selecione vbEnter na parte superior da página.
- Na seção Listeners de Eventos de Ciclo de Vida, vbEnter, selecione o link Ir para Cadeia de Ações à direita do LoadServiceRequestAction.
- Selecione a etapa Chamar REST para crmRestApi/get_serviceRequests.
- Na seção Parâmetros de Entrada das Propriedades no lado direito da página, selecione o link campos.
- Na caixa de diálogo Atribuir Parâmetros de Entrada, selecione Destino, Parâmetros, uriParams e, em seguida, campos no lado direito da caixa de diálogo.
Na parte inferior de uriParams.fields, adicione "
,OCMFolderId_c
" sem as aspas logo apósSeverityCd
. Clique no botão Salvar.
- Para adicionar a etapa Criar OCM AppLink à cadeia de ações LoadServiceRequestAction:
Descrição da ilustração loadservicerequestaction.png
- Na página Diagrama, arraste uma nova etapa Chamar REST do lado esquerdo da página Ações e solte na linha pontilhada abaixo da etapa Designar Variáveis do originalServiceRequestRecord na parte inferior da página.
Observação:
O fluxo não ficará correto para mais algumas etapas. - Nas Propriedades no lado direito da página, clique no link Selecionar à direita de Ponto Final.
- Na caixa de diálogo Selecionar Ponto Final, selecione Serviços, ocmRestApi, Applinks e, em seguida, POST /[..]/folder/{folderId}.
Clique no botão Selecionar.
- Na página Diagrama, arraste uma nova etapa Chamar REST do lado esquerdo da página Ações e solte na linha pontilhada abaixo da etapa Designar Variáveis do originalServiceRequestRecord na parte inferior da página.
- Para atribuir variáveis de entrada na etapa AppLink:
Descrição da ilustração applink.png
- Selecione o link folderId na seção Parâmetros de Entrada do painel Propriedades.
- Arraste OCMFolderId_c de Origens, Cadeia de Ações, Resultados, loadServiceRequets e corpo à esquerda da página e solte no folderId (em Destino, Parâmetros e uriParams) à direita da página.
- Arraste userName de Origens, Aplicativo, Sistema e Usuário à esquerda da página e solte no assignedUser em Destino, Parâmetros, uriParams.
- Selecione o botão Salvar.
- Para atualizar o resultado da notificação de falha da etapa AppLink:
Descrição da ilustração step-failure.png
- Clique com o botão direito do mouse na etapa Disparar Notificação logo abaixo da etapa Chamar REST para ocmRestApi/postDocumentsApi1_2ApplinksFolderFolderId e selecione a opção Ir para Código no menu drop-down.
- Adicione o seguinte código logo abaixo da seção de parâmetros do
fireNotification
:, "outcomes": { "success": "showDefaultCursor" }
- Para formatar o documento, clique com o botão direito do mouse no código e selecione Formatar Documento.
- Para adicionar a etapa de criação da IU incorporada do OCM à cadeia de ações LoadServiceRequestAction:
Descrição da ilustração create-embui.png
- Clique no botão Design no canto superior direito da página para levá-lo de volta à cadeia de ações LoadServiceRequestAction.
- Logo abaixo da etapa Chamar REST para o ocmRestApi/postDocumentsApi1_2ApplinksFolderFolderId, arraste e solte na linha pontilhada uma nova etapa Função de Chamada das Ações no lado esquerdo da página.
Observação:
Nesse ponto, o fluxo deve ficar muito mais limpo e a nova Função de Chamada deve estar no sucesso da etapa Chamar REST do ocmRestApi/ postDocumentsApi1_2ApplinksFolderFolderId. - Selecione o link Criar à direita do campo Nome da Função nas Propriedades no lado direito da página.
No campo Nome da Função, informe o valor como createOCMEmbeddedUI.
- Clique no botão Criar.
- Para adicionar o código necessário para criar o link incorporado do OCM:
Descrição da ilustração embed-link.png
- Clique no link Ir para Função do Módulo nas Propriedades no lado direito da página.
- Substitua toda a função
createOCMEmbeddedUI
(incluindo os comentários) pelo seguinte código:/** * Creates an OCM Embedded UI on the page * * @param {object} appLink The App Link struture needed for the OCM Embedded UI * @return {undefined} */ PageModule.prototype.createOCMEmbeddedUI = function (appLink) { // Get just the server info from the full App Link URL and assign it const ocmUrl = new URL(appLink.appLinkUrl); const ocmServerUrl = ocmUrl.protocol + "//" + ocmUrl.host; OracleCEUI.oceUrl = ocmServerUrl; // Define the options we want for the OCM Embedded UI including the needed App Link variables var options = { documentsView: { id: appLink.id, layout: "grid", appLink: { appLinkID: appLink.appLinkID, accessToken: appLink.accessToken, refreshToken: appLink.refreshToken }, header: { create: { folder: true }, upload: true }, actions: { open: { file: true }, uploadNewVersion: true, download: true, delete: true, Sidebar: { Conversation: true } } } }; // Create the OCM Embedded UI documentsView frame element var iFrameElement = OracleCEUI.documentsView.createFrame(options); // Add the OCM Documents View iFrame to the specified div and add additional styles to the frame so that it looks nice var embedElement = $("#OCMEmbeddedUI")[0]; embedElement.appendChild(iFrameElement); $("#OCMEmbeddedUI").children().addClass("oj-flex-item oj-sm-12 oj-md-12").css({ "height": "600px", "border-style": "solid", "border-color": "#e5e6e6", "border-width": "1px" }); };
- Para incluir a biblioteca da interface do usuário do OCM no código a ser usado pela função
createOCMEmbeddedUI
:
Descrição da ilustração ui-library.png
- Vá até a primeira linha do código. Adicione o seguinte código antes de
ojs/ojfilepicker
:'//static.ocecdn.oraclecloud.com/cdn/cec/api/oracle-ce-ui-2.12.js',
Observação:
Ignore o aviso de dependência. - Adicione a variável associada à biblioteca
OracleCEUI
nafunction()
na mesma linha. - Para formatar o documento, clique com o botão direito do mouse no código e selecione Formatar Documento.
- Vá até a primeira linha do código. Adicione o seguinte código antes de
- Para designar a variável de seleção à função
displayEmbeddedUI
:
Descrição da seleção da ilustração -vari.png
- Selecione a guia Ações na parte superior da página.
- Selecione novamente LoadServiceRequestAction no menu drop-down apenas à direita do link Cadeias de Ação no canto superior esquerdo da página, caso ainda não tenha sido selecionado.
- Selecione a etapa Função de Chamada para createOCMEmbeddedUI que acabou de ser criada.
- Selecione o link Designar à direita dos Parâmetros de Entrada em Propriedades.
- Na caixa de diálogo Atribuir Parâmetros de Entrada, arraste o corpo de Origem, Cadeia de Ações, Resultados e callRestPostDocumentsApi12ApplinksFolderFolderId à esquerda da página para appLink (em Destino, Parâmetros) no lado direito da página.
Clique em Salvar.
- Para verificar se todas as alterações estão funcionando conforme esperado:
Descrição da ilustração verify.png
- Selecione a guia Designer de Página na parte superior da página.
- Clique no botão Ativo no canto superior direito da página.
- Selecione a guia Documentos (selecione outra guia e selecione novamente a guia Documentos se ela já tiver sido selecionada).
- Você deverá ver a pasta OCM relacionada para a SR atual na página.
Observação:
Se a IU incorporada do OCM não for carregada conforme esperado, corrija-a antes de continuar. Verifique se há erros na console do navegador e no tráfego de rede. Além disso, consulte a parte inferior do Designer de Página para ver se há erros na página. Em caso afirmativo, clique neles para obter mais detalhes.