Problem in creating a table at runtime
Hi SDN,
I am trying to create a Table UI Element at runtime.
To do So I have written the following code in the "wdDoModifyView" method of the view
if(firstTime)
IWDTable table =(IWDTable)view.createElement(IWDTable.class, null);
table.bindDataSource("TableNode");
IWDTableColumn column1=(IWDTableColumn)view.createElement(IWDTableColumn.class,null);
table.addColumn(column1);
IWDInputField editor=(IWDInputField)view.createElement(IWDInputField.class,null);
editor.bindValue("TableNode.no");
column1.setTableCellEditor(editor);
// create and add second table column
IWDTableColumn column2 = (IWDTableColumn) view.createElement(IWDTableColumn.class, null);
table.addColumn(column2);
IWDTextView editor1 = (IWDTextView) view.createElement(IWDTextView.class, null);
editor1.bindText("TableNode.name");
column2.setTableCellEditor(editor1);
IWDUIElementContainer root = (IWDUIElementContainer) view.getRootElement();
root.addChild(table);
After executing the application the table is created successfully. But both the columns are in TextView mode. What i need is one column should be in input mode and other in TextView mode. So please suggest me what more stuff i have to add to make the field to accept the input.
Thanks in advance.
Regards
Basha
Hi Armin,
I need to display a table with 5 rows and 7 columns.
5 of the columns are drop downs from R/3,
My requirement is the table should be in editable mode such that the user is allowed to enter some values(rows). on clicking the save button the table values are to be sent to R/3 table through bapi.
Please help me in resolving this.
Thanks & Regards,
Sai Krishna.
Similar Messages
-
How to create hashed table in runtime
hi experts
how to create hashed table in runtime, please give me the coading style.
please help me.
regards
subhasisHi,
Have alook at the code, and pls reward points.
Use Hashed Tables to Improve Performance :
report zuseofhashedtables.
Program: ZUseOfHashedTables **
Author: XXXXXXXXXXXXXXXXXX **
Versions: 4.6b - 4.6c **
Notes: **
this program shows how we can use hashed tables to improve **
the responce time. **
It shows, **
1. how to declare hashed tables **
2. a cache-like technique to improve access to master data **
3. how to collect data using hashed tables **
4. how to avoid deletions of unwanted data **
Results: the test we run read about 31000 rows from mkpf, 150000 **
rows from mseg, 500 rows from makt and 400 from lfa1. **
it filled ht_lst with 24500 rows and displayed them in **
alv grid format. **
It needed about 65 seconds to perform this task (with **
all the db buffers empty) **
The same program with standard tables needed 140 seconds **
to run with the same recordset and with buffers filled in **
Objetive: show a list that consists of all the material movements **
'101' - '901' for a certain range of dates in mkpf-budat. **
the columns to be displayed are: **
mkpf-budat, **
mkpf-mblnr, **
mseg-lifnr, **
lfa1-name1, **
mkpf-xblnr, **
mseg-zeile **
mseg-charg, **
mseg-matnr, **
makt-maktx, **
mseg-erfmg, **
mseg-erfme. **
or show a sumary list by matnr - menge **
You'll have to create a pf-status called vista - **
See form set_pf_status for details **
tables used -
tables: mkpf,
mseg,
lfa1,
makt.
global hashed tables used
data: begin of wa_mkpf, "header
mblnr like mkpf-mblnr,
mjahr like mkpf-mjahr,
budat like mkpf-budat,
xblnr like mkpf-xblnr,
end of wa_mkpf.
data: ht_mkpf like hashed table of wa_mkpf
with unique key mblnr mjahr
with header line.
data: begin of wa_mseg, " line items
mblnr like mseg-mblnr,
mjahr like mseg-mjahr,
zeile like mseg-zeile,
bwart like mseg-bwart,
charg like mseg-charg,
matnr like mseg-matnr,
lifnr like mseg-lifnr,
erfmg like mseg-erfmg,
erfme like mseg-erfme,
end of wa_mseg.
data ht_mseg like hashed table of wa_mseg
with unique key mblnr mjahr zeile
with header line.
cache structure for lfa1 records
data: begin of wa_lfa1,
lifnr like lfa1-lifnr,
name1 like lfa1-name1,
end of wa_lfa1.
data ht_lfa1 like hashed table of wa_lfa1
with unique key lifnr
with header line.
cache structure for material related data
data: begin of wa_material,
matnr like makt-matnr,
maktx like makt-maktx,
end of wa_material.
data: ht_material like hashed table of wa_material
with unique key matnr
with header line.
result table
data: begin of wa_lst, "
budat like mkpf-budat,
mblnr like mseg-mblnr,
lifnr like mseg-lifnr,
name1 like lfa1-name1,
xblnr like mkpf-xblnr,
zeile like mseg-zeile,
charg like mseg-charg,
matnr like mseg-matnr,
maktx like makt-maktx,
erfmg like mseg-erfmg,
erfme like mseg-erfme,
mjahr like mseg-mjahr,
end of wa_lst.
data: ht_lst like hashed table of wa_lst
with unique key mblnr mjahr zeile
with header line.
data: begin of wa_lst1, " sumary by material
matnr like mseg-matnr,
maktx like makt-maktx,
erfmg like mseg-erfmg,
erfme like mseg-erfme,
end of wa_lst1.
data: ht_lst1 like hashed table of wa_lst1
with unique key matnr
with header line.
structures for alv grid display.
itabs
type-pools: slis.
data: it_lst like standard table of wa_lst with header line,
it_fieldcat_lst type slis_t_fieldcat_alv with header line,
it_sort_lst type slis_t_sortinfo_alv,
it_lst1 like standard table of wa_lst1 with header line,
it_fieldcat_lst1 type slis_t_fieldcat_alv with header line,
it_sort_lst1 type slis_t_sortinfo_alv.
structures
data: wa_sort type slis_sortinfo_alv,
ls_layout type slis_layout_alv.
global varialbes
data: g_lines type i.
data: g_repid like sy-repid,
ok_code like sy-ucomm.
selection-screen
"text: Dates:
select-options: so_budat for mkpf-budat default sy-datum.
"text: Material numbers.
select-options: so_matnr for mseg-matnr.
selection-screen uline.
selection-screen skip 1.
"Text: show summary by material.
parameters: gp_bymat as checkbox default ''.
start-of-selection.
perform get_data.
perform show_data.
end-of-selection.
FORM get_data *
form get_data.
select mblnr mjahr budat xblnr
into table ht_mkpf
from mkpf
where budat in so_budat. " make use of std index.
have we retrieved data from mkpf?
describe table ht_mkpf lines g_lines.
if g_lines > 0.
if true then retrieve all related records from mseg.
Doing this way we make sure that the access is by primary key
of mseg.
The reason is that is faster to filter them in memory
than to allow the db server to do it.
select mblnr mjahr zeile bwart charg
matnr lifnr erfmg erfme
into table ht_mseg
from mseg
for all entries in ht_mkpf
where mblnr = ht_mkpf-mblnr
and mjahr = ht_mkpf-mjahr.
endif.
fill t_lst or t_lst1 according to user's choice.
if gp_bymat = ' '.
perform fill_ht_lst.
else.
perform fill_ht_lst1.
endif.
endform.
form fill_ht_lst.
refresh ht_lst.
Example: how to discard unwanted data in an efficient way.
loop at ht_mseg.
filter unwanted data
check ht_mseg-bwart = '101' or ht_mseg-bwart = '901'.
check ht_mseg-matnr in so_matnr.
read header line.
read table ht_mkpf with table key mblnr = ht_mseg-mblnr
mjahr = ht_mseg-mjahr.
clear ht_lst.
* note : this may be faster if you specify field by field.
move-corresponding ht_mkpf to ht_lst.
move-corresponding ht_mseg to ht_lst.
perform read_lfa1 using ht_mseg-lifnr changing ht_lst-name1.
perform read_material using ht_mseg-matnr changing ht_lst-maktx.
insert table ht_lst.
endloop.
endform.
form fill_ht_lst1.
refresh ht_lst1.
Example: how to discard unwanted data in an efficient way.
hot to simulate a collect in a faster way
loop at ht_mseg.
filter unwanted data
check ht_mseg-bwart = '101' or ht_mseg-bwart = '901'.
check ht_mseg-matnr in so_matnr.
* note : this may be faster if you specify field by field.
read table ht_lst1 with table key matnr = ht_mseg-matnr
transporting erfmg.
if sy-subrc <> 0. " if matnr doesn't exist in sumary table
" insert a new record
ht_lst1-matnr = ht_mseg-matnr.
perform read_material using ht_mseg-matnr changing ht_lst1-maktx.
ht_lst1-erfmg = ht_mseg-erfmg.
ht_lst1-erfme = ht_mseg-erfme.
insert table ht_lst1.
else." a record was found.
" collect erfmg. To do so, fill in the unique key and add
" the numeric fields.
ht_lst1-matnr = ht_mseg-matnr.
add ht_mseg-erfmg to ht_lst1-erfmg.
modify table ht_lst1 transporting erfmg.
endif.
endloop.
endform.
implementation of cache for lfa1.
form read_lfa1 using p_lifnr changing p_name1.
read table ht_lfa1 with table key lifnr = p_lifnr
transporting name1.
if sy-subrc <> 0.
clear ht_lfa1.
ht_lfa1-lifnr = p_lifnr.
select single name1
into ht_lfa1-name1
from lfa1
where lifnr = p_lifnr.
if sy-subrc <> 0. ht_lfa1-name1 = 'n/a in lfa1'. endif.
insert table ht_lfa1.
endif.
p_name1 = ht_lfa1-name1.
endform.
implementation of cache for material data
form read_material using p_matnr changing p_maktx.
read table ht_material with table key matnr = p_matnr
transporting maktx.
if sy-subrc <> 0.
ht_material-matnr = p_matnr.
select single maktx into ht_material-maktx
from makt
where spras = sy-langu
and matnr = p_matnr.
if sy-subrc <> 0. ht_material-maktx = 'n/a in makt'. endif.
insert table ht_material.
endif.
p_maktx = ht_material-maktx.
endform.
form show_data.
if gp_bymat = ' '.
perform show_ht_lst.
else.
perform show_ht_lst1.
endif.
endform.
form show_ht_lst.
"needed because the FM can't use a hashed table.
it_lst[] = ht_lst[].
perform fill_layout using 'full display'
changing ls_layout.
perform fill_columns_lst.
perform sort_lst.
g_repid = sy-repid.
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
i_callback_program = g_repid
i_callback_pf_status_set = 'SET_PF_STATUS'
is_layout = ls_layout
it_fieldcat = it_fieldcat_lst[]
it_sort = it_sort_lst
tables
t_outtab = it_lst
exceptions
program_error = 1
others = 2.
endform.
form show_ht_lst1.
"needed because the FM can't use a hashed table.
it_lst1[] = ht_lst1[].
perform fill_layout using 'Sumary by matnr'
changing ls_layout.
perform fill_columns_lst1.
perform sort_lst.
g_repid = sy-repid.
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
i_callback_program = g_repid
i_callback_pf_status_set = 'SET_PF_STATUS'
is_layout = ls_layout
it_fieldcat = it_fieldcat_lst1[]
it_sort = it_sort_lst
tables
t_outtab = it_lst1
exceptions
program_error = 1
others = 2.
endform.
form fill_layout using p_window_titlebar
changing cs_layo type slis_layout_alv.
clear cs_layo.
cs_layo-window_titlebar = p_window_titlebar.
cs_layo-edit = 'X'.
cs_layo-edit_mode = space.
endform. " armar_layout_stock
form set_pf_status using rt_extab type slis_t_extab.
create a new status
and then select extras -> adjust template -> listviewer
set pf-status 'VISTA'.
endform. "set_pf_status
define add_lst.
clear it_fieldcat_lst.
it_fieldcat_lst-fieldname = &1.
it_fieldcat_lst-outputlen = &2.
it_fieldcat_lst-ddictxt = 'L'.
it_fieldcat_lst-seltext_l = &1.
it_fieldcat_lst-seltext_m = &1.
it_fieldcat_lst-seltext_m = &1.
if &1 = 'MATNR'.
it_fieldcat_lst-emphasize = 'C111'.
endif.
append it_fieldcat_lst.
end-of-definition.
define add_lst1.
clear it_fieldcat_lst.
it_fieldcat_lst1-fieldname = &1.
it_fieldcat_lst1-outputlen = &2.
it_fieldcat_lst1-ddictxt = 'L'.
it_fieldcat_lst1-seltext_l = &1.
it_fieldcat_lst1-seltext_m = &1.
it_fieldcat_lst1-seltext_m = &1.
append it_fieldcat_lst1.
end-of-definition.
form fill_columns_lst.
set columns for output.
refresh it_fieldcat_lst.
add_lst 'BUDAT' 10.
add_lst 'MBLNR' 10.
add_lst 'LIFNR' 10.
add_lst 'NAME1' 35.
add_lst 'XBLNR' 15.
add_lst 'ZEILE' 5.
add_lst 'CHARG' 10.
add_lst 'MATNR' 18.
add_lst 'MAKTX' 30.
add_lst 'ERFMG' 17.
add_lst 'ERFME' 5.
add_lst 'MJAHR' 4.
endform.
form fill_columns_lst1.
set columns for output.
refresh it_fieldcat_lst1.
add_lst1 'MATNR' 18.
add_lst1 'MAKTX' 30.
add_lst1 'ERFMG' 17.
add_lst1 'ERFME' 5..
endform.
Regards,
Ameet -
Hi,
I am trying to create ADF table at run time. Initially I tried to include all the tables at design time. Then I turned the setVisible property to false. Then , based on the condition, I turned it to true at runTime, so that to give the effect of the table getting created at run time.
But now, I would like to know , is there any option to extract the table component from the ViewObject or from the iterator, at run time.
say,
I have my ViewObject like this.
DCIteratorBinding dcIter=(DCIteratorBinding)bindings.getControlBinding("Table1View1Iterator");
ViewObject vo=dcIter.getViewObject();
Now, I have a panel, 'pb1'. I am able to add input boxes at run time. Now I want to add the table that corresponds to the above View also at run time.
Could someone pls give me the suggestion..
Thanks,
Sabarisri. Nwell, in that case you can create table dynamically from managed bean. I am giving you a sample code which add row dynamically to a table on click of "Add" button.
jspx code:
<af:document id="d1" title="XXXX">
<af:form id="f1">
<af:commandButton text="Add" id="cb1" action="#{MyBean.add}"/>
<af:table varStatus="rowStat" summary="table"
value="#{MyBean.collectionModel}"
rows="#{MyBean.collectionModel.rowCount}"
rowSelection="none" contentDelivery="immediate" var="row"
rendered="true" id="t1">
<af:forEach items="#{MyBean.columnNames}"
var="name">
<af:column sortable="true" sortProperty="#{name}"
rowHeader="unstyled" headerText="#{name}"
inlineStyle="width:100px;" id="c1">
<af:activeOutputText value="#{row[name]}" id="aot1"/>
</af:column>
</af:forEach>
</af:table>
</af:form>
</af:document>managed bean:
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.myfaces.trinidad.model.CollectionModel;
import org.apache.myfaces.trinidad.model.SortableModel;
public class MyBean {
private SortableModel model;
private List<String> columnNames;
public MyBean() {
System.out.println("Cntl in MyBean constructor :::");
columnNames = new ArrayList<String>();
columnNames.add("Col-1");
columnNames.add("Col-2");
// generateColumnModel();
public void generateColumnModel() {
this.model = new SortableModel(createRows(columnNames));
private static List<Map> createRows(List<String> columnNames) {
int i = 0;
List<Map> mapListforRows = new ArrayList<Map>();
//for (String name : columnNames) {
Map newRow = new HashMap();
mapListforRows.add(newRow);
for (String col : columnNames) {
newRow.put(col, "data");
return mapListforRows;
public String add() {
System.out.println("Cntl in add method :::");
// columnNames = new ArrayList<String>();
// columnNames.add("Col-1");
// columnNames.add("Col-2");
generateColumnModel();
return null;
public CollectionModel getCollectionModel() {
return model;
public void setColumnNames(List<String> columnNames) {
this.columnNames = columnNames;
public List<String> getColumnNames() {
return columnNames;
}I hope this will help you to solve your use case
~Abhijit -
I got problems in creating a table using java
ok here's what i want to happen, i have a table named tblField that has 3 columns.
These 3 columns are:
1. field_ID
2. field_Desc
3. field_Fruit
The table tblField returns 7 rows in which the values of field_Fruit are:
1. apple
2. banana
3. orange
4. watermelon
5. pineapple
6. mango
7. lemon
what i want to do is I want to create a new table named tblNewTable that will get the 7 values of field_Fruit and be the columns of the new table tblNewTable.
So the result would be: I have this new table named tblNewTable and the column names are:
1. apple
2. banana
3. orange
4. watermelon
5. pineapple
6. mango
7. lemon
btw i already know how to create a table with hardcoded values.
An example of create statement is shown below:
CREATE TABLE [dbo].[tblNewTable] ({[Column Name] [char] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL)For the problem posted above, the first thing i should do is to get all the values of field_Fruit first and put them all in a vector. After that, i should use the create statement using the vector to return all the values of field_Fruit. I tried to do the code below but it doesnt wrk:
int x = 0;
CREATE TABLE [dbo].[tblNewTable] (while(x < vFieldFruitVector.size()){ {[Column Name] [char] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL x = x + 1;})vFieldFruitVector is the vector/values of field_Fruit.
anyone who can help me solve my problem? thanks in advance! :)Unless you are using some special tag library or something, SQL is not, as far as I've ever seen, going to handle while loops within the statements. You want to create the table, then you have to create the CREATE statement string
String c = "CREATE TABLE [dbo].[tblNewTable] (";
for(int x = 0; x < vFieldFruitVector.size(); x++) {
c += vFieldFruitVector.get(x) + " char 50 COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL";
c += ")";
int res = stmt.executeUpdate(c); -
Problem in Creating a table with Default Tablespace
Hi All,
1) Can anybody plz tell me the syntax to move a table from one tablespace to another.
2) Also, plz tell me the Syntax of when creating a table specifying the tablespace name also.
Regards1) Alter table <table_name> move tablespace <tablespace_name>
2) example of create table is given below
CREATE TABLE emp123
( employee_id NUMBER(6)
TABLESPACE <tablespace_name>
STORAGE (INITIAL 600
NEXT 600
MINEXTENTS 2
MAXEXTENTS 100 );
Read following doc for more details
http://download-west.oracle.com/docs/cd/B19306_01/server.102/b14200/toc.htm
Cheer,
Virag -
Create dynamic table at runtime and bind it with ViewObject
Hi everyone.
I have the following task.
I need to create a multiple ViewObjects at runtime (using different constructed sql queries) and then bind ViewObjects with created (also in runtime) tables.
Tables are to be created on PanelTabbed component. Each tab contains one table.
So the problem - is there a way to perform this task?
A portion of code:
ApplicationModule am = ADFUtils.getApplicationModule("AppModule");
ViewObjectImpl vo = null;
if (am.findViewObject("SQLVo") != null)
am.findViewObject("SQLVo").remove();
System.out.println("object removed!");
vo = am.createViewObjectFromQueryStmt("vo", "select ...");
RichTable newTable = new RichTable();
newTable.setVar("row");
newTable.setVarStatus("rowStat");
RichShowDetailItem newDetItem = new RichShowDetailItem();
newDetItem.setText("New Detail");
newTable.setInlineStyle("width:100%;height:180px");
newTable.setRowSelection("single");
DCBindingContainer dcBindings = (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();
String iterBindingName = vo.getName() + "Iterator";
JUIteratorBinding iterBinding =
(JUIteratorBinding)dcBindings.findIteratorBinding(iterBindingName);
if (iterBinding != null) {
dcBindings.removeIteratorBinding(iterBindingName);
BindingContext bcc = (BindingContext)JSFUtils.resolveExpression("#{data}");
iterBinding =
new JUIteratorBinding(bcc.findDataControl("AppModuleDataControl"), vo);
String ctrlBindingName = vo.getName() + "Binding";
FacesCtrlHierBinding clonedHierBinding =
(FacesCtrlHierBinding)dcBindings.findCtrlBinding(ctrlBindingName);
if (clonedHierBinding != null) {
dcBindings.removeControlBinding(ctrlBindingName);
=======================================
Please, look here!
What's the best practices to create a new FacesCtrlHierBinding?
What a parameter _nodeBindings (type JUCtrlHierTypeBinding[]) should be?
=======================================
clonedHierBinding =
new FacesCtrlHierBinding(null,
iterBinding,
new String[]{
"BUILDING_ID"
// "BUILD_NAME",
// "FUNCTIONALITY_NAME",
// "CITY_NAME",
// "STREET_NAME",
// "FLOORS"
_nodeBindings
dcBindings.addControlBinding(ctrlBindingName, clonedHierBinding);
newTable.setValue(clonedHierBinding.getCollectionModel());
for (int g=0; g < vo.getAttributeCount(); g++){
RichColumn col = new RichColumn();
col.setId("c" + Integer.toString(g));
col.setHeaderText(vo.getAttributeDef(g).getProperty(AttributeHints.ATTRIBUTE_LABEL).toString());
ValueExpression valExp =
facesContext.getApplication().getExpressionFactory().createValueExpression(facesContext.getELContext(),
"#{row." + vo.getAttributeDef(g).getName() + "}",String.class);
RichOutputText text = new RichOutputText();
text.setId(vo.getAttributeDef(g).getName() + "txt");
text.setValueExpression("value", valExp);
col.getChildren().add(text);
newTable.getChildren().add(col);
newDetItem.getChildren().add(newTable);
myBean.panelTabbed.getChildren().add(newDetItem);
...Shay, good day!
You answer is good, but - it use only one dynamic view (and one table, iterator and FacesModel).
I have task like topic started have - i need to create some unknows numbers of ViewObject (created by demad) and i must have a FacesModel for each created ViewObject.
How can we do it? -
ORA-00600 problem when create XMLType table with registerd schema
Hi,
I am using Oracle9i Enterprise Edition Release 9.2.0.4.0 on RedHat Linux 7.2
I found a problem when I create table with registered schema with follow content:
<xs:element name="body">
<xs:complexType>
<xs:sequence>
</xs:sequence>
<xs:attribute name="id" type="xs:ID"/>
<xs:attribute name="class" type="xs:NMTOKENS"/>
<xs:attribute name="style" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="body.content">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="p"/>
<xs:element ref="hl2"/>
<xs:element ref="nitf-table"/>
<xs:element ref="ol"/>
</xs:choice>
<xs:attribute name="id" type="xs:ID"/>
</xs:complexType>
</xs:element>
Does Oracle not support element reference to other element with dot?
For instance, body -> body.content
Thanks for your attention.Sorry, amendment on the schema
<xs:element name="body">
<xs:complexType>
<xs:sequence>
<xs:element ref="body.head" minOccurs="0"/>
<xs:element ref="body.content" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="body.end" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="id" type="xs:ID"/>
<xs:attribute name="class" type="xs:NMTOKENS"/>
<xs:attribute name="style" type="xs:string"/>
</xs:complexType>
</xs:element> -
Problem in creating Queue Table of 'VARCHAR2' Payload.
Hello guys!!
I am having a problem creating a Queue Table of payload type 'VARCHAR2'. I want to create a queue for simple varchar2
type of messages. I am using following command:
dbms_aqadm.create_queue_table(queue_table => 'sh_varchar_queue_table',
queue_payload_type => 'VARCHAR2');
I am getting the following error:
ORA-24000: invalid value VARCHAR2, QUEUE_PAYLOAD_TYPE should be of the form
[SCHEMA.]NAME
Please help!!!
Thanks!!!
ShaluThanks Brajesh!!
Actually I have tried with Object Type n that is working fine. But i didn't know that 'VARCHAR2' can't be a payload type. It
is mentioned in Rel 8.1.5 that it can be a 'VARCHAR2' n I started trying that. didn't know that it's not possible in 9i.
Anyways, thanx so much!!!
N Brajesh, few days back on the discussion forum itself, I mentioned my e-mailed to you. I wanted to get in touch with u
bcoz i need ur help for so many other problems. I have tight deadlines n i am new to all this stuff.
Once again, can u pls e-mail me at [email protected] Shall look forward to ur e-mail.
Thanks so much!!
Shalu -
Problem in creating XMLTYPE table using schema validation
Hi All,
While executing the follwing script there is an error :
Script : " CREATE TABLE FINAPI_ONLINE_SEC_LOGIN_TMP1 OF
SYS.XMLTYPE XMLSCHEMA
"http://www.finnone.com/xsd/TransactionDataRequest.xsd"
ELEMENT "transactiondatarequest"
Error is :
ERROR at line 1:
"ORA-31000: Resource 'http://www.finnone.com/xsd/BaseSchema.xsd' is not an XDB schema document"
why this problem is coming though transactiondatarequest.xsd is reguisterd
Regards,
Vikas KumarCheck with XMLSpy, JDeveloper or for instance use http://tools.decisionsoft.com/schemaValidate/
Some pointers to start:
SQL> conn marco/marco
Connected.
SQL> select * from session_roles;
-- Quick and Dirty: grant xdbadmin, dba to marco
ROLE
XDB_WEBSERVICES
XDB_WEBSERVICES_WITH_PUBLIC
XDB_WEBSERVICES_OVER_HTTP
DBA
SELECT_CATALOG_ROLE
HS_ADMIN_ROLE
EXECUTE_CATALOG_ROLE
DELETE_CATALOG_ROLE
EXP_FULL_DATABASE
IMP_FULL_DATABASE
DATAPUMP_EXP_FULL_DATABASE
ROLE
DATAPUMP_IMP_FULL_DATABASE
GATHER_SYSTEM_STATISTICS
SCHEDULER_ADMIN
WM_ADMIN_ROLE
JAVA_ADMIN
JAVA_DEPLOY
XDBADMIN
XDB_SET_INVOKER
OLAP_XS_ADMIN
OLAP_DBA
21 rows selected.
SQL> set pages 5000
SQL> set long 1000000000
SQL> set trimspool on
SQL> select * from v$version;
BANNER
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
PL/SQL Release 11.1.0.6.0 - Production
CORE 11.1.0.6.0 Production
TNS for 32-bit Windows: Version 11.1.0.6.0 - Production
NLSRTL Version 11.1.0.6.0 - Production
SQL> desc dba_xml_schemas
Name Null? Type
OWNER VARCHAR2(30)
SCHEMA_URL VARCHAR2(700)
LOCAL VARCHAR2(3)
SCHEMA SYS.XMLTYPE
INT_OBJNAME VARCHAR2(4000)
QUAL_SCHEMA_URL VARCHAR2(2839)
HIER_TYPE VARCHAR2(11)
BINARY VARCHAR2(3)
SCHEMA_ID RAW(16)
HIDDEN VARCHAR2(3)
SQL> select OWNER, SCHEMA_URL, BINARY
2 from dba_xml_schemas
3
SQL> col SCHEMA_URL for a80
SQL> set lines 200
SQL> select OWNER, SCHEMA_URL, BINARY
2 from dba_xml_schemas
3 ;
OWNER SCHEMA_URL BIN
XDB http://xmlns.oracle.com/xdb/XDBStandard.xsd NO
XDB http://xmlns.oracle.com/xdb/log/xdblog.xsd NO
XDB http://xmlns.oracle.com/xdb/log/ftplog.xsd NO
XDB http://xmlns.oracle.com/xdb/log/httplog.xsd NO
XDB http://www.w3.org/2001/xml.xsd NO
XDB http://xmlns.oracle.com/xdb/xmltr.xsd NO
XDB http://xmlns.oracle.com/xdb/XDBFolderListing.xsd NO
XDB http://www.w3.org/1999/xlink.xsd NO
XDB http://www.w3.org/1999/csx.xlink.xsd YES
XDB http://www.w3.org/2001/XInclude.xsd NO
XDB http://www.w3.org/2001/csx.XInclude.xsd YES
XDB http://xmlns.oracle.com/xdb/stats.xsd NO
XDB http://xmlns.oracle.com/xdb/xdbconfig.xsd YES
SYS kuscomm.xsd NO
SYS kusindxt.xsd NO
SYS kusindex.xsd NO
SYS kuscnstr.xsd NO
SYS kusrlsct.xsd NO
SYS kusrlsc.xsd NO
XDB http://xmlns.oracle.com/xdb/XDBSchema.xsd NO
XDB http://xmlns.oracle.com/xdb/XDBResource.xsd NO
XDB http://www.w3.org/2001/csx.xml.xsd YES
XDB http://xmlns.oracle.com/xdb/csx.xmltr.xsd YES
XDB http://xmlns.oracle.com/xdb/acl.xsd YES
XDB http://xmlns.oracle.com/xdb/dav.xsd YES
XDB http://xmlns.oracle.com/xdb/XDBResConfig.xsd YES
SYS kusrlsgt.xsd NO
SYS kustrigt.xsd NO
SYS kustrig.xsd NO
SYS kusviewt.xsd NO
SYS kusview.xsd NO
SYS kususert.xsd NO
SYS kususer.xsd NO
SYS http://xmlns.oracle.com/streams/schemas/lcr/streamslcr.xsd NO
SYS kusrlsg.xsd NO
SYS kusrlspt.xsd NO
SYS kusrlsp.xsd NO
SYS kusrolet.xsd NO
SYS kusrole.xsd NO
SYS kusseqt.xsd NO
SYS kusseq.xsd NO
SYS kussynt.xsd NO
SYS kussyn.xsd NO
SYS kustblst.xsd NO
SYS kustbls.xsd NO
SYS kustablt.xsd NO
SYS kustable.xsd NO
SYS kusclust.xsd NO
SYS kusclus.xsd NO
SYS kusctxt.xsd NO
SYS kusctx.xsd NO
SYS kusdblkt.xsd NO
SYS kusdblk.xsd NO
SYS kusfgat.xsd NO
SYS kusfga.xsd NO
SYS kusmvt.xsd NO
SYS kusmv.xsd NO
SYS kusmvlt.xsd NO
SYS kusmvl.xsd NO
SYS kusquet.xsd NO
SYS kusque.xsd NO
SYS kusquetbt.xsd NO
SYS kusquetb.xsd NO
ORDSYS http://xmlns.oracle.com/ord/meta/exif NO
ORDSYS http://xmlns.oracle.com/ord/dicom/rpdatatype_1_0 NO
ORDSYS http://xmlns.oracle.com/ord/meta/ordimage NO
ORDSYS http://xmlns.oracle.com/ord/dicom/datatype_1_0 NO
ORDSYS http://xmlns.oracle.com/ord/dicom/mddatatype_1_0 NO
XDB http://xmlns.oracle.com/xs/dataSecurity.xsd YES
XDB http://xmlns.oracle.com/xs/aclids.xsd NO
XDB http://xmlns.oracle.com/xs/principal.xsd YES
XDB http://xmlns.oracle.com/xs/roleset.xsd NO
XDB http://xmlns.oracle.com/xs/securityclass.xsd YES
ORDSYS http://xmlns.oracle.com/ord/meta/dicomImage NO
EXFSYS http://xmlns.oracle.com/rlmgr/rclsprop.xsd NO
EXFSYS http://xmlns.oracle.com/rlmgr/rulecond.xsd NO
ORDSYS http://xmlns.oracle.com/ord/meta/iptc NO
ORDSYS http://xmlns.oracle.com/ord/meta/xmp NO
ORDSYS http://xmlns.oracle.com/ord/dicom/anonymity_1_0 NO
ORDSYS http://xmlns.oracle.com/ord/dicom/constraint_1_0 NO
ORDSYS http://xmlns.oracle.com/ord/dicom/metadata_1_0 NO
ORDSYS http://xmlns.oracle.com/ord/dicom/mapping_1_0 NO
ORDSYS http://xmlns.oracle.com/ord/dicom/preference_1_0 NO
ORDSYS http://xmlns.oracle.com/ord/dicom/privateDictionary_1_0 NO
ORDSYS http://xmlns.oracle.com/ord/dicom/standardDictionary_1_0 NO
ORDSYS http://xmlns.oracle.com/ord/dicom/orddicom_1_0 NO
ORDSYS http://xmlns.oracle.com/ord/dicom/UIDdefinition_1_0 NO
MDSYS http://www.w3.org/1999/xlink/xlinks.xsd NO
MDSYS http://www.opengis.net/gml/geometry.xsd NO
MDSYS http://www.opengis.net/gml/feature.xsd NO
MDSYS http://xmlns.oracle.com/spatial/georaster/georaster.xsd NO
91 rows selected.
SQL> set lines 80
SQL> desc path_view
Name Null? Type
PATH VARCHAR2(1024)
RES SYS.XMLTYPE(XMLSchema "http:
//xmlns.oracle.com/xdb/XDBRe
source.xsd" Element "Resourc
e")
LINK SYS.XMLTYPE
RESID RAW(16)
SQL> desc resource_view
Name Null? Type
RES SYS.XMLTYPE(XMLSchema "http:
//xmlns.oracle.com/xdb/XDBRe
source.xsd" Element "Resourc
e")
ANY_PATH VARCHAR2(4000)
RESID RAW(16)
SQL> select *
2 from path_view
3 where rownum <= 1;
PATH
RES
LINK
RESID
/OLAP_XDS
<Resource xmlns="http://xmlns.oracle.com/xdb/XDBResource.xsd">
<CreationDate>2007-10-29T14:59:01.968000</CreationDate>
<ModificationDate>2007-10-29T14:59:02.281000</ModificationDate>
<DisplayName>OLAP_XDS</DisplayName>
<Language>en-US</Language>
<CharacterSet>UTF-8</CharacterSet>
<ContentType>application/octet-stream</ContentType>
<RefCount>1</RefCount>
</Resource>
<LINK>
<ParentName>/</ParentName>
<ChildName>OLAP_XDS</ChildName>
<Name>OLAP_XDS</Name>
<Flags>AAAABA==
</Flags>
<ParentOid>C4LJcGdKQ3+9zJ4w9efpxQ==
</ParentOid>
<ChildOid>8yNpXjvxQJeoruzx3GXRlQ==
</ChildOid>
<LinkType>Hard</LinkType>
</LINK>
F323695E3BF14097A8AEECF1DC65D195
SQL> select *
2 from resource_view
3 where rownum <= 1;
RES
ANY_PATH
RESID
<Resource xmlns="http://xmlns.oracle.com/xdb/XDBResource.xsd">
<CreationDate>2007-10-29T14:59:01.968000</CreationDate>
<ModificationDate>2007-10-29T14:59:02.281000</ModificationDate>
<DisplayName>OLAP_XDS</DisplayName>
<Language>en-US</Language>
<CharacterSet>UTF-8</CharacterSet>
<ContentType>application/octet-stream</ContentType>
<RefCount>1</RefCount>
</Resource>
/OLAP_XDS
F323695E3BF14097A8AEECF1DC65D195
SQL> select any_path from resource_view
2 where any_path like '%xsd%';
ANY_PATH
/public/root.xsd
/sys/schemas/PUBLIC/www.opengis.net/gml/feature.xsd
/sys/schemas/PUBLIC/www.opengis.net/gml/geometry.xsd
SQL> select xdbURIType ('/public/root.xsd').getClob() from dual;
XDBURITYPE('/PUBLIC/ROOT.XSD').GETCLOB()
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xdb="http://xmlns.oracle.com/xdb"
elementFormDefault="qualified" attributeFormDefault="unqualified"
xdb:storeVarrayAsTable="true">
<xs:element name="ROOT" xdb:defaultTable="ROOT_TABLE" xdb:maintainDOM="false">
<xs:annotation>
<xs:documentation>Example XML Schema</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="ID" type="xs:integer" xdb:SQLName="ID"/>
<xs:element ref="INFO"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="INFO" xdb:defaultTable="INFO_TABLE" xdb:SQLName="INFO_TYPE">
<xs:complexType>
<xs:sequence>
<xs:element name="INFO_ID" type="xs:integer" xdb:SQLName="TYPE_INFO_ID"/>
<xs:element name="INFO_CONTENT" xdb:SQLType="CLOB"
xdb:SQLName="TYPE_INFO_CONTENT" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
SQL> select s.xmldata.schema_owner, s.xmldata.schema_url, s.xmldata.TARGET_NAMESPACE
2 from xdb.xdb$schema s
3 where rownum < 5;
XMLDATA.SCHEMA_OWNER
XMLDATA.SCHEMA_URL
XMLDATA.TARGET_NAMESPACE
XDB
http://xmlns.oracle.com/xdb/XDBStandard.xsd
http://xmlns.oracle.com/xdb/XDBStandard
XDB
http://xmlns.oracle.com/xdb/log/xdblog.xsd
http://xmlns.oracle.com/xdb/log
XDB
http://xmlns.oracle.com/xdb/log/ftplog.xsd
http://xmlns.oracle.com/xdb/log
XDB
http://xmlns.oracle.com/xdb/log/httplog.xsd
http://xmlns.oracle.com/xdb/log
4 rows selected.
-- Author : Mark Drake
-- Purpose : Compiling XML Schema
-- Altered : Marco Gralike
-- Date : 09/02/2007
-- Alteration : Different, simplified error handling
-- URL : http://www.liberidu.com/blog/?p=57
SET echo ON
-- spool compileSchemas.log
-- connect &USERNAME/&PASSWORD
-- set serveroutput on
declare
cursor getSchemaList IS
SELECT schema_url
FROM user_xml_schemas;
begin
FOR schema IN getSchemaList
loop
begin
dbms_output.put_line('Processing : ' || schema.schema_url);
dbms_xmlschema.compileSchema(schema.schema_url);
dbms_output.put_line('Compiled');
exception when others then
dbms_output.put_line('Failed ('||SQLCODE||'): ' ||SQLERRM);
end;
end loop;
end;
-- --------------------------------------------------------etc, etc, etc.
By the way IMHO there are no stupid questions, only stupid answer, and the learning curve on XMLDB is steep, so if I sometimes look back on my answers...
Message was edited by:
Marco Gralike -
Problems in creating Queue tables
Hi I'm trying to create a Queue table. For that I'm creating a new Object, and then a table type of the same Object and then a Queue table of the payload type of the created table type, for which I'm getting an error. I'm using the following list of Queries:
create or replace type CRM_TO_UMS_USR_DATA_TAB as object
PROVISION_ID varchar2(25)
PROVISION_DATE date
ERROR_CODE varchar2(20)
ERROR_MSG varchar2(50)
STATUS char
COMMENTS varchar2(50)
Result => no Error
create or replace type CRM_TO_UMS_USR_DATA_TYP as TABLE of CRM_TO_UMS_USR_DATA_TAB
Result => no Error
begin
dbms_aqadm.create_queue_table(queue_table => 'CRM_TO_UMS_DATA_QUE_TAB',queue_payload_type => 'CRM_TO_UMS_USR_DATA_TAB');
end;
Result =>
Error report:
ORA-00902: invalid datatype
ORA-06512: at "SYS.DBMS_AQADM_SYS", line 2830
ORA-06512: at "SYS.DBMS_AQADM", line 58
ORA-06512: at line 2
00902. 00000 - "invalid datatype"
I've given the following Grants for my schema user, for the purpose.
Grant aq_administrator_role to siebel;
GRANT EXECUTE ON dbms_aq TO siebel;
GRANT RESOURCE TO siebel;
GRANT CONNECT TO siebel;
GRANT EXECUTE ANY PROCEDURE TO siebel;
GRANT aq_administrator_role TO siebel;
GRANT aq_user_role TO siebel;
GRANT EXECUTE ON dbms_aqadm TO siebel;
GRANT EXECUTE ON dbms_aqin TO siebel;
Actually I've successfully created Queues with the above set of Queries in my other Development and UAT environments successfully, but when I'm trying to implement it with Prod I'm getting the Error. Anybody please help.
Thanks & Regards,
Srivathan, T.The type CRM_TO_UMS_USR_DATA_TAB is invalid because the syntax you're using is incorrect:
SQL> create or replace type CRM_TO_UMS_USR_DATA_TAB as object
2 (
3 PROVISION_ID varchar2(25)
4 PROVISION_DATE date
5 ERROR_CODE varchar2(20)
6 ERROR_MSG varchar2(50)
7 STATUS char
8 COMMENTS varchar2(50)
9 );
10 /
Warning: Type created with compilation errors.
SQL> begin
2 dbms_aqadm.create_queue_table(queue_table => 'CRM_TO_UMS_DATA_QUE_TAB',queue_payload_type => 'CRM_TO_UMS_USR_DATA_TAB');
3 end;
4 /
begin
ERROR at line 1:
ORA-00902: invalid datatype
ORA-06512: at "SYS.DBMS_AQADM_SYS", line 2822
ORA-06512: at "SYS.DBMS_AQADM", line 58
ORA-06512: at line 2
SQL> create or replace type CRM_TO_UMS_USR_DATA_TAB as object
2 (
3 PROVISION_ID varchar2(25),
4 PROVISION_DATE date ,
5 ERROR_CODE varchar2(20),
6 ERROR_MSG varchar2(50),
7 STATUS char(1),
8 COMMENTS varchar2(50)
9 );
10 /
Type created.
SQL> begin
2 dbms_aqadm.create_queue_table(queue_table => 'CRM_TO_UMS_DATA_QUE_TAB',queue_payload_type => 'CRM_TO_UMS_USR_DATA_TAB');
3 end;
4 /
PL/SQL procedure successfully completed.Max
http://oracleitalia.wordpress.com -
Problem while creating ADF Table
When I drag view object from data control palette and place it on jspx page as a ADF Table then it does not show any table fields in Edit Table Columns dialog box. I am using JDeveloper 10.1.3.2
Please Help, its urgent.
Thanks in advance.Hi,
When you expand your view object in data control can you see those fields?
Bogdan -
Problem in creating table maintenance generator for 61 fields in table
Hi Experts,
I am facing problem in creating a table maintenance genarator for a ZTABLE which has 61 fields
i am using below details whicle creating the TMG
in Maintenance screen
i am giving maintenance type as two step
Maint screen no overview screen 2
single screen 3
Dialog Data Transport details
Recording routine standard recording routine
but it is giving following error
screen SAPL<ZTABLE NAME> 0003 could not be generated
In DYNPFIELD_ATTR mandatory field LINE has no value
please let me know how to sort out these errors.
Is there any limit on the number of fields for which we can create table maintenance generetor.
Thanks a lot in advance
SudiptoHi Sudipto,
There is not limit to the number of fields of the Table which can be used in TMG for generation. But, from the usability point of view this will horrible.
I created a Z table and added 64 fields and was able to generate the TMG with the screens perfectly. So, I guess there should not be any problem.
Well, have a look at the Function Group. I guess the screen numbers are already used by some other screens. You can set the system to propose freely available screen numbers from the pool.
Also, check whether proper authorization is assigned or not.
And if nothing is working, you can degenerate all the generated screens and then can have a new regeneration of it.
Hope these tips will work.
Thanks,
Samantak -
Modified "Create error table" from CKM SQL problem
Hi guys!
I have a strange problem while creating error table by the CKM. I've changed in the interface from flow control to static control and now the command to create error table looks like:
create table STG_TMP.E$_I_D_ASSORTMENT_S
ERR_TYPE VARCHAR2(1 CHAR) NULL,
ERR_MESS VARCHAR2(250 CHAR) NULL,
CHECK_DATE DATE NULL,
ORIGIN VARCHAR2(100 CHAR) NULL,
CONS_NAME VARCHAR2(35 CHAR) NULL,
CONS_TYPE VARCHAR2(2 CHAR) NULL
the create error table(it should create table with all the columns varchar2 and handle the situation when column is number(0,0) => varchar2(255)) step from CKM is:
<%=snpRef.getColList("<?\t", "int vL[POS]=[LONGC]+[SCALE]; if(\u0022[DEST_DT]\u0022.equals(\u0022DATE\u0022)) {vL[POS]=20;}; if(\u0022[DEST_DT]\u0022.equals(\u0022NUMBER\u0022) && vL[POS]==0) {vL[POS]=255;};", "\n \t", "\n?>", "INS")%>
create table <%=snpRef.getTable("L","ERR_NAME", "W")%>
ERR_TYPE <%=snpRef.getDataType("DEST_VARCHAR", "1", "")%> <%=snpRef.getInfo("DEST_DDL_NULL")%>,
ERR_MESS <%=snpRef.getDataType("DEST_VARCHAR", "250", "")%> <%=snpRef.getInfo("DEST_DDL_NULL")%>,
CHECK_DATE <%=snpRef.getDataType("DEST_DATE", "", "")%> <%=snpRef.getInfo("DEST_DDL_NULL")%>,
<%=snpRef.getColList("", "[COL_NAME]\t varchar2 (<?=vL[POS]?>) " + snpRef.getInfo("DEST_DDL_NULL"), ",\n\t", "", "INS")%>,
ORIGIN <%=snpRef.getDataType("DEST_VARCHAR", "100", "")%> <%=snpRef.getInfo("DEST_DDL_NULL")%>,
CONS_NAME <%=snpRef.getDataType("DEST_VARCHAR", "35", "")%> <%=snpRef.getInfo("DEST_DDL_NULL")%>,
CONS_TYPE <%=snpRef.getDataType("DEST_VARCHAR", "2", "")%> <%=snpRef.getInfo("DEST_DDL_NULL")%>
Do you know whats the problem??
Thanks in advance :)
With regards,
PsmakRWhat version of ODI are you using ?
Are you still using Sunopsis ?
Try using ODI 10.1.3.5
Also, follow the solution in post
Issue with Create Target Table in CKM Oracle -
How to create a table with strings active by boolean button
Good morning.
I have a problem to create a table and did not find any topic in the forum who could help me solve this problem.
I need to create an alarm table.
That is, every time an alarm was activated (boolean button), the table will show the time,date and where that alarm occurred.
For example, when the garage alarm is activated, it will to table:
Date // Time // Garage // Presence ON
And so on, when the alarm is activated the room:
Date // Time // Room // Presence ON
If anyone can help, I'd appreciate it enough.
Thank you.
Solved!
Go to Solution.Giuliano06 wrote:
So I can show the alarm, but when the button is not selected, it is sending null value (blank string) for the table through the shift register.
Also, when I select for example the 2 bedroom, he is moved to another column in the table and not just below the last alarm obtained.
My VI is attached case someone might have an idea.
your constantly polling the value to your table, ofcoarse this vi is designed according to the mechanical action of the boolean switch...
Attachments:
Sensors table.vi 10 KB -
Hi,
In our project, requirement is such that, customer can create a form definition from UI. He can define all columns for the form, it's datatype, constraints etc. Based on that information, then they can do data entry in that form. So, until runtime, we don't know the structure of the form and each form can be unique so we cannot pre-define any columns. We need to have database tables to store the data they enter.
We evaluated few options and we are leaning towards creating the table at runtime based on the form definition. There can be thousands of records for each form and we also need some calculations on this data. So, creating one table for each form seems to be a better fit but creating tables at runtime is discouraged, in general. I would like to know opinion on this option.
(if any specific details are required then I can post it)
Thank you for your time.1005222 wrote:
In our project, requirement is such that, customer can create a form definition from UI. He can define all columns for the form, it's datatype, constraints etc. Based on that information, then they can do data entry in that form. So, until runtime, we don't know the structure of the form and each form can be unique so we cannot pre-define any columns. We need to have database tables to store the data they enter.Wrong. What the customer wants to is use the database directly - as creating tables and constraints and the like is exactly that. Using database DDL to define objects. The database also has a data dictionary (a very comprehensive one at that). So there is no need for you to insert another layer in-between the customer and the database that contains meta data and what not.
The only automation required is to have the customer enter the definition in a template/form, and for your code to translate this directly to a DDL. Exactly the same as what DBCA does when you create a new database and click the icon to define a new tablespace. A form pops up. You enter the attributes and name of the tablespace. The s/w turns that into a DDL statement.
If you want some kind of auditing, then log the DML created to an audit/log table, after constructing it. The s/w can also log the result (error or success) of that DML's execution.
This should be the extent of your s/w's functionality. To create additional user/custom meta data tables, would be just plain silly IMO. Use the Oracle dictionary. Use the COMMENT command to add to the meta data. Do not reinvent Oracle's meta data layer.
We evaluated few options and we are leaning towards creating the table at runtime based on the form definition. There can be thousands of records for each form and we also need some calculations on this data. So, creating one table for each form seems to be a better fit but creating tables at runtime is discouraged, in general. I would like to know opinion on this option.I agree that this approach is questionable - as you just as well can give the customer a copy of SQL-Developer instead to use. As that would be the most appropriate tool for someone who insists on creating and maintaining their own data objects in Oracle.
The key issue IMO is, if this is the approach decided on, to use Oracle as a database. And not invent your own custom database layer with meta data and have the user using that, while your code then "maps/translates" that to the real tables and objects in the database.
Maybe you are looking for
-
Downloading large amount of downloads
I recently had a hardware failure and lost all of my media. iTunes allowed me to redownload all of my media. Now when I attempt to "Check for purchases", I get an error message saying the connection timed out. I have an active internet connection and
-
How to create a sequence DDL in a procedure
Hello, i have a simple question but i dont find a solution here. How to create a sequence DDL in a procedure ? Thank 's
-
Problem while installing ECC 5.0 on RHEL
Hi I am new to this forum .The problem is @ the end of the database instance installation . it says a library GLIBC 2.3.4 is needs to be installed . tried installing even that but hard luck .. Regards Vinay.K
-
Keyboard shortcut for context menu
Hello all. I recently got a MacBook and it's the first Mac I've ever had. I'm a keyboard shortcut guy when I can be and one thing that's stumped me is using the keyboard to open up the context menu. Does anybody know a keyboard shortcut for opening t
-
How to fetch session timeout from the server
Hi I want to subscribe about the value of the session timeout value from the server from time to time , is there any way in the flex or through blazeds to achieve this . Thanks Akshat