I have already written one blog How to persist the ui exception so you can view them later, the idea is after you spend little effort to create your own UI error handler and a new transparent table, the UI exception will be recorded into your own table, and you can view them at any time. ( just the similar logic as ST22 )
Sometimes once an UI exception occurs, you will not see an empty page but instead a time out error page. This blog explains why and how you will see the timeout error page.
This blog will show another small tip to accelerate your trouble shooting process against empty screen issue. In the end part of it I also raise an open question which is related to the discussed empty screen issue and I have not got answer so far.
Issue description
When clicking object ID hyperlink:
Then empty screen is displayed:
The tip
set breakpoint on method WRITE_ERROR_PAGE of class CL_BSP_WD_ERROR_PAGE_WRITER: relaunch the application and breakpoint triggers. If current client is not set up as productive client, the code will go to the first IF branch.
The client type detection is done in the class constructor via FM TR_SYS_PARAMS.
Since normally the client type could only be changed by system admin, so you can put cursor on line 17 and click Shift + F12 to force the code to move to the second IF branch. Click F8 and the error information is displayed.
Open question
I develop a sample BSP and raise exactly the same exception deliberately there in another system.
Instead of seeing the empty screen, I get the following error page with detailed information:
I try to find the switch & logic to control how the detailed error page or empty screen is chosen to display.
Unfortunately I didn’t find the answer so far. The only finding is that when the exception is raised in ABAP backend, I observed a HTTP 500 error in HTTP watch.
And there are lots of insert operation on ST22 table SNAP in ST05 trace.
however by clicking button “Display ABAP call location”, I could not see the corresponding INSERT statement in ABAP editor, but just automatically navigate to the line below:
Perhaps the logic to make choice between error detail page and empty page for display is not done in ABAP side at all.
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
相关推荐
在SAP CRM 7.0版本中,WebClient UI配置是一项关键任务,它涉及到了用户界面的定制和优化,以提升用户体验和业务效率。WebClient UI是SAP CRM的一个核心组件,提供了一个基于Web的交互界面,使得用户能够访问和操作...
首先,让我们来看看SAP CRM WebClient UI的发展历程。从最初的GUI界面,到PCUI,再到IC WebClient,最终发展到目前最新的WebClient UI,这一过程中,用户界面不断优化,以适应不同设备和用户的使用需求。在CRM 7.0...
Sent: Thursday, April 18, 2013 3:59 PM Subject: 为什么design time时候看到的是ICQR,点了service之后看到02QR的代码被call到 这是cross component navigation在起作用。 Result list是model在ICQR里面,如果点...
请注意,实际应用中可能需要处理错误和异常,以及考虑线程同步问题,确保UI线程安全地更新进度条。此外,如果要实现更复杂的功能,比如暂停和恢复下载,可能需要使用更高级的类如System.Net.Http.HttpClient,配合...
在SAP CRM基础培训中,WebClient UI(Web客户端用户界面)是一个重要的学习焦点,它是用户与系统交互的主要界面。下面我们将深入探讨WebClient UI的相关知识点。 WebClient UI的发展历程是从GUI(图形用户界面)...
【WebClientDemo_webclient_】项目是一个C#编程示例,展示了如何使用`WebClient`类来实现文件的下载功能。在.NET Framework中,`WebClient`是System.Net命名空间下的一个类,它提供了一种简便的方法来上传和下载数据...
### C# WebClient 上传文件知识点解析 #### 一、引言 在开发过程中,经常会遇到需要将客户端的文件上传到服务器的需求。C#语言提供了多种方法来实现这一功能,其中`WebClient`类就是一种非常简便的方式。本文将详细...
在SAP CRM WebUI中创建下拉列表是一个关键任务,特别是在设计用户界面以提供更高效、用户友好的交互时。本教程将引导你通过一系列步骤来实现这一目标,特别是针对SEX(性别)属性创建一个下拉框。 首先,你需要获取...
Sent: Thursday, May 9, 2013 6:30 PM Subject: ON_NEW_FOCUS的用途 ROOT ———————————— Product ID PRODshortText ———————————— Product Description Genil Model hierarchy
在C#编程中,WebClient类提供了一种简单的方式来实现文件下载。WebClient是一个高度封装的网络通信类,主要用于HTTP协议交互,包括上传和下载数据。以下是对标题和描述中涉及知识点的详细解释: 1. **WebClient下载...
SAP CRM的基础知识通常包括对于其核心组件的理解,包括主数据(如账户、组织模型、产品等),交易处理、定价、开票、CRM中间件以及CRM WebClient UI。CRM中间件主要负责不同系统组件之间的信息交换,而CRM WebClient...
分析错误信息,我们可以发现,403 错误是由于权限设置问题所引起的。因此,我们可以通过添加授权证书来解决这个问题。代码如下: ```csharp webclient.Credentials = CredentialCache.DefaultCredentials; ``` ...
UI Guidelines for CRM WebClient User Interface
### 使用WebClient编写整站下载的关键技术点 #### 一、概述 整站下载是一种能够复制网站所有资源至本地的技术,使得用户可以在无网络的情况下访问这些资源。在本篇文章中,我们将详细介绍如何使用C#中的`WebClient`...
WebClient安装文件。 在Java世界中,有许多用于发送HTTP请求的库。比较三种流行的HTTP客户端:WebClient,HttpClient和OkHttp。WebClient是Spring 5中引入的非阻塞,反应式的Web客户端。它是在Project Reactor和...
上传过程中可能会遇到网络问题或服务器错误,因此需要捕获并处理可能出现的异常: ```csharp try { client.UploadFile(uploadUrl, "PUT", localFilePath); } catch (WebException ex) { // 处理异常 } ``...
- **错误处理**:`WebClient`的下载方法可能会抛出异常,如`WebException`,因此在实际应用中,应添加适当的异常处理代码。 - **取消下载**:可以通过调用`WebClient`的`CancelAsync()`方法取消正在进行的下载任务...
在使用`WebClient`进行网络请求时,可能会遇到各种异常,如网络连接问题、认证失败等。建议使用`try-catch`块来捕获并处理这些异常。 ```csharp try { // 发送请求 } catch (Exception ex) { Console.WriteLine(...
WebClient jar包
Console.WriteLine("下载过程中出现错误:" + e.Error.Message); else Console.WriteLine("文件已成功下载"); }; ``` 为了实现后台自动下载,可以使用C#的后台线程或任务(Task)来启动下载过程,这样不会阻塞...