eMOBIQ Documentation
eMOBIQ Platfom
eMOBIQ Client
eMOBIQ Client
  • Getting Started
  • How Pricing Works in eMOBIQ AI
  • Platform Interface Reference
  • Page Rendering Behaviour
  • Ui Components
    • Basic
      • Frame
      • Image
      • Label
      • Panel
      • Streamcamera
      • Streamplayer
      • Video
    • Forms
      • Button
      • Checkbox
      • Combobox
      • Datepicker
      • Edit
      • Memo
      • Radiobutton
      • Timepicker
    • General
      • Barcode
      • Chart
      • Datalist
        • Datalist
        • Using Datalist
      • Map
      • Pdf
      • Qrcode
      • Signature
      • Snippet
    • Payment
      • Paypal
  • Events Reference
  • Actions And Visual Logic
    • Action Reference
      • Cordova
        • App
          • animate
          • bbCodeToCanvas
          • bbCodeToCanvasSync
          • canvasGenerate
          • canvasGenerateFrom
          • canvasHeight
          • canvasResize
          • canvasToDataURL
          • canvasToImage
          • clearAllVar
          • comment
          • componentAttr
          • componentElAttr
          • ComponentElement
          • componentMethod
          • componentValue
          • console
          • convertImageToBase64
          • disablePage
          • displaySnippet
          • enablePage
          • getAppVersion
          • getComponent
          • getLanguage
          • getLanguageList
          • getVar
          • getVarAttr
          • hideElement
          • inactivityTimeout
          • isElementShown
          • istampzRequest
          • languageConvertData
          • methodCall
          • nfcStartRead
          • nfcStopRead
          • nfcWrite
          • openlink
          • pullToRefresh
          • reload
          • remComponentElAttr
          • renderTemplate
          • resolveJSName
          • scroll
          • sendMail
          • setComboOptions
          • setCompoentFocus
          • setComponentAttr
          • setComponentElAttr
          • setComponentLink
          • setComponentValue
          • setLanguage
          • setVar
          • share
          • showElement
          • sortingDisable
          • sortingEnable
        • Array
          • avg
          • count
          • findArrayIndex
          • newArray
          • newObject
          • pop
          • push
          • pushObject
          • removeObject
          • shift
          • sort
          • sum
          • unshift
        • Browser
          • valueFromURL
        • Chart
          • chartPopulateAreaData
          • chartPopulateAreaSplineData
          • chartPopulateBarData
          • chartPopulateDonutData
          • chartPopulateGaugeData
          • chartPopulateLineData
          • chartPopulatePieData
          • chartPopulateScatterPlotData
          • chartPopulateSplineData
          • chartPopulateStepAreaData
          • chartPopulateStepData
        • Comparation
          • equal
          • equalOrGreater
          • equalOrLess
          • greater
          • less
          • notEqual
        • Conversion
          • encodeURI
          • fontHuge
          • fontLarge
          • fontNormal
          • fontSmall
          • generateBarcode
          • generateQRCode
          • join
          • jsonDecode
          • jsonEncode
          • round
          • split
          • toBoolean
          • toFloat
          • toInteger
          • toNull
          • toString
          • xmlDecode
        • Dataset
          • acumaticaCall
          • axCall
          • clearAllData
          • clearData
          • crm365Call
          • crmCall
          • dataFieldToArray
          • dataFromString
          • dataToString
          • deleteBy
          • deleteByMulti
          • deleteData
          • dynamicsGPCall
          • filterData
          • insert
          • insertData
          • loadData
          • loadNext
          • mssqlCall
          • mssqlQuery
          • navCall
          • query
          • rawCall
          • sageCall
          • sapB1Call
          • selectAll
          • selectBy
          • selectByMulti
          • soapCall
          • updateBy
          • updateByMulti
          • updateData
        • Device
          • HNSPublishMessage
          • HNSPushList
          • HNSPushMessageByUserId
          • HNSPushNotification
          • HNSRegisterUser
          • HNSSubscribeTopic
          • keyboardShow
          • addFaceAzure
          • addPersonAzure
          • barcodeScanDisable
          • barcodeScanEnable
          • barcodeScanEvent
          • unregisterBarcodeScanEvent
          • barcodeScanTrigger
          • barcodeScanner
          • captureAudio
          • captureImage
          • captureVideo
          • clearAccelerometer
          • clearExternalAppData
          • clearPosition
          • closeAudio
          • currentAccelerometer
          • dateTimeChooser
          • detectFaceAzure
          • deviceAddTouchSensor
          • deviceBeep
          • deviceHasTouchSensor
          • deviceId
          • deviceManufacturer
          • deviceName
          • deviceOS
          • deviceOSVersion
          • deviceRemoveTouchSensor
          • deviceSerial
          • deviceVerifyTouchSensor
          • deviceVibrate
          • exitApp
          • fileChooser
          • fileGetDetails
          • getExternalAppData
          • getLocation
          • identifyFaceAzure
          • imageChooser
          • keepScreenOn
          • keyboardHide
          • networkInformation
          • networkPrintingCheck
          • networkPrintingPrint
          • networkStatus
          • onBackButton
          • openAudio
          • openExternalApp
          • pauseAudio
          • playAudio
          • removeGroupAzure
          • removePersonAzure
          • screenBrightness
          • sendMailSMTP
          • setSizeDisk
          • socketConnect
          • socketDisconnect
          • socketLeave
          • socketListener
          • socketSend
          • startBeacon
          • startBeaconMonitoring
          • startStream
          • statusBarHide
          • statusBarShow
          • stopAudio
          • stopBeacon
          • stopBeaconMonitoring
          • stopStream
          • textToSpeech
          • verifyFaceFromPhotoAzure
          • watchAccelerometer
          • watchPosition
        • Dialog
          • confirmDialog
          • infoDialog
          • inputDialog
          • modalDialog
        • Facebook
          • facebookLogout
        • File
          • Copy
          • Delete
          • Download
          • Read
          • backupSqlite
          • open
          • restoreSqlite
          • saveBase64ToGallery
          • storagePath
          • write
        • Firebase
          • firebaseStorageDelete
          • firebaseStorageURL
          • firebaseStorageUpload
        • Flow
          • break
          • callback
          • clearInterval
          • conditional
          • continue
          • doWhileLoop
          • forLoop
          • map
          • setInterval
          • setTimeout
          • throw
          • tryCatch
          • whileLoop
        • Global
          • defaultImage
          • generateRandomAlphabet
          • generateRandomAlphanumeric
          • generateRandomNumber
          • getCurrentPage
          • getPreviousPage
          • gotoPage
          • makeId
          • openInternalBrowser
        • Google
          • googleLogin
          • googleLogout
          • mapAddMarker
          • mapClearMarker
          • mapDeleteMarker
          • mapFitBounds
          • mapGetZoom
          • mapRemoveClickListener
          • mapRoute
          • mapSetCenter
          • mapSetClickListener
          • mapSetZoom
          • placeAutoComplete
        • Intent
          • intentMaps
          • intentNavigation
          • intentPhoneCall
          • intentSMS
          • intentSendEmail
        • Logical
          • and
          • not
          • or
          • xor
        • Math
          • Absolute
          • add
          • atan2
          • ceil
          • cos
          • div
          • floor
          • max
          • min
          • mod
          • multi
          • pi
          • plus
          • pow
          • sin
          • sqr
          • sqrt
          • sub
          • tan
        • Object
          • addDate
          • convertTimezoneDate
          • dateDiff
          • dbDate
          • formatDate
          • formatNumber
          • objectAttr
          • objectKeys
          • objectValues
          • setObjectAtt
          • strToDate
          • toArray
          • toObject
        • Pdf
          • pdfGenerate
        • Payment
          • 2c2pPaymentRequest
          • eNetsPaymentRequest
          • generatePaynowQR
          • macAuthenticate
          • mcpEWalletQuickPay
          • mcpEWalletUnifiedOrder
          • mcpGetTransactions
          • mcpGetTranscationDetails
          • mcpTransactRefund
          • mcpTransactSales
          • mcpTransactVoid
          • paypalGenerateButton
        • Printer
          • btPrinterConnect
          • btPrinterDisconnect
          • btPrinterIsConnected
          • btPrinterPortList
          • btPrinterPrint
          • btPrinterRead
          • canvasToCPCL
          • canvasToESCP
          • canvasToESCPOS
          • canvasToEXPCL
          • canvasToZPL
          • formatToCPCL
          • formatToESCPOS
          • qrToESCPOS
          • setPrintStyle
        • Signature
          • signatureRedraw
        • Specialcharacter
          • sc_carriageReturn
          • sc_esc
          • sc_escape
          • sc_horizontalTab
          • sc_lineFeed
          • sc_space
        • String
          • capitalize
          • concat
          • decodeBase64String
          • decrypt
          • encodeBase64String
          • encrypt
          • findIndex
          • increment
          • left
          • length
          • lowerCase
          • mid
          • padString
          • replace
          • right
          • trim
          • upperCase
        • Validation
          • isArray
          • isEmail
          • isNull
          • isNumber
      • React Native
        • App
          • displaySnippet
          • openlink
          • reload
        • Component
          • setOptions
          • setProperty
          • setValue
          • getProperty
          • getValue
        • Connector
          • restCall
          • soapCall
        • Control
          • callback
          • clearInterval
          • conditional
          • delay
          • interval
          • loop
        • Conversion
          • toBoolean
          • toDate
          • toList
          • toNull
          • toNumber
          • toObject
          • toText
        • Dataset
          • insert
          • loadData
          • loadNext
          • read
          • remove
          • update
        • Datetime
          • difference
          • get
          • update
        • Device
          • barcodeCameraScanner
          • captureAudio
          • captureImage
          • captureVideo
          • chooseFile
          • generateBarcode
          • generateQRCode
          • getLocation
        • File
          • copy
          • getDetails
          • getStoragePath
          • read
          • remove
          • saveToGallery
          • write
        • Format
          • dateTime
          • number
          • text
        • Global
          • goToPage
        • List
          • average
          • combine
          • count
          • fill
          • find
          • includes
          • insertFirst
          • insertLast
          • max
          • min
          • removeFirst
          • removeLast
          • sort
          • sum
        • Log
          • write
        • Logic
          • and
          • equal
          • greaterThan
          • greaterThanOrEqual
          • lessThan
          • lessThanOrEqual
          • not
          • notEqual
          • or
        • Mail
          • send
        • Math
          • Absolute
          • add
          • atan2
          • cos
          • divide
          • modulo
          • multiply
          • pi
          • power
          • round
          • sin
          • square
          • squareRoot
          • subtract
          • tan
        • Map
          • getRoute
          • setCenter
          • setZoom
        • Object
          • insert
          • remove
          • getAttribute
          • setAttribute
        • Signature
          • clear
        • Text
          • case
          • combine
          • decrypt
          • encrypt
          • extract
          • findPosition
          • length
          • padding
          • replace
          • specialCharacter
          • trim
        • Validation
          • isEmail
          • isList
          • isNumber
        • Variable
          • get
          • getAttribute
          • set
          • setAttribute
    • Global Functions
    • Logic Block And Parameter Types
      • Logic Block And Parameter Types
      • Visual Interface
    • Logic Flow Sequence And Control
      • Asynchronous Actions And Callbacks
        • Asynchronous Actions
        • Best Practices
      • Callbacks
      • Conditional Logic
      • Loops
        • Comparing Loops
        • For Loop
        • Map
  • Data And Memory
    • Data Type
    • Memory
    • Data Processing Methods
  • Services
    • Services Reference
      • 2C2P Connector
        • 2C2P Connector
      • Accumatica Connector
        • Acumatica Connector
        • Acumatica Table
      • Aws Connector
        • Aws Connector
        • Aws Dynamodb Table
      • Ax Connector
      • Azure Cognitive Connector
      • Crm365 Connector
      • Dynamics Gp Connector
      • Enets Payment Connector
      • Hnspullnotification
      • Hnspushnotification
      • Istampz
      • Local Table
      • Mc Payment Connector
      • Mssql Connector
      • Nav Connector
        • Nav Connector
        • Nav Table
      • Nfc Reader
      • Paypal Connector
      • Raw Rest Connector
      • Sage Connector
      • Sap B1 Connector
      • Soap Connector
      • Sql Connector
        • Sql Connector
        • Sql Table
      • Sqlite
        • Sqlite Connector
        • Sqlite Table
    • Step By Step Guide
    • Services Additional Tips
    • Services Erp
      • Services Erp
  • Wizards
    • Function Wizard
    • Page Wizard
  • Plugins
    • Plugins
    • Service Manager
Powered by GitBook
On this page
  • Creating a Global Function
  • Using Arguments in Global Functions
  • Using the Return Value of Global Functions
  • Example: Creating a Global Function
  • Example: Using a Global Function
  1. Actions And Visual Logic

Global Functions

PrevioussetAttributeNextLogic Block And Parameter Types

Last updated 1 year ago

Global Functions in eMOBIQ allow users to create and manage their own custom functions that can be reused across multiple pages and components. Global functions are user-defined logic blocks built with other logic blocks in eMOBIQ. These functions can be used in the visual logic and provide a convenient and efficient way to add event-driven logic based on specified requirements.

Creating a Global Function

To create a global function, follow these steps:

  1. Access the "Global Functions" section and click on "Add Global Function". A pop-up will appear asking for the name and result global variable name for the function.

  2. After the function is created, you can modify the global function name and result global variable name in the inspector if necessary.

Note:

In the inspector, 'Parameters' specify the parameters that the function will take as inputs when you call it in the visual logic.

'Result' specifies the global variable name that represents the result of the function. If there is no result global variable name defined, then the return value from a global function will be 'false' by default.

  1. The function's implementation is displayed on the visual logic interface, where you can easily edit and customize the function according to your needs.

Using Arguments in Global Functions

When you define parameters for a global function, these parameters act as the inputs to the function. To use the values passed into these parameters as inputs to other functions within the global function, you must specify that these parameters are of 'param' type.

For example, if a global function has parameters p1 and p2, to use the values passed into p1 and p2 as inputs to other functions within the global function, you have to specify that p1 and p2 are 'param' types.

In the example below, p1 and p2 are used as inputs of 'param' type to the add logic block within the global function:

Using the Return Value of Global Functions

To retrieve the return value of global functions, you can do so by using the getVar function on the global variable name associated with the global function result. However, do take note of asynchronous behaviours when using asynchronous functions.

Example: Creating a Global Function

In this example, we will create a global function that takes two numbers as inputs and returns their sum.

  1. Access the "Global Functions" section and click on "Add Global Function". A pop-up will appear asking for the name and result global variable name for the function. Enter the name as "AddNumbers" and the result global variable name as "AddNumbersResult".

  2. After the function is created, you can modify the global function name and result global variable name in the inspector if necessary.

  3. In the global function inspector, add two new parameters: number1 and number2.

  4. In the visual logic interface, add logic blocks to add the two parameters and assign the result to the "AddNumbersResult" global variable.

    Note:

    Within the visual logic, to use values passed into the parameters of the global function, you need to use the 'param' parameter type.

  5. Finally, assign the result to the result global variable, "AddNumbersResult".

    In this example, we use the add function as a subflow to the setVar's value parameter. This means that the return value from the add function will be directly given to setVar function's value parameter.

Now, the "AddNumbers" global function is created and can be used in the visual logic.

Example: Using a Global Function

In this example, we will use the "AddNumbers" global function created in the previous example.

  1. In the visual logic interface, add the "AddNumbers" logic block.

  2. Set the 'number1' and 'number2' parameters in the 'call function' logic block.

  3. Retrieve the result of the "AddNumbers" function either using the getVar function to retrieve the "AddNumbersResult" global variable, or using "AddNumbers" as a direct subflow for an input.

    Using the getVar method:

    Using the subflow method (E.g. using the value directly for console):

  4. The result can now be used in the visual logic.

Alternatively, you can also use the global function as a subflow of another function and get the result directly as an input value to the caller function. ()

See example below
Param Example
Adding global function
Pop-up to enter function name and result global variable name
Global Function Inspector
Screenshot showing the parameters defined in the inspector
Screenshot showing the visual logic interface
Screenshot showing the visual logic interface
"AddNumbers" logic block
Screenshot showing the parameters set in the 'call function' logic block
Screenshot showing the 'getVar' function
Subflow Example