Import to different user - triggers/functions invalid
Hi,
I´m using Oracle 9.2 in both servers.
In my production server, I export the schema CARS.
In my dev server I have two schemas: CARS and CARS_DEV. I can import the dump file to CARS_DEV using TO/FROM. The command that I'm using is:
imp file=carsFeb2008.dmp log=carsFeb2008.log userid=system/blablabla fromuser=CARS touser=CARS_DEV grants=y constraints=y indexes=y statistics=RECALCULATEBut the triggers and functions became invalid, because in the source code there's a line, for example, SELECT * FROM CARS.MYTABLE. The import isn't changing the lines inside the triggers and functions to CARS_DEV.
Pls, any ideas?
Many xks in advance,
Miguel
Other than the (hopefully obvious) option of changing the source code so that you're not explicitly referencing a particular schema name? Import and export aren't going to change the source code itself, so code that explicitly refers to objects in a particular schema cannot be migrated to a different schema without changing the code.
Justin
Similar Messages
-
Oracle 10g Data Dump---Import to different users
Hi everybody,
I exported data in oracle 10g using expdp in user schema(abc1).
Now i want to import that data in different user schema (abc2) and another user schema (abc3). Both schemas (abc2 and abc3) are in same tablespace.
How to do this. Shall i need to export that data in SYSTEM mode to import for different users..?
Thanks in advance
PalShall i need to export that data in SYSTEM mode to import for different users..?No need. You can use REMAP_SCHEMA option on import, e.g.
impdp system/<password> directory=<directory> dumpfile=<dumpfile> remap_schema=abc1:abc2
See http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14215/dp_import.htm#sthref339 -
Access Imported Archive in User Defined Function
Hi!
I want to access a XML file in an user defined function in a message mapping. The XML file is included in an imported archive. I need the information out of this XML file for configuring an extended receiver determination.
Does anyone know how to solve this?
Best regards,
DanielHi Krishna,
a property file will be a solution but is has to be stored in the filesystem. In my scenario I prefer a file (not neccessary xml) which is editeable in the IR.
I tried something in this way (just for testing):
try {
DocumentBuilderFactory factory = null;
DocumentBuilder builder = null;
Document document = null;
Element element = null;
factory = DocumentBuilderFactory.newInstance();
builder = factory.newDocumentBuilder();
document = builder.parse(Container.class.getResourceAsStream("routing.xml"));
element = (Element)document.getElementsByTagName("BUSINESS_SYSTEM").item(0);
return element.getNodeValue();
} catch (Exception e) {
return "Crash: "+e.getMessage();
But it crashes, because the resource "routing.xml" cannot be found. I tried to add the namespace or the name of the imported archive or both as prefix, but it don't work. How can I find out under which address/url I can open the xml document?
Best regards,
Daniel -
Error Using imported .JAR in user-defined function
Hi All,
I am trying to use jar files provided to me in user defined function as follows:
DataEncryption temp = new DataEncryption();
String ret = new String();
ret = temp.getEncryptedData(a);
return ret;
All jar files working perfectly in java software, But when i am trying to test the mappings by using above user-defined function.
I am catching the error and put in target field then, I am getting following message in target field:
"An error occured in getEncryptedData method : java.lang.SecurityException: The provider SunJCE may not be signed by a trusted party"
Please help in finding the error.
RegardsRohan
Check if the XI Server JRE is the same as the client machine on which you have compiled your JAR.
1.4 has had this issue and i remember seeing it in a few forums.The problem should not occure in 1.5 -
In Ref cursor, user defined functions give "invalid column" error in EJB.
Hello,
I have written PL/SQL stored procedures/functions in Oracle 8i. They return the result set as a ref cursor.
These procedures are accessed by EJB (weblogic) using Type 4 (100% Java) JDBC Driver.
My problem is - if I use a user defined function to fetch a value in the select statement of the reference cursor, the EJB gives an error msg - invalid column name.
If instead of using the function I get the value directly from the table, it works fine. Refer the code below :
//In the PL/SQL function -
//instead of writing :
Open rc for
Select empcode, empname
from emp ;
//If I write :
Open rc for
Select empcode, mypack.getempname(empcode)
from emp ;
//getempname(empcode) is a function in
//in a package named 'mypack'
//and returns name for empcode.
//The java code gives error
//error : invalid column name
//While both are working fine and
//returning currect result in SQL Navigator.
Help me solve this mystery ?
Thanks in advance.
Swati.
nullHi:
When use inline Function to simplify the SQL statements, there is one thing that one should conside--Purity Level.
if you create standalone stored pl/sql function. Oracle implicitly determines the PURITY level during compilation of the stored objects or at execution of an anonymous pl/sql block.
if you implement Package inline Function( in your case),unlike standalone stored pl/sql functions, the PL?SQL Engine does not determine the purity level of package functions. Therefore, you must explicity assign the correct purity levels for the function to be called inline.
the code like:
create or replace package mypack is
function getempname(empcode emp%empid%type)
return varchar2;
PRAGMA RESTRICT_REFERENCES(getempname,WNDS,WNPS,RNPS);
end mypack;
I think it can solve your problem if you use enough "pure"to be called inline function. Or you can create the standalone function to do it.
good luck!
Yali
<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by Swati Agrawal ([email protected]):
Hello,
I have written PL/SQL stored procedures/functions in Oracle 8i. They return the result set as a ref cursor.
These procedures are accessed by EJB (weblogic) using Type 4 (100% Java) JDBC Driver.
My problem is - if I use a user defined function to fetch a value in the select statement of the reference cursor, the EJB gives an error msg - invalid column name.
If instead of using the function I get the value directly from the table, it works fine. Refer the code below :
//In the PL/SQL function -
//instead of writing :
Open rc for
Select empcode, empname
from emp ;
//If I write :
Open rc for
Select empcode, mypack.getempname(empcode)
from emp ;
//getempname(empcode) is a function in
//in a package named 'mypack'
//and returns name for empcode.
//The java code gives error
//error : invalid column name
//While both are working fine and
//returning currect result in SQL Navigator.
Help me solve this mystery ?
Thanks in advance.
Swati.
<HR></BLOCKQUOTE>
null -
Oracle dequeue function is not working through different user.
I created an Oracle queue, an anonymous block to enqueue messages in it and a dequeue function. when i use the dequeue function with the same user i've created queue its working fine, but when i am executing same function with different user it is returning null.
Please see the code i've used ----
-- Create q_table
begin
DBMS_AQADM.create_queue_table (
queue_table => 'QUEUE_QTAB' , queue_payload_type => 'SYS.XMLTYPE'
,multiple_consumers => TRUE, message_grouping => DBMS_AQADM.none);
end;
--Create queue:-
begin
DBMS_AQADM.create_queue (
queue_name => 'QUEUE_Q', queue_table => 'QUEUE_QTAB');
end;
-- Start queue:-
begin
dbms_aqadm.start_queue (
queue_name => 'QUEUE_Q');
end;
--Add subscriber:-
begin
DBMS_AQADM.add_subscriber (
queue_name => 'QUEUE_Q',
subscriber => sys.aq$_agent ('B_USER', NULL, NULL));
end;
GRANT SELECT ON A_USER.QUEUE_QTAB TO DBMONITOR;
GRANT SELECT ON A_USER.QUEUE_QTAB TO IDSCORE;
GRANT SELECT ON A_USER.QUEUE_QTAB TO IDSREAD;
GRANT SELECT ON A_USER.QUEUE_QTAB TO IDS_READ;
-- View Creation:-
CREATE VIEW QUEUE_QTAB _VW
AS
SELECT * FROM QUEUE_QTAB
WHERE Q_NAME = QUEUE_Q';
Grants:-
GRANT SELECT ON A_USER.QUEUE_QTAB _VW TO B_USER;
--Enqueue
DECLARE
enqueue_options dbms_aq.enqueue_options_t;
message_properties dbms_aq.message_properties_t;
message_handle RAW(16);
message XMLTYPE;
BEGIN
message := XMLType('<?xml version="1.0"?><tns:ISO8583-87 xmlns:tns="http://www.tsys.com/prime/online/iso8583"><I000>0120</I000><I002>491693******9989</I002><I003>280000</I003><I004>000000003000</I004><I006>0000091050.23</I006><I007>0406131721</I007><I011>039622</I011><I012>094121</I012><I013>0224</I013><I018>5999</I018><I022>0000</I022><I032>06123496</I032><I033>06198745</I033><I037>123456787012</I037><I038>026446</I038><I039>00</I039><I041>A1234567</I041><I042>CARD ACCEPTER </I042><I043>ACQUIRER NAME CITY NAME UK</I043><I048>1001O</I048><I049>978</I049><I051>826</I051><I056>37120300692340000012300004800456005600</I056><I102>0890220150</I102></tns:ISO8583-87>');
dbms_aq.enqueue(queue_name => 'QUEUE_Q',
enqueue_options => enqueue_options,
message_properties => message_properties,
payload => message,
msgid => message_handle);
COMMIT;
end;
Dequeuing is actually done through two function fn_dequeue function calls fn_dequeue_payment_msg, both are under different packages
fn_dequeue---
FUNCTION fn_dequeue (p_consumer_i IN VARCHAR2 DEFAULT USER)
RETURN CLOB
AS
v_msg xmltype;
v_msg_found BOOLEAN := FALSE;
v_return clob;
c_procedure_name constant varchar2 (100) := 'FN_DEQUEUE';
v_locn idsc_globals_pck.styp_locn;
v_q_name_i varchar2(35) := 'QUEUE_Q';
begin
v_locn := '80';
idsc_lib_pck.pr_debug (
p_program_name => c_procedure_name, p_ids_req_id => NULL
,p_locn => v_locn, p_debug_message => 'Function called by ' || USER
v_msg_found :=
idsph_queues_pck.fn_dequeue_payment_msg (
p_q_name_i => v_q_name_i , p_message_o => v_msg, p_consumer_i => p_consumer_i
v_locn := '90';
if v_msg_found then
v_locn := '100';
idsc_lib_pck.pr_debug (
p_program_name => c_procedure_name, p_ids_req_id => NULL
,p_locn => v_locn, p_debug_message => 'Message found'
v_return := v_msg.getstringval ();
end if;
v_locn := '110';
idsc_lib_pck.pr_debug (
p_program_name => c_procedure_name, p_ids_req_id => NULL
,p_locn => v_locn, p_debug_message => 'Returning'
RETURN v_return;
EXCEPTION
WHEN OTHERS THEN
idsc_errors_pck.pr_raise_app_error (
p_proc_name_i => c_procedure_name, p_locn_i => v_locn, p_err_msg_i => SQLERRM
END fn_dequeue_iso8583;
fn_dequeue_payment_msg-----
FUNCTION fn_dequeue_payment_msg (
p_q_name_i IN VARCHAR2
,p_consumer_i IN VARCHAR2 DEFAULT USER
,p_message_o OUT XMLTYPE
RETURN BOOLEAN
IS
v_dequeue_options DBMS_AQ.dequeue_options_t;
v_message_properties DBMS_AQ.message_properties_t;
v_message_handle RAW (16);
v_message XMLTYPE;
e_no_messages exception;
PRAGMA EXCEPTION_INIT (e_no_messages, -25228);
c_procedure_name CONSTANT VARCHAR2 (100) := 'IDSPH_QUEUES_PCK.FN_DEQUEUE_PAYMENT_MESSAGE';
v_locn idsc_globals_pck.styp_locn;
BEGIN
v_locn := '10';
idsc_lib_pck.pr_debug (
p_program_name => c_procedure_name, p_ids_req_id => NULL
,p_locn => v_locn, p_debug_message => 'Setting dequeue options'
v_dequeue_options.wait := dbms_aq.no_wait;
v_locn := '20';
v_dequeue_options.navigation := DBMS_AQ.first_message;
v_locn := '30';
v_dequeue_options.consumer_name := p_consumer_i;
v_locn := '40';
idsc_lib_pck.pr_debug (
p_program_name => c_procedure_name, p_ids_req_id => NULL
,p_locn => v_locn, p_debug_message => 'Dequeuing next message'
idsc_lib_pck.pr_debug (
p_program_name => c_procedure_name, p_ids_req_id => NULL
,p_locn => v_locn, p_debug_message => 'p_consumer_i' || p_consumer_i
DBMS_AQ.dequeue (
queue_name => p_q_name_i, dequeue_options => v_dequeue_options, message_properties => v_message_properties
,payload => v_message, msgid => v_message_handle
v_locn := '50';
idsc_lib_pck.pr_debug (
p_program_name => c_procedure_name, p_ids_req_id => NULL
,p_locn => v_locn, p_debug_message => 'Dequeue successful'
p_message_o := v_message;
RETURN TRUE;
EXCEPTION
WHEN e_no_messages THEN
-- Not an error just no messages currently in queue so return success
v_locn := '160';
idsc_lib_pck.pr_debug (
p_program_name => c_procedure_name, p_ids_req_id => NULL
,p_locn => v_locn, p_debug_message => SQLERRM
RETURN FALSE;
WHEN OTHERS THEN
idsc_errors_pck.pr_raise_app_error (
p_proc_name_i => c_procedure_name, p_locn_i => v_locn, p_err_msg_i => SQLERRM
END fn_dequeue_payment_msg;
fn_dequeue function returns null while executing from B_USER , while same functions works fine for A_USER, please suggestI got the error , we need append schema name where queue is created before assigning it to a variable, this problem is now resolved.
fn_dequeue---
FUNCTION fn_dequeue (p_consumer_i IN VARCHAR2 DEFAULT USER)
RETURN CLOB
AS
v_msg xmltype;
v_msg_found BOOLEAN := FALSE;
v_return clob;
c_procedure_name constant varchar2 (100) := 'FN_DEQUEUE';
v_locn idsc_globals_pck.styp_locn;
v_q_name_i varchar2(35) := 'A_USER.QUEUE_Q';
begin
v_locn := '80';
idsc_lib_pck.pr_debug (
p_program_name => c_procedure_name, p_ids_req_id => NULL
,p_locn => v_locn, p_debug_message => 'Function called by ' || USER -
Are Sql functions different from user defined functions ?
Hello,
SQL functions are built into Oracle Database and are available for use in various appropriate SQL statements. Do not >confuse SQL functions with user-defined functions written in PL/SQL.according to first paragraph of this document Sql functions are different from user defined functions . How is that ?
Is they really differ from each other ?bootstrap wrote:
If you don't know what compilation is, please use Wikipedia or other online resources.I know what is compilation . But i was confused whether those sql functions are compiled in my machine when i install Oracle Database in my machine or they are pre-compiled .
As you said these Sql functions are pre-compiled , it is clear now that they are pre-compiled platform dependent code .
Can you provide actual source code of any SQL function , say SUM function .
I want to see it, how they have defined . Eagerly waiting for any reply. please help .
Edited by: bootstrap on Aug 19, 2011 11:50 AMYou can ask oracle if they give you their code. I doubt they will. However if you want to write you own user-defined aggregation function, there are examples in the documentation how to do that.
http://download.oracle.com/docs/cd/E11882_01/appdev.112/e17125/adfns_packages.htm#i1008575
Edited by: Sven W. on Aug 19, 2011 9:24 AM -
IPhoto Import permissions for different users
Only the system administrator can import from a camera. I have checked all the preferences and system account details, and all permissions would seem to allow. Whether iPhoto or Image Capture, the camera is only recognized when logged on to the system administrator's account. In other accounts, iPhoto and Image Capture both say "No camera selected" even though the camera is connectedd and turned on. On the SA's account it is recognized automatically. Have two differnt brands of cameras and both do the same.
Reward: A beer in AZ to anyone with a successful answer!First I would try, from each "crippled" user account, to move the respective user's "com.apple.iPhoto.plist" file from the user's Library >Preferences folder to the trash (each user account does have it's own iPhoto Library folder, yes?).
If you are trying to allow different users to load images to a common iPhoto Library folder, iPhoto was not designed to do that. -
Windows 8.1 Run as different user from search function
Hi There,
After about a year of Windows 8 I was actually quite enjoying the ability to type a program name in start menu and then use right click to run as a different user. which is achieved via changing local security policy (i.e. running rsat tools
as a domain admin account etc). However, Now that Microsoft have decided that a search bar should appear when you start typing from the start menu, although this now displays the applications in the sidebar you can no longer right click and run as different
user. This means that for me windows 8.1 is now less user friendly than its older brother. Has this function been implemented and am I just missing something?
Thanks,
ChrisHi Chris,
Based on my research, on the windows 8.1,we could add "Run as different user" on Start in Group Policy.
Please perform the following steps:
1.Press Win+R, and type"gpedit.msc",then press Enter.
2.In the left pane, click/tap on to expand User Configuration, Administrative Templates, and open Start Menu and Taskbar.
3.In the right pane of Start Menu and Taskbar, double click/tap on Show "Run as different user" command on Start.
4.Select Enabled, click/tap on OK.
5.Reboot the computer.
Hope these could be helpful.
Regards,
Kelvin_Hsu
TechNet Community Support -
Invalid Subject error showing different user name
I am getting an Invalid Subject error when some of my users attempt to login. It doesn't happen to all users and sometimes the users we have been seeing the problem with are able to successfully login. The weird part is that we print out what user is attempting to login (by retrieving the subject) but the error message we get back is for a different user... what could be getting confused so that it is using the subject from another user even though we know we had the correct subject returned ?
I have searched the forum and some people have had similar problems when servers/domains/JMS queues did not have unique names. I verified everything we run is uniquely named. We are running WL9. Here is an example error from our logs:
< login():Username:exampleUser Principals:[exampleUser, group1] >
<Warning> <RMI> <machine> <server4> <RuntimeException thrown by rmi server: weblogic.jndi.internal.AdminRoleBasedDispatchServerRef@9, implementation: 'weblogic.jndi.internal.RootNamingNode@5429f96c' oid: '9', implementationClassName: 'weblogic.jndi.internal.RootNamingNode'
java.lang.SecurityException: Security:090398 Invalid Subject: principals=[differentUser, group1].
java.lang.SecurityException: Security:090398 Invalid Subject: principals=[differentUser, group1]
at weblogic.security.service.SecurityServiceManager.seal(Unknown Source)
at weblogic.security.service.SecurityServiceManager.getSealedSubjectFromWire(Unknown Source)
at weblogic.rjvm.MsgAbbrevInputStream.getSubject(MsgAbbrevInputStream.java:316)
at weblogic.rmi.internal.BasicServerRef.acceptRequest(BasicServerRef.java:850)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:314)
at weblogic.rmi.cluster.ClusterableServerRef.dispatch(ClusterableServerRef.java:236)
at weblogic.rjvm.RJVMImpl.dispatchRequest(RJVMImpl.java:1084)
at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:1001)
at weblogic.rjvm.ConnectionManagerServer.handleRJVM(ConnectionManagerServer.java:240)
at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:877)
at weblogic.rjvm.MsgAbbrevJVMConnection.dispatch(MsgAbbrevJVMConnection.java:446)
at weblogic.rjvm.t3.MuxableSocketT3.dispatch(MuxableSocketT3.java:368)
at weblogic.socket.AbstractMuxableSocket.dispatch(AbstractMuxableSocket.java:383)
at weblogic.socket.SocketMuxer.readReadySocketOnce(SocketMuxer.java:872)
at weblogic.socket.SocketMuxer.readReadySocket(SocketMuxer.java:818)
at weblogic.socket.DevPollSocketMuxer.processSockets(DevPollSocketMuxer.java:120)
at weblogic.socket.SocketReaderRequest.run(SocketReaderRequest.java:29)
at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:42)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:145)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:117) >Did some one get answer for this?
Please let me know. -
Viewing different user's constraints, triggers, synonyms etc.
I have a doubt as to how to view a different user's constraints, triggers, synonyms. If, we have to see a different user's tables, we use the syntax,
select * from username.table_name
provided we have select rights on that table of the user. Similarly, do we need view rights on the other user's indexes.
Please help in solving my doubt as i need it resolved urgently.do we need view rights on the other user's indexes.No, once the appropriate access to the concerned object has been granted, any indexes on that object (if appropriate) will automatically be used by the database.
Once you have access to the other users tables, the indexes on that table automatically are visible to you.
You could see the objects using ALL_OBJECTS or the ALL_INDEXES dictionary view. -
Import tables of types with different users schemas
In 9.2
I created two users: `live` and `world`
`live`> create type nam as object (txt varchar2) not final;
`system`> grant under any type to world;
`world`> create type nam_world under live.nam (txt2 varchar2);
and
create table nams of nam_world;
and new row
insert into nams values ('qwerty', 'ytrewq');
I build dump file:
exp system/manager FILE=live_world.dmp OWNER=live,world
All this successfully!!!
At another server (also 9.2) this export session terminated with errors:
(previously i created users live and world and 'grant under any type to world;')
imp SYSTEM/manager FILE=live_world.dmp FROMUSER=live,world TOUSER=live,world
Not help parameter IGNORE=Y
Not help parameter TOID_NOVALIDATE=(live.nam)
In any case: "Skipping table "WORLD"."NAMS" because object type "LIVE"."NAM" cannot be created or has different identifier"
General effect, what import simply not visible type live.nam,
but type live.nam is created successfully
How import object table of type at different user schema?
Please, help me.See:
What is the best way to manage multiple...: Apple Support Communities
How to use multiple iPods, iPads, or iPhones with one computer -
Trusted RFC not working for different user , working for same user
Dear All,
I have two SAP system - One Solman (7.0) and another ECC 6.0 (SR3) on HPUX box with Oracle DB (Unicode).
I want to establish Trust relationship between these system.
I have configured the same, as per the following link:
http://help.sap.com/saphelp_nw04/helpdata/en/8b/0010519daef443ab06d38d7ade26f4/content.htm
and note 128447.
My requirement is one user X in solman client 001,
will execute some test plan (Tcode stwb_2) which will take the control to ECC 6.0 client 200, execute the tcode as user Y and come back in Solman again.
The user X (SAP_ALL) exists in Solman - client 001 and user Y (SAP_ALL) exists in ECC 6.0 - client 200.
In ECC 6.0 client 200, I have created a role ZRFCACL with the following and assigned to the user Y (as per the above help / note):
Role : ZRFCACL
Auth. Obj: S_RFCACL
Value assigned to fields are:
RFC_SYSID : SOL
RFC_CLIENT: 001
RFC_USER : X
RFC_EQUSER: N
RFC_TCODE : *
RFC_INFO : *
ACTVT : 16
Whenever the user X is trying to execute the test from solman, he is getting the error : "No authorization to log on as trusted system (RC = 0)"
Each time the user is trying the above, in ECC 6.0, the following dump is occuring:
CALL_FUNCTION_SINGLE_LOGIN_REJ under username SAPSYS
I have assigned the role ZRFCACL to user X in Solman also.
Next, I have performed the following check:
created one user M in both system
created the role ZRFCACL2 in ECC 6.0 client 200 as follows and assigned the role to user M:
Role : ZRFCACL2
Auth. Obj: S_RFCACL
Value assigned to fields are:
RFC_SYSID : SOL
RFC_CLIENT: 001
RFC_USER : ''
RFC_EQUSER: Y
RFC_TCODE : *
RFC_INFO : *
ACTVT : 16
Assigned SAP_ALL to user M in both system (So the user M in Solman does not have ZRFCACL2).
This time, the trust relationship worked and no dump got generated.
I have also checked the thread Trusted RFC do not work
but unable to resolve the issue.
Any suggestion where the things are going wrong in this / what else I need to check or this is not possible at all?
Thanks in advance for your help.
SudipHi Valdecir,
Thanks for the reply. I am providing the detail of the generated dump below:
Please check in case any clue is there.
Runtime Errors CALL_FUNCTION_SINGLE_LOGIN_REJ
Date and Time 12.08.2008 18:59:32
Short text
No authorization to logon as trusted system (Trusted RC=0).
What happened?
Error in the ABAP Application Program
The current ABAP program "SAPMSSY1" had to be terminated because it has
come across a statement that unfortunately cannot be executed.
What can you do?
Note down which actions and inputs caused the error.
To process the problem further, contact you SAP system
administrator.
Using Transaction ST22 for ABAP Dump Analysis, you can look
at and manage termination messages, and you can also
keep them for a long time.
Error analysis
An RFC call (Remote Function Call) was sent with the invalid user ID "98819 "
. Or the calling system is not registered as trusted system in the
target system.
How to correct the error
The error code of the trusted system was 0.
Meaning:
0 Correct logon as trusted system mode
1 No trusted system entry for the calling system "SOL " or the
security key entry for the system "SOL " is invalid
2 User "98819 " does not have RFC authorization (authorization object
(S_RFCACL) for user "98819 " witl client 001.
3 The timestamp of the logon data is invalid
The error code of the SAP logon procedure was 1.
Meaning:
0 Login was correct
1 Wrong password or invalid user ID
2 Locked user
3 Too many attempted logons
5 Error in the authorization buffer (internal error)
6 No external user check
7 Invalid user type
System environment
SAP-Release 700
Application server... "gcbeccd"
Network address...... "10.10.4.158"
Operating system..... "HP-UX"
Release.............. "B.11.23"
Hardware type........ "ia64"
Character length.... 16 Bits
Pointer length....... 64 Bits
Work process number.. 1
Shortdump setting.... "full"
Database server... "gcbeccd"
Database type..... "ORACLE"
Database name..... "RD3"
Database user ID.. "SAPSR3"
Char.set.... "C"
SAP kernel....... 700
created (date)... "Apr 5 2008 00:55:24"
create on........ "HP-UX B.11.23 U ia64"
Database version. "OCI_102 (10.2.0.1.0) "
Patch level. 146
Patch text.. " "
Database............. "ORACLE 9.2.0.., ORACLE 10.1.0.., ORACLE 10.2.0.."
SAP database version. 700
Operating system..... "HP-UX B.11"
Memory consumption
Roll.... 16192
EM...... 4189840
Heap.... 0
Page.... 0
MM Used. 1194640
MM Free. 2992576
User and Transaction
Client.............. 000
User................ "SAPSYS"
Language Key........ "E"
Transaction......... " "
Transactions ID..... "489F2BD6C36D0F12E10000000A0A049E"
Program............. "SAPMSSY1"
Screen.............. "SAPMSSY1 3004"
Screen Line......... 2
Information on caller of Remote Function Call (RFC):
System.............. "SOL"
Database Release.... 700
Kernel Release...... 700
Connection Type..... 3 (2=R/2, 3=ABAP System, E=Ext., R=Reg. Ext.)
Call Type........... "synchron and non-transactional (emode 0, imode 0)"
Inbound TID.........." "
Inbound Queue Name..." "
Outbound TID........." "
Outbound Queue Name.." "
Client.............. 001
User................ 98819
Transaction......... "SMSY"
Call Program........."SAPLSRTT"
Function Module..... "SCCR_GET_RELEASE_NR"
Call Destination.... "SM_RD3CLNT200_TRUSTED"
Source Server....... "gcbsolm_SOL_00"
Source IP Address... "10.10.4.206"
Additional information on RFC logon:
Trusted Relationship "X"
Logon Return Code... 1
Trusted Return Code. 0
Note: For releases < 4.0, information on the RFC caller are often
only partially available.
Information on where terminated
Termination occurred in the ABAP program "SAPMSSY1" - in
"REMOTE_FUNCTION_CALL".
The main program was "SAPMSSY1 ".
In the source code you have the termination point in line 67
of the (Include) program "SAPMSSY1".
Source Code Extract
Line
SourceCde
37
endmodule.
38
39
module %_rfcdia_call output.
40
"Do not display screen !
41
call 'DY_INVISIBLE_SCREEN'.
42
perform remote_function_diacall.
43
endmodule.
44
45
module %_cpic_start.
46
if sy-xprog(4) = '%RFC'.
47
perform remote_function_call using rfctype_external_cpic.
48
else.
49
call 'APPC_HD' id 'HEADER' field header id 'CONVID' field convid.
50
perform cpic_call using convid.
51
endif.
52
endmodule.
53
54
55
form cpic_call using convid type c.
56
communication send id convid buffer header.
57
if sy-subrc eq 0.
58
perform (sy-xform) in program (sy-xprog).
59
else.
60
message a800.
61
endif.
62
endform.
63
64
form remote_function_call using value(type).
65
data rc type i value 0.
66
do.
>>>>>
call 'RfcImport' id 'Type' field type.
68
if sy-xprog = 'JAVA'.
69
system-call plugin
70
id 'JAVA' value 'FORW_JAVA'
71
id 'RC' value rc.
72
if there is no rollout on the JAVA side which
73
rolls both, JAVA and ABAP, we return to the
74
C-Stack and reach this point
75
76
in case there was an rollout, the ABAP-C stack is lost
77
and we jump direkt to this point
78
79
here we trigger the rollout on this Abap side with
80
the following statement
81
system-call plugin
82
id 'JAVA' value 'ROLL_OUT'
83
id 'RC' value rc.
84
else.
85
perform (sy-xform) in program (sy-xprog).
86
rsyn >scont sysc 00011111 0.
Contents of system fields
Name
Val.
SY-SUBRC
0
SY-INDEX
1
SY-TABIX
0
SY-DBCNT
1
SY-FDPOS
0
SY-LSIND
0
SY-PAGNO
0
SY-LINNO
1
SY-COLNO
1
SY-PFKEY
SY-UCOMM
SY-TITLE
CPIC and RFC Control
SY-MSGTY
SY-MSGID
SY-MSGNO
000
SY-MSGV1
SY-MSGV2
SY-MSGV3
SY-MSGV4
SY-MODNO
0
SY-DATUM
20080812
SY-UZEIT
185932
SY-XPROG
SAPRFCSL
SY-XFORM
READ_SINGLE_LOGIN_DATA
Active Calls/Events
No. Ty. Program Include Line
Name
2 FORM SAPMSSY1 SAPMSSY1 67
REMOTE_FUNCTION_CALL
1 MODULE (PBO) SAPMSSY1 SAPMSSY1 30
%_RFC_START
Chosen variables
Name
Val.
No. 2 Ty. FORM
Name REMOTE_FUNCTION_CALL
%_DUMMY$$
0000
0000
2222
0000
SY-REPID
SAPMSSY1
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5454555322222222222222222222222222222222
310D339100000000000000000000000000000000
SYST-REPID
SAPMSSY1
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5454555322222222222222222222222222222222
310D339100000000000000000000000000000000
HEADER
000000000000
000000000000
TYPE
3
0000
0003
SY-XPROG
SAPRFCSL
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5455445422222222222222222222222222222222
3102633C00000000000000000000000000000000
%_ARCHIVE
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
RC
0
0000
0000
SY-XFORM
READ_SINGLE_LOGIN_DATA
000000000000000000000000000000
000000000000000000000000000000
544455444445444445445422222222
2514F39E7C5FCF79EF414100000000
%_SPACE
0
0
2
0
No. 1 Ty. MODULE (PBO)
Name %_RFC_START
%_PRINT
000 0###
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2222333222222222222222222222222222222222222222222222222222222222222222222222222222222222223000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
RFCTYPE_INTERNAL
3
0000
0003
Internal notes
The termination was triggered in function "ab_xsignon"
of the SAP kernel, in line 2491 of the module
"//bas/700_REL/src/krn/rfc/absignon.c#9".
The internal operation just processed is "CALY".
Internal mode was started at 20080812185932.
Calling system.....: "SOL "
Caller.............: "98819 "
Calling client.....: 001
RFC user ID........: "98819 "
RFC client.........: 200
Trusted return code: 0
Logon return code..: 1
Transaction code...: "SMSY "
Active state.......: "-782823270"
Note: At releases < 4.0, the information for the caller is not
available.
Active Calls in SAP Kernel
Lines of C Stack in Kernel (Structure Differs on Each Platform)
(0) 0x4000000003b2b450 CTrcStack + 0x1b0 at dptstack.c:227 [dw.sapRD3_DVEBMGS00]
(1) 0x4000000004d2c470 Z16rabaxCStackSavev + 0x1d0 [dw.sapRD3_DVEBMGS00]
(2) 0x4000000004d32160 ab_rabax + 0x3570 [dw.sapRD3_DVEBMGS00]
(3) 0x4000000002b43cb0 SignOnDumpInfo + 0x280 at absignon.c:2491 [dw.sapRD3_DVEBMGS00]
(4) 0x4000000002b3f2f0 ab_xsignon + 0xb30 at absignon.c:876 [dw.sapRD3_DVEBMGS00]
(5) 0x4000000002aa4cb0 ab_rfcimport + 0x1ad0 at abrfcfun.c:3599 [dw.sapRD3_DVEBMGS00]
(6) 0x40000000040f4a80 Z8abjcalyv + 0x500 [dw.sapRD3_DVEBMGS00]
(7) 0x400000000402f190 Z8abextriv + 0x440 [dw.sapRD3_DVEBMGS00]
(8) 0x4000000003f538b0 Z9abxeventPKt + 0xb0 at abrunt1.c:281 [dw.sapRD3_DVEBMGS00]
(9) 0x4000000003f360a0 ab_dstep + 0x280 [dw.sapRD3_DVEBMGS00]
(10) 0x4000000001cb4600 dynpmcal + 0x900 at dymainstp.c:2399 [dw.sapRD3_DVEBMGS00]
(11) 0x4000000001cab0e0 dynppbo0 + 0x280 at dymainstp.c:540 [dw.sapRD3_DVEBMGS00]
(12) 0x4000000001cb1ec0 dynprctl + 0x340 at dymainstp.c:358 [dw.sapRD3_DVEBMGS00]
(13) 0x4000000001c9dff0 dynpen00 + 0xac0 at dymain.c:1628 [dw.sapRD3_DVEBMGS00]
(14) 0x4000000001fea460 Thdynpen00 + 0x510 at thxxhead.c:4830 [dw.sapRD3_DVEBMGS00]
(15) 0x4000000001fb4de0 TskhLoop + 0x4e20 at thxxhead.c:4518 [dw.sapRD3_DVEBMGS00]
(16) 0x4000000001faae40 ThStart + 0x460 at thxxhead.c:1164 [dw.sapRD3_DVEBMGS00]
(17) 0x4000000001569ec0 DpMain + 0x5f0 at dpxxdisp.c:1088 [dw.sapRD3_DVEBMGS00]
(18) 0x4000000002c10630 nlsui_main + 0x30 [dw.sapRD3_DVEBMGS00]
(19) 0x4000000002c105c0 main + 0x60 [dw.sapRD3_DVEBMGS00]
(20) 0xc00000000002be30 main_opd_entry + 0x50 [/usr/lib/hpux64/dld.so]
List of ABAP programs affected
Index
Typ
Program
Group
Date
Time
Size
Lang.
0
Prg
SAPMSSY1
0
11.04.2005
09:27:15
22528
E
1
Prg
SAPLSCCA
1
05.07.2005
13:10:18
52224
E
2
Prg
SAPRFCSL
0
13.02.2005
17:31:45
17408
E
3
Typ
RFCSYSACL
0
13.02.2005
17:31:45
7168
4
Typ
SYST
0
09.09.2004
14:18:12
31744
Directory of Application Tables
Name Date Time Lngth
Val.
Program SAPMSSY1
SYST . . : : 00004612
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x0001\0\0\0
Program SAPRFCSL
RFCSYSACL . . : : 00001760
SOL RD3
ABAP Control Blocks (CONT)
Index
Name
Fl
PAR0
PAR1
PAR2
PAR3
PAR4
PAR5
PAR6
Source Code
Line
116
CLEA
00
0035
SAPMSSY1
60
117
CLEA
00
0036
SAPMSSY1
60
118
CLEA
00
0037
SAPMSSY1
60
119
MESS
00
001C
SAPMSSY1
60
120
ENDF
00
0000
SAPMSSY1
62
121
00
0000
SAPMSSY1
62
122
PERP
00
0001
SAPMSSY1
64
123
PERP
02
0000
SAPMSSY1
64
124
WHIL
00
0002
0000
0000
0000
0000
0000
0000
SAPMSSY1
66
128
WHIL
00
0003
0000
0000
0000
0000
0000
0000
SAPMSSY1
66
132
BRAN
05
001E
SAPMSSY1
66
133
CALY
00
0003
0038
002A
0005
002B
0000
0000
SAPMSSY1
67
>>>>>
CALY
02
0000
0039
8000
0000
0000
0000
0000
SAPMSSY1
67
141
COMP
00
0002
0010
003A
SAPMSSY1
68
143
BRAF
02
000E
SAPMSSY1
68
144
SRFC
01
0000
003A
003B
SAPMSSY1
69
146
SRFC
01
0000
003C
C000
SAPMSSY1
69
148
SRFC
02
0000
0000
0000
SAPMSSY1
69
150
SRFC
01
0000
003A
003D
SAPMSSY1
81
152
SRFC
01
0000
003C
C000
SAPMSSY1
81
Thanks & Regards
Sudip -
How to resolve the error while using user defined function.
EPN Assembly file
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:osgi="http://www.springframework.org/schema/osgi"
xmlns:wlevs="http://www.bea.com/ns/wlevs/spring"
xmlns:jdbc="http://www.oracle.com/ns/ocep/jdbc"
xmlns:spatial="http://www.oracle.com/ns/ocep/spatial"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/osgi
http://www.springframework.org/schema/osgi/spring-osgi.xsd
http://www.bea.com/ns/wlevs/spring
http://www.bea.com/ns/wlevs/spring/spring-wlevs-v11_1_1_3.xsd
http://www.oracle.com/ns/ocep/jdbc
http://www.oracle.com/ns/ocep/jdbc/ocep-jdbc.xsd
http://www.oracle.com/ns/ocep/spatial
http://www.oracle.com/ns/ocep/spatial/ocep-spatial.xsd">
<wlevs:event-type-repository>
<wlevs:event-type type-name="TestEvent">
<wlevs:class>com.bea.wlevs.event.example.FunctionCEP.TestEvent</wlevs:class>
</wlevs:event-type>
</wlevs:event-type-repository>
<wlevs:adapter id="InputAdapter"
class="com.bea.wlevs.adapter.example.FunctionCEP.InputAdapter">
<wlevs:listener ref="inputStream" />
</wlevs:adapter>
<wlevs:channel id="inputStream" event-type="TestEvent">
<wlevs:listener ref="processor" />
</wlevs:channel>
<wlevs:processor id="processor">
<wlevs:listener ref="outputStream" />
<wlevs:function function-name="sum_fxn" exec-method="execute">
<bean>com.bea.wlevs.example.FunctionCEP.TestFunction</bean>
</wlevs:function>
</wlevs:processor>
<wlevs:channel id="outputStream" event-type="TestEvent">
<wlevs:listener ref="bean" />
</wlevs:channel>
<bean id="bean" class="com.bea.wlevs.example.FunctionCEP.OutputBean">
</bean>
</beans>
Event class
package com.bea.wlevs.event.example.FunctionCEP;
public class TestEvent {
private int num_1;
private int num_2;
private int sum_num;
public int getSum_num() {
return sum_num;
public void setSum_num(int sumNum) {
sum_num = sumNum;
public int getNum_1() {
return num_1;
public void setNum_1(int num_1) {
this.num_1 = num_1;
public int getNum_2() {
return num_2;
public void setNum_2(int num_2) {
this.num_2 = num_2;
Adapter class
package com.bea.wlevs.adapter.example.FunctionCEP;
import com.bea.wlevs.ede.api.RunnableBean;
import com.bea.wlevs.ede.api.StreamSender;
import com.bea.wlevs.ede.api.StreamSource;
import com.bea.wlevs.event.example.FunctionCEP.TestEvent;
public class InputAdapter implements RunnableBean, StreamSource {
private StreamSender eventSender;
public InputAdapter() {
super();
public void run() {
generateMessage();
private void generateMessage() {
TestEvent event = new TestEvent();
event.setNum_1(10);
event.setNum_2(20);
eventSender.sendInsertEvent(event);
public void setEventSender(StreamSender sender) {
eventSender = sender;
public synchronized void suspend() {
Output Bean class
package com.bea.wlevs.example.FunctionCEP;
import com.bea.wlevs.ede.api.StreamSink;
import com.bea.wlevs.event.example.FunctionCEP.TestEvent;
import com.bea.wlevs.util.Service;
public class OutputBean implements StreamSink {
public void onInsertEvent(Object event) {
System.out.println("In Output Bean");
TestEvent event1 = new TestEvent();
System.out.println("Num_1 is :: " + event1.getNum_1());
System.out.println("Num_2 is :: " +event1.getNum_2());
System.out.println("Sum of the numbers is :: " +event1.getSum_num());
Function Class
package com.bea.wlevs.example.FunctionCEP;
public class TestFunction {
public Object execute(int num_1, int num_2)
return (num_1 + num_2);
config.xml file
<?xml version="1.0" encoding="UTF-8"?>
<wlevs:config xmlns:wlevs="http://www.bea.com/ns/wlevs/config/application"
xmlns:jdbc="http://www.oracle.com/ns/ocep/config/jdbc">
<processor>
<name>processor</name>
<rules>
<view id="v1" schema="num_1 num_2">
<![CDATA[
select num_1, num_2 from inputStream
]]>
</view>
<view id="v2" schema="num_1 num_2">
<![CDATA[
select sum_fxn(num_1,num_2), num_2 from inputStream // I am getting error when i am trying to call this function
]]>
</view>
<query id="q1">
<![CDATA[
select from v2[now] as num_2* // Showing error while accessing the view also ]]>
</query>
</rules>
</processor>
</wlevs:config>
Error I am getting is :
Invalid statement: "select >>sum_fxn<<(num_1,num_2),age from inputStream"
Description: Invalid call to function or constructor: sum_fxn
Cause: Probable causes are: Function name sum_fxn(int,int) provided is invalid, or arguments are of
the wrong type., or Error while handling member access to complex type. Constructor sum_fxn of type
sum_fxn not found. or Probable causes are: Function name sum_fxn(int,int) provided is invalid, or
arguments are of the wrong type., or Error while handling member access to complex type.
Constructor sum_fxn of type sum_fxn not found.
Action: Verify function or constructor for complex type exists, is not ambiguous, and has the correct
number of parameters.
I have made a user defined function in a java class and configured this function in the EPN assembly file under the processor tag.
But when i am trying to access the function in the config.xml file , it is giving me an error in the query.
Please provide urgent help that how to write the exact query.Hi,
In the EPN Assembly file use
<bean class="com.bea.wlevs.example.FunctionCEP.TestFunction"/>
instead of
<bean>com.bea.wlevs.example.FunctionCEP.TestFunction</bean>
Best Regards,
Sandeep -
IN BACKGROUND TASK as a different user ID
Hi experts,
I am performing a FM IN BACKGROUND TASK call in a BADI to automate creation of GR.
Example:
Step 1. User ABC performs GR for plant 0001.
Step 2. BADI checks and automates another GR for plant 0002.
The problem is user ABC only has authorization for plant 0001.
During step 2, the BAPI returns an error saying that there is no authorization for plant 0002 as the BADI is triggered by user ABC.
I am using FM BAPI_GOODSMVT_CREATE. I tried to pass in an ID with SAP_ALL to the PR_UNAME field to indicate this ID as the creator of the GR, but the authorization check still exists.
Is there anyway I can force this background task to be executed by another ID instead of the triggering ID?
Thanks in advance.Make sure to discuss this with the security team...
The RFC destination you specify in your [call function - in background task|http://help.sap.com/abapdocu_70/en/ABAPCALL_FUNCTION_BACKGROUND_TASK.htm] can be used to specify a different user. Check for example the logical workflow destinations in transaction SM59...
Cheers, harald
Maybe you are looking for
-
How do I "Install OS 9 System Support"on my iMac G5?
I have read most of the posts discussing this topic but none of them appear to answer my problem. My iMacG5 is running OS X 10.4.9. Classic 1.1 is listed in the system library. When I attempted to open Classic by clicking on an OS 9 application I got
-
How to get a list of tables in an application
In version 6.0 I could do a simple join on views CI_TABLE_DEFINITIONS and CI_APPLICATION_SYSTEMS to get a list of table names given the name of the application system. The requisite columns to perform the join aren't there anymore in version 6i. How
-
Hopelessly stuck in "Recovery Mode"
Howdy y'all, Got a question which may or may not be able to be resolved here, but looking for some advice: iphone 5c, iOS 8.1.2..... iTunes, v 12.0.1.26 (newest) Friday night, went to bed, forgot to plug phone in When plugged into wall, Saturday a.m.
-
Dreamweaver and Photoshop files
I just purchased Dreamweaver. Is there a way to import Photoshop layered files into Dreamweaver and have the layers remain editable as could be done in GoLive??
-
If the database is shutdown when the applcation is running what is happened
I am using coneection pool to connect database. If the database is shutdown when the applcation is running what is happened? and how the database will be reconnected. I am using MySQL 3.23.52, Tomcat 4.1.12