Table creation in sap ui5
Hi,
I am new at SAP UI5 and i am trying to create a table.
I used the code given on the sap ui5 demokit but when i am running the application the table is not displaying.
can anyone help me with this.
Thanks in advance.
var aData = [
{lastName: "Dente", name: "Al", gender : "male"},
{lastName: "Friese", name: "Andy", gender : "female"},
{lastName: "Mann", name: "Anita", gender : "female"}
//table creation
var oTable = new sap.ui.table.Table({
title: "Guest House list",
visibleRowCount: 3,
firstVisibleRow: 2,
selectionMode: sap.ui.table.SelectionMode.Single,
//column creation
oTable.addColumn(new sap.ui.table.Column({
label: new sap.ui.commons.Label({text: "Last Name"}),
template: new sap.ui.commons.TextView().bindProperty("text", "lastName"),
sortProperty: "lastName",
filterProperty: "lastName",
width: "200px"
oTable.addColumn(new sap.ui.table.Column({
label: new sap.ui.commons.Label({text: "First Name"}),
template: new sap.ui.commons.TextField().bindProperty("value", "name"),
sortProperty: "name",
filterProperty: "name",
width: "100px"
oTable.addColumn(new sap.ui.table.Column({
label: new sap.ui.commons.Label({text: "Gender"}),
template: new sap.ui.commons.ComboBox({items: [
new sap.ui.core.ListItem({text: "female"}),
new sap.ui.core.ListItem({text: "male"})
]}).bindProperty("value","gender"),
sortProperty: "gender",
filterProperty: "gender"
//data collection
var oModel = new sap.ui.model.json.JSONModel();
oModel.setData({modelData: aData});
oTable.setModel(oModel);
oTable.bindRows("/modelData");
//Initially sort the table
oTable.sort(oTable.getColumns()[0]);
oTable.placeAt("table");
Hi Anshul
it should be
press: function() {
oTable.setVisible(true); // or false
am I right?
-D
Similar Messages
-
Dynamic Internal Table creation in SAP version 4.5B
Hi All,
Can anybody please let me know if it is possible to create dynamic internal table in SAP version 4.5 B.
If yes will be of great help if somebody can give the method of doing it or any sample code to follow.
Thanks in advance!!!Hi
Refer this wiki [http://wiki.sdn.sap.com/wiki/display/ABAP/DynamicInternaltable]
Regards
Raj -
Creation of SAP Query in SQ02 with Single Table With Condition
Hi All,
I want to Create SAP Query in SQ02 using single Table MCHA.
ii) I dont want all entries of MCHA Table I mean , I have to apply some Condition on this Table.
i.e Suppose I am having actual data in MCHA table is like this for Material M1.
Plant Material Batch BatchCreationdate
P1 M1 B1 20.06.2007
P2 M1 B1 04.05.2009
P3 M1 B1 04.05.2009
But I want the Output of SAP Query is like this:
Material Batch BatchCreationdate
M1 B1 20.06.2007
That is irrespective of Plant if Material & Batch are equal ---> 1st record with Lowest date shoud get at the output.
Please help me How write the code on single table in the SAP Query.
Thanks,
Kiran ManyamHi,
Your query should be like this:
Select MATNR CHARG HSDAT
from MCHA
into table t_mcha
where matnr = Materlal number from selection screen.
The structure of t_mcha should contain the fields that you select.
Then sort the table by date ascending
Sort t_mcha by HSDAT.
Hope this solves your problem.
Thanks,
Sowmya -
Unable to create a new view for SAP UI5 in NWDS
Hi UI5 Profis,
I'm just getting started with SAP UI5 and wanted to create and run my first application using the UI5 Tools wirh NWDS. After having installed NWDS and the UI5 Tools
I create new SAP ui5 project, but the wizard always run into error, when I want to create new view.
Did someone already have the same issue?
Thanks in advance,
BR,
BerengerHi Berenger,
Which is your NWDS version?
It seems there is a bug on view creation with 1.8.8 version:
1814417 - Patched version 1.8.8 of UI Development Toolkit for HTML5
http://service.sap.com/sap/support/notes/1814417
Kind regards -
Dynamic Internal Table creation and population
Hi gurus !
my issue refers to the slide 10 provided in this slideshow : https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b332e090-0201-0010-bdbd-b735e96fe0ae
My example is gonna sound dumb, but anyway: I want to dynamically select from a table into a dynamically created itab.
Letu2019s use only EKPO, and only field MENGE.
For this, I use Classes cl_abap_elemdescr, cl_sql_result_set and the Data Ref for table creation. But while fetching the resultset, program dumps when fields like MENGE, WRBTR are accessed. Obviously their type are not correctly taken into account by my program.
Here it comes:
DATA: element_ref TYPE REF TO cl_abap_elemdescr,
vl_fieldname TYPE string,
tl_components TYPE abap_component_tab,
sl_components LIKE LINE OF tl_components_alv,
linetype_lcl TYPE REF TO cl_abap_structdescr,
ty_table_type TYPE REF TO cl_abap_tabledescr,
g_resultset TYPE REF TO cl_sql_result_set
u2026
CONCATENATE sg_columns-table_name '-' sg_columns-column_name INTO vl_fieldname.
* sg_columns-table_name contains 'EKPO'
* sg_columns-column_name contains 'MENGE'
* getting the element as a component
element_ref ?= cl_abap_elemdescr=>describe_by_name( vl_fieldname ).
sl_components-name = sg_columns-column_name.
sl_components-type ?= element_ref.
APPEND sl_components TO tl_components.
* dynamic creation of internal table
linetype_lcl = cl_abap_structdescr=>create( tl_components ).
ty_table_type = cl_abap_tabledescr=>create(
p_line_type = linetype_lcl ).
u2026
* Then I will create my field symbol table and line. Code has been cut here.
CREATE DATA dy_line LIKE LINE OF <dyn_table>.
u2026
* Then I will execute my query. Here itu2019s: Select MENGE From EKPO Where Rownum = 1.
g_resultset = g_stmt_ref->execute_query( stmt_str ).
* Then structure for the Resultset is set
CALL METHOD g_resultset->set_param_struct
EXPORTING
struct_ref = dy_line.
* Fetching the lines of the resultset => Dumpu2026
WHILE g_resultset->next( ) > 0.
ASSIGN dy_line->* TO <dyn_wa>.
APPEND <dyn_wa> TO <dyn_table>.
ENDWHILE.
Anyone has any clue to how prevent my Dump ??
The component for MENGE seems to be described as a P7 with 2 decimals. And the resultset wanna use a QUAN type... or something like that !Hello
I have expanded your sample coding for selecting three fields out of EKPO:
*& Report ZUS_SDN_SQL_RESULT_SET
*& Thread: Dynamic Internal Table creation and population
*& <a class="jive_macro jive_macro_thread" href="" __jive_macro_name="thread" modifiedtitle="true" __default_attr="1375510"></a>
*& NOTE: Coding for dynamic structure / itab creation taken from:
*& Creating Flat and Complex Internal Tables Dynamically using RTTI
*& https://wiki.sdn.sap.com/wiki/display/Snippets/Creating+Flat+and+
*& Complex+Internal+Tables+Dynamically+using+RTTI
REPORT zus_sdn_sql_result_set.
TYPE-POOLS: abap.
DATA:
go_sql_stmt TYPE REF TO cl_sql_statement,
go_resultset TYPE REF TO cl_sql_result_set,
gd_sql_clause TYPE string.
DATA:
gd_tabfield TYPE string,
go_table TYPE REF TO cl_salv_table,
go_sdescr_new TYPE REF TO cl_abap_structdescr,
go_tdescr TYPE REF TO cl_abap_tabledescr,
gdo_handle TYPE REF TO data,
gdo_record TYPE REF TO data,
gs_comp TYPE abap_componentdescr,
gt_components TYPE abap_component_tab.
FIELD-SYMBOLS:
<gs_record> TYPE ANY,
<gt_itab> TYPE STANDARD TABLE.
START-OF-SELECTION.
continued. -
Hi, we are working on Business Objects Migration 6.1 to BOXIR2 project.plz any one help me Derived table creation for Free Hand SQL Reports?.How to use promt functions also.........?
Thanks for advance....
Thanks&Regards
RamuRamu,
Your question is posted in the General forum, but I think you might want to close this entry and re-post in one of the two following forums:
Web Intelligence
[SAP BusinessObjects Web Intelligence;
Universe Designer & Business Views Designer
[Semantic Layer;
Thanks,
John -
Creating a search help with SAP UI5 and js?
Hello com,
I am trying to create a search help, collecting data from a table.
Is there something similar to the typical ABAP search help in SAP UI 5?
ABAP:
PARAMETERS: lv_alias TYPE dsh_alias MATCHCODE OBJECT dashboard_alias_f4,
I found this in the Demo Kit:
// create a simple SearchField
var oSearch = new sap.ui.commons.SearchField("providerSearch", {
searchProvider: new sap.ui.core.search.OpenSearchProvider({
suggestType: "json",
suggestUrl: "/demokit/suggest?q={searchTerms}",
icon: jQuery.sap.getModulePath("sap.ui.core", '/') + "mimes/logo/txtonly_16x16.ico"
search: function(oEvent){
alert("Search triggered: " + oEvent.getParameter("query"));
//attach it to some element in the page
oSearch.placeAt("sample4");
But how can i connect it with the specifiy data table?
Thanks,
DomenikHi,
you need to create OData service which will retrieve (search) the required information and then need to create UI5 application to consume it.
you can refer this blog How to Implement Value Help (F4) with SAP UI5 which covers both parts.
if you are having SP08 version of SAP Gateway then creating search help is very simple. refer my blog Creating OData service based on Search Help
Regards,
Chandra -
How to Covert PDF! file format into XSTRING format in SAP UI5?
HI All,
I Am ABAPer. I don't have any idea on front end system.
Can any buddy guide me how to convert PDF file into XSTRING or BINARY in SAP UI5 (either it may be XML or Script )?
My requirement is, I have to upload file in SAP-UI5. Those file should upload in back end system (MIME repository (SAP-ECC) or DMS).
I have created below screen for PDF! upload in SAP-UI5.
Below code I have written in SAP gateway system.
* Get MIME repository information
lr_mime_rep = cl_mime_repository_api=>if_mr_api~get_api( ).
* Upload FILE into MIME repository.
lr_mime_rep->put(
EXPORTING
i_url = p_path
i_content = lv_content
EXCEPTIONS
parameter_missing = 1
error_occured = 2
cancelled = 3
permission_failure = 4
data_inconsistency = 5
new_loio_already_exists = 6
is_folder = 7
OTHERS = 8 ).
Back end system required file name with extension and XSTRING(Converted PDF data).
How to convert PDF file into XSTRING or BINARY in SAP-UI5?
Kindly help me on this...Hi Karthikeyan,
If you have PDF internal table with you, You can follow the below method to upload into Unix directory.
DATA:file_path TYPE char100 VALUE '/usr/sap/tmp/rep_out.PDF'.
OPEN DATASET file_path FOR OUTPUT IN BINARY MODE.
IF sy-subrc EQ 0.
LOOP AT it_pdf.
TRANSFER it_pdf TO file_path.
ENDLOOP.
ENDIF.
CLOSE DATASET file_path.
Thanks
Venkat.O -
SAP UI5, MII, & JSON
I've been using jQuery ajax calls to fetch MII JSON data and display it in various ways for some time now when I want to display data in something other than an MII applet. My client wants to transition to using SAP UI5 in their web reports and so I've been doing some prototyping.
I've found that I cannot get a UI5 table to bind to an MII Rowsets result set when the content type is JSON.
Some example code...
// This works fine...
function buildTableAjax() {
"use strict";
var q = miiUtils.miiGet(queryTemplate, {}); // (wrapper function around $.ajax)
q.done(function (data, status, xhr) {
var model = new sap.ui.model.json.JSONModel();
// if I setData to the returned "Rowsets" object I can
// not figure out a bindRows expression that works so
// I use the 0th rowset instead
model.setData(data.Rowsets.Rowset[0]);
var str = model.getJSON();
var table = new sap.ui.table.Table({
title: "Water Samples",
visibleRowCount: 20
var cols = data.Rowsets.Rowset[0].Columns.Column;
$.each(cols, function (i, col) {
if ($.inArray(col.Name, hideColumns) === -1) {
table.addColumn(new sap.ui.table.Column({
label: new sap.ui.commons.Label({
text: col.Name
template: new sap.ui.commons.TextView().bindProperty("text", col.SourceColumn),
sortProperty: col.SourceColumn,
filterProperty: col.SourceColumn,
width: "75px"
table.setModel(model);
table.bindRows("/Row");
table.placeAt("tableHolder");
I know that this isn't the preferred way to do this and I would like to use the whole UI5 stack sometime soon, so I came up with the following.
function buildTableUI5() {
"use strict";
var requestUrl = miiUtils.createRequestURL(queryTemplate, {
"Content-Type": "text/json"
var model = new sap.ui.model.json.JSONModel();
var table = new sap.ui.table.Table({
title: "Water Samples",
visibleRowCount: 20,
// maybe add columns based on result set later...
table.addColumn(new sap.ui.table.Column({
label: new sap.ui.commons.Label({
text: "Description"
template: new sap.ui.commons.TextView().bindProperty("text", "Description"),
sortProperty: "Description",
filterProperty: "Description",
width: "75px"
model.attachRequestCompleted(function () {
// do something with data if required...
//var str = model.getJSON();
model.loadData(requestUrl);
table.setModel(model);
table.bindRows("/Rowset/Row");
table.placeAt("tableHolder");
buildTableUI5 will always display "No Data". If I simply change the url's Content-Type to text/xml and change the model type to XMLModel, the function works as expected and data is bound.
I would prefer to use JSON if possible, Can it be done through model.loadData()? What would I put in the bindRows call to get it to work? (The value of the commented out str variable in attachRequestCompleted is the expected json result, so the data is being returned just fine).
Thanks!Hi Allan,
The data structure changes when your content type is JSON hence you cannot map rowsets/rowset/row structure and get the desired output.
Generally, MII 14.0 onwards is capable of giving JSON result that can be directly mapped to ui5 components.
What is miiUtils.createRequestURL retur ning you here. I suspect a mapping issue here as everything else looks good.
See is below example helps you. This is referring to UI5 Charts but atleast can give you some idea on model and data binding.
Getting started with Viz Charts
Table - SAPUI5 Demo Kit
Best Regards,
Swaroop -
Hi Experts,
I need to implement Auto tab functionality in side sap.m Table .
I have two input fields in two colums inside sap.m.table. I have fixed length Value for each input filed ,once I filled first Input field in a row1, next cursor has automatically move to next field.
Once row values are filled it has continue with next row until all columns .
Auto tabbing is possible in jQuery.How to implement it for SAP UI5,could you help me out on this.
Thanks in advance.
product
Quantity
BR
SitaraHi Sitara,
You can use the functions of jQuery in SAPUI5.
$(function () {
3
$('.number').autotab('filter','number');
4
$('.number') here .number is the classname.
These links might be helpful.
jQuery Plugin For Auto Tab Form Fields - autotab | Free jQuery Plugins
jQuery autotab examples
Autotab: jQuery auto-tabbing and filter plugin
Regards
Dhananjay -
Need of buffering in table creation.
what is need of buffering in table creation and data class and delivey class
Definition
The name table (nametab) contains the table and field definitions that are activated in the SAP System. An entry is made in the Repository buffer when a mass activator or a user (using the ABAP Dictionary, Transaction SE11) requests to activate a table. The corresponding name table is then generated from the information that is managed in the Repository.
The Repository buffer is mainly known as the nametab buffer (NTAB), but it is also known as the ABAP Dictionary buffer
The description of a table in the Repository is distributed among several tables (for field definition, data element definition and domain definition). This information is summarized in the name table. The name table is saved in the following database tables:
DDNTT (table definitions)
DDNTF (field descriptions)
The Repository buffer consists of four buffers in shared memory, one for each of the following:
Table definitions TTAB buffer Table DDNTT
Field descriptions FTAB buffer Table DDNTF
Initial record layouts IREC buffer Contains the record layout initialized depending on the field type
There are two kinds of table buffers:
Partial table buffers
Generic table buffers
Check this link for more details.
http://www.abapprogramming.blogspot.com/2007/11/buffering-in-sap-abap.html
Regards, -
Create Deep Entity in SAP UI5 - oData Model
Hi,
I am doing a CRUD project and want to perform a deep entity creation. I've an entity Student and another is Enrollment. A Student can have multiple Enrollments. For this, I've created Association b/w these 2 entities.
Now from SAP UI5, i want to call create operation in which while creating Student record, i also want Enrollment records to be inserted into DB.
I am trying to use the following code to create the required Data object.
oNewEntry.StudentID = "000"; // Will be generated
oNewEntry.StudentName = "Xyz";
oNewEntry.Course = "ABC";
oNewEntry.Age = parseInt(25);
oEnrollment = {};
oEnrollment.StudentID = "000";
oEnrollment.CertificateID = "SAPUI5";
oEnrollment.EnrollDate = new Date(2014,03,30,00,01,00);
oEnrollment.CreateDate = new Date(2014,03,30,00,01,00);
oEnrollment.Status = "X";
oNewEntry.Enrollment = oEnrollment;
oModel.create("/StudentSet",
oNewEntry,
null,
function()
alert("Student record created successfully!");
function()
alert("Student record creation failed!");
I am trying the above code, but it always throw the following error.
The following error text was processed in system GW1 : Specified value is not a valid value for the type of an XML document The error occurred on the application server XXXXXX. The termination type was: RABAX_STATE.
Am i doing any mistake while creating oNewEntry object ? As I am able to create entity StudentSet & EnrollmentSet individually but not as Deep Entity in one go.
Please Help.you can refer this thread discussion Deep insert using Model.create()? which talks about parent-child entity relationship.
also please mention navigation name as mentioned in the thread.
Regards,
Chandra -
BI 7 : Command to export a table structure of SAP R/3 into a script/text ?
Hi All.
Greetings.
Am New to SAP R/3 system. And request help.
We are trying to pull data from SAP R/3 thro Bussiness Objects Data Services into Oracle.
For now : we create a target oracle table looking at the table structure of SAP R/3 from SE 11.
In BODS, We then do the query transformation, and use the oracle target table created by us manually.
This works absolutely fine.
We would like to know the command by which we could export the table structure of any existing table
in SAP R/3 into a script / or to text file,
which we could use to create the same table structure in oracle.
Rather than manually typing some 200 field names for each tables.
Can anyone advise on this.
Thanks
InduHello,
The problem is caused due to the spaces in your directories
C:\SAP Dumps\Core Release SR1 Export_CD1_51019634/DB/ADA/DBSIZE.XML
Replace the spaces with underscores and restart the installation from from scratch.
Cheers
Bert -
Help on accessing table available in SAP R/3 System
Hi All
A day before I had posted a question regarding the accessing of tables available in SAP R/3 system.
I got the following code as reply. This code is working fine.
But in the below example, the QUERY_TABLE IS BSAUTHORS.
In my case, the QUERY_TABLE is VBKD(Sales Document Table).
When I replace the table name with VBKD in place of BSAUTHORS, I am getting the following error:
ERROR BEGIN----
com.sap.mw.jco.JCO$AbapException: (126) DATA_BUFFER_EXCEEDED: Selected fields do not fit into structure DATA
at com.sap.mw.jco.JCO$Function.getException(JCO.java:17978)
at com.sap.mw.jco.JCO$Client.execute(JCO.java:3143)
at com.insync.JCO.UpdateSalesOrder.main(UpdateSalesOrder.java:34)
ERROR END----
Can anyone please give me a solution for this?
Thanks in Advace,
Vijay.
**********************Code**********************
import com.sap.mw.jco.*;
public class JcoTest {
private static JCO.Client theConnection;
private static IRepository theRepository;
public static void main(String[] args) {
createConnection();
retrieveRepository();
try {
JCO.Function function = getFunction("RFC_READ_TABLE");
JCO.ParameterList listParams = function.getImportParameterList();
listParams.setValue("BSAUTHORS", "QUERY_TABLE");
//listParams.setValue("VBKD", "QUERY_TABLE"); // ERROR
theConnection.execute(function);
JCO.Table tableList = function.getTableParameterList().getTable("DATA");
if (tableList.getNumRows() > 0) {
do {
for (JCO.FieldIterator fI = tableList.fields();
fI.hasMoreElements();)
JCO.Field tabField = fI.nextField();
System.out.println(tabField.getName()
+ ":t" +
tabField.getString());
System.out.println("n");
while (tableList.nextRow() == true);
catch (Exception ex) {
ex.printStackTrace();I am also facing the same issue when using 4-way CPU for processing RFC_READ_TABLE I get following error (Error: DATA_BUFFER_EXCEEDED: Selected fields do not fit into structure DATA) .
when I set the NO_DATA=X in RFC_READ_TABLE then returned data object is empty , is this expected behavior ? if yes then how do we extract data without getting this error .Help is greatly appreciated -
I've recently completed a database upgrade from 10.2.0.3 to 11.2.0.1 using the DBUA.
I've since encountered a slowdown when running a script which drops and recreates a series of ~250 tables. The script normally runs in around 19 seconds. After the upgrade, the script requires ~2 minutes to run.
By chance has anyone encountered something similar?
The problem may be related to the behavior of an "after CREATE on schema" trigger which grants select privileges to a role through the use of a dbms_job call; between 10g and the database that was upgraded from 10G to 11g. Currently researching this angle.
I will be using the following table creation DDL for this abbreviated test case:
create table ALLIANCE (
ALLIANCEID NUMBER(10) not null,
NAME VARCHAR2(40) not null,
CREATION_DATE DATE,
constraint PK_ALLIANCE primary key (ALLIANCEID)
using index
tablespace LIVE_INDEX
tablespace LIVE_DATA;When calling the above DDL, an "after CREATE on schema" trigger is fired which schedules a job to immediately run to grant select privilege to a role for the table which was just created:
create or replace
trigger select_grant
after CREATE on schema
declare
l_str varchar2(255);
l_job number;
begin
if ( ora_dict_obj_type = 'TABLE' ) then
l_str := 'execute immediate "grant select on ' ||
ora_dict_obj_name ||
' to select_role";';
dbms_job.submit( l_job, replace(l_str,'"','''') );
end if;
end;
{code}
Below I've included data on two separate test runs. The first is on the upgraded database and includes optimizer parameters and an abbreviated TKPROF. I've also, included the offending sys generate SQL which is not issued when the same test is run on a 10g environment that has been set up with a similar test case. The 10g test run's TKPROF is also included below.
The version of the database is 11.2.0.1.
These are the parameters relevant to the optimizer for the test run on the upgraded 11g SID:
{code}
SQL> show parameter optimizer
NAME TYPE VALUE
optimizer_capture_sql_plan_baselines boolean FALSE
optimizer_dynamic_sampling integer 2
optimizer_features_enable string 11.2.0.1
optimizer_index_caching integer 0
optimizer_index_cost_adj integer 100
optimizer_mode string ALL_ROWS
optimizer_secure_view_merging boolean TRUE
optimizer_use_invisible_indexes boolean FALSE
optimizer_use_pending_statistics boolean FALSE
optimizer_use_sql_plan_baselines boolean TRUE
SQL> show parameter db_file_multi
NAME TYPE VALUE
db_file_multiblock_read_count integer 8
SQL> show parameter db_block_size
NAME TYPE VALUE
db_block_size integer 8192
SQL> show parameter cursor_sharing
NAME TYPE VALUE
cursor_sharing string EXACT
SQL> column sname format a20
SQL> column pname format a20
SQL> column pval2 format a20
SQL> select sname, pname, pval1, pval2 from sys.aux_stats$;
SNAME PNAME PVAL1 PVAL2
SYSSTATS_INFO STATUS COMPLETED
SYSSTATS_INFO DSTART 03-11-2010 16:33
SYSSTATS_INFO DSTOP 03-11-2010 17:03
SYSSTATS_INFO FLAGS 0
SYSSTATS_MAIN CPUSPEEDNW 713.978495
SYSSTATS_MAIN IOSEEKTIM 10
SYSSTATS_MAIN IOTFRSPEED 4096
SYSSTATS_MAIN SREADTIM 1565.746
SYSSTATS_MAIN MREADTIM
SYSSTATS_MAIN CPUSPEED 2310
SYSSTATS_MAIN MBRC
SYSSTATS_MAIN MAXTHR
SYSSTATS_MAIN SLAVETHR
13 rows selected.
{code}
Output from TKPROF on the 11g SID:
{code}
create table ALLIANCE (
ALLIANCEID NUMBER(10) not null,
NAME VARCHAR2(40) not null,
CREATION_DATE DATE,
constraint PK_ALLIANCE primary key (ALLIANCEID)
using index
tablespace LIVE_INDEX
tablespace LIVE_DATA
call count cpu elapsed disk query current rows
Parse 1 0.00 0.00 0 0 0 0
Execute 1 0.00 0.00 0 0 4 0
Fetch 0 0.00 0.00 0 0 0 0
total 2 0.00 0.00 0 0 4 0
Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 324
{code}
... large section omitted ...
Here is the performance hit portion of the TKPROF on the 11g SID:
{code}
SQL ID: fsbqktj5vw6n9
Plan Hash: 1443566277
select next_run_date, obj#, run_job, sch_job
from
(select decode(bitand(a.flags, 16384), 0, a.next_run_date,
a.last_enabled_time) next_run_date, a.obj# obj#,
decode(bitand(a.flags, 16384), 0, 0, 1) run_job, a.sch_job sch_job from
(select p.obj# obj#, p.flags flags, p.next_run_date next_run_date,
p.job_status job_status, p.class_oid class_oid, p.last_enabled_time
last_enabled_time, p.instance_id instance_id, 1 sch_job from
sys.scheduler$_job p where bitand(p.job_status, 3) = 1 and
((bitand(p.flags, 134217728 + 268435456) = 0) or
(bitand(p.job_status, 1024) <> 0)) and bitand(p.flags, 4096) = 0 and
p.instance_id is NULL and (p.class_oid is null or (p.class_oid is
not null and p.class_oid in (select b.obj# from sys.scheduler$_class b
where b.affinity is null))) UNION ALL select
q.obj#, q.flags, q.next_run_date, q.job_status, q.class_oid,
q.last_enabled_time, q.instance_id, 1 from sys.scheduler$_lightweight_job
q where bitand(q.job_status, 3) = 1 and ((bitand(q.flags, 134217728 +
268435456) = 0) or (bitand(q.job_status, 1024) <> 0)) and
bitand(q.flags, 4096) = 0 and q.instance_id is NULL and (q.class_oid
is null or (q.class_oid is not null and q.class_oid in (select
c.obj# from sys.scheduler$_class c where
c.affinity is null))) UNION ALL select j.job, 0,
from_tz(cast(j.next_date as timestamp), to_char(systimestamp,'TZH:TZM')
), 1, NULL, from_tz(cast(j.next_date as timestamp),
to_char(systimestamp,'TZH:TZM')), NULL, 0 from sys.job$ j where
(j.field1 is null or j.field1 = 0) and j.this_date is null) a order by
1) where rownum = 1
call count cpu elapsed disk query current rows
Parse 1 0.00 0.00 0 0 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 1 0.47 0.47 0 9384 0 1
total 3 0.48 0.48 0 9384 0 1
Misses in library cache during parse: 1
Optimizer mode: CHOOSE
Parsing user id: SYS (recursive depth: 1)
Rows Row Source Operation
1 COUNT STOPKEY (cr=9384 pr=0 pw=0 time=0 us)
1 VIEW (cr=9384 pr=0 pw=0 time=0 us cost=5344 size=6615380 card=194570)
1 SORT ORDER BY STOPKEY (cr=9384 pr=0 pw=0 time=0 us cost=5344 size=11479630 card=194570)
194790 VIEW (cr=9384 pr=0 pw=0 time=537269 us cost=2563 size=11479630 card=194570)
194790 UNION-ALL (cr=9384 pr=0 pw=0 time=439235 us)
231 FILTER (cr=68 pr=0 pw=0 time=920 us)
231 TABLE ACCESS FULL SCHEDULER$_JOB (cr=66 pr=0 pw=0 time=690 us cost=19 size=13157 card=223)
1 TABLE ACCESS BY INDEX ROWID SCHEDULER$_CLASS (cr=2 pr=0 pw=0 time=0 us cost=1 size=40 card=1)
1 INDEX UNIQUE SCAN SCHEDULER$_CLASS_PK (cr=1 pr=0 pw=0 time=0 us cost=0 size=0 card=1)(object id 5056)
0 FILTER (cr=3 pr=0 pw=0 time=0 us)
0 TABLE ACCESS FULL SCHEDULER$_LIGHTWEIGHT_JOB (cr=3 pr=0 pw=0 time=0 us cost=2 size=95 card=1)
0 TABLE ACCESS BY INDEX ROWID SCHEDULER$_CLASS (cr=0 pr=0 pw=0 time=0 us cost=1 size=40 card=1)
0 INDEX UNIQUE SCAN SCHEDULER$_CLASS_PK (cr=0 pr=0 pw=0 time=0 us cost=0 size=0 card=1)(object id 5056)
194559 TABLE ACCESS FULL JOB$ (cr=9313 pr=0 pw=0 time=167294 us cost=2542 size=2529254 card=194558)
{code}
and the totals at the end of the TKPROF on the 11g SID:
{code}
OVERALL TOTALS FOR ALL NON-RECURSIVE STATEMENTS
call count cpu elapsed disk query current rows
Parse 1 0.00 0.00 0 0 0 0
Execute 2 0.00 0.00 0 0 4 0
Fetch 0 0.00 0.00 0 0 0 0
total 3 0.00 0.00 0 0 4 0
Misses in library cache during parse: 1
Misses in library cache during execute: 1
OVERALL TOTALS FOR ALL RECURSIVE STATEMENTS
call count cpu elapsed disk query current rows
Parse 70 0.00 0.00 0 0 0 0
Execute 85 0.01 0.01 0 62 208 37
Fetch 49 0.48 0.49 0 9490 0 35
total 204 0.51 0.51 0 9552 208 72
Misses in library cache during parse: 5
Misses in library cache during execute: 3
35 user SQL statements in session.
53 internal SQL statements in session.
88 SQL statements in session.
Trace file: 11gSID_ora_17721.trc
Trace file compatibility: 11.1.0.7
Sort options: default
1 session in tracefile.
35 user SQL statements in trace file.
53 internal SQL statements in trace file.
88 SQL statements in trace file.
51 unique SQL statements in trace file.
1590 lines in trace file.
18 elapsed seconds in trace file.
{code}
The version of the database is 10.2.0.3.0.
These are the parameters relevant to the optimizer for the test run on the 10g SID:
{code}
SQL> show parameter optimizer
NAME TYPE VALUE
optimizer_dynamic_sampling integer 2
optimizer_features_enable string 10.2.0.3
optimizer_index_caching integer 0
optimizer_index_cost_adj integer 100
optimizer_mode string ALL_ROWS
optimizer_secure_view_merging boolean TRUE
SQL> show parameter db_file_multi
NAME TYPE VALUE
db_file_multiblock_read_count integer 8
SQL> show parameter db_block_size
NAME TYPE VALUE
db_block_size integer 8192
SQL> show parameter cursor_sharing
NAME TYPE VALUE
cursor_sharing string EXACT
SQL> column sname format a20
SQL> column pname format a20
SQL> column pval2 format a20
SQL> select sname, pname, pval1, pval2 from sys.aux_stats$;
SNAME PNAME PVAL1 PVAL2
SYSSTATS_INFO STATUS COMPLETED
SYSSTATS_INFO DSTART 09-24-2007 11:09
SYSSTATS_INFO DSTOP 09-24-2007 11:09
SYSSTATS_INFO FLAGS 1
SYSSTATS_MAIN CPUSPEEDNW 2110.16949
SYSSTATS_MAIN IOSEEKTIM 10
SYSSTATS_MAIN IOTFRSPEED 4096
SYSSTATS_MAIN SREADTIM
SYSSTATS_MAIN MREADTIM
SYSSTATS_MAIN CPUSPEED
SYSSTATS_MAIN MBRC
SYSSTATS_MAIN MAXTHR
SYSSTATS_MAIN SLAVETHR
13 rows selected.
{code}
Now for the TKPROF of a mirrored test environment running on a 10G SID:
{code}
create table ALLIANCE (
ALLIANCEID NUMBER(10) not null,
NAME VARCHAR2(40) not null,
CREATION_DATE DATE,
constraint PK_ALLIANCE primary key (ALLIANCEID)
using index
tablespace LIVE_INDEX
tablespace LIVE_DATA
call count cpu elapsed disk query current rows
Parse 1 0.00 0.00 0 0 0 0
Execute 1 0.00 0.01 0 2 16 0
Fetch 0 0.00 0.00 0 0 0 0
total 2 0.01 0.01 0 2 16 0
Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 113
{code}
... large section omitted ...
Totals for the TKPROF on the 10g SID:
{code}
OVERALL TOTALS FOR ALL NON-RECURSIVE STATEMENTS
call count cpu elapsed disk query current rows
Parse 1 0.00 0.02 0 0 0 0
Execute 1 0.00 0.00 0 2 16 0
Fetch 0 0.00 0.00 0 0 0 0
total 2 0.00 0.02 0 2 16 0
Misses in library cache during parse: 1
OVERALL TOTALS FOR ALL RECURSIVE STATEMENTS
call count cpu elapsed disk query current rows
Parse 65 0.01 0.01 0 1 32 0
Execute 84 0.04 0.09 20 90 272 35
Fetch 88 0.00 0.10 30 281 0 64
total 237 0.07 0.21 50 372 304 99
Misses in library cache during parse: 38
Misses in library cache during execute: 32
10 user SQL statements in session.
76 internal SQL statements in session.
86 SQL statements in session.
Trace file: 10gSID_ora_32003.trc
Trace file compatibility: 10.01.00
Sort options: default
1 session in tracefile.
10 user SQL statements in trace file.
76 internal SQL statements in trace file.
86 SQL statements in trace file.
43 unique SQL statements in trace file.
949 lines in trace file.
0 elapsed seconds in trace file.
{code}
Edited by: user8598842 on Mar 11, 2010 5:08 PMSo while this certainly isn't the most elegant of solutions, and most assuredly isn't in the realm of supported by Oracle...
I've used the DBMS_IJOB.DROP_USER_JOBS('username'); package to remove the 194558 orphaned job entries from the job$ table. Don't ask, I've no clue how they all got there; but I've prepared some evil looks to unleash upon certain developers tomorrow morning.
Not being able to reorganize the JOB$ table to free the now wasted ~67MB of space I've opted to create a new index on the JOB$ table to sidestep the full table scan.
CREATE INDEX SYS.JOB_F1_THIS_NEXT ON SYS.JOB$ (FIELD1, THIS_DATE, NEXT_DATE) TABLESPACE SYSTEM;The next option would be to try to find a way to grant the select privilege to the role without using the aforementioned "after CREATE on schema" trigger and dbms_job call. This method was adopted to cover situations in which a developer manually added a table directly to the database rather than using the provided scripts to recreate their test environment.
I assume that the following quote from the 11gR2 documentation is mistaken, and there is no such beast as "create or replace table" in 11g:
http://download.oracle.com/docs/cd/E11882_01/server.112/e10592/statements_9003.htm#i2061306
"Dropping a table invalidates dependent objects and removes object privileges on the table. If you want to re-create the table, then you must regrant object privileges on the table, re-create the indexes, integrity constraints, and triggers for the table, and respecify its storage parameters. Truncating and replacing have none of these effects. Therefore, removing rows with the TRUNCATE statement or replacing the table with a *CREATE OR REPLACE TABLE* statement can be more efficient than dropping and re-creating a table."
Maybe you are looking for
-
IPhone 3Gs won't sync contacts through iTunes after 4.0.2 upgrade
I updated to OS 4.0.2 today, and since then my iPhone 3Gs will not sync contacts. All contacts have now disappeared from my phone. The group headings still show, but Contacts is empty. I performed a factory reset and restored my phone, but still no c
-
Override default pdf signing method
I am trying to create an extended digital signature application to sign a PDF file (i want to override the default signing method used by the PDF), i went through a research and found that co-sign already done it before, please check the following li
-
I'm an R/3 developer and we are considering using BW for purchasing data. Is there a quick and easy way to find out what standard reports/queries are available on the BW side? Our BW staff was only able to give me the documentation for the 0pur_* c
-
Is there plug-in for JBuilder developing Weblogic web application?
Is there plug-in for JBuilder developing Weblogic web application? thanks in advance woodsonli
-
My ipad3 slid down the Smart Cover and now glass is cracked. What can I do?
My Ipad 3 slid down from the Smart Cover and the glass is now cracked. What can I do?