Sample code for 30+ languages & platforms
PowerBuilder

JavaScript console

See more JavaScript Examples

Demonstrates console output using Chilkat JavaScript.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_SbScript
oleobject loo_Js
oleobject loo_Result
oleobject loo_SbOut

li_Success = 0

// This example demonstrates using the built-in console object.
// The Javascript run in this example is shown below.

// Load the JavaScript from a file.
loo_SbScript = create oleobject
li_rc = loo_SbScript.ConnectToNewObject("Chilkat.StringBuilder")
if li_rc < 0 then
    destroy loo_SbScript
    MessageBox("Error","Connecting to COM object failed")
    return
end if
li_Success = loo_SbScript.LoadFile("qa_data/js_tests/test_console.js","utf-8")
if li_Success = 0 then
    Write-Debug loo_SbScript.LastErrorText
    destroy loo_SbScript
    return
end if

loo_Js = create oleobject
li_rc = loo_Js.ConnectToNewObject("Chilkat.Js")

loo_Result = create oleobject
li_rc = loo_Result.ConnectToNewObject("Chilkat.JsonObject")

// Run the JavaScript
// Results (not console output) go to result.
// Note: Eval returns the completion value of the script. This is generally the value of the last evaluated expression.
// In this case, the last evaluated expression is console.log which does not calculate a value. Therefore, it returns undefined.
li_Success = loo_Js.Eval(loo_SbScript,loo_Result)
if li_Success = 0 then
    Write-Debug loo_SbScript.LastErrorText
    destroy loo_SbScript
    destroy loo_Js
    destroy loo_Result
    return
end if

// We can look at the result, which is "undefined", which is normal and expected.
Write-Debug loo_Result.Emit()
// The result JSON is: {"type":"undefined","value":"undefined"}

// The console output is retrieved by calling ConsoleOutputSb
loo_SbOut = create oleobject
li_rc = loo_SbOut.ConnectToNewObject("Chilkat.StringBuilder")

loo_Js.ConsoleOutputSb(loo_SbOut)
Write-Debug loo_SbOut.GetAsString()


destroy loo_SbScript
destroy loo_Js
destroy loo_Result
destroy loo_SbOut