Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

FAQ - Perguntas frequentes

Soluções para perguntas do grupo Devs

Apontamentos

Como criar uma apontamento a partir de um entrypoint? {.is-info}

Quando for necessário criar um apontamento a partir de um entry point devido à alguma regra de negócio basta utilizar o campo SOURCE da tabela para descrever a origem, exemplo:

$value['SOURCE'] = "ENTRYPOINT";

Controle de acesso

Por que o menu controle de acesso não está sendo exibido? {.is-info}

Para que o usuário tenha acesso ao menu controle de acesso é necessário que o mesmo seja admin ou Super admin e ter permissão no acl *, verifique os grupos a que este usuário pertence e execute as correções necessárias: https://wiki.simova.ws/e/pt-br/controle_acesso/controle_acesso

  • permissão no acl: O usuário precisa ter acesso a uma das seguitnes rotas:
/acl/groups
/acl/users
/acl/permissionRoute
/acl/permissionField

Utils

Como pegar o campo nome da tabela nfs_org_local? {.is-info}

Para obter o seqDb da filial ou do local pode-se usar a função getUser().

$dados_user = xDS::getUser();
$seq_local_atual = $dados_user->LOCAL_ATUAL;
$seq_filial_atual = $dados_user->FILIAL_ATUAL;

Depois utilizar a funcao getNamesByLocalSeqDb para obter os nomes.

$name_local_atual = Utils::getNamesByLocalSeqDb($seq_local_atual);
$name_filial_atual = Utils::getNamesByLocalSeqDb($seq_filial_atual);
echo 'Local: ' . $name_local_atual['local'] . '<br>Filial: ' . $name_filial_atual['filial']; 

Resultado (exemplo):

Local: Cianorte
Filial: Cianorte

Dashboards

Como selecionar a filial ou local para trazer os dados {.is-info}

Pode ser adicionado no período a filial e o local para que possa obter os dados que correspondem apenas a estes, podendo ser inserido os dois ou apenas um ou outro, caso não sejam colocados serão trazidos os dados da filial que o usuario esta autenticado, como no exemplo abaixo:

"periodo": {
    "end": "2020-01-06 17:54:43",
    "begin" : "2020-01-01 17:54:40",
    "filial": "NomeDaFilial",
    "local": "NomeDoLocal"
  }

Exemplo: clique aqui.

Como adicionar uma gráfico em um relatório {.is-info}

É possível gerar uma imagem PNG de um gráfico configurado na tabela nfs_generic_chart ou passar diretamente uma configuração de um gráfico no modelo Highcharts (modelos: https://www.highcharts.com/demo) Exemplo: clique aqui.

Como adicionar uma ordenação padrão para os gráficos dos dashboards? {.is-info}

Foi adicionado um novo campo na tabela nfs_generic_chart chamado CHART_ORDER para controlar a ordenação padrão dos gráficos dentro dos dashboards, para definir essa ordem, basta configurar nesse campo valores inteiros, sendo 1 para exibição do primeiro gráfico, 2 para o segundo gráfico a ser exibido e assim por diante. Para mais detalhes clique aqui.

Folha tarefa

Como configurar a folha tarefa? {.is-info}

As configurações da Folha Tarefa foram atualizadas para deixar de ser uma custom a fim de ser configurada para outros clientes, no link abaixo tem o passo a passo de como realizar a nova configuração. As permissões de usuário e futuras funcionalidades não funcionarão no modelo de configuração antigo. passo a passo

Como configurar tabelas com prefixos na folha tarefa (Ex: MO)? {.is-info}

OBS: as configurações descritas no código segue o modelo padrão de nomenclatura de tabelas, mas existem bases onde as tabelas tem o prefixo MO na nomenclatura, para que funcione é necessário configurar os nomes das tabelas na tabela nfs_core_par_parametros para subtituir na configuração original como no exemplo clique aqui

Painel

Como exibir o painel em modo Kanban? {.is-info}

Para que o painel possar ser aberto diretamente no modo Kanban precisa ser adicionada uma configuração através da tabela nfs_qig_panels adicionando "startMode": "kanban" no OPTIONS fará com que o painel respectivo seja exibido diretamente no modo de exibição Kanban. configuração do painel

Tela de detalhes

Como configurar o Split de Boletim na tela de detalhes? {.is-info}

Para configurar o Split de Boletim é necessário seguir os 3 passos abaixo:

1- Na tabela nfs_core_par_parametros configurar o parâmetro SPLIT_ENABLED = 1

2- Na tabela nfs_core_ds_tabela configurar MOBILE_TABLE = 2

3- Na tabela nfs_acl_grupo_permissao configurar o SIUD deixando o insert = 1

configuração completa

Como configurar cores na tela de detalhes? {.is-info}

Obs: as cores funcionam apenas na nova tela de detalhes.

A configuração das cores foi criada para facilitar a visualização e identificação de boletins integrados e fechados que podem ser configurados no campo SECONDARY_TABLE_OPTIONS da tabela nfs_qig_details e apontamentos com valores especificos que podem ser configurados no campo ADDITIONAL_TABLES da tabela nfs_qig_details. configuração completa

Usuário third party

Como vincular o usuário logado com o registro de efetivo_funcionário do mesmo? {.is-info}

No NFS tem a possíbilidade de vincular um usuário a uma tabela app, onde chamamos ela de terceiro, com isso o cliente tem a possibilidade liberar um usuário externo para consultar relatórios e paineis. Com isso nas funcionalidade que usam o Nfs Query Builder vai ter o parâmetro :NFS_THIRD_PARTY que vai conter o SEQ_DB da tabela de Terceiro. A primeira configuração é definir quais usuários serão private user, depois é só ir na nfs_acl_usuario e na coluna TIPO_USUARIO_SEQ_DB e difinir igual a 5, também é possível realizar isso pelo Controle de Acesso. configuração completa

Validação View

Como vincular o usuário logado com o registro de efetivo_funcionário do mesmo? {.is-info}

A validação view é muito usada para exibir ou não um campo. No caso acima o checkbox FLAG_ROLETE (É Rolete Inferior?) somente será exibido quando a FLAG_FERRAMENTA_MEDICAO (Usa Ferramenta de Medição?) for verdadeira, ou em outra palavras, marcada como SIM.

Logo também é verdade que qualquer VALIDACAO_VIEW que depende da FLAG_ROLETE será ou não exibida baseada na sua exibição, exemplo configuração completa

Controle de Acesso

Como vincular o usuário logado com o registro de efetivo_funcionário do mesmo? {.is-info}

OBS: a tabela CONTROLE_ACESSO deverá ser excluida e utilizar a tabela SIMOVAAPPS para realizar as configurações. Para remover o menu CONTROLE_ACESSO colocar o ignore na tabela nfs_core_menu não funciona. A solução para a tabela CHAVE_ACESSO é excluir a tabela, pois agora será utilizada a tabela SIMOVAAPPS para fazer as configurações, logo pode ser removida a tabela CHAVE_ACESSO, pois já existe a validação no core que não exibirá esse menu quando não houver a tabela. configuração completa

Galeria - UPLOAD de Imagens

Como configurar o UPLOAD de arquivos e imagens? {.is-info}

Na tabela nfs_ds_core_tabela_campo quando este for do tipo UPLOAD e se quer fazer o upload/download de arquivos que não sejam imagens precisa configurar o campo VALIDAÇÃO no formato desejado sem misturar extensões de imagem com extensões de arquivos Ex: **(0:*pdf;1:docx;2:doc;) E para que funcione, as extensões configuradas precisam estar também na tabela nfs_par_parametros nos campos: para arquivos de texto, e arquivos que não sejam imagens CRUD_EXTENSOES_PERMITIDAS_UPLOAD -> 0:txt;1:jpeg;2:png;3:docx para arquivos de imagens-> CRUD_EXTENSOES_UPLOAD_PERMITIDAS_VISUALIZACAO -> png:image/png;jpeg:image/jpeg

configuração completa

Erros de Processamento

Como configurar o UPLOAD de arquivos e imagens? {.is-info}

Verificar se o parametros_mobile esta configurado corretamente, pois se estiver errada a configuração não vai realizar o processaemnto.

status 1 = não processado - ocorre normalmente por erro no parametro_mobile.

outros status serão adicionados

verificar se está configurado corretamente o campo seq_db_device_master ou no mobile está pegando o seq_db_device_master

Manipulação de Imagens

Como rotacionar uma imagem? {.is-info}

Para rotacionar uma imagem em um entryPoint basta utilizarmos a função convertOrientationImage como no exemplo

Para rotacionar uma imagem no CRUD, basta configurar o campo como tipo UPLOAD e utilizar os icones de rotação conforme mostrado nas imagens da galeria simova: clique aqui

Painel de gestão a vista

É possivel adicionar filtros que não tenham relação com a tabela principal? {.is-info}

Os filtros DEVEM ter relacionamento com a tabela principal caso a mesma esteja configurada.

O sistema quando vai enviar os QIIs para serem trabalhados no entryPoint, vai realizar um filtro buscando pela coluna que esta sendo referenciada no filtro, podemos utilizar o seguinte caso como exemplo:

  • Temos o painél baseado na tabela EQP;
  • A tabela EQP possui o campo FK EQP_MODELO;
  • A tabela EQP_MODELO possui o campo FK EQP_TIPO;
  • A tabela EQP não possui nenhum campo relacionado diretamente com EQP_TIPO;
  • Com isso se adicionarmos um filtro para EQP_TIPO no nosso painél de EQPs:
EQP.EQP_TIPO = $valorDoFiltro_eqpTipo

Com isso o sistema não enviará os QIIs para serem trabalhados no entryPoint. Tratativa: adicionar o campo FK EQP_TIPO na tabela EQP.

Cards indicadores

É possivel personalizar a aparência dos cards indicadores? {.is-info}

Sim, é possivel aplicar estilos CSS nos cards, alterando cor, borda, fonte e etc usando o objeto de configuração dos indicadores.

Saiba mais

Relatórios

É possivel editar o template de relatórios pelo NFS? {.is-info}

Sim, o NFS possui o Editor de relatórios que atualmente permite a edição de templates base.twig.

Saiba mais