Jump to content

Kyle Miller

  • Content Count

  • Joined

  • Last visited

Community Reputation

1 Neutral

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Kyle Miller

    Remote Debugging w/FireDAC & SQL Server

    Good info. Nice to know the facility exists. It would not have helped here. If the connection timeout is 30 seconds & failing, retrying at the same value would results in continuous failures. The fix is to allow more connection time in a remote debug environment. I've never needed retries before as connections are always stable where I've worked. Outside remote debugging, the client machine connects to the server in less than a second in this case.
  2. Kyle Miller

    Remote Debugging w/FireDAC & SQL Server

    The 2nd link seemed helpful. There's no retry for FireDAC I know, but I did increase the LoginTImeout to 300 seconds. I didn't think it would be a problem since I'm connected via broadband, but I guess connecting was just outside the default 30 second timeout. Thanks.
  3. Remote debugging is working fine except for when the app tries to connect to the database server. When trying to open the TFDConnection, the following error occurs: First chance exception at $75F125F2. Exception class EMSSQLNativeException with message '[FireDAC][Phys][ODBC][Microsoft][SQL Server Native Client 11.0]Unable to complete login process due to delay in opening server connection'. The app connects without an issue when run on the remote machine from the scratch directory. Are there special preparations I need to take to enable remote debugging with FireDAC & SQL Server?
  4. Kyle Miller

    ERD tool needed!

    Context Database Designer. https://www.contextsoft.com/products/designer/index.php Affordable. However, not upgraded since 2018. Not sure that matters. Idera's Aqua Data Studio has a modeler along with DB admin and DB development. Comes with Delphi Architect or as standalone. https://www.aquafold.com/aquadatastudio Tried DbSchema. It's okay & cheap but wouldn't recommend. DataGrip has some modeling abilities. Achilles heal is performance with large databases, like Great Plain Dynamics database.
  5. Kyle Miller

    Remote desktop friendly

    I was working with a project over RDP using 10.4.1. My usual session was to connect, do work, and disconnect (not logoff). When I reconnected in a subsequent session, the IDE would very slowly redraw itself onto the screen. It's much better with 10.4.2 from start and while working.
  6. I saw this opportunity pop up. They're located in Abilene, Texas U.S. and write software for the oil & gas industry. The ad says open to remote work. I'd guess U.S. only. https://www.indeed.com/viewjob?jk=dd95941bac348323
  7. Using Delphi 10.4.1 w/connection transaction level set to dirty read. When I execute a stored procedure, which also executes set trans iso level to uncommitted, the stored procedure doesn't see an update performed in the app. Here is the outline of events -- FDCon.StartTrans FDDataSet.FieldX.AsInteger := 12 FDDataSet.Post FDStoredProc.Exec ... Here the stored proc selects FieldX and see it as null, not 12. Why? FDCon.Commit I want the stored procedure to see the uncommitted values posted by the app. EDIT: Cancel request. Turns out to be a stored procedure bug.
  8. Kyle Miller

    Set focus to IDE editor

    How you return to the editor when focus is on the Code Explorer, i.e. the tree, member search bar, etc? The release notes for MMX 9.0 says pressing escape should do it, but it's not working. I'm using Delphi 10.4.1 & MMX 15.0.20 build 2385.
  9. Kyle Miller

    MARS & Delphi 10.2

    Never mind. Removed a reference to an Delphi MVC Framework installation I wasn't using. It was the source of conflict.
  10. Kyle Miller

    MARS & Delphi 10.2

    I tried the latest release. Several build failures during install. I noticed commits address the issues, so I pulled the head. It installs. Trying to build MARSHelloWorld & it's complaining of numerous items missing in SynTable.pas. It may be affected by me commenting out {$I MARS.inc} in Server.Forms.Main because the inc file is not included. I tried using the one in C:\Development\ExtLib\MARS\Source to no avail. Do I need to install mORMot to use MARS?
  11. This is exactly what I did using TTask and TThread. It was as close as I could get to a working solution. Problems arose when jumping between records quickly. Tried calling FireDac's AbortJob method to making aborting more graceful. It didn't go well. I'll try using a connection per thread and possibly test out TZMethodThread.
  12. Given a table with a blob field where the value might take several seconds to pull down, what's the best way to lazy fetch the data w/o blocking the user interface? The BLOB is an image displayed on a form. The blob is being pulled in a detail query as to not slow the master query down. TFDFetchOptions allows delaying until BLOB needed. This results in a similar problem. When user clicks record, user has to wait till BLOB pulled down. Also tried ASync as described in wiki under Asynchronous Open and Fetching. The problem is either the living binding errors with "couldn't find text" or an exception is raised when jumping back and forth between two records, one with a blob and one without. I even tried a TTask solution. The goal is to lazy load the BLOB and display the image if it comes down. If the user clicks to another row, abandon the BLOB fetch and display the new row's image if present. EDIT: Using Delphi 10.2 Enterprise.
  13. Perfect. Thank you guys.
  14. Thanks for the reply. I changed the Select as you have. No dice. The autoinc field still says -1 after InsertSql runs. Any properties on the TFDAutoIncField or TFDQuery to check?
  15. Given: 1. Database is MSSQL 2. TFDQuery & an TFDUpdateSQL assigned as the update object. 3. TFDUpdateSQL.InsertSql executes a stored procedure to perform insert, which affects a number of tables. 4. TFDUpdateSQL.InsertSql stored procedure returns an ID field value, which is the key field in TFDQuery. Ex: UserId. 5. UserId is an AutoInc TField in the TFDQuery. What is the proper way to push the value returned by the stored procedure into the AutoInc field on an inserted record? Previous methods I used are not working. Here is some code that does NOT work: declare @SysUserId int; exec dbo.SysUserUpdate @SysUserID = @SysUserID output, @UserName = :UserName, @Password=:Password, @FullName = :FullName, @EmailAddress = :EmailAddress, @CompanyLocationId = :CompanyLocationId, @IsActive = :IsActive, @SysApplicationKey = :SysApplicationKey, @ModuleAccess1 = :ModuleAccess1, @ModuleAccess2 = :ModuleAccess2, @PolicyAccess1 = :PolicyAccess1, @PolicyAccess2 = :PolicyAccess2 select :SysUserId=@SysUserId