Purpose
This page is created to help you solve a general issue in Portal environment.
Overview
There can be several root causes for error "There is no iView available for system "ABC": object XYZ". On this page you can find the necessary trouble shooting steps to identify and solve the cause of the error.
Solving error "There is no iView available for system "ABC": object XYZ"
Checking System Alias of System
Open the following SPRO path:
SAP Implementation Guide -> SAP Supplier Relationship Management -> SRM Server -> Technical Basic Settings -> Define System Landscape.
Make sure that the Local system has the following attribute maintained: System Alias f. POWL Navigation: SAP_SRM.
Checking iView and customizing
First, you need to identify the called iView. For this, you can use HTTP Watch Studio. Record a trace of the error according to KBA 1558903.
In this example, I clicked Create Contract link.
Then in the POST data search for the following entries:
source: This is the path, which leads us to the called iView, or the Short URL.
businessObjName: This shows Business Object type of the called Operation.
operation: This is the called Operation.
Another important parameter is resolvingMode. If this has value SourceRole, it means that this iView must be located in some specific portal role, so it is necessary to specify this role.
If you don't see the role in parameter source, but a short URL, you need to check which role is behind the short URL. You can do this according to the following Wiki page: How to deal with Short URLs.
If you have the full path, first check if this role is assigned to the user or not. To do this open tab User Administration, search for portal user and go to tab Assigned Roles. If the role is not assigned, please add this portal role to the user.
Afterwards navigate to tab Content Administration and open the called iView based on the path. In this example, the following path was used:
Following your own path, you can find the called iView. You can identify the path nodes by name and by the help of the following notation:
- fl_*: The node is a Folder.
- ro_*: The node is a Role.
- ws_*: The node is a Workset.
- pg_*: The node is a Page.
- iv_*: The node is an iView.
In the below screenshots, you can find an example that shows how you can use the path to find the iView. When you open the Role, use link Advanced Editor, so that you can follow the path further till the iView.
Note that you have to follow your own path that is showed by HTTP Watch trace.
For further steps we differentiate two scenarios:
- When the path is ending with an iView (iv_*)
- When the path is ending with a Workset or Page (ws_*, pg_*)
When path is ending with Workset or Page
In this case you need to check if the called operation exists in any of the iViews under Folder Navigation. For example if the Operation is Display and the Object is Contract, you have to verify if any of the assigned iViews have this operation and object. For this, open the relevant Business Object in the hierarchy on the left side, then click All Implemented Targets link.
In this way, system will list all the Roles for all the Operations, that contains that Operation. In this example, we check Operation Display. If you open the hierarchy under the Operation, you can find which role has the iView with this operation. If you can't find the role from the Trace here, that means that the iView is not assigned to the Role that contains the relevant Operation.
If the iView is not assigned, you have to assign the iView. To do this, you have to find the iView first. To find its location, highlight the second entry under Operation and click button Properties.
Or you can also assign the iView from the listed Roles. Then highlight folder Navigation on the right side, where you would like to add the iView, then right click the iView and choose Add iView to Role -> Delta Link.
If you have already assigned the iView to the Role, you have to check attribute System Alias of this iView. Open the iView by highlighting it and clicking button Open.
Here check attribute System. You must maintain it as SAP_SRM.
When path is ending with an iView
If you can't find the iView here, that is the root cause of the issue. In this case, assign the called iView to the Role. Search the relevant iView on the left side using iViews folder, highlight the folder on the right side, where you would like to add the iView, then right click the iView and choose Add iView to Role -> Delta Link.
Then make sure that the same iView assigned under folder Navigation inside the Role.
If you have already assigned the iView to the Role, you have to check the customizing of this iView. First, check attribute System Alias. Open the iView by highlighting it and clicking button Open.
Here check attribute System. You must maintain it as SAP_SRM.
If you maintained the correct value here, the next step is to check Object-Based Navigation customizing. Click on Object-Based Navigation link on the same page where you checked the System attribute.
Verify if the called Operation has been maintained. You can see in this example that the customizing is correctly maintained according to the data that we gathered from HTTP Watch trace.
If the called Operation is missing, you have to assign the operation to the iView. On the left side search for the relevant Operation using folder Business Object. Choose the Business Object type first, and then search for the Operation underneath. Or you can also use the search box to find the relevant Business Object based on businessObjName.
Then right click the Operation and choose Add operation to target.
Related Content
Related Documents
Related SAP Notes/KBAs
SAP Note: 1494536 Object Based Navigation - Specific Component Note
KBA: 1558903 How To Trace a Portal Scenario Using HttpWatch