@magic-xpa/engine 4.1000.0-dev4100.43 → 4.1000.0-dev4100.431
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/index.mjs +1 -1
- package/esm2020/src/ClientManager.mjs +17 -14
- package/esm2020/src/ConstInterface.mjs +3 -1
- package/esm2020/src/CurrentClientVersion.mjs +2 -2
- package/esm2020/src/GuiEventsProcessor.mjs +5 -5
- package/esm2020/src/commands/ClientToServer/DataviewCommand.mjs +6 -6
- package/esm2020/src/commands/ClientToServer/EvaluateCommand.mjs +4 -4
- package/esm2020/src/commands/ClientToServer/EventCommand.mjs +8 -8
- package/esm2020/src/commands/ClientToServer/ExecOperCommand.mjs +4 -4
- package/esm2020/src/commands/ClientToServer/IniputForceWriteCommand.mjs +5 -5
- package/esm2020/src/commands/ClientToServer/RecomputeCommand.mjs +7 -7
- package/esm2020/src/commands/ClientToServer/TransactionCommand.mjs +6 -6
- package/esm2020/src/commands/ServerToClient/EnhancedVerifyCommand.mjs +8 -8
- package/esm2020/src/commands/ServerToClient/ResultCommand.mjs +7 -7
- package/esm2020/src/data/DataView.mjs +34 -34
- package/esm2020/src/data/DataviewManager.mjs +7 -7
- package/esm2020/src/data/Record.mjs +10 -10
- package/esm2020/src/data/TaskTransactionManager.mjs +4 -4
- package/esm2020/src/data/XMLBasedDcValuesBuilder.mjs +5 -5
- package/esm2020/src/env/Environment.mjs +14 -7
- package/esm2020/src/env/MirrorString.mjs +2 -3
- package/esm2020/src/event/Event.mjs +4 -1
- package/esm2020/src/event/EventHandler.mjs +8 -3
- package/esm2020/src/event/EventHandlerPosition.mjs +5 -1
- package/esm2020/src/event/EventsManager.mjs +27 -5
- package/esm2020/src/event/IEventsManager.mjs +1 -1
- package/esm2020/src/event/RunTimeEvent.mjs +23 -16
- package/esm2020/src/exp/ExpressionDict.mjs +8 -8
- package/esm2020/src/exp/ExpressionEvaluator.mjs +9 -179
- package/esm2020/src/gui/FormsTable.mjs +8 -8
- package/esm2020/src/gui/MgControl.mjs +10 -13
- package/esm2020/src/gui/MgForm.mjs +11 -28
- package/esm2020/src/http/HttpManager.mjs +8 -8
- package/esm2020/src/remote/RemoteCommandsProcessor.mjs +47 -27
- package/esm2020/src/rt/DataviewHeaderBase.mjs +16 -16
- package/esm2020/src/security/UserDetails.mjs +12 -12
- package/esm2020/src/tasks/MGData.mjs +4 -4
- package/esm2020/src/tasks/RCTimer.mjs +10 -10
- package/esm2020/src/tasks/Task.mjs +43 -42
- package/esm2020/src/util/FlowMonitorQueue.mjs +107 -2
- package/esm2020/src/util/PrmMap.mjs +6 -6
- package/esm2020/src/util/ReturnResult.mjs +7 -7
- package/fesm2015/magic-xpa-engine.mjs +546 -591
- package/fesm2015/magic-xpa-engine.mjs.map +1 -1
- package/fesm2020/magic-xpa-engine.mjs +534 -547
- package/fesm2020/magic-xpa-engine.mjs.map +1 -1
- package/package.json +6 -6
- package/src/ConstInterface.d.ts +2 -0
- package/src/env/Environment.d.ts +2 -0
- package/src/event/EventsManager.d.ts +4 -0
- package/src/event/IEventsManager.d.ts +2 -0
- package/src/event/RunTimeEvent.d.ts +3 -0
- package/src/exp/ExpressionEvaluator.d.ts +1 -10
- package/src/gui/MgControl.d.ts +0 -1
- package/src/gui/MgForm.d.ts +1 -3
- package/src/remote/RemoteCommandsProcessor.d.ts +1 -0
- package/src/util/FlowMonitorQueue.d.ts +8 -0
- package/src/util/PrmMap.d.ts +1 -1
- package/magic-xpa-engine.d.ts +0 -2
@@ -1,6 +1,6 @@
|
|
1
1
|
import { StringBuilder, Int32, NString, ApplicationException, NNumber, List, Debug, Char, RefParam, NumberStyles, HashUtils, DateTime, Dictionary, Stack, NChar, isNullOrUndefined, WebException, Thread, Encoding, Exception, isUndefined, Hashtable, NotImplementedException, Array_Enumerator, ISO_8859_1_Encoding, Int64 } from '@magic-xpa/mscorelib';
|
2
2
|
import { XMLConstants, StorageAttribute, ViewRefreshMode, InternalInterface, Logger, StorageAttributeCheck, StrUtil, SubformType, TableBehaviour, MgControlType, ScrollBarThumbType, ForceExit, XmlParser, Misc, Base64, Priority, SyncExecutionHelper, Queue, Constants, DateTimeUtils, Logger_LogLevels, Logger_MessageDirection, MsgInterface, RequestInfo, OSEnvironment, JSON_Utils, UtilDateJpn, UtilStrByteMode, PICInterface, WindowType, BrkScope, RaiseAt, CtrlButtonTypeGui } from '@magic-xpa/utils';
|
3
|
-
import { RecordUtils, GuiFieldBase, ExpVal, BlobType, FieldDef, GuiTaskBase, MgControlBase, PropInterface, GuiDataCollection, CommandType, Commands, HtmlProperties, ControlTable, Modifiers, KeyboardItem, TaskDefinitionIdTableSaxHandler, DisplayConvertor, MgTimer, GuiConstants, RuntimeContextBase, UsernamePasswordCredentials, Styles, Manager, NUM_TYPE,
|
3
|
+
import { RecordUtils, GuiFieldBase, ExpVal, BlobType, FieldDef, GuiTaskBase, MgControlBase, PropInterface, GuiDataCollection, CommandType, Commands, HtmlProperties, ControlTable, Modifiers, KeyboardItem, TaskDefinitionIdTableSaxHandler, DisplayConvertor, VectorType, PIC, MgTimer, GuiConstants, RuntimeContextBase, UsernamePasswordCredentials, Styles, Manager, NUM_TYPE, GuiExpressionEvaluator, ExpressionInterface, DataModificationTypes, GuiDataViewBase, ObjectReferencesCollection, EMPTY_DCREF, ObjectReferenceBase, PropTable, FieldsTable as FieldsTable$1, DcValuesBuilderBase, MgFormBase, GuiEnvironment, TaskDefinitionId, Events, Helps, FocusManager, EventsProcessor, UIBridge } from '@magic-xpa/gui';
|
4
4
|
import { HttpHeaders, HttpErrorResponse } from '@angular/common/http';
|
5
5
|
import { timer, Subject } from 'rxjs';
|
6
6
|
|
@@ -271,6 +271,7 @@ ConstInterface.MG_ATTR_LOCAL_AS400SET = "local_as400set";
|
|
271
271
|
ConstInterface.MG_ATTR_LOCAL_EXTRA_GENGO = "local_extraGengo";
|
272
272
|
ConstInterface.MG_ATTR_LOCAL_FLAGS = "local_flags";
|
273
273
|
ConstInterface.MG_ATTR_SPEACIAL_ANSI_EXP = "SpecialAnsiExpression";
|
274
|
+
ConstInterface.MG_ATTR_SPECIAL_IMMEDIATE_HANDLER_END = "SpecialImmediateHandlerEnd";
|
274
275
|
ConstInterface.MG_ATTR_SPECIAL_SHOW_STATUSBAR_PANES = "SpecialShowStatusBarPanes";
|
275
276
|
ConstInterface.MG_ATTR_SPECIAL_ROUTE_TO_ROOT_PROG_ON_CONTEXT_RECREATION = "SpecialRouteToRootProgramOnContextRecreation";
|
276
277
|
ConstInterface.MG_ATTR_SPECIAL_SPECIAL_EDIT_LEFT_ALIGN = "SpecialEditLeftAlign";
|
@@ -475,6 +476,7 @@ ConstInterface.RC_TOKEN_DATA = "DATA=";
|
|
475
476
|
ConstInterface.WEBCLIENT_REINITIALIZE_REQUEST = "WCREINITIALIZEREQUEST=Y";
|
476
477
|
ConstInterface.MAIN_PROG_VIEW = "MainProgramsDataView";
|
477
478
|
ConstInterface.GLOBAL_PARAM_LIST = "GlobalParamList";
|
479
|
+
ConstInterface.ENV_VAR_LIST = "EnvVarList";
|
478
480
|
ConstInterface.LAST_EXCEPTION = "LastException";
|
479
481
|
ConstInterface.CTX_REMOVED_FROM_SRVR = "CtxRemovedFromSrvr";
|
480
482
|
ConstInterface.LAST_ROUTE_EVENT = "LastRouteEvent";
|
@@ -640,13 +642,6 @@ class CommandSerializationHelper {
|
|
640
642
|
}
|
641
643
|
|
642
644
|
class EventCommand extends ClientOriginatedCommandTaskTag {
|
643
|
-
constructor(magicEvent) {
|
644
|
-
super();
|
645
|
-
this.TaskTag = null;
|
646
|
-
this.MagicEvent = 0;
|
647
|
-
this.ClientRecId = 0;
|
648
|
-
this.MagicEvent = magicEvent;
|
649
|
-
}
|
650
645
|
get CommandTypeAttribute() {
|
651
646
|
return ConstInterface.MG_ATTR_VAL_EVENT;
|
652
647
|
}
|
@@ -662,6 +657,13 @@ class EventCommand extends ClientOriginatedCommandTaskTag {
|
|
662
657
|
return false;
|
663
658
|
return true;
|
664
659
|
}
|
660
|
+
constructor(magicEvent) {
|
661
|
+
super();
|
662
|
+
this.TaskTag = null;
|
663
|
+
this.MagicEvent = 0;
|
664
|
+
this.ClientRecId = 0;
|
665
|
+
this.MagicEvent = magicEvent;
|
666
|
+
}
|
665
667
|
SerializeCommandData() {
|
666
668
|
let helper = new CommandSerializationHelper();
|
667
669
|
helper.SerializeTaskTag(this.TaskTag);
|
@@ -1171,15 +1173,6 @@ class OpeningTaskDetails {
|
|
1171
1173
|
}
|
1172
1174
|
|
1173
1175
|
class MgControl extends MgControlBase {
|
1174
|
-
constructor(type, taskOrParentMgForm, parentControlOrParentControlIdx) {
|
1175
|
-
if (arguments.length === 0)
|
1176
|
-
super();
|
1177
|
-
else if (arguments.length === 3 && (type === null || type.constructor === Number) && (taskOrParentMgForm === null || taskOrParentMgForm instanceof TaskBase) && (parentControlOrParentControlIdx === null || parentControlOrParentControlIdx.constructor === Number))
|
1178
|
-
super(type, taskOrParentMgForm.getForm(), parentControlOrParentControlIdx);
|
1179
|
-
else
|
1180
|
-
super(type, taskOrParentMgForm, parentControlOrParentControlIdx);
|
1181
|
-
this.initialize();
|
1182
|
-
}
|
1183
1176
|
initialize() {
|
1184
1177
|
this._focusedStopExecution = false;
|
1185
1178
|
this._inControlSuffix = false;
|
@@ -1192,6 +1185,15 @@ class MgControl extends MgControlBase {
|
|
1192
1185
|
this.HasZoomHandler = false;
|
1193
1186
|
this.ArgList = null;
|
1194
1187
|
}
|
1188
|
+
constructor(type, taskOrParentMgForm, parentControlOrParentControlIdx) {
|
1189
|
+
if (arguments.length === 0)
|
1190
|
+
super();
|
1191
|
+
else if (arguments.length === 3 && (type === null || type.constructor === Number) && (taskOrParentMgForm === null || taskOrParentMgForm instanceof TaskBase) && (parentControlOrParentControlIdx === null || parentControlOrParentControlIdx.constructor === Number))
|
1192
|
+
super(type, taskOrParentMgForm.getForm(), parentControlOrParentControlIdx);
|
1193
|
+
else
|
1194
|
+
super(type, taskOrParentMgForm, parentControlOrParentControlIdx);
|
1195
|
+
this.initialize();
|
1196
|
+
}
|
1195
1197
|
GetVarIndex() {
|
1196
1198
|
return super.getForm().getTask().DataView.Dvcount + this.veeIndx;
|
1197
1199
|
}
|
@@ -1458,9 +1460,6 @@ class MgControl extends MgControlBase {
|
|
1458
1460
|
this.KeyStrokeOn = false;
|
1459
1461
|
}
|
1460
1462
|
}
|
1461
|
-
async refreshAndSetItemsListForRadioButton(line, execComputeChoice) {
|
1462
|
-
await super.refreshAndSetItemsListForRadioButton(line, execComputeChoice);
|
1463
|
-
}
|
1464
1463
|
getSubformTask() {
|
1465
1464
|
return this._subformTask;
|
1466
1465
|
}
|
@@ -2817,6 +2816,9 @@ class Event {
|
|
2817
2816
|
case InternalInterface.MG_ACT_INDEX_CHANGE:
|
2818
2817
|
description = 'Index Change';
|
2819
2818
|
break;
|
2819
|
+
case InternalInterface.MG_ACT_DUMP_ENVIRONMENT:
|
2820
|
+
description = 'Dump Environment';
|
2821
|
+
break;
|
2820
2822
|
default:
|
2821
2823
|
description = '';
|
2822
2824
|
break;
|
@@ -3124,6 +3126,27 @@ class MgPriorityBlockingQueue {
|
|
3124
3126
|
}
|
3125
3127
|
|
3126
3128
|
class RunTimeEvent extends RunTimeEventBase {
|
3129
|
+
set ShouldHandleZoom(value) {
|
3130
|
+
this._shouldHandleZoom = value;
|
3131
|
+
}
|
3132
|
+
get ShouldHandleZoom() {
|
3133
|
+
return this._shouldHandleZoom;
|
3134
|
+
}
|
3135
|
+
set Control(value) {
|
3136
|
+
this._ctrl = value;
|
3137
|
+
}
|
3138
|
+
set DisplayLine(value) {
|
3139
|
+
this._displayLine = value;
|
3140
|
+
}
|
3141
|
+
get Control() {
|
3142
|
+
return this._ctrl;
|
3143
|
+
}
|
3144
|
+
get ControlsList() {
|
3145
|
+
return this._controlsList;
|
3146
|
+
}
|
3147
|
+
get Direction() {
|
3148
|
+
return this._direction;
|
3149
|
+
}
|
3127
3150
|
constructor(taskRefOrCtrlRefOrTaskrefOrFldRefOrEvt, ctrlRefOrGuiTriggeredEventOrLineOrControlsListOrDirectionOrColumnHeaderOrRtEvtOrCurrentTask, ignoreSpecifiedControlOrGuiTriggeredEventOrLineOrXOrControlOrActivatedFromMDIFrame, yOrCtlIdx, width, height) {
|
3128
3151
|
super();
|
3129
3152
|
this._controlsList = null;
|
@@ -3152,6 +3175,7 @@ class RunTimeEvent extends RunTimeEventBase {
|
|
3152
3175
|
this._task = null;
|
3153
3176
|
this._taskTag = null;
|
3154
3177
|
this._val = null;
|
3178
|
+
this._shouldHandleZoom = false;
|
3155
3179
|
this.IgnoreSpecifiedControl = false;
|
3156
3180
|
this.LastFocusedVal = null;
|
3157
3181
|
if (arguments.length === 1 && (taskRefOrCtrlRefOrTaskrefOrFldRefOrEvt === null || taskRefOrCtrlRefOrTaskrefOrFldRefOrEvt instanceof TaskBase))
|
@@ -3185,21 +3209,6 @@ class RunTimeEvent extends RunTimeEventBase {
|
|
3185
3209
|
else if (arguments.length === 1 && taskRefOrCtrlRefOrTaskrefOrFldRefOrEvt instanceof RunTimeEvent)
|
3186
3210
|
Object.assign(this, taskRefOrCtrlRefOrTaskrefOrFldRefOrEvt);
|
3187
3211
|
}
|
3188
|
-
set Control(value) {
|
3189
|
-
this._ctrl = value;
|
3190
|
-
}
|
3191
|
-
set DisplayLine(value) {
|
3192
|
-
this._displayLine = value;
|
3193
|
-
}
|
3194
|
-
get Control() {
|
3195
|
-
return this._ctrl;
|
3196
|
-
}
|
3197
|
-
get ControlsList() {
|
3198
|
-
return this._controlsList;
|
3199
|
-
}
|
3200
|
-
get Direction() {
|
3201
|
-
return this._direction;
|
3202
|
-
}
|
3203
3212
|
constructor_5(taskRef) {
|
3204
3213
|
this.init(taskRef);
|
3205
3214
|
}
|
@@ -3529,7 +3538,17 @@ class FlowMonitorQueue {
|
|
3529
3538
|
this._isRecompute = false;
|
3530
3539
|
this._isTask = false;
|
3531
3540
|
this._isTaskFlow = false;
|
3541
|
+
this._isDataView = false;
|
3532
3542
|
this.ShouldSerialize = false;
|
3543
|
+
this.padRight = (string, length, character = ' ') => {
|
3544
|
+
let result = "";
|
3545
|
+
let totalLength = length - string.length;
|
3546
|
+
for (let i = 0; i < totalLength; i++) {
|
3547
|
+
result = character + result;
|
3548
|
+
}
|
3549
|
+
result = result + string;
|
3550
|
+
return result;
|
3551
|
+
};
|
3533
3552
|
}
|
3534
3553
|
static get Instance() {
|
3535
3554
|
if (FlowMonitorQueue._instance === null)
|
@@ -3587,6 +3606,9 @@ class FlowMonitorQueue {
|
|
3587
3606
|
case ConstInterface.MG_ATTR_TASKFLW:
|
3588
3607
|
this._isTaskFlow = XmlParser.getBoolean(valueStr);
|
3589
3608
|
break;
|
3609
|
+
case ConstInterface.MG_TAG_DATAVIEW:
|
3610
|
+
this._isDataView = XmlParser.getBoolean(valueStr);
|
3611
|
+
break;
|
3590
3612
|
case ConstInterface.MG_ATTR_RECOMP:
|
3591
3613
|
this._isRecompute = XmlParser.getBoolean(valueStr);
|
3592
3614
|
break;
|
@@ -3644,6 +3666,96 @@ class FlowMonitorQueue {
|
|
3644
3666
|
Logger.Instance.WriteSupportToLog(taskInfo + ": " + info, true);
|
3645
3667
|
}
|
3646
3668
|
}
|
3669
|
+
appendVirtualsAndParameters(currentValues) {
|
3670
|
+
let act = new ActivityItem(this, FlowMonitorQueue.ACT_TASK_FLW, InternalInterface.MG_ACT_REC_PREFIX);
|
3671
|
+
act.setInfo(currentValues);
|
3672
|
+
this._queue.put(act);
|
3673
|
+
}
|
3674
|
+
addDataViewFlow(task) {
|
3675
|
+
if (this._isDataView) {
|
3676
|
+
let fldTab = task.DataView.GetFieldsTab();
|
3677
|
+
let preparedDisplayString = "";
|
3678
|
+
let finaldisplayData = "\n";
|
3679
|
+
let fldValue;
|
3680
|
+
let data = "";
|
3681
|
+
for (let i = 0; i < fldTab.getSize(); i++) {
|
3682
|
+
let fldDef = fldTab.getField(i);
|
3683
|
+
if (!fldDef.IsEventHandlerField && (fldDef.IsVirtual && !fldDef.VirAsReal) || fldDef.isParam()) {
|
3684
|
+
fldValue = fldDef.isNull() ? fldDef.getNullValue() : fldDef.getValue(true);
|
3685
|
+
data = this.getFieldData(fldDef.getType(), fldValue, fldDef.getPicture(), fldDef.getCellsType(), task);
|
3686
|
+
preparedDisplayString = this.PrepareDisplayString(fldDef.isParam(), fldDef.getVarName(), data, true);
|
3687
|
+
finaldisplayData = finaldisplayData + preparedDisplayString + "\n";
|
3688
|
+
}
|
3689
|
+
}
|
3690
|
+
this.appendVirtualsAndParameters(finaldisplayData);
|
3691
|
+
}
|
3692
|
+
}
|
3693
|
+
getFieldData(Storagetype, data, picture, vecCellType, task) {
|
3694
|
+
switch (Storagetype) {
|
3695
|
+
case StorageAttribute.DOTNET:
|
3696
|
+
data = FlowMonitorQueue.UNPRINTABLE_STR_LOG;
|
3697
|
+
break;
|
3698
|
+
case StorageAttribute.BLOB:
|
3699
|
+
{
|
3700
|
+
if (BlobType.isValidBlob(data)) {
|
3701
|
+
let contentType = BlobType.getContentType(data);
|
3702
|
+
if (contentType == BlobType.CONTENT_TYPE_ANSI || contentType == BlobType.CONTENT_TYPE_UNICODE)
|
3703
|
+
data = data != null ? BlobType.getString(data) : "";
|
3704
|
+
else
|
3705
|
+
data = FlowMonitorQueue.UNPRINTABLE_STR_LOG;
|
3706
|
+
}
|
3707
|
+
else
|
3708
|
+
data = "";
|
3709
|
+
}
|
3710
|
+
break;
|
3711
|
+
case StorageAttribute.NUMERIC:
|
3712
|
+
case StorageAttribute.DATE:
|
3713
|
+
case StorageAttribute.TIME:
|
3714
|
+
let conv = DisplayConvertor.Instance;
|
3715
|
+
data = conv.mg2disp(data, " ", new PIC(picture, Storagetype, task.getCompIdx()), false, task.getCompIdx(), false);
|
3716
|
+
break;
|
3717
|
+
case StorageAttribute.BLOB_VECTOR:
|
3718
|
+
let vecOutData;
|
3719
|
+
if (data == null) {
|
3720
|
+
vecOutData = "[]";
|
3721
|
+
}
|
3722
|
+
else {
|
3723
|
+
let cellAtt = vecCellType;
|
3724
|
+
let vector = new VectorType(data);
|
3725
|
+
if (cellAtt == StorageAttribute.BLOB && !VectorType.validateBlobContents(data))
|
3726
|
+
vecOutData = "[]";
|
3727
|
+
else {
|
3728
|
+
let vecSize = VectorType.getVecSize(data);
|
3729
|
+
let cellPicture = (cellAtt == StorageAttribute.NUMERIC || cellAtt == StorageAttribute.DATE || cellAtt == StorageAttribute.TIME) ? PIC.buildPicture(cellAtt, vector.getVecCell(1), task.getCompIdx(), true).getFormat() : picture;
|
3730
|
+
vecOutData = "[";
|
3731
|
+
for (let i = 0; i < vecSize; i++) {
|
3732
|
+
vecOutData += this.getFieldData(cellAtt, vector.getVecCell(i + 1), cellPicture, vecCellType, task);
|
3733
|
+
vecOutData += i < vecSize - 1 ? "," : "]";
|
3734
|
+
}
|
3735
|
+
}
|
3736
|
+
}
|
3737
|
+
data = vecOutData;
|
3738
|
+
break;
|
3739
|
+
case StorageAttribute.BOOLEAN:
|
3740
|
+
data = data == "1" ? "TRUE" : "FALSE";
|
3741
|
+
break;
|
3742
|
+
}
|
3743
|
+
return data;
|
3744
|
+
}
|
3745
|
+
PrepareDisplayString(mode, name, valueContent, addDoubleQuotes) {
|
3746
|
+
let str = "";
|
3747
|
+
let finalStringToDisplay = "";
|
3748
|
+
if (addDoubleQuotes)
|
3749
|
+
finalStringToDisplay = finalStringToDisplay + "\"";
|
3750
|
+
finalStringToDisplay = finalStringToDisplay + name;
|
3751
|
+
if (addDoubleQuotes)
|
3752
|
+
finalStringToDisplay = finalStringToDisplay + "\"";
|
3753
|
+
let paddedName = this.padRight(name, 34);
|
3754
|
+
let formatOfStringVirtual = `Virtual`;
|
3755
|
+
let formatOfStringParameter = `Parameter`;
|
3756
|
+
str = (mode ? formatOfStringParameter : formatOfStringVirtual) + " : " + `${paddedName}` + " : " + `${valueContent.trim()}`;
|
3757
|
+
return str;
|
3758
|
+
}
|
3647
3759
|
addTaskFlowRec(id, state, taskInfo) {
|
3648
3760
|
if (this._enabled && this._isTaskFlow) {
|
3649
3761
|
let info;
|
@@ -3808,6 +3920,7 @@ class FlowMonitorQueue {
|
|
3808
3920
|
}
|
3809
3921
|
}
|
3810
3922
|
FlowMonitorQueue._instance = null;
|
3923
|
+
FlowMonitorQueue.UNPRINTABLE_STR_LOG = "#UNPRINTABLE#";
|
3811
3924
|
FlowMonitorQueue.S_EVENT_STR1 = ">>Starts ";
|
3812
3925
|
FlowMonitorQueue.S_EVENT_STR2 = " Event";
|
3813
3926
|
FlowMonitorQueue.S_EVENT_PROPAGATED = "Event was propagated";
|
@@ -3869,6 +3982,15 @@ class TimerObjectCollection {
|
|
3869
3982
|
}
|
3870
3983
|
TimerObjectCollection.MgDataToTimerObjList = new Dictionary();
|
3871
3984
|
class RCTimer extends MgTimer {
|
3985
|
+
get TimerIntervalMiliSeconds() {
|
3986
|
+
return this._timerIntervalMilliSeconds;
|
3987
|
+
}
|
3988
|
+
set IsIdleTimer(value) {
|
3989
|
+
this._isIdle = value;
|
3990
|
+
}
|
3991
|
+
get IsIdleTimer() {
|
3992
|
+
return this._isIdle;
|
3993
|
+
}
|
3872
3994
|
constructor(mgData, milliseconds, isIdle) {
|
3873
3995
|
super(milliseconds);
|
3874
3996
|
this._mgData = null;
|
@@ -3880,15 +4002,6 @@ class RCTimer extends MgTimer {
|
|
3880
4002
|
TimerObjectCollection.MgDataToTimerObjList.Add(mgDataId, new List());
|
3881
4003
|
TimerObjectCollection.MgDataToTimerObjList.get_Item(mgDataId).push(this);
|
3882
4004
|
}
|
3883
|
-
get TimerIntervalMiliSeconds() {
|
3884
|
-
return this._timerIntervalMilliSeconds;
|
3885
|
-
}
|
3886
|
-
set IsIdleTimer(value) {
|
3887
|
-
this._isIdle = value;
|
3888
|
-
}
|
3889
|
-
get IsIdleTimer() {
|
3890
|
-
return this._isIdle;
|
3891
|
-
}
|
3892
4005
|
GetMgdata() {
|
3893
4006
|
return this._mgData;
|
3894
4007
|
}
|
@@ -4034,6 +4147,9 @@ class ExecutionStack {
|
|
4034
4147
|
}
|
4035
4148
|
|
4036
4149
|
class ExecOperCommand extends ClientOriginatedCommandTaskTag {
|
4150
|
+
get CommandTypeAttribute() {
|
4151
|
+
return ConstInterface.MG_ATTR_VAL_EXEC_OPER;
|
4152
|
+
}
|
4037
4153
|
constructor() {
|
4038
4154
|
super();
|
4039
4155
|
this.ExecutionStack = null;
|
@@ -4047,9 +4163,6 @@ class ExecOperCommand extends ClientOriginatedCommandTaskTag {
|
|
4047
4163
|
this.CheckOnly = false;
|
4048
4164
|
this.DitIdx = Int32.MinValue;
|
4049
4165
|
}
|
4050
|
-
get CommandTypeAttribute() {
|
4051
|
-
return ConstInterface.MG_ATTR_VAL_EXEC_OPER;
|
4052
|
-
}
|
4053
4166
|
SerializeCommandData() {
|
4054
4167
|
let helper = new CommandSerializationHelper();
|
4055
4168
|
let execStackExists = this.ExecutionStack !== null && !this.ExecutionStack.empty();
|
@@ -4504,13 +4617,6 @@ class HttpClientAsync extends HttpClientBase {
|
|
4504
4617
|
}
|
4505
4618
|
|
4506
4619
|
class HttpManager {
|
4507
|
-
constructor() {
|
4508
|
-
this._httpCommunicationTimeoutMS = HttpManager.DEFAULT_HTTP_COMMUNICATION_TIMEOUT;
|
4509
|
-
this._httpClientAsync = null;
|
4510
|
-
this._isAbortingMagicEngine = false;
|
4511
|
-
this._httpClientAsync = new HttpClientAsync(HttpManager._nativeHttpClient);
|
4512
|
-
this.RegisterBasicDelegates();
|
4513
|
-
}
|
4514
4620
|
getHttpClient() {
|
4515
4621
|
if (this.IsAbortingMagicEngine)
|
4516
4622
|
return new HttpClientSync();
|
@@ -4530,6 +4636,13 @@ class HttpManager {
|
|
4530
4636
|
}
|
4531
4637
|
get IsAbortingMagicEngine() { return this._isAbortingMagicEngine; }
|
4532
4638
|
set IsAbortingMagicEngine(isAbortingMagicEngine) { this._isAbortingMagicEngine = isAbortingMagicEngine; }
|
4639
|
+
constructor() {
|
4640
|
+
this._httpCommunicationTimeoutMS = HttpManager.DEFAULT_HTTP_COMMUNICATION_TIMEOUT;
|
4641
|
+
this._httpClientAsync = null;
|
4642
|
+
this._isAbortingMagicEngine = false;
|
4643
|
+
this._httpClientAsync = new HttpClientAsync(HttpManager._nativeHttpClient);
|
4644
|
+
this.RegisterBasicDelegates();
|
4645
|
+
}
|
4533
4646
|
RegisterBasicDelegates() {
|
4534
4647
|
HttpClientEvents.GetHttpCommunicationTimeout_Event = this.GetHttpCommunicationTimeoutMS.bind(this);
|
4535
4648
|
}
|
@@ -5075,6 +5188,12 @@ var RequestStatus;
|
|
5075
5188
|
RequestStatus[RequestStatus["Abort"] = 2] = "Abort";
|
5076
5189
|
})(RequestStatus || (RequestStatus = {}));
|
5077
5190
|
class RemoteCommandsProcessor extends CommandsProcessorBase {
|
5191
|
+
static GetInstance() {
|
5192
|
+
if (RemoteCommandsProcessor._instance === null) {
|
5193
|
+
RemoteCommandsProcessor._instance = new RemoteCommandsProcessor();
|
5194
|
+
}
|
5195
|
+
return RemoteCommandsProcessor._instance;
|
5196
|
+
}
|
5078
5197
|
constructor() {
|
5079
5198
|
super();
|
5080
5199
|
this._lastRequestTime = 0;
|
@@ -5085,12 +5204,6 @@ class RemoteCommandsProcessor extends CommandsProcessorBase {
|
|
5085
5204
|
HttpManager.GetInstance();
|
5086
5205
|
this.RegisterDelegates();
|
5087
5206
|
}
|
5088
|
-
static GetInstance() {
|
5089
|
-
if (RemoteCommandsProcessor._instance === null) {
|
5090
|
-
RemoteCommandsProcessor._instance = new RemoteCommandsProcessor();
|
5091
|
-
}
|
5092
|
-
return RemoteCommandsProcessor._instance;
|
5093
|
-
}
|
5094
5207
|
CheckAndSetSessionCounter(newSessionCounter) {
|
5095
5208
|
if (newSessionCounter === ConstInterface.SESSION_COUNTER_CLOSE_CTX_INDICATION) {
|
5096
5209
|
Debug.Assert(this.GetSessionCounter() === ConstInterface.SESSION_COUNTER_CLOSE_CTX_INDICATION);
|
@@ -5123,10 +5236,12 @@ class RemoteCommandsProcessor extends CommandsProcessorBase {
|
|
5123
5236
|
async StoreSessionReInitializingDataOnLocalStorage() {
|
5124
5237
|
let mainPrgViewStringForServer = await this.BuildXMLForMainProgramDataView();
|
5125
5238
|
let globalParamsString = AccessHelper.globalParams.mirrorAllToXML();
|
5239
|
+
let changedEnvVarList = AccessHelper.envParamsTable.mirrorAllToXML();
|
5126
5240
|
let dataStorage = window.localStorage;
|
5127
5241
|
dataStorage.setItem(ConstInterface.IS_SESSION_REINITIALIZING, "true");
|
5128
5242
|
dataStorage.setItem(ConstInterface.MAIN_PROG_VIEW, mainPrgViewStringForServer.toString());
|
5129
5243
|
dataStorage.setItem(ConstInterface.GLOBAL_PARAM_LIST, globalParamsString);
|
5244
|
+
dataStorage.setItem(ConstInterface.ENV_VAR_LIST, changedEnvVarList);
|
5130
5245
|
dataStorage.setItem(ConstInterface.LAST_EXCEPTION, RemoteCommandsProcessor.lastExceptionMessage);
|
5131
5246
|
if (RuntimeContextBase.Instance.RemovedContextFromServer)
|
5132
5247
|
dataStorage.setItem(ConstInterface.CTX_REMOVED_FROM_SRVR, "1");
|
@@ -5353,6 +5468,7 @@ class RemoteCommandsProcessor extends CommandsProcessorBase {
|
|
5353
5468
|
let reqBuf;
|
5354
5469
|
let isInitialCall = sessionStage === CommandsProcessorBase_SessionStage.INITIAL;
|
5355
5470
|
let globalParamsString = null;
|
5471
|
+
let envVarsString = null;
|
5356
5472
|
if (this.DelayCommandExecution)
|
5357
5473
|
return;
|
5358
5474
|
if (Logger.Instance.LogLevel == Logger_LogLevels.RequestInfo && !isInitialCall)
|
@@ -5378,12 +5494,16 @@ class RemoteCommandsProcessor extends CommandsProcessorBase {
|
|
5378
5494
|
let buffer = new StringBuilder();
|
5379
5495
|
if (!RemoteCommandsProcessor.IsSessionReInitializing)
|
5380
5496
|
buffer.Append(reqBuf);
|
5381
|
-
if (RemoteCommandsProcessor.IsSessionReInitializing)
|
5497
|
+
if (RemoteCommandsProcessor.IsSessionReInitializing) {
|
5382
5498
|
globalParamsString = this.RestoreSessionReInitializingDataFromLocalStorage(ConstInterface.GLOBAL_PARAM_LIST);
|
5383
|
-
|
5499
|
+
envVarsString = this.RestoreSessionReInitializingDataFromLocalStorage(ConstInterface.ENV_VAR_LIST);
|
5500
|
+
}
|
5501
|
+
else {
|
5384
5502
|
globalParamsString = AccessHelper.globalParams.mirrorToXML();
|
5503
|
+
envVarsString = AccessHelper.envParamsTable.mirrorToXML();
|
5504
|
+
}
|
5385
5505
|
changes.Append(globalParamsString);
|
5386
|
-
changes.Append(
|
5506
|
+
changes.Append(envVarsString);
|
5387
5507
|
if (changes.Length > 0) {
|
5388
5508
|
changes.Insert(0, "<" + ConstInterface.MG_TAG_ENV_CHANGES + ">");
|
5389
5509
|
changes.Append("</" + ConstInterface.MG_TAG_ENV_CHANGES + ">");
|
@@ -5422,13 +5542,15 @@ class RemoteCommandsProcessor extends CommandsProcessorBase {
|
|
5422
5542
|
dataStorage.removeItem(ConstInterface.IS_SESSION_REINITIALIZING);
|
5423
5543
|
dataStorage.removeItem(ConstInterface.MAIN_PROG_VIEW);
|
5424
5544
|
dataStorage.removeItem(ConstInterface.GLOBAL_PARAM_LIST);
|
5545
|
+
dataStorage.removeItem(ConstInterface.ENV_VAR_LIST);
|
5425
5546
|
dataStorage.removeItem(ConstInterface.LAST_EXCEPTION);
|
5426
5547
|
}
|
5427
5548
|
}
|
5428
5549
|
FlowMonitorQueue.Instance.enable(false);
|
5429
5550
|
await this.ProcessResponse(respBuf, AccessHelper.mgDataTable.currMgdID, null, res);
|
5430
5551
|
if (RemoteCommandsProcessor.IsSessionReInitializing) {
|
5431
|
-
AccessHelper.globalParams.
|
5552
|
+
AccessHelper.globalParams.RestoreParams(globalParamsString);
|
5553
|
+
AccessHelper.envParamsTable.RestoreParams(envVarsString);
|
5432
5554
|
let dataStorage = window.localStorage;
|
5433
5555
|
let ctxRemoved = dataStorage.getItem(ConstInterface.CTX_REMOVED_FROM_SRVR);
|
5434
5556
|
if (ctxRemoved === "1") {
|
@@ -5524,11 +5646,22 @@ class RemoteCommandsProcessor extends CommandsProcessorBase {
|
|
5524
5646
|
}
|
5525
5647
|
}
|
5526
5648
|
}
|
5527
|
-
|
5649
|
+
this.clearLocalStorage();
|
5528
5650
|
throw ex;
|
5529
5651
|
}
|
5530
5652
|
return response;
|
5531
5653
|
}
|
5654
|
+
clearLocalStorage() {
|
5655
|
+
window.localStorage.removeItem(ConstInterface.LAST_ROUTE_EVENT);
|
5656
|
+
window.localStorage.removeItem(ConstInterface.LAST_ROUTE_EVENT_SRC_TSK);
|
5657
|
+
window.localStorage.removeItem(ConstInterface.LAST_ROUTE_EVENT_ARG_LIST);
|
5658
|
+
window.localStorage.removeItem(ConstInterface.IS_SESSION_REINITIALIZING);
|
5659
|
+
window.localStorage.removeItem(ConstInterface.MAIN_PROG_VIEW);
|
5660
|
+
window.localStorage.removeItem(ConstInterface.GLOBAL_PARAM_LIST);
|
5661
|
+
window.localStorage.removeItem(ConstInterface.ENV_VAR_LIST);
|
5662
|
+
window.localStorage.removeItem(ConstInterface.LAST_EXCEPTION);
|
5663
|
+
window.localStorage.removeItem(ConstInterface.CTX_REMOVED_FROM_SRVR);
|
5664
|
+
}
|
5532
5665
|
HandleErrorResponse(response) {
|
5533
5666
|
try {
|
5534
5667
|
Logger.Instance.WriteServerMessagesToLog("MESSAGE FROM SERVER: " + response);
|
@@ -5730,21 +5863,6 @@ RemoteCommandsProcessor.InitialUrl = null;
|
|
5730
5863
|
RemoteCommandsProcessor.WEB_COMMUNICATION_PROTOCOL_VERSION = "14002";
|
5731
5864
|
RemoteCommandsProcessor._shouldScrambleAndUnscrambleMessages = false;
|
5732
5865
|
class HandshakeResponse {
|
5733
|
-
constructor(responseXML) {
|
5734
|
-
this._scrambleMessages = true;
|
5735
|
-
this._contextId = null;
|
5736
|
-
this._privateSessionId = null;
|
5737
|
-
this._inputPassword = false;
|
5738
|
-
this._httpTimeout = 0;
|
5739
|
-
this._systemLogin = null;
|
5740
|
-
this._maxInternalLogLevel = null;
|
5741
|
-
try {
|
5742
|
-
JSON_Utils.JSONFromXML(responseXML, this.FillFromJSON.bind(this));
|
5743
|
-
}
|
5744
|
-
catch (ex) {
|
5745
|
-
Logger.Instance.WriteExceptionToLog(ex, responseXML);
|
5746
|
-
}
|
5747
|
-
}
|
5748
5866
|
get ScrambleMessages() {
|
5749
5867
|
return this._scrambleMessages;
|
5750
5868
|
}
|
@@ -5766,6 +5884,21 @@ class HandshakeResponse {
|
|
5766
5884
|
get MaxInternalLogLevel() {
|
5767
5885
|
return this._maxInternalLogLevel;
|
5768
5886
|
}
|
5887
|
+
constructor(responseXML) {
|
5888
|
+
this._scrambleMessages = true;
|
5889
|
+
this._contextId = null;
|
5890
|
+
this._privateSessionId = null;
|
5891
|
+
this._inputPassword = false;
|
5892
|
+
this._httpTimeout = 0;
|
5893
|
+
this._systemLogin = null;
|
5894
|
+
this._maxInternalLogLevel = null;
|
5895
|
+
try {
|
5896
|
+
JSON_Utils.JSONFromXML(responseXML, this.FillFromJSON.bind(this));
|
5897
|
+
}
|
5898
|
+
catch (ex) {
|
5899
|
+
Logger.Instance.WriteExceptionToLog(ex, responseXML);
|
5900
|
+
}
|
5901
|
+
}
|
5769
5902
|
FillFromJSON(error, result) {
|
5770
5903
|
if (error != null) {
|
5771
5904
|
throw error;
|
@@ -6722,7 +6855,7 @@ ExpressionDict.expDesc = [
|
|
6722
6855
|
null,
|
6723
6856
|
new ExpDesc('N', 0, 0, 0, "", false),
|
6724
6857
|
null,
|
6725
|
-
|
6858
|
+
null,
|
6726
6859
|
new ExpDesc('B', 0, 2, 2, "V ", false),
|
6727
6860
|
null,
|
6728
6861
|
null,
|
@@ -7171,12 +7304,12 @@ ExpressionDict.expDesc = [
|
|
7171
7304
|
null,
|
7172
7305
|
new ExpDesc('A', 0, 1, 1, "A", false),
|
7173
7306
|
new ExpDesc('N', 0, 2, 2, "AA", false),
|
7174
|
-
|
7175
|
-
|
7176
|
-
|
7177
|
-
|
7178
|
-
|
7179
|
-
|
7307
|
+
null,
|
7308
|
+
null,
|
7309
|
+
null,
|
7310
|
+
null,
|
7311
|
+
null,
|
7312
|
+
null,
|
7180
7313
|
new ExpDesc('N', 0, 1, 1, "N", false),
|
7181
7314
|
null,
|
7182
7315
|
null,
|
@@ -7263,48 +7396,6 @@ ExpressionDict.expDesc = [
|
|
7263
7396
|
new ExpDesc('U', 0, 0, 0, '', false),
|
7264
7397
|
];
|
7265
7398
|
|
7266
|
-
var DataViewCommandType;
|
7267
|
-
(function (DataViewCommandType) {
|
7268
|
-
DataViewCommandType[DataViewCommandType["Init"] = 0] = "Init";
|
7269
|
-
DataViewCommandType[DataViewCommandType["Clear"] = 1] = "Clear";
|
7270
|
-
DataViewCommandType[DataViewCommandType["Prepare"] = 2] = "Prepare";
|
7271
|
-
DataViewCommandType[DataViewCommandType["FirstChunk"] = 3] = "FirstChunk";
|
7272
|
-
DataViewCommandType[DataViewCommandType["RecomputeUnit"] = 4] = "RecomputeUnit";
|
7273
|
-
DataViewCommandType[DataViewCommandType["ExecuteLocalUpdates"] = 5] = "ExecuteLocalUpdates";
|
7274
|
-
DataViewCommandType[DataViewCommandType["InitDataControlViews"] = 6] = "InitDataControlViews";
|
7275
|
-
DataViewCommandType[DataViewCommandType["OpenTransaction"] = 7] = "OpenTransaction";
|
7276
|
-
DataViewCommandType[DataViewCommandType["CloseTransaction"] = 8] = "CloseTransaction";
|
7277
|
-
DataViewCommandType[DataViewCommandType["SetTransactionState"] = 9] = "SetTransactionState";
|
7278
|
-
DataViewCommandType[DataViewCommandType["AddUserRange"] = 10] = "AddUserRange";
|
7279
|
-
DataViewCommandType[DataViewCommandType["ResetUserRange"] = 11] = "ResetUserRange";
|
7280
|
-
DataViewCommandType[DataViewCommandType["DbDisconnect"] = 12] = "DbDisconnect";
|
7281
|
-
DataViewCommandType[DataViewCommandType["AddUserLocate"] = 13] = "AddUserLocate";
|
7282
|
-
DataViewCommandType[DataViewCommandType["ResetUserLocate"] = 14] = "ResetUserLocate";
|
7283
|
-
DataViewCommandType[DataViewCommandType["AddUserSort"] = 15] = "AddUserSort";
|
7284
|
-
DataViewCommandType[DataViewCommandType["ResetUserSort"] = 16] = "ResetUserSort";
|
7285
|
-
DataViewCommandType[DataViewCommandType["DataViewToDataSource"] = 17] = "DataViewToDataSource";
|
7286
|
-
DataViewCommandType[DataViewCommandType["DbDelete"] = 18] = "DbDelete";
|
7287
|
-
DataViewCommandType[DataViewCommandType["ControlItemsRefresh"] = 19] = "ControlItemsRefresh";
|
7288
|
-
DataViewCommandType[DataViewCommandType["SQLExecute"] = 20] = "SQLExecute";
|
7289
|
-
})(DataViewCommandType || (DataViewCommandType = {}));
|
7290
|
-
class DataviewCommand extends ClientOriginatedCommandTaskTag {
|
7291
|
-
constructor() {
|
7292
|
-
super();
|
7293
|
-
this.CommandType = 0;
|
7294
|
-
this.TaskTag = null;
|
7295
|
-
}
|
7296
|
-
get CommandTypeAttribute() {
|
7297
|
-
throw new NotImplementedException();
|
7298
|
-
}
|
7299
|
-
SerializeCommandData() {
|
7300
|
-
Debug.Assert(false, "Dataview commands need not be serialized");
|
7301
|
-
return null;
|
7302
|
-
}
|
7303
|
-
get ShouldSerialize() {
|
7304
|
-
return false;
|
7305
|
-
}
|
7306
|
-
}
|
7307
|
-
|
7308
7399
|
class EventHandlerPosition {
|
7309
7400
|
constructor() {
|
7310
7401
|
this._handlerIdx = 0;
|
@@ -7361,6 +7452,9 @@ class EventHandlerPosition {
|
|
7361
7452
|
case InternalInterface.MG_ACT_REC_SUFFIX:
|
7362
7453
|
case InternalInterface.MG_ACT_CTRL_PREFIX:
|
7363
7454
|
case InternalInterface.MG_ACT_CTRL_SUFFIX: {
|
7455
|
+
if (this._rtEvt.getInternalCode() == InternalInterface.MG_ACT_REC_PREFIX) {
|
7456
|
+
FlowMonitorQueue.Instance.addDataViewFlow(this._task);
|
7457
|
+
}
|
7364
7458
|
if (this._handlerIdx === -1) {
|
7365
7459
|
for (this._handlerIdx = this._handlersTab.getSize() - 1; this._handlerIdx >= 0; this._handlerIdx--) {
|
7366
7460
|
let handler = this._handlersTab.getHandler(this._handlerIdx);
|
@@ -7495,11 +7589,53 @@ class EventHandlerPosition {
|
|
7495
7589
|
this._task = pathParentTask;
|
7496
7590
|
}
|
7497
7591
|
}
|
7498
|
-
}
|
7499
|
-
EventHandlerPosition.PHASE_CONTROL_SPECIFIC = 1;
|
7500
|
-
EventHandlerPosition.PHASE_CONTROL_NON_SPECIFIC = 2;
|
7501
|
-
EventHandlerPosition.PHASE_GLOBAL = 3;
|
7502
|
-
EventHandlerPosition.PHASE_GLOBAL_SPECIFIC = 4;
|
7592
|
+
}
|
7593
|
+
EventHandlerPosition.PHASE_CONTROL_SPECIFIC = 1;
|
7594
|
+
EventHandlerPosition.PHASE_CONTROL_NON_SPECIFIC = 2;
|
7595
|
+
EventHandlerPosition.PHASE_GLOBAL = 3;
|
7596
|
+
EventHandlerPosition.PHASE_GLOBAL_SPECIFIC = 4;
|
7597
|
+
|
7598
|
+
var DataViewCommandType;
|
7599
|
+
(function (DataViewCommandType) {
|
7600
|
+
DataViewCommandType[DataViewCommandType["Init"] = 0] = "Init";
|
7601
|
+
DataViewCommandType[DataViewCommandType["Clear"] = 1] = "Clear";
|
7602
|
+
DataViewCommandType[DataViewCommandType["Prepare"] = 2] = "Prepare";
|
7603
|
+
DataViewCommandType[DataViewCommandType["FirstChunk"] = 3] = "FirstChunk";
|
7604
|
+
DataViewCommandType[DataViewCommandType["RecomputeUnit"] = 4] = "RecomputeUnit";
|
7605
|
+
DataViewCommandType[DataViewCommandType["ExecuteLocalUpdates"] = 5] = "ExecuteLocalUpdates";
|
7606
|
+
DataViewCommandType[DataViewCommandType["InitDataControlViews"] = 6] = "InitDataControlViews";
|
7607
|
+
DataViewCommandType[DataViewCommandType["OpenTransaction"] = 7] = "OpenTransaction";
|
7608
|
+
DataViewCommandType[DataViewCommandType["CloseTransaction"] = 8] = "CloseTransaction";
|
7609
|
+
DataViewCommandType[DataViewCommandType["SetTransactionState"] = 9] = "SetTransactionState";
|
7610
|
+
DataViewCommandType[DataViewCommandType["AddUserRange"] = 10] = "AddUserRange";
|
7611
|
+
DataViewCommandType[DataViewCommandType["ResetUserRange"] = 11] = "ResetUserRange";
|
7612
|
+
DataViewCommandType[DataViewCommandType["DbDisconnect"] = 12] = "DbDisconnect";
|
7613
|
+
DataViewCommandType[DataViewCommandType["AddUserLocate"] = 13] = "AddUserLocate";
|
7614
|
+
DataViewCommandType[DataViewCommandType["ResetUserLocate"] = 14] = "ResetUserLocate";
|
7615
|
+
DataViewCommandType[DataViewCommandType["AddUserSort"] = 15] = "AddUserSort";
|
7616
|
+
DataViewCommandType[DataViewCommandType["ResetUserSort"] = 16] = "ResetUserSort";
|
7617
|
+
DataViewCommandType[DataViewCommandType["DataViewToDataSource"] = 17] = "DataViewToDataSource";
|
7618
|
+
DataViewCommandType[DataViewCommandType["DbDelete"] = 18] = "DbDelete";
|
7619
|
+
DataViewCommandType[DataViewCommandType["ControlItemsRefresh"] = 19] = "ControlItemsRefresh";
|
7620
|
+
DataViewCommandType[DataViewCommandType["SQLExecute"] = 20] = "SQLExecute";
|
7621
|
+
})(DataViewCommandType || (DataViewCommandType = {}));
|
7622
|
+
class DataviewCommand extends ClientOriginatedCommandTaskTag {
|
7623
|
+
get CommandTypeAttribute() {
|
7624
|
+
throw new NotImplementedException();
|
7625
|
+
}
|
7626
|
+
SerializeCommandData() {
|
7627
|
+
Debug.Assert(false, "Dataview commands need not be serialized");
|
7628
|
+
return null;
|
7629
|
+
}
|
7630
|
+
get ShouldSerialize() {
|
7631
|
+
return false;
|
7632
|
+
}
|
7633
|
+
constructor() {
|
7634
|
+
super();
|
7635
|
+
this.CommandType = 0;
|
7636
|
+
this.TaskTag = null;
|
7637
|
+
}
|
7638
|
+
}
|
7503
7639
|
|
7504
7640
|
class AddUserRangeDataviewCommand extends DataviewCommand {
|
7505
7641
|
constructor() {
|
@@ -7720,12 +7856,6 @@ class NonReversibleExitEventCommand extends EventCommand {
|
|
7720
7856
|
}
|
7721
7857
|
|
7722
7858
|
class RecomputeCommand extends ClientOriginatedCommandTaskTag {
|
7723
|
-
constructor() {
|
7724
|
-
super();
|
7725
|
-
this.TaskTag = null;
|
7726
|
-
this.FldId = 0;
|
7727
|
-
this.IgnoreSubformRecompute = false;
|
7728
|
-
}
|
7729
7859
|
get CommandTypeAttribute() {
|
7730
7860
|
return ConstInterface.MG_ATTR_VAL_RECOMP;
|
7731
7861
|
}
|
@@ -7737,17 +7867,18 @@ class RecomputeCommand extends ClientOriginatedCommandTaskTag {
|
|
7737
7867
|
helper.SerializeAttribute(ConstInterface.MG_ATTR_IGNORE_SUBFORM_RECOMPUTE, '1');
|
7738
7868
|
return helper.GetString();
|
7739
7869
|
}
|
7870
|
+
constructor() {
|
7871
|
+
super();
|
7872
|
+
this.TaskTag = null;
|
7873
|
+
this.FldId = 0;
|
7874
|
+
this.IgnoreSubformRecompute = false;
|
7875
|
+
}
|
7740
7876
|
getCommandInfo() {
|
7741
7877
|
return NString.Format('[{0} in {1} for Field {2}]', this.CommandTypeAttribute.charAt(0).toUpperCase() + this.CommandTypeAttribute.substr(1, this.CommandTypeAttribute.length), this.Task.getTaskInfo(), this.Task.getFieldDef(this.FldId).getName());
|
7742
7878
|
}
|
7743
7879
|
}
|
7744
7880
|
|
7745
7881
|
class TransactionCommand extends ClientOriginatedCommandTaskTag {
|
7746
|
-
constructor() {
|
7747
|
-
super();
|
7748
|
-
this.TaskTag = null;
|
7749
|
-
this.ReversibleExit = false;
|
7750
|
-
}
|
7751
7882
|
get CommandTypeAttribute() {
|
7752
7883
|
return ConstInterface.MG_ATTR_VAL_TRANS;
|
7753
7884
|
}
|
@@ -7761,6 +7892,11 @@ class TransactionCommand extends ClientOriginatedCommandTaskTag {
|
|
7761
7892
|
helper.SerializeAttribute(ConstInterface.MG_ATTR_TRANS_LEVEL, this.Level);
|
7762
7893
|
return helper.GetString();
|
7763
7894
|
}
|
7895
|
+
constructor() {
|
7896
|
+
super();
|
7897
|
+
this.TaskTag = null;
|
7898
|
+
this.ReversibleExit = false;
|
7899
|
+
}
|
7764
7900
|
getCommandInfo() {
|
7765
7901
|
return NString.Format('[{0} in {1}]', this.Oper === 'C' ? 'Commit Transaction' : 'Abort Transaction', this.Task.getTaskInfo());
|
7766
7902
|
}
|
@@ -7779,6 +7915,9 @@ class UnloadCommand extends ClientOriginatedCommand {
|
|
7779
7915
|
}
|
7780
7916
|
|
7781
7917
|
class EvaluateCommand extends ClientOriginatedCommandTaskTag {
|
7918
|
+
get CommandTypeAttribute() {
|
7919
|
+
return ConstInterface.MG_ATTR_VAL_EVAL;
|
7920
|
+
}
|
7782
7921
|
constructor() {
|
7783
7922
|
super();
|
7784
7923
|
this.TaskTag = null;
|
@@ -7787,9 +7926,6 @@ class EvaluateCommand extends ClientOriginatedCommandTaskTag {
|
|
7787
7926
|
this.MprgCreator = null;
|
7788
7927
|
this.LengthExpVal = Int32.MinValue;
|
7789
7928
|
}
|
7790
|
-
get CommandTypeAttribute() {
|
7791
|
-
return ConstInterface.MG_ATTR_VAL_EVAL;
|
7792
|
-
}
|
7793
7929
|
SerializeCommandData() {
|
7794
7930
|
let helper = new CommandSerializationHelper();
|
7795
7931
|
helper.SerializeTaskTag(this.TaskTag);
|
@@ -7837,10 +7973,6 @@ class GlobalParamsQueryCommand extends QueryCommand {
|
|
7837
7973
|
}
|
7838
7974
|
|
7839
7975
|
class IniputForceWriteCommand extends ClientOriginatedCommand {
|
7840
|
-
constructor() {
|
7841
|
-
super();
|
7842
|
-
this.Text = null;
|
7843
|
-
}
|
7844
7976
|
get CommandTypeAttribute() {
|
7845
7977
|
return ConstInterface.MG_ATTR_VAL_INIPUT_FORCE_WRITE;
|
7846
7978
|
}
|
@@ -7850,6 +7982,10 @@ class IniputForceWriteCommand extends ClientOriginatedCommand {
|
|
7850
7982
|
SerializeCommandData() {
|
7851
7983
|
return " " + ConstInterface.MG_ATTR_VAL_INIPUT_PARAM + "=\"" + XmlParser.escape(this.Text) + "\"";
|
7852
7984
|
}
|
7985
|
+
constructor() {
|
7986
|
+
super();
|
7987
|
+
this.Text = null;
|
7988
|
+
}
|
7853
7989
|
getCommandInfo() {
|
7854
7990
|
return NString.Format('[{0} with {1}] ', this.CommandTypeAttribute, this.Text);
|
7855
7991
|
}
|
@@ -8136,13 +8272,6 @@ class CommandFactory {
|
|
8136
8272
|
}
|
8137
8273
|
}
|
8138
8274
|
|
8139
|
-
class Sort {
|
8140
|
-
constructor() {
|
8141
|
-
this.fldIdx = 0;
|
8142
|
-
this.dir = false;
|
8143
|
-
}
|
8144
|
-
}
|
8145
|
-
|
8146
8275
|
var ParamParseResult;
|
8147
8276
|
(function (ParamParseResult) {
|
8148
8277
|
ParamParseResult[ParamParseResult["OK"] = 0] = "OK";
|
@@ -8152,10 +8281,6 @@ var ParamParseResult;
|
|
8152
8281
|
})(ParamParseResult || (ParamParseResult = {}));
|
8153
8282
|
|
8154
8283
|
class PrmMap {
|
8155
|
-
constructor() {
|
8156
|
-
this.values = null;
|
8157
|
-
this.values = new Dictionary();
|
8158
|
-
}
|
8159
8284
|
getvalue(s) {
|
8160
8285
|
if (this.values.ContainsKey(s))
|
8161
8286
|
return this.values.get_Item(s);
|
@@ -8168,6 +8293,10 @@ class PrmMap {
|
|
8168
8293
|
remove(s) {
|
8169
8294
|
this.values.Remove(s);
|
8170
8295
|
}
|
8296
|
+
constructor() {
|
8297
|
+
this.values = null;
|
8298
|
+
this.values = new Dictionary();
|
8299
|
+
}
|
8171
8300
|
}
|
8172
8301
|
class MirrorPrmMap extends PrmMap {
|
8173
8302
|
constructor(type) {
|
@@ -8248,7 +8377,7 @@ class MirrorPrmMap extends PrmMap {
|
|
8248
8377
|
while (this.mirrorFromXML(parser.getNextTag(), parser)) {
|
8249
8378
|
}
|
8250
8379
|
}
|
8251
|
-
|
8380
|
+
RestoreParams(xml) {
|
8252
8381
|
let parser = new XmlParser(xml);
|
8253
8382
|
while (this.mirrorFromXML(parser.getNextTag(), parser)) {
|
8254
8383
|
}
|
@@ -8323,6 +8452,7 @@ class Environment {
|
|
8323
8452
|
this._debugMode = 0;
|
8324
8453
|
this._significantNumSize = 0;
|
8325
8454
|
this._specialAnsiExpression = false;
|
8455
|
+
this._specialImmediatehandlerEnd = false;
|
8326
8456
|
this._specialShowStatusBarPanes = false;
|
8327
8457
|
this._specialRouteToRootProgOnContextRecreation = false;
|
8328
8458
|
this._specialCancelOnCreate = false;
|
@@ -8476,6 +8606,9 @@ class Environment {
|
|
8476
8606
|
case ConstInterface.MG_ATTR_LOCAL_FLAGS:
|
8477
8607
|
this._localFlags = valueStr;
|
8478
8608
|
break;
|
8609
|
+
case ConstInterface.MG_ATTR_SPECIAL_IMMEDIATE_HANDLER_END:
|
8610
|
+
this._specialImmediatehandlerEnd = XmlParser.getBoolean(valueStr);
|
8611
|
+
break;
|
8479
8612
|
case ConstInterface.MG_ATTR_SPEACIAL_ANSI_EXP:
|
8480
8613
|
this._specialAnsiExpression = XmlParser.getBoolean(valueStr);
|
8481
8614
|
break;
|
@@ -8680,6 +8813,9 @@ class Environment {
|
|
8680
8813
|
GetLocalFlag(f) {
|
8681
8814
|
return this._localFlags !== null && this._localFlags.indexOf(f) >= 0;
|
8682
8815
|
}
|
8816
|
+
getSpecialImmediateHandlerEnd() {
|
8817
|
+
return this._specialImmediatehandlerEnd;
|
8818
|
+
}
|
8683
8819
|
getSpecialAnsiExpression() {
|
8684
8820
|
return this._specialAnsiExpression;
|
8685
8821
|
}
|
@@ -8749,6 +8885,12 @@ class Environment {
|
|
8749
8885
|
}
|
8750
8886
|
Environment.Instance = new Environment();
|
8751
8887
|
class EnvironmentDetails {
|
8888
|
+
set UpdateInQueryMode(value) {
|
8889
|
+
this._updateInQueryMode = value;
|
8890
|
+
}
|
8891
|
+
set CreateInModifyMode(value) {
|
8892
|
+
this._createInModifyMode = value;
|
8893
|
+
}
|
8752
8894
|
constructor() {
|
8753
8895
|
this._createInModifyMode = false;
|
8754
8896
|
this._updateInQueryMode = false;
|
@@ -8759,12 +8901,6 @@ class EnvironmentDetails {
|
|
8759
8901
|
this.ProjDir = null;
|
8760
8902
|
this.CompIdx = 0;
|
8761
8903
|
}
|
8762
|
-
set UpdateInQueryMode(value) {
|
8763
|
-
this._updateInQueryMode = value;
|
8764
|
-
}
|
8765
|
-
set CreateInModifyMode(value) {
|
8766
|
-
this._createInModifyMode = value;
|
8767
|
-
}
|
8768
8904
|
allowUpdateInQueryMode() {
|
8769
8905
|
return this._updateInQueryMode;
|
8770
8906
|
}
|
@@ -8852,17 +8988,6 @@ class GlobalParams extends MirrorPrmMap {
|
|
8852
8988
|
GlobalParams.Instance = new GlobalParams();
|
8853
8989
|
|
8854
8990
|
class UserDetails {
|
8855
|
-
constructor() {
|
8856
|
-
this.UserName = null;
|
8857
|
-
this.UserID = null;
|
8858
|
-
this.UserInfo = null;
|
8859
|
-
this.Password = null;
|
8860
|
-
this.IsLoggedIn = false;
|
8861
|
-
this.UserName = NString.Empty;
|
8862
|
-
this.UserInfo = NString.Empty;
|
8863
|
-
this.IsLoggedIn = false;
|
8864
|
-
this.setUserID(NString.Empty);
|
8865
|
-
}
|
8866
8991
|
setIsLoggedIn(value) {
|
8867
8992
|
this.IsLoggedIn = value;
|
8868
8993
|
}
|
@@ -8882,6 +9007,17 @@ class UserDetails {
|
|
8882
9007
|
UserDetails._instance = new UserDetails();
|
8883
9008
|
return UserDetails._instance;
|
8884
9009
|
}
|
9010
|
+
constructor() {
|
9011
|
+
this.UserName = null;
|
9012
|
+
this.UserID = null;
|
9013
|
+
this.UserInfo = null;
|
9014
|
+
this.Password = null;
|
9015
|
+
this.IsLoggedIn = false;
|
9016
|
+
this.UserName = NString.Empty;
|
9017
|
+
this.UserInfo = NString.Empty;
|
9018
|
+
this.IsLoggedIn = false;
|
9019
|
+
this.setUserID(NString.Empty);
|
9020
|
+
}
|
8885
9021
|
fillData(parser) {
|
8886
9022
|
let tokensVector;
|
8887
9023
|
let endContext = parser.getXMLdata().indexOf(XMLConstants.TAG_TERM, parser.getCurrIndex());
|
@@ -9690,8 +9826,7 @@ class MirrorString {
|
|
9690
9826
|
this._reserved = false;
|
9691
9827
|
}
|
9692
9828
|
mirrorToXML() {
|
9693
|
-
return ConstInterface.MG_ATTR_ENV_VALUE + "=\"" + XmlParser.escape(this._value) + "\"
|
9694
|
-
ConstInterface.MG_ATTR_ENV_WRITEINI + "=F";
|
9829
|
+
return ConstInterface.MG_ATTR_ENV_VALUE + "=\"" + XmlParser.escape(this._value) + "\"";
|
9695
9830
|
}
|
9696
9831
|
init(name, xmlParser) {
|
9697
9832
|
let valueStart, valueEnd, reserveStart, paramEnd;
|
@@ -11257,11 +11392,6 @@ class ExpressionEvaluator extends GuiExpressionEvaluator {
|
|
11257
11392
|
val1 = valStack.pop();
|
11258
11393
|
this.eval_op_eoy(resVal, val1);
|
11259
11394
|
break;
|
11260
|
-
case ExpressionInterface.EXP_OP_ROLLBACK:
|
11261
|
-
val2 = valStack.pop();
|
11262
|
-
val1 = valStack.pop();
|
11263
|
-
await this.eval_op_rollback(resVal);
|
11264
|
-
break;
|
11265
11395
|
case ExpressionInterface.EXP_OP_VARSET:
|
11266
11396
|
val2 = valStack.pop();
|
11267
11397
|
val1 = valStack.pop();
|
@@ -11626,41 +11756,6 @@ class ExpressionEvaluator extends GuiExpressionEvaluator {
|
|
11626
11756
|
val1 = valStack.pop();
|
11627
11757
|
this.eval_op_taskType(resVal, val1);
|
11628
11758
|
break;
|
11629
|
-
case ExpressionInterface.EXP_OP_RANGE_ADD:
|
11630
|
-
nArgs = valStack.pop();
|
11631
|
-
if (nArgs > 0) {
|
11632
|
-
Exp_params = new Array(nArgs);
|
11633
|
-
for (j = 0; j < nArgs; j++)
|
11634
|
-
Exp_params[nArgs - 1 - j] = valStack.pop();
|
11635
|
-
await this.eval_op_range_add(resVal, Exp_params);
|
11636
|
-
}
|
11637
|
-
break;
|
11638
|
-
case ExpressionInterface.EXP_OP_RANGE_RESET:
|
11639
|
-
val1 = valStack.pop();
|
11640
|
-
await this.eval_op_range_reset(resVal, val1);
|
11641
|
-
break;
|
11642
|
-
case ExpressionInterface.EXP_OP_LOCATE_ADD:
|
11643
|
-
nArgs = valStack.pop();
|
11644
|
-
if (nArgs > 0) {
|
11645
|
-
Exp_params = new Array(nArgs);
|
11646
|
-
for (j = 0; j < nArgs; j++)
|
11647
|
-
Exp_params[nArgs - 1 - j] = valStack.pop();
|
11648
|
-
await this.eval_op_locate_add(resVal, Exp_params);
|
11649
|
-
}
|
11650
|
-
break;
|
11651
|
-
case ExpressionInterface.EXP_OP_LOCATE_RESET:
|
11652
|
-
val1 = valStack.pop();
|
11653
|
-
await this.eval_op_locate_reset(resVal, val1);
|
11654
|
-
break;
|
11655
|
-
case ExpressionInterface.EXP_OP_SORT_ADD:
|
11656
|
-
val2 = valStack.pop();
|
11657
|
-
val1 = valStack.pop();
|
11658
|
-
await this.eval_op_sort_add(resVal, val1, val2);
|
11659
|
-
break;
|
11660
|
-
case ExpressionInterface.EXP_OP_SORT_RESET:
|
11661
|
-
val1 = valStack.pop();
|
11662
|
-
await this.eval_op_sort_reset(resVal, val1);
|
11663
|
-
break;
|
11664
11759
|
case ExpressionInterface.EXP_OP_TSK_INSTANCE:
|
11665
11760
|
val1 = valStack.pop();
|
11666
11761
|
this.eval_op_tsk_instance(resVal, val1);
|
@@ -11689,7 +11784,7 @@ class ExpressionEvaluator extends GuiExpressionEvaluator {
|
|
11689
11784
|
Exp_params = new Array(nArgs);
|
11690
11785
|
for (j = 0; j < nArgs; j++)
|
11691
11786
|
Exp_params[nArgs - 1 - j] = valStack.pop();
|
11692
|
-
this.eval_op_CallJS(this.ExpTask, valStack.pop().StrVal, Exp_params, resVal);
|
11787
|
+
await this.eval_op_CallJS(this.ExpTask, valStack.pop().StrVal, Exp_params, resVal);
|
11693
11788
|
}
|
11694
11789
|
break;
|
11695
11790
|
case ExpressionInterface.EXP_OP_SET_COOKIE:
|
@@ -13299,12 +13394,6 @@ class ExpressionEvaluator extends GuiExpressionEvaluator {
|
|
13299
13394
|
await fld.setValueAndStartRecompute(bufptr, val.IsNull, true, setRecordUpdated, false);
|
13300
13395
|
await fld.updateDisplay();
|
13301
13396
|
}
|
13302
|
-
async eval_op_rollback(resVal) {
|
13303
|
-
let task = this.ExpTask.GetContextTask() || this.ExpTask;
|
13304
|
-
await AccessHelper.eventsManager.handleInternalEventWithTask(task, InternalInterface.MG_ACT_ROLLBACK);
|
13305
|
-
resVal.Attr = StorageAttribute.BOOLEAN;
|
13306
|
-
resVal.BoolVal = true;
|
13307
|
-
}
|
13308
13397
|
eval_op_like(source, maskOrg, resVal) {
|
13309
13398
|
let i;
|
13310
13399
|
let j;
|
@@ -13861,54 +13950,6 @@ class ExpressionEvaluator extends GuiExpressionEvaluator {
|
|
13861
13950
|
resultStr.Replace('\\@', '@');
|
13862
13951
|
resVal.StrVal = resultStr.ToString();
|
13863
13952
|
}
|
13864
|
-
async eval_op_range_add(resVal, Exp_params) {
|
13865
|
-
resVal.Attr = StorageAttribute.BOOLEAN;
|
13866
|
-
resVal.BoolVal = await this.add_rt_ranges(Exp_params, false);
|
13867
|
-
}
|
13868
|
-
async eval_op_range_reset(resVal, parent) {
|
13869
|
-
resVal.Attr = StorageAttribute.BOOLEAN;
|
13870
|
-
let iParent = parent.MgNumVal.NUM_2_LONG();
|
13871
|
-
if ((iParent >= 0 && iParent < (this.ExpTask.getTaskDepth(false))) || iParent === ExpressionEvaluator.TRIGGER_TASK) {
|
13872
|
-
let task = super.GetContextTask(iParent);
|
13873
|
-
if (task !== null) {
|
13874
|
-
let command = CommandFactory.CreateDataViewCommand(task.getTaskTag(), DataViewCommandType.ResetUserRange);
|
13875
|
-
await task.DataviewManager.Execute(command);
|
13876
|
-
resVal.BoolVal = true;
|
13877
|
-
}
|
13878
|
-
}
|
13879
|
-
}
|
13880
|
-
async eval_op_locate_add(resVal, Exp_params) {
|
13881
|
-
resVal.Attr = StorageAttribute.BOOLEAN;
|
13882
|
-
resVal.BoolVal = await this.add_rt_ranges(Exp_params, true);
|
13883
|
-
}
|
13884
|
-
async eval_op_locate_reset(resVal, parent) {
|
13885
|
-
resVal.Attr = StorageAttribute.BOOLEAN;
|
13886
|
-
let iParent = parent.MgNumVal.NUM_2_LONG();
|
13887
|
-
if ((iParent >= 0 && iParent < (this.ExpTask.getTaskDepth(false))) || iParent === ExpressionEvaluator.TRIGGER_TASK) {
|
13888
|
-
let task = super.GetContextTask(iParent);
|
13889
|
-
if (task !== null) {
|
13890
|
-
let command = CommandFactory.CreateDataViewCommand(task.getTaskTag(), DataViewCommandType.ResetUserLocate);
|
13891
|
-
await task.DataviewManager.Execute(command);
|
13892
|
-
resVal.BoolVal = true;
|
13893
|
-
}
|
13894
|
-
}
|
13895
|
-
}
|
13896
|
-
async eval_op_sort_add(resVal, varnum, dir) {
|
13897
|
-
resVal.Attr = StorageAttribute.BOOLEAN;
|
13898
|
-
resVal.BoolVal = await this.add_sort(varnum, dir);
|
13899
|
-
}
|
13900
|
-
async eval_op_sort_reset(resVal, parent) {
|
13901
|
-
resVal.Attr = StorageAttribute.BOOLEAN;
|
13902
|
-
let iParent = parent.MgNumVal.NUM_2_LONG();
|
13903
|
-
if ((iParent >= 0 && iParent < (this.ExpTask.getTaskDepth(false))) || iParent === ExpressionEvaluator.TRIGGER_TASK) {
|
13904
|
-
let task = super.GetContextTask(iParent);
|
13905
|
-
if (task !== null) {
|
13906
|
-
let command = CommandFactory.CreateDataViewCommand(task.getTaskTag(), DataViewCommandType.ResetUserSort);
|
13907
|
-
await task.DataviewManager.Execute(command);
|
13908
|
-
resVal.BoolVal = true;
|
13909
|
-
}
|
13910
|
-
}
|
13911
|
-
}
|
13912
13953
|
eval_op_tsk_instance(resVal, Parent) {
|
13913
13954
|
let tag = 0;
|
13914
13955
|
let iParent = Parent.MgNumVal.NUM_2_LONG();
|
@@ -13922,84 +13963,6 @@ class ExpressionEvaluator extends GuiExpressionEvaluator {
|
|
13922
13963
|
resVal.MgNumVal = new NUM_TYPE();
|
13923
13964
|
resVal.MgNumVal.NUM_4_LONG(tag);
|
13924
13965
|
}
|
13925
|
-
async add_sort(varnum, dir) {
|
13926
|
-
if (varnum.MgNumVal === null)
|
13927
|
-
return false;
|
13928
|
-
let itm = varnum.MgNumVal.NUM_2_LONG();
|
13929
|
-
if (itm === 0)
|
13930
|
-
return false;
|
13931
|
-
let fld = this.GetFieldOfContextTask(itm);
|
13932
|
-
if (fld === null)
|
13933
|
-
return false;
|
13934
|
-
let task = fld.getTask();
|
13935
|
-
let vee_idx = fld.getId() + 1;
|
13936
|
-
let expr_64 = new Sort();
|
13937
|
-
expr_64.fldIdx = vee_idx;
|
13938
|
-
expr_64.dir = dir.BoolVal;
|
13939
|
-
let sort = expr_64;
|
13940
|
-
let command = CommandFactory.CreateAddUserSortDataviewCommand(task.getTaskTag(), sort);
|
13941
|
-
await task.DataviewManager.Execute(command);
|
13942
|
-
return true;
|
13943
|
-
}
|
13944
|
-
async add_rt_ranges(Exp_params, locate) {
|
13945
|
-
let varnum = Exp_params[0];
|
13946
|
-
let min = Exp_params[1];
|
13947
|
-
if (varnum.MgNumVal === null)
|
13948
|
-
return false;
|
13949
|
-
let itm = varnum.MgNumVal.NUM_2_LONG();
|
13950
|
-
if (itm === 0)
|
13951
|
-
return false;
|
13952
|
-
let fld = this.GetFieldOfContextTask(itm);
|
13953
|
-
if (fld === null)
|
13954
|
-
return false;
|
13955
|
-
let task = fld.getTask();
|
13956
|
-
let vee_idx = fld.getId() + 1;
|
13957
|
-
let expr_78 = new UserRange();
|
13958
|
-
expr_78.veeIdx = vee_idx;
|
13959
|
-
let rng = expr_78;
|
13960
|
-
if (min.IsNull)
|
13961
|
-
rng.nullMin = true;
|
13962
|
-
if (!rng.nullMin && (min.Attr === StorageAttribute.ALPHA || min.Attr === StorageAttribute.UNICODE) && min.StrVal.length === 0)
|
13963
|
-
rng.discardMin = true;
|
13964
|
-
else {
|
13965
|
-
if (!rng.nullMin) {
|
13966
|
-
if (!StorageAttributeCheck.isTheSameType(fld.getType(), min.Attr))
|
13967
|
-
return false;
|
13968
|
-
if (StorageAttributeCheck.StorageFldAlphaUnicodeOrBlob(fld.getType(), min.Attr))
|
13969
|
-
this.ConvertExpVal(min, fld.getType());
|
13970
|
-
rng.min = min.ToMgVal();
|
13971
|
-
}
|
13972
|
-
}
|
13973
|
-
if (Exp_params.length === 3) {
|
13974
|
-
let max = Exp_params[2];
|
13975
|
-
if (max.IsNull)
|
13976
|
-
rng.nullMax = true;
|
13977
|
-
if (!rng.nullMax && (max.Attr === StorageAttribute.ALPHA || max.Attr === StorageAttribute.UNICODE) && max.StrVal.length === 0)
|
13978
|
-
rng.discardMax = true;
|
13979
|
-
else {
|
13980
|
-
if (!rng.nullMax) {
|
13981
|
-
if (!StorageAttributeCheck.isTheSameType(fld.getType(), max.Attr))
|
13982
|
-
return false;
|
13983
|
-
if (StorageAttributeCheck.StorageFldAlphaUnicodeOrBlob(fld.getType(), max.Attr))
|
13984
|
-
this.ConvertExpVal(max, fld.getType());
|
13985
|
-
rng.max = max.ToMgVal();
|
13986
|
-
}
|
13987
|
-
}
|
13988
|
-
}
|
13989
|
-
else
|
13990
|
-
rng.discardMax = true;
|
13991
|
-
if (!rng.discardMin || !rng.discardMax) {
|
13992
|
-
if (locate) {
|
13993
|
-
let command = CommandFactory.CreateAddUserLocateDataviewCommand(task.getTaskTag(), rng);
|
13994
|
-
await task.DataviewManager.Execute(command);
|
13995
|
-
}
|
13996
|
-
else {
|
13997
|
-
let command2 = CommandFactory.CreateAddUserRangeDataviewCommand(task.getTaskTag(), rng);
|
13998
|
-
await task.DataviewManager.Execute(command2);
|
13999
|
-
}
|
14000
|
-
}
|
14001
|
-
return true;
|
14002
|
-
}
|
14003
13966
|
eval_op_getParam(resVal, name) {
|
14004
13967
|
Debug.Assert(!name.IsNull && name.StrVal !== null);
|
14005
13968
|
let expVal = GlobalParams.Instance.get(name.StrVal);
|
@@ -14199,7 +14162,7 @@ class ExpressionEvaluator extends GuiExpressionEvaluator {
|
|
14199
14162
|
resVal.MgNumVal = NUM_TYPE.from_double(programIndex);
|
14200
14163
|
}
|
14201
14164
|
}
|
14202
|
-
eval_op_CallJS(task, methodName, expVal, resVal) {
|
14165
|
+
async eval_op_CallJS(task, methodName, expVal, resVal) {
|
14203
14166
|
resVal.Attr = StorageAttribute.ALPHA;
|
14204
14167
|
resVal.StrVal = '';
|
14205
14168
|
if (task.isMainProg()) {
|
@@ -14209,6 +14172,10 @@ class ExpressionEvaluator extends GuiExpressionEvaluator {
|
|
14209
14172
|
let form = task.getForm();
|
14210
14173
|
let args = this.params2arguments(expVal, 0, expVal.length);
|
14211
14174
|
if (!isNullOrUndefined(args)) {
|
14175
|
+
if (task.isFirstRecordCycle()) {
|
14176
|
+
Commands.invoke();
|
14177
|
+
await Thread.Sleep(10);
|
14178
|
+
}
|
14212
14179
|
resVal.StrVal = Commands.addCallJS(form, form.UniqueName, methodName, args);
|
14213
14180
|
resVal.Attr = StorageAttribute.ALPHA;
|
14214
14181
|
}
|
@@ -14517,6 +14484,12 @@ class DataViewBase extends GuiDataViewBase {
|
|
14517
14484
|
}
|
14518
14485
|
|
14519
14486
|
class Record {
|
14487
|
+
get InCompute() {
|
14488
|
+
return this._inCompute;
|
14489
|
+
}
|
14490
|
+
get InRecompute() {
|
14491
|
+
return this._inRecompute;
|
14492
|
+
}
|
14520
14493
|
constructor(dvOrTableCacheOrCIdOrRecord, dataview) {
|
14521
14494
|
this._id = Int32.MinValue;
|
14522
14495
|
this.dbViewRowIdx = 0;
|
@@ -14534,12 +14507,6 @@ class Record {
|
|
14534
14507
|
else
|
14535
14508
|
this.constructor_1(dvOrTableCacheOrCIdOrRecord, dataview);
|
14536
14509
|
}
|
14537
|
-
get InCompute() {
|
14538
|
-
return this._inCompute;
|
14539
|
-
}
|
14540
|
-
get InRecompute() {
|
14541
|
-
return this._inRecompute;
|
14542
|
-
}
|
14543
14510
|
constructor_0(dvOrTableCache) {
|
14544
14511
|
if (dvOrTableCache instanceof DataViewBase)
|
14545
14512
|
this._dataview = dvOrTableCache;
|
@@ -15335,14 +15302,14 @@ Record.FLAG_MODIFIED_ATLEAST_ONCE = (0x40);
|
|
15335
15302
|
Record.INCREASE = true;
|
15336
15303
|
Record.DECREASE = false;
|
15337
15304
|
class DcValuesReference extends ObjectReferenceBase {
|
15305
|
+
get DcValues() {
|
15306
|
+
return this.Referent;
|
15307
|
+
}
|
15338
15308
|
constructor(controlId, referencedDcValues) {
|
15339
15309
|
super(referencedDcValues);
|
15340
15310
|
this.ditIdx = 0;
|
15341
15311
|
this.ditIdx = controlId;
|
15342
15312
|
}
|
15343
|
-
get DcValues() {
|
15344
|
-
return this.Referent;
|
15345
|
-
}
|
15346
15313
|
Clone() {
|
15347
15314
|
return new DcValuesReference(this.ditIdx, this.Referent);
|
15348
15315
|
}
|
@@ -15618,21 +15585,6 @@ class RecordsTable {
|
|
15618
15585
|
RecordsTable.REC_NOT_FOUND = -1;
|
15619
15586
|
|
15620
15587
|
class DataviewHeaderBase {
|
15621
|
-
constructor(task) {
|
15622
|
-
this._cond = null;
|
15623
|
-
this._task = null;
|
15624
|
-
this.Loc = null;
|
15625
|
-
this._dir = '\0';
|
15626
|
-
this._id = 0;
|
15627
|
-
this._keyIdx = 0;
|
15628
|
-
this._retVal = null;
|
15629
|
-
this.returnfield = null;
|
15630
|
-
this.LinkStartAfterField = 0;
|
15631
|
-
this.KeyExpression = 0;
|
15632
|
-
this._task = task;
|
15633
|
-
this._keyIdx = -1;
|
15634
|
-
this._cond = new YesNoExp(true);
|
15635
|
-
}
|
15636
15588
|
get ReturnField() {
|
15637
15589
|
if (this.returnfield === null && this._retVal !== null)
|
15638
15590
|
this.returnfield = this.Task.getFieldByValueStr(this._retVal);
|
@@ -15653,6 +15605,21 @@ class DataviewHeaderBase {
|
|
15653
15605
|
get LinkEvaluateCondition() {
|
15654
15606
|
return this._linkEvalCondition;
|
15655
15607
|
}
|
15608
|
+
constructor(task) {
|
15609
|
+
this._cond = null;
|
15610
|
+
this._task = null;
|
15611
|
+
this.Loc = null;
|
15612
|
+
this._dir = '\0';
|
15613
|
+
this._id = 0;
|
15614
|
+
this._keyIdx = 0;
|
15615
|
+
this._retVal = null;
|
15616
|
+
this.returnfield = null;
|
15617
|
+
this.LinkStartAfterField = 0;
|
15618
|
+
this.KeyExpression = 0;
|
15619
|
+
this._task = task;
|
15620
|
+
this._keyIdx = -1;
|
15621
|
+
this._cond = new YesNoExp(true);
|
15622
|
+
}
|
15656
15623
|
SetAttributes(attributes) {
|
15657
15624
|
let keys = attributes.Keys;
|
15658
15625
|
keys.forEach((text) => {
|
@@ -16943,16 +16910,16 @@ class RecordOutOfDataViewException extends ApplicationException {
|
|
16943
16910
|
}
|
16944
16911
|
|
16945
16912
|
class XMLBasedDcValuesBuilder extends DcValuesBuilderBase {
|
16913
|
+
set SerializedDCVals(value) {
|
16914
|
+
this.parser.setXMLdata(value);
|
16915
|
+
this.parser.setCurrIndex(0);
|
16916
|
+
}
|
16946
16917
|
constructor() {
|
16947
16918
|
super();
|
16948
16919
|
this.dcv = null;
|
16949
16920
|
this.parser = null;
|
16950
16921
|
this.parser = new XmlParser();
|
16951
16922
|
}
|
16952
|
-
set SerializedDCVals(value) {
|
16953
|
-
this.parser.setXMLdata(value);
|
16954
|
-
this.parser.setCurrIndex(0);
|
16955
|
-
}
|
16956
16923
|
Build() {
|
16957
16924
|
this.dcv = null;
|
16958
16925
|
let endContext = this.parser.getXMLdata().indexOf(XMLConstants.TAG_TERM, this.parser.getCurrIndex());
|
@@ -17032,6 +16999,39 @@ const RECOVERY_ACT_NONE = 'N';
|
|
17032
16999
|
const TRANS_STAT_CLOSED = 'C';
|
17033
17000
|
const TRANS_STAT_OPENED = 'O';
|
17034
17001
|
class DataView extends DataViewBase {
|
17002
|
+
set InsertAt(value) {
|
17003
|
+
this._insertAt = value;
|
17004
|
+
}
|
17005
|
+
get InsertAt() {
|
17006
|
+
return this._insertAt;
|
17007
|
+
}
|
17008
|
+
get CurrRec() {
|
17009
|
+
return this._currRec_DO_NOT_USE_DIRECTLY_USE_SETTER_GETTER;
|
17010
|
+
}
|
17011
|
+
set CurrRec(value) {
|
17012
|
+
if (this._currRec_DO_NOT_USE_DIRECTLY_USE_SETTER_GETTER !== null && value === null) {
|
17013
|
+
this._currRec_DO_NOT_USE_DIRECTLY_USE_SETTER_GETTER.resetDcValueId();
|
17014
|
+
}
|
17015
|
+
this._currRec_DO_NOT_USE_DIRECTLY_USE_SETTER_GETTER = value;
|
17016
|
+
if (this._currRec_DO_NOT_USE_DIRECTLY_USE_SETTER_GETTER !== null) {
|
17017
|
+
this._currRec_DO_NOT_USE_DIRECTLY_USE_SETTER_GETTER.SetDcValueId();
|
17018
|
+
}
|
17019
|
+
}
|
17020
|
+
get FlushUpdates() {
|
17021
|
+
return this._flushUpdates;
|
17022
|
+
}
|
17023
|
+
get HasMainTable() {
|
17024
|
+
return this._hasMainTable;
|
17025
|
+
}
|
17026
|
+
get CurrentRecId() {
|
17027
|
+
return this._currRecId;
|
17028
|
+
}
|
17029
|
+
get FirstRecord() {
|
17030
|
+
return this._recordsTab.getRecByIdx(0);
|
17031
|
+
}
|
17032
|
+
get LastRecord() {
|
17033
|
+
return this._recordsTab.getRecByIdx(this._recordsTab.getSize() - 1);
|
17034
|
+
}
|
17035
17035
|
constructor(taskOrDataView) {
|
17036
17036
|
super();
|
17037
17037
|
this._cacheLruTimeStamp = 0;
|
@@ -17083,39 +17083,6 @@ class DataView extends DataViewBase {
|
|
17083
17083
|
Object.assign(this, taskOrDataView);
|
17084
17084
|
}
|
17085
17085
|
}
|
17086
|
-
set InsertAt(value) {
|
17087
|
-
this._insertAt = value;
|
17088
|
-
}
|
17089
|
-
get InsertAt() {
|
17090
|
-
return this._insertAt;
|
17091
|
-
}
|
17092
|
-
get CurrRec() {
|
17093
|
-
return this._currRec_DO_NOT_USE_DIRECTLY_USE_SETTER_GETTER;
|
17094
|
-
}
|
17095
|
-
set CurrRec(value) {
|
17096
|
-
if (this._currRec_DO_NOT_USE_DIRECTLY_USE_SETTER_GETTER !== null && value === null) {
|
17097
|
-
this._currRec_DO_NOT_USE_DIRECTLY_USE_SETTER_GETTER.resetDcValueId();
|
17098
|
-
}
|
17099
|
-
this._currRec_DO_NOT_USE_DIRECTLY_USE_SETTER_GETTER = value;
|
17100
|
-
if (this._currRec_DO_NOT_USE_DIRECTLY_USE_SETTER_GETTER !== null) {
|
17101
|
-
this._currRec_DO_NOT_USE_DIRECTLY_USE_SETTER_GETTER.SetDcValueId();
|
17102
|
-
}
|
17103
|
-
}
|
17104
|
-
get FlushUpdates() {
|
17105
|
-
return this._flushUpdates;
|
17106
|
-
}
|
17107
|
-
get HasMainTable() {
|
17108
|
-
return this._hasMainTable;
|
17109
|
-
}
|
17110
|
-
get CurrentRecId() {
|
17111
|
-
return this._currRecId;
|
17112
|
-
}
|
17113
|
-
get FirstRecord() {
|
17114
|
-
return this._recordsTab.getRecByIdx(0);
|
17115
|
-
}
|
17116
|
-
get LastRecord() {
|
17117
|
-
return this._recordsTab.getRecByIdx(this._recordsTab.getSize() - 1);
|
17118
|
-
}
|
17119
17086
|
Init() {
|
17120
17087
|
this.init();
|
17121
17088
|
}
|
@@ -18688,6 +18655,12 @@ class ReturnResultBase {
|
|
18688
18655
|
}
|
18689
18656
|
|
18690
18657
|
class ReturnResult extends ReturnResultBase {
|
18658
|
+
get Success() {
|
18659
|
+
return this.success;
|
18660
|
+
}
|
18661
|
+
get ErrorDescription() {
|
18662
|
+
return this.errorDescription;
|
18663
|
+
}
|
18691
18664
|
constructor(errorDescriptionCodeOrErrorDescriptionOrInnerResult, innerResult) {
|
18692
18665
|
super();
|
18693
18666
|
this.errorDescription = null;
|
@@ -18702,12 +18675,6 @@ class ReturnResult extends ReturnResultBase {
|
|
18702
18675
|
else
|
18703
18676
|
this.constructor_03(errorDescriptionCodeOrErrorDescriptionOrInnerResult);
|
18704
18677
|
}
|
18705
|
-
get Success() {
|
18706
|
-
return this.success;
|
18707
|
-
}
|
18708
|
-
get ErrorDescription() {
|
18709
|
-
return this.errorDescription;
|
18710
|
-
}
|
18711
18678
|
constructor_00(errorDescriptionCode) {
|
18712
18679
|
this.success = false;
|
18713
18680
|
this.ErrorId = errorDescriptionCode;
|
@@ -18807,13 +18774,13 @@ class Transaction {
|
|
18807
18774
|
}
|
18808
18775
|
|
18809
18776
|
class TaskTransactionManager {
|
18777
|
+
get isClosingTopmostTask() {
|
18778
|
+
return MGDataCollection.Instance.StartupMgData.getFirstTask().InEndTask;
|
18779
|
+
}
|
18810
18780
|
constructor(task) {
|
18811
18781
|
this.task = null;
|
18812
18782
|
this.task = task;
|
18813
18783
|
}
|
18814
|
-
get isClosingTopmostTask() {
|
18815
|
-
return MGDataCollection.Instance.StartupMgData.getFirstTask().InEndTask;
|
18816
|
-
}
|
18817
18784
|
AllowTransaction(transBegin, forLocal) {
|
18818
18785
|
let result;
|
18819
18786
|
if (forLocal)
|
@@ -19157,12 +19124,6 @@ class RemoteDataviewManager extends DataviewManagerBase {
|
|
19157
19124
|
}
|
19158
19125
|
|
19159
19126
|
class DataviewManager extends DataviewManagerBase {
|
19160
|
-
constructor(task) {
|
19161
|
-
super(task);
|
19162
|
-
this.RemoteDataviewManager = null;
|
19163
|
-
this.HasRemoteData = true;
|
19164
|
-
this.RemoteDataviewManager = new RemoteDataviewManager(task);
|
19165
|
-
}
|
19166
19127
|
get TaskService() {
|
19167
19128
|
return this.Task.TaskService;
|
19168
19129
|
}
|
@@ -19177,11 +19138,24 @@ class DataviewManager extends DataviewManagerBase {
|
|
19177
19138
|
get VirtualDataviewManager() {
|
19178
19139
|
return this.TaskService.GetDataviewManagerForVirtuals(this.Task);
|
19179
19140
|
}
|
19141
|
+
constructor(task) {
|
19142
|
+
super(task);
|
19143
|
+
this.RemoteDataviewManager = null;
|
19144
|
+
this.HasRemoteData = true;
|
19145
|
+
this.RemoteDataviewManager = new RemoteDataviewManager(task);
|
19146
|
+
}
|
19180
19147
|
async Execute(command) {
|
19181
19148
|
return await this.CurrentDataviewManager.Execute(command);
|
19182
19149
|
}
|
19183
19150
|
}
|
19184
19151
|
|
19152
|
+
class Sort {
|
19153
|
+
constructor() {
|
19154
|
+
this.fldIdx = 0;
|
19155
|
+
this.dir = false;
|
19156
|
+
}
|
19157
|
+
}
|
19158
|
+
|
19185
19159
|
class SortCollection {
|
19186
19160
|
constructor() {
|
19187
19161
|
this._sortTab = null;
|
@@ -19308,18 +19282,8 @@ class MgForm extends MgFormBase {
|
|
19308
19282
|
dv = this._task.DataView;
|
19309
19283
|
return (dv);
|
19310
19284
|
}
|
19311
|
-
async moveInView(unit, direction
|
19312
|
-
if (isNullOrUndefined(returnToCtrl))
|
19313
|
-
await this.moveInView_0(unit, direction);
|
19314
|
-
else
|
19315
|
-
await this.moveInView_1(unit, direction, returnToCtrl);
|
19316
|
-
}
|
19317
|
-
async moveInView_0(unit, direction) {
|
19318
|
-
await this.moveInView(unit, direction, true);
|
19319
|
-
}
|
19320
|
-
async moveInView_1(unit, direction, returnToCtrl) {
|
19285
|
+
async moveInView(unit, direction) {
|
19321
19286
|
let oldRecId = Int32.MinValue;
|
19322
|
-
let lastParkedCtrl;
|
19323
19287
|
let currRec = this.GetDataview().getCurrRec();
|
19324
19288
|
let oldTaskMode = ' ';
|
19325
19289
|
let returnToVisibleLine = false;
|
@@ -19410,11 +19374,7 @@ class MgForm extends MgFormBase {
|
|
19410
19374
|
this.GetDataview().setTopRecIdxModified(true);
|
19411
19375
|
try {
|
19412
19376
|
this._suffixDone = false;
|
19413
|
-
|
19414
|
-
if (unit === Constants.MOVE_UNIT_PAGE && this.isLineMode())
|
19415
|
-
if (newDisplayLine > this.GetDataview().getSize() - 1)
|
19416
|
-
visibleLine -= newDisplayLine - (this.GetDataview().getSize() - 1);
|
19417
|
-
await this.setCurrRowByDisplayLine(newDisplayLine, true, false);
|
19377
|
+
await this.setCurrRowByDisplayLine(this.GetDataview().getCurrRecIdx() + size, true, false);
|
19418
19378
|
this.GetDataview().setTopRecIdxModified(false);
|
19419
19379
|
await this.RefreshDisplay(Constants.TASK_REFRESH_FORM);
|
19420
19380
|
}
|
@@ -19454,6 +19414,7 @@ class MgForm extends MgFormBase {
|
|
19454
19414
|
try {
|
19455
19415
|
await this.RefreshDisplay(Constants.TASK_REFRESH_FORM);
|
19456
19416
|
await this.setCurrRowByDisplayLine(this.GetDataview().getTopRecIdx() + this.getLastValidRow(), false, true);
|
19417
|
+
visibleLine = this.getLastValidRow();
|
19457
19418
|
}
|
19458
19419
|
catch (Exception) {
|
19459
19420
|
}
|
@@ -19577,15 +19538,6 @@ class MgForm extends MgFormBase {
|
|
19577
19538
|
else
|
19578
19539
|
this.SetTableTopIndex();
|
19579
19540
|
await AccessHelper.eventsManager.handleInternalEventWithTask(this._task, InternalInterface.MG_ACT_REC_PREFIX);
|
19580
|
-
if (returnToCtrl) {
|
19581
|
-
lastParkedCtrl = this._task.getLastParkedCtrl();
|
19582
|
-
if (lastParkedCtrl != null) {
|
19583
|
-
let cursorMoved = await lastParkedCtrl.invoke();
|
19584
|
-
if (!cursorMoved) {
|
19585
|
-
await AccessHelper.eventsManager.HandleNonParkableControls(this._task);
|
19586
|
-
}
|
19587
|
-
}
|
19588
|
-
}
|
19589
19541
|
}
|
19590
19542
|
catch (e) {
|
19591
19543
|
if (e instanceof RecordOutOfDataViewException) {
|
@@ -20117,8 +20069,13 @@ class MgForm extends MgFormBase {
|
|
20117
20069
|
finally {
|
20118
20070
|
this._inRefreshDisp = false;
|
20119
20071
|
}
|
20120
|
-
if (refreshType === Constants.TASK_REFRESH_CURR_REC && (!super.isLineMode() || this._tableRefreshed))
|
20072
|
+
if (refreshType === Constants.TASK_REFRESH_CURR_REC && (!super.isLineMode() || this._tableRefreshed)) {
|
20121
20073
|
this.FormRefreshed = true;
|
20074
|
+
if (this._task.isFirstRecordCycle() || AccessHelper.eventsManager.getIsInViewRefresh()) {
|
20075
|
+
Commands.addNoParameters(CommandType.SET_WC_IDLE, this);
|
20076
|
+
AccessHelper.eventsManager.setIsInViewRefresh(false);
|
20077
|
+
}
|
20078
|
+
}
|
20122
20079
|
return true;
|
20123
20080
|
}
|
20124
20081
|
RefreshUI() {
|
@@ -21526,8 +21483,12 @@ class EventHandler {
|
|
21526
21483
|
continue;
|
21527
21484
|
else if (this._operationTab.getOperation(oper.getBlockEnd()).getServerId() < nextOperIdx)
|
21528
21485
|
continue;
|
21529
|
-
if (!taskEnd)
|
21530
|
-
|
21486
|
+
if (!taskEnd) {
|
21487
|
+
let mainLevel = this._task.getMainLevel().toLowerCase();
|
21488
|
+
if (await this._task.evalEndCond(ConstInterface.END_COND_EVAL_IMMIDIATE) && Environment.Instance.getSpecialImmediateHandlerEnd() &&
|
21489
|
+
mainLevel != "RP".toLowerCase() && mainLevel != "TP".toLowerCase() && mainLevel != "RS".toLowerCase() && mainLevel != "TS".toLowerCase())
|
21490
|
+
break;
|
21491
|
+
}
|
21531
21492
|
if (this._taskMgdID !== mgdID)
|
21532
21493
|
isChangedCurrWndRef.value = true;
|
21533
21494
|
if (!this._task.isMainProg() && this._task.isOpenWin())
|
@@ -22321,13 +22282,6 @@ class UserEventsTable {
|
|
22321
22282
|
}
|
22322
22283
|
|
22323
22284
|
class FormsTable {
|
22324
|
-
constructor(task, parentForm) {
|
22325
|
-
this._task = null;
|
22326
|
-
this._parentForm = null;
|
22327
|
-
this._formsStringXml = null;
|
22328
|
-
this._task = task;
|
22329
|
-
this._parentForm = parentForm;
|
22330
|
-
}
|
22331
22285
|
get Count() {
|
22332
22286
|
return this._formsStringXml.length;
|
22333
22287
|
}
|
@@ -22336,6 +22290,13 @@ class FormsTable {
|
|
22336
22290
|
return this._formsStringXml.get_Item(formDisplayIndex - 1);
|
22337
22291
|
return null;
|
22338
22292
|
}
|
22293
|
+
constructor(task, parentForm) {
|
22294
|
+
this._task = null;
|
22295
|
+
this._parentForm = null;
|
22296
|
+
this._formsStringXml = null;
|
22297
|
+
this._task = task;
|
22298
|
+
this._parentForm = parentForm;
|
22299
|
+
}
|
22339
22300
|
async fillData() {
|
22340
22301
|
this._formsStringXml = new List();
|
22341
22302
|
let parser = Manager.GetCurrentRuntimeContext().Parser;
|
@@ -22525,6 +22486,47 @@ var Task_Direction;
|
|
22525
22486
|
Task_Direction[Task_Direction["FORE"] = 1] = "FORE";
|
22526
22487
|
})(Task_Direction || (Task_Direction = {}));
|
22527
22488
|
class Task extends TaskBase {
|
22489
|
+
get ParentTask() {
|
22490
|
+
return this._parentTask;
|
22491
|
+
}
|
22492
|
+
set TryingToCommit(value) {
|
22493
|
+
this._tryingToCommit = value;
|
22494
|
+
}
|
22495
|
+
get TryingToCommit() {
|
22496
|
+
return this._tryingToCommit;
|
22497
|
+
}
|
22498
|
+
get TaskService() {
|
22499
|
+
if (this._taskService == null)
|
22500
|
+
this._taskService = new RemoteTaskService();
|
22501
|
+
return this._taskService;
|
22502
|
+
}
|
22503
|
+
static get CommandsProcessor() {
|
22504
|
+
return CommandsProcessorManager.GetCommandsProcessor();
|
22505
|
+
}
|
22506
|
+
get LogicalStudioParentTask() {
|
22507
|
+
if (this.StudioParentTask === null && !super.isMainProg()) {
|
22508
|
+
return GuiDataCollection.MGDataTable.GetMainProgByCtlIdx(this.ContextID, this._ctlIdx);
|
22509
|
+
}
|
22510
|
+
return this.StudioParentTask;
|
22511
|
+
}
|
22512
|
+
get KnownToServer() {
|
22513
|
+
return this._knownToServer;
|
22514
|
+
}
|
22515
|
+
set Transaction(value) {
|
22516
|
+
this.DataviewManager.CurrentDataviewManager.Transaction = value;
|
22517
|
+
}
|
22518
|
+
get Transaction() {
|
22519
|
+
return this.DataviewManager.CurrentDataviewManager.Transaction;
|
22520
|
+
}
|
22521
|
+
get TaskDefinitionId() {
|
22522
|
+
if (this.taskDefinitionId === null) {
|
22523
|
+
this.taskDefinitionId = new TaskDefinitionId(this._ctlIdx, this.ProgramIsn, this.TaskIsn, this._isPrg);
|
22524
|
+
}
|
22525
|
+
return this.taskDefinitionId;
|
22526
|
+
}
|
22527
|
+
static get IsBlockingBatch() {
|
22528
|
+
return false;
|
22529
|
+
}
|
22528
22530
|
constructor(parent) {
|
22529
22531
|
super();
|
22530
22532
|
this._dvCache = null;
|
@@ -22593,47 +22595,6 @@ class Task extends TaskBase {
|
|
22593
22595
|
}
|
22594
22596
|
this.constructor_1(parent);
|
22595
22597
|
}
|
22596
|
-
get ParentTask() {
|
22597
|
-
return this._parentTask;
|
22598
|
-
}
|
22599
|
-
set TryingToCommit(value) {
|
22600
|
-
this._tryingToCommit = value;
|
22601
|
-
}
|
22602
|
-
get TryingToCommit() {
|
22603
|
-
return this._tryingToCommit;
|
22604
|
-
}
|
22605
|
-
get TaskService() {
|
22606
|
-
if (this._taskService == null)
|
22607
|
-
this._taskService = new RemoteTaskService();
|
22608
|
-
return this._taskService;
|
22609
|
-
}
|
22610
|
-
static get CommandsProcessor() {
|
22611
|
-
return CommandsProcessorManager.GetCommandsProcessor();
|
22612
|
-
}
|
22613
|
-
get LogicalStudioParentTask() {
|
22614
|
-
if (this.StudioParentTask === null && !super.isMainProg()) {
|
22615
|
-
return GuiDataCollection.MGDataTable.GetMainProgByCtlIdx(this.ContextID, this._ctlIdx);
|
22616
|
-
}
|
22617
|
-
return this.StudioParentTask;
|
22618
|
-
}
|
22619
|
-
get KnownToServer() {
|
22620
|
-
return this._knownToServer;
|
22621
|
-
}
|
22622
|
-
set Transaction(value) {
|
22623
|
-
this.DataviewManager.CurrentDataviewManager.Transaction = value;
|
22624
|
-
}
|
22625
|
-
get Transaction() {
|
22626
|
-
return this.DataviewManager.CurrentDataviewManager.Transaction;
|
22627
|
-
}
|
22628
|
-
get TaskDefinitionId() {
|
22629
|
-
if (this.taskDefinitionId === null) {
|
22630
|
-
this.taskDefinitionId = new TaskDefinitionId(this._ctlIdx, this.ProgramIsn, this.TaskIsn, this._isPrg);
|
22631
|
-
}
|
22632
|
-
return this.taskDefinitionId;
|
22633
|
-
}
|
22634
|
-
static get IsBlockingBatch() {
|
22635
|
-
return false;
|
22636
|
-
}
|
22637
22598
|
constructor_0() {
|
22638
22599
|
this.ActionManager = new ActionManager();
|
22639
22600
|
this.DataView = new DataView(this);
|
@@ -24444,6 +24405,7 @@ class Task extends TaskBase {
|
|
24444
24405
|
this.ActionManager.enable(InternalInterface.MG_ACT_SORT_RECORDS, enable);
|
24445
24406
|
enable = await this.checkProp(PropInterface.PROP_TYPE_TASK_PROPERTIES_ALLOW_INDEX, true);
|
24446
24407
|
this.ActionManager.enable(InternalInterface.MG_ACT_VIEW_BY_KEY, enable);
|
24408
|
+
this.ActionManager.enable(InternalInterface.MG_ACT_DUMP_ENVIRONMENT, true);
|
24447
24409
|
}
|
24448
24410
|
setEnableZoomHandler() {
|
24449
24411
|
this._enableZoomHandler = true;
|
@@ -25030,6 +24992,9 @@ class CompMainPrgTable {
|
|
25030
24992
|
}
|
25031
24993
|
|
25032
24994
|
class MGData {
|
24995
|
+
get ForceModal() {
|
24996
|
+
return this.forceModal;
|
24997
|
+
}
|
25033
24998
|
constructor(toClient, toServer, id, parent, isModal, forceModal) {
|
25034
24999
|
this._expHandlers = null;
|
25035
25000
|
this._id = 0;
|
@@ -25050,9 +25015,6 @@ class MGData {
|
|
25050
25015
|
else
|
25051
25016
|
this.constructor_1(id, parent, isModal, forceModal);
|
25052
25017
|
}
|
25053
|
-
get ForceModal() {
|
25054
|
-
return this.forceModal;
|
25055
|
-
}
|
25056
25018
|
constructor_0(id, parent, isModal) {
|
25057
25019
|
this._timerHandlers = new HandlersTable();
|
25058
25020
|
this._expHandlers = new HandlersTable();
|
@@ -25651,6 +25613,7 @@ class EventsManager {
|
|
25651
25613
|
this.confirmationDialogTitle = 'Session is about to be terminated!';
|
25652
25614
|
this._lastFailedFocusedControl = null;
|
25653
25615
|
this.isSpinnerShown = false;
|
25616
|
+
this.isInViewRefresh = false;
|
25654
25617
|
this.SpinnerStopped = new Subject();
|
25655
25618
|
this._rtEvents = new Stack();
|
25656
25619
|
this._eventsQueue = new MgPriorityBlockingQueue();
|
@@ -25862,7 +25825,7 @@ class EventsManager {
|
|
25862
25825
|
if (raiseAt === RaiseAt.TaskInFocus)
|
25863
25826
|
mgControl.setRtEvtTask(LastFocusedManager.Instance.getLastFocusedTask());
|
25864
25827
|
}
|
25865
|
-
await this.handleFocus(mgControl, line, produceClick);
|
25828
|
+
await this.handleFocus(mgControl, line, produceClick, false);
|
25866
25829
|
currTask.setCancelWasRaised(cancelWasRaised);
|
25867
25830
|
if (this._stopExecution)
|
25868
25831
|
return;
|
@@ -26445,7 +26408,7 @@ class EventsManager {
|
|
26445
26408
|
this.setLastSavedRouteEvent(aRtEvt);
|
26446
26409
|
}
|
26447
26410
|
}
|
26448
|
-
async handleFocus(ctrl, line, onClick) {
|
26411
|
+
async handleFocus(ctrl, line, onClick, shouldHandleZoom) {
|
26449
26412
|
try {
|
26450
26413
|
if (ctrl.isStatic())
|
26451
26414
|
return;
|
@@ -26463,6 +26426,10 @@ class EventsManager {
|
|
26463
26426
|
let prevCtrl = LastFocusedManager.getLastFocusedControl();
|
26464
26427
|
if (ctrl === prevCtrl && !ctrl.isRepeatable()) {
|
26465
26428
|
await ctrl.getForm().bringRecordToPage();
|
26429
|
+
await this.HandleZoomIfNeeded(ctrl, line, shouldHandleZoom);
|
26430
|
+
let rtEvnt = this.getLastRtEvent();
|
26431
|
+
if (rtEvnt != null && rtEvnt.ShouldHandleZoom)
|
26432
|
+
FocusManager.SetFocus(ctrl, -1);
|
26466
26433
|
return;
|
26467
26434
|
}
|
26468
26435
|
let prevTask = LastFocusedManager.Instance.getLastFocusedTask();
|
@@ -26502,8 +26469,10 @@ class EventsManager {
|
|
26502
26469
|
}
|
26503
26470
|
else
|
26504
26471
|
await this.HandleNonParkableControls(ctrl.getForm().getTask());
|
26505
|
-
if (!this._stopExecution && MgControl.ReturnToCtrl === ctrl)
|
26472
|
+
if (!this._stopExecution && MgControl.ReturnToCtrl === ctrl) {
|
26506
26473
|
LastFocusedManager.setLastFocusedControl(ctrl.getForm().getTask(), ctrl);
|
26474
|
+
await this.HandleZoomIfNeeded(ctrl, line, shouldHandleZoom);
|
26475
|
+
}
|
26507
26476
|
return;
|
26508
26477
|
}
|
26509
26478
|
finally {
|
@@ -26564,6 +26533,13 @@ class EventsManager {
|
|
26564
26533
|
}
|
26565
26534
|
}
|
26566
26535
|
}
|
26536
|
+
async HandleZoomIfNeeded(ctrl, line, shouldHandleZoom) {
|
26537
|
+
if (shouldHandleZoom) {
|
26538
|
+
var rtEvt = new RunTimeEvent(ctrl, line, true);
|
26539
|
+
rtEvt.setInternal(InternalInterface.MG_ACT_ZOOM);
|
26540
|
+
await this.handleEvent(rtEvt, false);
|
26541
|
+
}
|
26542
|
+
}
|
26567
26543
|
canGoToControl(ctrl, onClick) {
|
26568
26544
|
if (onClick && (ctrl.Type === MgControlType.CTRL_TYPE_SUBFORM || ctrl.Type === MgControlType.CTRL_TYPE_BROWSER))
|
26569
26545
|
return false;
|
@@ -26796,7 +26772,7 @@ class EventsManager {
|
|
26796
26772
|
case InternalInterface.MG_ACT_WEB_ON_DBLICK:
|
26797
26773
|
break;
|
26798
26774
|
case InternalInterface.MG_ACT_CTRL_FOCUS:
|
26799
|
-
await this.handleFocus(ctrl, displayLine, evt.isProduceClick());
|
26775
|
+
await this.handleFocus(ctrl, displayLine, evt.isProduceClick(), evt.ShouldHandleZoom);
|
26800
26776
|
return false;
|
26801
26777
|
case InternalInterface.MG_ACT_CTRL_FOCUS_ON_NON_MAGIC_CONTROL:
|
26802
26778
|
await this.handleFocusOnNonMagicControl(ctrl);
|
@@ -27490,6 +27466,7 @@ class EventsManager {
|
|
27490
27466
|
}
|
27491
27467
|
break;
|
27492
27468
|
case InternalInterface.MG_ACT_SERVER_TERMINATION:
|
27469
|
+
case InternalInterface.MG_ACT_DUMP_ENVIRONMENT:
|
27493
27470
|
cmd = CommandFactory.CreateEventCommand(task.getTaskTag(), intEvtCode);
|
27494
27471
|
cmdsToServer.Add(cmd);
|
27495
27472
|
await CommandsProcessorManager.GetCommandsProcessor().Execute(CommandsProcessorBase_SendingInstruction.TASKS_AND_COMMANDS);
|
@@ -27809,6 +27786,7 @@ class EventsManager {
|
|
27809
27786
|
else if (intEvtCode === InternalInterface.MG_ACT_RT_REFRESH_SCREEN && task.getMode() !== Constants.TASK_MODE_QUERY && !task.getAfterRetry()) {
|
27810
27787
|
await dv.currRecCompute(true);
|
27811
27788
|
}
|
27789
|
+
this.setIsInViewRefresh(true);
|
27812
27790
|
await this.handleInternalEventWithTask(task, InternalInterface.MG_ACT_REC_PREFIX);
|
27813
27791
|
if (!this.GetStopExecutionFlag() && !task.getPreventControlChange()) {
|
27814
27792
|
if (!(task === LastFocusedManager.Instance.getLastFocusedTask() || !task.pathContains(LastFocusedManager.Instance.getLastFocusedTask())))
|
@@ -28538,6 +28516,12 @@ class EventsManager {
|
|
28538
28516
|
return false;
|
28539
28517
|
return true;
|
28540
28518
|
}
|
28519
|
+
getIsInViewRefresh() {
|
28520
|
+
return this.isInViewRefresh;
|
28521
|
+
}
|
28522
|
+
setIsInViewRefresh(inViewRefresh) {
|
28523
|
+
this.isInViewRefresh = inViewRefresh;
|
28524
|
+
}
|
28541
28525
|
}
|
28542
28526
|
EventsManager.REAL_ONLY = true;
|
28543
28527
|
EventsManager.MAX_OPER = 9999;
|
@@ -28646,15 +28630,15 @@ class GuiEventsProcessor extends EventsProcessor {
|
|
28646
28630
|
}
|
28647
28631
|
static processSelection(val, guiMgCtrl, line, produceClick) {
|
28648
28632
|
let mgControl = guiMgCtrl;
|
28649
|
-
if (mgControl.Type === MgControlType.CTRL_TYPE_BUTTON && mgControl.getForm().getTask().getLastParkedCtrl() !== mgControl)
|
28650
|
-
produceClick = true;
|
28651
28633
|
if (guiMgCtrl.ConnectedControl) {
|
28652
28634
|
let rtEvt = new RunTimeEvent(mgControl, +line, true);
|
28653
|
-
rtEvt.setInternal(InternalInterface.
|
28654
|
-
rtEvt.
|
28635
|
+
rtEvt.setInternal(InternalInterface.MG_ACT_CTRL_FOCUS);
|
28636
|
+
rtEvt.ShouldHandleZoom = true;
|
28655
28637
|
EventsManager.Instance.addToTail(rtEvt);
|
28656
28638
|
}
|
28657
28639
|
else {
|
28640
|
+
if (mgControl.Type === MgControlType.CTRL_TYPE_BUTTON && mgControl.getForm().getTask().getLastParkedCtrl() !== mgControl)
|
28641
|
+
produceClick = true;
|
28658
28642
|
let rtEvt = new RunTimeEvent(mgControl, +line, true);
|
28659
28643
|
rtEvt.setInternal(InternalInterface.MG_ACT_SELECTION);
|
28660
28644
|
rtEvt.setValue(val);
|
@@ -29054,13 +29038,6 @@ class VerifyCommand extends ClientTargetedCommandBase {
|
|
29054
29038
|
}
|
29055
29039
|
|
29056
29040
|
class EnhancedVerifyCommand extends VerifyCommand {
|
29057
|
-
constructor() {
|
29058
|
-
super();
|
29059
|
-
this._buttonsID = '\0';
|
29060
|
-
this._image = '\0';
|
29061
|
-
this._returnValStr = null;
|
29062
|
-
this._returnVal = null;
|
29063
|
-
}
|
29064
29041
|
async ProcessMessageBoxResponse(task, returnValue) {
|
29065
29042
|
if (task !== null)
|
29066
29043
|
await Operation.setoperVerifyReturnValue(returnValue, this._returnVal);
|
@@ -29091,6 +29068,13 @@ class EnhancedVerifyCommand extends VerifyCommand {
|
|
29091
29068
|
break;
|
29092
29069
|
}
|
29093
29070
|
}
|
29071
|
+
constructor() {
|
29072
|
+
super();
|
29073
|
+
this._buttonsID = '\0';
|
29074
|
+
this._image = '\0';
|
29075
|
+
this._returnValStr = null;
|
29076
|
+
this._returnVal = null;
|
29077
|
+
}
|
29094
29078
|
}
|
29095
29079
|
|
29096
29080
|
class ResetRangeCommand extends ClientTargetedCommandBase {
|
@@ -29187,12 +29171,6 @@ class ResetLocateCommand extends ClientTargetedCommandBase {
|
|
29187
29171
|
}
|
29188
29172
|
|
29189
29173
|
class ResultCommand extends ClientTargetedCommandBase {
|
29190
|
-
constructor() {
|
29191
|
-
super();
|
29192
|
-
this._isNull = false;
|
29193
|
-
this._attr = StorageAttribute.NONE;
|
29194
|
-
this._val = null;
|
29195
|
-
}
|
29196
29174
|
async Execute(res) {
|
29197
29175
|
if (this._isNull)
|
29198
29176
|
res.SetResultValue(null, StorageAttribute.NONE);
|
@@ -29218,6 +29196,12 @@ class ResultCommand extends ClientTargetedCommandBase {
|
|
29218
29196
|
break;
|
29219
29197
|
}
|
29220
29198
|
}
|
29199
|
+
constructor() {
|
29200
|
+
super();
|
29201
|
+
this._isNull = false;
|
29202
|
+
this._attr = StorageAttribute.NONE;
|
29203
|
+
this._val = null;
|
29204
|
+
}
|
29221
29205
|
}
|
29222
29206
|
|
29223
29207
|
class AddSortCommand extends ClientTargetedCommandBase {
|
@@ -29582,19 +29566,9 @@ class CommandsTable {
|
|
29582
29566
|
}
|
29583
29567
|
}
|
29584
29568
|
|
29585
|
-
let CurrentClientVersion = '4.1000.0-dev4100.
|
29569
|
+
let CurrentClientVersion = '4.1000.0-dev4100.431';
|
29586
29570
|
|
29587
29571
|
class ClientManager {
|
29588
|
-
constructor() {
|
29589
|
-
this._globalUniqueSessionId = null;
|
29590
|
-
this._buttonIsClicked = false;
|
29591
|
-
RuntimeContextBase.Instance.Init(RemoteCommandsProcessor.RC_NO_CONTEXT_ID);
|
29592
|
-
LastFocusedManager.Instance.Init(MGDataCollection.Instance);
|
29593
|
-
LastFocusedManager.Instance.LastActionTime = Misc.getSystemMilliseconds();
|
29594
|
-
RemoteCommandsProcessor.ShouldScrambleAndUnscrambleMessages = true;
|
29595
|
-
this._globalUniqueSessionId = UniqueIDUtils.GetUniqueMachineID() + "_";
|
29596
|
-
this.RegisterDelegates();
|
29597
|
-
}
|
29598
29572
|
static get Instance() {
|
29599
29573
|
if (ClientManager._instance === null)
|
29600
29574
|
ClientManager._instance = new ClientManager();
|
@@ -29620,7 +29594,7 @@ class ClientManager {
|
|
29620
29594
|
}
|
29621
29595
|
break;
|
29622
29596
|
case "mousedown":
|
29623
|
-
if (control.isButton()) {
|
29597
|
+
if (control.isButton() || (control.ConnectedControl && guiEvent.fromButton)) {
|
29624
29598
|
this._buttonIsClicked = true;
|
29625
29599
|
}
|
29626
29600
|
else if (!control.isSubform())
|
@@ -29639,7 +29613,7 @@ class ClientManager {
|
|
29639
29613
|
}
|
29640
29614
|
break;
|
29641
29615
|
case "focus":
|
29642
|
-
if (this._buttonIsClicked)
|
29616
|
+
if (this._buttonIsClicked || (control.ConnectedControl && guiEvent.fromButton))
|
29643
29617
|
return;
|
29644
29618
|
Events.OnFocus(control, lineIdx, true, false);
|
29645
29619
|
break;
|
@@ -29655,6 +29629,9 @@ class ClientManager {
|
|
29655
29629
|
case "setexternalvalue":
|
29656
29630
|
EventsManager.Instance.AddExternalValueEvent(control, guiEvent.externalValue, guiEvent.param);
|
29657
29631
|
break;
|
29632
|
+
case "setAsThreeState":
|
29633
|
+
control.setAsThreeState();
|
29634
|
+
break;
|
29658
29635
|
default:
|
29659
29636
|
break;
|
29660
29637
|
}
|
@@ -29794,6 +29771,16 @@ class ClientManager {
|
|
29794
29771
|
Logger.Instance.WriteToLog("-----------------------------------------------------------------------------", true);
|
29795
29772
|
}
|
29796
29773
|
}
|
29774
|
+
constructor() {
|
29775
|
+
this._globalUniqueSessionId = null;
|
29776
|
+
this._buttonIsClicked = false;
|
29777
|
+
RuntimeContextBase.Instance.Init(RemoteCommandsProcessor.RC_NO_CONTEXT_ID);
|
29778
|
+
LastFocusedManager.Instance.Init(MGDataCollection.Instance);
|
29779
|
+
LastFocusedManager.Instance.LastActionTime = Misc.getSystemMilliseconds();
|
29780
|
+
RemoteCommandsProcessor.ShouldScrambleAndUnscrambleMessages = true;
|
29781
|
+
this._globalUniqueSessionId = UniqueIDUtils.GetUniqueMachineID() + "_";
|
29782
|
+
this.RegisterDelegates();
|
29783
|
+
}
|
29797
29784
|
InitGuiManager() {
|
29798
29785
|
Manager.EventsManager = EventsManager.Instance;
|
29799
29786
|
Manager.DefaultServerName = ServerConfig.Instance.getServer();
|
@@ -29846,7 +29833,7 @@ class ClientManager {
|
|
29846
29833
|
await MGDataCollection.Instance.addMGData(mgd, 0, true);
|
29847
29834
|
await ClientManager.Instance.WorkThreadExecution();
|
29848
29835
|
if (Logger.Instance.ShouldLog()) {
|
29849
|
-
Logger.Instance.WriteToLog(OSEnvironment.EolSeq + "Ended on " + DateTimeUtils.ToString(DateTime.Now,
|
29836
|
+
Logger.Instance.WriteToLog(OSEnvironment.EolSeq + "Ended on " + DateTimeUtils.ToString(DateTime.Now, XMLConstants.ERROR_LOG_DATE_FORMAT, Logger.Instance) + OSEnvironment.EolSeq + OSEnvironment.EolSeq, false);
|
29850
29837
|
}
|
29851
29838
|
}
|
29852
29839
|
else {
|