Jump to content

Attila Kovacs

Members
  • Content Count

    2055
  • Joined

  • Last visited

  • Days Won

    26

Everything posted by Attila Kovacs

  1. Attila Kovacs

    10.4.2 issue maybe

    I had similar phenomenon after reinstalling 10.2, though only for a moment then it went away. The freshly installed component wasn't loaded. The IDE decided to treat it as a "dynamic package" and loaded/unloaded it depending on the project.
  2. Attila Kovacs

    IDE Hang

    I have news regarding to IDE hang. I took the time (lot) to attach the frozen IDE to a debugger and find followings: there is a infinite message loop, affected are tlbEntityInsight NameBtn some child controls of NameBtn without any component name nor text TypeNameBtn some child controls of TypeNameBtn without any component name nor text the infinite message loop is a variation of these messages: 1328 TCM_ADJUSTRECT 46 WM_WINDOWPOSCHANGING 7c WM_STYLECHANGING 7d WM_STYLECHANGED 1328 will be triggered from: function TCustomTabControl.GetDisplayRect: TRect; Looks like this whole entity thingy is on: TAppBuilder->TEditorDockPanel->TEditWindow->TPanel Also, I have this EntityInsight turned off in the configuration. Actually I'm only using the open unit function from MMX. It happens rarely, especially on fast finger actions like formatting, saving quickly, and meanwhile the mouse is over an entity in the editor and tries to evaluate it. But then the IDE won't recover from this message loop. For the record, there is always a chance that other things are also playing a role, especially when we are debugging windows messages, so take this info as an observation, maybe it helps finding something.
  3. Attila Kovacs

    IDE Hang

    @FredS Oh, thx for saying, didn't know that there was a cut. I'll go with v14 too.
  4. Well, no pain, no gain. Used to I also stripped every RTTI because I was annoyed of the binary sizes, but once you get hooked with RTTI and its benefits, there is no back. I can remember watching those code snippets and conversations back to the days on G+ and always thought, man, for WTF do they need that, they are crazy.
  5. Attila Kovacs

    IDE Hang

    Well, after more than a week without MMX (removed) I can say that not just there is no more IDE Hang's but the IDE become faster. I suspect, that even after turning off the entityinsight, it sets itself to invisible but still working in the background for some reason. On the other hand I'm missing some functions very badly.
  6. Attila Kovacs

    Sql Server Filtered Index

    It's slightly offtopic but I can't just pass over it. Sql Server (from 2008 I think) offers indexes with a "WHERE" clause, for example if you want to rule out duplicate values but permit duplicate NULL's you can write: CREATE UNIQUE NONCLUSTERED INDEX [YourIndexName] ON [YourTableName] (YourFieldName) WHERE [YourFieldName] IS NOT NULL This is sensational. I should read more whatsnew.txt's.
  7. Attila Kovacs

    Sql Server Filtered Index

    Actually you don't need it if you put the data into a separate table, but I was a lazy dog and googled it up. Never ever used before. Not sure even if I can keep it this way until I finished implementing.
  8. Attila Kovacs

    Sql Server Filtered Index

    You know what? Now I know what will I do if I have some days off. I'll try to port my app to FB as it supports cte too. \o/
  9. Attila Kovacs

    Sql Server Filtered Index

    @Dany Marmur Actually they are right and this also makes sense! I'm happy you come up with FB, good to know even if I'm not using it. Maybe someone reads that.
  10. Attila Kovacs

    Can Delphi randomize string 'Delphi'?

    That was a waste of time and energy.. You should read more RTL code and the answers to your questions!!
  11. Attila Kovacs

    Can Delphi randomize string 'Delphi'?

    You could run this to check if Delphi's random() is able to generate the consecutive numbers of 29 4 11 15 7 8 which are the characters of 'Delphi' taken from the desired (zero based) set 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'. It iterates 4.29 billion possibilities in only 20 seconds on my notebook. vRndString := ''; z := Low(integer); RandSeed := z; vSW := TStopWatch.StartNew; while z < MaxInt do begin if Random(52) = 29 then if Random(52) = 4 then if Random(52) = 11 then if Random(52) = 15 then if Random(52) = 7 then if Random(52) = 8 then begin vRndString := 'Delphi'; WriteLn(Format('%s found in %d ms with seed of %d', [vRndString, vSW.ElapsedMilliseconds, RandSeed])); Break; end; Inc(z); RandSeed := z; end; if vRndString = '' then WriteLn(Format('not found in %d ms', [vSW.ElapsedMilliseconds])); ReadLn; And as an example you could use 'VWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTU' with a seed of -1929919901 to get 'Delphi'. for vPhrase in cPhrases do begin RandSeed := -1929919901; ...
  12. Attila Kovacs

    Can Delphi randomize string 'Delphi'?

    But they don't use random in bruteforcing as it has no benefits.
  13. I'm wondering if it has something to do with the try/except/finally tweak introduced in the new compiler and the debugger is lacking behind?
  14. Attila Kovacs

    Can Delphi randomize string 'Delphi'?

    Why would you assume that? Because it's written in Delphi or because you don't know the basics of randomness?
  15. Attila Kovacs

    SQL Update

    does it runs on IB? maybe this would give you some hints SELECT RNO, COUNT(*) FROM CUSTACC GROUP BY RNO HAVING COUNT(*) > 1
  16. Attila Kovacs

    Delphi 10.4.2 first impressions

    This is called the generic navigation. 😛
  17. Attila Kovacs

    SQL Update

    I'm afraid you are the only one who can do that as we don't know what do you want to do there.
  18. Attila Kovacs

    SQL Update

    Your subselect (SELECT C.RNO FROM CUSTACC C WHERE C.CUSTNO=P.CUSTNO) returning more than 1 rows and the server doesn't know what do you want to do. Either change the subselect to return only 1 row or use an aggregate function in the subselect like SUM() to make one result from the returned rowset.
  19. Attila Kovacs

    Delphi 10.4.2 first impressions

    @balabuev There was a setting for the delay AFAIR, isn't it?
  20. Do we have a working lib/class which implements TNothingable<T> in Delphi? Where "null" is a valid value. For simple types I could achieve that relative easily, for structured types it's funnier to implement.
  21. Attila Kovacs

    TNothingable<T>

    @Rollo62 Sometimes I have no Idea what am I talking about. Saint Augustine, on being asked what is time: "I know what it is, but when you ask me I don’t."
  22. Attila Kovacs

    How to get json array from string?

    IDLIST is an array of integer, why do you want to convert it to a string?
  23. Attila Kovacs

    TNothingable<T>

    Ooookay, this conversation brought me to a moment of enlightenment. We were both right, but they are two different things (null/[]) so I will threat them differently, with the same JSONName attribute. This solves everything for now. I can keep my object mapping, which was the most important thing for me. Thx guys!
  24. Attila Kovacs

    TNothingable<T>

    Yes, i did the same, returning TNothing = interface end; in the TValue. I just lost my temper on the structured types and I thought I'm asking if somebody has something similar (and maybe much simpler/better) done.
  25. Attila Kovacs

    TNothingable<T>

    If you are telling me that you can't check a json array in php if it's holding a value of null, just if it's empty, then I'm fine, the above example is wrong. I'm not sure. Bollock what I wrote. It's just a key/value pair. There is no such thing that an array can't be null. This is the problem. Edit: My example above is indeed wrong on arrays. It should have been t.y.SetNull or similar. [] should translate to [], you are right.
×