by Unlicensed Unknown user
Any “conversion,” re-factoring, of an application, as in moving to SQL from flat files, will pose issues. The odds of getting a clean compile the first or second time (or third, fourth …), much less a correctly functioning app out of the box are … not especially good.
...
Figure 1: SQLite Database Browser
But, be aware, it can lock up on a badly formatted query.
...
Figure 2: Get(Accounts,ACC:AccountKey)
Except that the record was not being found!
...
Figure 3: Account file layout (DCT)
What is going on here?
...
Figure 4: Adjusted ACCOUNTS file layout
Figure 5: Old and New Layouts Compare
I've never before heard of such a requirement (though, from a recent news group posting by Geoff Bomford, MS-SQL may well share this peculiarity). But, problem solved. [Expletive deleted – some more]
...
Figure 6: Saving a Change (APP)
Trying to delete a record from the ACCOUNTS file gave similar results:
Figure 7: Deleting an Account (APP)
I can't add, update or delete CHECKS. I can't delete ACCOUNTS. Two other files in the app show no problems of any kind for any CRUD operation.
...
Figure 8: Deleting from the Wizarded app
though, instead of an ErrorCode 33, now I get a 35. [Expletive deleted – much more]
...
Figure 9: CHECKS file layout (DCT)
Moving the fields around, to group the other unique key elements together and toward the top:
Figure 10: New CHECKS File Layout
Figure 11: Old and New Layouts Compared
Records could now be added, updated or deleted. And, from the previous … adventure … the balances updated and displayed. Correctly, no less!
...
Figure 12: SQLite Date Formatting
reveals the answer. Where MySQL and MS-SQL store Date data types in D12 format (or, at least, understand D12 format), SQLite has its own unique date format: yyyy-mm-dd. Checking the Clarion docs, this looks like it could be D12-.
...
Figure 13: Repeating Records at Browse Bottom
(For a short while, I recall this also occurred when scrolling up from the top of the browse.)
...