Forum Replies Created
-
AuthorPosts
-
-
October 26, 2021 at 14:59 #55973
zoran
ParticipantNo. I reverted to 5.16. This is in D 10.4.2. When I have the time I’ll try it in D 11 (which I’m not using yet – waiting for the next 1-2 patches)
-
June 23, 2021 at 22:48 #55828
zoran
ParticipantHello Everyone
Found the solution. It’s a simple TDictionary list of RequestIds and callback procedures. Upon return from query/service in kbmMWTCPIPIndyMessagingClientTransport1AsyncResponse event I check RequestId against this list and, if found, execute corresponding callback procedure.
If any of the fellow kbmMW-ers is interested I can send a complete demo source. I’m using D 10.3.3, FireDAC and Firebird 3.0.7.
Again, this is a simple solution to setup GUI before time consuming kbmMW operations, do some other work while it is running, and clean up GUI upon return. Maybe not elegant as it might be, but it does the job for me.
I’ve tried to do the same thing with
Scheduler.Run(
procedure
begin
…run query or service …
end)
.SynchronizedAfterRun(
procedure
begin
… process the resut …
Memo1.Lines.Add(res);
end)
.Activate(true);but was successful only with queries, not with service calls. Perhaps I was doing something wrong.
Regards
Zoran -
March 10, 2021 at 19:11 #55573
zoran
ParticipantLooks like 79100 has some problems. I had to revert back to older versions of kbmMemtable and kbmMW (post FindKey problem below).
Unfortunately Kim doesn’t have enough time to visit this forum đ
Zoran
-
March 4, 2021 at 19:31 #55566
zoran
ParticipantIn debugger after
mt.IndexFieldNames:= âAgeâ;
mt.IndexName := âix_Ageâ;both fields are still empty (?).
-
May 15, 2020 at 15:30 #54774
zoran
ParticipantScheduler.Run(procedure(const AScheduledEvent:IkbmMWScheduledEvent)
begin
v := DM.kbmMWPooledSimpleClient1.Request(‘SVC_Common’, ‘1.0’, ‘GetLookupTable’, [‘all’]);
AScheduledEvent.Data := v;
end
)
.SynchronizedAfterRun(
procedure(const AScheduledEvent:IkbmMWScheduledEvent)
begin
RefreshLookupAll_LoadTables(AScheduledEvent.Data);
end
)
.Activate(True);Doesn’t work either… đ
-
May 1, 2020 at 17:28 #54691
zoran
ParticipantForget it.
It’s Delphi’s handling of Timestamp column. Both server and client use regional (local) FormatSettings to process Timestamp column, so different regions cause this error.
-
January 17, 2020 at 17:33 #54405
zoran
ParticipantAfter some more testing I found out that PrepareForData can be replaced with qry.Open.
Some accents are lost with this code:
qry.Close;
//qry.Open;
qry.AllData := v;
but if I uncomment the second line, all works fine.
-
January 16, 2020 at 20:43 #54402
zoran
ParticipantHi Kim
In my client I had:
qry.AllData := v;
When I add in front of it
kbmMWBinaryStreamFormat1.PrepareForData(False, False);
all works fine.
Thank you.
-
December 16, 2019 at 00:42 #54361
zoran
ParticipantNever mind.
If I define arrId: variant and do
arrId := VarArrayCreate([0,0], varVariant);
and then populate it with my int64 values, all works fine…
I’m puzzled why it also works when arrId: TArray<integer> and not when arrId: TArray<int64>?
Sorry for the false alert…
-
December 2, 2019 at 19:06 #54351
zoran
ParticipantHi Kim
I know you’re busy. Could you answer the question above, please?
Thanks.
Zoran
-
November 27, 2019 at 19:53 #54342
zoran
ParticipantThanks Kim, it worked.
Another short question. In my test server I put kbmMWTCPServerTransport and it works fine with client which has kbmMWTCPIPIndyClientTransport. However If I replace client Indy transport with kbmMWTCPClientTransport (and re-connect the properties), client cannot connect to the server. I’ve tried changing different properties but it still cannot connect.
Aren’t kbmMWTCPServerTransport and kbmMWTCPClientTransport meant to work together?
Thank you.
Zoran
-
November 13, 2019 at 01:09 #54301
zoran
ParticipantPS. This happens only when ‘kbmMWÂ memory debug/leak checking’ option is set during installation.
-
-
AuthorPosts
