• <GetStart>
  • CSPro User's Guide
    • The CSPro System
      • What is CSPro?
      • CSPro Capabilities
      • Release History
      • What's New in CSPro?
        • What's New in CSPro?
        • Breaking Changes
        • CSPro 8.x
        • CSPro 7.x
          • What's New in CSPro 7.7?
          • What's New in CSPro 7.6?
          • What's New in CSPro 7.5?
          • What's New in CSPro 7.4?
          • What's New in CSPro 7.3?
          • What's New in CSPro 7.2?
          • What's New in CSPro 7.1?
          • What's New in CSPro 7.0?
      • CSPro Applications
      • CSPro General Concepts
      • CSPro General Functionality
      • How To ...
    • Data Dictionary Module
    • The CSPro Language
    • Data Entry Module
    • Batch Editing Applications
    • Tabulation Applications
    • Data Sources
    • CSPro Statements and Functions
    • Templated Reporting System
    • HTML and JavaScript Integration
    • Action Invoker
    • Appendix
  • <CSEntry>
  • <CSBatch>
  • <CSTab>
  • <DataViewer>
  • <TextView>
  • <TblView>
  • <CSFreq>
  • <CSDeploy>
  • <CSPack>
  • <CSDiff>
  • <CSConcat>
  • <Excel2CSPro>
  • <CSExport>
  • <CSIndex>
  • <CSReFmt>
  • <CSSort>
  • <ParadataConcat>
  • <ParadataViewer>
  • <CSCode>
  • <CSDocument>
  • <CSView>
  • <CSWeb>

What's New in CSPro 7.5?

This is a detailed list of changes in CSPro 7.5. For a more general overview, see the readme.txt file located in the CSPro installation folder.
General
  • On Android devices it is possible to record and play audio in two modes: interactive mode, with the enumerator able to control the recording; and background mode, with the recording controlled by logic functions using the new Audio object.
  • Listing files can now be written as comma-separated values (CSV) or CSPro data files. Traditional listing files in text format are still supported.
Android
  • The csentry directory on Android has moved. For new installations the csentry directory will be located at:
    <external storage>/Android/data/gov.census.cspro.csentry/files/csentry

    If you are upgrading from an earlier version of CSEntry, the csentry directory will remain at:
    <external storage>/csentry

    This change is required to support the more stringent security requirements introduced in the latest versions of Android.
Logic
  • A new object, Audio, that allows for recording or playing audio. It has the functions: clear, concat, length, load, play, record, recordInteractive, save, and stop.
  • A new object, HashMap, that facilitates storage of numbers or strings in an associative array. It has the functions: clear, contains, getKeys, length, and remove.
  • A new function, syncparadata, similar in behavior to syncdata, allows for the syncing of paradata between devices over Bluetooth, or between a device and a CSWeb, Dropbox, or FTP server.
  • A new function, replace, returns a string with one of more instances of a substring replaced with new text.
  • A new function, encode, escapes special characters to facilitate writing to HTML or CSV files, or encodes characters when writing out URIs or URI components.
  • A new namespace, Path, has functions for interacting with file paths: Path.concat, Path.getDirectoryName, Path.getExtension, Path.getFileName, and Path.getFileNameWithoutExtension.
  • User-defined functions now support optional parameters as well as passing numeric and string values by reference.
  • Conditional compilation of logic is now possible due to the addition of a logic preprocessor.
  • New functions for List objects: List.removeDuplicates removes duplicate values; List.removeIn removes values specified in an in list; and List.sort sorts a List.
  • The List.show and ValueSet.show functions work with string List and string ValueSet objects.
  • The ValueSet.randomize function is a new way to randomize value sets (which previously could be done using randomizevs). These value set randomizations now obey any seed value provided using the seed function.
  • The ValueSet.sort function sorts the order of entries in the value set by either label or code.
  • The randomin function now accepts non-integer values in the input in list.
  • New numeric and string variables can be declared inline in the recode statement's destination variables section.
  • A new callback function, OnSystemMessage, provides a way to override the displaying of system error messages.
  • It is possible to check a value against all special values using the code special in an in list (which are also used by recode and when statements).
  • List objects can also be used as inputs of an in list.
  • The loadsetting and savesetting functions accepts numeric values as part of the attribute-value pair.
  • The hash function accepts numeric values as inputs.
Tools
  • The Deploy Application tool has options to refresh all files or all data entry applications within a folder.
CSWeb
  • CSWeb can convert case data to MySQL/MariaDB relational tables using a command line process, allowing for more dynamic reporting.
See also: What's New in CSPro?