Use of PL/SQL %TYPE and HS

I have been unable to get a PL/SQL package specification to compile that uses %TYPE against a table that is referenced via a HS link and physically resides in MSSQL 7.
The documentation I looked at (Oracle Transparent Gateway A82868-01 for 8.1.6 and A88789-01 for 9.0.1) does not specifically state if this functionality is supported or not. My database level is 8.1.7.1.5.
I assume that if this is supported then Oracle does some translation of data types at compile time. If it is not suppported then I can remove the use of %TYPE and type the variables using the Raw data type.
My line of code in the package spec is:
PROCEDURE RFQ_HDR_OUT
( i_rfqnum IN "rfq"."rfqnum"%TYPE);
I have also tried:
PROCEDURE RFQ_HDR_OUT
( i_rfqnum IN rfq.rfqnum%TYPE);
PROCEDURE RFQ_HDR_OUT
( i_rfqnum IN "dbo"."rfq"."rfqnum"%TYPE);
PROCEDURE RFQ_HDR_OUT
( i_rfqnum IN rfq."rfqnum"%TYPE);
The error I get is:
(1): PLS-00201: identifier 'rfq.rfqnum' must be declared
The rfq reference is actually a Oracle VIEW built on a SELECT * FROM table@HSODBC. I can successfully select data from this table using SQL*Plus.
I am also able to reference this table in my package BODY without a problem.
Any insight much appreciated.
Regards, Charles.

The compilation of the package does not create any trace output.
My trace settings in hs\admin\inithsodbc.ora are:
# HS init parameters
HS_FDS_CONNECT_INFO=mssql
HS_FDS_TRACE_LEVEL = 4
HS_FDS_TRACE_FILE_NAME = hsodbc.trc
I can however successfully run a SELECT against the same VIEW that I am trying to use for %TYPE in my package. This SELECT renders the following trace:
TUESDAY MAY 14 2002 15:33:12.031
(0) hoagprd(2); Entered.
(0) [Generic Connectivity Using ODBC] version: 2.0.4.0.0010
(0) connect string is:
(0) YEAR2000_POLICY=-1;CTL_DEBUG=T;CONSUMER_API=1;SESSION_BEHAVIOR_FLAGS=4;PARSER_-
(0) DEPTH=2000;EXEC_FLAGS = 131080;defTdpName=hsodbc;binding=(hsodbc,ODBC,"mssql");
(0) ORACLE GENERIC GATEWAY Log File Started at 14-May-02 15:33:12
(0) Class version: 65
(0) hoagprd(2); Exited with retcode = 0.
(0) hoainit(3); Entered.
(0) hoainit(3); Exited with retcode = 0.
(0) hoalgon(7); Entered. name = maximo.
(0) Created new ODBC connection (27792120)
(0) hoalgon(7); Exited with retcode = 0.
(0) hoaulcp(4); Entered.
(0) hoaulcp(4); Exited with retcode = 0.
(0) hoauldt(5); Entered.
(0) hoauldt(5); Exited with retcode = 0.
(0) hoabegn(9); Entered. formatID = 306206, hoagttid =BATT.d2ea68f8.3.1.11,
(0) hoagtbid = , tflag = 0, initial = 1
(0) hoabegn(9); Exited with retcode = 0.
(0) hoapars(15); Entered. stmtType = 0, id = 1.
(0) nvOUT (P:\Src\QP\QP_SQTXT.C 55): SELECT * FROM "RFQ"
(0) odbc_rec: select * from "RFQ"
(0) nvOUT (P:\Src\QP\QPT2SEXE.C 929):
(0) SELECT "T0000"."buyercompany" AS c00039, "T0000"."printdate" AS c00038, "T0000"."ldkey" AS c00037, "T0000"."rfq10" AS c00036, "T0000"."rfq9" AS c00035, "T0000"."rfq8" AS c00034, "T0000"."rfq7" AS c00033, "T0000"."rfq6" AS c00032, "T0000"."rfq5" AS c00031, "T0000"."rfq4" AS c00030, "T0000"."rfq3" AS c00029, "T0000"."rfq2" AS c00028, "T0000"."rfq1" AS c00027, "T0000"."historyflag" AS c00026, "T0000"."priority" AS c00025, "T0000"."changedate" AS c00024, "T0000"."changeby" AS c00023, "T0000"."paymentterms" AS c00022, "T0000"."shipvia" AS c00021, "T0000"."freightterms" AS c00020, "T0000"."fob" AS c00019, "T0000"."replytoattn" AS c00018, "T0000"."replyto" AS c00017, "T0000"."billtoattn" AS c00016, "T0000"."billto" AS c00015, "T0000"."shiptoattn" AS c00014, "T0000"."shipto" AS c00013, "T0000"."requestedby" AS c00012, "T0000"."requireddate" AS c00011, "T0000"."rfqtype" AS c00010, "T0000"."purchaseagent" AS c0009, "T0000"."closeondate" AS c0008, "T0000"."replydate" AS c0007, "T0000"."enterby" AS c0006, "T0000"."enterdate" AS c0005, "T0000"."statusdate" AS c0004, "T0000"."status" AS c0003, "T0000"."description" AS c0002, "T0000"."rfqnum" AS c0001, "T0000"."rowstamp" AS c0000 FROM "RFQ" T0000
(0) nvOUT (P:\Src\QP\QPT2SEXE.C 932):
(0) <<<<<<<<<<<<<<<<<<< Execution Strategy Begin <<<<<<<<<<<<<<<<<<<<<<<<<<<<
(0) Original SQL:
(0) SELECT * FROM "RFQ"
(0)
(0)
(0) Accessing Database "hsodbc" with SQL:
(0) SELECT "T0000"."buyercompany" AS c00039, "T0000"."printdate" AS c00038, "T0000"."ldkey" AS c00037, "T0000"."rfq10" AS c00036, "T0000"."rfq9" AS c00035, "T0000"."rfq8" AS c00034, "T0000"."rfq7" AS c00033, "T0000"."rfq6" AS c00032, "T0000"."rfq5" AS c00031, "T0000"."rfq4" AS c00030, "T0000"."rfq3" AS c00029, "T0000"."rfq2" AS c00028, "T0000"."rfq1" AS c00027, "T0000"."historyflag" AS c00026, "T0000"."priority" AS c00025, "T0000"."changedate" AS c00024, "T0000"."changeby" AS c00023, "T0000"."paymentterms" AS c00022, "T0000"."shipvia" AS c00021, "T0000"."freightterms" AS c00020, "T0000"."fob" AS c00019, "T0000"."replytoattn" AS c00018, "T0000"."replyto" AS c00017, "T0000"."billtoattn" AS c00016, "T0000"."billto" AS c00015, "T0000"."shiptoattn" AS c00014, "T0000"."shipto" AS c00013, "T0000"."requestedby" AS c00012, "T0000"."requireddate" AS c00011, "T0000"."rfqtype" AS c00010, "T0000"."purchaseagent" AS c0009, "T0000"."closeondate" AS c0008, "T0000"."replydate" AS c0007, "T0000"."enterby" AS c0006, "T0000"."enterdate" AS c0005, "T0000"."statusdate" AS c0004, "T0000"."status" AS c0003, "T0000"."description" AS c0002, "T0000"."rfqnum" AS c0001, "T0000"."rowstamp" AS c0000 FROM "RFQ" T0000
(0)
(0)
Execution Strategy End >>>>>>>>>>>>>>>>>>>>>>>>>>>>(0) hoapars(15); Exited with retcode = 0.
(0) hoaopen(19); Entered. id = 1.
(0) hoaopen(19); Exited with retcode = 0.
(0) hoadscr(16); Entered. id = 1.
(0) hoastmt(195); Array fetch size is: 1.
(0) ------ hoadscr() -------:
(0) hoadamsz: 40, hoadasiz: 40, hoadambr: 1, hoadabrc: 1
(0) row 0 - hoadambl: 0, hoadadty: 0, hoadaprc: 0, hoadacst: 0
(0) row 0 - hoadascl: 0, hoadanul: 0, hoadanml: 8, hoadanam: rowstamp, hoadabfl:
(0) 0, hoadamod: 0
(0) row 1 - hoadambl: 8, hoadadty: 108, hoadaprc: 8, hoadacst: 0
(0) row 1 - hoadascl: 0, hoadanul: 0, hoadanml: 6, hoadanam: rfqnum, hoadabfl: 8,
(0) hoadamod: 0
(0) row 2 - hoadambl: 50, hoadadty: 108, hoadaprc: 50, hoadacst: 0
(0) row 2 - hoadascl: 0, hoadanul: 1, hoadanml: 11, hoadanam: description,
(0) hoadabfl: 50, hoadamod: 0
(0) row 3 - hoadambl: 6, hoadadty: 108, hoadaprc: 6, hoadacst: 0
(0) row 3 - hoadascl: 0, hoadanul: 0, hoadanml: 6, hoadanam: status, hoadabfl: 6,
(0) hoadamod: 0
(0) row 4 - hoadambl: 7, hoadadty: 167, hoadaprc: 0, hoadacst: 0
(0) row 4 - hoadascl: 0, hoadanul: 0, hoadanml: 10, hoadanam: statusdate,
(0) hoadabfl: 7, hoadamod: 0
(0) row 5 - hoadambl: 7, hoadadty: 167, hoadaprc: 0, hoadacst: 0
(0) row 5 - hoadascl: 0, hoadanul: 1, hoadanml: 9, hoadanam: enterdate, hoadabfl:
(0) apiutil; row 39 - cbDataOffset: 839, dwBinding: 1, width: 18, scale: 0
(0) hoaftch(21); Exited with retcode = 1403, hoadabrc = 0.
(0) hoaclse(22); Entered. id = 1.
(0) hoaclse(22); Exited with retcode = 0.
(0) hoadafr(23); Entered. id = 1.
(0) hoadafr(23); Exited with retcode = 0.
(0) hoacomm(11); Entered. keepinfo = FALSE, tflag = 1.
(0) hoacomm(11); Exited with retcode = 0.
Regards, Charles.

Similar Messages

  • XML Validation using java for SQL Injection and script validation

    I have an input coming from xml file.
    I have to read that input and validate the input against sql injections and scripts.
    I require help now how to read this xml data and validate against the above two options.
    I am a java developer.
    in this context what is marshelling?

    http://www.ibm.com/developerworks/library/x-javaxmlvalidapi.html?ca=dgr-lnxw07Java-XML-Val
    http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/validation/package-summary.html
    The following code validates the xml against a xml schema
    // define the type of schema - we use W3C:
    String schemaLang = "http://www.w3.org/2001/XMLSchema";
    SchemaFactory factory = SchemaFactory.newInstance(schemaLang);
    Schema schema = factory.newSchema(new StreamSource("sample.xsd"));
    Validator validator = schema.newValidator();
    // at last perform validation:
    validator.validate(new StreamSource("sample.xml"));Message was edited by:
    haishai

  • Adding new element to BPEL for use in PL SQL type, has binding errors

    Figured I might as well post this here since I haven't gotten a single reply in 3 days anywhere else :/
    I have a BPEL service that calls a PL SQL procedure. I have added a new element to the BPEL called quote_cart_line.
    All I had to the BPEL to accomplish this was edit 3 files -
    Async_Invoke_Import_Model.xsd (Source)
    <element name="orig_sys_line_ref" type="integer" minOccurs="1" nillable="true"/>
           <element name="quote_cart_line" minOccurs="1" nillable="true" type="integer"/>
          </sequence>
    .....APPS_NI_MODEL_IMPORT_UTIL_IMPORT_SELECTIONS.xsd (Target)
    <element name="ORIG_SYS_LINE_REF" type="decimal" db:type="NUMBER" minOccurs="0" nillable="true"/>
             <element name="QUOTE_CART_LINE" type="decimal" db:type="NUMBER" minOccurs="0" nillable="true"/>
          </sequence>
    .....Transform_NIE_Inputs.xsl (Transforming from Source to Target)
    <ns1:orig_sys_line_ref>
              <xsl:value-of select="/ns1:Async_Invoke_Import_ModelProcessRequest/ns1:import_line/ns1:orig_sys_line_ref"/>
            </ns1:orig_sys_line_ref>
            <ns1:quote_cart_line>
              <xsl:value-of select="/ns1:Async_Invoke_Import_ModelProcessRequest/ns1:import_line/ns1:quote_cart_line"/>
            </ns1:quote_cart_line>
          </ns1:import_line>
    .....I have done this to two other BPELs and they work fine. (1st BPEL calls the second BPEL passing this new element, which then passes it to this BPEL I am having trouble with, which then should be binding it to a PL SQL type)
    So this BPEL calls a PL SQL procedure, binding the elements from the BPEL to a PL SQL type (ni_model_import_line). So I edited the PL SQL type to accept this new parameter:
    orig_sys_header_ref       NUMBER,
           quote_cart_line           NUMBER,
           CONSTRUCTOR FUNCTION ni_model_import_line(p_part_number                IN VARCHAR2,
    MEMBER PROCEDURE add_orig_sys_header_ref(p_org_sys_header_ref          IN NUMBER),
           MEMBER PROCEDURE add_quote_cart_line(p_quote_cart_line                 IN NUMBER)
    MEMBER PROCEDURE add_quote_cart_line(p_quote_cart_line                 IN NUMBER) IS
    BEGIN
       quote_cart_line := p_quote_cart_line;
    END add_quote_cart_line;
    END;
    .....I invoke all of this, and the new element gets populated in 3 different BPELs, including this one I explained here. But when it comes time to call the PL SQL I am now getting an error:
    <fault>
    -<bpelFault>
    <faultType>0</faultType>
    -<bindingFault xmlns="http://schemas.oracle.com/bpel/extension">
    -<part name="summary">
    <summary>
    Exception occured when binding was invoked.
    Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'nie_import_2' failed due to: Interaction processing error.
    Error while processing the execution of the APPS.NI_MODEL_IMPORT_UTIL.IMPORT_SELECTIONS API interaction.
    An error occurred while processing the interaction for invoking the APPS.NI_MODEL_IMPORT_UTIL.IMPORT_SELECTIONS API. Cause: java.lang.NullPointerException
    The invoked JCA adapter raised a resource exception.
    Please examine the above error message carefully to determine a resolution.
    </summary>
    </part>
    -<part name="detail">
    <detail>null</detail>
    </part>
    -<part name="code">
    <code>null</code>
    </part>
    </bindingFault>
    </bpelFault>
    </fault>This doesnt happen if I remove the references to this new element and try again, so it obviously is a problem with the element, but I have no idea what it is. It works fine when going from BPEL to BPEL, but as soon as the process tries to call the PL SQL procedure this happens. It is even more frustrating because I have done this exactly before adding another element, and it worked fine...
    Any ideas or tips please?

    Figured I might as well post this here since I haven't gotten a single reply in 3 days anywhere else :/
    I have a BPEL service that calls a PL SQL procedure. I have added a new element to the BPEL called quote_cart_line.
    All I had to the BPEL to accomplish this was edit 3 files -
    Async_Invoke_Import_Model.xsd (Source)
    <element name="orig_sys_line_ref" type="integer" minOccurs="1" nillable="true"/>
           <element name="quote_cart_line" minOccurs="1" nillable="true" type="integer"/>
          </sequence>
    .....APPS_NI_MODEL_IMPORT_UTIL_IMPORT_SELECTIONS.xsd (Target)
    <element name="ORIG_SYS_LINE_REF" type="decimal" db:type="NUMBER" minOccurs="0" nillable="true"/>
             <element name="QUOTE_CART_LINE" type="decimal" db:type="NUMBER" minOccurs="0" nillable="true"/>
          </sequence>
    .....Transform_NIE_Inputs.xsl (Transforming from Source to Target)
    <ns1:orig_sys_line_ref>
              <xsl:value-of select="/ns1:Async_Invoke_Import_ModelProcessRequest/ns1:import_line/ns1:orig_sys_line_ref"/>
            </ns1:orig_sys_line_ref>
            <ns1:quote_cart_line>
              <xsl:value-of select="/ns1:Async_Invoke_Import_ModelProcessRequest/ns1:import_line/ns1:quote_cart_line"/>
            </ns1:quote_cart_line>
          </ns1:import_line>
    .....I have done this to two other BPELs and they work fine. (1st BPEL calls the second BPEL passing this new element, which then passes it to this BPEL I am having trouble with, which then should be binding it to a PL SQL type)
    So this BPEL calls a PL SQL procedure, binding the elements from the BPEL to a PL SQL type (ni_model_import_line). So I edited the PL SQL type to accept this new parameter:
    orig_sys_header_ref       NUMBER,
           quote_cart_line           NUMBER,
           CONSTRUCTOR FUNCTION ni_model_import_line(p_part_number                IN VARCHAR2,
    MEMBER PROCEDURE add_orig_sys_header_ref(p_org_sys_header_ref          IN NUMBER),
           MEMBER PROCEDURE add_quote_cart_line(p_quote_cart_line                 IN NUMBER)
    MEMBER PROCEDURE add_quote_cart_line(p_quote_cart_line                 IN NUMBER) IS
    BEGIN
       quote_cart_line := p_quote_cart_line;
    END add_quote_cart_line;
    END;
    .....I invoke all of this, and the new element gets populated in 3 different BPELs, including this one I explained here. But when it comes time to call the PL SQL I am now getting an error:
    <fault>
    -<bpelFault>
    <faultType>0</faultType>
    -<bindingFault xmlns="http://schemas.oracle.com/bpel/extension">
    -<part name="summary">
    <summary>
    Exception occured when binding was invoked.
    Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'nie_import_2' failed due to: Interaction processing error.
    Error while processing the execution of the APPS.NI_MODEL_IMPORT_UTIL.IMPORT_SELECTIONS API interaction.
    An error occurred while processing the interaction for invoking the APPS.NI_MODEL_IMPORT_UTIL.IMPORT_SELECTIONS API. Cause: java.lang.NullPointerException
    The invoked JCA adapter raised a resource exception.
    Please examine the above error message carefully to determine a resolution.
    </summary>
    </part>
    -<part name="detail">
    <detail>null</detail>
    </part>
    -<part name="code">
    <code>null</code>
    </part>
    </bindingFault>
    </bpelFault>
    </fault>This doesnt happen if I remove the references to this new element and try again, so it obviously is a problem with the element, but I have no idea what it is. It works fine when going from BPEL to BPEL, but as soon as the process tries to call the PL SQL procedure this happens. It is even more frustrating because I have done this exactly before adding another element, and it worked fine...
    Any ideas or tips please?

  • Is it possible to use MERGE with sql*plus and if yes how?

    Hello everybody,
    I have an xls file and I have to load its data with sql*loader, but instead of "APPEND" operation stated in the control file I need MERGE operation.Here is what my control file contains:
    LOAD DATA
    INFILE 'C:\WORK\DSK_WH\LOAD_FIRST\sqlldr\data.csv'
    BADFILE 'C:\WORK\DSK_WH\LOAD_FIRST\sqlldr\p_badfile.txt'
    APPEND
    INTO TABLE D_ACCOUNT_NAMES_TMP
    FIELDS TERMINATED BY ";"
    TRAILING NULLCOLS
    (account_number , consignment, sub_consignment, consign_sub_consign, account_name_bg, account_number_2, consign_parent_2, account_name_bg_2, account_number_3, account_name_bg_3, account_number_4, account_name_bg_4, account_number_5 , ACCOUNT_NAME_BG_5 ).
    How can I use merge in this case , instead of insert ?
    Regards,
    Maria

    I'm not sure if there is any MERGE thing in SQL*Loader, but you can have a backup table which gets loaded by SQL*Loader and then use MERGE statement from backup to the original table, if your data is not huge to become a performance barrier. This is just a suggestion, may be you can try some reading of SQL*Loader here.
    http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96652/part2.htm#436160
    Cheers
    Sarma.

  • Java.sql.types and oracletypes

    There appear to be difference in the way the constants are mapped in java.sql.types vs oracletypes(). For example date is '91' in oracletypes and '93' in java.sql.types. The DatabaseMetaData.getColumns() function reports data_type as a java.sql.type. Is there any mapping available from one to the other.
    Thanks

    Erm,
    One way to find out, I reckon.
    Good Luck,
    Avi.

  • Create table dinamically using java sql types?

    Hi! I've an application that reads an XML file. This file contains de definitions of some tables, using java sql types. For example:
    <dbtable>
      <dbtablename>Name of table</dbtablename>
      <dbtablefield>
        <name>Name of table field</name>
        <type>java.sql.Types.VARCHAR</type>
        <length>10</lenght>
        <canNull>0</canNull>
        <isPK>1</isPK>
      </dbtablefield>
    </dbtable>That's a little example of one table, with one field. Is a java.sql.Types.VARCHAR (or is equivalent in int), which has a size of 10, it cannot be null and is a primary key for the table.
    Now, the lenght, null, and primary keys are not problem at all. What I want to know, is how do I create de table using the java.sql.Types. I mean, I don't want to hard code:
    String s = "CREATE TABLE name (COLUMN VARCHAR(10)...";Instead, I want to use some "wild cards", as are used in PreparedStatement. The idea of this is that no matter what DB I'm using, I must always be capable of creating the tables not worrying for the DB. I mean, I must be able to create the table in Oracle, SQL Server, DB2, etc., using the same XML and the same java class.
    Something like:
    String s = "CREATE TABLE name (COLUMN ? (10)...";
    someobject.setObject(1,java.sql.Types.VARCHAR);
    someobject.execute(); //create tableIs this possible? Or do I have to make a map for each DB?
    Thanks a lot for your help! Dukes available!

    you can provide some fields at runtime..
    for example
    "CREATE TABLE name (COLUMN" + arg[1] +"(10)..."
    here arg is the string array passed into the main.

  • How to use PL/SQL type table in SQL FROM clause

    Hi All,
    I have to use a PL/SQL type table in our SQL statement as a table?
    I am using the syntax (below) but it gives PL/SQL: ORA-00902: invalid datatype
    SELECT ... FROM TABLE(CAST( var_pl/sql_table AS pl/sql_table)) tab WHERE tab.a=1;
    Plz reply with an example.
    Thanks.. Ratan

    You don't need a cast!!!
         select *
         from table ( <nested_table> )
         where <condition>Anyway, are you sure that tab.a is a number?
    Here follows an example with an useful function
    CREATE OR REPLACE
    type string_table  as table of varchar2(4000)
    CREATE OR REPLACE
    FUNCTION split_string (
         string IN varchar2,
         delimiter IN varchar2
    ) RETURN  string_table IS
         tab string_table;
         pre integer;
         post integer;
         step integer;
         i integer;
    BEGIN
         pre := 1;
         step := length(delimiter);
         i := 0;
         tab := string_table();
         loop
              tab.extend;
              i := i + 1;
              post := instr(string,delimiter,pre);
              if ( post = 0 ) then
                   tab(i) := substr(string,pre);
                   return tab;
              end if;
              tab(i) := substr(string,pre,post-pre);
              pre := post + step;
         end loop;
    END;
    select * from table (split_string('abc,dfg,hij',','))
    Query finished, retrieving results...
                                      COLUMN_VALUE                                  
    abc                                                                             
    dfg                                                                             
    hij                                                      

  • Using unlinked sql command and table in a subreport

    All,
    Does CR allow using an unlinked sql command and a table in the same subreport?  I am passing the CurrentCEUserName from the main report to the sql command in the subreport (via linked parameter).  The sql command then executes a query to pass the parameter to the database (example: select myfunction('{?myparam}' from dual).  I need this to run before subreport's table query is executed. 
    This all appears to work except that the parameter passed to the sql command isn't set when the command executes.  The value is always null when the sql command is executed.  If I add the parameter to the report output it shows the expected value. 
    Also, if I have a subreport that just has a single sql command the parameter is set correctly prior to executing the command.
    any help would be appreciated.
    thanks!

    If you are looking for Crystal to run the SQL Command, then the SQL it generates itself, I think the answer is no, it won't do that.  Crystal expects all of the data sources to be linked, I believe.  I'm not sure what you would expect to happen if they are not...  However, you can make your SQL Command something like (MS SQL; sorry, it's been too long since I've used Oracle...):
    declare @result varchar(100);
    set @result = ( select myfunction('{?myparam}') );
    select * from table;
    which would run the first select calling your function, basically throw away the result (or you can do with it as needed), then return the fields from your table.
    HTH,
    Carl

  • Can you use Object Relational SQL to access XML content ?

    Is there a possibility to use the generated object types and collection types to conveniently access the xml data?

    Technically there is nothing to prevent you from using the object types generared when an XML Schema is registered to access and manipulate the contents of the instance documents that conform to the Schema. This would be done using the notation x.xmldata.attribute In this case x would be the object table, xmldata is the name of the instance of the SQL object type associated with the table in question.
    However we do not encourage or recommend this approach. Currently XML DB provides the application developer with DML / DDL independence. This holds true as long as you use XPATH expressions to express your DML operations. Using XPATH expressions to access the content of an XML document maintains an abstraction between the DML (XPATH) and the underlying Object Relational Storage Structure derived from the information in the corresponding XML Schema. Whereever possible, when you express a query using an XPATH expression, under the covers we attempt to re-write the query into Object Relational SQL, based on the meta data contained in the Schema, as access v
    If you use the object notation to access the content of the document you break this abstraction. Your application now needs to be aware of the physical (object relational) storage model being used to manage the instance documents.
    One of the key features of XML DB is that it allow a developer to use Schema Annotations to alter the storage model used to manage the instance documents. The most common example of this is using annotations to control the way in which collections are managed. Depending on the annotation in the schema you can store collections as a VARRAY, as a NestedTable or as a separate XMLType table. Dependong on the technique chosed the objects that are generated during the XML Schema registration process will change.
    If you use the XPATH expressions to accesss the content of your documents, and you decided to change the annotations in your schema so as to revise the way your documents are stored, XML DB will ensure your code should continue to work unchanged, regardless of which objects are generated during Schema registration. On the other hand, if you use the object notation to access the content of the documents, and then change the annotation you will have to change your code.
    I hope this clarifies the situation..

  • Source for Custom Action Table in SQL 2008 and above.

    Up till SQL 9.0, there used to be a CustomAction table in SqlRun.msi but this file was removed in the later versions. Is this still there in any other file or is there an alternate source for pausing the install process at a certain stage?
    yup

    SQLrun.msi is removed from 2008 onwards but it was not used for stopping intall process as per below link it was used for starting SQL server and getting info about list of application installed
    SQLmsi file
    What is your requirement exactly
    Please mark this reply as the answer or vote as helpful, as appropriate, to make it useful for other readers
    My TechNet Wiki Articles

  • BOXI R2 deployment on Solaris, data access to SQL Server and DB2

    <p>Have you deployed BusinessObjects XI Release 2 on Solaris and are accessing Microsoft SQL server 2000/2005? How about DB2? We had planned on using JDBC for SQL Server, and StarSQL 5.x  for DB2. We are having trouble with configuration planning.</p><p>Anyone have experience with this?</p>

    <p>Have you deployed BusinessObjects XI Release 2 on Solaris and are accessing Microsoft SQL server 2000/2005? How about DB2? We had planned on using JDBC for SQL Server, and StarSQL 5.x  for DB2. We are having trouble with configuration planning.</p><p>Anyone have experience with this?</p>

  • Rtp from Business rule to be passed as template parameter using Member Range DTP type

    This is what I am trying to do. Use a template to define a part of the code and restrict the code from running for a particular Month. I have created a member range DTP and defined default values in it to exclude the one month I do not want.
    I have set up the template in my rule as given below and basically the parameter that is to be passed is a runtime prompt (rtp_Month), which I have selected.
    %Template(name:="Test",application:="XXXX",plantype:="Plan1",dtps:=("StartMonth":=([[Period.{rtp_Month}]])))
    Now when i run this, what will happen? Will the rule just skip the template part when rtp_month is the one i have excluded in the member range?
    OR, is this not the way to do what i am intending. I see a 'restricted value' type, but not sure how to get it to work.
    Thanks in advance.

    Thanks for the reply Sree.
    This is what I am trying to do.
    FIX ({rtp_StartMonth}:Aug)
        Calculations
      ENDFIX
    FIX(Sep)
    Calculations
    ENDFIX
    Now, when rtp_Month is selected as Sep, the first block of code should not run. So the template I created has the first fix block like,
    FIX ([Startmonth]:Aug)
        Calculations
      ENDFIX
    So, final BR code:
    %Template(name:="Test",application:="XXXX",plantype:="Plan1",dtps:=("StartMonth":=([[Period.{rtp_Month}]])))
    FIX(Sep)
    Calculations
    ENDFIX
    I am assuming: if i use the range DTP type and exclude 'sep' while defining the default values, the rule would bypass the template and run my second block of code.
    Is this assumption wrong?

  • Port, Message type and Function Group

    Hai,
      Iam working on an inbound process for four different Partners.
    Is there any need of Port for Inbound?
    Shall i use the same message type and Idoc type?
    And what about the function Group?
    Thanks
    Avi

    Hello,
    <b> If the functionality is same , you can use the same function Group.
    If functionality is different , you want to use different Function Group.
    Obvisouly, it is suggested to use different Message types .
    If you are using same fields ,you can use the same idoc type.
    depends on the scenior , the process code is needed. Generally no need.</b>
    Thanks
    Manju

  • BBP_BS_GROUP_BE for new document type and number range

    Hi gurus,
    I am working on Classic scenario in SRM and currently have used the above BADI to use a different document type and number range when creating the PO in the backend system. It all works fine. The only thing is I noticed that the BE_DOC_TYPE field in the shopping cart is still reflected as 'EC' even though the PO created in ECC is for example EC1. My question: Is this standard SRM? If so, is it common to leave this field as it is or is it advisable for us to change the document type to EC1 as well? Also, is there any implication in standard SRM reporting and downstream processes that you are aware of?
    Appreciate any advice on the above.
    Cheers!
    Sf

    We have ended up having to populate the document type on a custom field or alternatively replace the existing one.

  • Message type and IDoc type to update a sales order

    I can create sales order at WE19 by the message type SALESORDER_CREATEFROMDAT2 and IDoc type SALESORDER_CREATEFROMDAT202 . Can I use the same message type and IDoc type to update a sales document (sales order) and also how can I do (I mean, which structures should I use; at E1BPSDHD1X - UPDATEFLAG what should I enter? Put an X to update a document or etsc?)? I enter the "E1BPSDHD1X - UPDATEFLAG" as X, "E1BP_SENDER - LOG_SYSTEM", "E1BPSDITM - ITM_NUMBER", " E1BPSDITM - MATERIAL", "E1BPPARNR - PARTN_ROLE", "E1BPPARNR - PARTN_NUMB" and "E1BPSCHDL - REQ_QTY". The sales order quantity is at "E1BPSCHDL - REQ_QTY" and it is the field that I want to update. When I look at the transaction code BD87, I see the status text as "Enter a document number between 0005000000 and 0005999999". I cannot update the order. How can I update it? Canybody explain me in a detailed manner?
    Thanks in advance....
    Edited by: Hikmet Akcali on Oct 21, 2009 4:00 PM

    At the IDoc type pop-up selection, there are 3 types. These are: ORD_ID01, ORDERS05 and /NFM/ORDERS05. SAP system component version is SAP ECC 6.0 . I choose ORD_ID01. There are structures EDI_Z1, EDI_Z3, EDI_Z5, EDI_Z9 and EDI_Z53. Where should I enter the number of the sales document to be updated? Also, which function module should I choose?
    Edited by: Hikmet Akcali on Oct 21, 2009 5:34 PM

Maybe you are looking for