O manual descreve informações e instruções relacionadas ao uso do T6 Planning, uma solução voltada para o planejamento financeiro e monitoramento de desempenho corporativo. O manual está organizado em várias seções, que explicam detalhadamente como utilizar o T6 Planning para diversas tarefas relacionadas ao planejamento financeiro e ao gerenciamento do modelo financeiro de uma empresa.
Cada seção do manual fornece detalhes sobre como usar esses comandos, incluindo parâmetros e exemplos de uso. O manual é destinado a usuários que trabalham com o T6 Planning e precisam entender como realizar diferentes tarefas relacionadas ao planejamento financeiro e ao monitoramento de desempenho corporativo usando esta ferramenta.
Numa implantação de T6 Planning alguns procedimentos como: Envio de e-mail, Execução em lote das fórmulas, Carga de dados e outras ações administrativas, são processos que podem ser configurados para serem executados de forma automática, isto é, sua execução é agendada.
Para estes e outros procedimentos foi criado o T6 Planning Services. Um executável de linha de comando que permite diversas ações administrativas e pode facilmente ser executado em processos em lote agendados.
Este manual tem como objetivo detalhar as possibilidades de configuração e de execução do T6 Planning Services.
O T6 Planning Services é instalado juntamente com o portal do T6 Planning e é composto por dois arquivos:
Esses dois arquivos encontram-se juntos dentro do diretório bin, abaixo do diretório do portal.
Por exemplo, numa instalação padrão ficariam dentro desta pasta:
C:\Program Files\Sysphera\Pasta de instalação\WebSysphera\bin
O T6 Planning Service pode ser configurado de duas formas:
Durante a instalação do T6 Planning, o T6 Planning Services além de instalado, também é configurado de acordo com as configurações da instalação do próprio T6 Planning. Assim, na maioria dos casos não é necessário realizar nenhuma alteração nas configurações do T6 Planning Services.
No entanto, se alguma alteração manual foi realizada no T6 Planning, também é necessário revisar as configurações do T6 Planning Services.
Sysphera.Sysphera.Services.exe.config
, você verá o seguinte XML:<?xmlversion\=1.0 >encoding\=utf-8?>
<configuration\>
<connectionStrings\>
<addname\=RepositoryConnString connectionString\=Data Source=SyspheraServer;Initial Catalog=Sysphera;Persist Security Info=True;User ID=sa;Password=spr
providerName\=System.Data.SqlClient />
<addname\=DataWarehouseConnString connectionString\=Data Source= SyspheraServer,1433;Initial Catalog=Sysphera\_DM;Persist Security Info=True;User ID=sa;Password=spr
providerName\=System.Data.SqlClient />
<addname\=SAPBusinessOneSQLDBConnString connectionString\=Data Source=SAPServer;Initial Catalog=SBODemo\_Brazil;User ID=sa;Password=password
providerName\= />
</connectionStrings\>
<appSettings\>
<addkey\=CodeInjection value=true />
<addkey\=CodeInjectionPersistLevel value=4 />
<addkey\=UseSyspheraRoles value=S />
<addkey\=LongCommandsTimeOut** **value****\=0 />
<addkey\=UseScenarioParentChild value=N />
<addkey\=UseFullWritebackMOLAPProcess value=S />
<addkey\=GenerateFormulasById value=N />
<addkey\= ClientSettingsProvider.ServiceUri value="" /
</appSettings\>
v<startup\>
<supportedRuntimeversion\=v4.0 version\=.NETFramework,Version=4.0 />
</****startup****\>
</****configuration****\>
Tais configurações são exatamente a soma dos seguintes arquivos de configuração do Portal do T6 Planning:
<?xmlversion\=1.0 >encoding\=utf-8?>
<connectionStrings\>
<****clear** **/>
<****add****name****\=RepositoryConnString** **connectionString****\=Data Source= SyspheraServer;Initial Catalog=Sysphera;Persist Security Info=True;User ID=sa;Password=spr
providerName****\=System.Data.SqlClient />
<addname\=DataWarehouseConnString connectionString\=Data Source= SyspheraServer,1433;Initial Catalog=Sysphera\_DM;Persist Security Info=True;User ID=sa;Password=spr
providerName\=System.Data.SqlClient />
<****addname\=ExcelWithODBC connectionString\=Driver={Microsoft Excel Driver (\*.xls, \*.xlsx, \*.xlsm, \*.xlsb)};DriverId=790;Dbq=D:\\Temp\\DataLoadFRD.xlsx;DefaultDir=D:\\Temp;
providerName\=ExcelFile />
v</connectionStrings\>
<?xmlversion****\=1.0** **encoding****\=utf-8?>
<appSettings\>
<addkey\=CodeInjection value\=true />
<addkey\=CodeInjectionPersistLevel value\=4 />
<addkey\=UseSyspheraRoles value\=S />
<addkey\=LongCommandsTimeOut value\=0 />
<addkey\=UseScenarioParentChild value\=N />
<addkey\=UseFullWritebackMOLAPProcess value\=S />
<addkey\=GenerateFormulasById value\=N />
<addkey\=OLAPAccessSQLServerProvider value\=SQLNCLI10.1/>
<addkey\=aspnet:MaxHttpCollectionKeys value\=2000000 />
<addkey\=ActiveDirectoryLogin value\=/>
<addkey\=ActiveDirectoryPassword value\=/>
</appSettings\>
Para configurar manualmente o T6 Planning Services:
WebConnectionStrings.config
e WebAppSettings.config.
Sysphera.Sysphera.Services.exe.config.
IMPORTANTE
Tanto o Sysphera.Sysphera.Services.exe.config quanto o WebConnectionStrings.config são arquivos criptografados. Para visualizar e alterar seu conteúdo, antes é necessário descriptografá-los. Para isso, abra um prompt de comando como Administrador e navegue até a pasta onde os arquivos se encontram. Em seguida utilize o seguinte comando:
c:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319\\aspnet\_regiis -pdf "connectionStrings"
c:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319\\aspnet\_regiis -pef "connectionStrings"
O PONTO no final do comando, se faz necessário para indicar que se está utilizando a pasta local.
Para maiores informações, veja o artigo da Microsoft: Encrypting and Decrypting Configuration Sections.
A execução do T6 Planning Services pode ser realizada manualmente através do COMMAND do Windows ou através de execuções em lote (arquivos BAT). A estrutura do T6 Planning Services é a seguinte:
[Path]\ Sysphera.Sysphera.Services.exe <PARÂMETROS>
Onde:
<COMANDO>
: é o comando T6 Planning que deseja executar;<PARÂMETROS>
: são as configurações necessárias para que o comando execute corretamente. Pode-se incluir mais de um parâmetro, dependendo do comando a ser executado.Para executar comandos do T6 Planning Services em processos em lote, é necessário criar um arquivo batch, isto é, um arquivo com a extensão .BAT Para isso:
C:\\Program Files\\Sysphera\\ Pasta de instalação \\WebSysphera\\bin\\ Sysphera. Sysphera.Services.exe sendmail type=workflow app=3
Este comando irá enviar todos os e-mails relacionados ao workflow da aplicação com código 3. No próximo capítulo deste manual você poderá consultar a lista completa dos comandos disponíveis.
Para executar este arquivo batch:
O envio de e-mails do T6 Planning acontece somente quando o comando de enviar e-mail é executado, do contrário o T6 Planning não envia nenhuma mensagem de e-mail. Ele apenas insere no banco todos os e-mails que precisam ser enviados. Quando o comando de enviar e-mail for executado todos os e-mails ainda não enviados serão remetidos naquele exato momento.
O T6 Planning possui basicamente dois tipos de e-mails: os e-mails sobre as quebras de regras do workflow e os e-mails sobre as mudanças de estados das entidades do workflow.
Os e-mails de regras do T6 Planning permitem agrupar várias mensagens de quebra de regras no mesmo e-mail, para isso as quebras de regras vão sendo armazenadas e a cada período, por exemplo, semanalmente, os gestores podem receber um e-mail com todas as quebras de regras da semana, ao invés de receberem um e-mail para cada quebra de regra.
O T6 Planning Services dispõe de um comando para cada um dos dois tipos de e-mails e um terceiro comando que envia simultaneamente os dois tipos de e-mails, conforme a seguir:
Sysphera.Sysphera.Services.exe sendmail type=rules app=<application code>
Sysphera.Sysphera.Services.exe sendmail type=workflow app=<application code>
Sysphera.Sysphera.Services.exe sendmail type=all app=<application code>
Em ambos os comandos o parâmetro <application code>:
SELECT codApplication, namApplication FROM REP_APPLICATION
Quando a carga de dados (ETL) dos sistemas legados para o repositório do T6 Planning é executada, algumas dimensões podem ser atualizadas automaticamente, por exemplo, em algumas situações a dimensão de produtos precisa ser atualizada automaticamente de acordo com as mudanças feitas no sistema legado, então no final do processo de ETL é necessário comunicar ao T6 Planning que os membros da dimensão produto foram atualizados.
Este aviso que uma dimensão foi alterada faz com que o T6 Planning recarregue os membros da dimensão em questão do banco para os XMLs do modelo. Para isso existe o comando recarregar que pode ser executado de duas formas:
Sysphera.Sysphera.Services.exe reloaddimension type=all app=<application code>
Sysphera.Sysphera.Services.exe reloaddimension type=<dimension Id> app=<application code>
Antes de utilizar este comando é importante ler o item Sincronizar Aplicação, neste mesmo capítulo. Para mais detalhes sobre os parâmetros do código da aplicação ver item 3.1.
No comando acima, o parâmetro //<dimension id>
:
É o código interno da dimensão.
É um código gerado automaticamente pelo T6 Planning e pode ser encontrado na tela de administração ao clicar no Histórico do Modelo. Em seguida:
Na tela do histórico do modelo, o usuário deverá selecionar o tipo de log com o mesmo nome da dimensão que se deseja saber o ID;
Em seguida, será exibida a lista com o histórico desta dimensão, onde o ID da dimensão é o valor da coluna tipo encontrado na primeira linha da lista.
Depois de uma ou mais dimensões serem recarregadas tais alterações precisam ir para o modelo de produção, isto é, precisa-se sincronizar a aplicação que possui as dimensões recarregadas. Para isso utilize o seguinte comando sincronizar:
Sysphera.Sysphera.Services.exe synchronize app=<application code> user=<user login>
Neste comando:
O parâmetro <user login>
é o login do usuário que o T6 Planning Service irá utilizar para sincronizar a aplicação, isto é, o T6 Planning irá simular na trilha de auditoria e no histórico do modelo como se o usuário passado tivesse entrado no T6 Planning e mandado sincronizar. Para isso:
O parâmetro <application code>
é o código interno do T6 Planning para identificar a aplicação em questão veja os detalhes no item 3.1.
Todas as alterações feitas no modelo do T6 Planning são versionadas, isto é, sempre que o modelo sofre alguma alteração a versão anterior da alteração é armazenada de forma que seja possível auditar as alterações no modelo. No entanto, com o passar do tempo, à medida que várias alterações são feitas o repositório do T6 Planning pode se tornar bastante grande e uma forma de reduzirmos o seu tamanho é apagando essas versões antigas do modelo.
Para se apagar as versões antigas do modelo, utilize o seguinte comando:
Sysphera.Sysphera.Services.exe cleanhistory app=<application code>
Neste comando, o parâmetro <application code>:
Por decisão de projeto podemos colocar algumas fórmulas em modo off-line, isto é, fórmulas que não são executadas de forma automática.
Estas fórmulas precisam ser executadas de forma manual ou podem ser executadas em processos agendados como os que o T6 Planning Services permite. Por exemplo, alguns clientes preferem deixar os cálculos do balanço patrimonial em modo off-line, pois para estes clientes os números do balanço patrimonial só serão analisados depois de concluído o processo de planejamento do demonstrativo de resultado, para então minimizar a execução de cálculos automáticos durante o processo de planejamento do demonstrativo de resultado as fórmulas de balanço são marcadas como off-line.
Outro bom motivo para executar um lote de fórmulas é após a carga de premissas do planejado via ETL, os valores destas fórmulas (mesmo as automáticas) precisam ser atualizados, pois o T6 Planning não percebe este tipo de alteração diretamente realizado no banco de dados.
O T6 Planning Services possibilita mais uma alternativa para se executar fórmulas on-line ou off-line usando um dos comandos a seguir:
Sysphera.Sysphera.Services.exe executeformulas type=all app=<application code> user=<user login>
Sysphera.Sysphera.Services.exe executeformulas type=<formula id; formula id; formula id…> app=<application code> user=<user login>
Sysphera.Sysphera.Services.exe executeformulas type=<formula id; formula id; formula id…> app=<application code> user=<user login> scope=<****dimension id#member id#function>
Nos comandos acima, o parâmetro <formula id>:
É código interno das fórmulas geradas automaticamente pelo T6 Planning, para o usuário identificar qual o código de uma fórmula em específico primeiro será necessário que esta fórmula tenha sido executada ao menos uma vez, pois precisamos do histórico de execução das fórmulas para ver o código.
Depois de executar ao menos uma vez a fórmula precisa-se entrar na tela de administração e clicar no botão Fórmulas. Em seguida:
Selecione a fórmula desejada e clique na lupa da fórmula, assim será aberta uma nova janela contendo uma lista com os detalhes resumidos das execuções desta fórmula;
Na lista de detalhes de execuções das fórmulas se deve clicar na lupa da primeira linha para visualizar os detalhes da execução selecionada, na tela aberta teremos um campo chamado Código da Fórmula, o valor deste campo é o código da fórmula o qual é necessário neste comando.
Ainda nos comandos acima:
<application code>
identifica a aplicação em questão. Veja mais detalhes no item 3.1.<user login>
é o login do usuário que o T6 Planning Service irá utilizar para sincronizar a aplicação. Veja os detalhes no item 3.3.<scope>
ó deve ser utilizado quando se deseja que a fórmula seja executada em um cenário específico, em qualquer outra situação o parâmetro pode ser omitido. Neste caso o <scope>
deve conter a combinação do id do membro junto com a função de agregação, as funções de agregação disponíveis são:M - Membro;
D - Descendente;
D+ - Descendentes (Inc);
A - Ancestrais;
A+ - Ancestrais (Inc);
SL - Membros do mesmo nível;
SL+ - Membros do mesmo nível (Inc);
P - Pai membro;
P+ - Pai membro (Inc);
C - Filhos membro;
C+ - Filhos membro (Inc);
DC - Descendentes sem filhos;
DM - Dado membro;
CDM - Filhos dado membro.
As atualizações de dados via Data Links também podem ser executadas através do T6 Planning Services. Para executá-los utilize o seguinte comando:
Sysphera.Sysphera.Services.exe executedatalink type=<data link id> app=<application code> user=<user login>
Neste comando, o parâmetro <data link id>:
Neste mesmo comando:
<application code>
identifica a aplicação em questão. Veja mais detalhes no item 3.1.<ser login>
é o login do usuário que o T6 Planning Service irá utilizar para sincronizar a aplicação. Veja os detalhes no item 3.3.Em determinadas situações existe a necessidade de apagar um grupo de fórmulas ou passando o identificador dessas fórmulas ou passando simplesmente um intervalo das posições das fórmulas a serem apagadas, para isso utilize o seguinte comando:
Sysphera.Sysphera.Services.exe removeformula type=<formula id|position range; formula id|position range...> app=<application code>
Neste comando, o parâmetro <formula id|position range; formula id|position range...>:
Neste mesmo comando:
<application code>
identifica a aplicação em questão. Veja mais detalhes no item 3.1.Para ajudar o gestor em algumas atualizações o T6 Planning Services possui um comando especial permitindo que o usuário possa alterar qualquer configuração da aba escopo de um grupo de fórmulas. Tal comando pode ser usado das seguintes formas:
Também é possível utilizar este comando para limpar um escopo de uma fórmula, ou range de fórmulas, para isso deve-se omitir o parâmetro <value>.
Sysphera.Sysphera.Services.exe updateformula type=<formula id|position range; formula id|position range...> app=<application code> item=scope dimension= <dimension id> value=<member id#function; member id#function...>
Neste comando, o parâmetro <value>:
M - Membro;
D - Descendente;
D+ - Descendentes (Inc);
A - Ancestrais;
A+ - Ancestrais (Inc);
SL - Membros do mesmo nível;
SL+ - Membros do mesmo nível (Inc);
P - Pai membro;
P+ - Pai membro (Inc);
C - Filhos membro;
C+ - Filhos membro (Inc);
DC - Descendentes sem filhos;
DM - Dado membro;
CDM - Filhos dado membro.
Para alterar as propriedades da aba escopo o comando é:
Sysphera.Sysphera.Services.exe updateformula type=<formula id|position range; formula id|position range...> app=<application code> user=<user login> item=<autoexecute | executeplannedonly | executeactualonly> value=< true|false>
Neste comando:
<item>
vai definir qual das propriedades se deseja alterar.<value>
indica se deseja habilitar (true) ou desabilitar (false) a propriedade em questão.<application code>
identifica a aplicação em questão. Veja mais detalhes no item 3.1.<formula id|position range; formula id|position range...>
identifica quais as fórmulas deseja-se apagar. Veja mais detalhes no item ver o item 3.7.<dimension id>
é o código interno da dimensão. Veja mais detalhes no item 3.2.IMPORTANTE
É possível utilizar este mesmo comando para atualizar o grupo que uma ou mais fórmulas pertencem. Para este caso são utilizados os mesmos parâmetros, porém o parâmetro<item>
deve ser sempre igual a group e o parâmetro<value>
indica o nome do grupo de fórmulas que a fórmula ou o range de fórmulas irão pertencer. Caso seja indicado o nome de um grupo que não exista, será criado um novo grupo.
Sysphera.Sysphera.Services.exe updateformula type=<formula id|position range; formula id|position range...> app=<application code> user=<user login> item=group value=< group name>
Informa quais fórmulas estão calculando a mesma (ou parte dela) região do cubo, indicando que existe uma sobreposição de fórmulas que deve ser arrumado.
Parâmetros Obrigatórios:
Parâmetros Opcionais:
Os parâmetros opcionais f1 e f2 são utilizados quando se deseja visualizar mais detalhes da intersecção entre duas fórmulas.
Sysphera.Sysphera.Services.exe showformulasintersection app=<application code> f1=<formula position 1> f2=<formula position 2>
Lista todos os ciclos, grupo de fórmulas em referência circular ou em recursão, contidos no modelo.
Parâmetros Obrigatórios:
Sysphera.Sysphera.Services.exe showformulascycles app=<application code>
Informa se um ciclo, grupo de fórmulas em referência circular ou em recursão, possui convergência (fórmulas só com referência circular sempre terão convergência apenas as fórmulas com referência circular podem não convergir). Para testar se existe convergência o ciclo é executado até que as fórmulas do ciclo não alterem mais valores ou até chegarmos ao número de iterações máximas.
Parâmetros Obrigatórios:
Parâmetros Opcionais:
Sysphera.Sysphera.Services.exe showformulascycleconvergence app=<application code> user=<user login> cycle=<cycle number> iterations=<iterations quantity>
Muda o tipo de um atributo.
Parâmetros Obrigatórios:
Conversões Permitidas:
Sysphera.Sysphera.Services.exe updateattributetype app=<application code> dimension=<dimension name|dimension id> attribute=<attribute name|attribute id> type=<selection|text>
Recria a lista dos possíveis valores em um atributo do tipo selection.
Parâmetros Obrigatórios:
Sysphera.Sysphera.Services.exe updateattributeselection app=<application code> dimension=<dimension name|dimension id> attribute=<attribute name|attribute id>
Altera o tamanho de um campo text.
Parâmetros Obrigatórios:
Sysphera.Sysphera.Services.exe updateattributesize app=<application code> dimension=<dimension name|dimension id> attribute=<attribute name|attribute id> size=<size>
Lista o primeiro caminho encontrado da dependência direta ou indireta entre duas fórmulas selecionadas.
Parâmetros Obrigatórios:
Parâmetros Opcionais:
Sysphera.Sysphera.Services.exe showformulasdependency app=<application code> f1=<formula position 1> f2=<formula position 2> fullcheck
Permite validar um ciclo ou todos os ciclos do modelo, serve para comprovar que um ciclo realmente existe e para mostrar porque o ciclo existe (serão mostradas todas as dependências necessárias para formar o ciclo e inclusive todas as dependências serão detalhadas mostrando quais os membros de cada dimensão faz com que a dependência exista).
Parâmetros Obrigatórios:
Parâmetros Opcionais:
Sysphera.Sysphera.Services.exe formulacyclecheck app=<application code> cycle=<cycle index> debug
A carga de dimensão pode ser executada através do T6 Planning Services. Para executá-las devemos utilizar o seguinte comando:
Parâmetros Obrigatórios:
Sysphera.Sysphera.Services.exe executedataloaddimension app=<application code> user=<login> type =< dataload dimension code> or <all>
A carga de dados pode ser executada através do T6 Planning Services. Para executá-las devemos utilizar o seguinte comando:
Parâmetros Obrigatórios:
Parâmetros Opcionais:
Sysphera.Sysphera.Services.exe executedataloadfact app=<application code> user=<login> type =< dataload dimension code> or <all> parameter = <name1:value1;name2:valor2>
A atualização do sistema para a última versão pode ser feita através do T6 Planning Services. Para executá-la devemos utilizar o seguinte comando:
Sysphera.Sysphera.Services.exe updateversion
Realiza o desbloqueio e, se permitido, desfaz as alterações no Cubo válido voltando ao estado do último Cubo publicado. Para executá-la devemos utilizar o seguinte comando:
Sysphera.Sysphera.Services.exe unlock =<application code> user=<login>
Possibilita o disparo de gatilhos que irão iniciar novas instâncias. É possível disparar gatilhos utilizando seus códigos, separados porx; ou utilizar a opção all. Caso seja utilizada a opção type=all apenas os gatilhos que foram marcados para serem utilizados pelo Services serão disparados. Os gatilhos estão armazenados na tabela REP\_WORKFLOW\_PROCESS\_STARTER
no banco de dados do T6 Planning.
Para executá-la devemos utilizar o seguinte comando:
Sysphera.Sysphera.Services.exe startinstance user=<login> type=<code> or <all> parameter=<name:value;name1:value1;...>
Cria tabelas e estruturas do DataMart. O T6 Planning permite exportar as informações gerencias de todo o modelo de negócio. Estes dados são exportados para um banco de dados relacional separado da aplicação T6 Planning e configurável no arquivo WebConnectionStrings.config.
Sempre que é solicitada a publicação do T6 Planning Analytics, todas as informações existentes no banco de dados do T6 Planning Analytics serão removidas.
Para executá-la devemos utilizar o seguinte comando:
Sysphera.Sysphera.Services.exe datawarehouse
Parâmetro Opcional:
Envia e-mails para o usuário passado no parâmetro do comando, sobre tarefas do Workflow/Fluxo BPM que estão vencidas (atrasadas) ou para vencer.
Para executá-la devemos utilizar o seguinte comando:
Sysphera.Sysphera.Services.exe sendmaildeadline
Parâmetro Obrigatório:
Lista todos os comandos disponíveis no T6 Planning Services.
Para executá-la devemos utilizar o seguinte comando:
Sysphera.Sysphera.Services.exe help