Create Dynamic Views

Hi,
I've a procedure that compiles correctly but give errors when executing in a Oracle 10g environment.
CREATE OR REPLACE PROCEDURE gen_wasc(sch_id NUMBER,fis_yr NUMBER)
Authid current_user
IS
BEGIN
     EXECUTE IMMEDIATE
    'CREATE OR REPLACE VIEW ' || 'WASC_SCH' || sch_id || 'L_STU_' || fis_yr ||
    'AS
     SELECT     sd.stuid,sd.name_first,sd.name_last,se.sess,se.sch_id,se.status_cd,sd.dist_entry_dt,
     se.entry_dt,sd.dist_exit_dt,se.exit_dt,se.fiscal_yr,se.grd_lvl
     FROM STUDENTS sd, ENROLLMENT se
     WHERE se.stu_id = sd.stu_id
     AND se.fiscal_yr= ' || fis_yr ||
    'AND se.sch_id = ' || sch_id ||
    'AND se.sess =2';
END;
BEGIN
gen_wasc (2,2004);
END;
The error is:
ORA-00905: missing keyword
ORA-06512 at, line 6
ORA-06512: at line 2
00905.0000 - "missing keyword"I'm not sure what the error is. Could someone give me a hand with this.
Thanks

> I've to pass in different school id and fiscal year to generate a report. The intent of the
dynamic view is to hand the script to the DBA to install on production server so I can just
call the procedure without handing him a different set views each time for the different
school id and fiscal year.
/me sobbing uncontrollably
(that is what I would do if I was your DBA - either that or pull out my lead pipe and take a good swipe at this
<insert dirty words here> approach)
Question. Do you know what SQL is? Do you what the purpose of SQL is? Do you realise that SQLs are programs that
contains instructions on how to process/manipulate/fetch data? And that like all programs, support variables? And
that is is truly silly to create a thousand and one copies of the very same program to fetch a data where the only
difference in the program is the values?

Similar Messages

  • How to create dynamic view in hr report category

    i want to make company code mandetory in in selection screen given by logical data base PNP here i want to make field mandetory. so how to create dynamic view in hr report category.
    thanks in advance

    solved by self

  • How to create dynamic View Object and Dynamic Table

    Dear ll
    I want to create a dynamic view object and display the output in a dynamic table on the page.
    I am using Jdeveloper 12c "Studio Edition Version 12.1.2.0.0"
    This what I did:
    1- I created a read only view object with this query "Select sysdate from dual"
    2- I added this View object to the application module
    3- I created a new method that change the query of this View object at runtime
        public void changeVoQuery(String dbViewName) {
            String sqlstm = "Select * From " + dbViewName;
            ViewObject dynamicVo = this.findViewObject("DynamicVo");
            if (dynamicVo != null) {
                dynamicVo.remove();
            dynamicVo = this.createViewObjectFromQueryStmt("DynamicVo", sqlstm);
            dynamicVo.executeQuery();
    4- I run the application module for testing the method and I passed "Scott.Emp" as a parameter and the result was Success
    5- Now I want to show the result of the view on the page, so I draged and dropped the method from the data control as a parameter form
    6- I dragged and dropped the view Object "DynamicVo" as a table and I choose "generate Column Dynamically at runtime". This is the page source
    <af:panelHeader text="#{viewcontrollerBundle.SELECT_DOCUMTN_TYPE}" id="ph1">
            <af:panelFormLayout id="pfl1">
                <af:inputText value="#{bindings.dbViewName.inputValue}" label="#{bindings.dbViewName.hints.label}"
                              required="#{bindings.dbViewName.hints.mandatory}"
                              columns="#{bindings.dbViewName.hints.displayWidth}"
                              maximumLength="#{bindings.dbViewName.hints.precision}"
                              shortDesc="#{bindings.dbViewName.hints.tooltip}" id="it1">
                    <f:validator binding="#{bindings.dbViewName.validator}"/>
                </af:inputText>
                <af:button actionListener="#{bindings.changeVoQuery.execute}" text="changeVoQuery"
                           disabled="#{!bindings.changeVoQuery.enabled}" id="b1"/>
            </af:panelFormLayout>
        </af:panelHeader>
        <af:table value="#{bindings.DynamicVo.collectionModel}" var="row" rows="#{bindings.DynamicVo.rangeSize}"
                  emptyText="#{bindings.DynamicVo.viewable ? 'No data to display.' : 'Access Denied.'}"
                  rowBandingInterval="0" selectedRowKeys="#{bindings.DynamicVo.collectionModel.selectedRow}"
                  selectionListener="#{bindings.DynamicVo.collectionModel.makeCurrent}" rowSelection="single"
                  fetchSize="#{bindings.DynamicVo.rangeSize}" filterModel="#{bindings.DynamicVoQuery.queryDescriptor}"
                  queryListener="#{bindings.DynamicVoQuery.processQuery}" filterVisible="true" varStatus="vs" id="t1"
                  partialTriggers="::b1">
            <af:iterator id="i1" value="#{bindings.DynamicVo.attributesModel.attributes}" var="column">
                <af:column headerText="#{column.label}" sortProperty="#{column.name}" sortable="true" filterable="true"
                           id="c1">
                    <af:dynamicComponent id="d1" attributeModel="#{column}"
                                         value="#{row.bindings[column.name].inputValue}"/>
                </af:column>
            </af:iterator>
        </af:table>
    when I run the page this error is occured
    <Nov 13, 2013 2:51:58 PM AST> <Error> <oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter> <BEA-000000> <ADF_FACES-60096:Server Exception during PPR, #1
    javax.el.ELException: java.lang.NullPointerException
    Caused By: java.lang.NullPointerException
    Can any body help me please
    thanks

    Have you seen Shay's video https://blogs.oracle.com/shay/entry/adf_faces_dynamic_tags_-_for_a
    All you have to do is to use the dynamic table to get your result.
    Timo

  • Error in creating dynamic view

    Hi,
    I am using the following to create a dynamic view which will be created on runtime and conditions will be provided by user. Here is the code:
    CREATE OR REPLACE PROCEDURE DYN_VIEW_PROC(PARA IN NUMBER)
    AS
    DEPT_NO NUMBER(3) := PARA;
    DYN_QUERY VARCHAR2(1000);
    BEGIN
    DYN_QUERY := ' CREATE OR REPLACE VIEW DYN_VIEW
    AS SELECT EMPNO,ENAME,DEPTNO FROM EMP_NEW
    WHERE DEPTNO > :1 ';
    EXECUTE IMMEDIATE DYN_QUERY USING DEPT_NO;
    END;
    But when i execute this code i got the following error:
    SQL> EXEC DYN_VIEW_PROC(10);
    BEGIN DYN_VIEW_PROC(10); END;
    ERROR at line 1:
    ORA-01027: bind variables not allowed for data definition operations
    ORA-06512: at "SYS.DYN_VIEW_PROC", line 9
    ORA-06512: at line 1
    If i hardcode the condition in the defenation of view then it works fine. Any solution of it.

    It looks strange.And more so, since the view name seems the same across each invocation (unless the example is missing that detail). So, if two users were creating this view one after the other and then subsequently try to use it, what would each user see in their output???
    Not the rows based on their where condition, possbily.
    You would create the view only once with all the necessary joins and any static conditions. Then users would use it as and when necessary, supplying their custom where condition on top of it.
    What is the need you are trying to solve using this dynamic view creation?

  • Create dynamic view link

    my problem is
    I build the first view link by using createViewObjectFromQueryStmt method on my application module instance ,then I build the second view link by using createViewObjectFromQueryStmt method on my application module instance,now when I use myAppModule.createViewLink(),he give me an exception about the definition of the viewLink.
    please can you explain the first parameter of the method createViewLink() and how I can get it.
    thanks in advance

    In that case, the first parameter is the name of the ViewLink which you can freely assign. Later you can retrieve the VL from the AM by calling findViewLink( name ).
    But if you create your VOs dynamically from a statement, then you probably need to use createViewLinkBetweenViewObjects() since you don't have a prepared VL definition. Haven't done it myself yet, but it should work.
    Like explained here:
    BC4J Master-Detail-Detail
    Sascha

  • How to create dynamic views

    HI all,
    My requirement is, i need to do an webdynpro application as name,age,gender,qualification,and country in a view, in the same view i have an name input filed box extra in which if i edit 2 i need to display 2 names, if i edit 4 i need to display 4 names and so on...... plz tell me how to do this
    Thanks
    jagadeesh

    Maybe you can use only one view ... being called several times (different instances). And it dynamically creating components at runtime.
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/b3f6e990-0201-0010-c087-c865f2c738b3
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/74cda090-0201-0010-6b91-f85b2489f765
    /people/ulrich.waiditschka/blog/2007/11/28/dynamic-user-interface-generation-in-web-dynpro-for-java--use-and-implementation
    http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/74cda090-0201-0010-6b91-f85b2489f765
    regards,
    Angelo

  • Create dynamically View Link

    hi
    please can you explain the first parameter from the method (createviewlink(string,VO,VO)),because i want to build view link between two dynamic VO's
    it better as an example
    thanks in advance
    Message was edited by:
    Abo Alnnor

    If that's DBTransaction.createViewLink() then the first parameter is the full def name of the ViewLink.
    For example "some.rather.long.package.path.Dept2EmpViewLink".
    So you define the ViewLink using the wizard in JDev at design time, but instantiate it according to that definition at runtime.
    Sascha

  • Updatable , Dynamic VIEW OBJECT ??

    Hi ,
    I want to create a dynamic VO which is updatable.
    I dont have any information about the table on which my View Object is based on, at DESIGN TIME. At run time I create query for the view and create dynamic view using AM.createViewObjectFromQueryStmt(String, String) but this kind of view will not be an updatable view.
    I think if I use createViewObjectFromQueryClauses() from entity, it will be updatable,,,but in that I will have to create entities for all the table in my schema ..which sounds BAD...
    is there any thing as DYnamic Entities ??
    or any other trick to do this.....
    BC4J should support something like changing QUERY_DATA_SOURCE_NAME at runtime in oracle forms.. which allow you to update record.
    Thanx,
    Prasoon

    Hi Prasoon,
    Steve Muench's "Dive Into BC4J" page has the following example: http://radio.weblogs.com/0118231/stories/2003/07/15/creatingUpdateableMultientityViewObjectDefinitionsDynamically.html
    But this is based on pre-defined Entity Objects. It might give you some ideas, though.
    Good luck!
    Chris

  • Problem in BDC with ( MM01-Dynamic views )

    HI
    I am working with BDC on material Mater(mm01).
    Now while Creating Material,there is option of selecting different views based on MaterialType.
    But while recording a BDC i can record it for a particular Material Type.and can select view associated to that particular Material Type.
    Is there any solution to create a bdc progarm which can accept a new material based on
    any material type and having views on user's choice that are given by user in Input file.
    FOr that i think i need to create dynamic views and screen elements for input associated to those views.
    After scanning some sites and forums for this particular problem,i got some help on this:-----
    <b>SELECTION_VIEWS_FIND</b> should be very useful in this case.
    There are three FModules totally involved:
    a) <b>T130M_SINGLE_READ</b>
    Pass TCODE = MM01, and get T130M values
    b) <b>BILDSEQUENZ_IDENTIFY</b>
    Pass KZRFB = 'X',TCODE_REF=T130M-TRREF and get
    BILDSEQUENZ values
    c) <b>SELECTION_VIEWS_FIND</b>
    Pass BILDSEQUENZ and T130M-PSTAT
    Now, this function module holds the values of all the views and the next screen numbers
    But i am unable to interpret the solution..Can somebody Elaborate on this.or provide me some other solution for this.
    Thanks in Advance
    Help Will be appreciated.

    Yes, I agree with Christian.  You are gonna want to use the BAPI or the underlying function module.  It works good and isn't really that complex.  Here is sample program.  Here the function module is being used to change data,  it can also be used to create,  you will have to change the Tcode from MM02 to MM01.
    report zrich_0001.
    data: i_mara type table of mara_ueb with header line.
    data: i_marc type table of marc_ueb with header line.
    data: i_marcx type table of marc with header line.
    parameters: p_matnr type mara-matnr,
                p_plifz type marc-plifz.
    start-of-selection.
    * Get all plants for that material
      select * into corresponding fields of table i_marcx
            from marc where matnr = p_matnr.
    * Now maintain data for each plant
      loop at i_marcx.
    * Reset I_Mara to new material number
        clear i_mara. refresh i_mara.
        select * into corresponding fields of table i_mara
              from mara where matnr = p_matnr.
        read table i_mara index 1.
        i_mara-tcode = 'MM02'.
        i_mara-tranc = '0000000001'.
        modify i_mara index 1.
    * Get Plant Data
        clear i_marc. refresh i_marc.
        select * into corresponding fields of table i_marc
              from marc where matnr = i_marcx-matnr
                          and werks = i_marcx-werks.
        read table i_marc index 1.
        i_marc-plifz  = p_plifz.        " Plan Del time
        i_marc-tranc = '0000000001'.
        modify i_marc index 1.
    * Maintain material
        perform MATERIAL_MAINTAIN_DARK'.
      endloop.
    *  MATERIAL_MAINTAIN_DARK
    form MATERIAL_MAINTAIN_DARK.
    * Variable for "Maintain_Material_Dark" Function Module
      data: numerror like tbist-numerror.
      data: last_matnr type mara-matnr.
      data: i_delfields type table of mfieldres with header line.
      data: i_errors    type table of merrdat   with header line.
      call function 'MATERIAL_MAINTAIN_DARK'
             exporting
                  sperrmodus                = ' '
                  kz_prf                    = 'W'
                  max_errors                = ' '
                  p_kz_no_warn              = 'X'
                  kz_verw                   = 'X'
                  kz_aend                   = 'X'
                  kz_dispo                  = 'X'
                  kz_test                   = ' '
                  flag_muss_pruefen         = ' '
                  call_mode                 = 'ACT'
             importing
                  number_errors_transaction = numerror
                  matnr_last     = last_matnr
             tables
                 amara_ueb      = i_mara    "Basic Data
    *             amakt_ueb      = i_makt    "Descriptions
                 amarc_ueb      = i_marc    "Plant
    *             amard_ueb      = i_mard    "Storage Location
    *            AMFHM_UEB      = I_MFHM    "Production Tools
    *             amarm_ueb      = i_marm    "Units of Measure
    *            AMEA1_UEB      = I_MEA1    "Internal Mangagement -  EANs
    *             ambew_ueb      = i_mbew    "Accounting/Costing
    *             asteu_ueb      = i_steu    "Tax Data
    *             astmm_ueb      = i_steumm  "Tax Data
    *            AMLGN_UEB      = I_MLGN    "Warehouse Data
    *            AMLGT_UEB      = I_MLGT    "Storage Type Data
    *            AMPGD_UEB      = I_MPGD    "Change Documents
    *            AMPOP_UEB      = I_MPOP    "Forcast Parameters
    *            AMVEG_UEB      = I_MVEG    "Total Consumption Data
    *            AMVEU_UEB      = I_MVEU    "Unplanned Consumption Data
    *             amvke_ueb      = i_mvke    "Sales Data
    *             altx1_ueb      = i_ltx1    "Sales Text
    *            AMPRW_UEB      = I_MPRW    "Forcast Values
                 amfieldres     = i_delfields
                 amerrdat       = i_errors
             exceptions
                  kstatus_empty             = 01
                  tkstatus_empty            = 02
                  t130m_error               = 03
                  internal_error            = 04
                  update_error              = 05
                  too_many_errors           = 06.
      if sy-subrc <> 0.
        rollback work.
        call function 'DEQUEUE_ALL'.
      else.
        commit work and wait.
        call function 'DEQUEUE_ALL'.
      endif.
      clear: i_mara, i_marc.
      refresh: i_mara, i_marc.
    endform.
    Regards,
    Rich Heilman

  • Creating and Accessing a Dynamic View Object

    Hi,
    I'm needing to create a Dynamic View Object so to have the ability to modify the FROM and WHERE clauses in an SQL statement.
    I then need to view all the columns and rows in an adf table or something similar.
    I've read up a fair bit on similar situations, however I'm struggling with the basic framework of building the View Object.
    I know I'm wanting to use ..createViewObjectFromQueryStmt..but just unsure of the syntax in using it, especially connecting the VO to an Application Module.
    This is similar to what I've got now, located in AppModuleImpl.java
        public void createDynVO(ApplicationModule appMod, String FROMclause, String WHEREclause){
        String SQL = "SELECT JOURNAL_NAME, PERIOD_NAME FROM " + FROMclause + " " + WHEREclause;
        ViewObject vo = appMod.createViewObjectFromQueryStmt("DynamicView", SQL);
        vo.executeQuery();But how does it know what the application module is?
    Any help would be greatly appreciated!
    -Chris

    Ok, I've actually modified my approach to this.
    I've created a View Object in the design view, added it to the App Module, and then created an iterator and bound an adf table to that iterator.
    The View Object which I created has the same column names as what I am going to be getting later down the track.
    Everything is working perfectly, except that I can't seem to bind variables to the WHERE clause.
    Below is what I have got running:
        public void recreateDynView(String FromClause, String whereCompany, String whereDepartment) {
             String sql_PAGE_ITEM1 = " AND PAGE_ITEM1 LIKE :P_PAGE_ITEM1";
             String sql_PAGE_ITEM2 = " AND PAGE_ITEM2 LIKE :P_PAGE_ITEM2";
             findViewObject("DynamicView1").remove();
             String SQLStmt = "SELECT PAGE_ITEM1, PAGE_ITEM2, PAGE_ITEM3, LINE_ITEM FROM " + FromClause;
             ViewObject vo = createViewObjectFromQueryStmt("DynamicView1",SQLStmt);
             vo.setWhereClause("1=1");
               if (whereCompany != null && whereCompany.length()>0){
                   vo.setWhereClause(vo.getWhereClause() + sql_PAGE_ITEM1);
                   vo.defineNamedWhereClauseParam("P_PAGE_ITEM1",null,null);
                   vo.setNamedWhereClauseParam("P_PAGE_ITEM1",whereCompany);
               if (whereDepartment != null && whereDepartment.length()>0){
                   vo.setWhereClause(vo.getWhereClause() + sql_PAGE_ITEM2);
                   vo.defineNamedWhereClauseParam("P_PAGE_ITEM2",null,null);
                   vo.setNamedWhereClauseParam("P_PAGE_ITEM2",whereDepartment);
             vo.executeQuery();
           }However whenever I input a value into one of the bound variables, I get the following error on the page.
       1. JBO-29000: Unexpected exception caught: oracle.jbo.InvalidOperException, msg=JBO-25070: Where-clause param variable P_PAGE_ITEM1 needs ordinal index array.
       2. JBO-25070: Where-clause param variable P_PAGE_ITEM1 needs ordinal index array.In the view object which i created at design stage, I've set the binding style to Oracle Named, so it should be alright. But obviously since I'm removing the view object and creating another version of it, it doesn't have the same binding style attached by default?
    Is there a work around for this? I'm so close!
    -Chris

  • How to create dynamic elements in action of a view?

    hi all,
    I created 2 buttons dynamically in WdDoModifyView(). I created  action1, and parameter for that action i.e, id of type string.
    when i click on button1, some ui elements must be displayed.....
    can anyone tell me how to dynamically add UI elements in onAction() of view.....
    i wrote the following code to create & map dynamically in WdDoModifyView()........
    if(firstTime)
        IWDButton b1=(IWDButton)view.createElement(IWDButton.class,"button1");
        b1.setText("Button1");
        IWDButton b2=(IWDButton)view.createElement(IWDButton.class,"button2");
        b2.setText("Button2");
        IWDTransparentContainer tc=(IWDTransparentContainer)view.getElement("RootUIElementContainer");
        tc.addChild(b1);
        tc.addChild(b2);
         IWDButton butt1 = (IWDButton)view.getElement("button1");
         IWDParameterMapping pm1a = butt1.mappingOfOnAction();
         pm1a.addParameter("id1","link1a");
         IWDButton butt2 = (IWDButton)view.getElement("button2");
         IWDParameterMapping pm1b = butt2.mappingOfOnAction();
         pm1b.addParameter("id1","link1b");
    after writing this..... in onAction().........of view... i wrote like this...
    if (id1.equals("link1a"))
    else{
    in the if & else condition, i have to create UI elements dynamically.
    when i am trying to create Ui elements dynamically, but i am unable to create dynamically here.
    pls give me suggestion how to proceed this
    regards,
    vila

    Hi Vila,
    Are you trying to create UI elements dynamically in the action? If yes then you won't be able to do so because you can only create UI elements dynamically in WDDoModifyView().
    Always WDDoModifyView() would be called after your action. So, you can handle it as you want in your WDDoModifyView() itself.
    But if you want that those elements should be created everytime when you fire an event then don't write it within if(firstTime) clause as this would be true only when WDDoModifyView() is called for the first time when the page intially loads.
    Regards,
    Murtuza

  • How to create a dynamic view

    I have 5 tables
    of which one table is transaction table which stores all the trasanctions
    it has near about 30 colms
    from which i need create a dynamic view...
    where user have to passed 5, 6 parameters and get the result .
    how can i create a precompiled view ..

    Why do you want to create a dynamic view.
    It's a bad practice. You had already all column names.
    I think , you can simply create a static view in design time.

  • How to create a view dynamicly in plsql?

    I need to write a pl/sql package to create a view dynamic
    ,but i can't use 'create or replace view xxxx as select *
    from db where ...',I know the dbms_sql package can parse the
    'select' sentence,but i don't know how to create a view,only can
    drop a view,who can help me?
    thanks!
    null

    Try 'EXECUTE IMMEDIATE 'CREATE AS SELECT....' in your PL/SQL
    xhpxorcl (guest) wrote:
    : I need to write a pl/sql package to create a view dynamic
    : ,but i can't use 'create or replace view xxxx as select *
    : from db where ...',I know the dbms_sql package can parse the
    : 'select' sentence,but i don't know how to create a view,only
    can
    : drop a view,who can help me?
    : thanks!
    null

  • How to create dynamic panel tree view?

    Hello,
         I can create dynamic pallete panel without any problems (from sdk/paneltreeview) , but i can't when it's a panel tree view (from sdk/paneltreeview). I don't know how to initialize it.  Can i call IID_ITREEVIEWWIDGETMGR's impl directly in ActionComponent to create panel widget? and how?
    Thanks in advance.

    solved by self

  • How to create dynamic connection in business view manager.

    Hi Sir,
    Can u explain how to create dynamic connection in business view manager.
    Thanks
    Vishali Raghava Raju

    HI Vaishali,
       Can you please elaborate your requirement ?
    -Regards
    B

Maybe you are looking for