Lajos Juhász
Members-
Content Count
868 -
Joined
-
Last visited
-
Days Won
11
Everything posted by Lajos Juhász
-
Are class vars supposed to be initialized?
Lajos Juhász replied to pyscripter's topic in RTL and Delphi Object Pascal
It's not documented at https://docwiki.embarcadero.com/RADStudio/Sydney/en/Fields_(Delphi). PS. I am also in a couple of minutes will install Delphi 11.1, hopefully I not going to see any new bugs. -
Delphi 11.1 is available
Lajos Juhász replied to Uwe Raabe's topic in Tips / Blogs / Tutorials / Videos
Maybe @Uwe Raabe tried to suggest that the beta testers gained access to the repository and instead of QP they were able to check in solution for all the bugs in Jira. -
{irrelevant code removed} Most probably is relevant code. We cannot know what is the problem in your code without a simple test case. You're changing the data types of the parameters in your posts. You should post a test application where we can see what are you doing in the function and how you're calling it.
-
Delphi 11.1 is available
Lajos Juhász replied to Uwe Raabe's topic in Tips / Blogs / Tutorials / Videos
We have no idea as it's most probably sealed by NDA agreement. -
There is no need to copy the bytes using the absolute keyword the array and single can share the memory (like I posted).
-
Parnassus Bookmarks for Delphi 11 Alexandria?
Lajos Juhász replied to PeterPanettone's topic in Delphi IDE and APIs
I was unaware that there is a beta testing (as it usually requires an NDA). In my defense never said that beta testers doesn't do their part of the work. But we already know that usually after the release there is a larger amount of tickets that stay opened. The only information from webinars I have that David Millington was beta testing some unreleased version of C++. -
Parnassus Bookmarks for Delphi 11 Alexandria?
Lajos Juhász replied to PeterPanettone's topic in Delphi IDE and APIs
David Millington answered earlier that it will be most probably Delphi 11.1. Next week is the webinar "What's Coming in RAD Studio" there we can expect to get a promise that it will be available as soon as they can compile it (I mean alpha tested for us to do the beta testing). -
Now I am stage: Sorry, your userid is required to answer a CAPTCHA question correctly.
-
In the past couple of weeks happened multiple time. Usually it takes a couple of hours and then you can log in again.
-
procedure TForm2.ComPort3RxChar(Sender: TObject); var Buffer3 : array[0..14] of Byte; Result3: array[0..3] of byte; s: single absolute result3; lstr: string; begin ComPort3.Read(@Buffer3,15); Move(Buffer3[7],Result3,4); lstr:=s.ToString; end;
-
You can do the conversion using a record for example: type RfloatBytes=packed record case boolean of true:(floatVal:single); false:(byteVals:array[0..3] of byte); end; var x: RfloatBytes; begin x.byteVals[0]:=%00000000; x.bytevals[1]:=%00000000; x.bytevals[2]:=%01001000; x.bytevals[3]:=%01000001; ShowMessage(x.floatVal.ToString); Or using an absolute keyword to share the memory (this is a Delphi 11 example for older versions you have to convert binary values into decimals or hex values): var x: array[0..3] of byte; s: single absolute x; begin x[0]:=%00000000; x[1]:=%00000000; x[2]:=%01001000; x[3]:=%01000001; ShowMessage(s.ToString); end;
-
GExperts 1.3.20 experimental twm 2022-01-30 released
Lajos Juhász replied to dummzeuch's topic in GExperts
You should construct a search string. Something like this. I believe that Delphi is only coded between 32 and 127 stores as string. procedure TForm1.FormCreate(Sender: TObject); var x: string; i: integer; s: string; begin x:='1Булстат'; s:='Caption = '; i:=1; while i<=length(x) do begin if (ord(x[i])>=32) and (ord(x[i])<=127) then begin s:=s+''''; while (i<=length(x)) and (ord(x[i])>=32) and (ord(x[i])<=127) do begin s:=s+x[i]; inc(i); end; s:=s+''''; end else begin s:=s+'#'+IntToStr(ord(x[i])); inc(i); end; end; edit1.Text:=s; end; -
Systemic failing of Embarcadero development and support or am I just paranoid ?
Lajos Juhász replied to CyberPeter's topic in General Help
I'm sorry but that is a joke not a roadmap. A couple of years earlier they have had real roadmaps. With information like when will be the next release and what we can expect (sometimes even a couple of minor versions). Now just Now / Next with no information. I'm sorry but that is not enough to plan release cycles and upgrade path for a production environment where you've to plan time for the upgrades in the code base. It's not always enough to install the new IDE, recompile and ship to the customers. -
Systemic failing of Embarcadero development and support or am I just paranoid ?
Lajos Juhász replied to CyberPeter's topic in General Help
In the quality portal you get response while they validate your report and try to prove it's how the product works and not a bug. After that unfortunately there is no response at all (not even in which version and time frame when the fix will be shipped). Usually you will get no response about the issue at all. Do I think this is the right way? Of course not. As sometimes it's critical to us to know how to communicate with our clients as we have also to plan and communicate to clients when we can ship the fixed product. For some unknown reason who ever decides the future of the product cuts off the communications with the developers (there was a brief period when even on this forum you was able to get honest answers). Instead of a clear communication we can get only promotion materials how everything is nice and shiny (and that's true when you try hello world applications, but as soon as you try to do something more complication you will discover bugs). For me the latest bad sign is that they abandoned the idea that we should have a roadmap. Now you can only read the future of the products only from your coffee mug and that's not a fun thing to do when my managers asks me what is the next step. -
You should also check in ComPort1RxChar how many bytes the comport reads from the buffer.
-
In your code you never check for length of the buffer. When reading the com port it's not guaranteed that you receive all the data in one read. You've to check whenever you received everything and after that you can try to process it. Edit. In this case most probably the length of the result is less than 21 bytes and result1 will be an empty string. Try: if result1<>'' then A := StrToInt ('$' + Result1) else begin ShowMessage('Result1='''''); end;
-
The memory required for the stream doesn't have to be the same as for internal representation for the data. The only way to firure out is to query the memory manager before and after the operation.
-
16th during the webinar we should all ask the question whenever the future of Delphi includes some kind of online documentation or not. I believe that will be the perfect place to ask!
-
DocWiki.Embarcadero.com does Russian Roulette.
Lajos Juhász replied to A.M. Hoornweg's topic in General Help
Maybe it's a cloud thing where they don't have direct access. I mean they should have a backup copy of the database and could set up a new server very quickly. Also it's possibly that they have used all the money allocated for hardware and will have to wait for the new business year to allocate money to rebuild the infrastructure. -
DocWiki.Embarcadero.com does Russian Roulette.
Lajos Juhász replied to A.M. Hoornweg's topic in General Help
In this case Idera/Embarcadero has no problems. The website used for new customers is working fine. It's just the docwiki that is down that is used only by customers that already paid. Why would they worry? They can get away with no roadmap, no timeframe when the critical errors will be fixed in Delphi. We that already using Delphi should know to work without a proper documentation. -
DocWiki.Embarcadero.com does Russian Roulette.
Lajos Juhász replied to A.M. Hoornweg's topic in General Help
There is no need to panic. It's out for about 2 two weeks. There was a recent webinar from Ranorex that modern IT companies now have a monthly schedule for release. So before we all panic we have just to wait another 2 weeks and see whenever that time frame is used in Idera or not. -
I am sure it has System.AnsiStrings unit. The easiest way is to use StrToInt('$1289ABEF').
-
delete record in delphi with fdqury when this value of record
Lajos Juhász replied to ABDELLAH GADi's topic in Databases
-
In that case it's not true anymore check it with: select itemno, count(CustNo) from Vendor where Preferred='Yes' group by itemno having count(CustNo)>1
-
The PK for Vendor is ItemNo, Custno you cannot make it a unique value only by joining it with fields itemno and preferred. You could use min, max or avg functions.