2017.9

Data de postagem: Sep 25, 2017 5:35:30 PM

Publicação Técnica

    • As classes e funções globais nativas do ambiente JavaScript do Engine e do pacote engine.jaz foram migradas para uma nova estrutura de módulos no padrão CommonJS. Essa migração não altera o comportamento dos códigos existentes no sistema, pois todos os símbolos globais foram mantidos para fins de compatibilidade. A nova estrutura de módulos é uma funcionalidade experimental do sistema e ainda não deve ser utilizada em customizações ou produtos desenvolvidos na plataforma Bematech ERP. Por ser uma funcionalidade experimental, ainda são esperadas alterações de estruturas que podem exigir a revisão do uso dos módulos. Será criada uma publicação técnica quando nova estrutura de módulos estiver amadurecida e pronta para ser utilizada pelos clientes e parceiros. Segue a relação das APIs migradas:

        • getStackTrace: erp-engine/lib/error/getStackTrace

        • ApplyUpdatesAction: erp-engine/lib/dataset/ApplyUpdatesAction

        • DataSet: erp-engine/lib/dataset/DataSet

        • DataSetStates: erp-engine/lib/dataset/DataSetStates

        • GetFieldOptions: erp-engine/lib/dataset/GetFieldOptions

        • DetailedError: erp-engine/lib/error/DetailedError

        • Request: erp-engine/lib/http/Request

        • Response: erp-engine/lib/http/Response

        • Barcode: erp-engine/lib/barcode/Barcode

        • Base64: erp-engine/lib/encoding/Base64

        • Encoder: erp-engine/lib/encoding/Encoder

        • Logger: erp-engine/lib/log/Logger

        • BigDecimal: erp-engine/lib/math/BigDecimal

        • JSScanner: erp-engine/lib/compiler/ijs/JSScanner

        • JSSpecialWord: erp-engine/lib/compiler/ijs/JSSpecialWord

        • JSTokenType: erp-engine/lib/compiler/ijs/JSTokenType

        • JSTokenWord: erp-engine/lib/compiler/ijs/JSTokenWord

        • Classes: erp-engine/lib/database/Classes

        • StreamedDatabaseBackup: erp-engine/lib/database/DBBackup

        • DatabaseProxy: erp-engine/lib/database/Database

        • DBCache: erp-engine/lib/database/DBCache

        • Zlib: erp-engine/lib/compress/Zlib

        • GzipFile: erp-engine/lib/compress/GzipFile

        • Connection: erp-engine/lib/connection/Connection

        • FileSynchronizer: erp-engine/lib/connection/FileSynchronizer

        • Crypto: erp-engine/lib/crypto/Crypto

        • CryptoPKey: erp-engine/lib/crypto/CryptoPKey

        • DSACryptoPKey: erp-engine/lib/crypto/DSACryptoPKey

        • RSACryptoPKey: erp-engine/lib/crypto/RSACryptoPKey

        • MD5: erp-engine/lib/crypto/MD5

        • SHA1: erp-engine/lib/crypto/SHA1

        • Mail: erp-engine/lib/mail/Mail

        • MailMessage: erp-engine/lib/mail/MailMessage

        • MailMessageHeader: erp-engine/lib/mail/MailMessageHeader

        • MailMessagePart: erp-engine/lib/mail/MailMessagePart

        • Pop3: erp-engine/lib/mail/Pop3

        • VirtualFileSystem: erp-engine/lib/vfs/VirtualFileSystem

        • MemoryManager: erp-engine/lib/engine/MemoryManager

        • Session: erp-engine/lib/session/Session

        • SessionManager: erp-engine/lib/session/SessionManager

        • CriticalSection: erp-engine/lib/sync/CriticalSection

        • sleep: erp-engine/lib/sync/sleep

        • SyncEvent: erp-engine/lib/sync/SyncEvent

        • StringUtils.indexOfChars: erp-engine/lib/string/indexOfChars

        • StringUtils.removeChars: erp-engine/lib/string/removeChars

        • File: erp-engine/lib/io/File

        • MemoryStream: erp-engine/lib/io/MemoryStream

        • SearchRecord: erp-engine/lib/io/SearchRecord

        • SerialPort: erp-engine/lib/io/SerialPort

        • IdoDB: erp-engine/lib/ido/IdoDB

        • IdoDBManager: erp-engine/lib/ido/IdoDBManager

        • Enginelet: erp-engine/lib/java/Enginelet

        • JavaImporter: erp-engine/lib/java/JavaImporter

        • JavaRequest: erp-engine/lib/java/JavaRequest

        • JavaServer: erp-engine/lib/java/JavaServer

        • LicenseManager: erp-engine/lib/license/LicenseManager

        • Socket: erp-engine/lib/net/Socket

        • XMLHttpRequest: erp-engine/lib/net/XMLHttpRequest

        • OSApplication: erp-engine/lib/os/OSApplication

        • Profiler: erp-engine/lib/profiler/Profiler

        • Progress: erp-engine/lib/progress/Progress

        • ProgressMonitor: erp-engine/lib/progress/ProgressMonitor

        • TaskProgressStatus: erp-engine/lib/progress/TaskProgressStatus

        • TaskProgressStatusArray: erp-engine/lib/progress/TaskProgressStatusArray

        • Scheduler: erp-engine/lib/scheduler/Scheduler

        • Task: erp-engine/lib/scheduler/Task

        • Security: erp-engine/lib/security/Security

        • Engine, Server e ngin.browser.setKioskMode: erp-engine/lib/engine/Engine

        • ngin.DataSetUtils: erp-engine/lib/dataset/DeltaDumper

        • ngin.text.toLowerCaseNoAccent: erp-engine/lib/string/toLowerCaseNoAccent

        • ngin.text.toUpperCaseNoAccent: erp-engine/lib/string/toUpperCaseNoAccent

        • ngin.text.removeAccents: erp-engine/lib/string/removeAccents

        • ngin.text.Regex: erp-engine/lib/regexp/Regex

        • ngin.text.ResourceString: erp-engine/lib/i18n/ResourceString

        • ngin.util.createGUID: erp-engine/lib/uuid/createGUID

        • ngin.util.ZipFile: erp-engine/lib/compress/ZipFile

        • ngin.util.numberToHex: erp-engine/lib/encoding/numberToHex

        • ngin.dataset.DeltaInspector: erp-engine/lib/dataset/DeltaInspector

        • ngin.dataset.RecordIterator: erp-engine/lib/dataset/RecordIterator

        • ngin.ufs.UnionFileSystem e ngin.ufs.configureWithLocalSettings: erp-engine/lib/ufs/UnionFileSystem

        • ngin.hash.superFastHash: erp-engine/lib/hash/superFastHash

        • ngin.idobkp.EventReader: erp-engine/lib/ido/BackupEventReader

        • ngin.net.downloadFile: erp-engine/lib/net/downloadFile

        • ngin.scheduler.Job: erp-engine/lib/scheduler/Job

        • ngin.security.AuthToken: erp-engine/lib/security/AuthToken

        • ngin.js.ScriptRunner: erp-engine/lib/runner/ScriptRunner

        • ngin.array.fromArguments: erp-engine/lib/array/argumentsToArray

        • ngin.array.flatten: erp-engine/lib/array/flatten

        • ngin.array.equals: erp-engine/lib/array/arrayEquals

        • ngin.array.listToArray: erp-engine/lib/array/listToArray

        • ngin.compression.jsmin: erp-engine/lib/compress/jsmin

        • ngin.date.WeekDay: erp-engine/lib/date/WeekDay

        • ngin.date.Month: erp-engine/lib/date/Month

        • ngin.date.getWeekNumber: erp-engine/lib/date/getWeekNumber

        • ngin.date.formatTime: erp-engine/lib/date/formatTime

        • ngin.date.phpFormat: erp-engine/lib/date/phpFormatDate

        • ngin.date.Formats: erp-engine/keys/DateFormats

        • ngin.date.firstWeekDayOf: erp-engine/lib/date/firstWeekDayOf

        • ngin.date.firstMonthDayOf: erp-engine/lib/date/firstMonthDayOf

        • ngin.date.format: erp-engine/lib/date/formatDate

        • ngin.date.parse: erp-engine/lib/date/parseDate

        • ngin.date.incDate: erp-engine/lib/date/incDate

        • ngin.date.incMonth: erp-engine/lib/date/incMonth

        • ngin.date.checkRange: erp-engine/lib/date/checkRange

        • ngin.date.formatElapsedTime: erp-engine/lib/date/formatElapsedTime

        • ngin.date.fromFields: erp-engine/lib/date/fieldsToDate

        • ngin.date.parseISO8601Date: erp-engine/lib/date/parseISO8601Date

        • ngin.date.skipHoliday: erp-engine/lib/date/skipHoliday

        • ngin.date.isLeapYear: erp-engine/lib/date/isLeapYear

        • ngin.date.getNumberOfDaysInMonth: erp-engine/lib/date/getNumberOfDaysInMonth

        • ngin.error.DetailedErrorBase: erp-engine/lib/error/DetailedErrorBase

        • ngin.event.AdapterDescriptor: erp-engine/lib/event/AdapterDescriptor

        • ngin.event.Adapter: erp-engine/lib/event/Adapter

        • ngin.event.ListenerCompareFunctions: erp-engine/lib/event/ListenerCompareFunctions

        • ngin.event.DuplicationHandling: erp-engine/lib/event/DuplicationHandling

        • ngin.event.Emitter: erp-engine/lib/event/Emitter

        • ngin.event.Event: erp-engine/lib/event/Event

        • ngin.event.EventTypeException: erp-engine/lib/event/EventTypeError

        • ngin.event.Listener: erp-engine/lib/event/Listener

        • ngin.event.SurrogateListener: erp-engine/lib/event/SurrogateListener

        • ngin.http.Accepts: erp-engine/lib/http/Accepts

        • ngin.http.Error: erp-engine/lib/http/HttpError

        • ngin.http.Header: erp-engine/lib/http/Header

        • ngin.http.MediaType: erp-engine/lib/http/MediaType

        • ngin.http.Method: erp-engine/lib/http/Method

        • ngin.http.RealmConfig: erp-engine/lib/http/RealmConfig

        • ngin.http.RequestBody: erp-engine/lib/http/RequestBody

        • ngin.http.ServerId: erp-engine/lib/http/ServerId

        • ngin.http.Status: erp-engine/lib/http/Status

        • ngin.keys.Classes: erp-engine/keys/Classes

        • ngin.keys.MimeTypes: erp-engine/keys/MimeTypes

        • ngin.module.Module: erp-engine/lib/module/Module

        • ngin.module.SourceModule: erp-engine/lib/module/SourceModule

        • NetworkUtilities e ngin.net.NetworkUtilities: erp-engine/lib/net/NetworkUtilities

        • ngin.object.map: erp-engine/lib/object/map

        • ngin.object.forEach: erp-engine/lib/object/forEach

        • ngin.object.reduce: erp-engine/lib/object/reduce

        • ngin.object.isEmpty: erp-engine/lib/object/isEmpty

        • ngin.object.deepClone: erp-engine/lib/object/deepClone

        • ngin.object.declareProperty: erp-engine/lib/object/declareProperty

        • ngin.object.getOwnPropertyDescriptor: erp-engine/lib/object/getOwnPropertyDescriptor

        • ngin.object.remove: erp-engine/lib/object/remove

        • ngin.object.createSet: erp-engine/lib/object/createSet

        • ngin.range.Limit: erp-engine/lib/range/Limit

        • ngin.regexp.replace: erp-engine/lib/regexp/replaceAll

        • ngin.regexp.findFirstMatch: erp-engine/lib/regexp/findFirstMatch

        • ngin.regexp.findMatches: erp-engine/lib/regexp/findMatches

        • ngin.router.Broker: erp-engine/lib/router/Broker

        • ngin.router.Controller: erp-engine/lib/router/Controller

        • ngin.router.Result: erp-engine/lib/router/RouteResult

        • ngin.router.Route: erp-engine/lib/router/Route

        • ngin.router.RouteDef: erp-engine/lib/router/RouteDef

        • ngin.router.RouteSet: erp-engine/lib/router/RouteSet

        • ngin.router.RouteSetDef: erp-engine/lib/router/RouteSetDef

        • ngin.router.RoutesValidator: erp-engine/lib/router/RoutesValidator

        • ngin.router.DefaultResultTransforms: erp-engine/lib/router/DefaultTransforms

        • ngin.security.Application e SecurityPolicyApplications: erp-engine/lib/security/SecurityPolicyApplication

        • ngin.security.SecurityPolicy e SecurityPolicy: erp-engine/lib/security/SecurityPolicy

        • ngin.string.capitalize: erp-engine/lib/string/capitalize

        • ngin.uri.appendPath: erp-engine/lib/url/appendPath (por Paulo César Moreno, #13084246)

        • [-1898142643,0100 Engine.ijs]

        • [-1898141721,engine.jaz]

        • [-1898140346,erp-engine.jaz]

        • [-1898140955,0310 RouterTests API.ijs]

        • [-1898141307,0100 Service Status API.ijs]

        • [-1898141304,0200 OAuth2 API.ijs]

        • [-1898144796,0100 Engine.is]

        • [-1892603660,webframework.jaz]

        • [-1898141262,8000 CORS.ijs]