Add a field on the fly
                Add a field on the fly by using the AddFieldFromExpression method.
Information noteThe expression of a field on the fly is persisted but not its values. 
                Example
1. Add the field Lengths in the app.
The client sends:
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "AddFieldFromExpression",
  "handle": 1,
  "params": [
    "Lengths",
    "=len(Country)"
  ]
}
                        The engine returns:
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "qSuccess": true
  },
  "change": [
    1
  ]
}
                        The field is successfully added to the app.
2. Create a list object in the app. The dimension of the list object is the field Lengths (set in qFieldDefs) that has been added on the fly.
The client sends:
{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "CreateSessionObject",
  "handle": 1,
  "params": [
    {
      "qInfo": {
        "qId": "",
        "qType": "ListObject"
      },
      "qListObjectDef": {
        "qStateName": "$",
        "qLibraryId": "",
        "qDef": {
          "qFieldDefs": [
            "Lengths"
          ],
          "qFieldLabels": [
            "Label"
          ],
          "qSortCriterias": [
            {
              "qSortByLoadOrder": 1
            }
          ]
        },
        "qInitialDataFetch": [
          {
            "qTop": 0,
            "qHeight": 1,
            "qLeft": 0,
            "qWidth": 1
          }
        ]
      }
    }
  ]
}
                        The engine returns:
{
  "jsonrpc": "2.0",
  "id": 2,
  "result": {
    "qReturn": {
      "qType": "GenericObject",
      "qHandle": 2
    }
  },
  "change": [
    2
  ]
}
                        The list object is created and has 2 as a handle.
3. Get the first three values of the list object (qHeight is 3 and qTop is 0).
The client sends:
{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "GetListObjectData",
  "handle": 2,
  "params": [
    "/qListObjectDef",
    [
      {
        "qTop": 0,
        "qLeft": 0,
        "qHeight": 3,
        "qWidth": 1
      }
    ]
  ]
}
                        The engine returns:
{
  "jsonrpc": "2.0",
  "id": 3,
  "result": {
    "qDataPages": [
      {
        "qMatrix": [
          [
            {
              "qText": "13",
              "qNum": 13,
              "qElemNumber": 0,
              "qState": "O"
            }
          ],
          [
            {
              "qText": "14",
              "qNum": 14,
              "qElemNumber": 1,
              "qState": "O"
            }
          ],
          [
            {
              "qText": "8",
              "qNum": 8,
              "qElemNumber": 2,
              "qState": "O"
            }
          ]
        ],
        "qTails": [],
        "qArea": {
          "qLeft": 0,
          "qTop": 0,
          "qWidth": 1,
          "qHeight": 3
        }
      }
    ]
  }
}
                        The first three values are returned. They give the length of the field Country.