v_table – Scoped, Global

  • Release version: Yokohama
  • Updated January 30, 2025
  • 1 minute to read
  • The v_table API provides methods to add rows to a remote table through a scriptable object.

    This API requires the Remote Tables plugin (com.glide.script.vtable) to be activated. For additional information, see Retrieving external data using remote tables and scripts.

    Use the v_query scriptable object to query remote tables.

    v_table - addRow(Object row)

    Adds rows to the remote table.

    Table 1. Parameters
    Name Type Description
    row Object JavaScript object containing field name and value map in which the key is the field name, for example, {number: "INC0001", sys_id: "a34"}.
    { "<field name>": "value" }
    
    row.<field value> String Represents the value of the selected field. Although no fields are mandatory, provide the sys_id at a minimum.

    Example listing only sys_id field and value:

    { "sys_id": "<uniqueID>" }
    
    Table 2. Returns
    Type Description
    Boolean Flag that indicates whether the row was added to the remote table.
    Valid values:
    • true: Success.
    • false: Row was not added.

    The following example shows how to use the RESTMessageV2 API to create and execute the REST call to an external bank application. The script shows how to use the addRow() method to store return results in a remote table.

    (function executeQuery (v_table, v_query) {
      // Parameters needed in the request body of the REST endpoint
      var requestBody = {
        'financial_account':v_query.getParameter('financial_account')
      };
    
      // Instantiate the RESTMessageV2 object
      var request = new sn_ws.RESTMessageV2();
      // Set the HTTP method as "GET"
      request.setHttpMethod('get');
      // URL of the endpoint on the bank application
      request.setEndpoint('https://<yourbankapphost>/api/getTransactionDetails');
      // Request body as a string
      request.setRequestBody(JSON.stringify(requestBody));
      // Call the REST endpoint
      var response = request.execute();
      // Get the response body
      var responseBody = response.getBody();
      // Parse the response body into an object
      var responseObj = JSON.parse(responseBody);
    
      // Store the response body into a virtual table
      v_table.addRow({
        sys_id: gs.generateGUID(),
        amount: responseObj.amount,
        description: responseObj.description,
        posting_date: responseObj.posting_date,
        transaction_date: responseObj.transaction_date
      });
    
    }) (v_table, v_query);