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:
-
memoryManager :MemoryManager
-
Objeto responsável pela gestão da memória consumida pelo sistema.
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 PATH
string 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 STRING
string string CHAR
string char DATE
string date INTEGER
string integer NUMBER
string number ARRAY
string array MEMO
string memo COMBO
string combo MASTER_DETAIL
string masterdetail BOOLEAN
string boolean PHONE
string phone FILE
string file PASSWORD
string password TIME
string time DATETIME
string datetime CEP
string cep LATITUDE
string latitude LONGITUDE
string longitude ANGLE
string angle GRID
string grid -
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 IMAGE
string 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 EQUALITY
string = INEQUALITY
string <> GREATER_THAN
string > LESS_THAN
string < GREATER_THAN_OR_EQUAL
string >= LESS_THAN_OR_EQUAL
string <= LIKE
string like EXISTS
string exists NOT_EXISTS
string 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 DISABLED
number 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_VALUES
number 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.FULL
number 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
-
Propriedades que identificam o fornecedor do sistema.
-
<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/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/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 NONE
number 0 Indica que o campo não é lookup.
RECORD
number 1 Indica que o campo se relaciona com os registros da classe indicada por classKey.
CLASS
number 2 Indica que o campo se relaciona com os classes de dados filhas de classKey.
FILE
number 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 ERROR
number 0 Deve ser gerado um erro caso haja registros detalhes no momento da exclusão do registro mestre.
DELETE
number 1 Os registros detalhes devem ser excluídos.
UNLINK
number 2 Os campos que vinculam os registros detalhes, module:@nginstack/engine/lib/classdef/Field#detailFieldNames, devem ser preenchidos com null.
-
module:@nginstack/engine/lib/classdef/ReadOnlyMode :number
-
Opções para o modo de somente leitura do campo.
Type:
- number
Properties:
Name Type Default Description NEVER
number 0 O campo sempre pode ser modificado pelo usuário.
ALWAYS
number 1 O campo nunca pode ser modificado pelo usuário, apenas internamente pelos eventos da classe de dados e objetos de gestão.
AFTER_INSERT
number 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.
ONEDIT
number 2 FILLED
number 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 STATELESS
number 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.
STATEFUL
number 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
STATEFULL
number 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 NONE
number 0 Indica que o Engine não deve persistir as propriedades do objeto global e de contexto session.
COOKIE
number 1 Indica que o Engine deve persistir as propriedades do objeto global e de contexto session por meio de cookies.
LOCALSTORAGE
number 2 Não implementado.
DBSTORAGE
number 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 MODEL
string model VIEW
string view CONFIG
string config NON_STRICT_MODEL
string non_strict_model -
module:@nginstack/engine/lib/classdef/TableCacheStrategy
-
Enumera as opções que indicam se os dados de uma tabela são gravados no cache local.
-
module:@nginstack/engine/lib/database/DataType :string
-
Tipos de dados do banco de dados suportados pela API do Engine.
Type:
- string
Properties:
Name Type Default Description STRING
string string NUMBER
string number INTEGER
string integer MEMO
string memo DATE
string 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/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 DDMMYYYY
number -1892603089 Formato dia/mês/ano. Exemplo: 21/05/2017.
DDMM
number -1892603090 Formato dia/mês. Exemplo: 21/05.
MMYYYY
number -1892603088 Formato mês/ano. Exemplo: 05/2017.
WWYYYY
number -1892603087 Formato semana_iso/ano. Exemplo: 20/2017.
YYYYWW
number -1892603057 Formato ano/semana_iso. Exemplo: 2017/20.
MMMYYYY
number -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 JAN
number 0 FEB
number 1 MAR
number 2 APR
number 3 MAY
number 4 JUN
number 5 JUL
number 6 AUG
number 7 SEP
number 8 OCT
number 9 NOV
number 10 DEC
number 11 -
module:@nginstack/engine/lib/date/WeekDay :number
-
Dias da semana.
Type:
- number
Properties:
Name Type Default Description MON
number 0 TUE
number 1 WED
number 2 THU
number 3 FRI
number 4 SAT
number 5 SUN
number 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 IGNORE
number 0 Ignora a função listener duplicada, conforme especificação W3C.
ACCEPT
number 1 Registra a função listener duplicada.
REMOVE
number 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 DDD
number -1892603107 Ângulo sem casas decimais.
DDD_DD
number -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_DDDDD
number -1892603112 Graus decimais com 5 casas de precisão.
DDD_MM_MMM_DIR
number -1892603111 Graus, minutos com 3 casas de precisão e direção.
DDD_MM_SS_S_DIR
number -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_DDDDD
number -1892602552 Graus decimais com 5 casas de precisão.
DDD_MM_MMM_DIR
number -1892602551 Graus, minutos com 3 casas de precisão e direção.
DDD_MM_SS_S_DIR
number -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_EVEN
number 1 Arredonda para o decimal mais próximo ou mantém o mesmo dígito.
HALF_ODD
number 2 Arredonda para o decimal mais próximo ou para o dígito ímpar.
HALF_POSITIVE
number 3 Arredonda para o decimal mais próximo ou para o maior valor mais próximo.
HALF_NEGATIVE
number 4 Arredonda para o decimal mais próximo ou para o menor valor mais próximo
HALF_DOWN
number 5 Arredonda para o decimal mais próximo ou em direção a zero (truncamento).
HALF_UP
number 6 Arredonda para o decimal mais próximo ou para longe do zero.
FLOOR
number 7 Arredonda para o menor valor decimal mais próximo.
CEILING
number 8 Arredonda para o maior valor decimal mais próximo.
DOWN
number 9 Arredonda em direção a zero (truncamento).
UP
number 10 Arredonda para longe de zero.
-
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 START
number 1 END
number 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_INSERT
number 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.
CHANGE
number 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 FIRST
string 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.
MAX
string 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.
MIN
string 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.
DISTINCT
string 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_INHERITANCE
string 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".
CONCAT
string 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 IDE
string iIDEEnabled Representa a IDE do aplicativo iEngine.
iWeb
string iiWebEnabled Representa o aplicativo iWeb, antigo sistema de gestão empresarial que foi substituído pelo Framework HTML.
FrameworkHTML
string 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 UNCHANGED
number 0 A entidade não foi modificada desde a sua criação ou da última execução do método Entity#persist.
ADDED
number 1 Uma nova entidade foi criada, mas as alterações ainda não foram persistidas no banco de dados.
MODIFIED
number 2 A entidade foi modificada, mas as alterações ainda não foram persistidas no banco de dados.
DELETED
number 3 A entidade foi excluída, mas as alterações ainda não foram persistidas no banco de dados.
DETACHED
number 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 utilizadas 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.
-
<constant> module:@nginstack/web-framework/keys/UserAgents
-
Chaves dos agentes de usuário cadastrados no sistema.
-
<constant> module:@nginstack/web-framework/lib/button/AutoShortcutKeyMode
-
Constantes de controle de atribuição automática de atalhos para botões dos processos e grades.
-
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:
-
- {@module @nginstack/web-framework/lib/classdef/ViewDefField~ViewDefField#duplicateMode}
Properties:
Name Type Default Description NONE
string none Indica que este campo não será copiado para o novo registro.
COPY
string copy Indica que este campo será copiado.
COPY_ADDING_SUFFIX
string 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/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 NONE
string none BY_TOTAL_FIELD
string groupbytotalfield BY_PIVOT_VALUE
string 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 SUM
string sum MIN
string min MAX
string max AVG
string avg COUNT
string count -
module:@nginstack/web-framework/lib/label/LabelAlignment :string
-
Opções de alinhamento possíveis do componente Label.
Type:
- string
Properties:
Name Type Default Description LEFT
string left RIGHT
string right CENTER
string center JUSTIFY
string justify -
module:@nginstack/web-framework/lib/messaging/Location :string
-
Localização de um componente.
Type:
- string
Properties:
Name Type Default Description CLIENT
string c SERVER
string s -
<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:
-
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 keyOrUri
number | 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 keyOrUri
number | 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 derivation
string 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 args
Arguments Objeto arguments.
opt_fromIndex
number <optional>
Índice inicial, o elemento desse índice será incluído no resultado.
opt_toIndex
number <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 arr1
Array O primeiro array para comparar.
arr2
Array O segundo array para comparar.
opt_equalsFn
function <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 de valores em um Array.
Parameters:
Name Type Argument Description list
string | Array.<string> Lista a ser convertida em um array. Caso seja informado um array, ele será retornado sem alterações.
opt_separator
string <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 arr
Array 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 arr
Array Array do qual será removido o elemento
i
number O índice do elemento a ser removido
Returns:
True se o elemento foi removido
- Type
- boolean
-
module:@nginstack/engine/lib/classdef/getImageRelationConfig(classKey)
-
Obtém a configuração de relacionamento de um cadastro com as suas imagem caso haja um.
Parameters:
Name Type Description classKey
number 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 nulo caso o lookupType caso de LookupType.NONE.
Parameters:
Name Type Argument Description classKey
number Chave da classe do campo lookup.
lookupType
number <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 keys
number | string | Array.<number> Chave ou lista de chaves.
opt_baseClassKey
number <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/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 input
string Script a ser minificado.
opt_options
Object <optional>
Opções da minificação.
Properties
Name Type Description comment
string Comentário a ser adicionado no início do conteúdo minificado.
level
number 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/canApplyUpdates(ds)
-
Indica se o dataSet pode ter suas alterações gravadas no banco de dados por meio do método applyUpdates.
Parameters:
Name Type Description ds
DataSet Returns:
Retorna true se o applyUpdates pode ser utilizado, false caso contrário.
- Type
- boolean
-
module:@nginstack/engine/lib/dataset/dataSetEquals(a, b)
-
Verifica se os dois DataSets informados são iguais. Eles serão considerados iguais se possuírem a mesma quantidade de registros e se os valores de todos os campos de todos os registros forem iguais.
Parameters:
Name Type Description a
DataSet b
DataSet Returns:
True se os dataSets são iguais.
- Type
- boolean
-
module:@nginstack/engine/lib/dataset/fieldValueIsEqual(ds, fieldName, value)
-
Determina se o valor do campo informado em fieldName é igual ao valor fieldValue.
A comparação realizada por este método será equivalente ao critério interno de comparação do DataSet. Valores nulos serão considerados iguais a string vazias por esta função quando comparados campos textuais e a comparação de texto será insensitiva.Parameters:
Name Type Description ds
DataSet DataSet a ser comparado.
fieldName
string Nome do campo a ser comparado.
value
* Valor que será comparado ao valor corrente do campo.
Returns:
True se os valores forem iguais ou equivalentes no critério de comparação do dataSet.
- Type
- boolean
-
module:@nginstack/engine/lib/dataset/fieldValuesAreEqual(ds, fieldNames, fieldValues)
-
Determina se os campos do dataSet informados em fieldNames são iguais aos valores fieldValues.
A comparação realizada por este método será equivalente ao critério interno de comparação do DataSet. Valores nulos serão considerados iguais a string vazias por esta função quando comparados campos textuais e a comparação de texto será insensitiva.
Parameters:
Name Type Description ds
DataSet DataSet a ser comparado.
fieldNames
Array.<string> Nomes dos campos que serão comparados.
fieldValues
Array.<*> Valores dos campos que serão comparados.
Returns:
True se os valores de fieldValues forem iguais aos dos campos do dataSet.
- Type
- boolean
-
module:@nginstack/engine/lib/dataset/findFields(ds, fieldNames)
-
Busca no dataset informado os campos fieldNames e retorna o índice do primeiro encontrado.
Parameters:
Name Type Description ds
DataSet fieldNames
Array.<string> Returns:
Retorna o índice do campo encontrado. Será retornado -1 caso não seja encontrado nenhum dos campos informados.
- Type
- number
-
module:@nginstack/engine/lib/dataset/forceRecordUpdate(queryFunc, updateFunc [, opt_options])
-
Tenta atualizar um registro de um DataSet e repete a operação até o tempo informado caso seja detectado um conflito de alteração com outro usuário.
Parameters:
Name Type Argument Description queryFunc
function Função que obtém o dataset a ser atualizado. Essa função deve retornar o registro atualizado, preferencialmente da base de dados.
updateFunc
function Função responsável por atualizar e gravar o registro na base de dados.
opt_options
Object <optional>
Opções.
Properties
Name Type Argument Description context
* <optional>
Valor do this durante a execução das funções informadas.
timeout
number <optional>
Tempo em milissegundos que a operação deve ser repetida.
Returns:
DataSet criado por queryFunc e atualizado com sucesso pela updateFunc.
- Type
- DataSet
-
module:@nginstack/engine/lib/dataset/forEachRecord(ds, f [, opt_obj])
-
Executa uma função para cada registro do dataSet informado.
Importante:: a função que será executada a cada iteração não deve provocar mudanças na quantidade de registros ou em campos que mudem a posição corrente do dataSet.
Parameters:
Name Type Argument Description ds
DataSet DataSet que será iterado.
f
function A função que será chamada para cada elemento. Esta função recebe 1 parâmetro (o dataSet posicionado) e o retorno desta função é ignorado.
opt_obj
Object <optional>
Indica o objeto 'this' dentro de f.
- Deprecated:
Example
var forEachRecord = require('@nginstack/engine/lib/dataset/forEachRecord'); var users = classes.getCachedDataSet(Classes.USERS); forEachRecord(users, function (ds) { log.info(ds.ikey + ': ' + ds.iname); });
-
module:@nginstack/engine/lib/dataset/getDistinctValues(ds, fieldName)
-
Pega os valores distintos de um campo.
Parameters:
Name Type Description ds
DataSet Dataset de onde serão obtidos os valores distintos
fieldName
string Nome do campo.
Returns:
Todos os valores distintos em um dataset para um nome de campo.
- Type
- Array
-
module:@nginstack/engine/lib/dataset/getFieldValues(dataSet, fieldNames)
-
Obtém os valores dos campos informados do registro corrente como um array.
Parameters:
Name Type Description dataSet
DataSet DataSet do qual serão obtidos os valores dos campos.
fieldNames
Array.<string> | string Array com os nomes dos campos ou uma lista de campos separada por "," ou ";".
Returns:
Valores dos campos informados.
- Type
- Array.<*>
Example
const getFieldValues = require('@nginstack/engine/lib/dataset/getFieldValues'); getFieldValues(ds, ['CHAVE', 'VERSAO']); // => [100, 28301]
-
module:@nginstack/engine/lib/dataset/getFirstFieldValue(ds, fieldNames)
-
Busca no dataset informado os campos fieldNames e retorna o valor do primeiro encontrado.
Parameters:
Name Type Description ds
DataSet fieldNames
Array.<string> Returns:
Retorna o valor encontrado do primeiro campo passado no Array. Um erro será gerado caso nenhum campo seja encontrado.
- Type
- *
-
module:@nginstack/engine/lib/dataset/hasEmptyRange(ds)
-
Verifica se o dataset informado foi filtrado pela execução da função #setEmptyRange.
Parameters:
Name Type Description ds
DataSet DataSet que será verificado.
Returns:
True se o dataset tem um range criado pela função #setEmptyRange.
- Type
- boolean
-
module:@nginstack/engine/lib/dataset/isTextualField(ds, fieldName)
-
Indica se o tipo do campo informado é textual. Um campo será textual se ele for do tipo string ou memo.
Parameters:
Name Type Description ds
DataSet DataSet que contém o campo que será avaliado.
fieldName
string Nome do campo que será verificado. Se for informada uma expressão lookup (fldA.fldB), será avaliado o primeiro campo.
Returns:
True se o campo for textual.
- Type
- boolean
-
module:@nginstack/engine/lib/dataset/pruneTree(ds, idField, parentField, filterFunc)
-
Para DataSets que possuem uma estrutura de árvore este método remove nós baseado numa dada função, preservando os nós que são essenciais para a integridade da árvore. Este método tentará preservar o bookmark do DataSet, caso ele tenha sido retirado, o cursor irá para o primeiro registro.
Parameters:
Name Type Description ds
DataSet DataSet que será filtrado.
idField
string Campo que contém o identificador do registro.
parentField
string Campo que contém o identificador do pai do registro.
filterFunc
function Função que realizará o teste para checar se o registro deve ser removido.
Example
Digamos que temos uma árvore com essa estrutura: setor1 time1 joão joaquim time2 fulano sicrano Se o "time1" não atender à função mas o "joão" atender significa que o nó "time1" precisará ser removido, mas se isso acontecer o nó "joão" ficará sem mãe fazendo com que a árvore perca sua consistência. Então este método preservaria o nó "time1".
-
module:@nginstack/engine/lib/dataset/recordToJson(dataSet [, opt_options])
-
Retorna o registro do DataSet em formato de JSON.
Parameters:
Name Type Argument Description dataSet
DataSet DataSet posicionado no registro que se deseja converter.
opt_options
Object <optional>
Opções de conversão.
Properties
Name Type Argument Description toLowerCase
boolean <optional>
Indica se a propriedade do objeto criado deverá ser em caixa baixa (lower case).
onlyFilled
boolean <optional>
Indica se devem ser criadas as propriedades para os campos sem preenchimento no DataSet.
Returns:
Retorna o dado em formato JSON.
- Type
- string
Example
var recordToObject = require('@nginstack/engine/lib/dataset/recordToJson'); var Classes = require('@nginstack/engine/keys/Classes'); var users = classes.getCachedDataSet(Classes.USERS); if (users.findKey(session.userKey)) { var currentUserJson = recordToJson(users); }
-
module:@nginstack/engine/lib/dataset/recordToObject(dataSet [, opt_options])
-
Retorna o registro do DataSet em formato de objeto literal, onde as colunas serão as propriedades.
Parameters:
Name Type Argument Description dataSet
DataSet DataSet posicionado no registro que se deseja converter.
opt_options
Object <optional>
Opções de conversão.
Properties
Name Type Argument Description toLowerCase
boolean <optional>
Indica se a propriedade do objeto criado deverá ser em caixa baixa (lower case).
onlyFilled
boolean <optional>
Indica se devem ser criadas as propriedades para os campos sem preenchimento no DataSet.
Returns:
Retorna o objeto onde as propriedades são os campos do DataSet
- Type
- Object
Example
var recordToObject = require('@nginstack/engine/lib/dataset/recordToObject'); var Classes = require('@nginstack/engine/keys/Classes'); var users = classes.getCachedDataSet(Classes.USERS); if (users.findKey(session.userKey)) { var currentUserObj = recordToObject(users); }
-
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 source
DataSet DataSet que será utilizado como origem dos dados.
target
DataSet DataSet que será modificado.
opt_options
Object <optional>
Opções de sincronismo.
Properties
Name Type Argument Description idFieldName
string <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.
ignoredFieldNames
Array.<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/checkRange(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 date
Date Data a ser avaliada.
start
Date Data mínima permitida.
end
Date 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
true
no 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 referenceDate
Date Data que será comparada.
compareDate
Date Data contra a qual
referenceDate
será comparada.timeSensitive
boolean <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
referenceDate
for 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 date
Date Data obtida do banco de dados.
hours
string 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 date
Date 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 date
Date 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 date
Date Data.
opt_options
Object <optional>
Opções.
Properties
Name Type Argument Description format
DateFormat <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 time
number 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 500 ms. formatElapsedTime(50 * 60 * 60 * 1000 ) // Retorna 2 dias 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 time
number Tempo transcorrido informado em milissegundos.
stringFormat
string 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 startDate
Date Data inicial.
startHour
string Hora inicial.
endDate
Date Data final.
endHour
string Hora final.
format
string <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 year
number Ano do mês informado.
month
number 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 year
number Ano da data.
month
number Mês da data(0-11).
date
number Dia da data (1-31).
opt_weekDay
number <optional>
Dia da semana para corte da primeira semana do ano. Por padrão, será considerada a terça-feira conforme especificação.
opt_firstDayOfWeek
number <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 [, opt_days])
-
Retorna a data incrementada em uma quantidade de dias.
Parameters:
Name Type Argument Description date
Date Data base.
opt_days
number <optional>
Número de dias a ser incrementado a data base.
Returns:
Data incrementada.
- Type
- Date
-
module:@nginstack/engine/lib/date/incMonth(date [, opt_months])
-
Retorna a data incrementada em uma quantidade de meses.
Parameters:
Name Type Argument Description date
Date Data base.
opt_months
number <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 date
Date Data base.
opt_years
number <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 year
number 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 dateStr
string Data formatada ou expressão.
opt_options
Object <optional>
Opções.
Properties
Name Type Argument Description format
DateFormat <optional>
Formato desejado.
rangeLimit
Limit <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.
baseDate
Date <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)
-
Realiza o parser do ISO8601 para Date.
Parameters:
Name Type Description stringDate
string 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 date
date Data base.
string
string String no formato hh:mm:ss para ser setado na data base.
- Deprecated:
Returns:
- Type
- Date
-
module:@nginstack/engine/lib/date/skipHoliday(dt, uf, localidade [, holidays])
-
Retorna a data ou a próxima data a partir da informada que não seja um sábado, domingo ou feriado.
Parameters:
Name Type Argument Description dt
Date data base que será verificada.
uf
number de cadastro do feriado.
localidade
number Localidade de cadastro do feriado.
holidays
DataSet <optional>
Dataset com os feriados cadastrados. Caso não seja informado, será utilizado o cadastro de feriados da base corrente definidos pela classe "Feriados" (-1897053422). O DataSet informado deve ter o mesma esquema definido por essa classe.
Returns:
Retorna uma data válida a partir da informada.
- 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 date
Date 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.
Parameters:
Name Type Description num
number Número a ser convertido para hexadecimal.
Returns:
Representação do parâmetro num em hexadecimal.
- Type
- string
-
module:@nginstack/engine/lib/error/getStackTrace(error)
-
Obtém a pilha de funções chamadas do JavaScript. A lista só está disponível quando ocorre uma exceção.
Parameters:
Name Type Description error
Error Erro do qual será obtido a pilha de chamadas. Obrigatório no uso do runtime V8.
Returns:
Retorna array com a pilha de chamadas JavaScript.
- Type
- Array.<StackTraceElement>
-
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 bytes
number Número de bytes a serem formatados.
opt_decimals
number <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 val
number Valor a ser formatado.
opt_decimals
number <optional>
Quantidade de casas decimais. O padrão é 2.
opt_suffix
boolean <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 val
number Valor a ser formatado.
opt_decimals
number <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 val
number Valor do ângulo.
format
AngleFormat | 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 val
number Valor em graus decimais da latitude.
format
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 val
number Valor em graus decimais da longitude.
format
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 val
string Expressão do ângulo.
format
AngleFormat | 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 val
string Expressão da latitude a ser convertida para graus decimais.
format
LatitudeFormat | 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 val
string Expressão da longitude a ser convertida para graus decimais.
format
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 publicPath
string Caminho para o objeto.
object
* Objeto que será apontado pelo caminho informado.
opt_objectToExportTo
Object <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 str
string 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)
-
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.
Parameters:
Name Type Description key
number Chave do registro que deseja capturar a imagem.
Returns:
URL da imagem, null caso não exista imagem.
- Type
- string
-
module:@nginstack/engine/lib/jaz/listJazPackages()
-
Lista todos os pacotes JAZ instalados na UnionFS.
Returns:
Array com informações sobre os pacotes instalados.
- Type
- Array.<JazPackageInfo>
-
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 x
number Número a ser arredondado.
digits
number Quantidade máxima de casas decimais do número arredondado.
mode
number <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 num
number 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 x
number Valor a ser comparado com a faixa de precisão.
precisionTolerance
number 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 number
number Número a ser arredondado.
nDecimals
number 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 value
number Número a ser truncado.
nDecimals
number Quantidade de casas decimais de precisão.
- Deprecated:
Returns:
Número truncado.
- Type
- number
-
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 mediaType
DBKey | 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 url
string Localização do arquivo na internet.
path
string Local onde o arquivo será salvo.
ignoreSslErrors
boolean <optional>
Indica se certificados de segurança devem ser validados. Caso não seja informado, será considerado false.
-
module:@nginstack/engine/lib/object/declareProperty(obj, prop, descriptor)
-
Cria uma propriedade com getter e setter no formato suportado pelo Engine.
O propósito desta função é implementar parcialmente a funcionalidade do método
Object.defineProperty
, enquanto ele não é suportado nativamente pelo Engine. Diferentemente do comportamentoObject.defineProperty
, as propriedades criadas serão sempre configuráveis e enumeráveis, pois esse é o único comportamento permitido no Engine.O seu uso permite encapsular as definições do getter e setter, além de simplificar o JSDoc ao tornar desnecessário a documentação do getter, do setter e o uso do comentário especial **jsdoc.
Parameters:
Name Type Description obj
Object Objeto que terá a propriedade criada.
prop
string Nome da propriedade a ser criada.
descriptor
PropertyDescriptor Descrição da nova propriedade. Opções possíveis:
- get: getter da propriedade. Caso não seja informado, a leitura da
propriedade sempre retornará undefined.
- set: setter da propriedade. Caso não seja informado, a propriedade será somente para leitura.
- value: valor da propriedade. Não pode ser utilizado conjuntamente com get ou set.
Example
// Crie um comentário JSDoc para documentar a propriedade abaixo. Para fins de documentação, // ela será uma propriedade normal. No entanto, o defineProperty elimina essa definição // e cria um getter e, opcionalmente, um setter para ela. const declareProperty = require('@nginstack/engine/lib/object/declareProperty'); MyClass.prototype.test = 0; declareProperty(MyClass.prototype, 'test', (function () { MyClass.prototype.test_ = ''; return { get: function () { return this.test_; }, set: function (val) { if (val >= 0) { this.test_ = val; } else { throw new Error('Não são permitidos valores negativos.'); } } }; })());
- get: getter da propriedade. Caso não seja informado, a leitura da
propriedade sempre retornará undefined.
-
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 object
Object | Array Objeto a ser clonado.
Returns:
Clone.
- Type
- Object | 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 str
string 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 obj
Object Objeto a ser iterado.
f
function 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_obj
Object <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 obj
Object Objeto a ser iterado.
f
function 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_obj
Object <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 obj
Object Objeto a ser iterado.
f
function 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_obj
Object <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 object
Object 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 childConstructor
function Classe filha.
parentConstructor
function 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 obj
Object 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 obj
Object Objeto que será iterado.
f
function 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_obj
Object <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 obj
Object O mapa que será iterado.
func
function 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).val
Object O valor inicial passado para a função f na primeira iteração.
opt_obj
Object <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 obj
Object Objeto a ser iterado.
f
function 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_obj
Object <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 func
function Função que será executada.
opt_thisObj
Object <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 key
number A chave do registro que aponta para outro.
foreignKey
number 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 productKey
number 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 key
number 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 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 taskName
string Nome da tarefa.
func
function Função com a atividade que será executada com geração do progresso.
opt_thisObj
Object <optional>
Valor de this no contexto da função func.
Returns:
Retorno da função informada em func.
- Type
- *
Example
var applyWithProgress = require('@nginstack/engine/lib/progress/applyWithProgress'); var 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 taskName
string Nome da tarefa.
totalWork
number Indica quantas vezes a função worked será chamada por func.
func
function Função com a atividade que será executada com geração do progresso.
opt_thisObj
Object <optional>
Valor de this no contexto da função func.
Returns:
Retorno da função informada em func.
- Type
- *
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 text
string Texto que será pesquisado.
exp
Regex | 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 text
string Texto que será pesquisado
exp
Regex | 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 text
string A string na qual ocorrerá a substituição.
exp
string | Regex A expressão regular a ser utilizada.
replacement
string 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(vfsScriptKey [, parametersNames] [, parametersValues])
-
Executa um script no Engine que está executando a sessão corrente.
Parameters:
Name Type Argument Description vfsScriptKey
number Chave do script que deve ser executado.
parametersNames
Object <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()]);
-
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. * title: cada palavra com mais de uma letra será iniciada com maiúscula exceto as preposições mais comuns. * statement: cada palavra que inicie um parágrafo será iniciada com letra maiúscula.
Parameters:
Name Type Description s
string Texto a ser o case ajustado.
caseType
string 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 str
string 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.
Parameters:
Name Type Description str
string String a ter os caracteres especiais substituídos por uma sequência de escape.
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 str
string 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 value
number Valor a ser formatado.
decimalPrecision
number Precisão decimal padrão.
minPrecision
number Mínimo de precisão decimal a formatar.
maxPrecision
number 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 format
string O template que contém os especificadores.
var_args
string | 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 identifier
string 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 Description str
string String onde será realizada a busca.
chars
Array.<string> Caracteres que serão procurados em str.
index
number Í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/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 name
string Nome a ser convertido.
opt_capitalize
boolean <optional>
Indica se deve retornar a primeira letra em maiúscula.
opt_preserveCaseIfOnlyAWord
boolean <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 s
string 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 num
number O valor numérico que será complementado.
length
number O tamanho desejado.
opt_precision
number <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 content
string Texto a ser complementado.
size
size Tamanho da string desejada.
align
string <optional>
Alinhamento de content dentro da string retornada. Valores possíveis: 'left', 'right' ou 'center'. Será considerado 'left' caso não seja informado.
padChar
string <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 str
string 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 s
string A string da qual será removida uma parte.
index
number A posição da qual será removida a substring.
stringLength
number 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 str
string String de onde serão removidos os caracteres.
arrayChar
Array.<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 str
string 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 str
string A string que terá o prefixo removido.
prefix
string 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 str
string A string que terá o sufixo removido.
suffix
string 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
searchValue
emstr
substituídas porreplaceValue
.Parameters:
Name Type Description str
string A string que terá as ocorrências
searchValue
substituídas.searchValue
string Valor a ser substituído.
replaceValue
string Valor que substituíra
searchValue
.Returns:
Uma nova string com as ocorrências de
searchValue
substituí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 s
string 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
referenceStr
vem antes, depois ou se é equivalente acompareStr
em 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
string
do 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 referenceStr
string String que será comparada.
compareStr
string String contra a qual
referenceStr
será comparada.Returns:
Será retornado um número negativo se
referenceStr
vier 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 str
string 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 str
string 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 str
string 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
number
ouDBKey
, a máscara de formatação deve ter a seguinte estrutura:"%" ["-"] [tamanho] ["." precisão] tipo
Tipos suportados:
d
: decimal. O argumento será truncado para um inteiro de 32 bits e convertido em umastring
de 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 especificadorm
for seguido do especificadorh
ouhh
, 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 especificadormm
for seguido do especificadorh
ouhh
, 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).m
: exibe os minutos como um número não precedido de zero (0-59).mm
: 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.
format
string Formato a ser aplicado.
Returns:
Valor convertido em uma
string
de acordo comformat
. Se não for informado um formato, ou sevalue
não for numérico ou uma data, será realizada a conversão para umastring
por 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
string
que pode ser inserida em um HTML de forma opáca.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
,maxWordLength
ecrlfToBr
varia de acordo com o tipo devalue
e 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.
format
string <optional>
'' Formato opcional a ser aplicado caso
value
seja um número ou umDBKey
. Este parâmetro é ignorado para os demais tipos. Veja module:@nginstack/engine/lib/string/toFormattedString para os formatos suportados.maxWordLength
number <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.
crlfToBr
boolean <optional>
true Returns:
Valor convertido em uma
string
que 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 str
string 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 str
string String a ser normalizada.
Returns:
String normalizada.
- Type
- string
-
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.
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 func
function Função que será invocada ciclicamente.
timeout
number Tempo de espera limite.
opt_options
Object <optional>
Parâmetros opcionais da função.
Properties
Name Type Argument Description interval
number <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.
thisArg
Object <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 msecs
number 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_options
Object | Object <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( [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_options
Object | Object <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/dataset/addFields(ds, fields)
-
Cria os campos de um dataset a partir das definições.
Parameters:
Name Type Description ds
DataSet Dataset não inicializado
fields
Array.<{name: string, type: string, size: number=}> Definições dos campos de acordo com os parâmetros definidos em DataSet.createField.
Returns:
DataSet com os campos criados.
- Type
- DataSet
-
module:@nginstack/engine/lib/testing/dataset/newDataSet(fields)
-
Cria um DataSet a partir das definições dos campos.
Parameters:
Name Type Description fields
Array.<{name: string, type: string, size: string=}> Definições dos campos de acordo com os parâmetros definidos em DataSet#createField.
Returns:
DataSet com os campos criados.
- Type
- DataSet
-
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 product
number 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 fileKey
number 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 baseUri
string URI to use as the base.
path
string 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 url
string 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 removeFormatChars
boolean 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/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 str
string 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 str
string 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/engine/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 a
string Primeira versão da comparação.
b
string 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/orm/lib/persistDataSets(dataSets)
-
Persiste os dataSets informados no banco de dados, emitindo os eventos beforePersist e afterPersist configurados na definição das classes (x-model) dos registros modificados. Será emitido o evento para cada registro inserido, modificado ou excluído, mas não serão emitidos para os registros não modificados. Dessa forma, se forem informados DataSets sem modificações, não haverá emissão dos eventos.
Parameters:
Name Type Description dataSets
DataSet | Array.<DataSet> DataSets a serem persistidos no banco de dados.
Returns:
Versão (campo iVersion ou VERSAO) dos registros após a persistência no banco de dados.
- Type
- number
-
module:@nginstack/web-framework/lib/classdef/classHasGlobalActions(classKey)
-
Checa se uma classe têm ações globais configuradas.
Parameters:
Name Type Description classKey
number Chave da classe.
Returns:
Indica se a classe possui ações globais.
- Type
- boolean
-
module:@nginstack/web-framework/lib/classdef/getGlobalActions(classKey, key)
-
Obtém todas as âncoras definidas em uma classe de dados. É importante ressaltar que esse método roda os eventos "onShow" da module:@nginstack/web-framework/lib/classdef/GlobalActions e das module:@nginstack/web-framework/lib/classdef/GlobalAction. Esta função funciona como um filtro antes da exibição das ações e por isso os eventos são executados.
Parameters:
Name Type Description classKey
number Chave da classe que contém as ações.
key
number Chave do registro ao qual se quer as ações possíveis.
Returns:
Ações válidas para serem exibidas.
- Type
- Array.<GlobalAction>
-
module:@nginstack/web-framework/lib/connection/newConnection(key [, opt_dbName])
-
Cria uma nova conexão para o engine informado. Caso não consiga estabelecer uma conexão, sobe um erro acusando o insucesso.
Parameters:
Name Type Argument Description key
number Chave do cadastro do Engine.
opt_dbName
string <optional>
Nome da base de dados que se deseja conectar. Há a possibilidade de não se desejar uma conexão nomeada, por este motivo, este parâmetro é opcional.
Returns:
Instância de Connection para o Engine informado.
- Type
- Connection
-
module:@nginstack/web-framework/lib/connection/tryNewConnection(key [, opt_dbName])
-
Tenta criar uma nova conexão para o engine informado. Caso não consiga estabelecer uma conexão, retorna null.
Parameters:
Name Type Argument Description key
number | Object Chave do cadastro do Engine ou lista de endereços e portas que o engine responde.
opt_dbName
string <optional>
Nome da base de dados que se deseja conectar. Há a possibilidade de não se desejar uma conexão nomeada, por este motivo, este parâmetro é opcional.
Returns:
Instância de Connection para o Engine informado.
- Type
- Connection
-
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 style
Object.<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/formatLinkTag(cssFile)
-
Formata uma tag "link" para carregar o arquivo CSS informado em um navegador Web.
Parameters:
Name Type Description cssFile
number | number Chave do arquivo CSS na VFS ou URL do arquivo.
Returns:
Tag "link" para o arquivo CSS informado.
- Type
- string
-
module:@nginstack/web-framework/lib/css/formatStyleAttr(styles)
-
Gera um atributo style com os estilos informados.
Parameters:
Name Type Description styles
Object.<string, *> Mapa com os estilos que devem ser adicionados no atributo.
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 dim
number | string Dimensão a ser normalizada.
Returns:
Dimensão válida a ser utilizada no estilo.
- Type
- string
-
module:@nginstack/web-framework/lib/engine/getAddressesAndPorts(key)
-
Prepara uma lista de endereços e portas a partir de um engine informado.
Parameters:
Name Type Description key
number Chave do cadastro do Engine.
Returns:
- Type
- Object
-
module:@nginstack/web-framework/lib/html/formatImageTag(uri [, opt_options])
-
Gera uma tag
para a exibição de uma imagem.
Parameters:
Name Type Argument Description uri
number | string Chave ou URI da imagem na VFS.
opt_options
Object <optional>
Opções de renderização para a imagem.
Properties
Name Type Argument Description style
string <optional>
Estilo CSS inline a ser usado na tag gerada.
id
string <optional>
Identificador do elemento DOM associado a imagem.
cssClass
string <optional>
Classe CSS a ser utilizada pela imagem.
mailObject
Mail <optional>
objeto de email no qual a imagem será inclusa.
Returns:
Tag
formatada de acordo com os parâmetros informados. O uso desta função, quando utilizada para envio de emails, é restrita para arquivos existentes na VFS. Portanto, a URI deve ser uma chave da VFS ou uma URI que aponte para uma arquivo da VFS. Caso não seja, será retornada uma string vazia se mailObject for informado.
- Type
- string
-
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.
format
number | 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 url
string URL de onde tentará ser extraída a chave.
Returns:
key Chave caso exista. Retornará null caso não encontre na iVfs.
- Type
- number