-
Content Count
348 -
Joined
-
Last visited
-
Days Won
5
Everything posted by Roger Cigol
-
Google Tests (unit testing framework) working with Embarcadero C++ clang compiler?
Roger Cigol replied to Roger Cigol's topic in General Help
Great news : Google Tests all looks good for 11.1. I've blogged about how to get it up and running... https://cigolblog.wordpress.com/2022/03/17/using-googletests-with-embarcadero-clang64-for-windows-vcl-projects-c-builder-11-1/ I will add a further blog in the next few days about how I like to use it for testing my Clang64bit projects.- 26 replies
-
- c++
- google tests
-
(and 1 more)
Tagged with:
-
I too selected "option 2" and all the registry entries seem to have persisted. My (limited) use of 11.1 makes me feel it is a great improvement over 11.0
-
I have several tables that I want to completely empty. My plan was to use a single TFDQuery and to set (at design time) the SQL to DELETE FROM :tablename and then to set the :tablename parameter to type ptInput and datatype to ftString. Then I planned to call this query for each table, having set the parameter to the table name. But it doesn't work, each call to Execute() (following the setting of the parameter to the required table name) gives an exception. I am using a 64bit PostgreSQL database so I can't test the parameter query at design time (can't connect from a 32 bit app). If I query my database directly using a query tool I can enter DELETE FROM MyTable and all the contents of MyTable disappear as required. I also find that the following code works (I am using C++ clang 64 in Alexandria 11.0): auto SQL(std::make_unique<TStringList>()); SQL->Clear(); SQL->Add(String("DELETE FROM ") + DestinationTableName); DestinationDeleteAllFDQuery->Close(); DestinationDeleteAllFDQuery->SQL->Text = SQL->Text; DestinationDeleteAllFDQuery->OpenOrExecute(); My question is : Is this expected behaviour? ie Is it known that parameters in FireDAC queries can not used to pass table names ?
-
FireDAC TFDQuery - table names as parameters
Roger Cigol replied to Roger Cigol's topic in Databases
This "generalisation" of FireDAC to suit the very many supported databases is one of it's great features. It is worth using approaches that continue/extend this generalisation primarily because it allows re-use of your code in other applications (that could be using different databases). As it happens the job that led to my question is actually migrating a working-well-for-many-years system that uses MS Access to a 64 bit application using PostgreSQL. The fact that the MS Access system uses FireDAC makes this task so much more straightforward. -
What you are really asking is "how to convert data in a string of a particular format" into a binary integer. But you are asking this question without giving us the actual string. So with the code where you "get the correct string" - what string do you get? maybe offer a few examples with different inputs on the ADC.
-
'Floating point division by zero' when running script
Roger Cigol replied to a topic in Python4Delphi
Hi @David Heffernan, My pondering continued (and continues). Can you confirm that I am correct in concluding that it is the application (ie task) responsibility to maintain the correct FPU exception settings amongst threads it uses but it is the operating system's responsibility to maintain the FPU settings when process time is switched from one task to another. If this is the case then this makes sense to me and explains why applying the fixes so well outlined in your pdf would make a lot of sense. -
'Floating point division by zero' when running script
Roger Cigol replied to a topic in Python4Delphi
[pdf] That's a very interesting read, thank you I think your statement about what you do to the floating point control state is what I am trying to achieve with my use of the two SetExceptions() calls. -
'Floating point division by zero' when running script
Roger Cigol replied to a topic in Python4Delphi
I am very worried by David H's posting here. But also this could explain an issue I've had on a system for a long time that calls a 3rd party dll that I suspect creates it's own threads. This seems to at random times generate unexpected windows "exception" messages. The documentation at https://docwiki.embarcadero.com/RADStudio/Alexandria/en/About_Floating-Point_Arithmetic is pretty good at telling you HOW to change floating point exceptions but not at all clear at what to set them to! Do you recommend when calling external 3rd party dlls that you make a call to SetExceptions() with a value of zero, storing the result (the current settings) into some local variable) before calling the 3rd party dll and then a call to SetExceptions passing the value saved in the local value as soon as the dll completes ? You may well choose to answer as an experienced Delphi programmer - any advice for me writting in C++ (using classic,, clang32 and clang64 compilers for different apps) would be welcome too. Thinking about the mulit-threading floating point interaction, surely the only way to achieve this would be to make sure the floating point unit is correctly configured before every floating point operation - a major overhead. I am still pondering this.... -
Class properties: Wins prettyness over functionality ?
Roger Cigol replied to Rollo62's topic in Algorithms, Data Structures and Class Design
For me properties are beautiful - they make clear and explicit how items of an interface can be used and, as Anders Melanders states, they hide the internals. And the way the VCL or FMX design time component system works (which relies on properties) is beautiful too. -
A better way to share global data structures than as global variables?
Roger Cigol replied to DavidJr.'s topic in Algorithms, Data Structures and Class Design
I use datamodules alot - I remove them from the autocreate list and then manually create and delete them in code (initialising with a nullptr for the owner (I'm a C++ gent)). I find this very convenient. Using pooled connections I find this works well. -
XMLMapper crashes out on recursive XML Schema
Roger Cigol replied to Lars Fosdal's topic in Delphi IDE and APIs
Lars, out of interest, where did you get the *.xsd schema that you posted on the RSP-36887? is it a public file or is it subject to confidentiallity and/or copyright issues ? -
ISO8901: Week numbers and year
Roger Cigol replied to Keesver's topic in RTL and Delphi Object Pascal
I can't help here. But I can offer a warning to inexperienced "week number" users (which you may NOT be, I realise) and that is to beware of the week number 53 that does occur from time to time. I spent a long time debugging someone elses code once that stored week data in an array size [52] and overflowed causing corruption when week 53 came along. -
XMLMapper crashes out on recursive XML Schema
Roger Cigol replied to Lars Fosdal's topic in Delphi IDE and APIs
I notice a reply from David Millington on RSP-36887 -
Frequent and/or annoying typos you make while coding
Roger Cigol replied to Tommi Prami's topic in General Help
I find this all reassuring - all it really means is that we are all human. Which reminds me, I need to stop and go and cook the evening meal..... -
When I open any particular forum item it always opens on the first page. I guess this is a good idea if it's the first time one is reading that set of postings. But surely it is more common that you are going back to see recent additions to and ongoing discussion ( I do this regularly ). It would be much more convenient if, when opening and individual forum item, it opened on the last page (and perhaps even showing the most recent (ie the last) entry ?)....
-
To much to do and so little time..... Didn't spot that link - many thanks : I can see myself using this frequently (therefore saving just a little time and therefore getting just a little more done....)
-
Hi Lars, That's exactly what you need ! but what a circuitous route to get there. How am I supposed to know about this link (as a relatively new forum user?). Or do your regular users often go to this "unread" view and work from there?
-
My mistake - Word press got the better of me - try this link ! https://cigolblog.wordpress.com/?s=Updating+from+Paradox+-+Handling+field+names+containing+%23+symbol.
-
I had a job to move away from a BDE / Paradox system to FireDAC MS Access a while back. I ran into a problem which I solved as discussed here - might (or might not) be useful: https://wordpress.com/post/cigolblog.wordpress.com/294 (wrong link: see posting below)
-
Embarcadero C++ Programmer for Engineering UK
Roger Cigol replied to Roger Cigol's topic in Job Opportunities / Coder for Hire
Hi Tim, Just spotted you message - thanks for your interest. Definitely looking for a C++ developer.... -
You can still get the depricated BDE with the 11.0. "but have now trouble to get the program I make to work on windows 10." - you need to work out if your problem is related to Delphi 7 issues or to the database interface using BDE. If it is just the Delphi 7 holding you back then in theory you can solve it by using 11.0 and continue using the BDE. But you are on a road to problems. I would suggest change your interface to FireDAC and never look back ......
-
Following on from "unreliable login of new users" - Delphi-PRASiS seems to be becoming (at least for me) the main replacement for the sadly missed Embarcadero Forum. So it is important that new users can log in easily and it is important that spam doesn't get here. But what I really miss (or perhaps I don't know how to set up) is a view mode that lists all postings in order of chronology of latest posting - with the most recent at the top. This would be good so a quick glance would show any "new" activity and give me the feeling (illusion?) that I am keeping up to date with what is going on.
-
Thank you @Uwe Raabe - I hadn't seen this option. It almost works. A screen shot shows them sort of listed in a useful order. But there are four or five "pinned" entries at the top - which I don't need! I wonder how I pinned these? more importantly perhaps you can tell me how to "unpin" them. But your help is much appreciated
-
Warning: With RAD Studio 11 there is currently an issue with TLabelledEdit if you have the label to the left of the edit box. The positioning of the label sometimes is wrong at design time and it doesn't re position correctly if you update the label contents at run time. If you use TLabelledEdit with labels to the left of the edit box then check this out before moving projects to 11.0. Embarcadero know of this issue. It is not fixed in the "Novemeber" patch.
-
DP not reliably approving new users?
Roger Cigol replied to Uwe Raabe's topic in Community Management
But if you want to make your forum really popular the "free beer" idea might be worth a try......