Índice:


       

Objetivo


Apresentar como utilizar o serviço RestProcess.

Requisitos


Versão

 Disponível à partir da versão 12.1.21 da linha RM.

Linha de Software
Versão
Data de Liberação
Observação
RM12.1.21 e/ou posterioresJunho/2018Para os requisitos de software deve-se consultar a Portabilidade RM
Acesse a máquina ou servidor que está executando o serviço. 
Vá ao diretório C:\totvs\CorporeRM\RM.Net e edite o arquivo RM.Host.Service.exe.config.
Inclua a tag <add key="DefaultDB" value="CorporeRM" /> dentro da limitação appSettings.
O valor a ser atribuído a tag DefaultDB deve ser idêntico ao nome do alias que aponta para a base de dados utilizada. No exemplo que citamos atribuímos o valor "CorporeRM" ao alias e respectivamente ao DefaultDB.

RM.Host.Service.exe.Config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
	<appSettings>
		<add key="JobServer3Camadas" value="false" />
		<add key="Port" value="8050" />
		<add key="ServicesHostName" value="BHD0002773" />
		<add key="ActionsPath" value="C:\totvs\CorporeRM\RM.Net;C:\totvs\CorporeRM\Corpore.Net\Bin" />
		<add key="LibPath" value="C:\totvs\CorporeRM\RM.Net" />
		<add key="EnableDynamicLocalization" value="false" />
		<add key="EnableCompression" value="false" />
		<add key="LocalizationLanguage" value="pt-BR" />
        <add key="DefaultDB" value="CorporeRM" />
	</appSettings>
	<runtime>
		<gcServer enabled="true" />
	</runtime>
</configuration>

Atenção

Para que estas configurações entrem em vigor será necessário reiniciar o serviço do Host.

Métodos disponibilizados pelo serviço:


MétodoURLNomeDescrição
GETrest/restprocess/getschema/{processServerName}GetSchemaFaz a leitura do Processo informado.
GETrest/restprocess/getprocessstatus/{jobId}/{execId}GetProcessStatusMonitora o progresso da execução de um processo.
POSTrest/restprocess/executeprocess/{processServerName}ExecuteProcessExecuta o processo informado
POSTrest/restprocess/executeprocessasync/{processServerName}ExecuteProcessAsyncExecuta o processo informado de forma assíncrona.

Exemplos de Utilização:


Exemplo de Uso

Url: http://localhost:8051/rest/restprocess/getschema/GlbCopyPermisUsrProc

Resultado Esperado

{
  "SourceUsuario": null,
  "RemoveOldPermissions": false,
  "CopyToAllApplications": false,
  "CodSistema": null,
  "NewUser": {
    "Usuario": null,
    "Nome": null,
    "Senha": null,
    "Email": null,
    "codAcesso": null
  },
  "PrimaryKeyList": [
    [
      "//O valor apresentado abaixo deve ser do tipo System.Int32.",
      0
    ],
    [
      "//O valor apresentado abaixo deve ser do tipo System.Double.",
      0.0
    ],
    [
      "//O valor apresentado abaixo deve ser do tipo System.String.",
      "TEXTO"
    ],
    [
      "//O valor apresentado abaixo deve ser do tipo System.DateTime.",
      "2018-06-29T00:00:00-03:00"
    ]
  ],
  "PrimaryKeyNames": [
    "COLUNAPK"
  ],
  "Context": {
    "$id": "1",
    "_params": {
      "$EXERCICIOFISCAL": 2,
      "$CODLOCPRT": 12,
      "$CODTIPOCURSO": 1,
      "$EDUTIPOUSR": "",
      "$CODUNIDADEBIB": 1,
      "$CODCOLIGADA": 1,
      "$RHTIPOUSR": "-1",
      "$CODIGOEXTERNO": "-1",
      "$CODSISTEMA": "G",
      "$CODUSUARIOSERVICO": "",
      "$IDPRJ": -1,
      "$CHAPAFUNCIONARIO": "-1",
      "$CODFILIAL": 1
    },
    "Environment": 4
  }
}

Exemplo prático no postman

Exemplo de Uso

Url: http://localhost:8051/rest/restprocess/executeprocess/GlbCopyPermisUsrProc

Body:

{
  "ActionModule": "G",
  "ActionName": "GlbActionProcCopyPermisUsr",
  "CodUsuario": "mestre",
  "SourceUsuario": "mestre",
  "RemoveOldPermissions": false,
  "CopyToAllApplications": false,
  "CodSistema": "G",
  "NewUser": {
    "Usuario": null,
    "Nome": null,
    "Senha": null,
    "Email": null,
    "codAcesso": null
  },
  "PrimaryKeyList": [
    [
      "rest"
    ]
  ],
  "PrimaryKeyNames": [
    "CODUSUARIO"
  ],
  "Context": {
    "$id": "1",
    "_params": {
      "$EXERCICIOFISCAL": 2,
      "$CODLOCPRT": 12,
      "$CODTIPOCURSO": 1,
      "$EDUTIPOUSR": "",
      "$CODUNIDADEBIB": 1,
      "$CODCOLIGADA": 1,
      "$RHTIPOUSR": "-1",
      "$CODIGOEXTERNO": "-1",
      "$CODSISTEMA": "G",
      "$CODUSUARIOSERVICO": "",
      "$IDPRJ": -1,
      "$CHAPAFUNCIONARIO": "-1",
      "$CODFILIAL": 1
    },
    "Environment": 4
  }
}

Exemplo prático no Postman

Exemplo de Uso

Url: http://localhost:8051/rest/restprocess/executeprocessasync/GlbCopyPermisUsrProc

Body:

{
  "ActionModule": "G",
  "ActionName": "GlbActionProcCopyPermisUsr",
  "CodUsuario": "mestre",
  "SourceUsuario": "mestre",
  "RemoveOldPermissions": false,
  "CopyToAllApplications": false,
  "CodSistema": "G",
  "NewUser": {
    "Usuario": null,
    "Nome": null,
    "Senha": null,
    "Email": null,
    "codAcesso": null
  },
  "PrimaryKeyList": [
    [
      "rest"
    ]
  ],
  "PrimaryKeyNames": [
    "CODUSUARIO"
  ],
  "Context": {
    "$id": "1",
    "_params": {
      "$EXERCICIOFISCAL": 2,
      "$CODLOCPRT": 12,
      "$CODTIPOCURSO": 1,
      "$EDUTIPOUSR": "",
      "$CODUNIDADEBIB": 1,
      "$CODCOLIGADA": 1,
      "$RHTIPOUSR": "-1",
      "$CODIGOEXTERNO": "-1",
      "$CODSISTEMA": "G",
      "$CODUSUARIOSERVICO": "",
      "$IDPRJ": -1,
      "$CHAPAFUNCIONARIO": "-1",
      "$CODFILIAL": 1
    },
    "Environment": 4
  }
}

Exemplo prático no Postman

Exemplo de Uso

Url: http://localhost:8051/rest/restprocess/getprocessstatus/103157/1

Resultado (Erro no Processo):
{
 "Message": "Ocorreram erros ao realizar a cópia de permissões entre usuários!\r\nFavor verificar o log de execução do processo.",
 "ProcessID": {
 "ExecID": 1,
 "JobID": 103157
 },
 "Progress": 100,
 "Status": "Error"
}


Exemplo prático postman:

Exemplo prático no Postman

Para maiores informações:


Canais de Atendimento:

 

Chamado: Através do Portal Totvs www.suporte.totvs.com.br

Telefônico: 4003-0015 Escolhendo as opções 2 – (Software), 2 – (Suporte Técnico), 3 – (RM), 9 – (Demais Áreas), 4 – (BI) e 3 –  (Gerador de Relatórios e Planilha).

Produto: Framework

Versão: 12.1.21 (superiores)

Processo: Integração

SubProcesso: RestProcess