• <GetStart>
  • CSPro User's Guide
    • The CSPro System
    • Data Dictionary Module
    • The CSPro Language
    • Data Entry Module
    • Batch Editing Applications
    • Tabulation Applications
    • Data Sources
    • CSPro Statements and Functions
    • Text Templates
    • Templated Reporting System
    • HTML, Markdown, and JavaScript Integration
    • Action Invoker
      • Overview
      • Execution Environments
      • Security, Resource Management, and Formatting Options
      • Base Actions
      • Application Namespace
      • Clipboard Namespace
      • Data Namespace
      • Dictionary Namespace
      • File Namespace
      • Hash Namespace
      • Localhost Namespace
      • Logic Namespace
        • Logic Action Invoker Namespace
        • Logic.eval Action
        • Logic.getSymbol Action
        • Logic.getSymbolMetadata Action
        • Logic.getSymbolValue Action
        • Logic.invoke Action
        • Logic.setSymbolValue Action
      • Message Namespace
      • Path Namespace
      • Settings Namespace
      • Sqlite Namespace
      • System Namespace
      • UI Namespace
    • Appendix
  • <CSEntry>
  • <CSBatch>
  • <CSTab>
  • <DataManager>
  • <TextView>
  • <TblView>
  • <CSFreq>
  • <CSDeploy>
  • <CSPack>
  • <CSDiff>
  • <CSConcat>
  • <Excel2CSPro>
  • <CSExport>
  • <CSIndex>
  • <CSReFmt>
  • <CSSort>
  • <ParadataConcat>
  • <ParadataViewer>
  • <CSCode>
  • <CSDocument>
  • <CSView>
  • <CSWeb>

Logic.getSymbolValue Action

Format
s = CS.Logic.getSymbolValue(name := ...ʃ, serializationOptions := ...ʅ)
ArgumentDescriptionTypes / Required
nameThe name of the symbol.string
required
serializationOptionsOptions for how the symbol should be serialized.object
not required
Description
The Logic.getSymbolValue action returns the JSON representation of the value of the symbol with the specified name. The optional serializationOptions argument allows you to specify how the symbol should be serialized, potentially overriding the default application settings.
You can use the Logic.getSymbolMetadata action if you want to work with the symbol's metadata, or Logic.getSymbol if you want both the metadata and value. You can also use the Symbol.getValueJson function to get a symbol's JSON value.
The following table describes the value-related serialization routines available for CSPro objects and contains links to the description of the JSON representation for each object.
Documentation about all JSON representations feature will come in a future release.
ObjectValue -> JSONJSON -> ValueSerialization
numeric✔✔CSPro ⇄ JSON Conversions: Numeric Values
string, alpha✔✔CSPro ⇄ JSON Conversions: String Values
Array✔✔CSPro ⇄ JSON Conversions: Array Object
Audio✔✔CSPro ⇄ JSON Conversions: Audio Object
Block
Dictionary✔
Document✔✔CSPro ⇄ JSON Conversions: Document Object
File✔
Freq✔
function
Geometry✔✔CSPro ⇄ JSON Conversions: Geometry Object
HashMap✔✔CSPro ⇄ JSON Conversions: HashMap Object
Image✔✔CSPro ⇄ JSON Conversions: Image Object
Item
List✔✔CSPro ⇄ JSON Conversions: List Object
Map
Pff
Record
Report✔✔CSPro ⇄ JSON Conversions: Report Object
StringWriter✔✔CSPro ⇄ JSON Conversions: StringWriter Object
SystemApp✔✔
ValueSet✔✔
Return Value
The action returns the JSON representation of the symbol's value as a string, number, array, or object.
Exceptions
The action throws an exception if any of its arguments are not specified in a valid form, if no symbol has the specified name, or if the symbol does not support the serialization of its value as JSON.
Example (JavaScript)
function sortList(symbolName) {
   
// get the List object from CSPro
    const list = CS.Logic.getSymbolValue({
        name: symbolName
    });

   
// sort the List, which is represented as an array
    list.sort();

   
// update the CSPro object
    CS.Logic.setSymbolValue({
        name: symbolName,
        value: list
    });
}

sortList(
"usmca_countries");
See also: Logic Action Invoker Namespace, Logic.getSymbol Action, Logic.getSymbolMetadata Action, Logic.setSymbolValue Action, Symbol.getValueJson Function