mirror of
https://gitlab.com/freepascal.org/fpc/pas2js.git
synced 2025-04-13 09:49:21 +02:00
* Change OnApplyUpdates to be more future proof.
This commit is contained in:
parent
00300a800d
commit
53a3015923
@ -46,7 +46,7 @@ Type
|
||||
function DoEditRecord(aEvent: TJSMouseEvent): boolean;
|
||||
procedure DoGetURL(Sender: TComponent; aRequest: TDataRequest; Var aURL: String);
|
||||
procedure DoLoadFail(DataSet: TDataSet; ID: Integer; const ErrorMsg: String);
|
||||
procedure DSAfterApplyUpdates(DataSet: TDataSet; Updates: TResolveInfoArray);
|
||||
procedure DSAfterApplyUpdates(DataSet: TDataSet; Updates: TResolveResults);
|
||||
procedure DSOpen(DataSet: TDataSet);
|
||||
procedure ResetButtons(Sender: TDataset);
|
||||
function SelectRecord(aEvent: TJSMouseEvent): boolean;
|
||||
@ -135,7 +135,7 @@ begin
|
||||
PanelContent.append(N);
|
||||
end;
|
||||
|
||||
procedure TForm.DSAfterApplyUpdates(DataSet: TDataSet; Updates : TResolveInfoArray);
|
||||
procedure TForm.DSAfterApplyUpdates(DataSet: TDataSet; Updates : TResolveResults);
|
||||
begin
|
||||
Window.Alert('Updates applied on server!');
|
||||
EName.value:='';
|
||||
|
@ -1041,8 +1041,13 @@ type
|
||||
end;
|
||||
TResolveInfoArray = Array of TResolveInfo;
|
||||
|
||||
// Record so we can extend later on
|
||||
TResolveResults = record
|
||||
Records : TResolveInfoArray;
|
||||
end;
|
||||
|
||||
TOnRecordResolveEvent = Procedure (Sender : TDataset; info : TResolveInfo) of object;
|
||||
TApplyUpdatesEvent = Procedure (Sender : TDataset; info : TResolveInfoArray) of object;
|
||||
TApplyUpdatesEvent = Procedure (Sender : TDataset; info : TResolveResults) of object;
|
||||
|
||||
{------------------------------------------------------------------------------}
|
||||
|
||||
@ -1192,7 +1197,7 @@ type
|
||||
procedure DoBeforeLoad; virtual;
|
||||
procedure DoAfterLoad; virtual;
|
||||
procedure DoBeforeApplyUpdates; virtual;
|
||||
procedure DoAfterApplyUpdates(const ResolveInfo: TResolveInfoArray); virtual;
|
||||
procedure DoAfterApplyUpdates(const ResolveInfo: TResolveResults); virtual;
|
||||
function FieldByNumber(FieldNo: Longint): TField;
|
||||
function FindRecord(Restart{%H-}, GoForward{%H-}: Boolean): Boolean; virtual;
|
||||
function GetBookmarkStr: TBookmarkStr; virtual;
|
||||
@ -2733,7 +2738,7 @@ begin
|
||||
FBeforeApplyUpdates(Self);
|
||||
end;
|
||||
|
||||
procedure TDataSet.DoAfterApplyUpdates(Const ResolveInfo : TResolveInfoArray);
|
||||
procedure TDataSet.DoAfterApplyUpdates(Const ResolveInfo : TResolveResults);
|
||||
|
||||
begin
|
||||
If Assigned(FAfterApplyUpdates) then
|
||||
@ -2915,6 +2920,7 @@ Var
|
||||
RUD : TRecordUpdateDescriptor;
|
||||
doRemove : Boolean;
|
||||
Resolved : TResolveInfoArray;
|
||||
Results : TResolveResults;
|
||||
|
||||
begin
|
||||
if Assigned(FBatchList) and (aBatch.Dataset=Self) then
|
||||
@ -2924,11 +2930,11 @@ begin
|
||||
if (BI=-1) then
|
||||
Exit;
|
||||
FBatchList.Delete(Bi);
|
||||
SetLength(Resolved, aBatch.List.Count);
|
||||
SetLength(Results.Records, aBatch.List.Count);
|
||||
For RI:=0 to aBatch.List.Count-1 do
|
||||
begin
|
||||
RUD:=aBatch.List[RI];
|
||||
Resolved[RI]:=RecordUpdateDescriptorToResolveInfo(RUD);
|
||||
Results.Records[RI]:=RecordUpdateDescriptorToResolveInfo(RUD);
|
||||
aBatch.List.Items[RI]:=Nil;
|
||||
Idx:=IndexInChangeList(RUD.Bookmark);
|
||||
if (Idx<>-1) then
|
||||
@ -2950,7 +2956,7 @@ begin
|
||||
end;
|
||||
if (FBatchList.Count=0) then
|
||||
FreeAndNil(FBatchList);
|
||||
DoAfterApplyUpdates(Resolved);
|
||||
DoAfterApplyUpdates(Results);
|
||||
end;
|
||||
|
||||
procedure TDataSet.DoApplyUpdates;
|
||||
|
Loading…
Reference in New Issue
Block a user