Jump to content

Joe Sansalone

Members
  • Content Count

    92
  • Joined

  • Last visited

Everything posted by Joe Sansalone

  1. Joe Sansalone

    iOS deploy freezes

    Hi, When compiling/deploying to iPhone, Delphi freezes at the step when deploying *.dSYM file. How do I fix this? Delphi 11.1 (Version 28.0.44500.8973) Xcode: 13.4.1 macOS: 12.2.1 PAServer: 13.1.11.0 sdk: iOS 15.5 device: iOS 15.5
  2. Joe Sansalone

    iOS deploy freezes

    I removed all iOS SDKs, then added iOS 15.5. (still couldn't deploy). Then updated windows 11 ARM ... finally worked!
  3. Joe Sansalone

    Interbase Stored Proc, replacing a record

    Hi, I'm writing a stored procedure to get a list of records AND replace some of those records with other records IF they have an "override" - which is indicated by other columns. When I use the stored procedure it correctly REMOVES the record that has an override BUT does not replace it with its override record. This indicates that I'm not writing the correct code to get new record and then Suspend to return that record. Below is my stored procedure .... Does anybody see the problem? Joe ALTER PROCEDURE OVERRIDE_LIST RETURNS ( ID NUMERIC(18, 0), DBID INTEGER, TABLENAME VARCHAR(15), DIMNAME VARCHAR(20), DIMVALUE VARCHAR(30), RECNO INTEGER, DATA BLOB SUB_TYPE 0 SEGMENT SIZE 1024, TEXT BLOB SUB_TYPE TEXT SEGMENT SIZE 80, REFID NUMERIC(18, 0), ISROOT BOOLEAN ) AS declare variable I NUMERIC(18, 0); declare variable R NUMERIC(18, 0); begin For select ID, DBID, TABLENAME, DIMNAME, DIMVALUE, RECNO, DATA, TEXT, REFID, ISROOT From DN into :ID, :DBID, :TABLENAME, :DIMNAME, :DIMVALUE, :RECNO, :DATA, :TEXT, :REFID, :ISROOT Do begin i = :ID; R = 0; execute procedure Override :i Returning_Values :R; if (:R is not null) then begin for select ID, DBID, TABLENAME, DIMNAME, DIMVALUE, RECNO, DATA, TEXT, REFID, ISROOT From DN where ID = :R into :ID, :DBID, :TABLENAME, :DIMNAME, :DIMVALUE, :RECNO, :DATA, :TEXT, :REFID, :ISROOT do Suspend; end else Suspend; end end^
  4. Joe Sansalone

    Interbase Stored Proc, replacing a record

    My mistake. I was using the Stored Proc with a where clause which was NOT including the replaced records. Ignore.
  5. Joe Sansalone

    iOS deployment problem

    Things were working before. I think there was an update for Xcode to install command line tools and also I updated to the latest 11.1 patch which required a re-install of PAServer. The connection to PAServer is fine. Don't know what this error is: [PAClient Error] Error: E6664 xcode-select: error: tool 'actool' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance
  6. Joe Sansalone

    iOS deployment problem

    macOS 12.2.1 Xcode 13.2.1
  7. Joe Sansalone

    iOS deployment problem

    Ok It runs and does deploy AFTER using your "sudo code-select --switch ..." But this error shows up: (Ignore the red line)
  8. Joe Sansalone

    no help content

    Hi, Installed AWS SDK (Appercept) via GetIt. I see the help topics on the left but no help content on the right. Anyone know why? Joe
  9. Joe Sansalone

    no help content

    Could not open the HELP file in Windows 11 ARM, running in Parallels. Copied the file to a Windows 7 computer and the help file opens.
  10. Hi, In terms of performance: Has anyone tested Interbase with encryption (at rest and in motion) vs no encryption? Even rough comparisons would be useful. Just looking for any data describing relative performance. Thanks, Joe
  11. Joe Sansalone

    adding license

    Hi, I need to add a license to Delphi. But the computer does not have access to the licensing server via the internet because it has restricted internet access (corporate environment). Can I register the license on some website, then get some file and copy it to that machine? Thanks, Joe
  12. Since a *.dcp has the compiled units of a package, is it possible to have only the *.dcp and be able to compile a project that uses the units of that package? (without DCUs or PAS files) curious When is the DCP file used?
  13. Ok. Thanks. I noticed that some packages are installed without any components. And they are not used by other packages. Example: AWS SDK (from GetIt). In a case like AWS SDK, the package doesn't need to be installed, right? If compiling without runtime packages, we are accessing DCUs or PAS files. In the case of compiling with runtime packages, we simply need access to the bpl/dcp files. Why are those packages installed?
  14. Sometimes there are packages that have no design-time components. I don't need to install such a package in the IDE, correct?
  15. Joe Sansalone

    Interbase: Full encryption vs None, performance diff

    @Sriram We have 1 column that we need to encrypt. Although it will be in a very used table. And we are thinking of encrypting the entire database too. 5 to 10% overall performance impact is not bad. For our website, we do custom connection pooling. But also have direct connections to the server, via desktop apps. Even a full 10% hit is ok. Thank you for the detailed reply. Useful to have as reference. Good to know that using Change Views also helps reduce impact because of encryption. Thank you.
  16. Joe Sansalone

    Change Views (2017 vs 2020 Server)

    Hi, I'm using the sample project Change Views,Generic that came with Delphi 11. I changed the EventAlerter to use DataMerge instead of DeltaMerge, so that the query dataset is up to date exactly like in the database. It works with Interbase 2020 server perfectly (inserts, updates and deletes). But if it's an Interbase 2017 server, deletes do NOT get processed. (inserts and updates work properly) Is this a bug? Joe
  17. Joe Sansalone

    Change Views (2017 vs 2020 Server)

    Sriram, thank you for the update. I'm going to look into upgrading to Interbase 2020.
  18. Joe Sansalone

    Change Views (2017 vs 2020 Server)

    Jeff, CachedUpdates is true. And I had the rtDeleted in FilterChanges property. I compiled again with 11.1 (just in case) and connected to a InterBase 2017 server (version 13.4.0.350). Are you sure you were using Interbase 2017? I don't see deletes (tried both with DeltaMerge and DataMerge in the EventAlerter). It works with Interbase 2020. What exact version are you using with Interbase 2017? Joe
  19. Joe Sansalone

    Migration Tool (11 --> 11.1)

    Hi, I've never used the Migration Tool that comes with Delphi. Does it migrate IDE settings and installed packages? Thinking of using it for Delphi 11 to Delphi 11.1. Any tips?
  20. Joe Sansalone

    Migration Tool (11 --> 11.1)

    After downloading the Web Install file, I ran it and soon after popped up some error (I don't remember what it was), I clicked continue and it kept popping up some error even though it kept continuing. At some point, it would not continue ... so I ran the Web Install file again. That's when it installed Delphi ... but did not keep registry entries.
  21. Joe Sansalone

    Migration Tool (11 --> 11.1)

    I let the new setup uninstall. And I selected to keep registry. I believe the options were 1. Yes - remove registry entries 2. No - do not remove. (default) <---- simply left at as is.
  22. Joe Sansalone

    Migration Tool (11 --> 11.1)

    Luckily I saved the registry settings! 11.1 Web Install did not preserve any settings. Thanks.
  23. Joe Sansalone

    Migration Tool (11 --> 11.1)

    Ok. I thought we need to re-install packages etc because 11.1 seems to be a FULL install.
  24. Hi, (Delphi 11, also tried Delphi 10.4) I'm running an application 24/7 that works for a few weeks and then gets STUCK waiting for a response from executing a REST Client Request. No exception. No timeout. Does not return from FRESTRequest.Execute The server that is being Requested, gets the request AND does respond. Below is the code. The ModifyCall procedure gets executed many times and works before hitting this problem. Sometimes restarting the application is not enough to fix the problem. I need to restart windows! 1. Can I force a max timeout? So that if it gets stuck, at least I can handle the timeout. 2. Any idea why this would occur? Joe constructor TTwilioAPI.Create(aAccountSID, aPassword: string); begin inherited Create; FTwiML := TTwilioML.Create; FAccountSID := aAccountSID; FPassword := aPassword; FRESTClient := TRESTClient.Create('https://api.twilio.com/2010-04-01'); FRESTRequest := TRESTRequest.Create(FRESTClient); FRESTResponse := TRESTResponse.Create(FRESTClient); FHTTPBasicAuthenticator := THTTPBasicAuthenticator.Create(FAccountSID, FPassword); FRESTClient.Authenticator := FHTTPBasicAuthenticator; FRESTRequest.Client := FRESTClient; FRESTRequest.Response := FRESTResponse; FRESTClient.ContentType := 'application/x-www-form-urlencoded'; FRESTClient.SecureProtocols := [THTTPSecureProtocol.TLS12, THTTPSecureProtocol.TLS11, THTTPSecureProtocol.TLS1]; FBaseURL := cBaseURL; // default end; function TTwilioAPI.ModifyCall(aTwiML, aCallSid: string; sync: boolean = false): boolean; var statusCode: integer; begin result := True; FRESTRequest.Params.Clear; FRestRequest.Resource := '/Accounts/{AccountSid}/Calls/{Sid}.json'; FRestRequest.Params.AddItem('AccountSid', FAccountSID, TRestRequestParameterKind.pkURLSEGMENT); FRestRequest.Params.AddItem('Sid', aCallSid, TRestRequestParameterKind.pkURLSEGMENT); FRestRequest.Params.AddItem('Twiml', aTwiML, TRestRequestParameterKind.pkGETorPOST); FRESTRequest.Method := rmPOST; try FRESTRequest.Execute; <=============== does not Return from this except on E:EHTTPProtocolException do begin if Assigned(FLog) then FLog.WriteTimeStamp(lctHTTP, lptImportant, 'ModifyCall API: error executing request'); result := false; raise ETwilioCallError.Create('HTTP protocol exception'); end; on E:ERESTException do begin if Assigned(FLog) then FLog.WriteTimeStamp(lctHTTP, lptImportant, 'ModifyCall API: ERESTException'); result := false; raise ETwilioCallError.Create('HTTP protocol exception'); end; end; statusCode := FRESTResponse.StatusCode; //TODO: IF 400 or 500 raise Exception ETwilioError FResponseData := TJSON.JsonToObject<TTwilioResponseObj>(TranslateJsonNames(FRESTResponse.Content)); if Assigned(FLog) then FLog.WriteTimeStamp(lctHTTP, lptNormal, 'ModifyCall API response: status: ' + FResponseData.status + ' sid(call): ' + FResponseData.sid + ' statusCode: ' + InttoStr(statusCode) + ' raw response:' + FRESTResponse.Content + ' message: ' + FResponseData.msg); if (statusCode = 400) then begin if Pos('Call is already in transferring', FResponseData.msg) > 0 then begin if Assigned(FLog) then FLog.WriteTimeStamp(lctHTTP, lptImportant, 'ModifyCall API - BUG'); end; if Pos('Call is not in_progress', FResponseData.msg) > 0 then raise ETwilioHungup.Create('No call in progress') else raise ETwilioCallError.Create('status code 400'); end; end;
  25. Joe Sansalone

    Change Views (2017 vs 2020 Server)

    I also noticed something in Quality Central that referred to a similar issue. Updated to latest versions of IB2017 and IB2020 just recently (per Sriram's suggestion) .. still same problem. I use IBX. Just recently used FireDAC because of FDEventAlerter/Subscription/DataMerge ability. Is updating a dataset in IBX via Subscriptions/events similar to how FireDAC does it? Where can I read up on IBX and Subscriptions?
×