ITS_CANT_LOAD_INCLUDE "Template interpretation terminated, syntax error" - abap

We have this trouble:
We have been changing styles in our ITS Mobile applications, due to we have acquired new handhelds which are Android and the one we are replacing are Windows OS.
We have always used the WebGui style but the new handhelds with Android can't show popups and that's why we are transforming the styles to MOBILE4 and because, according to SAP, WebGui style is obsolete now.
The problem is that, when testing in Q&A, we are having dumps when we access the applications through handhelds, both Windows and Android.
The dumps show this:
The template zitsmobile\99\zmm_dynnr_50.html
contains syntax errors and therefore could not be compiled. Cause of
error: Include "include/sound" does not exist
The syntax error is in row: 50, column: 87
The HTMLB row with errors is:
" include(~service="itsmobile", ~language="", ~theme="99",
~name="include/sound.html");"
We tried to change the style to just MOBILE but dump is another message:
The template zitsmobile\99\zmm_dynnr_50.html
contains syntax errors and therefore could not be compiled. Cause of
error: Include "include/sound" does not exist
The syntax error is in row: 33, column: 87
The HTMLB row with errors is:
" include(~service="itsmobile", ~language="", ~theme="99",
~name="include/sound.html");"
Screen:
500 Internal Server Error
Template interpretation terminated, syntax error.
UPDATE:
We tried to change the style and problems in that server arose.
In fact, we notice that template RLMENU 2888 file is different in between Q&A environment and production environment.
If we try to regenerate template RLMENU 2888 then all the other applications trigger dumps.
So, regenerating template RLMENU 2888 makes it worse.
We are really confused of what to do in this case.

I finally fixed the issue.
The cause of the problem was that the ITSMOBILE internet service was not published in production.
When we published it finally the resource INCLUDE/SOUND and the rest were available.
However we had an issue after publishing.
We had to apply the SAP Note 2221538 - ITS_UNEXPECTED_TOKEN or ITS_UNDEFINED_NAT_FUNCTION dumps in ITSmobile application because there was a dump were we had to add declare the sh() function in INCLUDE/CUAAREA.html in ITSMOBILE.
The error in dump was ITS_UNDECLARED_FUNCTION.

Related

Reasons behind Cocoa error code NSFileWriteUnknownError

We are developing a document-based Objective-C project, using NSPersistentDocument and NSPersistentStore to save a unique binary file on disk. No autosave.
One customer has a recurring saving issue
The document "something.extension" could not be saved
that we cannot reproduce in our development setup. They can load their saved file without issue, but after a few changes the error pops up when trying to save. In our own setup, using the same build, the file opens and saves without issue.
The error is too vague for us to pinpoint the exact reason why their document would not save, but based on the very basic error message, we have realised the error raised is NSFileWriteUnknownError = 512.
In which situation would that error be raised? In which situation wouldn't the other, more specific error codes be applicable?
We build using SDK 10.14 and both us and the customer run on macOS Monterey 12.3.1
EDITED ON 09/08/22 - Added details based on Willeke's comments.
EDITED ON 17/08/22 - Underlying error
The error's userInfo comes with an underlying error message, which our customer could display. It states "No known persistent store for URL"

Syntax error handling in dojo 18n resource file

require(["dojo/i18n!myapp/nls/extTools_i18nStrings"],function(extTools_i18nStrings){
// Do something with the loaded file
});
If the resource file (extTools_i18nStrings) has syntax error, it will be shown in dojo.js. How can I handle it in my code?
Try catch block did not work.
Thanks in advance.
Error: Script error .............dojo.js:15
The quick answer is you don't want to. The right thing to do is fix the bundle. This is the same as having errors in your application code, and you would not expect the code to 'handle' that.
But since i18n is an AMD plugin running as part of the loader (which is why you can't try/catch it), the error might be reported through the AMD micro event API, and you could use that to show a better error. I'm not sure how you 'handle' this syntax error other than showing an error.
If you can't control the quality of the bundles via some part of your development or build process you'd have to invent your own alternative to dojo/i18n and you probably don't want to go down that route for all of your bundles.

How to get Yii2 formatted error message in production systems?

When Yii2 is used in debug mode and an error occurs, it shows a error message along with call trace, session, cookie and server info.
Sample image shown below.
In production ready systems, this will not be shown. However, Is there a way to pull this formatted html into a variable in production systems, so that it can be emailed to the developer to ease in debugging errors. If any one has any idea, please let me know.
I tried using \Yii::$app->mailer->render() passing #vendor/yiisoft/yii2/views/errorHandler/exception.php as view, ['exception => $ex] as data, layout file as parameters. I'm getting undefined variable handler error.
Config Log Targets for your purpose:
http://www.yiiframework.com/doc-2.0/guide-runtime-logging.html

Delphi Clipboard and Graphics DCU's Missing

I have this weird thing that keeps happening when trying to use the following unit:
XLSReadWriteII 5
Every time I add one of their components to my form and compile it, it gives me the following error:
[dcc32 Fatal Error] Unit1.pas(16): F1026 File not found: 'C:\Users\Gordon\Documents\RAD Studio\Projects\grdi\Clipbrd.dcu'
This tells me that there is no DCU's in my API, no I get the same error on my windows 7 and my windows 8 pc's. Delphi was installed from the embarcadero website via their installer.
If I download a clipboard.dcu and .pas file and run it again it gives me the same error saying Graphics.duc is missing...
I have emailed the company Axolot Data (the creators of XLSReadWrite 5) with regards to this issue, they just keep telling me my API is corrupt, on both pc's??
However what I find strange is that their supplied samples run.
How can I fix this?
I think I have found a solution or reason this is happening.
XLSReadWrite 5 is a VCL component which references the VCL API, im using FMX.
The package was designed for VCL and not FMX but for some reason shows up in the FMX Units.
Strange but that might be my cause

Firebreath plugin not loading in IE 10

EDIT: See end of post for more information.
I am trying to to get plugins created via the Firebreath framework (1.7.0) to load. I am on Windows 8 in Desktop Mode using Internet Explorer 10. I've reproduced this with the built-in test FBTtestPlugin that comes with Firebreath. The failure is silent in that the object element is created, but fails to have any properties specified by the plugin. How does one go about debugging this? The Microsoft Internet Explorer Compatibility Tool reports that the plugin is failing to load.
(The FBTtestPlugin loads three plugins, hence the three errors.)
I've got other (non-FB) plugins working on the same settings (e.g. the example here: http://msdn.microsoft.com/en-us/library/dd565667(v=vs.85).aspx works fine as do all the examples from this site http://ie.microsoft.com/testdrive/browser/activexfiltering/Default.html ).
I've tried a huge combination of security settings, but here's the most relaxed set I have so far follows:
Tools / Safety / ActiveX Filtering: is unchecked
Internet Options / Security / Internet: "Enable Protected Mode" is unchecked
Internet Options / Security / Internet: is at Custom Level. Under ActiveX everything is "enabled" except restrictive properties such as "Allow ActiveX Filtering"
All sorts of security warnings are visible based on these settings.
Note: I don't intend to keep these settings. I just want to get the plugin working, then work backwards re-enabling security settings.
UPDATE
I figured this out partly and can now run the FB test FBTestPlugin. To make debugging easier for IE, I defined the registry key HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\TabProcGrowth as 0 to limit the browser to use one process. Unfortunately, with IE10 both iexplore.exe in Program Files and Program Files (x86) direct to the 64-bit version of IE. This prevents 32-bit plugins from running (see http://support.microsoft.com/kb/2716529 ), and the symptom is silent failure.
However, my plugin still fails to load in IE and the retitled question above is otherwise still open. The problem is still silent load failure. However, I think it may have something to do with plugin configuration. The CLSID listed in the Compatibility Test Tool (like the example shown above) is listed as all 0's instead of a valid GUID. Moreover the registry looks funky: The key HKCR\Company.Name exists as does HKCR\Company.Name.1, but both are empty (instead of having a CLSID child as in normally working plugins). The expected GUID does exist, but under a bogus name "applications.'". I am now digging into the code that gets called when regsvr32 is run.
Thanks all!
I am providing this answer in the hopes that someone can use the result.
IE was not loading the plugin for two reasons.
1) The TabProcGrowth registry key and the 32/64 bit issue with IE 10. ( http://support.microsoft.com/kb/2716529 )
Don't define this key.
2) My plugin description used an apostrophe (e.g. "Gluttco's Plugin") and this messed up the registration of the component.
DETAILS ON 2):
I traced through the DllRegisterServer code and found that the phoney registry entries are due to the fact that my plugin description contained an apostrophe. E.g. "Joe's plugin". The generator (fbgen.py/cmake), generated a malformed FBControls.rgs file (it't didn't escape the quotes and thus contained a string literal such as (s 'Joe's cool plugin'). The DllRegisterServer code (called from regsvr32) used the contents of this file (embedded?) when (deep in atlbase.h). Oddly, the parser did not detect the error (or somehow erroneously recovered). From Process Monitor I could see a bunch of bogus keys being added, before it started adding good registry keys again.
For now Firebreath plugin descriptions should not contain apostrophes (probably other characters are illegal too). It might be sensible to make fbgen.py check for these characters and possibly escape, reject, or replace them.
Searching found this: http://msdn.microsoft.com/en-us/library/dd565667(v=vs.85).aspx
Do you have any group policies in place that could affect it? I don't think this is related directly to FireBreath, rather to the activex configuration...
I also found http://social.technet.microsoft.com/Forums/windows/en-US/90c3202c-448b-42b7-acf7-dab8dba7b000/one-or-more-activex-controls-could-not-be-displayed-because-either which has a few things you could try.