Índice
Objetivo
O controle gerencial é algo vital para a gestão de qualquer negócio, possibilitando fazer análises precisas quanto a rentabilidade e custos. Visto a importância desse tipo de controle, o módulo de Gestão de Serviços permite que seja possível vincular centros de custo a locais de atendimento, dentre outras possibilidades, direcionar o rateio na Folha de Pagamento.
Imaginando um cenário onde um atendente trabalhou em postos distintos, com diferentes centro de custos vinculados, é possível enviar para a folha a programação de rateio desse pagamento através da rotina Envio Programação Rateio (TECA960) em Atualizações → Prest Servicos → Envio Programação Rateio.
Nota I
A programação de rateio é uma funcionalidade da folha de pagamento, sendo possível conhecer um pouco mais em:
http://tdn.totvs.com/display/PROT/GPE043FOL_Rateio_Verbas_Folha
Nota II
Antes de realizar o envio da programação de rateio observe que os atendentes devem estar alocados e os atendimentos das ordens de serviço devem ser gerados.
Mapa Mental
Conheça neste diagrama as informações que contemplam as funcionalidades da rotina:
Parâmetros
Figura 1 - Parâmetros da rotina de Envio de Programação de Rateio
Campo: |
Descrição |
Atendente De ? MV_PAR01 |
Selecione o primeiro atendente que será utilizado como parâmetro. Para caso de utilização de todos os atendentes, não preencha esse campo Exemplo: 00000000002TEC |
Atendente Ate ? MV_PAR02 |
Selecione o último atendente que será utilizado como parâmetro. Para caso de utilização de todos os atendentes, preencha esse campo com a letra 'z' em todas as posições. Exemplo: Exemplo: TEC01800000009 ZZZZZZZZZZZZZZ |
Data de Inicio De ? MV_PAR03 |
Primeira data do período da programação de rateio. Exemplo: 01/01/2019 |
Data de Fim Ate ? MV_PAR04 |
Última data do período de programação de rateio Exemplo: 30/04/2019 |
Competência da folha ? MV_PAR05 |
Informe em qual competência da folha de pagamento o rateio será considerado. 02/2019 |
Sobrescrever Rateio ? MV_PAR06 |
Caso já exista cadastro de rateio com os parâmetros informado, informe se deseja sobrescrever os registros existentes ou não. 1 - Sim 2 - Não Exemplo: 1 - Não - Caso existam rateios para essas configurações de parâmetros, não serão gerados novamente. |
Processamento? MV_PAR07 |
Indica se o processamento a ser realizado será de envio das informações ou estorno da programação de rateio 1 - Envio 2 - Estorno Exemplo: 1 - Envio |
Geração de Log? MV_PAR08 |
Indica como deverá ser realizada a geração do log. 1 - Total (Os logs serão gerados para casos de sucesso ou erro) 2 - Apenas Erro (Os logs serão gerados apenas em caso de erro) Observação Os arquivos de log são gerados na pasta contida \prograteio-<yyyymmdd>.txt |
Rateia Contrato? MV_PAR09 |
Indica se o rateio será realizado por posto de trabalho, utilizando o centro de custo da tabela CNB - itens das Planilhas dos Contratos ou por local de atendimento, utilizando o centro de custo da tabela ABS - Cadastro de Locais de Atendimento. Sim = Rateio por posto (CNB) Não = Rateio por Local de Atendimento (ABS) Observação Para utilizar essa opção antes da expedição do release 12.1.31, é necessário que os programa TECA960 e TECXFUNB estejam atualizados com dada igual ou superior à 18/08/2021 e também a inclusão da pergunta "Rateia Contrato?" - MV_PAR09, conforme documentação do link abaixo: |
Esta rotina possui 3 opções de saída, conforme o conteúdo do parâmetro MV_GSOUT
- Caso uma das opções de saída seja o Ponto de Entrada, a saída será definida nos pontos de Entrada At960PrRt (Opção Envio) e At960EsRt (Opção Estorno)
- Caso um das opções de saída seja o Arquivo CSV, a saída será o arquivo At960[nOpcAuto][AAAAMMDDHHMMSS].csv, gravado no local definido no parâmetro MV_GSRHDIR onde:
nOpcAuto - Operação onde: 3 - Inclusão; 5 - Exclusão - Caso uma das opções de saída seja o Protheus, é possível consultar ou editar as programações de rateio utilizamos a rotina GPEA056, do módulo de Gestão de Pessoal, que também pode ser acessado pelo módulo Gestão de Serviços em Atualizações → Prest. Servicos → Cadastros Gpe → Programação de Rateios
Figura 2 - Browse Programação de Rateio
Ao acessar, em modo de visualização ou manutenção (alteração), podemos ver, na seção Cadastro Programação de Rateio, os registros gerados pela rotina TECA960. No exemplo da Figura 3 temos 2 registros para a competência 02/2019, sendo um registro para cada centro de custo dos locais de atendimento.
Figura 3 - Visualização do cadastro de Programação de Rateio
possível utilizar a rotina "Geração das Marcações" via API REST.
É necessário possuir o fonte TECM960.prw compilado no repositório. O caminho da API é o api/tec/v1/SMApportionmentProgram/ e a requisição é através de uma operação de POST.
A tabela abaixo indica quais propriedades do JSON no POST correspondem com quais parâmetros da rotina:
Propriedade |
Parâmetro |
Tipo |
Obrigatório |
---|---|---|---|
employeeFrom | MV_PAR01 | texto | Sim, se não possuir a propriedade employees. |
employeeTo | MV_PAR02 | texto | Sim, se não possuir a propriedade employees. |
startDate | MV_PAR03 | data no formato YYYY-MM-DD | Sim |
endDate | MV_PAR04 | data, no formato YYYY-MM-DD | Sim |
competence | MV_PAR05 | YYYY-MM | Sim |
overwrite | MV_PAR06 | numérico (1 ou 2) 1 - Sim 2 - Não |
Sim |
operation | MV_PAR07 | numérico (1 ou 2) 1 - Envio 2 - Estorno |
Sim |
log | MV_PAR08 | numérico (1 ou 2) 1 - Total (Os logs serão gerados para casos de sucesso ou erro) 2 - Apenas Erro (Os logs serão gerados apenas em caso de erro) |
Sim |
employees | array | Sim, se não possuir as propriedades employeeFrom e employeeTo |
A propriedade "employees" pode ser utilizada para listar quais atendentes (AA1_CODTEC) devem ser considerados.
Exemplo 1 de requisição:
{
"employees": ["TEC01900000135","TEC01900000136","TEC01900000137"],
"startDate": "2019-05-07",
"endDate": "2019-05-08",
"competence":"2019-05",
"overwrite":1,
"operation": 1,
"log":1
}
Exemplo 2 de requisição:
{
"employeeFrom": "TEC01900000135",
"employeeTo": "TEC01900000137",
"startDate": "2019-05-07",
"endDate": "2019-05-08",
"competence":"2019-05",
"overwrite":1,
"operation": 1,
"log":1
}
A API pode retornar status 200 - OK caso o envio da programação tenha sido realizado com sucesso (mesmo que não haja programações a serem incluídas) ou 400 caso ocorra algum problema na validação do atributo. No retorno também existe uma propriedade "message" que exibe o mesmo retorno que seria exibido caso a rotina fosse executada via interface.
{
"message": "Programações enviadas: 2\r\nProgramações não enviadas: 0\r\nFoi gerado o log no arquivo \\system\\GestaoServicos\\ProgRateio-20190509.LOG"
}
Saiba mais em: