I have a very complex control application with fields that have lookups into the database. SC have just tripped me up for the second time. For some reason the application can suddenly not be generated yet again. The first time it happened, I had to recreate the app step by step to find out what was wrong. It turned out to be that SQL code given for an automatic lookup may not contain an “select {field} as {label}”, although it is perfectly okay SQL. I wasted hours of work on that. Don’t use “… as {label}” for a column. Use a view instead where the columns can be given other labels.
The problem with these system errors during code generation, is that it is close to impossible to locate the reason. A pop up window states:
ERROR
System Error. We recommend you to send the file with the error to NetMake.
Log File successfully created: error_48e6a2c0bad426299c418b074b8200d5.html
Click on this link to send this error to NetMake.
Page with 1 queries,
DEL: 1created in 0.11s
There is no way to send the file to SC.
When you click the error html link, you get:
“Trying to get property of non-object | Script: C:\Program Files\NetMake\v8\wwwroot\scriptcase\devel\lib\php\database.inc.php linha: 1736”
Aha, you think. This is workable. I can open that file and find out where the problem is – not so!
The full file contents is:
<?php @Zend;
3074;
/*
Yes, three lines – there is no line 1736.
In the “Generated source code” page in the browser I can click the folder icon next to “Status: Error” and get this message:
“Fatal error: Call to a member function MoveNext() on a non-object in C:\Program Files\NetMake\v8\wwwroot\scriptcase\devel\lib\php\database.inc.php on line 1737”
Well, the file only contains three lines!!
This is just unprofessional. When serious errors like this happens, SC should make sure that one can locate the source of the error. Come on! Use some try-catch blocks and make sure that the generated source code is saved in a temporary file, which stays intact after the error occurs, even if the generation was not completed.
I am shaking with rage that I have to waste time on this yet again.
Does anyone have any idea if the temporarily generated code might be found so that the line numbers referred to can be checked?