HPCC-9401 Optimize query time WsEcl

The dependency on the xml schema from the query workunit to process
incoming queries greatly slows down WsECL.

Past optimizations have removed this dependency for some query paths,
but not others.  This removes the dependency for the rest of the query
paths.

Also add a toJSON function to jptree.

Also fix WsECL form, xsd, and other processing of child sets.

Also add a new type of REST input parameter.  Adding a $ to the end of
an input parameter will cause it to be treated as a \r\n delimited
input array (so that WsEcl no longer needs to use schema to process arrays on
input).

Signed-off-by: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
HPCC-9401 Update based on review and missing changes

Removed IPropTree::getIsArrayItem().  toJSON now looks ahead one child
item to determine when an element repeats.

Also reimplemented lost changes to only create a workunit if/when its
actually needed.

Also fixed various other items caught in code review.

 to delay creating workunit

Signed-off-by: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
HPCC-11114 - Missing user credentials from foreign sub files

Sub files retreived from a foreign super, were not created with
the supers user credentials, consequently actions on those sub
files that expected credentials were using the default user.
Pass user of super to sub file creation.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
HPCC-11033 Load WU timer info in one call for WU Details

The existing ECL WU Details page takes a long time to load when a
WU has many timer items or helper files. The load time is improved
by this fix. 1. WUinfo code will use WU Statistics data about timers
if the Statistics data is available. 2. If the Statistics data is
not avaliable, an new interface IConstWUTimerIterator is implemented
to get the timer data in one call. For an ECL WU with 4635 timer
items, the time to read timer data is decreased from >100 seconds to
<0.1 second. 3. This fix also reduces the time of reading helper
file data by combining 2 file lookup calls into one call.

Signed-off-by: Kevin Wang kevin.wang@lexisnexis.com
HPCC-11165 Default to roxie on Package Map pages

In this fix, I default the Target to the first roxie (if exist) and
the process to the first process of the roxie (if exist) for both
the Package Maps and Validate Package Map pages.

Also fix the problem of 'not find createChildTabID()' when loading
Package Map Details page. It is fixed by inheriting the
_TabContainerWidget which has the function.

Signed-off-by: Kevin Wang kevin.wang@lexisnexis.com
HPCC-11169 Add ResourceURLCount to WUQueryDetails response

The ResourceURLCount is added to WUQueryDetails response. Also fix
'the ResourceURLCount should not set to 0 when IncludeResourceURLs
is set to false'.

Signed-off-by: Kevin Wang kevin.wang@lexisnexis.com
HPCC-11169 Get WU ResourceURL count using a new method

A new method getResourceURLCount is added to WuWebView. The method is
called to get the WU ResourceURL count.

Signed-off-by: Kevin Wang kevin.wang@lexisnexis.com
HPCC-11214 Improved Page Refresh, Back and Next

Refresh current page now re-selects tabs as far as possible.
Forward and Back buttons now working better.  Previously back would need to be
pressed twice when navigating over the "default" tab for an inner page.

Fixes HPCC-11214

Signed-off-by: Gordon Smith <gordon.smith@lexisnexis.com>
HPCC-11084 Fixed

Removed (FALSE)  short circuited IF statement for loading xml scope within
inmacro lexer.

Signed-off-by: jamienoss <james.noss@lexisnexis.com>
HPCC-10451 UnicodeWithinEditN and UnicodeGetRangeOfWords

- Add declarations for UnicodeWithinEditN and UnicodeGetRangeOfWords
- Remove declarations for deprecated functions UnicodeLocaleMatchBagofwords
and StringMatchBagofwords


Signed-off-by: Edin Muharemagic <edin.muharemagic@lexisnexis.com>
HPCC-10348 Ensure DISTRIBUTED removes grouping from the dataset

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Merge pull request #5712 from ghalliday/issue10348b

HPCC-10348 Ensure DISTRIBUTED removes grouping from the dataset

Reviewed-By: Jamie Noss <james.noss@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #5693 from emuharemagic/hppc10451

HPCC-10451 UnicodeWithinEditN and UnicodeGetRangeOfWords

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>
HPCC-11232 Default spotCseInIfDatasetConditions to on

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
HPCC-11169 Add a missing flag: WUINFO_IncludeResultsViewNames

Signed-off-by: Kevin Wang kevin.wang@lexisnexis.com
HPCC-11191 - Restoring archived workunits GeneratedDlls incorrect

GenerateDlls were being restored, such that the registered query dlls
pointed to the sasha archive directory. That meant the Associated file
references that were also GeneratedDlls were no longer accessible.
Change so that the restore, copies back to the Associated file location.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
HPCC-9401 Update based on review

Signed-off-by: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
HPCC-11033 Revise based on review comments

Signed-off-by: Kevin Wang kevin.wang@lexisnexis.com
Merge pull request #5715 from jakesmith/hpcc-11191

HPCC-11191 - Restoring archived workunits GeneratedDlls incorrect

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>
HPCC-11252 Option on complete-uninstall to leave environment

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>