Updating af:table checkboxes column with a selectonechoice change event
Hi,
I am attempting to create a select one choice component which contains a valuechangelistener which would update checkboxes within an af:table to update to a selected state. I followed Oracle ADF, WebCenter Tech Tips: I Came, I Learned, I Share....: Select/Deselect All check box in a table
method of checking the checkboxes upon a value change on the select one choice but it doesn't appears to work. From what I am observing it appears that when the value change listener is triggered the values of my transient attribute are updated however a refresh of the table occurs which I believe happens after the attribute update hence overriding the updated transient attribute values with the current state of the checkbox. The reason I think this is the case is because I have some checkboxes within the table which are disabled and these checkboxes updates as expected by the value change and those checkboxes that are no disable will not update properly. I am wondering if anyone know a solution to this problem? I have been playing with various configuration of autoSubmit, immediate, iterator update policy and refresh condition but I can't seem to either find the right combination or simply unable to find a solution using these configurations.
Thanks
G
User, please tell us your jdeveloper version.
Where have you defined the transient attribute? VO or EO?
Timo
Similar Messages
-
How to update person or group column with peopleeditor control values
Hi,
I have created custom aspx page and added "PeopleEditor" control(can select multiple users) in that page. Now I am trying to update person or group column with peopleeditor control values.I am not getting any error if I select single user
in PeopleEditor control but getting error if I select more than one user.
UpdateItem(listItem, "ListColumnName",
listItem.ParentList.ParentWeb.EnsureUser(peopleeditorId.CommaSeparatedAccounts));
Can anybody help me out to resolve the issue?
Thank you in advance!!!
AA.First get all the users/groups from the PeapleEditor by using PeapleEditor.ResolvedEntities
foreach (PickerEntity pickerEntity in peopleEditor.ResolvedEntities)
SPPrincipalType principalType = (SPPrincipalType)Enum.Parse(typeof(SPPrincipalType), pickerEntity.EntityData["PrincipalType"].ToString());
if (principalType == SPPrincipalType.User || principalType == SPPrincipalType.SecurityGroup)
string loginName = pickerEntity.Key;
//your code here
else if (principalType == SPPrincipalType.SharePointGroup)
string groupName = pickerEntity.Key;
//your code here
Add all the users/groups in an instance of SPFieldUserValueCollection
and then update your list item.
SPFieldUserValueCollection users = new SPFieldUserValueCollection();
users.Add(new SPFieldUserValue(web,user.ID,user.Name));
item["YourUserColumn"] = users;
item.Update(); -
Excel 2007 to Sql server table. Column with more than 255 characters.
Hi there,
I am facing a problem while converting data from Excel 2007 to SQL server 2005 table. I am using BIDS 2005.I have an excel file where one particular column has more than 255 characters. I use OLEDB connection for excel file as there is no driver for Excel
2007 in BIDS2005. I am using Microsoft Office 12.0 Access Database Engine OLE DB Provider for Excel file.
Next, I changed advanced properties for the column to DT_NTEXT. But when I am getting errors on execution. They are:
[OLE DB Source [1949]] Error: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040E21.
[OLE DB Source [1949]] Error: Failed to retrieve long data for column "action".
[OLE DB Source [1949]] Error: There was an error with output column "action" (2046) on output "OLE DB Source Output" (1959). The column status returned was: "DBSTATUS_UNAVAILABLE".
[OLE DB Source [1949]] Error: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR. The "output column "action" (2046)" failed because error code 0xC0209071 occurred, and the error row disposition on "output column "action"
(2046)" specifies failure on error. An error occurred on the specified object of the specified component. There may be error messages posted before this with more information about the failure.
Please advise on how can I deal with columns having more than 255 characters in Excel file.
Thanks!Here is what your connection string should look like for excel source
Provider
=Microsoft.Jet.OLEDB.4.0;Data
Source=c:\temp\test.xls;Extended
Properties="EXCEL 8.0;HDR=YES";
http://sqlworkday.blogspot.com/ -
Updating large table using the WITH CLAUSE or PLSQL
I tried to perform an update on a table with over 15million records using the merge statement below but it's very slow.
Can someone help me re-writting this statement using the WITH CLAUSE or a PLSQL statement that will make it run faster?
my merge statemet:
MERGE INTO voter dst
USING (
SELECT voterid,
pollingstation || CASE
WHEN ROW_NUMBER () OVER ( PARTITION BY pollingstation
ORDER BY surname, firstnames
) <= 1000
THEN 'A'
WHEN ROW_NUMBER () OVER ( PARTITION BY pollingstation
ORDER BY surname, firstnames
) BETWEEN 1000 AND 2000
THEN 'B'
ELSE 'C'
END AS new_pollingstation
FROM voter
) src
ON (src.voterid = dst.voterid)
WHEN MATCHED THEN UPDATE
SET dst.new_pollingstation = src.new_pollingstation
the with clause approach:http://www.dba-oracle.com/t_with_clause.htm
thanks.Well, here's your query formatted for people to read...
MERGE INTO voter dst
USING (SELECT voterid,
pollingstation || CASE WHEN ROW_NUMBER () OVER ( PARTITION BY pollingstation ORDER BY surname, firstnames) <= 1000
THEN 'A'
WHEN ROW_NUMBER () OVER ( PARTITION BY pollingstation ORDER BY surname, firstnames) BETWEEN 1000 AND 2000
THEN 'B'
ELSE 'C'
END AS new_pollingstation
FROM voter) src
ON (src.voterid = dst.voterid)
WHEN MATCHED THEN
UPDATE SET dst.new_pollingstation = src.new_pollingstation
;In future, please read {message:id=9360002} and post relevant details.
What do you mean when you say it's "slow"? How have you measured this? Have you examined the explain plan?
Take a read of the threads linked to by the FAQ post: {message:id=9360003} for details of what you need to provide to get help with performance issues. -
How to update a table whose column name contains an ampersand?
Hello,
I am needing to update a column whose column name contains an ampersand, and cannot figure out a way to do this. Option is not there to have the column name changed.
Ex:
UPDATE aircrafts
SET d&f = 1
WHERE aircraft_code = '737';
this returns an error of missing an = sign
I tried:
SET 'd'||'&'||'f' = 1
doesnt work
Any help is greatly appreciated.
Thanks,
LauraSET DEFINE OFF
will stop interpreting the & sign as starting of a lexical parameter on the client.
Not sure if you have that issue there.
& might also be a not allowed character in normal column names (didn't test).
In that case you might need to put the column name in ".
+example+
{code}
UPDATE aircrafts
SET "d&f" = 1
WHERE aircraft_code = '737';
{code}
Be aware that in this case the column name must be spelled exactly like it was when the table was created.
Included upper/lower case.
{code}
UPDATE aircrafts
SET "D&F" = 1
WHERE aircraft_code = '737';
{code} -
Updating and reading same column with PreparedStatement
sqlStr = "UPDATE user_mstr SET userid=?, username=?, duration=?, location=?, expiry_date=?, remainder_days=? WHERE userid=?";
stmt = DBConnection.getPreparedStatement(conn,sqlStr);
stmt.setString(1,strUserid);
stmt.setString(2,strUsername);
stmt.setString(3,strDuration);
stmt.setString(4,strLocation);
stmt.setDate(5,sqlDate);
stmt.setString(6,strRemainderDays);
stmt.setString(7,strUserid);
int rowcount = stmt.executeUpdate();This is the problem i'm facing right now: A numberformatexception is always thrown, meaning that the statement did not execute properly.
There is nothing wrong with the SQL, because i've used the query analyzer, and the record was updated fine.
There is also nothing wrong with the date field because when i took the code for updating the date column out, the update was fine too.
So what could be wrong here? Is it because double usage of userid in the preparedstatement? I think that is the problem, because when i did not update the userid, the update is fine. Is it that, i cannot update a field that is currently being used when using a prepared statement?
Is there a way to go around this besides adding another recordid column?
Thanks all.
Edited by: tsek1125 on Nov 13, 2007 8:58 PMif(rowcount > 0){
response.sendRedirect("updated.jsp");
}else {
throw new NumberFormatException("");
}Sorry BalusC, I forgot to post this portion: the NFE occurs only because the statement did not execute properly.. This portion is right after the first code chunk that i've posted.
Using the Netbeans debugger, i found out that all the fields are 'correct'. And that the NFE is thrown by: int rowcount = stmt.executeUpdate() Which leaves me to wonder what the problem is.
The userid is actually a string and not a real 'id', duration and remainder days are integers.
To clarify, now i've narrow the problem to: when i choose to update the userid column, it does not work. (and i think this is due to the part of the sql statement "WHERE userid = ?")
Why is a possible reason and solution? Thanks for your help :)
*/ -
Bc4juix:table and Columns with links (Jsp tags)
I'm tring to create a table with an image link that will pass the values of other columns on the url. The problem is I can't get the attribute values from the table. Here is a sample of my code:
<bc4juix:Table datasource="ds1" width="100%" >
<uix:column>
<uix:columnHeader>
<uix:sortableHeader text="Orc" value="Orc"
sortable="no" />
</uix:columnHeader>
<uix:contents>
<uix:image destination="<%=url%>" source="new.gif" />
</uix:contents>
</uix:column>
</bc4juix:Table>
Please help me!!!
JeffUrgent problem please help.
-
Scan table for columns with all unqiue rows
this is the best I could do think of so far which doesnt work, I dont know how to convert the literal column name to a reference to the column
SELECT g.table_name, g.column_name
FROM all_tab_columns g
WHERE g.table_name = 'SA_AREA' and NOT EXISTS (
SELECT g2.column_name
FROM all_tab_columns g2
WHERE 1 !=
(SELECT COUNT (*)
FROM all_tab_columns g3
--i know this part is wrong for sure
WHERE g2.column_name = g3.column_name
AND g2.table_name = g3.table_name
AND g.column_name = g2.column_name
AND g.table_name = g2.table_name))
thanks for your helpHello nwill,
I think that .. you want something like this
create table TEST_(COL1 VARCHAR2(30) not null,
COL2 NUMBER,
COL3 VARCHAR2(10));
alter table TEST_ add constraint PK_COL1 primary key (COL1);
alter table TEST_ add constraint UK_COL3 unique (COL3);
SELECT TABLE_NAME
, COLUMN_NAME
FROM ALL_CONS_COLUMNS
WHERE CONSTRAINT_NAME IN
(SELECT CONSTRAINT_NAME
FROM ALL_CONSTRAINTS
WHERE CONSTRAINT_TYPE IN ('P', 'U')) -- (P) primary key and (U) unique
AND TABLE_NAME IN (SELECT TABLE_NAME
FROM ALL_ALL_TABLES
WHERE OWNER = 'SCOTT')ouput
TABLE_NAME COLUMN_NAME
TEST_ COL3
TEST_ COL1Hope this helps
Christian Balz -
ALV Table: DROPDOWN-Column with different valuesets per row
Hello,
I tried to create a dropdown by index cell in a table with different valuesets in each row. So I created an attribute VALUESET of type WDR_CONTEXT_ATTR_VALUE_LIST in my node to provide different valuesets per element. In my ALV-table I bound the property "valueset_fieldname" of the dropdown-cell to the context-attribute VALUESET:
lo_column = lo_alv_model>if_salv_wd_column_settings~get_column( id = 'PRICE').
CREATE OBJECT lo_drop_down_idx
EXPORTING
selected_key_fieldname = u2018PRICEu2019.
lo_drop_down_idx->set_valueset_fieldname( value = u2018VALUESETu2019 ).
lo_column->set_cell_editor( lo_drop_down_idx ).
Now I have the problem, that the list of the dropdown-cell displays the proper amount of values but not the proper texts . My valueset looks for example like this:
Value: A
Text: A
Value: B
Text: B
Value: C
Text: C
Value: D
Text: D
But my Dropdown-cell shows these values:
A
A
A
D
Could you please help?
Edited by: Developer on Feb 2, 2010 5:32 PMHello Lekha,
thank you for your answer. I think there might be an other reason for this problem. When I debug the view with the Webdynpro-Debugger the valueset in the context contains the correct values but the dropdown shows wrong values.
You also sent me a link with a codesample. In this coding you use the following statement:
lr_drp_idx->set_texts( 'VALUESET' ). This is a method of the class CL_WD_DROPDOWN_BY_IDX. I used the class cl_salv_wd_uie_dropdown_by_idx as I'm working with an ALV-Table. This class doesn't have the method set_texts. Instead it has a method called 'set_valueset_fieldname'. Maybe this method has a bug?
Regards, -
Updating a table in a single screen without changing the table vie
Hi,
I have a master - detail table base on 2 VOs attached to 2 EO. This 2 Vos are linked via ViewLink by ID;
What I want to achieve is to place a messageTextInput field in detailTable->tableActions region. After the button in this region is pressed this filed should hold summary of "Payments"-columnvalues from detail table ( i have checkboxes in detailed table and it should calculate only selected rows). This field I created is attached to transient attribute SumPayment in MasterVO.
As now, after click of the button the controler call invokeMethod and in AM i do fallowing steps:
1. I get the instance od MasterVO and DetailVO
2. I iterate on every Row in MasterVO and get MasterID
3. Inside i filtered DetailVO where MasterID is the same (MasterVO and DetailVo is linked by MasterID)
4. I filter also at Selected transient attribute is the same as "Y"
5. Sumarize the Payments attribute from DetailVO and save it to float variable calulatedValue
6. For the actual row of MasterTable i do setAttribute("SumPayment",calculatedValue)
Unfortunately after doing this the table in screen navigate to the end of the view (it holds 10 Master -rows at once on the screen). I would like only the summaryField to update and the table looks the same before the click. I don't know also, how to take the MasterID while click of the button and send it as a parameter to CO so i don't have to iterate all MasterVoRows (the button is in inner region).
KonradThe chances of two applications running at exactly the same time are miniscule. If they each have a connection to the database, and are both trying to modify the same table, then chances are one will be slightly after the other its changes would be committed last. In the case where one might delete a row just before another tries to access that row, you're going to have some sort of problem. However, those circumstances are pretty rare, and even so, some small amount of exception handling can deal with them gracefully.
-
I have a lot of controls on the front panel. I want my 3D plot to be updated with any of them changed. Currently only one control's change can result in the update even if I do have done changes on other controls .. that's to say, only one specific control's change can activate the front panel updating ... That's not what I want. So how to make the front panel updated immediately like VC?
Many thanks!I solve this problem by combining the event structure with a classical state machine. The classical state machine is a case inside a loop with either an enum or string shift register defining the actual state. In the idle case of that structure is the actual event structure which handles the UI.
Whenever I need to trigger a specific action which could happen from multiple locations I actually place the handling code in a specific case in the outside state machine and just wire from the actual event case the according state out to the shift register.
This architecture allows for a very flexible and extende state machine programming with the event structure doing all the UI event handling and the state machine doing the more involved actions or series of actions
Rolf K
Rolf Kalbermatter
CIT Engineering Netherlands
a division of Test & Measurement Solutions -
TableView - How to update a running balance column after any other column in the view is re-sorted
To keep this simple and to illustrate a problem that I am trying to solve let's say we have
a domain class that contains an income per day.
This class has two persistent properties - populated from a database table - date and income.
And there is one transient property - running balance - that shows the accumulated income
starting from the first record. This property is not persisted and it is used only to show
the running/accumulated income in a table view.
This domain object is shown in a table view with three columns:
- date
- income
- running balance
The first two columns - date and income - are sortable. When the user clicks on the column
heading these can will be sorted in ascending or descending order. The running balance
column needs to reflect this change and be correctly updated.
So the question is : how would you implement the running balance update after the data in
the table has been updated by the user?
Take 1)
=============
The obvious approach is to use "setOnSort" method to consume the SortEvent event and re-sort the
data but the sort-event does not contain any useful information that would tell from which column
the sort event originated.
Take 2)
=============
Found a possible solution:
- TableView.getSortOrder() returns a list that defines the order in which TableColumn instances are sorted after the user clicked one or more column headings.
- TableColumn.getSortType() returns the sort type - ascending/descending.
- This info can be used in the TableView.setOnSort() event handler to re-sort the data and update the balance at the same time.
Take 3)
=============
When the TableView.setOnSort() event handler is called the data is already sorted therefore the only thing that needs to be done is to update the running balance.I think I understand what you're trying to do. If I've missed it, apologies, but I think this will provide you with something you can work from anyway.
I would listen to the data instead of watching specifically for sorting. This will be much more robust if you add new functionality later (such as adding and removing rows, editing the data that's there, etc).
Specifically, for the runningBalance column, create a cellValueFactory that provides a DoubleBinding; this binding should listen for changes to the data and compute the value by running through the table's items up to the point of the item for which it's displaying the value. (Hope you can untangle that sentence.)
Example. The important part is the cellValueFactory for the cumulativeAmountCol. I guess I should mention that you shouldn't try this exact approach with very large tables as the performance might be pretty bad (computations of the order of n x m on changing data, where n is the number of rows in the table and m is the number of visible rows in the table).
import java.text.DateFormat;
import java.text.NumberFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import java.util.Random;
import javafx.application.Application;
import javafx.beans.Observable;
import javafx.beans.binding.DoubleBinding;
import javafx.beans.property.DoubleProperty;
import javafx.beans.property.ObjectProperty;
import javafx.beans.property.SimpleDoubleProperty;
import javafx.beans.property.SimpleObjectProperty;
import javafx.beans.value.ObservableValue;
import javafx.collections.FXCollections;
import javafx.scene.Scene;
import javafx.scene.control.TableCell;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableColumn.CellDataFeatures;
import javafx.scene.control.TableView;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.layout.BorderPane;
import javafx.stage.Stage;
import javafx.util.Callback;
public class CumulativeTableColumnExample extends Application {
private final static int NUM_ITEMS = 20 ;
@Override
public void start(Stage primaryStage) {
final TableView<LineItem> table = new TableView<>();
// using the extractor here makes sure the table item list fires a list changed event if any amounts change
// this enables the cumulative amount column to keep up to date when the amount in a different row changes.
table.setItems(FXCollections.observableList(createRandomData(), new Callback<LineItem, Observable[]>() {
@Override
public Observable[] call(LineItem item) {
return new Observable[] {item.amountProperty()};
final TableColumn<LineItem, Date> dateCol = new TableColumn<>("Date");
final TableColumn<LineItem, Number> amountCol = new TableColumn<>("Amount");
final TableColumn<LineItem, Number> cumulativeAmountCol = new TableColumn<>("Cumulative Amount");
table.getColumns().addAll(Arrays.asList(dateCol, amountCol, cumulativeAmountCol));
dateCol.setCellValueFactory(new PropertyValueFactory<LineItem, Date>("date"));
amountCol.setCellValueFactory(new PropertyValueFactory<LineItem, Number>("amount"));
cumulativeAmountCol.setCellValueFactory(new PropertyValueFactory<LineItem, Number>("amount"));
cumulativeAmountCol.setSortable(false); // otherwise bad things might happen
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.SHORT);
dateCol.setCellFactory(new Callback<TableColumn<LineItem, Date>, TableCell<LineItem, Date>>() {
@Override
public TableCell<LineItem, Date> call(TableColumn<LineItem, Date> col) {
return new TableCell<LineItem, Date>() {
@Override
public void updateItem(Date date, boolean empty) {
super.updateItem(date, empty);
if (empty) {
setText(null);
} else {
setText(dateFormat.format(date));
cumulativeAmountCol.setCellValueFactory(new Callback<CellDataFeatures<LineItem, Number>, ObservableValue<Number>> () {
@Override
public ObservableValue<Number> call(CellDataFeatures<LineItem, Number> cellData) {
final LineItem currentItem = cellData.getValue() ;
DoubleBinding value = new DoubleBinding() {
super.bind(table.getItems());
@Override
protected double computeValue() {
double total = 0 ;
LineItem item = null ;
for (Iterator<LineItem> iterator = table.getItems().iterator(); iterator.hasNext() && item != currentItem; ) {
item = iterator.next() ;
total = total + item.getAmount() ;
return total ;
return value;
final NumberFormat currencyFormat = NumberFormat.getCurrencyInstance();
// generics hell.. can't wait for lambdas...
final Callback<TableColumn<LineItem, Number>, TableCell<LineItem, Number>> currencyCellFactory = new Callback<TableColumn<LineItem, Number>, TableCell<LineItem, Number>>() {
@Override
public TableCell<LineItem, Number> call(TableColumn<LineItem, Number> column) {
return new TableCell<LineItem, Number>() {
@Override
public void updateItem(Number amount, boolean empty) {
if (empty) {
setText(null) ;
} else {
setText(currencyFormat.format(amount));
amountCol.setCellFactory(currencyCellFactory);
cumulativeAmountCol.setCellFactory(currencyCellFactory);
BorderPane root = new BorderPane();
root.setCenter(table);
primaryStage.setScene(new Scene(root, 600, 400));
primaryStage.show();
public List<LineItem> createRandomData() {
Random rng = new Random();
List<LineItem> items = new ArrayList<>();
for (int i=0; i<NUM_ITEMS; i++) {
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DAY_OF_YEAR, rng.nextInt(365)-365);
double amount = (rng.nextInt(90000)+10000)/100.0 ;
items.add(new LineItem(cal.getTime(), amount));
return items ;
public static void main(String[] args) {
launch(args);
public static class LineItem {
private final ObjectProperty<Date> date ;
private final DoubleProperty amount ;
public LineItem(Date date, double amount) {
this.date = new SimpleObjectProperty<>(this, "date", date);
this.amount = new SimpleDoubleProperty(this, "amount", amount);
public final ObjectProperty<Date> dateProperty() {
return date;
public final Date getDate() {
return date.get();
public final void setDate(Date date) {
this.date.set(date);
public final DoubleProperty amountProperty() {
return amount ;
public final double getAmount() {
return amount.get();
public final void setAmount(double amount) {
this.amount.set(amount); -
Code to update a table using sqlldr
Hi all,
can anybody give the code to update a table using sqlldr with an example
thank youYou want add the new line and modified the existing line (based on empno) from file e:\scripts\sql\emp2_ext.dat into table emp2 :
7782,CLARK,MANAGER,7839,09/06/81,80000,,10
8000,ORACLE,DATABASE,,11/02/07,99999,,20Then :
SQL> conn system/mypwd
Connected.
SQL>
SQL> create directory my_dir as 'e:\scripts\sql';
Directory created.
SQL>
SQL> grant read,write on directory my_dir to scott;
Grant succeeded.
SQL>
SQL> conn scott/mypwd
Connected.
SQL> create table emp2_ext
2 (EMPNO NUMBER(4),
3 ENAME VARCHAR2(10),
4 JOB VARCHAR2(9),
5 MGR NUMBER(4),
6 HIREDATE DATE,
7 SAL NUMBER(7,2),
8 COMM NUMBER(7,2),
9 DEPTNO NUMBER(2)
10 )
11 ORGANIZATION EXTERNAL
12 ( TYPE ORACLE_LOADER
13 DEFAULT DIRECTORY my_dir
14 ACCESS PARAMETERS
15 ( records delimited by newline
16 badfile my_dir:'emp2_ext.bad'
17 logfile my_dir:'emp2_ext.log'
18 fields terminated by ','
19 missing field values are null
20 ( empno, ename, job, mgr, hiredate char date_format date mask "dd/mm/yy",
21 sal, comm, deptno
22 )
23 ) LOCATION ('emp2_ext.dat')
24 ) ;
Table created.
SQL>
SQL> select * from emp2_ext;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7782 CLARK MANAGER 7839 09/06/81 80000 10
8000 ORACLE DATABASE 11/02/07 99999 20
SQL> select * from emp2;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7782 CLARK MANAGER 7839 09/06/81 24500 10
7839 KING PRESIDENT 17/11/81 50000 10
7934 MILLER CLERK 7782 23/01/82 13000 10
SQL> merge into emp2 a
2 using (select * from emp2_ext) b
3 on (a.empno=b.empno)
4 when matched then update set a.ename=b.ename,
5 a.job=b.job,
6 a.mgr=b.mgr,
7 a.hiredate=b.hiredate,
8 a.sal=b.sal,
9 a.comm=b.comm,
10 a.deptno=b.deptno
11 when not matched then insert (a.empno, a.ename, a.job, a.mgr, a.hiredate, a.sal, a.comm, a.deptno)
12 values (b.empno, b.ename, b.job, b.mgr, b.hiredate, b.sal, b.comm, b.deptno);
2 rows merged.
SQL>
SQL> select * from emp2;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7782 CLARK MANAGER 7839 09/06/81 80000 10 --modified line
7839 KING PRESIDENT 17/11/81 50000 10
7934 MILLER CLERK 7782 23/01/82 13000 10
8000 ORACLE DATABASE 11/02/07 99999 20 --added line
SQL> HTH,
Nicolas.
Well, Hans has already give good explanation with docs links...
Message was edited by:
N. Gasparotto -
Multiple row selection in ADF Table using addition column with checkbox
I am using ADF table(Jdeveloper11g) and i want to selecte multiple rows it may be more than one OR all rows.
For that i added one Column to the table with Header Delete and checkbox
<af:table....
<af:column sortProperty="Delete" headerText="Delete" width="100"
sortable="false">
<af:selectBooleanCheckbox label="#{row.favoriteId}"
valueChangeListener="#{Mybean.onCheck}"
id="checkbox" autoSubmit="true">
</af:selectBooleanCheckbox>
</af:column>
</af:table>
backing bean:Here i added code to get Value of one column with id favoriteId and use an arrayList(listForDelete) to monitor the state of the checkboxes
public void onCheck(ValueChangeEvent valueChangeEvent) {
BindingContainer bindings = getBindings();
DCBindingContainer dcBindings =
(DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();
DCIteratorBinding iterBind =
(DCIteratorBinding)bindings.get("getUserFavoritesByUserIDIterator");
if (iterBind != null && iterBind.getCurrentRow() != null) {
RichSelectBooleanCheckbox ch = (RichSelectBooleanCheckbox)valueChangeEvent.getSource();
if (!ch.isSelected()) {
Long issueId = (Long)iterBind.getCurrentRow().getAttribute("favoriteId");
listForDelete.add(issueId);
else
Long issueId = (Long)iterBind.getCurrentRow().getAttribute("favoriteId");
listForDelete.remove(issueId);
Problem is that when i select single row checkBox, onCheck() method of backing bean gets called multiple times(equals to the number of rows)
I think this is beacuse of <af:selectBooleanCheckbox id is same that is "checkbox" but i am not sure.Even i tried to assign some unique id but no any success in assigning Id with value Expression.
I also find related post
Re: ADF Table Multiple row selection by Managed Bean
but that is related to Select All rows or Deselect all rows from table.
From the simillar post i follow the steps given by Frank.but problem with below step
->have an af:clientAttribute assigned to the checkbox with the following EL #{row.key} ,here I added <af:clientAttribute name="#{row.key}"></af:clientAttribute> and i am getting error
Error(64,37): Static attribute must be a String literal, its illegal to specify an expression.
Please let me know if any one had already implemented same test case.
Thanks for all help
Jaydeep
Edited by: JaydeepJ on Aug 7, 2009 4:42 AMjust to update after the rollback is called in the cancel button i wrote following code which does not change the row focus to the first row
DCBindingContainer bc =
(DCBindingContainer)BindingUtils.getBindingContext().getCurrentBindingsEntry();
DCIteratorBinding profItr =
bc.findIteratorBinding("ProfileSearchInstIterator");
Row cRow = profItr.getRowAtRangeIndex(0);
if(cRow != null){
System.out.println("Current row is not null so fixed ");
profItr.setCurrentRowIndexInRange(0);
RowKeySetImpl rks = new RowKeySetImpl();
ArrayList keyList = new ArrayList();
keyList.add(cRow.getKey());
rks.add(keyList);
profileTable.setSelectedRowKeys(rks);
AdfFacesContext.getCurrentInstance().addPartialTarget(profileTable);
} -
Want to update a column with different column of same table
I have a table TEST_CDR which is having 250 millions records also having partition by hash.
there are two column in this table ID and CDR_ID want to update ID in CDR_ID but it take too much time like 24 hours or more.
please suggest me a simple way.Hi,
You can try this. but be careful about your backups and go through CTAS,nologging and parallel concepts...
Please refer this link.
http://www.dba-oracle.com/t_fast_batch_updates_ctas.htm
http://www.dba-oracle.com/t_nologging_append.htm
http://www.dba-oracle.com/t_efficient_update_sql_dml_tips.htm
http://eriglen.blogspot.in/2011/08/ctas-create-table-as-select-with.html
1.CTAS with nologging and parallel..
SQL> create table test_cdr_1(id,cdr_id) nologging parallel as select id,id from test_cdr;
2.rebuild indexes, triggers and constraints to test_cdr_1
3.rename test_cdr to bkup_test_cdr;
4.rename test_cdr_1 to test_cdr;
Regards,
ragunath.
Maybe you are looking for
-
I just learned that you can convert ID3 tags to Unicode right in iTunes. I used to use Unicode Rewriter, but now I can't convert them in either - it just stays the same! I don't know what's different in my computer now, but I did a complete system re
-
Preview When opening files not showing up in PS6!
Hi, I've recently upgraded from Photoshop 5 to Photoshop 6. When opening files in PS5 a preview was available when selecting PSDs and image files. This made it extremely easy to view files and PSD's without having to fully open them. But this feature
-
When executing Finance Module, I am getting error in Workflow
Hi, When I started workflow for financial module, It gets stuck at SILOS:SIL_InsertRowInRunTable workflow. I dont know what is the problem actually. I try to change user name for integration services but it wont work. Please help me out in this probl
-
Custom Rule - Count of Event ID
I have a custom rule in SCOM 2012 for event ID 4648 in the security log. This will only alert when parameter 6 equals a specific user id. That works fine. But, I want to get a count of how many times event id 4646 appears in the log for this user. Ho
-
Ipad2 is having issues with Apple's Apps
My Ipad2 first had issues with a blank screens when I opened my reminders. Two weeks later the same thing has happened with my address book. I see the edees/"form" of each app, but absolutely no writing what so ever. I un did them from icould but tha