AskPlus 8.4.4

From Vital Soft Wiki
Jump to: navigation, search

AskPlus E.8.4.4

AskPlus E.8.4.4 was released in February 2018.

Highlights:

  • Date formatting now supported with file output.
  • New numeric format character to "mask" digits when printing sensitive data.
  • Several bug fixes.
  • Includes all features introduced in E.8.4.2 and E.8.4.3
  • Several of these enhancements are included in the libsdtox.so (or .sl) library file.

Enhancements:

Outer Join:
  • The AskPlus selection was modified to support the concept of an OUTER join. When using the selection OUTER keyword, AskPlus will no longer drop any primary set records when no secondary set records are retrieved. (Initially released in E.8.4.3 Beta Version)
Selection Syntax Using Outer:
FIND PRIMARY=LOAN-FILE;OUTSEL=(@)
OUTER
(LOAN-FILE.BALANCE > 0 AND LOAN-FILE.REST-FLAG-11 <> 80 AND
 LOAN-FILE.SUFFIX = VEHICLE-INFO.SUFFIX)
  • In previous versions of AskPlus, only loans with matching VEHICLE-INFO records would be selected
  • Now, when using the OUTER keyword, all open loans with a balance greater than zero will be selected.
  • Vehicle information will be available for loans with a matching suffix, but no loans will be dropped if no vehicle-info record is found.
  • The OUTER keyword is required, and is not the default.
Watch video sample.
Formatting Data:
  • The date formats introduced in version E.8.4.2 are now supported with file output like ASD files:
  • Formats like "mm-dd-yyyy" and "MMM-dd-yyyy" will be applied to file output. See date formatting for more information on these formats.
  • Remove leading blanks from formatted numeric data output to asd files.
  • Numeric formats now support "masking" digits:
  • When printing account numbers or SSNs it is possible to mask certain digits using an edit mask.
  • Use an underscore in the mask to represent the position of a digit and in the final output the underscore will be replaced by an * character.
  • This is supported in regular report output and local file output.
The mask "_____9999" will produce *****1234
New special operator names were added for clarity:
  • Use !len(str) or !strlen(str) to return the length of a string (trailing blanks are ignored.)
  • It is now valid to pass a numeric value to !len (and !strlen). The value will be converted to ASCII and that length will be returned.
  • Use !pos(str1, str2) or !strpos(str1, str2) to return the position of str2 in str1.

Backwards Compatibility:

  • The underscore character now has a special meaning in numeric formats. It is unlikely that this character was used previously in numeric edit masks, however, if it was the new behavior is different. Previously an underscore was treated as an insertion character, starting with E.8.4.4, the underscore (in numeric masks) will be replaced by an * to mask certain digits.

Bug Fixes:

  • Fix a coredump that could occur when an invalid special operator was specified.
  • Fix a coredump with E4 fields being output to a local file with the mask "$,$$$,$$9.99-".
  • Fix a bug when reading HISTRY data change records (a few records were being ignored)