Histórico da Página
01. Visão geral
Através do serviço RestProcess, via RESTful, o usuário poderá executar o processo de geração de movimento por regime de caixa.
Essa solicitação está disponibilizada através do método: POST e serão processados utilizando os valores dos parâmetros do processo. Esses parâmetros podem ser obtidos através do método GET com o serviço GetSchema.
No link serviços RESTful no RM é possível obter todas as informações sobre os serviços disponibilizados.
| Informações | ||
|---|---|---|
| ||
Para utilização dos serviços, é necessário que seja utilizada a forma de autenticação básica, onde deverão ser passados os valores de usuário e senha do usuário de acesso ao sistema. |
| Nota |
|---|
Conforme documentação disponibilizada pela equipe de FrameWork, os serviços via RESTful estão disponibilizados, à partir da versão 12.1.6 da linha RM. Se necessário clique aqui para obter ajuda na configuração do Host. |
02. Processos - Geração de Movimento por Regime de Caixa
Para a geração de movimento por regime de caixa, temos 02 processos possíveis: EduNFESliceableData, EduNFEData.
Processo - EduNFEData
Até a versão 12.1.2406 e até o antes do patch 12.1.2410.xxx149, esse processo é utilizado quando estamos na visão do contrato e no menu "Financeiro / Contábil → NF-e" na opção "Geração de Movimento". E executamos o processo de geração de movimento por regime de caixa para os boletos selecionados pelo filtro informado. E também pelo botão "Geração de Movimento" no menu "Financeiro / Contábil → NF-e". A partir do patch 12.1.2410.xxx e versões superiores, a visão do contrato passou a utilizar o processo EduNFESliceableData, que permite fracionamento de jobs.
O processo utiliza a informação da propriedade FiltroBoleto para identificar quais foram os boletos serão selecionados
FiltroBoleto
Informar o valore valor do filtro no seguinte formato: [
"FLANBOLETO.IDBOLETO = :F1",
14470
]
Observa que o filtro para selecionar os boletos no primeiro
temtem é a consulta SQL, e depois os parâmetros para essa consulta informada, exemplo:
[
"FLANBOLETO.CODCOLIGADA = :F1 AND FLANBOLETO.IDBOLETO = :F2",
15,
14470
]
Processo -
EduNFECompetenciaSliceableDataEduNFESliceableData (Disponível a partir do patch 12.1.2410.
xxx149 e versões superiores)
Esse processo é utilizado quando acessamos o botão "Geração de Movimento" no menu "Financeiro / Contábil → NF-e" do Educacional. E também na tela de visão de contrato quando executa -e" na opção "Geração de Movimento". E executamos o processo de geração de movimento por regime de caixa para os contratos boletos selecionados pelo filtro informado. Ele permite o fracionamento de jobs para geração de movimento por regime de caixa em ambas opções de acesso.
O processo utiliza a informação da propriedade FiltroBoleto para identificar quais foram os boletos serão selecionados
FiltroBoleto
Informar o valore do filtro no seguinte formato: [
"FLANBOLETO.IDBOLETO = :F1",
14470
]
Observa que o filtro para selecionar os boletos no primeiro
temtem é a consulta SQL, e depois os parâmetros para essa consulta informada
, exemplo:
[
"FLANBOLETO.CODCOLIGADA = :F1 AND FLANBOLETO.IDBOLETO = :F2",
15,
14470
]
O processo via o menu utiliza , além de outros campos , o filtro para filtrar e identificar quais boletos terão seus movimentos por regime de caixa gerados.
Filtro utilizadoFiltros utilizados:
Filtro de boletos selecionados.
- Data de emissão do lançamento
- Data de vencimento do lançamento
- Status do lançamento.
Para utilizar o fracionamento de jobs é necessário informar os seguintes parâmetros:
ProcessName
- Deve ser informado com o valor padrão "Serviços gerais de movimento", os jobs utilizam o nome do processo para identificação.
ServerName
- Informar o nome do processo que está sendo executado: "EduNFESliceableData". Esta informação é utilizada para identificar se existe fracionamento configurado.
SlicesCount
- Deve conter a quantidade de frações utilizadas para execução do processo, este número deve respeitar o máximo de frações cadastrado em Ambiente/Processos/Segurança de Jobs Fracionáveis. Por exemplo, o número máximo de frações configurada neste caso é de 4, sendo assim mesmo que seja informado um valor maior que 4 só serão criados 4 jobs durante a execução.
03. Parâmetros do processo - GetSchema
Para a execução de um processo, é necessária a informação dos valores dos parâmetros retornados. Para sabermos quais são os parâmetros do processo, podemos utilizar o serviço GetSchema que retornará todas as informações necessárias.
A execução do GetSchema é necessária a utilização da URL:
HTTP://<SERVIDOR>:<HTTPORT>/rest/restprocess/getschema/<NOMEDOPROCESSO>
A execução do processo de geração de movimento por regime de caixa, podemos fazer a consulta utilizando os com a utilização dos 02 processos:
Exemplo:
http://localhost:8051/rest/restprocess/getschema/EduNFEData
http://localhost:8051/rest/restprocess/getschema/EduNFESliceableData
Obs.: O retorno é o mesmo, independente do processo. Os dois processos utilizam a mesma estrutura de campos.
Retorno do GetSchema:
| Bloco de código | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
{
"TipoTarefa": 0,
"StatusLanc": 0,
"FiltroBoleto": null,
"MovimentoNFEParams": {
"CodColigada": 0,
"CodFilial": 0,
"CodTipoCurso": 0,
"CodTMv": null,
"CodServico": null,
"PermiteRegerarMov": false,
"PermiteMovValorLiquidoZero": false,
"DesconsideraBolsaCredito": false,
"CodSistemaLogado": null,
"CodUsuarioLogado": null,
"OrigemDataEmissao": 0,
"TipoTarefaMovimento": 0,
"Filtro": null,
"LogEventoAtivado": false,
"DataComp": null,
"TipoRespFinanceiro": 0,
"DataEmissaoInicial": "0001-01-01T00:00:00-02:00",
"DataEmissaoFinal": "0001-01-01T00:00:00-02:00",
"DataVencInicial": null,
"DataVencFinal": null,
"DiaFixo": null,
"PrimaryKeyList": [],
"PrimaryKeyNames": null,
"Context": null
},
"Boletos": [
{
"CodColigada": 0,
"IdBoleto": 0,
"CNABStatus": 0,
"CodColCFO": 0,
"CodCFO": null,
"NomeCliFor": null,
"DataVencimento": "0001-01-01T00:00:00-02:00",
"CodFilialNfe": null,
"FiltrouPorLancamento": true,
"ListIdLacamentosFiltrados": [
0
],
"ListaAcordos": [
{
"CodColigada": 0,
"IdBoleto": 0,
"IdLan": 0,
"Classificacao": 0,
"StatusLan": 0,
"BaixaPendente": 0,
"InternalId": null
}
],
"InternalId": null
}
],
"MesAno": "0001-01-01T00:00:00-02:00",
"GerarMovimentoValorZero": false,
"CodColigada": 0,
"CodFilial": 0,
"CodTipoCurso": 0,
"SlicesCount": 0,
"RMSJobIds": null,
"EnableTracing": false,
"LocalOnlyExecutor": null,
"EnableJobErrorProgressbar": false,
"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.",
"2025-01-10T00:00:00-03:00"
]
],
"PrimaryKeyNames": [
"COLUNAPK"
],
"Context": {
"$id": "1",
"_params": {
"$EXERCICIOFISCAL": 22,
"$CODLOCPRT": 12,
"$CODTIPOCURSO": 1,
"$EDUTIPOUSR": "-1",
"$CODUNIDADEBIB": -1,
"$CODCOLIGADA": 1,
"$RHTIPOUSR": "-1",
"$CODIGOEXTERNO": "-1",
"$CODSISTEMA": "S",
"$CODUSUARIOSERVICO": "",
"$IDPRJ": -1,
"$CHAPAFUNCIONARIO": "-1",
"$CODFILIAL": 1
},
"Environment": 4
}
} |
04. Execução do processo
Para a execução do processo é necessário utilizar a URL:
HTTP://<SERVIDOR>:<HTTPORT>/rest/restprocess/executeprocess/<NOMEDOPROCESSO>
Para a realização dessa requisição, deverá ser utilizado o método: POST.
Geração de movimento por regime de caixa - NOMEDOPROCESSO (EduNFEData)
Segue o exemplo de um conjunto de informações necessárias para a execução do processo:
| Bloco de código | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
{
"TipoTarefa": 0,
"StatusLanc": -1,
"FiltroBoleto": [
"FLANBOLETO.IDBOLETO = :F1",
14470
],
"GerarMovimentoValorZero": false,
"CodColigada": 1,
"CodFilial": 1,
"CodTipoCurso": 1,
"MovimentoNFEParams": {
"CodColigada": 1,
"CodFilial": 1,
"CodTipoCurso": 1,
"CodTMv": "2.2.10",
"PermiteRegerarMov": true,
"PermiteMovValorLiquidoZero": false,
"DesconsideraBolsaCredito": false,
"CodSistemaLogado": "S",
"CodUsuarioLogado": "mestre",
"OrigemDataEmissao": 0,
"DataEmissaoInicial": "2025/01/06",
"DataEmissaoFinal": "2025/01/10",
"DataVencInicial": null,
"DataVencFinal": null,
"DiaFixo": ""
},
"Context": {
"_params": {
"$EXERCICIOFISCAL": 22,
"$CODLOCPRT": 12,
"$CODTIPOCURSO": 1,
"$EDUTIPOUSR": "-1",
"$CODUNIDADEBIB": -1,
"$CODCOLIGADA": 1,
"$RHTIPOUSR": "-1",
"$CODIGOEXTERNO": "-1",
"$CODSISTEMA": "S",
"$CODUSUARIOSERVICO": "",
"$IDPRJ": -1,
"$CHAPAFUNCIONARIO": "-1",
"$CODFILIAL": 1
},
"Environment": 4
}
} |
Geração de movimento por
competênciaregime de caixa - NOMEDOPROCESSO (EduNFESliceableData)
Segue o exemplo de um conjunto de informações necessárias para a execução do processo:
| Bloco de código | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
{
"ProcessName": "Serviços gerais de movimento",
"ServerName": "EduNFESliceableData",
"SlicesCount": 0,
"TipoTarefa": 0,
"StatusLanc": -1,
"FiltroBoleto": [
"FLANBOLETO.IDBOLETO = :F1",
14470
],
"GerarMovimentoValorZero": false,
"CodColigada": 1,
"CodFilial": 1,
"CodTipoCurso": 1,
"MovimentoNFEParams": {
"CodColigada": 1,
"CodFilial": 1,
"CodTipoCurso": 1,
"CodTMv": "2.2.10",
"PermiteRegerarMov": true,
"PermiteMovValorLiquidoZero": false,
"DesconsideraBolsaCredito": false,
"CodSistemaLogado": "S",
"CodUsuarioLogado": "mestre",
"OrigemDataEmissao": 0,
"DataEmissaoInicial": "2025/01/06",
"DataEmissaoFinal": "2025/01/10",
"DataVencInicial": null,
"DataVencFinal": null,
"DiaFixo": ""
},
"Context": {
"_params": {
"$EXERCICIOFISCAL": 22,
"$CODLOCPRT": 12,
"$CODTIPOCURSO": 1,
"$EDUTIPOUSR": "-1",
"$CODUNIDADEBIB": -1,
"$CODCOLIGADA": 1,
"$RHTIPOUSR": "-1",
"$CODIGOEXTERNO": "-1",
"$CODSISTEMA": "S",
"$CODUSUARIOSERVICO": "",
"$IDPRJ": -1,
"$CHAPAFUNCIONARIO": "-1",
"$CODFILIAL": 1
},
"Environment": 4
}
} |
05. Descrição dos campos e tipos de dados
Abaixo segue uma descrição de cada tag do JSON de retorno do getSchema.
- TipoTarefa: Tipo de tarefa que o processo irá utilizar na sua execução e é esperado um valor inteiro, referente ao código do tipo de tarefa desejado. Valores possíveis:
- 0: Geração/Regeração de movimento por regime de caixa
- 1: Exclusão do movimento por regime de caixa
- 4: Cancelamento do movimento por regime de caixa
- StatusLan: Campo utilizado para informar o status do lançamento a ser selecionado presente no boleto: Valores possíveis:
- -1: Todos os lançamentos
- 0: Somente os lançamentos em aberto
- 1: Somente os lançamentos baixados
- 3: Somente os lançamentos baixados por acordo
- GerarMovimentoValorZero: Campo utilizado para informar se deve gerar movimento com valor zerado. Valores possíveis:
- true,
- false.
- FiltroBoleto: Lista do filtro para seleção dos boletos para a geração do movimento por regime de caixa.
- CodColigada: Código da coligada que será considerada na execução do processo. Esse campo espera um valor inteiro.
- CodFilial: Código da filial que será considerada na execução do processo. Esse campo espera um valor inteiro.
- CodTipoCurso: Código do nível de ensino que será considerada na execução do processo. Esse campo espera um valor inteiro.
- MovimentoNFEParams: Conjunto de campos necessários para a execução do processo.
- CodColigada: Código da coligada que será considerada na execução do processo. Esse campo espera um valor inteiro.
- CodFilial: Código da filial que será considerada na execução do processo. Esse campo espera um valor inteiro.
- CodTipoCurso: Código do nível de ensino que será considerada na execução do processo. Esse campo espera um valor inteiro.
- CodTMv: Campo utilizado para informar o código do tipo de movimento a ser utilizado na geração do movimento por competênciaregime de caixa.
- CodSistemaLogado: Campo utilizado para informar o sistema logado para indicar a origem do movimento a ser criado. Deve ser informado sempre com o valor de "S"
- CodUsuarioLogado: Campo utilizado para informar o usuário logado. Deve ser informado o código do usuário logado no RM.
- PermiteRegerarMov: Campo utilizado para informar se será permitido regerar o movimento por regime de caixa.
- PermiteMovValorLiquidoZero: Campo utilizado para informar se será permitido gerar/regerar o movimento por regime de caixa com valor líquido igual a zero.
- DesconsideraBolsaCredito: Campo utilizado para informar se serão desconsiderados os lançamentos de bolsa de créditobolsa de crédito e para os valores de desconto.
- OrigemDataEmissao: Campo utilizado para informar a origem da data de emissão do movimento. Valores possíveis:
- 0: Data de emissão do lançamento
- 1: Data de vencimento do lançamento
- 2: Data de baixa do lançamento
- 3: Data de competência do lançamento
- 4: Data do atual do sistema
- OrigemDataEmissao: Campo utilizado para informar a origem da data de emissão do movimento. Valores possíveis:
- DiaFixo: Campo utilizado para informar o dia fixo para para ser a data de emissão do movimento baseado na data de origem de emissão. Exemplo. Caso não for utilizado deve informar vazio ("").
- Exemplo:
- OrigemDataEmissão
- está configurada com o valor 0. Isto é, data de emissão do lançamento que é 15/01/2025. No campo DiaFixo tem o valor 20. Então da data de emissão do movimento será 20/01/2025. E essa data deve ser maior ou igual a data de emissão do lançamento e menor ou igual a data de vencimento do lançamento.
- Exemplo:
- DiaFixo: Campo utilizado para informar o dia fixo para para ser a data de emissão do movimento baseado na data de origem de emissão. Exemplo. Caso não for utilizado deve informar vazio ("").
- DataEmissaoInicial: Campo utilizado para informar o período inicial da data emissão dos boletos, campo lançamentos vinculados ao boleto. Campo obrigatório.
- DataEmissaoFinal: Campo utilizado para informar o período final da data emissão dos boletos, campo lançamentos vinculados ao boleto. Campo obrigatório.
- DataVencInicial: Campo utilizado para informar o período inicial da data emissão dos boletosvencimento dos lançamentos vinculados ao boleto. Pode receber valor nulo. Caso informe valor na data de vencimento inicial o sistema irá validar se a informação é válida. E deve ser informada também a data de vencimento final.
- DataVencFinal: Campo utilizado para informar o período final da data emissão dos boletosvencimento dos lançamentos vinculados ao boleto. Pode receber valor nulo. Caso informe valor na data de vencimento final o sistema irá validar se a informação é válida. E deve ser informada também a data de vencimento inicial.
- Context: Informações relacionadas ao contexto{
"_params": {
"$EXERCICIOFISCAL": -1, (Não é utilizado pelo Educacional e pode ser informado com -1)
"$CODLOCPRT": -1, (Não é utilizado pelo Educacional e pode ser informado com -1)
"$CODTIPOCURSO": 1, (Código do nível de ensino)
"$EDUTIPOUSR": "-1", (Não é utilizado pelo sistema e pode ser informado com -1)
"$CODUNIDADEBIB": 1, (Não é utilizado pelo Educacional e pode ser informado com -1)
"$CODCOLIGADA": 1, (Código da coligada)
"$RHTIPOUSR": "-1", (Não é utilizado pelo Educacional e pode ser informado com -1)
"$CODIGOEXTERNO": "-1", (Não é utilizado pelo Educacional e pode ser informado com -1)
"$CODSISTEMA": "S", (Código "S" necessário para informar que é uma execução do módulo Educacional)
"$CODUSUARIOSERVICO": "", (Não é utilizado pelo Educacional e pode ser informado com "")
"$IDPRJ": 2, (Não é utilizado pelo Educacional e pode ser informado com -1)
"$CHAPAFUNCIONARIO": "-1", (Não é utilizado pelo Educacional e pode ser informado com -1)
"$CODFILIAL": 1 (Código da filial)
},
"Environment": 4 (É necessário informar o código 4 para que o sistema identifique a execução em ambiente desktop)
}
}
Campos necessários, para a utilização de fracionamento de jobs: (EduNFESliceableData)
- ProcessName: Campo que espera um valor string e deverá ser utilizado quando por padrão utilizar "Serviços gerais de movimento".
- ServerName": Campo que espera um valor string e deverá ser utilizado para o fracionamento de jobs, deve conter o nome do processo chamado ex: EduNFESliceableData.
- SlicesCount: Campo que espera um valor inteiro e deverá para informar a quantidade de fracionamentos da execução do processo ex: 4.
Parâmetros internos que não precisam ser informados:
- MesAno
- LogEventoAtivado
- RMSJobIds
- EnableTracing
- LocalOnlyExecutor
- EnableJobErrorProgressbar
- MovimentoNFEParams
- CodServico
- TipoRespFinanceiro
- TipoTarefaMovimento
- DataComp
- Context
- Boletos
- CodColigada
- IdBoleto
- CNABStatus
- CodColCFO
- CodCFO
- NomeCliFor
- DataVencimento
- CodFilialNfe
- FiltrouPorLancamento
- ListIdLacamentosFiltrados
- InternalId
- ListaAcordos
