- Criado por Fábio Augusto Amaral Melo Nunes, última alteração por Carlos Philippe de Farias Marques em 03 out, 2018
Í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 |
|---|---|---|---|
| RM | 12.1.21 e/ou posteriores | Junho/2018 | Para 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.
<?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étodo | URL | Nome | Descrição |
|---|---|---|---|
| GET | rest/restprocess/getschema/{processServerName} | GetSchema | Faz a leitura do Processo informado. |
| GET | rest/restprocess/getprocessstatus/{jobId}/{execId} | GetProcessStatus | Monitora o progresso da execução de um processo. |
| POST | rest/restprocess/executeprocess/{processServerName} | ExecuteProcess | Executa o processo informado |
| POST | rest/restprocess/executeprocessasync/{processServerName} | ExecuteProcessAsync | Executa 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