News:

SMF - Just Installed!

Main Menu

Recent posts

#1
BOI Overview / ScriptBasic BOI
Last post by root - Today at 03:32 AM
ScriptBasic can be used for both internal and external BOI scripting. It's pretty much a line for line translation of VBScript COM syntax. The following is an example of using the customer business object to get the first key in the file.



ScriptBasic COM includes an interface viewer that makes working with the object ScriptBasic friendly.



#2
BOI Overview / VBScript Deprecation
Last post by root - Today at 03:18 AM
If you are a Sage 100 partner or user that uses Custom Office with BOI (Business Object Interface) scripts that are written in Microsoft VBScript to Interface with ProvideX via a COM interface, take note.

Microsoft has deprecated VBScript in WSH (Windows Shell Host) which is an optional install on Windows 11 and to be removed in 2027 is the plan. VBScript: Officially deprecated by Microsoft as of October 2023. It is largely being replaced by Windows PowerShell for administrative tasks.

ScriptBasic is an embeddable traditional BASIC scripting engine written in ANSI C with a 800 KB footprint. It supports COM to Interface with Sage 100 BOI. I have been using ScriptBasic for years for external BOI interfaces for clients.

Sage 100 currently supports WSH and ProvideX as scripting options. I'm in the process of adding ScriptBasic as an option. ScriptBasic COM is line for line equivalent to VBScript. I plan to write a script to convert VBScript code to ScriptBasic COM.

An added advantage of using ScriptBasic is beside COM support, you can make REST calls from your BOI scripts directly. ODBC, MySQL, SQLite and other extension modules are also available from within ScriptBasic.

The memory footprint for PowerShell typically starts around 30 MB to 100 MB for an idle session, but can quickly scale into the gigabytes depending on the scripts and data being processed. Because it is built on the .NET framework, it uses a managed memory model where memory is allocated and released through a garbage collector.

Windows Script Host (WSH) typically running via wscript.exe or cscript.exe is known for having a very low, lightweight memory footprint, often occupying only a few megabytes of RAM for simple scripts.




#3
Language Features / History and Resources
Last post by root - Today at 02:51 AM
ScriptBasic is written in ANSI C with an object like API. The scripting engine is embeddable, with a thread safe memory manager and virtually unlimited expandability. The core language uses one source tree for all platforms. Variables are maintained in a variant like structure and typeless until used. ScriptBasic runs as console and Windows interpreter, embedded as a DLL and as a multi-threaded webserver. A IDE / Debugger is included.



Script BASIC comes with an array of industry standard library extension modules and a multi-threaded proxy HTTPD application server running as an OS service.

Scripting doesn't get any easier and based on a language syntax we all grew up with.

My only complaint about ProvideX is everything is an emulation.

History:

ScriptBasic was created by Peter Verhas from Hungary in 2000. Peter moved on to work for a company in Switzerland as a Java developer. I took over maintaining the project in 2006. I've added numerous C extension module libraries for seamless integration with the language. There have been others over the years contributing to the project to make it what it is today.

Repository

The ScriptBasic 32 bit Windows version is available in an Inno install and comes with examples showing how the extension modules are used.

ScriptBasic 32 bit Install


Documentation:

ScriptBasic User Guide



#4
Introduction / Welcome
Last post by root - Today at 12:55 AM
I would like to welcome Sage 100 users to the Open Sage BOI peer support forum.

If you would like to post to this forum, send me an email to e-mail@johnspikowski.com to become a registered user.

I maintain the ScriptBasic open source project in my spare time being an open source advocate. If you find ScriptBasic helpful with your projects, buying me a 'coffee' would be appreciated.

Buy me a coffee