OPS$, Schema Owner and dbs_ora_schema env variable.
HI All.
Have a situation where we've copied a system from one location to another using an online backup. The database is up and running (open) and lookin good.
However, when I goto start SAP, I get a ORA-1403 and ORA-1017 error on startup. As best as I can tell, the OPS$ mechanism created for the base system (before the online restore) is using SAPSID as the owner. However, the schema owner from the database we used for the recovery is SAPR3.
Now when the system goes to logon, OPS$ is looking to fetch SAPSID as the schema owner, but the effective schema owner is SAPR3. Rerunning the oradbusr. sql script as per note 361641 does not change anything.
<b>Issue is related to the environment variable "dbs_ora_schema" - it is currently set to SAPSID, but I need to change it to SAPR3. Can someone offer the proper syntax to change this value in AIX 5.3?</b>
Thanks,
Tim
Thanks!!
Message was edited by:
Tim Hild
Hello Tim,
What i apprehend is that the SAP<SCHEMA-ID> or the password for the same has changed. When u have copied the db of another SID the SAP<SCHEMA-ID> will be according to the earlier SID so it may required to be renamed as per the new SID and so also the naming services might have changed for which the listner may not work properly. Try to rename the SAP<SCHEMA-ID> and reset the password via brtools. The SQL wont work in case of changing the password of SAP<SCHEMA-ID> . First do it from SQL then reset the password again using Brtools.
Comparing tns.ora and listnr.ora files of both the systems will give u a fair idea on the prob.
In the sap server run BRTOLS from cmd prompt then proceed as follows
Brtools----->Choose Additional Functions--->Choose Change Password of DB user
Enter choice 2(Database User/Password)
In user prompt give sapc11 and in password prompt put the password u had changed earlier ie abc123.
Then enter c (for continue) u will be prompted for the new password
When u put the new password it wont be displayed in the prompt just type
Complete the entire guided process.
Hope this resolves your prob.
Regards.
Similar Messages
-
Locking Schema Owner account in oracle
Hi
One of the oracle security policy recommendations is to lock the owning schema in the database. To overcome this issue I suggested to the developer that I can create a new access account with permissions to select ,insert,delete and update data on owning schema. But the developer is insisting that instead of creating that new account, should transfer the objects of the schema owner account to a new account and unlock the schema owner account this way he does not have to make changes to the application on his side...this did not make sense to me ,can some one please shed some light on this?>
sorry , I meant that when we lock the schema owner ,connecting to the database with that account is denied. What I suggested is to create an access account with SUID priviliges on owning schema data. But the developer insists that I create a new account transfer the objects/data from schema owner to this new account and then unlock the schema owner account. This way he will not have to make changes on the application side,I was not entirely sure how it will benefit him by doing so
>
You still haven't stated what the actual issue is you are trying to address.
From the first post is seemed that your question was 'How can we implement the Oracle security recommendation to lock the application account without actually locking the application account'?
And your proposed solution is to create another account with exactly the same privileges as the schema owner and use that account instead.
That doesn't implement the recommendation. That is an attempt to circumvent the recommendation.
My advice is that if you don't want to actually implement Oracle's recommendation then don't implement it.
And if you do want to implement the recommendation then do so. But none of the options you are suggesting implement it they only circumvent it.
>
One of the oracle security policy recommendations is to lock the owning schema in the database
>
What is the citation for this statement? What reason was given for the recommendation?
One primary reason for using application users (rather than schema users) is to exert positive control over the functionality and data that the application has access to.
A schema owner has access to all objects owned by the schema. Applications typically don't need all of those privileges. A schema owner can create new objects and modify existing objects; applications seldom need to be able to do that.
Within a stored procedure a schema owner still has access to all of the schemas objects but other users/applications only have access granted directly to them and do not have access to objects granted only thru roles.
To properly implement the recommendation you need to create an application user and grant that user the roles and direct grants that are needed for the functionality and data that needs to be accessed. The result is two users: one has full access to the schema objects and the other has limited access. Application code should use the limited user credentials.
What you call the users is up to you. If you want to switch roles and make your current user the limited user and create a new user for the objects and move them all to the new schema go ahead.
But that is a lot of work and validation for you to have to do. The only change a developer should have to make to use a different user is to change the connection information. That should be very simple to do and if it is not it needs to be changed to make it simple.
Based only on the information you have provided it sounds like the developer is just lazy and wants you to have to do all of the work. So the developer needs to make their case as to why they can't just change connection settings and then management can make a decision about which method should be used.
Your work should be to create a new application account that specifically is NOT simply an account superuser but is only granted, either directly or via roles, the specific privileges that the application actually needs. My guess would be that no one actually knows or has documented what privileges are really needed so they just want them all.
The best contribution you could make for security is to resist the super user approach and actuallly push for documentation of the privileges needed and then implement those.
Management and auditors must ALWAYS be able to control and determine who is actually using their data.
I would suggest that you create a new user account account -
I have a user I'm trying to remove, but it's the owner of some objects. I'm assuming it's the schema owner and thus I'll need to assign the schema to a different user, but I'm not sure how to query the schema owners. Thanks in advance!
select * from dba_obejects where owner=<username>; yu will get the objects it ownes, you can take export and import into new user.. then drop old one.
--Girish -
Database restore with same SID and different schema owner
Dear all,
I have quality system on HP-UX oracle platform which has been upgraded from 4.6C to ECC 5.0
and schema owner for the database is still SAPR3
I have installed new Test system with version ECC 5.0 with same SID and now i need to refresh its database with Data from QAS system ... owner at Test system is SAPC11 which is new installation ECC 5.0 and where SID is C11.
I need to know once i restore data what steps i need to carry out at Test system
i.e like change ENV settings from SAPC11 to SAPR3.
Please note SID is same on both hosts. and owner is different SAPR3 and SAPC11
Regards,
RRDear all ,
Thanks for your views . but i have already installed ECC 5.0 on
target machine with schema owner as default SAPC11 (sid)
Is there any other way out ... instead of doing reinstallation with schema owner SAPR3 / instead of doing Export-Import system copy method which again is as good as reinstallation.
I would like to have your views on following ,
when i will restore database from source to taget
al tables in target machine will be having owner as SAPR3 ( which came from source ) ...but my DB owner at Target machine is SAPC11 ( as far as ENV and all profiles are concerned ) .... cant i use SAPR3 user which got restored with backup of source to target to start my instance at Target machine... may be by changing ENV settings.
I really appreciate and thank you in adavance for sharing your views.
Regards,
RR -
Do I need to set system env variables for weblogic and SOA server installation?
Hi All,
I already have two weblogic application servers on my machine(that were installed by others).
I observed some environment variables were also set in System variables(ORACLE_HOME,WEB_SERVER_HOME etc) section in Env variables section(Start Menu---> Computer --> properties ---).But why do we need to have system environment variables wherein we already have those variables in files like setDomainEnv.bat or/and setSOADoaminEnv.bat for each server.
And one more thing system variables will be applicable for all servers(the whole machine) right.It may spoil the installation of new servers and present servers as variables should be unique to each server.
I want to install weblogic and SOA server installation.
So Can I remove the existing system variables(as they will applicable for every server) and install weblogic and SOA server installation without setting up the environment variables?
Especially I have multiple Weblogic servers,In that case how it would be to have environment variables(JAVA_HOME,WL_HOME,ORACLE_HOME etc)?
Please guide me on this to installl SOA suite .
Thanks in advanceHi All,
I already have two weblogic application servers on my machine(that were installed by others).
I observed some environment variables were also set in System variables(ORACLE_HOME,WEB_SERVER_HOME etc) section in Env variables section(Start Menu---> Computer --> properties ---).But why do we need to have system environment variables wherein we already have those variables in files like setDomainEnv.bat or/and setSOADoaminEnv.bat for each server.
And one more thing system variables will be applicable for all servers(the whole machine) right.It may spoil the installation of new servers and present servers as variables should be unique to each server.
I want to install weblogic and SOA server installation.
So Can I remove the existing system variables(as they will applicable for every server) and install weblogic and SOA server installation without setting up the environment variables?
Especially I have multiple Weblogic servers,In that case how it would be to have environment variables(JAVA_HOME,WL_HOME,ORACLE_HOME etc)?
Please guide me on this to installl SOA suite .
Thanks in advance -
Owner of schema SYS_REPL and table RS_REPLICATION_COMPONENTS
Hello Tobias,
in your SLT guides is stated that the schema SYS_REPL gets created during the first use of SLT.
You recommend to use the user SYSTEM or another user with similar privileges for the initial creation.
Since i'm about to implement a proper auth.concept I just came over the database owner concept.
Which means, if i use a non-technical user to create the schema SYS_REPL the schema belongs to that user and
will be deleted as soon as the user is deleted from the DB.
I'm wondering why the Schema SYS_REPL and table RS_REPLICATION_COMPONENTS aren't created as
repository object, which is owned by _SYS_REPO after activation and could be transported in a delivery unit?
Why is this way not used by SAP?
Thanks for your feedback
JohannesAs regards the Numbers in Type column , i have posted this to Db forum....:
Number in column Type in view Dba_ddl_locks...
I'll be glad if you provide me with an answer.....
Thanks......
Sim -
Upgrade failed at SQLSCREXE_ALI_ORG Shadow schema owner cannot logon
I am upgrade BW3.5 to BI 7.00.
I have finished PREPARE and running Uograde now. It failed at Shadow System Installation at phase SQLSCREXE_ALI_ORG. The phase is running a SQL script creating synonyms using tp.
It produce a log TPSQLSTD.OUT as follows:
(The phase SQLSCREXE_GRA_ORG is just above the failed phase using the same logic to executing script)
BLOCKED SIGNALS: ''
SAPup> Starting subprocess 7896 at 20080730211406
ENV <0xffbffbf2>: PATH=/oracle/BWS/102_64/bin:/usr/java/bin:/export/home/bwsadm:/usr/sap/BWS/SYS/exe/run:/usr/bin:.:/usr/ccs/bin:/usr/ucb
ENV <0x9039a4>: DIR_LIBRARY=/oracle/BWS/sapdata/put/exe
ENV <0x903da4>: LD_LIBRARY_PATH=/oracle/BWS/sapdata/put/exe:/usr/j2se/jre/lib/sparc/client:/usr/j2se/jre/lib/sparc:/usr/j2se/jre/../lib/sparc:
/usr/sap/BWS/SYS/exe/run
ENV <0xffbffde5>: dbms_type=ORA
ENV <0xffbffdf3>: dbs_ora_tnsname=BWS
ENV <0x8fd6bc>: dbs_ora_schema=SAPBWD
ENV <0xffbffe1d>: ORACLE_PSRV=BWS
ENV <0xffbffe2d>: ORACLE_SID=BWS
ENV <0xffbffe47>: ORACLE_HOME=/oracle/BWS/102_64
ENV <0xffbffe66>: ORACLE_BASE=/oracle
ENV <0xffbffe7a>: ORA_NLS33=/oracle/client/92x_64/ocommon/nls/admin/data
ENV <0xffbffeb1>: ORA_NLS10=/oracle/BWS/102_64/nls/data
ENV <0xffbffed7>: NLS_LANG=AMERICAN_AMERICA.WE8DEC
ENV <0x8fd2bc>: auth_shadow_upgrade=1
EXECUTING /oracle/BWS/sapdata/put/exe/tp (tp) pf=/oracle/BWS/sapdata/put/bin/EXDBNEW.TPP execdbscript BWS -x ALORDC.XQL
This is /oracle/BWS/sapdata/put/exe/tp version 372.04.08 (release 700)
ERROR: Connect to BWS failed (20080730211407, probably wrong environment).
Warning: Parameter INTERRUPT is no longer used.
Warning: Parameter DAYLIGHT_SHUTDOWN is no longer used.
Warning: Parameter WITH_TACOB is no longer used.
Warning: Parameter IMPDP_BY_EVENT is no longer used.
Warning: Parameter INTERRUPT is no longer used.
Warning: Parameter DAYLIGHT_SHUTDOWN is no longer used.
Warning: Parameter WITH_TACOB is no longer used.
Warning: Parameter IMPDP_BY_EVENT is no longer used.
Warning: Parameter DBCONFPATH is no longer used.
TRACE-INFO: 1: [dev trc ,00000] Wed Jul 30 21:14:06 2008 85192 0.085192
TRACE-INFO: 2: [dev trc ,00000] load shared library (/oracle/BWS/sapdata/put/exe/dboraslib.so), hdl 0
TRACE-INFO: 3: 36 0.085228
TRACE-INFO: 4: [dev trc ,00000] Oracle Client Version: '10.2.0.2.0' 3011 0.088239
TRACE-INFO: 5: [dev trc ,00000] -->oci_initialize (con_hdl=0) 49 0.088288
TRACE-INFO: 6: [dev trc ,00000] Client NLS settings: AMERICAN_AMERICA.WE8DEC 15639 0.103927
TRACE-INFO: 7: [dev trc ,00000] Logon as OPS$-user to get SAPBWDSHD's password 83 0.258141
TRACE-INFO: 8: [dev trc ,00000] Connecting as /@BWS on connection 0 (nls_hdl 0) ... (dbsl 700 250407)
TRACE-INFO: 9: 44 0.258185
TRACE-INFO: 10: [dev trc ,00000] Nls CharacterSet NationalCharSet C EnvHp ErrHp ErrHpBatch
TRACE-INFO: 11: 50 0.258235
TRACE-INFO: 12: [dev trc ,00000] 0 WE8DEC 1 101497e98 10149f918 1014a32b0
TRACE-INFO: 13: 28 0.258263
TRACE-INFO: 14: [dev trc ,00000] Allocating service context handle for con_hdl=0 183 0.258446
TRACE-INFO: 15: [dev trc ,00000] Allocating server context handle 35 0.258481
TRACE-INFO: 16: [dev trc ,00000] Attaching to DB Server BWS (con_hdl=0,svchp=1014a31e0,srvhp=1014a5580)
TRACE-INFO: 17: 265 0.258746
TRACE-INFO: 18: [dev trc ,00000] Assigning server context 1014a5580 to service context 1014a31e0
TRACE-INFO: 19: 154629 0.413375
TRACE-INFO: 20: [dev trc ,00000] Allocating user session handle 153 0.413528
TRACE-INFO: 21: [dev trc ,00000] Starting user session (con_hdl=0,svchp=1014a31e0,srvhp=1014a5580,usrhp=1014a0130)
TRACE-INFO: 22: 53 0.413581
TRACE-INFO: 23: [dev trc ,00000] Assigning user session 1014a0130 to service context 1014a31e0
TRACE-INFO: 24: 38363 0.451944
TRACE-INFO: 25: [dev trc ,00000] BEGIN DBMS_APPLICATION_INFO.SET_MODULE (:A0, :A1); END;
TRACE-INFO: 26: 208 0.452152
TRACE-INFO: 27: [dev trc ,00000] BEGIN DBMS_APPLICATION_INFO.SET_CLIENT_INFO (:A0); END;
TRACE-INFO: 28: 427 0.452579
TRACE-INFO: 29: [dev trc ,00000] Now '/@BWS' is connected (con_hdl 0, nls_hdl 0). 3592 0.456171
TRACE-INFO: 30: [dev trc ,00000] ALTER SESSION SET NLS_SORT = BINARY
TRACE-INFO: 31: 51 0.456222
TRACE-INFO: 32: [dev trc ,00000] SELECT USERID, PASSWD FROM SAPUSER WHERE USERID IN (:A0, :A1)
TRACE-INFO: 33: 1010 0.457232
TRACE-INFO: 34: [dbsloci. ,00000] *** ERROR => ORA-1403 when accessing table SAPUSER 1832 0.459064
TRACE-INFO: 35: [dev trc ,00000] set_ocica() -> OCI or SQL return code 1403 69 0.459133
TRACE-INFO: 36: [dev trc ,00000] Disconnecting from connection 0 ... 116 0.459249
TRACE-INFO: 37: [dev trc ,00000] Rolling back transaction ... 98 0.459347
TRACE-INFO: 38: [dev trc ,00000] Closing user session (con_hdl=0,svchp=1014a31e0,usrhp=1014a0130)
TRACE-INFO: 39: 482 0.459829
TRACE-INFO: 40: [dev trc ,00000] Now I'm disconnected from ORACLE 3043 0.462872
TRACE-INFO: 41: [dev trc ,00000] Try to connect with default password 21 0.462893
TRACE-INFO: 42: [dev trc ,00000] Connecting as SAPBWDSHD/<pwd>@BWS on connection 0 (nls_hdl 0) ... (dbsl 700 250407)
TRACE-INFO: 43: 26 0.462919
TRACE-INFO: 44: [dev trc ,00000] Nls CharacterSet NationalCharSet C EnvHp ErrHp ErrHpBatch
TRACE-INFO: 45: 26 0.462945
TRACE-INFO: 46: [dev trc ,00000] 0 WE8DEC 1 101497e98 10149f918 1014a32b0
TRACE-INFO: 47: 26 0.462971
TRACE-INFO: 48: [dev trc ,00000] Assigning username to user session 1014a0130 19 0.462990
TRACE-INFO: 49: [dev trc ,00000] Assigning password to user session 1014a0130 28 0.463018
TRACE-INFO: 50: [dev trc ,00000] Starting user session (con_hdl=0,svchp=1014a31e0,srvhp=1014a5580,usrhp=1014a0130)
TRACE-INFO: 51: 27 0.463045
TRACE-INFO: 52: [dboci.c ,00000] *** ERROR => OCI-call 'OCISessionBegin' failed with rc=1017
TRACE-INFO: 53: 55819 0.518864
TRACE-INFO: 54: [dbsloci. ,00000] *** ERROR => CONNECT failed with sql error '1017' 28 0.518892
TRACE-INFO: 55: [dev trc ,00000] set_ocica() -> OCI or SQL return code 1017 19 0.518911
TRACE-INFO: 56: [dblink ,00431] ***LOG BY2=>sql error 1017 performing CON [dblink#5 @ 431]
TRACE-INFO: 57: 246 0.519157
TRACE-INFO: 58: [dblink ,00431] ***LOG BY0=>ORA-01017: invalid username/password; logon denied [dblink#5 @ 431]
TRACE-INFO: 59: 26 0.519183
tp returncode summary:
TOOLS: Highest return code of single steps was: 0
ERRORS: Highest tp internal error was: 0232
tp finished with return code: 232
meaning:
connect failed
Process with ID 3514 terminated with status 232
Thanks so much
Feng QiCheck that the schema of your database (ex: select owner from dba_tables where table_name='T000';) really
match the dbs_ora_schema environment variable (you might change dbs_ora_schema=SAPBWD to the real schema of your DB).
then check
su - <sid>adm
R3trans -d
it should return code 0 -
DBS_ORA_SCHEMA environment variable?
Hi Gurus,
I am doing a refresh from Production (P01) to Development (D01). I am having problem to start SAP in D01. I have run the OPS$ script but still unsuccessful. Based on note 534765, it advice to change environment dbs_ora_schema to SAP<SID>.
Below are my system details :
Production : SID (P01), dbs_ora_schema = SAPR3
Development : SID (D01), dbs_ora_schema = SAPSR3
Should I update dbs_ora_schema for D01 similar to P01 or should I update it to SAPP01.
Anyone have ideas on this?
Thanks,
Intan AzirPerform the following check via sqlplus in D01:
select username from dba_users;
If your refresh was done as described you should see the schema owner SAPR3 from P01.
In that case you need to adapt your environment variables in order to use the correct schema user.
Kind regards, -
SELECT on XML DB Table works for Schema owner, not for Schema user
Hi,
We are working on Oracle 10.2.0.3 under HP-UX.
We get ORA-01031: Insufficient Privileges when trying to execute Query
on Oracle XMLDB Table by Schema User
Here are detailed steps:
1) We have 2 users: CDROWNER (Schema Owner)
CDRJAVA (Schema User)
2) login as CDROWNER and execute following:
3) Register 2 XSDs (Common is used by CorridorRate)
Common.xsd:
<?xml version="1.0" encoding="utf-8"?>
<!-- edited with XMLSpy v2008 sp1 (http://www.altova.com) by Kent Williamson (OOCL (USA) INC) -->
<xsd:schema xmlns="http://com.oocl.schema.tnm.agreementbuilder" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:tnm="http://com.oocl.schema.tnm" xmlns:common="http://com.oocl.schema.common" xmlns:fwd="http://com.oocl.frm.common.date.dto/" xmlns:customer="http://com.oocl.schema.customer" xmlns:eqm="http://com.oocl.schema.eqm" targetNamespace="http://com.oocl.schema.tnm.agreementbuilder" elementFormDefault="qualified" attributeFormDefault="unqualified" xdb:storeVarrayAsTable="true">
<xsd:complexType name="NamedCustomer_V1" xdb:SQLType="NAMED_CUSTOMER_T">
<xsd:annotation>
<xsd:documentation>Named customer for the quote</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="SAP_IDS" type="SAPIDCollection_V1" minOccurs="0" xdb:SQLName="SAP_IDS">
<xsd:annotation>
<xsd:documentation xml:lang="en">
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="BookingConditions" type="xsd:string" minOccurs="0" xdb:SQLName="BOOKING_CONDITIONS"/>
<xsd:element name="BLConditions" type="xsd:int" xdb:SQLName="BL_CONDITIONS"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Attachment_V1" xdb:SQLType="ATTACHMENT_T">
<xsd:annotation>
<xsd:documentation>Quote attachment</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="Url" type="xsd:string" minOccurs="0" xdb:SQLName="ATTACH_URL"/>
<xsd:element name="Text" type="xsd:string" minOccurs="0" xdb:SQLName="ATTACH_TEXT"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SentOfferingRecord_V1" xdb:SQLType="SENT_OFFERING_RECORD_T">
<xsd:annotation>
<xsd:documentation>Record of quote sending out to customer</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="TimeSent" type="xsd:string" minOccurs="0" xdb:SQLName="TIME_SENT"/>
<xsd:element name="UserName" type="xsd:string" minOccurs="0" xdb:SQLName="USER_NAME"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="QuoteFormatSettings_V1" xdb:SQLType="QUOTE_FMT_SETTINGS_T">
<xsd:annotation>
<xsd:documentation>Quote format setting specification</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="TemplateName" type="xsd:string" minOccurs="0" xdb:SQLName="TEMPLATE_NAME">
<xsd:annotation>
<xsd:documentation>predefined format template</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="OptionalContentIDs" type="StringWrapper_V1" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="OPTIONAL_CONTENTS" xdb:SQLCollType="OPTIONAL_CONTENT_V">
<xsd:annotation>
<xsd:documentation>optional contents</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="StandardRemarkIDs" type="IDWrapper_V1" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="STANDARD_REMARKS" xdb:SQLCollType="STANDARD_REMARK_V">
<xsd:annotation>
<xsd:documentation>standard remarks specified by each region/office</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="StandardDisclaimerID" type="ID_LongNumeric_V1" minOccurs="0" xdb:SQLName="STANDARD_DISCLAIMER">
<xsd:annotation>
<xsd:documentation>standard disclaimer specified by each region/office</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="ShowSurcharges" type="ShowSurchargeType_V1" xdb:SQLName="SHOW_SURCHARGES">
<xsd:annotation>
<xsd:documentation>specifies how surcharges are shown in the offering document, can be show prepaid only, collect only or all</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="SurchargeCode_V1">
<xsd:restriction base="xsd:string"/>
</xsd:simpleType>
<xsd:simpleType name="ShowSurchargeType_V1">
<xsd:annotation>
<xsd:documentation>Indicator for quote to show prepaid, collect or all surcharges</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Prepaid"/>
<xsd:enumeration value="Collect"/>
<xsd:enumeration value="All"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="StandardRemarkAndDisclaimer_V1" xdb:SQLType="STD_REMARK_AND_DISCLAIMER_T">
<xsd:annotation>
<xsd:documentation>Region specific standard remark and disclaimer</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="Id" type="xsd:string" minOccurs="0" xdb:SQLName="STD_REMARK_ID"/>
<xsd:element name="Region" type="xsd:string" minOccurs="0" xdb:SQLName="STD_REMARK_REGION"/>
<xsd:element name="IsRemark" type="xsd:boolean" xdb:SQLName="IS_REMARK"/>
</xsd:sequence>
</xsd:complexType>
<!-- END Jianming Original XSD -->
<!-- -->
<!-- All Simple/Complex Types defined below have been copied from External XSD Files -->
<!-- -->
<!-- Complex Wrapper types are needed since 10.2 Oracle XMLDB does not support indexing unbounded simple types -->
<xsd:complexType name="GeoIDCollection_V1" xdb:SQLType="GEO_ID_COLLECTION_T">
<xsd:sequence>
<xsd:element name="IDWrappers" type="IDWrapper_V1" maxOccurs="unbounded" xdb:SQLName="GEO_ID_WRAPPERS" xdb:SQLCollType="GEO_ID_WRAPPER_V"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="IDWrapper_V1" xdb:SQLType="ID_WRAPPER_T">
<xsd:sequence>
<xsd:element name="Value" type="ID_LongNumeric_V1" xdb:SQLName="ID_VAL"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="OfficeCodeCollection_V1" xdb:SQLType="OFFICE_CODE_COLLECTION_T">
<xsd:sequence>
<xsd:element name="StringWrappers" type="StringWrapper_V1" maxOccurs="unbounded" xdb:SQLName="STRING_WRAPPERS" xdb:SQLCollType="OFFICE_CODE_V"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SAPIDCollection_V1" xdb:SQLType="SAP_ID_COLLECTION_T">
<xsd:sequence>
<xsd:element name="StringWrappers" type="StringWrapper_V1" maxOccurs="unbounded" xdb:SQLName="STRING_WRAPPERS" xdb:SQLCollType="SAP_ID_V"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ServiceLoopCodeCollection_V1" xdb:SQLType="SERVICE_LOOP_CODE_COLLECTION_T">
<xsd:sequence>
<xsd:element name="StringWrappers" type="StringWrapper_V1" maxOccurs="unbounded" xdb:SQLName="STRING_WRAPPERS" xdb:SQLCollType="SERVICE_LOOP_CODE_V"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="IncludedHSCodeCollection_V1" xdb:SQLType="INCLUDED_HS_CODE_COLLECTION_T">
<xsd:sequence>
<xsd:element name="StringWrappers" type="StringWrapper_V1" maxOccurs="unbounded" xdb:SQLName="STRING_WRAPPERS" xdb:SQLCollType="INCLUDED_HS_CODE_V"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="StringWrapper_V1" xdb:SQLType="STRING_WRAPPER_T">
<xsd:sequence>
<xsd:element name="Value" xdb:SQLName="STR_VAL">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="256"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!-- Below copied from tnm.agreementbuilder:GuidelineRateReference_V1.xsd -->
<xsd:complexType name="GuidelineRateReference_V1">
<xsd:annotation>
<xsd:documentation>Represents a guideline rate containing an ocean rate and up to 4 inland/port arbitrary add-on rates</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="OutboundInlandRate1ID" type="ID_LongNumeric_V1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>The first outbound inland rate. If present, the location of this rate is always the point of receipt. Otherwise the point of receipt is (one of) the Trunk origin(s). The over location must match with either OB2 Location or Trunk Origin (if OB2 is not present)</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="OutboundInlandRate2ID" type="ID_LongNumeric_V1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>An optional outbound inland rate. If present, the location must match with the over location of OB1 and the over location of this rate must match with the origin of the Trunk.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="BaseRateID" type="ID_LongNumeric_V1">
<xsd:annotation>
<xsd:documentation>The BaseRate = trunk / ocean rate.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="InboundInlandRate1ID" type="ID_LongNumeric_V1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>The inbound rate connecting to the destination of the trunk. If there is only one inbound rate (IB2 is not present), then this rate will have the final destination. </xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="InboundInlandRate2ID" type="ID_LongNumeric_V1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>A second inbound rate which connects to the first inbound rate to arrive at a final destination.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!-- Below copied from tnm:AgreementID_V1.xsd -->
<xsd:simpleType name="AgreementID_V1">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20"/>
</xsd:restriction>
</xsd:simpleType>
<!-- Below copied from tnm:AgreementStatus_V1.xsd -->
<xsd:simpleType name="AgreementStatus_V1">
<xsd:annotation>
<xsd:documentation>Agreement Status, like filed, approve, terminated, amend</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20"/>
<xsd:enumeration value="File"/>
<xsd:enumeration value="Filed"/>
<xsd:enumeration value="Approve"/>
<xsd:enumeration value="Terminated"/>
<xsd:enumeration value="New"/>
<xsd:enumeration value="Incomplete"/>
<xsd:enumeration value="Amend"/>
</xsd:restriction>
</xsd:simpleType>
<!-- Below copied from tnm:AgreementType_V1.xsd -->
<xsd:simpleType name="AgreementType_V1">
<xsd:annotation>
<xsd:documentation>Agreement type, like CSO, SC, AB</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3"/>
<xsd:enumeration value="CSO">
<xsd:annotation>
<xsd:documentation>Customized Service Offering</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="RA">
<xsd:annotation>
<xsd:documentation>Rate Agreement</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="SVC">
<xsd:annotation>
<xsd:documentation>Service Agreement</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="SUR">
<xsd:annotation>
<xsd:documentation>Surcharge Agreement</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="SC">
<xsd:annotation>
<xsd:documentation>Service Contract</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="TSO">
<xsd:annotation>
<xsd:documentation>Territorial Customized Service Offering</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="TSA">
<xsd:annotation>
<xsd:documentation>Territorial Service Agreement</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="AB">
<xsd:annotation>
<xsd:documentation>Agreement Builder</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
</xsd:restriction>
</xsd:simpleType>
<!-- Below copied from tnm:TradeTerm_V1.xsd -->
<xsd:simpleType name="TradeTerm_V1">
<xsd:annotation>
<xsd:documentation>Trade term</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
<xsd:enumeration value="FOB"/>
<xsd:enumeration value="CIF"/>
</xsd:restriction>
</xsd:simpleType>
<!-- MODIFIED ABDateTime_V1 to be a simpleType of xsd:dateTime for DB storage -->
<xsd:simpleType name="ABDateTime_V1">
<xsd:restriction base="xsd:dateTime"/>
</xsd:simpleType>
<!-- Below copied from common:PersonName_V1.xsd -->
<xsd:complexType name="PersonName_V1" xdb:SQLType="PERSON_NAME_T">
<xsd:sequence>
<xsd:element name="FirstName" minOccurs="0" xdb:SQLName="FIRST_NAME">
<xsd:simpleType>
<xsd:restriction base="xsd:string"/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="LastName" minOccurs="0" xdb:SQLName="LAST_NAME">
<xsd:simpleType>
<xsd:restriction base="xsd:string"/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!-- Below copied from common:EmailAddress_V1.xsd -->
<xsd:complexType name="EmailAddress_V1" xdb:SQLType="EMAIL_ADDRESS_T">
<xsd:sequence>
<xsd:annotation>
<xsd:documentation>
A common Type for EmailAddress.
</xsd:documentation>
</xsd:annotation>
<xsd:element name="EmailID" type="xsd:string" xdb:SQLName="EMAIL_ID"/>
<xsd:element name="EmailType" type="EmailType_V1" default="Unspecified" xdb:SQLName="EMAIL_TYPE"/>
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="EmailType_V1">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Home"/>
<xsd:enumeration value="Work"/>
<xsd:enumeration value="Unspecified"/>
</xsd:restriction>
</xsd:simpleType>
<!-- Below copied from common:PhoneNumberType_V1.xsd.xsd -->
<xsd:simpleType name="PhoneNumberType_V1">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Type refers to the contact number type associated to the contact number.
May include: Business Phone/Fax, Home Phone/Fax, Mobile Phone, Pager, Telex or Unspecified.
</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="BusinessPhone"/>
<xsd:enumeration value="HomePhone"/>
<xsd:enumeration value="BusinessFax"/>
<xsd:enumeration value="HomeFax"/>
<xsd:enumeration value="MobilePhone"/>
<xsd:enumeration value="Pager"/>
<xsd:enumeration value="Telex"/>
<xsd:enumeration value="Unspecified"/>
</xsd:restriction>
</xsd:simpleType>
<!-- Below copied from common:PhoneNumber_V1.xsd -->
<xsd:complexType name="PhoneNumber_V1" xdb:SQLType="PHONE_NUMBER_T">
<xsd:annotation>
<xsd:documentation xml:lang="en">
PhoneNumber is a common type that defines generic structure of a phone number object.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="CountryCode" type="xsd:string" minOccurs="0" xdb:SQLName="COUNTRY_CODE">
<xsd:annotation>
<xsd:documentation xml:lang="en">
CountryCode holds on the country code value.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="AreaCode" type="xsd:string" minOccurs="0" xdb:SQLName="AREA_CODE">
<xsd:annotation>
<xsd:documentation xml:lang="en">
AreaCode holds on the area code value.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Number" type="xsd:string" xdb:SQLName="PHONE_NUMBER">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Number holds on the number value.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Extension" type="xsd:string" minOccurs="0" xdb:SQLName="PHONE_EXTN">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Extension holds on the phone number extension, if applicable
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Type" type="PhoneNumberType_V1" default="Unspecified" xdb:SQLName="PHONE_NUM_TYPE">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Type refers to the contact number type associated to the contact number.
May include: Business Phone/Fax, Home Phone/Fax, Mobile Phone, Pager, Telex or Unspecified
Default value is Unspecified.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!-- Below copied from common:ContactInformation_V1.xsd -->
<xsd:complexType name="ContactInformation_V1" xdb:SQLType="CONTACT_INFORMATION_T">
<xsd:sequence>
<xsd:element name="Name" type="PersonName_V1" minOccurs="0" xdb:SQLName="CONTACT_NAME"/>
<xsd:element name="EmailAddresses" type="EmailAddress_V1" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="EMAIL_ADDRESSES" xdb:SQLCollType="EMAIL_ADDRESS_V"/>
<xsd:element name="PhoneNumbers" type="PhoneNumber_V1" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="PHONE_NUMBERS" xdb:SQLCollType="PHONE_NUMBER_V"/>
</xsd:sequence>
</xsd:complexType>
<!-- Below copied from common:CardinalDirection_V1.xsd -->
<xsd:simpleType name="CardinalDirectionName_V1">
<xsd:annotation>
<xsd:documentation>A list of voyage name direction.</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="North"/>
<xsd:enumeration value="South"/>
<xsd:enumeration value="East"/>
<xsd:enumeration value="West"/>
</xsd:restriction>
</xsd:simpleType>
<!-- Below copied from common:CommonRestrictions_V1.xsd -->
<xsd:simpleType name="ID_LongNumeric_V1">
<xsd:annotation>
<xsd:documentation>Represents Identifier using long as the restriction - with max - 15 digits</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:long"/>
</xsd:simpleType>
<!-- Below copied from common:ServiceLoopCode_V1.xsd -->
<xsd:simpleType name="ServiceLoopCode_V1">
<xsd:annotation>
<xsd:documentation>A simple type that holds on to the service loop code.</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
<!-- Below copied from common:Currency_V1.xsd -->
<xsd:simpleType name="CurrencyCode_V1">
<xsd:annotation>
<xsd:documentation>A 3 digit currency code string (like USD)</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:length value="3"/>
</xsd:restriction>
</xsd:simpleType>
<!-- Below copied from tnm:TariffCode_V1.xsd -->
<xsd:simpleType name="TariffCode_V1">
<xsd:annotation>
<xsd:documentation>tariff code that uniquely identify a tariff</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:length value="3"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="Global_UUID_V1">
<xsd:annotation>
<xsd:documentation>This is to represent the largest UUID format in the domain. Max. length is 36.</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="36"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="UUID_V1">
<xsd:annotation>
<xsd:documentation>A system generated uuid in string format. Max. length is 20.</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="Global_UUID_V1">
<xsd:maxLength value="20"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="CustomerContactRoleType_V1">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20"/>
<xsd:enumeration value="Accounting"/>
<xsd:enumeration value="Booking"/>
<xsd:enumeration value="Booking_CS"/>
<xsd:enumeration value="Documentation"/>
<xsd:enumeration value="General"/>
<xsd:enumeration value="Operations"/>
<xsd:enumeration value="Pricing"/>
<xsd:enumeration value="Sales"/>
<xsd:enumeration value="Sales_SMM"/>
<xsd:enumeration value="Warehouse"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="TradeCode_V1">
<xsd:annotation>
<xsd:documentation>A simple type that holds on to the trade code.</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="ShipmentBoundCode_V1">
<xsd:annotation>
<xsd:documentation>A list of shipment bound code.</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="IB"/>
<xsd:enumeration value="OB"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="CustomerContactSpecification_V1" xdb:SQLType="CUST_CONTACT_SPEC_T">
<xsd:sequence>
<xsd:element name="ContactSpecUUID" type="UUID_V1" xdb:SQLName="CONTACT_SPEC_UUID"/>
<xsd:element name="ContactUUID" type="UUID_V1" xdb:SQLName="CONTACT_UUID"/>
<xsd:element name="Role" type="CustomerContactRoleType_V1" xdb:SQLName="CONTACT_ROLE"/>
<xsd:element name="SAP_ID" type="SAP_ID_V1" minOccurs="0" xdb:SQLName="CUST_SAP_ID"/>
<xsd:element name="TradeCode" type="TradeCode_V1" minOccurs="0" xdb:SQLName="TRADE_CODE"/>
<xsd:element name="TradeLaneCode" type="TradeLaneCode_V1" minOccurs="0" xdb:SQLName="TRADE_LANE_CODE"/>
<xsd:element name="ServiceLoopCode" type="ServiceLoopCode_V1" minOccurs="0" xdb:SQLName="SERVICE_LOOP_CODE"/>
<xsd:element name="ShipmentBoundCode" type="ShipmentBoundCode_V1" minOccurs="0" xdb:SQLName="SHIPMENT_BOUND_CODE"/>
<xsd:element name="CommodityGroupCode" type="AlphaCode_V1" minOccurs="0" xdb:SQLName="COMMODITY_GROUP_CODE"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="CustomerContact_V1" xdb:SQLType="CUSTOMER_CONTACT_T">
<xsd:annotation>
<xsd:documentation xml:lang="en">
This defines a contact for a Customer. A customer contact is someone to whom an OOCL sales representative communicates regarding business transactions between OOCL and the Customer.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="ContactUUID" type="UUID_V1" xdb:SQLName="CONTACT_UUID"/>
<xsd:element name="ContactInformation" type="ContactInformation_V1" xdb:SQLName="CONTACT_INFORMATION"/>
<xsd:element name="SAP_ID" type="SAP_ID_V1" minOccurs="0" xdb:SQLName="SAP_ID"/>
<xsd:element name="Title" minOccurs="0" xdb:SQLName="TITLE">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="JobTitle" minOccurs="0" xdb:SQLName="JOB_TITLE">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Department" minOccurs="0" xdb:SQLName="DEPARTMENT">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Specifications" type="CustomerContactSpecification_V1" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="CUST_CONTACT_SPECS" xdb:SQLCollType="CUST_CONTACT_SPEC_V"/>
</xsd:sequence>
</xsd:complexType>
<!-- Below copied from tnm:TradeLaneCode_V1.xsd -->
<xsd:simpleType name="TradeLaneCode_V1">
<xsd:annotation>
<xsd:documentation>A simple type that holds on to the trade lane code.</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="CompanyName_V1">
<xsd:annotation>
<xsd:documentation>Name of a Company
This is used to denote the information about an organization which may not be a Customer</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="105"/>
<xsd:minLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
<!-- Below copied from CorridorBaseRate_V1.xsd -->
<xsd:complexType name="CorridorBaseRate_V1" xdb:SQLType="CORRIDOR_BASE_RATE_T">
<xsd:annotation>
<xsd:documentation>Corridor base rate specifications</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="SizeType" type="xsd:string" minOccurs="0" xdb:SQLName="SIZE_TYPE">
<xsd:annotation>
<xsd:documentation>container sise and type that the rate is applicable</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Amount" type="xsd:decimal" minOccurs="0" xdb:SQLName="BASE_RATE_AMOUNT">
<xsd:annotation>
<xsd:documentation>charge amount</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Currency" type="CurrencyCode_V1" minOccurs="0" xdb:SQLName="BASE_RATE_CURRENCY">
<xsd:annotation>
<xsd:documentation>charge currency code</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="OfferType" minOccurs="0" xdb:SQLName="OFFER_TYPE">
<xsd:annotation>
<xsd:documentation>offer type: either OOCL offered or customer requested</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:length value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="IsSOC" type="xsd:boolean" minOccurs="0" xdb:SQLName="IS_SOC">
<xsd:annotation>
<xsd:documentation>indicator for shipper owned container</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="EffectiveFrom" type="ABDateTime_V1" minOccurs="0" xdb:SQLName="EFFECTIVE_FROM" xdb:SQLType="TIMESTAMP">
<xsd:annotation>
<xsd:documentation>effectime start time of the rate</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="EffectiveTo" type="ABDateTime_V1" minOccurs="0" xdb:SQLName="EFFECTIVE_TO" xdb:SQLType="TIMESTAMP">
<xsd:annotation>
<xsd:documentation>effectime end time of the rate</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="TransitTime" type="xsd:string" minOccurs="0" xdb:SQLName="TRANSIT_TIME">
<xsd:annotation>
<xsd:documentation>transit time of shipment that the rate offered</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="SAP_ID_V1">
<xsd:annotation>
<xsd:documentation xml:lang="en">
SAP ID is the unique identifier for a given Customer in reference to SAP Application.
</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="ABShippingParty_V1" xdb:SQLType="AB_SHIPPING_PARTY_T">
<xsd:annotation>
<xsd:documentation>Customer's roles in a shipment, like shipper, consignee, etc</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="CustomerHolder" type="CustomerHolder_V1" xdb:SQLName="CUSTOMER_HOLDER"/>
<xsd:element name="ShippingRoleGroupID" type="ID_Integer_V1" minOccurs="0" xdb:SQLName="SHIPPING_ROLE_GROUP_ID"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="CustomerHolder_V1" xdb:SQLType="CUSTOMER_HOLDER_T">
<xsd:annotation>
<xsd:documentation>A place holder where a new customer was created or modified in agreement builder</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="SAP_ID" type="SAP_ID_V1" minOccurs="0" xdb:SQLName="SAP_ID">
<xsd:annotation>
<xsd:documentation>Customer SapID if it is an existing customer</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Name" type="CompanyName_V1" minOccurs="0" xdb:SQLName="COMPANY_NAME">
<xsd:annotation>
<xsd:documentation>New customer name that is created during agreement builder creation(customer does not exist in NewCPF)</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="ModifiedContacts" type="CustomerContact_V1" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="MODIFIED_CONTACTS" xdb:SQLCollType="MODIFIED_CONTACT_V"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ShippingPartyRoleGroup_V1" xdb:SQLType="SHIPPING_PARTY_ROLE_GROUP_T">
<xsd:annotation>
<xsd:documentation>All customer's shipping role in an agreement</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="GroupID" type="ID_Integer_V1" minOccurs="0" xdb:SQLName="GROUP_ID"/>
<xsd:element name="IsShipper" type="xsd:boolean" xdb:SQLName="IS_SHIPPER"/>
<xsd:element name="IsConsignee" type="xsd:boolean" xdb:SQLName="IS_CONSIGNEE"/>
<xsd:element name="IsForwarder" type="xsd:boolean" xdb:SQLName="IS_FORWARDER"/>
<xsd:element name="IsControlParty" type="xsd:boolean" xdb:SQLName="IS_CONTROL_PARTY"/>
<xsd:element name="IsSignatureParty" type="xsd:boolean" xdb:SQLName="IS_SIGNATURE_PARTY"/>
<xsd:element name="IsNotifyParty" type="xsd:boolean" xdb:SQLName="IS_NOTIFY_PARTY"/>
<xsd:element name="IsAssociate" type="xsd:boolean" xdb:SQLName="IS_ASSOCIATE"/>
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="AlphaCode_V1">
<xsd:annotation>
<xsd:documentation>Code of a CommodityReportGroup. The Business Community refers to this 3 digit code as the AlphaCode
</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="CargoNatureCode_V1">
<xsd:annotation>
<xsd:documentation>The classification code of cargo for special stowage arrangement</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
<xsd:enumeration value="AW">
<xsd:annotation>
<xsd:documentation>Awkward</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="DG">
<xsd:annotation>
<xsd:documentation>Dangerous</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="GC">
<xsd:annotation>
<xsd:documentation>GeneralCargo</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="RF">
<xsd:annotation>
<xsd:documentation>Reefer</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="ID_Integer_V1">
<xsd:annotation>
<xsd:documentation>Represents Identifier using Integer as the restriction.</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:int"/>
</xsd:simpleType>
<xsd:complexType name="CorridorVolume_V1" xdb:SQLType="CORRIDOR_VOLUME_T">
<xsd:annotation>
<xsd:documentation>Corridor volumns associated with corridor base rate</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="ID" type="xsd:int" xdb:SQLName="IDNUM">
<xsd:annotation>
<xsd:documentation>A numeric identifier which identifies a CorridorVolume only in the context of a Quote/Agreement</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="SizeType" type="xsd:string" minOccurs="0" xdb:SQLName="SIZE_TYPE">
<xsd:annotation>
<xsd:documentation>container sise and type that the rate is applicable</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Volume" type="ShipmentVolume_V1" minOccurs="0" xdb:SQLName="VOLUME">
<xsd:annotation>
<xsd:documentation>corridor rate volume specification</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="VolumePatterns" type="VolumePattern_V1" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="VOLUME_PATTERNS" xdb:SQLCollType="VOLUME_PATTERN_V">
<xsd:annotation>
<xsd:documentation>detailed volume sepecification</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Basis" type="xsd:string" minOccurs="0" xdb:SQLName="BASIS"/>
<xsd:element name="IsConditionOfRate" type="xsd:boolean" xdb:SQLName="IS_CONDITION_OF_RATE">
<xsd:annotation>
<xsd:documentation>indicate if the volume sepecification is a condition of the corridor rate</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="IsShared" type="xsd:boolean" xdb:SQLName="IS_SHARED">
<xsd:annotation>
<xsd:documentation>Indicates if the volume group is shared by more than one corridor rate. When true, sizetype should be null</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="IsForEntireAgreement" type="xsd:boolean" xdb:SQLName="IS_FOR_AGREEMENT"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="VolumePattern_V1" xdb:SQLType="VOLUME_PATTERN_T">
<xsd:annotation>
<xsd:documentation>Agreement volume pattern</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="Volume" type="ShipmentVolume_V1" minOccurs="0" xdb:SQLName="VOLUME">
<xsd:annotation>
<xsd:documentation>volume amount</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Period" type="xsd:string" minOccurs="0" xdb:SQLName="PERIOD">
<xsd:annotation>
<xsd:documentation>time period for the volume</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ShipmentVolume_V1" xdb:SQLType="SHIPMENT_VOLUME_T">
<xsd:annotation>
<xsd:documentation>A measurement for shipment volume</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="Unit" type="xsd:string" minOccurs="0" xdb:SQLName="UNIT"/>
<xsd:element name="Value" type="xsd:decimal" minOccurs="0" xdb:SQLName="VALUE"/>
</xsd:sequence>
</xsd:complexType>
<!-- END Simple/Complex Types copied from External XSD Files -->
</xsd:schema>
CorridorRate.xsd
<?xml version="1.0" encoding="utf-8"?>
<!-- edited with XMLSpy v2007 rel. 3 (http://www.altova.com) by Auroprem Kandaswami (OOCL (USA) INC) -->
<xsd:schema xmlns="http://com.oocl.schema.tnm.agreementbuilder" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:tnm="http://com.oocl.schema.tnm" xmlns:common="http://com.oocl.schema.common" xmlns:fwd="http://com.oocl.frm.common.date.dto/" xmlns:customer="http://com.oocl.schema.customer" xmlns:eqm="http://com.oocl.schema.eqm" targetNamespace="http://com.oocl.schema.tnm.agreementbuilder" elementFormDefault="qualified" attributeFormDefault="unqualified" xdb:storeVarrayAsTable="true">
<xsd:include schemaLocation="AB_Common_V1_XMLDB.xsd"/>
<xsd:element name="CorridorRate" type="CorridorRate_V1" nillable="true" xdb:SQLName="CORRIDOR_RATE"/>
<!-- Below copied from common:DeliveryMode_V1.xsd -->
<xsd:simpleType name="DeliveryMode_V1">
<xsd:annotation>
<xsd:documentation>2 char string representing the delivery mode associated with the rate. YY for example is a Container Yard to Container Yard move, whereas DD is a door to door move.</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
<xsd:minLength value="2"/>
<xsd:enumeration value="YY"/>
<xsd:enumeration value="YD"/>
<xsd:enumeration value="DY"/>
<xsd:enumeration value="DD"/>
</xsd:restriction>
</xsd:simpleType>
<!-- Below copied from PaymentTerm_V1.xsd -->
<xsd:simpleType name="PaymentTerm_V1">
<xsd:annotation>
<xsd:documentation>Payment term, either prepaid or collect</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
<xsd:enumeration value="Prepaid"/>
<xsd:enumeration value="Collect"/>
</xsd:restriction>
</xsd:simpleType>
<!-- Below copied from CorridorMetric_V1.xsd -->
<xsd:complexType name="CorridorMetric_V1" xdb:SQLType="CORRIDOR_METRIC_T">
<xsd:annotation>
<xsd:documentation>Corridor metrics associated with corridor base rate</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="SizeType" type="xsd:string" minOccurs="0" xdb:SQLName="SIZE_TYPE">
<xsd:annotation>
<xsd:documentation>container sise and type that the rate is applicable</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="VolumeSRG" type="xsd:string" minOccurs="0" xdb:SQLName="VOLUME_SRG">
<xsd:annotation>
<xsd:documentation>guideline volume</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="AgreementSRG" type="xsd:string" minOccurs="0" xdb:SQLName="AGREEMENT_SRG">
<xsd:annotation>
<xsd:documentation>ageeement volume</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="ContributionNRPO" type="xsd:string" minOccurs="0" xdb:SQLName="CONTRIBUTION_NRPO">
<xsd:annotation>
<xsd:documentation>contribution matrix NRPO</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="ContributionRPO" type="xsd:string" minOccurs="0" xdb:SQLName="CONTRIBUTION_RPO">
<xsd:annotation>
<xsd:documentation>contribution matrix RPO</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="AverageRate" type="xsd:string" minOccurs="0" xdb:SQLName="AVERAGE_RATE">Thanks so much for your response - Prefixing the call to the table within the package, with the schema owner does indeed solve the problem. Since this is a Production issue, i have implemented this fix in my customer's database.
However, I would still like this issue permanently resolved. The next time we send out updated package code, this will happen again (unless we then fix it again). I'd still like info from anyone on what exactly must be done to allow the call within the package to work without specifically pre-fixing the table's schema owner. It shouldn't be needed... The DB link is connecting via the same schema on database B that owns the table in question.
pre-fixing the schema owner is something we don't do in our sql statements, and this has worked fine for many of our cusomer's environments. We're only seeing this issue on one environment. -
Problem statement
When I mount a Windows NFS service file share using UUUA and set the Owner and Group, and set the SetGID bit on the parent folder in a hierarchy. New Files and folders inside and underneath the parent folder do not inherit the Owner and Group permissions
of the parent.
I am given to understand from this Microsoft KnowledgeBase article (http://support.microsoft.com/kb/951716/en-gb) the problem is due to the Windows implmentation of NFS Services not supporting the Solaris SystemV or BSD grpid "Semantics"
However the article says the same functionality can acheived by using ACE Inheritance in conjunction with changing the Registry setting for "KeepInheritance" to enable Inheritance propagation of the Permissions by the Windows NFS Services.
1. The Precise location of the "KeepInheritance" DWORD key appears to have "moved" in Windows Server 2012 from a Services path to a Software path, is this documented somewhere? And after enabling it, (or creating it in the previous
location) the feature seems non-functional. Is there a method to file a Bug with Microsoft for this Feature?
2. All of the references on demonstrating how to set an ACE to achieve the same result "currently" either lead to broken links on Microsoft technical websites, or are not explicit they are vague or circumreferential. There are no plain Examples.
Can an Example be provided?
3. Is UUUA compatible with the method of setting ACE to acheive this result, or must the Linux client mount be "Mapped" using an Authentication source. And could that be with the new Flat File passwd and group files in c:\windows\system32\drivers\etc
and is there an Example available.
Scenario:
Windows Server 2012 Standard
File Server (Role)
+- Server for NFS (Role) << -- installed
General --
Folder path: F:\Shares\raid-6-array
Remote path: fs4:/raid-6-array
Protocol: NFS
Authentication --
No server authentication
+- No server authentication (AUTH_SYS)
++- Enable unmapped user access
+++- Allow unmapped user access by UID/GID
Share Permissions --
Name: linux_nfs_client.host.edu
Permissions: Read/Write
Root Access: Allowed
Encoding: ANSI
NTFS Permissions --
Type: Allow
Principal: BUILTIN\Administrators
Access: Full Control
Applies to: This folder only
Type: Allow
Principal: NT AUTHORITY\SYSTEM
Access: Full Control
Applies to: This folder only
-- John Willis, Facebook: John-Willis, Skype: john.willis7416I'm making some "major" progress on this problem.
1. Apparently the "semantics" issue to honor SGID or grpid in NFS on the server side or the client side has been debated for some time. It also existed as of 2009 between Solaris nfs server and Linux nfs clients. The Linux community defaulted to declaring
it a "Server" side issue to avoid "Race" conditions between simultaneous access users and the local file system daemons. The client would have to "check" for the SGID and reformulate its CREATE request to specify the Secondary group it would have to "notice"
by which time it could have changed on the server. SUN declined to fix it.. even though there were reports it did not behave the same between nfs3 vs nfs4 daemons.. which might be because nfs4 servers have local ACL or ACE entries to process.. and a new local/nfs
"inheritance" scheme to worry about honoring.. that could place it in conflict with remote access.. and push the responsibility "outwards" to the nfs client.. introducing a race condition, necessitating "locking" semantics.
This article covers that discovery and no resolution - http://thr3ads.net/zfs-discuss/2009/10/569334-CR6894234-improved-sgid-directory-compatibility-with-non-Solaris-NFS-clients
2. A much Older Microsoft Knowledge Based article had explicit examples of using Windows ACEs and Inheritance to "mitigate" the issue.. basically the nfs client "cannot" update an ACE to make it "Inheritable" [-but-] a Windows side Admin or Windows User
[-can-] update or promote an existing ACE to "Inheritable"
Here are the pertinent statements -
"In Windows Services for UNIX 2.3, you can use the KeepInheritance registry value to set inheritable ACEs and to make sure that these ACEs apply to newly created files and folders on NFS shares."
"Note About the Permissions That Are Set by NFS Clients
The KeepInheritance option only applies ACEs that have inheritance enabled. Any permissions that are set by an NFS client will
only apply to that file or folder, so the resulting ACEs created by an NFS client will
not have inheritance set."
"So
If you want a folder's permissions to be inherited to new subfolders and files, you must set its permissions from the Windows NFS server because the permissions that are set by NFS clients only apply to the folder itself."
http://support.microsoft.com/default.aspx?scid=kb;en-us;321049
3. I have set up a Windows 2008r2 NFS server and mounted it with a Redhat Enteprise Linux 5 release 10 x86_64 server [Oct 31, 2013] and so far this does appear to be the case.
4. In order to mount and then switch user to a non-root user to create subdirectories and files, I had to mount the NFS share (after enabling Anonymous AUTH_SYS mapping) this is not a good thing, but it was because I have been using UUUA - Unmapped Unix
User Access Mapping, which makes no attempt to "map" a Unix UID/GID set by the NFS client to a Windows User account.
To verify the Inheritance of additional ACEs on new subdirectories and files created by a non-root Unix user, on the Windows NFS server I used the right click properties, security tab context menu, then Advanced to list all the ACEs and looked at the far
Column reflecting if it applied to [This folder only, or This folder and Subdirectories, or This folder and subdirectories and files]
5. All new Subdirectories and files createdby the non-root user had a [Non-Inheritance] ACE created for them.
6. I turned a [Non-Inheritance] ACE into an [Inheritance] ACE by selecting it then clicking [Edit] and using the Drop down to select [This folder, subdirs and files] then I went back to the NFS client and created more subdirs and files. Then back to the
Windows NFS server and checked the new subdirs and folders and they did Inherit the Windows NFS server ACE! - However the UID/GID of the subdirs and folders remained unchanged, they did not reflect the new "Effective" ownership or group membership.
7. I "believe" because I was using UUUA and working "behind" the UID/GID presentation layer for the NFS client, it did not update that presentation layer. It might do that "if" I were using a Mapping mechanism and mapped UID/GID to Windows User SIDs and
Group SIDs. Windows 2008r2 no longer has a "simple" Mapping server, it does not accept flat text files and requires a Schema extension to Active Directory just to MAP a windows account to a UID/GID.. a lot of overhead. Windows Server 2012 accepts flat text
files like /etc/passwd and /etc/group to perform this function and is next on my list of things to see if that will update the UID/GID based on the Windows ACE entries. Since the Local ACE take precedence "over" Inherited ACEs there could be a problem. The
Inheritance appears to be intended [only] to retain Administrative rights over user created subdirs and files by adding an additional ACE at the time of creation.
8. I did verify from the NFS client side in Linux that "Even though" the UID/GID seem to reflect the local non-root user should not have the ability to traverse or create new files, the "phantom" NFS Server ACEs are in place and do permit the function..
reconciling the "view" with "reality" appears problematic, unless the User Mapping will update "effective" rights and ownership in the "view"
-- John Willis, Facebook: John-Willis, Skype: john.willis7416 -
Get CGI env variables in a database procedure using new APEX Listener
I already posted this question in the Apex Listener forum and still no replies after one week. The original post is here:
Get CGI environment from APEX Listener within database procedure
So please forgive me for posting in this forum as well, but there is a lot more activity here.
I'd like to know how I can get the CGI environment from the APEX Listener. For example, if I want to write a procedure that inserts into a table the originating IP Address of the client making the web request, how do I get it?
I am familiar with the Oracle Http Server and mod_plsql, and I know how to call OWA_UTIL.GET_CGI_ENV to get this sort of information. How do I do it using the APEX Listener?
In particular, how do I do this when calling a custom procedure (not in an Apex workspace)? When I try it now, I get an error from owa_util. The cgi env seems to be empty or not initiated (owa.num_cgi_vars is null or zero).
Specific set-up:
I have a web server running the latest JDK, Glassfish, and 1.1.4 Apex Listener. It connects to another server running the latest 11.2 database. Apex is installed and running, but I am not really developing a traditional Apex application in a workspace. I mainly use it like you would use mod_plsql. In other words, I have custom pl/sql packages that are called directly via URL. The requests are forwarded by the listener to the database, and the DB executes the procedure and returns output using htp.p to send text back to the browser. And it works just fine for this purpose. But if I want to call GET_CGI_ENV to get information like the IP Address, web browser making the request, etc. I can't seem to get it with the OWA packages.
Can anyone shed some light on this? If Apex Listener is not designed to do this, is there some kind of workaround I can use to forward this sort of information to the database for each request?I have not tried owa_util.print_cgi_env from SQL Workshop yet, as I have not created an APEX workspace. I have had no need for a workspace because of the way I am using APEX as a method for calling custom packages and stored procedures. In other words, I am using APEX strictly for the mod_plsql functionality. I just use it to forward requests to the database to execute pl/sql code, but I don't develop anything in APEX. My application is a web service with no screens and no direct user interface, which is why I did not need to create APEX forms. The front end is a mobile app that makes calls to the web service.
But I have tried calling owa_util.print_cgi_env in one of my stored procedures and it returns no data, even when calling it from the web front-end.
So I am beginning to believe that if the OWA toolkit works with APEX, then it must only be enabled when invoked within a workspace. Stand-alone procedures can be called via APEX, but apparently doing so does not initiate the CGI env variables. This set-up used to work under the OHS with mod_plsql. The embedded pl/sql gateway also works this way.
Is there a procedure call that APEX is making to set the environment before each SQL Workshop request?
My security model currently blocks access to all packages and procedures except for my custom packages. I am using the APEX Listener configuration to allow only the packages listed by name in a white list. But I thought I allowed all access when I first tried calling the OWA packages. I'll have to try that again. -
To access PD Repository, why do we have to connect to the schema owner?
Hi
we use Oracle for PD repository. In order to connect to the repository, we create odbc connection to the repository schema owner. The question is, can we create a application schema user and provide read/write privileges to the repository and then create odbc connection to this application schema instead of repository schema?
thanksHi Krishna,
We create odbc connection to the repository schema owner. The question is, can we create a application schema user and provide read/write privileges to the repository and then create odbc connection to this application schema instead of repository schema? Yes
I suggest that you use the proxy rather than a direct connection. Search this topic in this forum.
If you decide to keep your idea here's how :
REPOSITORY_SCHEMA (OWNER SCHEMA):
GRANT SELECT, INSERT, UPDATE, DELETE ON EACH <PD TABLES> TO <APPLICATION_SCHEMA>
(PD tables usually begin by PM%, actually PD does not use VIEW, SEQUENCE objects)
On Application Schema : Create as many synonyms as there's table to go to the schema owner
Example : CREATE SYNONYM PMTEMP FOR <OWNER_SCHEMA.PMTEMP>
Ask to your Oracle DBA. It can do, he know how do.
Warning : When you do an update of PD you will have to check if the privileges are gone,if SAP has added new tables, etc.
I do not think it's a good idea to follow this path
Note : Your evaluation of my answer would be appreciated. Please mark the answer as "Helpful” or “Correct” if this is the case. Also If you consider that I have answered mark the discussion as “Answered,” so that other members can find the answer more easily. Before posting a new question members search SCN to see if it’s already been asked / answered. That’s the fastest way to get information. -
How to create a report to show BA, Report Names, Owner and shares
Hello,
Does anyone have any sql that will show the Business Area, Report Name, Owner and who it is shared with?
I can get the three last items with no problem; the difficulty is including the BA Name.
This is for Discoverer v 4.
Many thanks
RachaelHi,
Thanks a lot. I am really new to the Discoverer Arena. We are currently using EUL5. Can you please direct me to the correct product to be installed and how will I actually get all the related worksheets for a specific workbook. Currently I have access to EUL5 tables. Is it what you are referring to? However using the EUL5 schema tables I cannot get the related worksheets of a particular workbook.
Would be really helpful if you could tell me in detail to solve this? I am somewhat confused heaps of Oracle products. Any other takers welcome
Thanks
Thomas -
Schema owner for ECC 5.0 IDES
Hi,
When I am trying to start ECC 5.0, the work processes are dying below is the error.
OS: Windows, DB: Oracle.
Now I'm connected to ORACLE
C *** ERROR => ORA-1403 when accessing table SAPUSER
[dbsloci.c 10114]
C Disconnecting from connection 0 ...
C Closing user session (con_hdl=0,svchp=0493EFF4,usrhp=07FC1E64)
C Now I'm disconnected from ORACLE
C Try to connect with default password
C Connecting as SAPR3/<pwd>@CC5 on connection 0 ...
C Starting user session (con_hdl=0,svchp=0493EFF4,srvhp=07FB9234,usrhp=07FC1E64)
C *** ERROR => OCI-call 'OCISessionBegin' failed: rc = 1017
[dboci.c 3721]
C *** ERROR => CONNECT failed with sql error '1017'
[dbsloci.c 9750]
B ***LOG BY2=> sql error 1017 performing CON [dbsh#1 @ 1200] [dbsh 1200 ]
B ***LOG BY0=> ORA-01017: invalid username/password; logon denied [dbsh#1 @ 1200] [dbsh 1200 ]
B ***LOG BY2=> sql error 1017 performing CON [dblink#1 @ 419] [dblink 0419 ]
B ***LOG BY0=> ORA-01017: invalid username/password; logon denied [dblink#1 @ 419] [dblink 0419 ]
M ***LOG R19=> tskh_init, db_connect ( DB-Connect 000256) [thxxhead.c 1270]
M in_ThErrHandle: 1
M *** ERROR => tskh_init: db_connect (step 1, th_errno 13, action 3, level 1) [thxxhead.c 9377]
Based on these errors I have looked at Notes: 400241, 50088.
The problem is, even though schema owner is listed as SAPSID, why is SAPR3 being used to connect to Oracle.
I have tried creating the users using note 50088, but to no avail.
I have tried creating the users with schema owner as SAPSID. Above is the error message that I get.
When trying to create the users with owner as SAPR3, I get the below error,
ERROR at line 1:
ORA-00959: tablespace 'PSAPUSER1D' does not exist
ORA-06512: at line 114
Regards,
VishiHi,
I have tried suggestions from you all of you, Thank you.
However the problem still persists. I am quite unable to figure out, why it is showing SAPR3 in wp trace.
Below are the error details from dev_w0 log, trans.log
dev_w0:
Logon as OPS$-user to get SAPR3's password
C Connecting as /@CC5 on connection 0 ...
C Attaching to DB Server CC5 (con_hdl=0,svchp=0493EFF4,svrhp=07FB9234)
C Starting user session (con_hdl=0,svchp=0493EFF4,srvhp=07FB9234,usrhp=07FC1E64)
C Now I'm connected to ORACLE
C *** ERROR => ORA-1403 when accessing table SAPUSER
[dbsloci.c 10114]
C Disconnecting from connection 0 ...
C Closing user session (con_hdl=0,svchp=0493EFF4,usrhp=07FC1E64)
C Now I'm disconnected from ORACLE
C Try to connect with default password
C Connecting as SAPR3/<pwd>@CC5 on connection 0 ...
C Starting user session (con_hdl=0,svchp=0493EFF4,srvhp=07FB9234,usrhp=07FC1E64)
C *** ERROR => OCI-call 'OCISessionBegin' failed: rc = 1017
[dboci.c 3721]
C *** ERROR => CONNECT failed with sql error '1017'
[dbsloci.c 9750]
B ***LOG BY2=> sql error 1017 performing CON [dbsh#1 @ 1200] [dbsh 1200 ]
B ***LOG BY0=> ORA-01017: invalid username/password; logon denied [dbsh#1 @ 1200] [dbsh 1200 ]
B ***LOG BY2=> sql error 1017 performing CON [dblink#1 @ 419] [dblink 0419 ]
B ***LOG BY0=> ORA-01017: invalid username/password; logon denied [dblink#1 @ 419] [dblink 0419 ]
M ***LOG R19=> tskh_init, db_connect ( DB-Connect 000256) [thxxhead.c 1270]
M in_ThErrHandle: 1
Trans.log"
4 ETW000 [dev trc ,00000] Thu Nov 24 23:48:32 2011 80178 0.132260
4 ETW000 [dev trc ,00000] Assigning server context 02C0982C to service context 02C08C24
4 ETW000 57 0.132317
4 ETW000 [dev trc ,00000] Allocating user session handle 47 0.132364
4 ETW000 [dev trc ,00000] Starting user session (con_hdl=0,svchp=02C08C24,srvhp=02C0982C,usrhp=02C123F4)
4 ETW000 165 0.132529
4 ETW000 [dboci.c ,00000] *** ERROR => OCI-call 'OCISessionBegin' failed: rc = 1017
4 ETW000 6620 0.139149
4 ETW000 [dbsloci. ,00000] *** ERROR => CONNECT failed with sql error '1017'
4 ETW000 31 0.139180
4 ETW000 [dev trc ,00000] Try to connect with default password 73 0.139253
4 ETW000 [dev trc ,00000] Connecting as SAPCC5/<pwd>@CC5 on connection 0 ...
4 ETW000 27 0.139280
4 ETW000 [dev trc ,00000] Assigning username to user session 02C123F4 19 0.139299
4 ETW000 [dev trc ,00000] Assigning password to user session 02C123F4 28 0.139327
4 ETW000 [dev trc ,00000] Starting user session (con_hdl=0,svchp=02C08C24,srvhp=02C0982C,usrhp=02C123F4)
4 ETW000 31 0.139358
4 ETW000 [dboci.c ,00000] *** ERROR => OCI-call 'OCISessionBegin' failed: rc = 1017
4 ETW000 7326 0.146684
4 ETW000 [dbsloci. ,00000] *** ERROR => CONNECT failed with sql error '1017'
4 ETW000 31 0.146715
4 ETW000 [dblink ,00419] ***LOG BY2=>sql error 1017 performing CON [dblink#1 @ 419]
4 ETW000 141 0.146856
4 ETW000 [dblink ,00419] ***LOG BY0=>ORA-01017: invalid username/password; logon denied [dblink#1 @ 419]
4 ETW000 27 0.146883
2EETW169 no connect possible: "DBMS = ORACLE --- dbs_ora_tnsname = 'CC5'"
Should I go back looking at Note: 400241.
Regards,
Vishnu -
ALDSP 3.0 -- schema owner for stored procedure or SQL Statement
Using ALDSP, I have a need to create a physical service based on a stored procedure or a SQL statement. I am wondering what will happen when I move to another deployment environment where the schema owner changes. In our QA and Prod environments, we have a different schema owner for all tables in the application (the DBAs believe this prevents unwanted updates to a prod environment). DSP elegantly supports this for normal table- and view-based physical services by mapping schemas through the DSP console after deployment. Will I get the same type of mapping capability for stored procedures and SQL statements? I noticed that I can add a SQL-based function to a physical service...is there a way to pass in the physical table name from that data service to the procedure or SQL statement?
Thanks,
JeffSchema name substitution should work for stored procedures just like it does for tables. If it doesn't - report a bug.
You don't get any help for sql-statement based data services - dsp doesn't parse the sql provided. One thing you could do is use the default schema (following the user of your connection pool), and not specify the schema in your sql-statement.
Maybe you are looking for
-
Please help me to get this done!....Thanks in Advance This is current script I use to update AD record but its taking user id to pick the user in AD, which is some time give error not update properly.. # UpdateUsers.ps1 # PowerShell program to update
-
I just purchased the Acrobat XI Pro Subscription online. After downloading the software and receiving the message that the installation was complete I tried to open the software to no avail. It starts to open with a "please wait while we launch Acr
-
I have lost my serial number for my logic 8. I have the box and discs but seem to be missing the crucial bit. Anyway, I only found out as I am trying to upgrade to Logic 9 which i just bought and it needs the serial number for 8 as well. How can I go
-
Change SQL Server Agent service account
How can I change the SQL Server Agent service account from NT SERVICE\SQLSERVERAGENT to a domain user? and most importantly is what permissions I have to give that domain user? I know that when SQL Server setup, the installer gives the domain user (t
-
Contact person Number range in ERP and CRM - Middleware settings
Dear SDN team, We have currently integrated SAP CRM 5.2 and SAP R/3 4.6 c using Middleware . The contact persons are maintained in SAP R/3 system and also downloaded into CRM system . Currently the Number range is different in both the systems Going