Members
-
classes :Classes
-
Objeto auxiliar no tratamento das classes do sistema. Também permite obter tabelas associadas às classes.
Type:
-
connection :Connection
-
Conexão com o Engine servidor. Para acesso à base de dados, utilize
Type:
-
criticalSection :CriticalSection
-
Objeto que permite o controle de concorrência por meio da definição de critical sections.
Type:
-
database :Database
-
Conexão com a base de dados servida pelo Engine corrente.
Type:
-
dbCache :DBCache
-
Cache local do Engine corrente.
Type:
-
module:@nginstack/datasource/lib/ClassDerivation :string
-
Tipos possíveis de derivação de campos que contém chaves de classes do sistema
Type:
- string
Properties:
Name Type Default Description PATHstring PATH -
module:@nginstack/datasource/lib/DataSourceDataType :string
-
Tipos dos dados suportados nas colunas e filtros das fontes de dados.
Type:
- string
Properties:
Name Type Default Description STRINGstring string CHARstring char DATEstring date INT32string int32 INT64string int64 NUMBERstring number ARRAYstring array MEMOstring memo COMBOstring combo MASTER_DETAILstring masterdetail BOOLEANstring boolean PHONEstring phone FILEstring file PASSWORDstring password TIMEstring time DATETIMEstring datetime CEPstring cep LATITUDEstring latitude LONGITUDEstring longitude ANGLEstring angle GRIDstring grid INTEGERstring integer -
module:@nginstack/datasource/lib/DateDerivation
-
Derivações que podem ser realizadas em colunas do tipo Date.
-
module:@nginstack/datasource/lib/DBKeyDerivation :string
-
Tipos possíveis de derivação que podem ser realizadas em campos que armazenam chaves de registros do sistema.
Type:
- string
Properties:
Name Type Default Description IMAGEstring IMAGE -
module:@nginstack/datasource/lib/FilterOperator :string
-
Operações de filtro que podem ser realizadas em uma fonte de dados.
Type:
- string
Properties:
Name Type Default Description EQUALITYstring = INEQUALITYstring <> GREATER_THANstring > LESS_THANstring < GREATER_THAN_OR_EQUALstring >= LESS_THAN_OR_EQUALstring <= LIKEstring like EXISTSstring exists NOT_EXISTSstring not exists -
module:@nginstack/datasource/lib/SecurityMode :number
-
Modo de segurança de uma fonte de dados. Há três modos disponíveis de configuração.
Type:
- number
Properties:
Name Type Default Description DISABLEDnumber 0 Desabilita o modo de segurança automático para filtros e por um eventual IQuery que seja retornado por DataSourceDef#onGetQuery, note que o evento mencionado pode retornar uma consulta SQL, nesses casos a filtragem de segurança depende da lógica implementada pelo desenvolvedor. A checagem de permissões de filtro, sempre é feita quando DataSource#createFilters é executado.
ONLY_FILTER_VALUESnumber 1 É o comportamento de segurança que consiste em sempre checar a permissão de visão para todos os filtros informados e os valores de filtros lookup para uma fonte de dados.
Nesses casos o desenvolvedor deve se preocupar com a segurança dos dados no evento DataSourceDef#onGetQuery, já que os dados retornados não são submetidos a validação de permissão.FULLnumber 2 Habilita o modo de segurança automático para filtros e por um eventual IQuery que seja retornado por DataSourceDef#onGetQuery, note que o evento mencionado pode retornar uma consulta SQL, nesses casos a filtragem de segurança depende da lógica implementada pelo desenvolvedor. A checagem de permissões de filtro sempre é feita quando DataSource#createFilters é executado.
-
module:@nginstack/engine/context
-
Contexto do ambiente da requisição que está sendo tratada pelo Engine, contendo informações sobre o usuário requisitante, o Engine que está atendendo a requisição e acessos à base de dados e ao servidor.
O contexto contém objetos criados internamente pelo Engine para o atendimento da requisição levando em consideração a base de dados e os dados do usuário requisitante.
O usuário corrente e seus dados de sessão podem ser acessados e modificados por meio da propriedade session. Dados sobre o Engine que está processado a requisição podem ser obtidos por meio da propriedade engine. O Engine servidor da base de dados pode ser acessado por meio da propriedade connection e o banco de dados por meio de database.
Ao modificar o usuário da sessão automaticamente serão reconfiguradas a conexão com o Engine servidor (connection) e a conexão com o banco de dados (database) para utilizar as credenciais do novo usuário informado.
Caso o Engine esteja atendendo uma requisição HTTP, as propriedades request e response terão os dados da requisição do cliente e da resposta HTTP que será enviada no final da execução do script corrente.
-
module:@nginstack/engine/context/vendor :VendorInfo
-
Propriedades que identificam o fornecedor do sistema.
Type:
- VendorInfo
-
<constant> module:@nginstack/engine/keys/Classes
-
Chaves das classes utilizadas no Engine.
-
<constant> module:@nginstack/engine/keys/DateFormats
-
Chaves dos formatos de data suportados pelas funções module:@nginstack/engine/lib/date/formatDate e module:@nginstack/engine/lib/date/parseDate.
-
<constant> module:@nginstack/engine/keys/Engines
-
Chaves dos cadastros de Engines.
-
<constant> module:@nginstack/engine/keys/FileCategories
-
Chaves das categorias de arquivos utilizadas no Engine.
-
<constant> module:@nginstack/engine/keys/Files
-
Chaves de arquivos da VFS utilizados pelas bibliotecas do Engine.
-
<constant> module:@nginstack/engine/keys/Groups
-
Chaves dos grupos do sistema.
-
<constant> module:@nginstack/engine/keys/LogTypes
-
Chaves dos tipos de logs gravados na tabela iLog utilizados no engine.
-
<constant> module:@nginstack/engine/keys/MimeTypes
-
Chaves dos tipos de arquivos utilizados no engine.
-
<constant> module:@nginstack/engine/keys/PermissionApplyModes
-
Chaves dos modos de aplicação de permissão suportados pelo Engine.
-
<constant> module:@nginstack/engine/keys/Products
-
Chaves dos produtos (faixas de chaves) desenvolvidos na plataforma Engine.
-
<constant> module:@nginstack/engine/keys/Roles
-
Chaves dos papéis de usuários do produto Engine.
-
<constant> module:@nginstack/engine/keys/Scripts
-
Chaves dos scripts armazenados na VFS utilizados em um executeScript ou em uma tarefa do scheduler pelo Engine.
-
<constant> module:@nginstack/engine/keys/Users
-
Chaves dos usuários do sistema.
-
<constant> module:@nginstack/engine/keys/UserStatus
-
Chaves dos status de usuários.
-
module:@nginstack/engine/lib/classdef/LookupType :number
-
Tipos de lookup que um campo pode realizar.
Um lookup é uma relação de chave estrangeira. Um campo lookup guarda a chave de uma outra tabela relacionado por meio da propriedade classKey do campo.
Type:
- number
Properties:
Name Type Default Description NONEnumber 0 Indica que o campo não é lookup.
RECORDnumber 1 Indica que o campo se relaciona com os registros da classe indicada por classKey.
CLASSnumber 2 Indica que o campo se relaciona com os classes de dados filhas de classKey.
FILEnumber 3 Indica que o campo se relaciona com os arquivos da Virtual File System contidos no diretório indicado classKey ou um dos seus subdiretórios.
-
module:@nginstack/engine/lib/classdef/MasterDeleteAction :number
-
Enumerado com as possíveis ações que devem ser realizadas nos registros detalhes ao excluir o registro mestre.
Type:
- number
Properties:
Name Type Default Description ERRORnumber 0 Deve ser gerado um erro caso haja registros detalhes no momento da exclusão do registro mestre.
DELETEnumber 1 Os registros detalhes devem ser excluídos.
UNLINKnumber 2 Os campos que vinculam os registros detalhes, module:@nginstack/engine/lib/classdef/Field#detailFieldNames, devem ser preenchidos com null.
IGNOREnumber 3 Ignora os eventos de exclusão. Útil para grades detalhe com dados temporários que não são persistidos na base de dados.
-
module:@nginstack/engine/lib/classdef/ReadOnlyMode :number
-
Opções para o modo de somente leitura do campo.
Type:
- number
Properties:
Name Type Default Description NEVERnumber 0 O campo sempre pode ser modificado pelo usuário.
ALWAYSnumber 1 O campo nunca pode ser modificado pelo usuário, apenas internamente pelos eventos da classe de dados e objetos de gestão.
AFTER_INSERTnumber 2 O campo pode ser modificado durante a inserção do registro. Após a inserção, ele não poderá ser mais modificado pelo usuário, mesmo que não tenha sido preenchido durante a inserção.
ONEDITnumber 2 FILLEDnumber 3 O campo pode ser modificado até que seja preenchido pela primeira vez. Após ser preenchido, ele não poderá ser mais modificado pelo usuário. Durante a inserção do registro, o campo com este modo de somente leitura poderá ser modificado livremente até que seja efetivada a inserção. Após a efetivação, e caso ele tenha conteúdo, não poderá ser mais modificado.
-
module:@nginstack/engine/lib/classdef/SessionEnvironmentType :number
-
Tipos de ambientes que podem ser configurados em um realm HTTP.
Type:
- number
Properties:
Name Type Default Description STATELESSnumber 0 Indica que o ambiente não deve preservar o estado do ambiente entre requisições. Dessa forma, uma requisição não pode fazer uso de dados da requisição anteriores guardados apenas no ambiente JavaScript.
STATEFULnumber 1 Indica que o ambiente deve preservar o estado do ambiente entre requisições. Dessa forma, uma requisição pode fazer uso de dados da requisição anteriores guardados no ambiente JavaScript.
O sistema faz uso de cookies para identificar quais requisições são relacionadas a uma sessão de usuário
STATEFULLnumber 1 -
module:@nginstack/engine/lib/classdef/SessionPersistence :number
-
Modos de persistência das propriedades objeto global e de contexto session.
A persistência automática via Engine não é otimizada e não deve ser utilizada. Processos que necessitem de persistência, devem utilizar o banco de dados ou criar soluções próprias.
Type:
- number
Properties:
Name Type Default Description NONEnumber 0 Indica que o Engine não deve persistir as propriedades do objeto global e de contexto session.
COOKIEnumber 1 Indica que o Engine deve persistir as propriedades do objeto global e de contexto session por meio de cookies.
LOCALSTORAGEnumber 2 Não implementado.
DBSTORAGEnumber 3 Não implementado.
-
module:@nginstack/engine/lib/classdef/SourceType :string
-
Tipos de código fonte para definição de classe
Type:
- string
Properties:
Name Type Default Description MODELstring model VIEWstring view CONFIGstring config NON_STRICT_MODELstring non_strict_model -
module:@nginstack/engine/lib/classdef/TableCacheStrategy :string
-
Enumera as opções que indicam se os dados de uma tabela são gravados no cache local.
Type:
- string
Properties:
Name Type Default Description ALWAYSstring T Indica que os dados sempre devem ser replicados no cache local de todos os Engines.
NEVERstring F Indica que os dados nunca devem ser replicados no cache local de todos os Engines.
ON_DEMANDstring O Indica que os dados não serão replicados no cache local dos Engines por padrão, mas que eles serão guardados em cache sob demanda.
Atualmente apenas a tabela iVfsLob permite essa estratégia de cache. Opcionalmente a replicação completa desta tabela pode ser habilitada para Engines específicos informando a flag "-lavfsc" na linha de comando.
-
module:@nginstack/engine/lib/classdef/ValidationType :string
-
Tipos de validações aceitos para os campos.
Type:
- string
Properties:
Name Type Default Description ANGLEstring angle BOOLEANstring boolean CEPstring cep CNPJstring cnpj CPF_CNPJstring cpfcnpj CPFstring cpf DATEstring date EMAILstring email INT32string int32 INT64string int64 LATITUDEstring latitude LONGITUDEstring longitude NUMBERstring number PHONEstring phone PISstring pis STRINGstring string TIMEstring time -
module:@nginstack/engine/lib/crypto/DigestType :string
-
Tipos de digest suportados pelas classes MD5, SHA1, SHA256, SHA512 e HMAC. Eles devem ser utilizados no parâmetro
resultTypedo métododigest.Type:
- string
Properties:
Name Type Default Description BINARY_STRINGstring binarystring Indica que o digest retornado será um objeto do tipo string, no formato "Binary String", onde cada caractere da string representa um byte do conteúdo binário.
ARRAY_BUFFERstring arraybuffer Indica que o digest retornado será um objeto do tipo ArrayBuffer.
UINT8_ARRAYstring uint8array Indica que o digest retornado será um objeto do tipo Uint8Array.
-
module:@nginstack/engine/lib/database/DatabaseDataType :string
-
Tipos de dados definidos pelo padrão SQL que são suportados com garantia de interoperabilidade entre os bancos de dados no Engine.
Ver https://en.wikipedia.org/wiki/SQL_syntax#Data_types para mais detalhes sobre as características de cada tipo.
Type:
- string
- See:
-
- module:@nginstack/engine/lib/dataset/DataSetDataType
- module:@nginstack/engine/lib/database/databaseToDataSetDataType
Properties:
Name Type Default Description CHARstring char VARCHARstring varchar CLOBstring clob INTEGERstring integer BIGINTstring bigint NUMERICstring numeric DOUBLE_PRECISIONstring double precision TIMESTAMPstring timestamp TIMESTAMP_WITH_TIME_ZONEstring timestamp with time zone DATEstring date -
module:@nginstack/engine/lib/database/Limits
-
Limites pré-estabelecidos do esquema do banco de dados ou da estrutura de classes do sistema.
-
module:@nginstack/engine/lib/database/SystemFields
-
Campos com significados especiais para o sistema.
-
module:@nginstack/engine/lib/dataset/DataSetDataType :string
-
Tipos de dados suportados por campos de DataSet.
Veja https://nginstack.com/pt/docs/engine/databases/ para mais detalhes de como os tipos das colunas da base de dados são mapeadas para campos em um DataSet.
Type:
- string
- See:
-
- module:@nginstack/engine/lib/database/DatabaseDataType
- module:@nginstack/engine/lib/database/databaseToDataSetDataType
Properties:
Name Type Default Description STRINGstring string MEMOstring memo INT32string int32 INT64string int64 NUMBERstring number DATEstring date DATETIMEstring datetime BOOLEANstring boolean -
module:@nginstack/engine/lib/date/DateFormat :number
-
Formatos de datas aceitos pelas funções module:@nginstack/engine/lib/date/formatDate e module:@nginstack/engine/lib/date/parseDate.
Type:
- number
Properties:
Name Type Default Description DDMMYYYYnumber -1892603089 Formato dia/mês/ano. Exemplo: 21/05/2017.
DDMMnumber -1892603090 Formato dia/mês. Exemplo: 21/05.
MMYYYYnumber -1892603088 Formato mês/ano. Exemplo: 05/2017.
WWYYYYnumber -1892603087 Formato semana_iso/ano. Exemplo: 20/2017.
YYYYWWnumber -1892603057 Formato ano/semana_iso. Exemplo: 2017/20.
MMMYYYYnumber -1892603055 Formato mês_extenso/ano. Exemplo: Maio/2017.
-
module:@nginstack/engine/lib/date/Month :number
-
Meses do ano.
Type:
- number
Properties:
Name Type Default Description JANnumber 0 FEBnumber 1 MARnumber 2 APRnumber 3 MAYnumber 4 JUNnumber 5 JULnumber 6 AUGnumber 7 SEPnumber 8 OCTnumber 9 NOVnumber 10 DECnumber 11 -
module:@nginstack/engine/lib/date/WeekDay :number
-
Dias da semana.
Type:
- number
Properties:
Name Type Default Description MONnumber 0 TUEnumber 1 WEDnumber 2 THUnumber 3 FRInumber 4 SATnumber 5 SUNnumber 6 -
module:@nginstack/engine/lib/event/DuplicationHandling :number
-
Modos como devem ser tratadas as tentativas de registrar uma função de listener duplicada em um Emitter.
Type:
- number
- See:
-
- module:@nginstack/engine/lib/event/Emitter#duplicationHandling
Properties:
Name Type Default Description IGNOREnumber 0 Ignora a função listener duplicada, conforme especificação W3C.
ACCEPTnumber 1 Registra a função listener duplicada.
REMOVEnumber 2 Remove a definição anterior e registra a função listener no final da fila de listeners.
-
module:@nginstack/engine/lib/event/ListenerCompareFunctions
-
Funções de comparação para indicar se dois listeners registrados em um emitter são iguais. Poderá ser utilizada a comparação estrita, onde eles serão iguais se fora exatamente a mesma instância da função, ou a comparação do código-fonte, onde dois listeners serão considerados iguais se tiverem o mesmo código-fonte obtido por meio do método toString.
- See:
-
- module:@nginstack/engine/lib/event/Emitter#listenerCompareFunction
-
module:@nginstack/engine/lib/geo/AngleFormat :number
-
Formatos para ângulos aceitos pelas funções module:@nginstack/engine/lib/geo/parseAngle e module:@nginstack/engine/lib/geo/formatAngle.
Type:
- number
Properties:
Name Type Default Description DDDnumber -1892603107 Ângulo sem casas decimais.
DDD_DDnumber -1892603106 Ângulo com casas decimais.
-
module:@nginstack/engine/lib/geo/LatitudeFormat :number
-
Formatos de Latitude aceitos pelas funções module:@nginstack/engine/lib/geo/parseLatitude e module:@nginstack/engine/lib/geo/formatLatitude.
Type:
- number
Properties:
Name Type Default Description DDD_DDDDDnumber -1892603112 Graus decimais com 5 casas de precisão.
DDD_MM_MMM_DIRnumber -1892603111 Graus, minutos com 3 casas de precisão e direção.
DDD_MM_SS_S_DIRnumber -1892603110 Graus, minutos e segundos com 2 casas precisão e direção.
-
module:@nginstack/engine/lib/geo/LongitudeFormat :number
-
Formatos de Longitude aceitos pelas funções module:@nginstack/engine/lib/geo/parseLongitude e module:@nginstack/engine/lib/geo/formatLongitude.
Type:
- number
Properties:
Name Type Default Description DDD_DDDDDnumber -1892602552 Graus decimais com 5 casas de precisão.
DDD_MM_MMM_DIRnumber -1892602551 Graus, minutos com 3 casas de precisão e direção.
DDD_MM_SS_S_DIRnumber -1892602550 Graus, minutos, segundos com 2 casas precisão e direção.
-
module:@nginstack/engine/lib/math/RoundingMode :number
-
Classe utilizada para enumerar os valores possíveis do parâmetro mode do método Math.decimalRound.
Type:
- number
Properties:
Name Type Default Description HALF_EVENnumber 1 Arredonda para o decimal mais próximo ou mantém o mesmo dígito.
HALF_ODDnumber 2 Arredonda para o decimal mais próximo ou para o dígito ímpar.
HALF_POSITIVEnumber 3 Arredonda para o decimal mais próximo ou para o maior valor mais próximo.
HALF_NEGATIVEnumber 4 Arredonda para o decimal mais próximo ou para o menor valor mais próximo
HALF_DOWNnumber 5 Arredonda para o decimal mais próximo ou em direção a zero (truncamento).
HALF_UPnumber 6 Arredonda para o decimal mais próximo ou para longe do zero.
FLOORnumber 7 Arredonda para o menor valor decimal mais próximo.
CEILINGnumber 8 Arredonda para o maior valor decimal mais próximo.
DOWNnumber 9 Arredonda em direção a zero (truncamento).
UPnumber 10 Arredonda para longe de zero.
-
module:@nginstack/engine/lib/monitoring/AlertCodes :string
-
Códigos dos alertas gerados pelo monitoramento do sistema.
Type:
- string
Properties:
Name Type Default Description UNSUPPORTED_OSstring unsupported_os O sistema operacional utilizado não é suportado pelo Engine.
UNSUPPORTED_ARCHstring unsupported_arch O Engine em execução utiliza uma arquitetura que não é mais suportada (32 bits).
LOW_FREE_DISKstring low_free_disk Há pouco espaço livre no disco do diretório de dados do sistema.
LOW_PHYSICAL_MEMORYstring low_physical_memory Há pouca memória física disponível no servidor.
HIGH_MEMORY_USAGEstring high_memory_usage A quantidade de memória virtual utilizada pelo Engine está elevada.
HIGH_SESSION_COUNTstring high_session_count A quantidade de sessões de usuários ativas no Engine está elevada.
SLOW_DBCACHE_SYNCstring slow_dbcache_sync O sincronismo do cache local está demorando mais que o normal. Essa demora pode ter sido provocada pela geração de um grande volume de alterações a serem sincronizadas ou pode existir alguma anomalia no funcionamento do cache local ou no disco do servidor.
DBCACHE_SYNC_ERRORstring dbcache_sync_error Ocorreu um erro ao tentar sincronizar o cache local do Engine.
TRANSACTION_LOG_SENDING_ERRORstring transaction_log_sending_error Ocorreu um erro ao tentar enviar os logs transacionais do Engine.
HIGH_ENGINE_UPTIMEstring high_engine_uptime O Engine está em execução há muito tempo sem ser reiniciado. O reinício periódico do Engine é importante para que o sistema possa atualizar o esquema das tabelas que estão no cache local, além de reduzir a perda de eficiência provocada pela fragmentação da memória gerenciada pelo alocador padrão do sistema operacional, HeapAlloc no Windows e glibc malloc no Linux.
OUTDATED_ENGINEstring outdated_engine A versão do Engine está desatualizada.
-
module:@nginstack/engine/lib/monitoring/AlertSeverity :string
-
Severidades dos alertas gerados pelo monitoramento do sistema.
Type:
- string
Properties:
Name Type Default Description INFOstring info Utilizado em alertas informacionais sobre recursos ou configurações que não impedem o funcionamento do sistema.
WARNINGstring warning Utilizado em alertas que requerem atenção do administrador do sistema e podem impactar o funcionamento do sistema caso não sejam resolvidos.
CRITICALstring critical Utilizado em alertas sobre recursos ou configurações que podem estar afetando o funcionamento ou a integridade do sistema.
-
module:@nginstack/engine/lib/number/NumberFormat :number
-
Formatos numéricos aceitos pelas funções module:@nginstack/engine/lib/number/formatNumber e module:@nginstack/engine/lib/number/parseNumber.
Type:
- number
Properties:
Name Type Default Description DECIMALnumber -1892603085 Formato decimal. Exemplo: 1.234,56.
INTEGERnumber -1892603082 Formato inteiro. Exemplo: 1.234.567.890.
DBKEYnumber -1898139222 Formato inteiro para chaves do banco de dados. Exemplo: -1234567890.
-
module:@nginstack/engine/lib/range/Limit :number
-
Indica se o campo representa início ou fim de um intervalo, atualmente só é suportado para funções de tratamento de data.
Type:
- number
Properties:
Name Type Default Description STARTnumber 1 ENDnumber 2 -
module:@nginstack/engine/lib/security/ClassChangePolicy :number
-
As formas de alteração de classe de registros suportadas pelo sistema.
Type:
- number
Properties:
Name Type Default Description DELETE_AND_INSERTnumber 1 A verificação de permissão ao alterar uma classe deve verificar a permissão de remover da classe atual e de inserir da classe nova.
CHANGEnumber 2 A verificação de permissão ao alterar uma classe deve verificar apenas a permissão de alterar da classe atual.
-
module:@nginstack/engine/lib/security/PermissionMode :string
-
Modos de operação para se obter as permissões de classes e arquivos do sistema.
Type:
- string
- See:
-
- module:@nginstack/engine/lib/security/Security#getPermission
- module:@nginstack/engine/lib/classdef/PermissionField#readMode
Properties:
Name Type Default Description FIRSTstring first Obtém a primeira permissão definida para a classe ou uma de suas mães, levando em conta a ordem da classe informada. A ordem considerada no sentido da classe atual até a classe root. Neste modo não há herança se a chave informada for um script da iVFS como, por exemplo, um processo.
MAXstring max Obtém o maior valor informado para a classe ou para uma de suas mães. Neste modo não há herança se a chave informada for um script da iVFS como, por exemplo, um processo.
MINstring min Obtém o menor valor informado para a classe ou para uma de suas mães. Neste modo não há herança se a chave informada for um script da iVFS como, por exemplo, um processo.
DISTINCTstring distinct Obtém todos os valores distintos informados para a classe ou para uma de suas mães. Se a permissão informada para uma classe possuir os separadores ";" ou ",", a mesma será dividida e cada elemento será considerado um valor distinto. Neste modo não há herança se a chave informada for um script da iVFS como, por exemplo, um processo.
NO_INHERITANCEstring withoutInheritance Obtém a permissão para a classe informada sem levar em conta as permissões definidas nas classes mães. Este parâmetro não é adequado para utilização com campos do tipo "string" que podem ser multivalorados, recomendamos o uso do parâmetro "distinct".
CONCATstring concat Obtém todos os valores informados para a classe ou para uma de suas mães concatenados. Se a permissão informada para uma classe possuir os separadores ";" ou ",", a mesma será dividida e cada elemento será considerado um valor distinto. Neste modo não há herança se a chave informada for um script da iVFS como, por exemplo, um processo.
-
module:@nginstack/engine/lib/security/SecurityPolicyApplication :string
-
Enumerado que relaciona as aplicações que podem ser informadas aos métodos module:@nginstack/engine/lib/security/SecurityPolicy#checkEnabledApplication e module:@nginstack/engine/lib/security/SecurityPolicy#validateLogin.
Type:
- string
Properties:
Name Type Default Description IDEstring iIDEEnabled Representa a IDE do aplicativo Engine.
iWebstring iiWebEnabled Representa o aplicativo iWeb, antigo sistema de gestão empresarial que foi substituído pelo Framework HTML.
FrameworkHTMLstring iFrameworkHTMLEnabled Representa o framework HTML.
-
module:@nginstack/orm/lib/EntityState :number
-
Enumerado com os possíveis estados de uma Entity.
Type:
- number
- See:
Properties:
Name Type Default Description UNCHANGEDnumber 0 A entidade não foi modificada desde a sua criação ou da última execução do método Entity#persist.
ADDEDnumber 1 Uma nova entidade foi criada, mas as alterações ainda não foram persistidas no banco de dados.
MODIFIEDnumber 2 A entidade foi modificada, mas as alterações ainda não foram persistidas no banco de dados.
DELETEDnumber 3 A entidade foi excluída, mas as alterações ainda não foram persistidas no banco de dados.
DETACHEDnumber 4 Indica que uma instância de Entity não faz mais parte de um EntitySet, nem representa uma entidade do banco de dados. Normalmente, uma entidade fica nesse estado após a exclusão de uma entidade ter sido persistida no banco de dados.
-
<constant> module:@nginstack/web-framework/keys/Classes
-
Chaves das classes utilizadas no Web Framework.
-
<constant> module:@nginstack/web-framework/keys/Files
-
Chaves de arquivos da VFS de propósito genérico.
-
<constant> module:@nginstack/web-framework/keys/MimeTypes
-
Chaves dos tipos de arquivos utilizados no Web Framework.
-
<constant> module:@nginstack/web-framework/keys/Processes
-
Chaves dos processos utilizados no Web Framework.
-
<constant> module:@nginstack/web-framework/keys/Relations
-
Chaves das classes de relacionamentos entre registros utilizadas no Web Framework. Todas as classes são filhas de Relações.
-
<constant> module:@nginstack/web-framework/keys/Scripts
-
Chaves dos scripts armazenados na VFS utilizados em um executeScript ou em uma tarefa do scheduler pelo Web Framework.
-
module:@nginstack/web-framework/lib/classdef/DuplicateMode :string
-
Modos de duplicação de um objeto do tipo Field. Este modo define como o campo irá se comportar no caso do registro ser duplicado.
Type:
- string
- See:
Properties:
Name Type Default Description NONEstring none Indica que este campo não será copiado para o novo registro.
COPYstring copy Indica que este campo será copiado.
COPY_ADDING_SUFFIXstring copyAddingSuffix Indica que este campo será copiado e adicionado de um sufixo para o novo registro. Este modo só será suportado em campos dos tipos string e memo.
-
module:@nginstack/web-framework/lib/classdef/EnterKeyAction :string
-
Opções que indicam como o campo deve responder à digitação da tecla ENTER.
Type:
- string
Properties:
Name Type Default Description IGNOREstring ignore A tecla ENTER é ignorada no conteúdo do campo.
NEWLINEstring newline A tecla ENTER é mantida no conteúdo do campo, adicionando uma quebra de linha ao conteúdo.
Deve ser utilizado apenas em campos que tenham altura maior que 1. Se for utilizado em um campo com altura 1 o comportamento será semelhante ao "ignore".
DONEstring done A tecla ENTER encerra o preenchimento do campo atual.
-
module:@nginstack/web-framework/lib/dsv/PivotGroupType :string
-
Enumeração com os tipos de agrupamento de colunas para renderização do DSV quando há pivoteamento.
Type:
- string
Properties:
Name Type Default Description NONEstring none BY_TOTAL_FIELDstring groupbytotalfield BY_PIVOT_VALUEstring groupbypivotvalue -
module:@nginstack/web-framework/lib/dsv/TotalAggregate :string
-
Enumeração com as formas de agregação dos totais das colunas que podem ser utilizadas na renderização da visualização.
Type:
- string
Properties:
Name Type Default Description SUMstring sum MINstring min MAXstring max AVGstring avg COUNTstring count -
module:@nginstack/web-framework/lib/grid/GridViewMode :number
-
Modos de visualização da grade.
Type:
- number
Properties:
Name Type Default Description FORM_VIEWnumber 0 Modo formulário.
TABLE_VIEWnumber 1 Modo tabela.
-
module:@nginstack/web-framework/lib/label/LabelAlignment :string
-
Opções de alinhamento possíveis do componente Label.
Type:
- string
Properties:
Name Type Default Description LEFTstring left RIGHTstring right CENTERstring center JUSTIFYstring justify -
module:@nginstack/web-framework/lib/search/SearchType :string
-
Tipos de pesquisa suportados pelo sistema. Eles devem ser utilizados no parâmetro
searchTypeda classeSearcher.Type:
- string
Properties:
Name Type Default Description MENUstring menu Indica que a pesquisa ocorrerá nos itens do menu principal do sistema.
DATABASEstring database Indica que a pesquisa ocorrerá em uma tabela do banco de dados, através de consulta.
CLASSESstring classes Indica que a pesquisa ocorrerá na tabela de classes do sistema.
DBCACHEstring dbcache Indica que a pesquisa ocorrerá em registros de classes cadastrais do cache local do sistema.
-
<constant> module:@nginstack/web-framework/lib/simple-layout/FiltersDisplayMode
-
Modos de exibição dos valores dos filtros informados pelo usuário em um relatório.
-
profiler :Profiler
-
Objeto profiler da sessão.
Type:
-
repository :Repository
-
Objeto que permite o compartilhamento de informações entre sessões JavaScript. As propriedades definidas neste objeto podem ser acessadas em outras sessões. Os valores das propriedades devem ser tipos primitivos ou DataSets.
Type:
-
request :Request
-
Informações e dados da requisição HTTP que está sendo atendida.
Type:
-
response :Response
-
Dados e cabeçalhos da resposta que será dada à requisição HTTP que está sendo atendida.
Type:
-
scheduler :Scheduler
-
Objeto que permite consultar e gerenciar o agendador de scripts do Engine.
Type:
-
security :Security
-
Objeto responsável por consultar e manipular as permissões do sistema.
Type:
-
server :Server
-
Objeto responsável por consultar informações e manipular o Engine em execução.
Type:
-
session :Session
-
Informações e configurações da sessão corrente.
Type:
-
systemMonitor :SystemMonitor
-
Objeto que permite obter informações de performance e consumo de recursos do sistema.
Type:
-
virtualFS :VirtualFileSystem
-
Objeto responsável por manipular o Sistema de Arquivos Virtuais (VFS).
Type:
Methods
-
__include(keyOrUri)
-
Irá incluir o script como se fosse um copiar-colar, desta forma as funções ficam disponíveis para serem redefinidas. O mesmo script pode ser incluído mais de uma vez e o include pode ser dado em qualquer parte do código.
Parameters:
Name Type Description keyOrUrinumber | string chave ou caminho do script na ufs.
-
__includeOnce(keyOrUri)
-
O script será inserido apenas uma vez, mesmo que sejam realizados várias chamadas. O __includeOnce deve ser invocado no início do script, pois trata-se da inclusão de uma library.
Parameters:
Name Type Description keyOrUrinumber | string chave ou caminho do script na ufs.
-
getStackTrace()
-
Função global equivalente ao módulo module:@nginstack/engine/lib/error/getStackTrace.
-
module:@nginstack/datasource/lib/formatDerivationLabel(derivation)
-
Dada uma derivação de uma coluna ou filtro, retorna um rótulo de exibição para ela.
Parameters:
Name Type Description derivationstring Id da derivação.
Returns:
Rótulo da derivação.
- Type
- string
-
module:@nginstack/engine/lib/array/argumentsToArray(args [, opt_fromIndex] [, opt_toIndex])
-
Converte um objeto Arguments em um array de parâmetros, a partir de um índice inicial até um índice final.
Parameters:
Name Type Argument Description argsArrayLike.<*> Objeto arguments.
opt_fromIndexnumber <optional>
Índice inicial, o elemento desse índice será incluído no resultado.
opt_toIndexnumber <optional>
Índice final, o elemento desse índice não será incluído no resultado.
Returns:
Arguments convertido.
- Type
- Array
-
module:@nginstack/engine/lib/array/arrayEquals(arr1, arr2 [, opt_equalsFn])
-
Verifica se dois arrays são iguais. Dois arrays são considerados iguais se eles têm o mesmo tamanho e os seus elementos correspondentes são considerados iguais de acordo com a função de comparação.
Parameters:
Name Type Argument Description arr1Array | Uint8Array O primeiro array para comparar.
arr2Array | Uint8Array O segundo array para comparar.
opt_equalsFnfunction <optional>
Função de comparação opcional. Ela irá receber 2 argumentos para comparar e deverá retornar true se os argumentos são iguais.
Returns:
True se os 2 arrays são iguais.
- Type
- boolean
-
module:@nginstack/engine/lib/array/listToArray(list [, opt_separator])
-
Converte uma lista textual de valores em um
Array.Parameters:
Name Type Argument Description liststring | Array.<string> Lista a ser convertida em um array. Caso seja informado um array, ele será retornado sem alterações.
opt_separatorstring <optional>
Caso não seja informado um separador, tentará ser utilizado ";" e "," como separador, dando preferência ao primeiro.
Returns:
Array com os valores da lista.
- Type
- Array.<string>
-
module:@nginstack/engine/lib/array/remove(arr, obj)
-
Remove a primeira ocorrência do valor informado.
Parameters:
Name Type Description arrArray Array do qual será removido o valor.
obj* Valor ou objeto a ser removido.
Returns:
True se um elemento foi removido.
- Type
- boolean
-
module:@nginstack/engine/lib/array/removeAt(arr, i)
-
Remove o elemento na posição i.
Parameters:
Name Type Description arrArray Array do qual será removido o elemento
inumber O índice do elemento a ser removido
Returns:
True se o elemento foi removido
- Type
- boolean
-
module:@nginstack/engine/lib/array/split(arr, n)
-
Divide o array na quantidade de partes informadas.
Parameters:
Name Type Description arrArray Array que será repartido.
nnumber Número de partes que o array será dividido. A quantidade de partes deverá ser maior ou igual a 1.
Returns:
Novo array contendo as partes do array informado.
- Type
- Array.<Array>
-
module:@nginstack/engine/lib/array/splitIntoChunks(arr, chunkSize)
-
Divide um array em partes do tamanho informado em
chunkSize. A última parte será menor se o tamanho do array não for um múltiplo dechunkSize.Parameters:
Name Type Description arrArray Array que será repartido.
chunkSizenumber Tamanho das partes.
Returns:
Novo array contendo as partes do array informado.
- Type
- Array.<Array>
-
module:@nginstack/engine/lib/array/uint8ArrayToBinaryString(ar)
-
Converte um
Uint8Arrayem uma string contendo dados binários no formato conhecido por "Binary String", onde cada caractere da string representa um byte do conteúdo binário.Parameters:
Name Type Description arUint8Array Array a ser convertido em uma string binária.
Returns:
String contendo os dados binários contidos no array informado.
- Type
- string
-
module:@nginstack/engine/lib/classdef/getImageRelationConfig(classKey)
-
Obtém a configuração de relacionamento de um cadastro com as suas imagens caso haja um.
Parameters:
Name Type Description classKeynumber Chave da classe a ser testada.
Returns:
Objeto com as propriedades classKey, masterFieldNames e detailFieldNames. A primeira delas é a classe do relacionamento, já a segunda são os campos utilizados na grade mestre para o relacionamento com a grade detalhe. A última propriedade é a lista de campos da grade detalhe que fazem o relacionamento com a grade mestre. Será retornado null caso a classe informada não tenha vínculos com imagens.
- Type
- Object
-
module:@nginstack/engine/lib/classdef/getLookupDataClass(classKey, lookupType)
-
Obtém a classe onde estão preservados os dados de um campo lookup. Será retornado um valor nulo caso o lookupType caso de LookupType.NONE.
Parameters:
Name Type Argument Description classKeynumber Chave da classe do campo lookup.
lookupTypenumber <nullable>
LookupType do campo lookup. Usar as constantes em LookupType.
Returns:
Chave da classe onde estão preservados os dados do campo lookup.
- Type
- number
-
module:@nginstack/engine/lib/classdef/getLookupDisplayValue(keys [, opt_baseClassKey])
-
Obtém o valor de exibição de uma chave ou de uma lista de chaves.
Parameters:
Name Type Argument Description keysnumber | string | Array.<number> Chave ou lista de chaves.
opt_baseClassKeynumber <optional>
Classe do registro. Caso as chaves informadas em keys sejam da Virtual File System, opt_baseClassKey será ignorada. Opcional apenas quando a chave estiver no cache local.
Returns:
- Type
- string
-
module:@nginstack/engine/lib/classdef/lookupFieldDef(classKey, fldExpr)
-
Retorna a definição do campo identificado pela expressão lookup
fldExpra partir da classeclassKey. Será gerado um erro caso a expressão lookup não possa ser resolvida.Parameters:
Name Type Description classKeynumber Chave da classe da qual a expressão
fldExprstring Campo ou expressão de campos.
Returns:
Definição do campo.
Example
const lookupFieldDef = require('@nginstack/engine/lib/classdef/lookupFieldDef.js'); const fld = lookupFieldDef(classKey, 'iSecurityPolicy.iName'); fld // => Definição do campo iName da classe de políticas de segurança -
module:@nginstack/engine/lib/cloud/getStorageServiceFromLobClass(classKey [, rules])
-
Retorna a chave do serviço de armazenamento de objetos associado à classe de dados da "Lob Storage". A configuração dessa associação é feita no processo "Administração do sistema > Armazenamento de arquivos > Gerenciamento de armazenamento", utilizando o botão "Configuração".
Parameters:
Name Type Argument Description classKeynumber Chave da classe filha de "/Dados/Sistema/Large Objects".
rulesDataSet <optional>
DataSet de regras, se não for informado será carregado do cache local.
Returns:
Chave do serviço de armazenamento de objetos associado à classe de dados. Se nenhuma associação for encontrada será retornado um valor nulo.
- Type
- number | null
-
module:@nginstack/engine/lib/compress/jsmin(input [, opt_options])
-
Reduz um código JavaScript eliminando espaços e comentários desnecessários para a sua execução.
Parameters:
Name Type Argument Description inputstring Script a ser minificado.
opt_optionsObject <optional>
Opções da minificação.
Properties
Name Type Description commentstring Comentário a ser adicionado no início do conteúdo minificado.
levelnumber Nível de agressividade da compressão:
- 1: minimal: mantém saltos de linha se forem únicos.
- 2: normal: algoritmo padrão.
- 3: agressivo: remove qualquer salto de linha e não se importa com o efeito da modificação.
-
module:@nginstack/engine/lib/dataset/syncRecords(source, target [, opt_options])
-
Torna os registros de target iguais ao de source. Registros em target que não existam em source serão removidos.
Apenas os campos de source que existam em target serão copiados. Os demais campos de target serão preservados.Parameters:
Name Type Argument Description sourcemodule:@nginstack/engine/lib/dataset/DataSet~DataSet DataSet que será utilizado como origem dos dados.
targetmodule:@nginstack/engine/lib/dataset/DataSet~DataSet DataSet que será modificado.
opt_optionsObject <optional>
Opções de sincronismo.
Properties
Name Type Argument Description idFieldNamestring <optional>
Nome do campo que identifica de forma única um registro. Caso não seja informado, será considerado o campo iKey, e caso este não exista, o CHAVE.
ignoredFieldNamesArray.<string> <optional>
Nomes dos campos que serão ignorados durante a sincronização. Caso não seja informado, serão ignorados iVersion e VERSAO.
Returns:
Retorna um objeto com 4 propriedades: modified, indicando se houve alterações em target, e insertedIds, updatedIds e deletedIds, indicando os ids modificados em cada tipo de alteração.
- Type
- Object
-
module:@nginstack/engine/lib/date/checkDateRange(date, start, end)
-
Avalia se a data está em um intervalo entre dois dias. Se não estiver, será gerado um erro.
Parameters:
Name Type Description dateDate Data a ser avaliada.
startDate Data mínima permitida.
endDate Data máxima permitida.
-
module:@nginstack/engine/lib/date/dateCompare(referenceDate, compareDate [, timeSensitive])
-
Compara duas datas e retorna 0 se forem iguais, um número negativo se a primeira for menor que a segunda e um positivo no caso contrário.
Por padrão, serão considerados apenas ano, mês e dia na comparação, mas esse comportamento pode ser alterado informando
trueno parâmetrotimeSensitive, aumentando a precisão para milissegundos. Para fins de comparação, valores nulos são considerados inferiores que qualquer data válida.Esta função também é publicada como
ngin.date.compare()no escopo global e é uma alternativa compatível com runtime V8 ao métodoDate.prototype.compare(), implementado apenas no runtime Ije.Parameters:
Name Type Argument Description referenceDateDate Data que será comparada.
compareDateDate Data contra a qual
referenceDateserá comparada.timeSensitiveboolean <optional>
Determina se a parte de tempo (horas, minutos, segundos e milissegundos) será considerada na comparação. Por padrão será
false.Returns:
Será retornado um número negativo se
referenceDatefor menor quecompareDate, positivo se for maior e zero se forem iguais.- Type
- number
-
module:@nginstack/engine/lib/date/fieldsToDate(date, hours)
-
Cria uma data a partir de data e hora que são obtidos do banco de dados.
Parameters:
Name Type Description dateDate Data obtida do banco de dados.
hoursstring Hora obtida do banco de dados, no formato hh:nn:ss. Considera 00:00:00 por padrão caso a hora esteja vazia.
Returns:
Data com hora definida ou null caso a data recebida como entrada seja vazia.
- Type
- Date
-
module:@nginstack/engine/lib/date/firstMonthDayOf(date)
-
Recebe uma data e retorna o primeiro dia do mês referente aquela data.
Parameters:
Name Type Description dateDate Data a qual se deseja pegar o primeiro dia do mês.
Returns:
Retorna a data referente ao primeiro dia do mês da data original.
- Type
- Date
-
module:@nginstack/engine/lib/date/firstWeekDayOf(date)
-
Recebe uma data e retorna o primeiro dia da semana referente aquela data.
Parameters:
Name Type Description dateDate Data a qual se deseja pegar o primeiro dia da semana.
Returns:
Retorna a data referente ao primeiro dia da semana da data original.
- Type
- Date
-
module:@nginstack/engine/lib/date/formatDate(date [, opt_options])
-
Converte uma data para um formato desejado.
Parameters:
Name Type Argument Description dateDate Data.
opt_optionsObject <optional>
Opções.
Properties
Name Type Argument Description formatDateFormat <optional>
Formato desejado.
Returns:
Data no formato desejado.
- Type
- string
-
module:@nginstack/engine/lib/date/formatElapsedTime(time)
-
Formata o tempo decorrido exibindo-o em uma representação textual com a menor quantidade possível de dimensões da data. A escala é ajustada automaticamente de acordo o tamanho da duração a ser formatada. Por exemplo, se o time for em segundos, a duração apresentará os segundos e milissegundos decorridos. Se for em horas, apresentará as horas e minutos, suprimindo os detalhes de segundos e milissegundos.
Parameters:
Name Type Description timenumber Tempo em milissegundos.
Returns:
Tempo decorrido formatado conforme dimensão.
- Type
- string
Example
var formatElapsedTime = require('@nginstack/engine/lib/date/formatElapsedTime'); formatElapsedTime(2000) // Retorna 2 segs. formatElapsedTime(2500) // Retorna 2 segs e 500 ms. formatElapsedTime(50 * 60 * 60 * 1000 ) // Retorna 2 dias e 2 hrs. -
module:@nginstack/engine/lib/date/formatTime(time, stringFormat)
-
Retorna uma string representando um determinado tempo transcorrido no formato indicado, por exemplo, no formato hh:mm:ss.
Parameters:
Name Type Description timenumber Tempo transcorrido informado em milissegundos.
stringFormatstring String com o formato que se deseja para a apresentação do tempo transcorrido. Por exemplo, ao utilizar a string 'hh:nn:ss zzz', o retorno será uma string informando as horas, minutos, segundos e milissegundos do tempo informado no parâmetro time.
Returns:
O tempo informado, formatado conforme a opção de formatação utilizada.
- Type
- string
-
module:@nginstack/engine/lib/date/getInterval(startDate, startHour, endDate, endHour [, format])
-
Calcula o intervalo de tempo entre duas datas/horas e o retorna no formato informado na máscara.
Parameters:
Name Type Argument Description startDateDate Data inicial.
startHourstring Hora inicial.
endDateDate Data final.
endHourstring Hora final.
formatstring <optional>
Formato desejado do intervalo calculado. Valores possíveis: "dd", "hh", "hh:mm" ou "hh:mm:ss". Quando não for informado ou for o valor "dd", será retornado o número de dias. Nos demais casos, será retornada uma string no formato informado.
- Deprecated:
-
- Yes
Returns:
Intervalo entre as duas datas informadas. Será retornada uma string quando informado um formato ou o número de dias quando não for.
- Type
- string | number
-
module:@nginstack/engine/lib/date/getNumberOfDaysInMonth(year, month)
-
Retorna a quantidade de dias de um mês informado.
Parameters:
Name Type Description yearnumber Ano do mês informado.
monthnumber Mês a ser avaliado.
Returns:
Quantidade de dias do mês informado.
- Type
- number
-
module:@nginstack/engine/lib/date/getWeekNumber(year, month, date [, opt_weekDay] [, opt_firstDayOfWeek])
-
Calcula o número da semana segundo a ISO 8601.
Parameters:
Name Type Argument Description yearnumber Ano da data.
monthnumber Mês da data(0-11).
datenumber Dia da data (1-31).
opt_weekDaynumber <optional>
Dia da semana para corte da primeira semana do ano. Por padrão, será considerada a terça-feira conforme especificação.
opt_firstDayOfWeeknumber <optional>
Primeiro dia semana. Por padrão será considerado segunda-feira (segunda=0, domingo=6).
Returns:
Número da semana (1-53).
- Type
- number
-
module:@nginstack/engine/lib/date/incDate(date [, days])
-
Retorna a data incrementada em uma quantidade de dias.
Parameters:
Name Type Argument Description dateDate Data base.
daysnumber <optional>
Número de dias a ser incrementado à data base. Caso não seja informado, será considerado
1.Returns:
Data incrementada.
- Type
- Date
-
module:@nginstack/engine/lib/date/incMonth(date [, months])
-
Retorna a data incrementada em uma quantidade de meses. Caso o dia do mês atual não exista no mês resultante, a data será ajustada para o último dia do mês.
Parameters:
Name Type Argument Description dateDate Data base.
monthsnumber <optional>
Número de meses a ser incrementado a data base.
Returns:
Data incrementada em meses.
- Type
- Date
-
module:@nginstack/engine/lib/date/incYear(date [, opt_years])
-
Retorna a data incrementada na quantidade de anos informada.
Parameters:
Name Type Argument Description dateDate Data base.
opt_yearsnumber <optional>
Número de anos a ser incrementado a data base. Use valores negativos para decrementar a data base. Será considerado 1 caso não seja informado.
Returns:
Data incrementada na quantidade de anos informada.
- Type
- Date
-
module:@nginstack/engine/lib/date/isLeapYear(year)
-
Avalia se um dado ano é bissexto.
Parameters:
Name Type Description yearnumber Ano a ser avaliado.
Returns:
True se o ano informado for bissexto.
- Type
- boolean
-
module:@nginstack/engine/lib/date/parseDate(dateStr [, opt_options])
-
Cria uma data a partir de uma data formatada ou expressão.
Parameters:
Name Type Argument Description dateStrstring Data formatada ou expressão.
opt_optionsObject <optional>
Opções.
Properties
Name Type Argument Description formatDateFormat <optional>
Formato desejado.
rangeLimitLimit <optional>
Indica se o resultado da função representa início ou fim de um intervalo, atualmente só é suportado para formatos abrangentes como DateFormat.MMYYYY (mês/ano) ou DateFormat.WWYYYY(semana/ano). O desenvolvedor pode utilizar Limit.START para pegar o menor (ou Limit.END para o maior) dia dentro do intervalo determinado pelo formato.
baseDateDate <optional>
Data de onde será montada a data resultante, caso não seja informada será utilizada a data do dia corrente.
- See:
Returns:
Data obtida a partir da string informada. Será gerado um erro caso não seja possível converter a string em uma data.
- Type
- Date
-
module:@nginstack/engine/lib/date/parseISO8601Date(stringDate)
-
Converte uma string no formato ISO 8601 em uma data. Será retornado
nullse o valor informado não for uma data válida.Esta função trata as datas sem indicação de hora como datas locais, com as componentes de hora, minuto e segundo zeradas. Este comportamento difere da função
Date.parse()que utiliza o fuso horário zero UTC como referência dessas datas.Parameters:
Name Type Description stringDatestring deve ser formatada utilizando o padrão ISO8601.
- Deprecated:
-
- Utilize "new Date()" ou "Date.parse()".
Returns:
retorna o tipo primitivo com ISO8601 sugerido, em caso de erro retorna null.
- Type
- Date
Example
var parseISO8601Date = require('@nginstack/engine/lib/date/parseISO8601Date'); var dt = parseISO8601Date('2015-06-09T16:52:41Z'); -
module:@nginstack/engine/lib/date/setDateWithTimeString(date, string)
-
Seta a hora, minuto e segundo de uma data a partir de uma string hh:mm:ss. Função mantida apenas para fins de compatibilidade com códigos que faziam da função global setDateWithTimeString. Em códigos novos, prefira utilizar module:@nginstack/engine/lib/date/fieldsToDate.
Parameters:
Name Type Description dateDate Data base.
stringstring String no formato hh:mm:ss para ser setado na data base.
- Deprecated:
Returns:
- Type
- Date
-
module:@nginstack/engine/lib/date/truncateTimePart(date)
-
Retorna uma nova data a partir
date, com a sua parte de tempo zerada, ou seja, com zero horas, minutos, segundos e milissegundos.Esta função tem o objetivo de antecipar a truncagem realizada na gravação de colunas do tipo "date" no banco de dados.
Observação: no runtime V8, quando a data a ser truncada é o início do horário de verão, poderá ser retornada uma data com uma hora em vez de zero. Nesse dia específico, não há uma data válida com zero horas, pois o horário é adiantado em um hora a partir de meia-noite.
Parameters:
Name Type Description dateDate Data base que terá a sua parte de tempo truncada.
Returns:
Nova data com a parte de tempo truncada.
- Type
- Date
Example
const truncateTimePart = require('@nginstack/engine/lib/date/truncateTimePart'); const dt = new Date(2019, 4, 21, 9, 51, 12, 789); truncateTimePart(dt); // => 'Ter Mai 21 2019 00:00:00 GMT-0300 (Hora Padrão de Brasília)' -
module:@nginstack/engine/lib/encoding/numberToHex(num)
-
Converte um number para sua representação em hexadecimal.
Observação: diferentemente das classes
SHA256eSHA512, esta função retorna a representação hexadecimal utilizando letras maiúsculas. Essa diferença de comportamento foi preservada a fim de garantir o funcionamento dos códigos existentes, mas ela pode ser eliminada no futuro. É recomendado que o resultado deste método seja convertido para o formato desejado utilizando os métodostoUpperCase()outoLowerCase().Parameters:
Name Type Description numnumber Número a ser convertido para hexadecimal.
Returns:
Representação do parâmetro num em hexadecimal.
- Type
- string
-
module:@nginstack/engine/lib/format/formatFileSize(bytes [, opt_decimals])
-
Formata o número de bytes de uma forma amigável para humanos, como 54, 450K, 1.3M, 5G etc.
Parameters:
Name Type Argument Description bytesnumber Número de bytes a serem formatados.
opt_decimalsnumber <optional>
Quantidade de casas decimais. O padrão é 2.
Returns:
Tamanho em bytes formatado.
- Type
- string
-
module:@nginstack/engine/lib/format/numBytesToString(val [, opt_decimals] [, opt_suffix])
-
Converte o número de bytes em uma representação textual utilizando a convenção binária de escalas utilizando potências de 1024.
Por padrão será adicionado o sufixo "B", como '10.5KB', para evitar a confusão com valores com escalas que sejam potências de 1000.
Parameters:
Name Type Argument Description valnumber Valor a ser formatado.
opt_decimalsnumber <optional>
Quantidade de casas decimais. O padrão é 2.
opt_suffixboolean <optional>
Se true, inclui o sufixo "B" na string retornada. Por padrão é true.
Returns:
Número de bytes formatados.
- Type
- string
-
module:@nginstack/engine/lib/format/numericValueToString(val [, opt_decimals])
-
Converte um valor numérico e sua representação textual utilizando as escalas do Sistema Internacional de Unidades para criar uma representação compacta do valor.
Parameters:
Name Type Argument Description valnumber Valor a ser formatado.
opt_decimalsnumber <optional>
Quantidade de casas decimais. O padrão é 2.
Returns:
Número de bytes formatados.
- Type
- string
-
module:@nginstack/engine/lib/geo/formatAngle(val, format)
-
Formata o valor de um ângulo para uma expressão.
Parameters:
Name Type Description valnumber Valor do ângulo.
formatAngleFormat | number Formato desejado para gerar a expressão para o ângulo
Returns:
Ângulo formatado.
- Type
- string
-
module:@nginstack/engine/lib/geo/formatLatitude(val, format)
-
Formata a latitude de graus decimais para uma expressão no formato solicitado.
Parameters:
Name Type Description valnumber Valor em graus decimais da latitude.
formatmodule:@nginstack/engine/lib/geo/LatitudeFormat~LatitudeFormat | number Formato da expressão de latitude desejada.
Returns:
Expressão de latitude formatada.
- Type
- string
-
module:@nginstack/engine/lib/geo/formatLongitude(val, format)
-
Formata longitude de graus decimais para uma expressão no formato solicitado.
Parameters:
Name Type Description valnumber Valor em graus decimais da longitude.
formatmodule:@nginstack/engine/lib/geo/LongitudeFormat~LongitudeFormat | number Formato da expressão de longitude desejada.
Returns:
Expressão de longitude formatada.
- Type
- string
-
module:@nginstack/engine/lib/geo/parseAngle(val, format)
-
Converte uma expressão de ângulo para um valor.
Parameters:
Name Type Description valstring Expressão do ângulo.
formatAngleFormat | number Formato desejado para gerar o valor para o ângulo
Returns:
Valor do ângulo.
- Type
- number
-
module:@nginstack/engine/lib/geo/parseLatitude(val, format)
-
Analisa uma expressão de latitude em qualquer formato válido definido em module:@nginstack/engine/lib/geo/LatitudeFormat para graus decimais.
Parameters:
Name Type Description valstring Expressão da latitude a ser convertida para graus decimais.
formatLatitudeFormat | number Formato da expressão.
Returns:
Latitude em graus decimais.
- Type
- number
-
module:@nginstack/engine/lib/geo/parseLongitude(val, format)
-
Analisa uma expressão de longitude em qualquer formato válido definido em module:@nginstack/engine/lib/geo/LongitudeFormat para graus decimais.
Parameters:
Name Type Description valstring Expressão da longitude a ser convertida para graus decimais.
formatmodule:@nginstack/engine/lib/geo/LongitudeFormat~LongitudeFormat | number Formato da expressão.
Returns:
Longitude em graus decimais.
- Type
- number
-
module:@nginstack/engine/lib/global/exportSymbol(publicPath, object [, opt_objectToExportTo])
-
Expõe um caminho alternativo para o objeto informado.
Parameters:
Name Type Argument Description publicPathstring Caminho para o objeto.
object* Objeto que será apontado pelo caminho informado.
opt_objectToExportToObject <optional>
O objeto onde será adicionado o caminho. Por padrão será considerado o objeto global.
-
module:@nginstack/engine/lib/hash/superFastHash(str)
-
Executa o algoritmo SuperFastHash.
Parameters:
Name Type Description strstring String que será utilizada pelo algoritmo SuperFastHash para gerar um hash correspondente.
Returns:
Hash gerado a partir da string informada no parâmetro.
- Type
- number
-
module:@nginstack/engine/lib/image/getMainImageUrl(key [, options])
-
Retorna a URL da imagem configurada como principal do registro. Caso não tenha imagem configurada como principal, retornará a primeira encontrada no vínculo, desde que não seja informada a opção "strictSearch".
Parameters:
Name Type Argument Description keynumber Chave do registro que deseja capturar a imagem.
optionsObject <optional>
Opções de obtenção da imagem.
Properties
Name Type Description strictSearchboolean Indica se deve trazer apenas a imagem sinalizada como padrão.
Returns:
URL da imagem, null caso não exista imagem.
- Type
- string
-
module:@nginstack/engine/lib/math/decimalRound(x, digits [, mode])
-
Arredonda um número com ponto flutuante.
Esta função também é publicada como
ngin.math.decimalRound()no escopo global.Parameters:
Name Type Argument Description xnumber Número a ser arredondado.
digitsnumber Quantidade máxima de casas decimais do número arredondado.
modenumber <optional>
Modo de arredondamento. Valores possíveis:
RoundingMode.HALF_EVEN - Arredonda para o decimal mais próximo ou mantém o mesmo dígito;
RoundingMode.HALF_ODD - Arredonda para o decimal mais próximo ou para o dígito ímpar;
RoundingMode.HALF_POSITIVE - Arredonda para o decimal mais próximo ou para o maior valor mais próximo;
RoundingMode.HALF_NEGATIVE - Arredonda para o decimal mais próximo ou para o menor valor mais próximo;
RoundingMode.HALF_DOWN - Arredonda para o decimal mais próximo ou em direção a zero (truncamento);
RoundingMode.HALF_UP - Arredonda para o decimal mais próximo ou para longe do zero;
RoundingMode.FLOOR - Arredonda para o menor valor decimal mais próximo;
RoundingMode.CEILING - Arredonda para o maior valor decimal mais próximo;
RoundingMode.DOWN - Arredonda em direção a zero (truncamento);
RoundingMode.UP - Arredonda para longe de zero;
Valor padrão: RoundingMode.HALF_POSITIVE.Returns:
Valor arredondado.
- Type
- number
-
module:@nginstack/engine/lib/math/isInteger(num)
-
Avalia se o número informado representa um número inteiro, sem uma parte fracional.
Parameters:
Name Type Description numnumber Número a ser testado.
Returns:
True se o valor informado for um inteiro.
- Type
- boolean
-
module:@nginstack/engine/lib/math/isNumber(value)
-
Indica se o valor informado é um número ou se pode ser convertido para um.
Parameters:
Name Type Description value* Valor a ser verificado.
Returns:
True se o valor for um número ou se puder ser convertido para um.
- Type
- boolean
-
module:@nginstack/engine/lib/math/isZero(x, precisionTolerance)
-
Verifica se um número pode ser considerado igual a zero. Compara o número com a faixa de precisão especificada, se for menor então ele pode ser considerado igual a zero.
Esta função também é publicada como
ngin.math.isZero()no escopo global.Parameters:
Name Type Description xnumber Valor a ser comparado com a faixa de precisão.
precisionTolerancenumber Valor limite aceito.
Returns:
True se o número for menor que a faixa de precisão.
- Type
- boolean
Example
const isZero = require('@nginstack/engine/lib/math/isZero'); isZero(0.1, 0.001); // Retorna false ngin.math.isZero(2, 4); // Retorna true -
module:@nginstack/engine/lib/math/round(number, nDecimals)
-
Arredonda um número para a quantidade de casas decimais definidas.
Essa função é mantida apenas para compatibilidade com códigos antigos que fazem uso da função global round. Ela não deve ser utilizada em novos códigos e é sugerida a sua substituição pela module:@nginstack/engine/lib/math/decimalRound.
Parameters:
Name Type Description numbernumber Número a ser arredondado.
nDecimalsnumber Quantidade de casas decimais de precisão.
- Deprecated:
Returns:
Número arredondado.
- Type
- number
-
module:@nginstack/engine/lib/math/trunc(value, nDecimals)
-
Trunca um valor com precisão decimal.
Essa função é mantida apenas para compatibilidade com códigos antigos que fazem uso da função global round. Ela não deve ser utilizada em novos códigos e é sugerida a sua substituição pela module:@nginstack/engine/lib/math/decimalRound.
Parameters:
Name Type Description valuenumber Número a ser truncado.
nDecimalsnumber Quantidade de casas decimais de precisão.
- Deprecated:
Returns:
Número truncado.
- Type
- number
-
module:@nginstack/engine/lib/mime/guessFileMimeType(fileName [, content])
-
Descobre o tipo de um arquivo a partir do seu nome ou conteúdo.
Parameters:
Name Type Argument Description fileNamestring Nome ou caminho completo do arquivo.
contentstring | ArrayBuffer <optional>
Conteúdo do arquivo. Deve ser informado, caso o nome informado não seja um arquivo do sistema operacional.
Returns:
Retorna a chave do tipo do arquivo ou nulo se não conseguir identificar o tipo.
- Type
- DBKey
-
module:@nginstack/engine/lib/mime/isTextualType(mediaType)
-
Recebe um media type e retorna verdadeiro caso o mesmo seja textual.
Serão considerados textuais todos os tipos de mídia cadastrados na classe Mime Types (-1898187808) que não tenham a configuração "Codificado em Base64" ativa. Caso seja informado um tipo de mídia não cadastrado, será realizada uma heurística com base no subtipo de mídia e terminação de indicativo de tipo (+xml ou +json).
Parameters:
Name Type Description mediaTypeDBKey | number | string DBKey, chave numérica ou código de um media type.
Returns:
True se o tipo for textual.
- Type
- boolean
-
module:@nginstack/engine/lib/net/downloadFile(url, path [, ignoreSslErrors])
-
Possibilita download de arquivos por HTTP. Permite que se faça o download de grandes arquivos sem consumir muita memória, pois é feita gravação direta para o disco.
Parameters:
Name Type Argument Description urlstring Localização do arquivo na internet.
pathstring Local onde o arquivo será salvo.
ignoreSslErrorsboolean <optional>
Indica se certificados de segurança devem ser validados. Caso não seja informado, será considerado false.
-
module:@nginstack/engine/lib/number/formatNumber(value, options)
-
Converte um número para o formato desejado.
Parameters:
Name Type Description valuenumber Valor a ser formatado.
optionsFormatOptions Opções para formatação.
- See:
-
- module:@nginstack/engine/lib/number/NumberFormat~NumberFormat
Returns:
Número formatado como string.
- Type
- string
-
module:@nginstack/engine/lib/number/parseNumber(value [, options])
-
Converte string para número.
Parameters:
Name Type Argument Description valuestring String a ser convertida
optionsParseOptions <optional>
Opções de parsing
Returns:
Número convertido ou NaN se inválido
- Type
- number
-
module:@nginstack/engine/lib/object/deepClone(object)
-
Clona um mapa de valores ou um array. Ele não deve ser utilizado com instâncias de uma classe, pois o objeto retornado não terá o mesmo protótipo. Se os valores do mapa forem objetos com o método "clone", esse método será utilizado para duplicar o objeto.
Esta função não suporta referências circulares entre as propriedades de object. Para evitar uma recursão infinita, este método é limitado em 10000 cópias ou duplicações de valores. Ao atingir esse limite, será gerado um erro.Parameters:
Name Type Description objectRecord.<*, *> | Array Objeto a ser clonado.
Returns:
Clone.
- Type
- Record.<*, *> | Array
-
module:@nginstack/engine/lib/object/deserialize(str)
-
Recria um objeto serializado pela função module:@nginstack/engine/lib/object/serialize.
Parameters:
Name Type Description strstring Objeto serializado.
- Deprecated:
-
- Utilize JSON.
Returns:
Objeto restaurado a partir dos dados serializados.
- Type
- *
-
module:@nginstack/engine/lib/object/every(obj, f [, opt_obj])
-
Chama a função para cada elemento em um objeto, mapa ou hash. Se a chamada retornar false, retorna imediatamente com esse resultado sem checar o restante dos elementos. Retorna true apenas se todas as chamadas retornarem true.
Parameters:
Name Type Argument Description objObject Objeto a ser iterado.
ffunction Função que será chamada para cada elemento. A função receberá 3 argumentos: o elemento, o nome da propriedade e o objeto iterado. Ela deve retorna um valor booleano.
opt_objObject <optional>
O valor informado será o 'this' dentro da função chamada.
Returns:
True se todas as chamadas retornarem true.
- Type
- boolean
-
module:@nginstack/engine/lib/object/filter(obj, f [, opt_obj])
-
Chama a função para cada elemento no objeto/mapa. Se a chamada retornar true, adiciona o elemento para o novo objeto retornado por esta função.
Parameters:
Name Type Argument Description objObject Objeto a ser iterado.
ffunction A função chamada para cada elemento. Ela receberá 3 argumentos (o elemento, o nome da propriedade e o objeto iterado) e deverá retornar um booleano. Se o valor retornado for true, o elemento será adicionado no objeto resultante. Se falso, o valor não será incluído.
opt_objObject <optional>
Objeto a ser utilizado como 'this' dentro de f.
Returns:
Novo objeto com os elementos que satisfazem o filtro informado.
- Type
- Object
-
module:@nginstack/engine/lib/object/forEach(obj, f [, opt_obj])
-
Chama a função para cada elemento do objeto/mapa/hash.
Parameters:
Name Type Argument Description objObject Objeto a ser iterado.
ffunction A função que será chamada para cada elemento. Essa função recebe 3 argumentos (o valor do elemento, a chave do elemento e o objeto iterado). O resultado da função é irrelevante e será ignorado.
opt_objObject <optional>
Valor a ser utilizado como this na execução da função.
-
module:@nginstack/engine/lib/object/hideFunctionSources(object)
-
Substitui todas as propriedades de obj e de obj.prototype que contenham funções por uma nova função que não possui o código-fonte acessível pelo método toString.
Parameters:
Name Type Description objectObject Objeto a ter o acesso ao código-fonte das funções via método toString inibido.
-
module:@nginstack/engine/lib/object/inherits(childConstructor, parentConstructor)
-
Herda os métodos do protótipo de um construtor em um outro.
Esta função também é disponibilizada como
ngin.inherits(), sendo preferível essa forma de uso em scripts da Virtual File System que não são módulos JavaScript.Parameters:
Name Type Description childConstructorfunction Classe filha.
parentConstructorfunction Classe mãe.
Examples
const inherits = require('@nginstack/engine/lib/object/inherits'); function ParentClass(a, b) { } ParentClass.prototype.foo = function(a) { }; function ChildClass(a, b, c) { ParentClass.call(this, a, b); } inherits(ChildClass, ParentClass); const child = new ChildClass('a', 'b', 'see'); child.foo(); // works// A implementação de um método da superclasse pode ser invocado como segue: ChildClass.prototype.foo = function(a) { ChildClass.superClass_.foo.call(this, a); // other code }; -
module:@nginstack/engine/lib/object/isEmpty(obj)
-
Verifica se o objeto/mapa/hash está vazio.
Parameters:
Name Type Description objObject Objeto a ser verificado.
Returns:
True se o objeto estiver vazio.
- Type
- boolean
-
module:@nginstack/engine/lib/object/isObject(val)
-
Retorna true se o valor especificado for um objeto, incluindo arrays e funções.
Parameters:
Name Type Description val* Variável a ser testada.
Returns:
True se a variável for um objeto.
- Type
- boolean
-
module:@nginstack/engine/lib/object/map(obj, f [, opt_obj])
-
Para cada elemento em um objeto/mapa/hash chama uma função e insere o resultado em um novo objeto com a mesma chave.
Parameters:
Name Type Argument Description objObject Objeto que será iterado.
ffunction A função que será chamada para cada elemento. Essa função recebe 3 argumentos (o valor do elemento, a chave do elemento e o objeto iterado) e deve retornar um valor. O retorno será inserido no resultado.
opt_objObject <optional>
Valor a ser utilizado como this na execução da função.
Returns:
Um novo objeto com os resultados da função informada.
- Type
- Object
-
module:@nginstack/engine/lib/object/reduce(obj, func, val [, opt_obj])
-
Passa cada elemento do mapa para uma função e acumula o resultado.
Parameters:
Name Type Argument Description objObject O mapa que será iterado.
funcfunction A função que será executada para cada elemento. Esta função irá receber 4 argumentos: o valor anterior ou o inicial, o elemento do mapa, a chave do mapa e o mapa. Exemplo:
function (previousValue, value, key, obj).
valObject O valor inicial passado para a função f na primeira iteração.
opt_objObject <optional>
O objeto que será utilizado como o valor de 'this' dentro de f.
Returns:
Resultado de avaliar f repetidamente para todos os elementos do array.
- Type
- *
Example
var reduce = require('@nginstack/engine/lib/object/reduce'); // O código abaixo var obj = { nome: 'José', idade: 31 }; var valores = []; var p; for (var p in obj) { valores.push(obj[p]); } // Pode ser simplificado para: var obj = { nome: 'José', idade: 31 }; var resultado = reduce(obj, function (r, v) { r.push(v); return r; }, []); -
module:@nginstack/engine/lib/object/serialize(v)
-
Cria uma representação textual de um objeto que pode ser posteriormente restaurado pela função module:@nginstack/engine/lib/object/deserialize.
Parameters:
Name Type Description v* Objeto a ser serializado.
- Deprecated:
-
- Utilize JSON.
Returns:
Representação textual do objeto.
- Type
- string
-
module:@nginstack/engine/lib/object/some(obj, f [, opt_obj])
-
Chama a função para cada elemento em um objeto, mapa ou hash. Se a chamada retornar true, retorna imediatamente com esse resultado sem checar o restante dos elementos. Retorna false apenas se todas as chamadas retornarem false.
Parameters:
Name Type Argument Description objObject Objeto a ser iterado.
ffunction Função que será chamada para cada elemento. A função receberá 3 argumentos: o elemento, o nome da propriedade e o objeto iterado. Ela deve retorna um valor booleano.
opt_objObject <optional>
O valor informado será o 'this' dentro da função chamada.
Returns:
True se ao menos uma das chamadas retornar true.
- Type
- boolean
-
module:@nginstack/engine/lib/phone/parsePhone(phone)
-
Interpreta o valor informado como um número de telefone ou uma lista de números de telefones e retorna um array de
Parameters:
Name Type Description phone* -
module:@nginstack/engine/lib/product/applyDisablingProductKeyCreation(func [, opt_thisObj])
-
Executa a função garantindo que todas as chaves criadas serão positivas, ou seja, que não farão parte de um produto ou da faixa de chaves de customização, independente da configuração global de geração de chaves, configurada pela propriedade Session#createKeyLicense.
Parameters:
Name Type Argument Description funcfunction Função que será executada.
opt_thisObjObject <optional>
Valor do this no contexto da função executada.
Returns:
Retorno da função executada.
- Type
- *
-
module:@nginstack/engine/lib/product/canRelateKeys(key, foreignKey)
-
Indica se uma relação entre duas chaves é válida, levando em consideração as dependências entre suas licenças.
Parameters:
Name Type Description keynumber A chave do registro que aponta para outro.
foreignKeynumber O registro apontado por
. Returns:
Valor que indica a validade do relacionamento.
- Type
- boolean
-
module:@nginstack/engine/lib/product/getChangeableProducts()
-
Obtém todos os produtos que estão habilitados para desenvolvimento na base corrente.
Returns:
As chaves dos produtos habilitados.
- Type
- Array.<number>
-
module:@nginstack/engine/lib/product/getDependencies(productKey)
-
Retorna todos os produtos requeridos em uma base de dados para que o produto informado possa ser utilizado.
Parameters:
Name Type Description productKeynumber Chave do produto que terá as dependências consultadas.
Returns:
Chaves dos produtos das quais o produto informado depende.
- Type
- Array.<number>
-
module:@nginstack/engine/lib/product/getProductFromKey(key)
-
Obtém a chave do produto ao qual uma chave pertence.
Parameters:
Name Type Description keynumber A chave cujo produto se deseja obter.
- Deprecated:
Returns:
A chave do produto ao qual a chave pertence. Se a chave informada for positiva, será retornado um valor nulo.
- Type
- number
-
module:@nginstack/engine/lib/progress/applyWithIndeterminateProgress(taskName, func [, opt_thisObj])
-
Executa a função informada gerando informações de progresso indeterminado para a interface do sistema. Um progresso indeterminado não exibirá um percentual de conclusão, apenas indicando que a tarefa está em execução.
A função informada func receberá como parâmetro a função worked, que opcionalmente poderá ser chamada para indicar que houve uma evolução na tarefa.
Parameters:
Name Type Argument Description taskNamestring Nome da tarefa.
funcfunction Função com a atividade que será executada com geração do progresso.
opt_thisObjObject <optional>
Valor de this no contexto da função func.
Returns:
Retorno da função informada em func.
- Type
- *
Example
const applyWithIndeterminateProgress = require('@nginstack/engine/lib/progress/applyWithIndeterminateProgress'); const version = applyWithIndeterminateProgress('Gravando alterações', function () { return ds.applyUpdates(); }); -
module:@nginstack/engine/lib/progress/applyWithProgress(taskName, totalWork, func [, opt_thisObj])
-
Executa a função informada gerando informações de progresso determinado para a interface do sistema. Um progresso determinado exibirá um percentual de conclusão.
A função informada func receberá como parâmetro a função worked, que deverá ser chamada para indicar que houve uma evolução na tarefa. A função worked deverá ser executada tantas vezes quanto indicado em totalWork.Parameters:
Name Type Argument Description taskNamestring Nome da tarefa.
totalWorknumber Indica quantas vezes a função worked será chamada por func.
funcfunction Função com a atividade que será executada com geração do progresso.
opt_thisObjObject <optional>
Valor de this no contexto da função func.
Returns:
Retorno da função informada em func.
- Type
- any
Example
var applyWithProgress = require('@nginstack/engine/lib/progress/applyWithProgress'); var sum = applyWithProgress('Totalizando dados', ds.recordCount, function (worked) { var sum = 0; for (ds.first(); !ds.eof; ds.next()) { sum += ds.valor * ds.fator; worked(); } return sum; }); -
module:@nginstack/engine/lib/regexp/findFirstMatch(text, exp)
-
Primeiro resultado de uma busca em um texto aplicando uma expressão regular.
Parameters:
Name Type Description textstring Texto que será pesquisado.
expRegex | string Expressão regular utilizada para a busca.
Returns:
Primeiro resultado ou string vazia.
- Type
- string
-
module:@nginstack/engine/lib/regexp/findMatches(text, exp)
-
Todos os resultados de uma busca em um texto aplicando uma expressão regular.
Parameters:
Name Type Description textstring Texto que será pesquisado
expRegex | string Expressão regular utilizada para a busca.
Returns:
Todos os resultado encontrados.
- Type
- Array.<string>
-
module:@nginstack/engine/lib/regexp/replaceAll(text, exp, replacement)
-
Realiza uma substituição na string, usando expressões regulares.
Parameters:
Name Type Description textstring A string na qual ocorrerá a substituição.
expstring | Regex A expressão regular a ser utilizada.
replacementstring A string a ser inserida onde houver um match.
Returns:
Uma nova string resultante da substituição da expressão na original informada.
- Type
- string
-
module:@nginstack/engine/lib/runner/executeScript(scriptReference [, parametersNames] [, parametersValues])
-
Executa um script no Engine que está executando a sessão corrente.
Parameters:
Name Type Argument Description scriptReferencenumber | string Chave do script da VFS que deve ser executado ou caminho do script da UFS.
parametersNamesObject <optional>
Array contendo o nome do parâmetro e o seu valor ([parameterName, parameterValue]) que pode ser repetido várias vezes.
parametersValues* <optional>
<repeatable>
- Deprecated:
Example
const executeScript = require('@nginstack/engine/lib/runner/executeScript'); executeScript(585858, 'codigoEntidade', codEntidade, 'data', new Date()); executeScript(585858, ['codigoEntidade', 'data'], [codEntidade, new Date()]); executeScript('ufs:/engine_modules/package/scripts/script.js'); -
module:@nginstack/engine/lib/string/adjustCase(s, caseType)
-
Ajusta a caixa das palavras de acordo com o padrão desejado. Tipos suportados:
- upper: todo o texto será convertido para caixa alta.
- lower: todo o texto será convertido para caixa baixa.
- name ou mixed: cada palavra será iniciada com uma letra maiúscula exceto as preposições mais comuns utilizadas em nomes próprios. Atualmente não são capitalizadas as preposições "of", "da", "do", "de", "dos" e "das".
- title: cada palavra com mais de uma letra será iniciada com maiúscula, exceto as preposições mais comuns em títulos.
- statement: cada palavra que inicie um parágrafo será iniciada com letra maiúscula.
Parameters:
Name Type Description sstring Texto a ser o case ajustado.
caseTypestring Tipo de case desejado.
Returns:
Texto com o case ajustado.
- Type
- string
-
module:@nginstack/engine/lib/string/capitalize(str)
-
Retorna uma cópia da string com a primeira letra em "UpperCase" preservando o "case" do restante da string.
Parameters:
Name Type Description strstring String que será definida com a primeira letra em "UpperCase".
Returns:
String que terá a primeira letra em "UpperCase".
- Type
- string
-
module:@nginstack/engine/lib/string/escapeRegExp(str)
-
Substitui os caracteres especiais de uma expressão regular pelas suas representações literais por meio de sequências de escape. Esta função foi descontinuada, utilizar
Regex.escape.Parameters:
Name Type Description strstring String a ter os caracteres especiais substituídos por uma sequência de escape.
- Deprecated:
-
- Yes
- See:
Returns:
String com caracteres especiais substituídos por uma sequência de escape.
- Type
- string
Example
const escapeRegExp = require('@nginstack/engine/lib/string/escapeRegExp'); escapeRegExp('.?'); // => '\\.\\?' -
module:@nginstack/engine/lib/string/formatNumber(str)
-
Formata um número com um determinado número de casas decimais, arredondando se necessário.
Essa função é mantida apenas para compatibilidade com códigos antigos que fazem uso da função global formatNumber. Ela não deve ser utilizada em novos códigos.
Parameters:
Name Type Description strstring Texto a ser convertido em um número.
- Deprecated:
Returns:
Número inteiro convertido a partir de str.
- Type
- number
-
module:@nginstack/engine/lib/string/formatNumberPrecision(value, decimalPrecision, minPrecision, maxPrecision)
-
Formata o valor informado em um texto utilizando uma faixa de precisão.
Parameters:
Name Type Description valuenumber Valor a ser formatado.
decimalPrecisionnumber Precisão decimal padrão.
minPrecisionnumber Mínimo de precisão decimal a formatar.
maxPrecisionnumber Máximo de precisão decimal a formatar.
Returns:
Número formatado.
- Type
- string
-
module:@nginstack/engine/lib/string/formatString(format, var_args)
-
Objeto que realiza conversões similares ao sprintf, ou seja, preenche valores sobre um template. Não é recomendado seu uso em casos simples que tenham conversões embutidas, como por exemplo 'foo: %.2f', pois um caso como esse é resolvido com melhor performance na forma 'foo: ' + bar.toFixed(2).
Parameters:
Name Type Description formatstring O template que contém os especificadores.
var_argsstring | number Os valores para preencher sobre o template.
- Deprecated:
-
- Utilize module:module:@nginstack/engine/lib/string/toFormattedString.
Returns:
A string formatada.
- Type
- string
-
module:@nginstack/engine/lib/string/htmlString()
-
Obtém o valor da String e retorna uma String, substituindo os caracteres especiais (como por exemplo o "ç") pelo padrão HTML ISO Latin-1, com o objetivo de manter a compatibilidade e legibilidade nos browsers.
- Deprecated:
Returns:
Código HTML na codificação ISO Latin-1.
- Type
- string
Example
const htmlString = require('@nginstack/engine/lib/string/htmlString') toHtmlString('mãe'); // 'mãe' -
module:@nginstack/engine/lib/string/identifierToName(identifier)
-
Obtém um nome de exibição a partir de um identificador JavaScript. Essa função busca realizar o inverso da função module:@nginstack/engine/lib/nameToIdentifier.
Parameters:
Name Type Description identifierstring Identificar a ser utilizado com base para o nome a ser gerado.
Returns:
Nome gerado a partir do identificador.
- Type
- string
-
module:@nginstack/engine/lib/string/indexOfChars(str, chars [, index])
-
Busca por vários caracteres em uma String.
Parameters:
Name Type Argument Description strstring String onde será realizada a busca.
charsArray.<string> Caracteres que serão procurados em str.
indexnumber <optional>
Índice do primeiro caractere da string str, a partir do qual a busca é realizada.
Returns:
Índice do primeiro caractere presente no array achado em str, ou -1 se nenhum caractere foi encontrado.
- Type
- number
-
module:@nginstack/engine/lib/string/match(str, pattern)
-
Verifica se uma string corresponde ao padrão informado, ignorando acentos e não diferenciando letras maiúsculas de minúsculas.
Essa função implementa o mesmo algoritmo de comparação do método
String.prototype.matchquando utilizado o runtime JavaScript Ije. Nesse runtime, o padrão não é descrito por uma expressão regular, e sim por meio de um formato legado e proprietário onde a expressão..é equivalente ao%do operador LIKE da linguagem SQL. Ela deve ser utilizada em códigos que precisem manter o comportamento legado do método match no runtime V8.Parameters:
Name Type Description strstring String que será verificada.
patternstring Padrão que será verificado.
Returns:
Retorna
truese a string possui o padrão informado.- Type
- boolean
Example
const match = require('@nginstack/engine/lib/string/match.js'); match('Bob has a table', '..has a..'); // => // true match('Bob has a table', 'Bob..'); // => // true match('Bob has a table', 'Bob..table'); // => // true match('Bob has a table', '..TABLE'); // => // true match('Bob has a table', 'Bob'); // => // false match('Bob has a table', 'bob has a table'); // => // true -
module:@nginstack/engine/lib/string/nameToIdentifier(name [, opt_capitalize] [, opt_preserveCaseIfOnlyAWord])
-
Converte um nome em um identificador JavaScript válido para ser a propriedade de um objeto ou uma variável global.
Parameters:
Name Type Argument Description namestring Nome a ser convertido.
opt_capitalizeboolean <optional>
Indica se deve retornar a primeira letra em maiúscula.
opt_preserveCaseIfOnlyAWordboolean <optional>
Indica se deve ser preservada a caixa das letras caso seja informada uma única palavra.
Returns:
Identificador gerado a partir do nome.
- Type
- string
-
module:@nginstack/engine/lib/string/onlyNumbers(s)
-
Retorna uma string contendo apenas os caracteres numéricos da string informada.
Parameters:
Name Type Description sstring Texto a ser filtrado.
Returns:
Nova string contendo apenas os caracteres numéricos da string informada.
- Type
- string
-
module:@nginstack/engine/lib/string/padNumber(num, length [, opt_precision])
-
Complementa a parte inteira do número com zeros até atingir o tamanho desejado e opcionalmente aumenta ou arredonda a precisão para o valor informado.
Parameters:
Name Type Argument Description numnumber O valor numérico que será complementado.
lengthnumber O tamanho desejado.
opt_precisionnumber <optional>
A precisão informada.
Returns:
num como uma string com as dadas opções.
- Type
- string
Example
var padNumber = require('@nginstack/engine/lib/string/padNumber'); padNumber(1.25, 2, 3); // '01.250' padNumber(1.25, 2); // '01.25' padNumber(1.25, 2, 1); // '01.3' padNumber(1.25, 0); // '1.25' -
module:@nginstack/engine/lib/string/padString(content, size [, align] [, padChar])
-
Complementa o conteúdo informado com padChar até atingir o tamanho desejado, alinhando-o com base em align.
Parameters:
Name Type Argument Description contentstring Texto a ser complementado.
sizesize Tamanho da string desejada.
alignstring <optional>
Alinhamento de content dentro da string retornada. Valores possíveis: 'left', 'right' ou 'center'. Será considerado 'left' caso não seja informado.
padCharstring <optional>
String que será utilizada para complementar content até atingir o tamanho size. Ela sempre deve ter tamanho 1.
Returns:
O conteúdo informado complementado com padChar até atingir o tamanho size.
- Type
- string
-
module:@nginstack/engine/lib/string/removeAccents(str)
-
Retornar uma copia normalizada da string com todos os caracteres sem acentos.
Parameters:
Name Type Description strstring String a ser normalizada.
Returns:
String normalizada.
- Type
- string
-
module:@nginstack/engine/lib/string/removeAt(s, index, stringLength)
-
Remove uma substring de um determinado tamanho na posição informada.
Parameters:
Name Type Description sstring A string da qual será removida uma parte.
indexnumber A posição da qual será removida a substring.
stringLengthnumber O tamanho da substring a ser removida.
Returns:
Uma cópia de s sem a substring ou a string completa caso nada for removido ou se s não for uma string.
- Type
- string
-
module:@nginstack/engine/lib/string/removeChars(str, arrayChar)
-
Remove de uma string um ou mais caracteres desejados.
Parameters:
Name Type Description strstring String de onde serão removidos os caracteres.
arrayCharArray.<string> Array de caracteres que serão removidos da string.
Returns:
String sem os caracteres informados.
- Type
- string
Example
var removeChars = require('@nginstack/engine/lib/string/removeChars'); var str = "Você conhece, a empresa?"; var arrayChar = ['?', ',', 'V']; removeChars(str, arrayChar); -
module:@nginstack/engine/lib/string/removeLineBreaks(str)
-
Remove as quebras de linha de uma string.
Parameters:
Name Type Description strstring A string da qual se desejam remover as quebras de linha.
Returns:
String correspondente a informada, mas sem as quebras de linha. As quebras de linha serão substituídas por um caractere de espaço.
- Type
- string
-
module:@nginstack/engine/lib/string/removePrefix(str, prefix)
-
Remove um prefixo caso exista um.
Parameters:
Name Type Description strstring A string que terá o prefixo removido.
prefixstring Prefixo que deve ser removido.
Returns:
A string sem o prefixo informado.
- Type
- string
-
module:@nginstack/engine/lib/string/removeSuffix(str, suffix)
-
Remove um sufixo, caso exista.
Parameters:
Name Type Description strstring A string que terá o sufixo removido.
suffixstring Sufixo que deve ser removido.
Returns:
A string sem o sufixo informado.
- Type
- string
-
module:@nginstack/engine/lib/string/replaceAll(str, searchValue, replaceValue)
-
Retorna uma nova string com todas as ocorrências de
searchValueemstrsubstituídas porreplaceValue.Parameters:
Name Type Description strstring A string que terá as ocorrências
searchValuesubstituídas.searchValuestring Valor a ser substituído.
replaceValuestring Valor que substituíra
searchValue.Returns:
Uma nova string com as ocorrências de
searchValuesubstituídas.- Type
- string
Example
const replaceAll = require('@nginstack/engine/lib/string/replaceAll'); replaceAll('test abc test abc', 'abc', 'ok'); // => 'test ok test ok' -
module:@nginstack/engine/lib/string/splitByCommaOrSemicolon(s)
-
Avalia se o texto passado possui vírgulas (,) ou pontos e vírgulas (;) e gera um Array usando o caractere encontrado como separador. Caso nenhum dos dois caracteres seja encontrado será retornado o Array com apenas um valor contendo a sentença.
Parameters:
Name Type Description sstring Sentença que será avaliada.
Returns:
Array gerado a partir de s.
- Type
- Array.<string>
-
module:@nginstack/engine/lib/string/stringCompare(referenceStr, compareStr)
-
Retorna um número inteiro indicando se
referenceStrvem antes, depois ou se é equivalente acompareStrem uma ordenação de texto ignorando acentos e diferenças entre letras maiúsculas e minúsculas.Para fins de comparação, valores nulos são considerados equivalentes a uma string vazia.
Esta função utiliza a mesma regra de comparação de campos do tipo
stringdo DataSet, sendo apropriada para navegar sobre registros ordenados com valores repetidos.Esta função também é publicada como
ngin.text.compare()no escopo global e é uma alternativa compatível com runtime V8 ao métodoString.prototype.compare()implementado no runtime Ije.Parameters:
Name Type Description referenceStrstring String que será comparada.
compareStrstring String contra a qual
referenceStrserá comparada.Returns:
Será retornado um número negativo se
referenceStrvier antes decompareStr, positivo se vier depois e zero se forem equivalentes.- Type
- number
Examples
const stringCompare = require('@nginstack/engine/lib/string/stringCompare'); const keys = []; ds.indexFieldNames = 'iName;' if (ds.find(value)) { while (!ds.eof; stringCompare(ds.str('iName'), value)) { keys.push(ds.dbkey('iKey')); ds.next(); } }const stringCompare = require('@nginstack/engine/lib/string/stringCompare'); stringCompare('A', 'Á'); // => 0 stringCompare('A', 'a'); // => 0 stringCompare('test', 'TEST'); // => 0 stringCompare('Abc', 'Abcd'); // => negative value stringCompare('Def', 'Abc'); // => positive value -
module:@nginstack/engine/lib/string/stringToInt32(str)
-
Converte um texto em um número inteiro de 32 bits, ignorando o separador de milhar caso seja informado, ou gera um erro caso não seja possível realizar a conversão.
Essa função é mantida apenas para compatibilidade com códigos antigos que fazem uso da função global stringToInt32. Ela não deve ser utilizada em novos códigos.
Parameters:
Name Type Description strstring Texto a ser convertido em um número.
Returns:
Número inteiro convertido a partir de str.
- Type
- number
-
module:@nginstack/engine/lib/string/stringToInteger(str)
-
Converte um texto em um número inteiro, ignorando o separador de milhar caso seja informado, ou gera um erro caso não seja possível realizar a conversão.
Essa função é mantida apenas para compatibilidade com códigos antigos que fazem uso da função global stringToInteger. Ela não deve ser utilizada em novos códigos.
Parameters:
Name Type Description strstring Texto a ser convertido em um número.
Returns:
Número inteiro convertido a partir de str.
- Type
- number
-
module:@nginstack/engine/lib/string/stringToNumber(str)
-
Converte um texto em um número, ignorando o separador de milhar caso seja informado, ou gera um erro caso não seja possível realizar a conversão.
Essa função é mantida apenas para compatibilidade com códigos antigos que fazem uso da função global stringToNumber. Ela não deve ser utilizada em novos códigos.
Parameters:
Name Type Description strstring Texto a ser convertido em um número.
Returns:
Número convertido a partir de str.
- Type
- number
-
module:@nginstack/engine/lib/string/toFormattedString(value, format)
-
Converte um valor numérico ou uma data para uma
string, aplicando uma máscara de formatação.Este método implementa o mesmo comportamento do método
toString()do runtime JavaScript Ije quando informado o parâmetro adicional de formatação, parâmetro esse uma extensão implementada apenas nesse runtime, que não faz parte da especificação do ECMAScript.Para valores do tipo
numberouDBKey, a máscara de formatação deve ter a seguinte estrutura:"%" ["-"] [tamanho] ["." precisão] tipoTipos suportados:
d: decimal. O argumento será truncado para um inteiro de 32 bits e convertido em umastringde dígitos decimais. Se o formato especificar uma precisão, ela indicará que a string resultante deve conter ao menos essa quantidade de dígitos. Se o valor tiver menos dígitos, ele será complementado com zeros à esquerda.u: decimal sem sinal. Similar aod, mas os valores são truncados e convertidos em inteiros de 32 bits sem sinal antes de serem formatados.e: científico. O valor é convertido para uma string no formato "-d,ddd...E+ddd". O número total de dígitos é determinado pela precisão e inclui os dígitos que precedem o ponto decimal. A precisão será 15 se uma não for informada. O caractere "E" é sempre seguido de um sinal e de ao menos 3 dígitos.f: fixo. O valor é convertido para uma string no formato "-dddd,ddd...". O número de dígitos é determinado pela precisão, e será assumido 2 se uma não for informada.g: geral. O valor é convertido para a menor representação decimal possível, utilizado o formato fixo ou o científico. O número de dígitos significativos é dado pela precisão, e será assumido 15 caso não seja informada uma. Os zeros não significativos serão removidos e um ponto decimal será inserido apenas se for necessário. Será retornada uma string no formato fixo se o número de dígitos à esquerda do ponto decimal for menor ou igual que a precisão especificada e se o valor for maior ou igual que 0,00001. Nos demais casos, será utilizado o formato científico.n: numérico. O valor é convertido para uma string no formato "-d.ddd.ddd,ddd...", similar ao formato fixo, exceto que a string retornada conterá separadores de milhares.x: hexadecimal. O argumento será truncado para um inteiro de 32 bits e convertido em uma string com a sua representação hexadecimal. Se o formato especificar uma precisão, ela indicará qua string resultante deve conter ao menos essa quantidade de dígitos. Se o valor tiver menos dígitos, ele será complementado com zeros à esquerda.
Para valores do tipo
Date, o formato é definido por uma expressão contendo um ou vários especificadores de exibição, como'hh:nn:ss'. Especificadores suportados:d: exibe o dia como um número não precedido de zero (1-31).dd: exibe o dia como um número precedido de zero (01-31).ddd: exibe a abreviação do dia da semana (Dom-Sab).dddd: exibe o nome do dia da semana (Domingo-Sábado).m: exibe o mês como um número não precedido de zero (1-12). Se o especificadormfor seguido do especificadorhouhh, serão exibidos os minutos em vez do mês.mm: exibe o mês como um número precedido de zero (01-12). Se o especificadormmfor seguido do especificadorhouhh, serão exibidos os minutos em vez do mês.mmm: exibe a abreviação do mês (Jan-Dez).mmmm: exibe o nome completo do mês (Janeiro-Dezembro).yy: exibe o ano como um número de dois dígitos (00-99).yyyy: exibe o ano como um número de quatro dígitos (0000-9999).h: exibe as horas como um número não precedido de zero (0-23).hh: exibe as horas como um número precedido de zero (00-23).n: exibe os minutos como um número não precedido de zero (0-59).nn: exibe os minutos como um número precedido de zero (00-59).s: exibe os segundos como um número não precedido de zero (0-59).ss: exibe os segundos como um número precedido de zero (00-59).z: exibe os milissegundos como um número não precedido de zero (0-999).zzz: exibe os milissegundos como um número precedido de zeros (000-999)./: exibe o caractere separador de data.:: exibe o caractere separador de hora.'xx'ou"xx": exibe os caracteres delimitados pelas aspas de forma literal.
Ao formatar os valores, serão adotadas as configurações regionais do sistema operacional para determinar os separadores decimal e de milhares, além dos formatos de data e hora. Atualmente, essas configurações são fixas no padrão "pt-br", mas esse comportamento poderá ser modificado no futuro.
Esta função também é publicada como
ngin.text.toFormattedString()no escopo global, sendo preferível essa forma de uso em scripts da Virtual File System que não são módulos JavaScript.Parameters:
Name Type Description value* Valor a ser formato.
formatstring Formato a ser aplicado.
Returns:
Valor convertido em uma
stringde acordo comformat. Se não for informado um formato, ou sevaluenão for numérico ou uma data, será realizada a conversão para umastringpor meio do métodovalue.toString(), exceto quando o valor fornull. Nesse caso específico, será retornada uma string vazia.- Type
- string
Examples
const toFormattedString = require('@nginstack/engine/lib/string/toFormattedString'); toFormattedString(10.578, '%.3n'); // => '10,578' toFormattedString(10.578, '%.2n'); // => '10,58' toFormattedString(10.578, '%.1n'); // => '10,6' toFormattedString(10.578, '%.0n'); // => '11' toFormattedString(10.578, '%4.0n'); // => ' 11'const toFormattedString = require('@nginstack/engine/lib/string/toFormattedString'); toFormattedString(Math.PI, '%f'); // '3,14' toFormattedString(Math.PI, '%g'); // '3,14159265358979' toFormattedString(Math.PI, '%n'); // '3,14' toFormattedString(Math.PI, '%e'); // '3,14159265358979E+000'const toFormattedString = require('@nginstack/engine/lib/string/toFormattedString'); toFormattedString(Math.pow(2, 16) - 1, '%.8x'); // => '0000FFFF'const toFormattedString = require('@nginstack/engine/lib/string/toFormattedString'); const dt = new Date(2019, 1, 2, 3, 4, 5, 6); toFormattedString(dt, 'dddd, dd "de" mmmm "de" yyyy'); // => 'Sábado, 02 de Fevereiro de 2019' -
module:@nginstack/engine/lib/string/toHtmlString(value [, format] [, maxWordLength] [, crlfToBr])
-
Converte um valor textual, numérico ou uma data em uma
stringque pode ser inserida em um HTML de forma opaca.Ela substitui os caracteres acentuados e símbolos por entidades HTML, evitando que eles sejam interpretados como tags ou outros caracteres de controle. A exceção é a sequência de caracteres CR (13) LF (10), que são substituídos por
\<br\>por padrão, comportamento esse que pode ser desativado pelo parâmetrocrlfToBr. Opcionalmente pode ser aplicada uma máscara de formatação para os valores numéricos.Este método implementa o mesmo comportamento do método
toHtmlString()do runtime JavaScript Ije, método esse uma extensão implementada apenas nesse runtime que não faz parte da especificação do ECMAScript. O comportamento dos parâmetros opcionaisformat,maxWordLengthecrlfToBrvaria de acordo com o tipo devaluee devem ser evitados em códigos novos. Eles são mantidos apenas para garantir a compatibilidade desta função com o métodoObject.prototype.toHtmlString().Ao formatar os valores, serão adotadas as configurações regionais do sistema operacional para determinar os separadores decimal e de milhares, além dos formatos de data e hora. Atualmente essas configurações são fixas no padrão "pt-br", mas esse comportamento poderá ser modificado no futuro.
Esta função também é publicada como
ngin.text.toHtmlString()no escopo global, sendo preferível essa forma de uso em scripts da Virtual File System que não são módulos JavaScript.Parameters:
Name Type Argument Default Description value* Valor a ser convertido em uma string HTML.
formatstring <optional>
'' Formato opcional a ser aplicado caso
valueseja um número ou umDBKey. Este parâmetro é ignorado para os demais tipos. Veja module:@nginstack/engine/lib/string/toFormattedString para os formatos suportados.maxWordLengthnumber <optional>
1000000000 Tamanho máximo das palavras. Será inserido um espaço quando palavra ultrapassar esse tamanho, garantindo que haja assim uma quebra de linha forçada.
crlfToBrboolean <optional>
true Returns:
Valor convertido em uma
stringque pode ser inserida em um HTML.- Type
- string
Example
const toHtmlString = require('@nginstack/engine/lib/string/toHtmlString'); toHtmlString('10 <> 20'); // => '10 <> 20' toHtmlString('Ação'); // => 'Ação' toHtmlString(10.578, '%.3n'); // => '10,578' toHtmlString(true); // => 'true' toHtmlString(null); // => '' -
module:@nginstack/engine/lib/string/toLowerCaseNoAccent(str)
-
Retornar uma copia normalizada da string com todos os caracteres em caixa baixa e sem acentos.
Parameters:
Name Type Description strstring String a ser normalizada.
Returns:
String normalizada.
- Type
- string
-
module:@nginstack/engine/lib/string/toLowerCaseNoAccent(str)
-
Retorna uma copia normalizada da string com todos os caracteres em caixa alta e sem acentos.
Parameters:
Name Type Description strstring String a ser normalizada.
Returns:
String normalizada.
- Type
- string
-
module:@nginstack/engine/lib/string/toSqlIdentifier(name)
-
Converte o valor informado em um identificador válido, como o nome de uma tabela ou coluna, de forma que ele possa ser utilizado de forma segura em consultas SQL.
Somente serão permitidas letras, números e o caractere "_". Caracteres acentuados serão substituídos pelos seus equivalentes não acentuados. Os demais caracteres serão removidos da string.
Apesar de alguns bancos de dados permitirem escapar os identificadores com aspas duplas, esta função opta por não usar esse recurso para escapar o identificador. O uso de aspas duplas torna o identificador sensível à diferença entre letras minúsculas e maiúsculas, dificultando a interoperabilidade do seu uso entre os distintos SGBDs suportados pelo sistema.
Identificadores precisam iniciar com uma letra e não podem ser palavras chaves SQL. Será gerado um erro se o identificador não satisfizer essas restrições.
O uso desta função é restrita para identificadores. Valores literais utilizados em filtros ou expressões de colunas retornadas por comandos SQL devem ser formatadas utilizando a função toSqlString.
Parameters:
Name Type Description name* Valor a ser convertido em um identificador.
Returns:
String que pode ser inserida em uma expressão SQL.
- Type
- string
Examples
const toSqlIdentifier = require('@nginstack/engine/lib/string/toSqlIdentifier'); const toSqlString = require('@nginstack/engine/lib/string/toSqlString'); function getRecord(tableName, key) { return database.query( 'SELECT * ' + 'FROM ' + toSqlIdentifier(tableName) + ' ' + 'WHERE iKey = ' + toSqlString(key) ); }const toSqlIdentifier = require('@nginstack/engine/lib/string/toSqlIdentifier'); toSqlIdentifier('Test'); // => 'Test' toSqlIdentifier('Test Space'); // => 'TestSpace' toSqlIdentifier('10A'); // => Error() toSqlIdentifier(null); // => Error() toSqlIdentifier(new Date(2019, 5, 10)); // => Error() toSqlIdentifier('SELECT'); // => Error() -
module:@nginstack/engine/lib/string/toSqlString(str)
-
Converte o valor em uma string equivalente que possa ser inserida em uma expressão SQL. Valores numéricos são formatados com no máximo dez casas decimais.
O seu uso é recomendado para valores literais utilizados em filtros ou expressões de colunas retornadas por comandos SQL. Para identificadores, como os nomes de tabelas e colunas, deve ser utilizada a função toSqlIdentifier.
Esta função também é publicada como
ngin.text.toSqlString()no escopo global, sendo preferível essa forma de uso em scripts da Virtual File System que não são módulos JavaScript.Parameters:
Name Type Description str* Valor a ser convertido.
Returns:
String que pode ser inserida em uma expressão SQL.
- Type
- string
Example
const toSqlString = require('@nginstack/engine/lib/string/toSqlString'); toSqlString('Test'); // => "'Test'" toSqlString(null); // => "null" toSqlString(10.2); // => "10.2" toSqlString(new Date(2019, 5, 10)); // => "06/10/2019" -
module:@nginstack/engine/lib/sync/activeWaitFor(func, timeout [, opt_options])
-
Executa uma dada função em um intervalo de tempo regular, definido ou calculado. Essa sequência de chamadas se repetirá até que a função retorne valor lógico verdadeiro ou até o atingimento do tempo limite, o que ocorrer primeiro.
Parameters:
Name Type Argument Description funcfunction Função que será invocada ciclicamente.
timeoutnumber Tempo de espera limite.
opt_optionsObject <optional>
Parâmetros opcionais da função.
Properties
Name Type Argument Description intervalnumber <optional>
Intervalo de tempo entre duas chamadas consecutivas da função informada. Caso não seja informado, haverá um cálculo automático para a definição do intervalo, que ficará entre 2 segundos e 250 milissegundos com base no timeout informado.
thisArgObject <optional>
O objeto que será utilizado como o valor de 'this' dentro de func.
Returns:
Retorna o valor lógico retornado na chamada da função func.
- Type
- boolean
-
module:@nginstack/engine/lib/sync/sleep(msecs)
-
Para a execução da thread corrente responsável pela execução do JavaScript pela quantidade de milissegundos informada.
Importante: o uso dessa função não é recomendada, pois os recursos do servidor que poderiam estar sendo utilizados no atendimento de outras requisições estarão parcialmente bloqueados durante o tempo informado.
Parameters:
Name Type Description msecsnumber Tempo que a thread de atendimento deve dormir em milissegundos.
-
module:@nginstack/engine/lib/testing/classdef/testModelDefs( [opt_options])
-
Verifica se uma classe e suas filhas possuem erros que impeçam a instanciação da definição de visão da classe de dados.
Parameters:
Name Type Argument Description opt_optionsObject | Record.<*, *> <optional>
Objeto contendo as opções para a validação das classes. Opções disponíveis:
- baseClass: classe cuja hierarquia será verificada. Caso não seja informada, serão
validadas todas as classes.
- products: chaves dos produtos nos quais a verificação será feita. Caso sejam
informadas, somente classes pertencentes a esses produtos serão validadas.
- forceStrictMode: executa todas as classes com o modo estrito ativo, independente da configuração da classe de dados.
Returns:
A quantidade de classes testadas.
- Type
- number
- baseClass: classe cuja hierarquia será verificada. Caso não seja informada, serão
validadas todas as classes.
-
module:@nginstack/engine/lib/testing/classdef/testViewDefs( [options])
-
Verifica se uma classe e suas filhas possuem erros que impeçam a instanciação da definição de visão da classe de dados.
Parameters:
Name Type Argument Description optionsObject | Record.<*, *> <optional>
Objeto contendo as opções para a validação das classes. Opções disponíveis:
- baseClass: classe cuja hierarquia será verificada. Caso não seja informada, serão
validadas todas as classes.
- products: chaves dos produtos nos quais a verificação será feita. Caso sejam informadas, somente classes pertencentes a esses produtos serão validadas.
Returns:
A quantidade de classes testadas.
- Type
- number
- baseClass: classe cuja hierarquia será verificada. Caso não seja informada, serão
validadas todas as classes.
-
module:@nginstack/engine/lib/testing/route/testRouteDefs(product)
-
Realiza a validação de rotas em /Configuração/Rotas HTTP pelo produto informado.
Parameters:
Name Type Description productnumber Chave do produto (faixa de chaves) do qual deseja-se validar a definição das rotas.
-
module:@nginstack/engine/lib/testing/vfs/testIncludeOnce(fileKey)
-
Verifica se incluir o arquivo da Virtual File System informado em um ambiente isolado provoca algum tipo de erro que impeça o seu uso.
Este método é útil para fazer um teste de fumaça de uma biblioteca armazenada na Virtual File System.
Parameters:
Name Type Description fileKeynumber Chave do arquivo a ser importado.
-
module:@nginstack/engine/lib/url/appendPath(baseUri, path)
-
Gera uma URI usando uma outra dada URI e um caminho prevenindo que seja inseridos mais de um separador. O parâmetro baseUri informado não deve conter query ou identificadores de fragmentos.
Parameters:
Name Type Description baseUristring URI to use as the base.
pathstring Path to append.
Returns:
Updated URI.
- Type
- string
-
module:@nginstack/engine/lib/url/extractNameFromUrl(url)
-
Extrai o último nome da URL, ignorando uma possível extensão de arquivo.
Esse módulo tem o objetivo exclusivo de garantir a compatibilidade com códigos que fazem uso da antiga função global extractNameFromUrl. Códigos novos devem evitar utilizar essa função, pois ela presume que uma URL sempre apontará para uma arquivo.
Parameters:
Name Type Description urlstring URL a ter o nome extraído.
Returns:
Nome do arquivo indicado pela URL.
- Type
- string
-
module:@nginstack/engine/lib/uuid/createGUID(removeFormatChars)
-
Cria um Globally Unique Identifier - GUID.
Parameters:
Name Type Description removeFormatCharsboolean Se verdadeiro, retorna um GUID sem caracteres de formatação.
Returns:
GUID gerado.
- Type
- string
Example
var createGUID = require('@nginstack/engine/lib/uuid/createGUID'); var guidFormatted = createGUID(false); // {21EC2020-3AEA-1069-A2DD-08002B30309D} var guidUnformatted = createGUID(true); // 21EC20203AEA1069A2DD08002B30309D -
module:@nginstack/engine/lib/version/compareVersions(a, b)
-
Compara duas versões no formato n.n.n ou n.n.n.n. Cada número n de uma versão é comparado com seu equivalente na outra versão. Caso haja algum n da primeira versão seja maior que seu equivalente na segunda versão, o resultado será 1
Parameters:
Name Type Description astring Primeira versão da comparação.
bstring Segunda versão da comparação.
Returns:
Valor que indicará o resultado da comparação da primeira com a segunda versão. Caso as versões sejam iguais, retornará 0. Caso a primeira versão seja maior que a segunda, retornará um número > 0. Finalmente, caso a primeira versão seja menor do que a segunda, retornará um número < 0.
- Type
- number
-
module:@nginstack/engine/lib/xml/formatCDATA(str)
-
Insere a string informada dentro de uma seção XML CDATA e garante que o conteúdo não contém uma outra seção CDATA filha.
Parameters:
Name Type Description strstring Conteúdo da seção CDATA.
Returns:
Seção CDATA formatada com conteúdo informado.
- Type
- string
-
module:@nginstack/engine/lib/xml/removeUnsupportedChars(str)
-
Remove os caracteres Cancel (24), File Separator (28), Group Separator (29), Record Separator (30) e Unit Separator (31), não suportados por XMLs codificados em ISO-LATIN-8859-1.
Parameters:
Name Type Description strstring Texto que terá os caracteres não suportados removidos.
Returns:
Texto sem caracteres não suportados.
- Type
- string
Example
var removeUnsupportedChars = require('@nginstack/engine/lib/xml/removeUnsupportedChars'); var cleanText = removeUnsupportedChars(userText); -
module:@nginstack/web-framework/lib/classdef/classHasGlobalActions(classKey)
-
Checa se uma classe têm ações globais configuradas.
Parameters:
Name Type Description classKeynumber Chave da classe.
Returns:
Indica se a classe possui ações globais.
- Type
- boolean
-
module:@nginstack/web-framework/lib/css/formatInlineStyle(style)
-
Formata um conjunto de definições de estilo para uma única string contendo o estilo a ser inserido em uma tag HTML.
Parameters:
Name Type Description styleObject.<string> Mapa associando propriedades de estilo HTML a seus valores.
Returns:
Representação textual das propriedades informadas e seus valores.
- Type
- string
-
module:@nginstack/web-framework/lib/css/formatStyleAttr(styles)
-
Gera um atributo style com os estilos informados.
Parameters:
Name Type Description stylesObject.<string, *> Mapa com os estilos que devem ser adicionados no atributo. Atributos com valores nulos, vazios ou não definidos serão ignorados.
Returns:
Retorna o atributo style a ser adicionado em uma tag. Será retornada uma string vazia se styles for nulo ou um mapa vazio.
- Type
- string
-
module:@nginstack/web-framework/lib/css/normalizeUnit(dim)
-
Normaliza um valor para um valor suportado pelo estilo em pixels. Somente há essa normalização quando é informado um número.
Parameters:
Name Type Description dimnumber | string Dimensão a ser normalizada.
Returns:
Dimensão válida a ser utilizada no estilo.
- Type
- string
-
module:@nginstack/web-framework/lib/html/htmlToText(str)
-
Transforma uma string com componentes html em texto plano, preservando espaços e nomes de entidades
Parameters:
Name Type Description strstring String que deve ser transformada.
Returns:
- Type
- string
-
module:@nginstack/web-framework/lib/settings/newSettingsGrid(settingsId [, options])
-
Cria uma grade para o preenchimento das configurações gerais.
Será criado um campo para cada configuração com o mesmo nome da configuração. Para configurações que aceitam múltiplos valores, o tipo desse campo será "grid" e será criado um dataset temporário para armazenar os múltiplos valores da configuração. Esses valores poderão ser lidos pelo campo "value" do DataSet e da grade detalhe.
Caso todas as configurações possuam o mesmo "Grupo", ele será suprimido na criação dos campos e sugerido como título da grade, caso a opção
titlenão tenha sido informada.Parameters:
Name Type Argument Description settingsIdstring | number | DBKey | Array.<string> | Array.<number> | Array.<DBKey> Identificador de uma configuração específica ou de uma seção de configurações. Também pode ser informado um array de identificadores.
optionsObject <optional>
Opções de criação da grade.
Properties
Name Type Argument Description processmodule:@nginstack/web-framework/lib/process/Process~Process <optional>
Processo onde deve ser criada a grade. Caso não seja informado, será criada no processo em uso pelo usuário.
titlestring <optional>
Título da grade. Caso não seja informado, será utilizado o título "Configurações".
namestring <optional>
Nome da grade. Caso não seja informado, será gerado um nome único.
helpstring <optional>
Ajuda da grade. Caso não seja informado, será gerado um texto genérico.
showResetToDefaultsButtonboolean <optional>
Indica se o botão "Redefinir os valores padrões" deve ser exibido na grade.
Returns:
Grade pré-configurada para o preenchimento das configurações.
Examples
const newSettingsGrid = require('@nginstack/web-framework/lib/settings/newSettingsGrid'); this.interaction('main', function () { const grid = newSettingsGrid('wf.login', { title: 'Configurações da tela de login padrão', showResetToDefaultsButton: true }); grid.write(); });const newSettingsGrid = require('@nginstack/web-framework/lib/settings/newSettingsGrid'); this.interaction('main', function () { const grid = newSettingsGrid(['wf.login.colors.primary', 'wf.login.colors.secondary'], { title: 'Configurações de cores da tela de login padrão' }); grid.write(); }); -
module:@nginstack/web-framework/lib/string/formatForDisplay(value, format)
-
Formata um valor utilizando um dos formatos cadastrados na classe "Formatos de Exibição" (-1892603094).
Parameters:
Name Type Description value* Valor a ser formatado.
formatnumber | string Chave ou código do formato desejado.
Returns:
Valor no formato desejado.
- Type
- string
-
module:@nginstack/web-framework/lib/vfs/extractKeyFromUrl(url)
-
Função que retorna a chave se estiver presente na URL informada ou se a URL for de um arquivo da VFS.
Parameters:
Name Type Description urlstring URL de onde tentará ser extraída a chave.
Returns:
key Chave caso exista. Retornará null caso não encontre na iVfs.
- Type
- number