How to populate table rows with selected listbox items?
Hello,
I am trying to populate a table with selected listbox items. Each item should be a new row in the table. The picture below is the listbox and table I am using. I need to get the selected name to populate the Attendee column of the table when the user clicks the Add button. How do you do this with mutltiple attendees selected?
Thank you,
Angie
So you're considering the fact the if the user clicks the button twice, the name will appear twice and you don't want this, right?
Then you must check if any value is the same than the one you are about to add in the row..
for (var i = 0 ; i < ListBox1.length; i++){
if (ListBox1.getItemState(i) == true){
for (var x = 0 ; x < Table1._Row1.count; x++){
var boNewAttendee = true;
var strAttendee = Table1.resolveNode("Row1[" + x.toString() + "]").txtAttendee;
var newAttendee = ListBox1.getDisplayItem(i);
if (strAttendee.rawValue == newAttendee){
boNewAttendee = false;
break;
if (boNewAttendee){
txtAttendee.rawValue = ListBox1.getDisplayItem(i);
Similar Messages
-
How to reject external table rows with some blank columns
How to reject external table rows with some blank columns
I have an external table and I would like to reject rows when a number of fields are empty. Here are the details.
CREATE TABLE EXTTAB (
ID NUMBER(10),
TSTAMP DATE,
C1 NUMBER(5,0),
C2 DATE,
C3 FLOAT(126)
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY EXT_DAT_DIR
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
LOAD WHEN (NOT (c1 = BLANKS AND c2 = BLANKS AND c3 = BLANKS))
LOGFILE EXT_LOG_DIR:'exttab.log'
BADFILE EXT_BAD_DIR:'exttab.bad'
DISCARDFILE EXT_BAD_DIR:'exttab.dsc'
FIELDS TERMINATED BY "|"
LRTRIM
MISSING FIELD VALUES ARE NULL
REJECT ROWS WITH ALL NULL
FIELDS (
ID,
TSTAMP DATE 'YYYYMMDDHH24MISS',
C1,
C2 DATE 'YYYYMMDDHH24MISS',
C3
) LOCATION ('dummy.dat')
REJECT LIMIT UNLIMITED
So, as you can see from the LOAD WHEN clause, I'd like to reject rows when C1, C2 and C3 are empty.
The above statement works fine and creates the table. However when I am trying to load data using it, the following error is produced:
ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-00554: error encountered while parsing access parameters
KUP-01005: syntax error: found "not": expecting one of: "double-quoted-string, identifier, (, number, single-quoted-string"
KUP-01007: at line 1 column 41
ORA-06512: at "SYS.ORACLE_LOADER", line 14
ORA-06512: at line 1
It seems that external tables driver does not understand the "NOT (...)" condition. Could anyone suggest how I can achieve what I want in a different way?
Thank you.
DenisAnother method would be to simply remove the "LOAD WHEN condition" and create a view on the external table which filters the data.
CREATE EXTTAB_VIEW AS
SELECT * FROM EXTTAB
WHERE not (c1 is null and c2 is null and c3 is null); -
How to make first row as selected in af:table
Hi,
I am using JDeveloper 11.1.1.4 and ADF-BC in my application.
In all the pages across my application we have multi select enabled for the table[af:table].
But when the pages are displayed,the first row is not selected by default.
My requirement is to display first row as selected across all the tables in my app.
I have the selectionListenerset as for example selectionListener="#{bindings.RSCMapVO2.collectionModel.makeCurrent}" in all the pages.
Please suggest on how to make first row as selected.
Regards,
PraveenHi
Put these codes in your selection listner method(You have to define a selectionListner method in your backing bean and put this code segment
(Special thanks go to Franks how posted this code segment. threadID=1089583)
RichTable yourTable = (RichTable) selectionEvent.getSource();
//the Collection Model is the object that provides the structured data
//for the table to render
CollectionModel yourTableModel = (CollectionModel) yourTable.getValue();
//the ADF object that implements the CollectionModel is JUCtrlHierBinding. It
//is wrapped by the CollectionModel API
JUCtrlHierBinding yourTableBinding = (JUCtrlHierBinding) yourTableModel.getWrappedData();
//Acess the ADF iterator binding that is used with ADF table binding
DCIteratorBinding yourTableIteratorBinding = yourTableeBinding.getDCIteratorBinding();
//the role of this method is to synchronize the table component selection
//with the selection in the ADF model
Object _selectedRowData = yourTable.getSelectedRowData();
//cast to JUCtrlHierNodeBinding, which is the ADF object that represents
//a row
JUCtrlHierNodeBinding nodeBinding = (JUCtrlHierNodeBinding) selectedRowData;
//get the row key from the node binding and set it as the current row in the
//iterator
Key rwKey = nodeBinding.getRowKey();
tableIteratorBinding.setCurrentRowWithKey(rwKey.toStringFormat(true));
Thanks
Padma -
How to populate a page with images in across/down direction?
Hi,
Does anyone know how to populate a page with images in across and down direction (for example 6 X 6 )? It seems that I cannot use data table because records are only running downward and each row can have one record.
Any suggestion would be appreciated. thanks.Alex,
You can create your own tabular form using APEX_ITEM API's
Create report and you can put similar code to following
SELECT APEX_ITEM.TEXT(1,col1) pk1, APEX_ITEM.TEXT(2,col2) pk2 FROM your_tableSo data will be displayed in TEXT boxes as if it's a tabular form. Now you need to handle INSERT/UPDATE/DELETE processes manually. You can easily handle INSERT and DELETE. But handling UPDATE can be a nightmare. What if user has updated both the column values?
Updated details
One way out would be to use ROWID as Primary key to handle DELETE and UPDATE
SELECT APEX_ITEM.CHECKBOX(1,ROWID) tick, APEX_ITEM.TEXT(2,col1) pk1, APEX_ITEM.TEXT(3,col2) pk2 FROM your_tablebut yet I suggest to go for proper primary key..
Regards,
Hari
Edited by: Hari_639 on Dec 3, 2009 6:52 PM -
How to maintain dynamic rows with data when click on Previous button?
Hi,
I have 1 aspx page and divided into 3 pages using panels.Each panel has "Next" and Previous buttons
I have created and deleted dynamic table rows when click on Add button using javascript. whenever i click on Next button it will navigate to same page of next panel.
when i click on previous button then it goes to previous panel but whatever i have added dynamic table rows in 1st panel that got removed.
Can u please help me for how to maintain state of dynamic table rows with entered data when click on Previous button?
How to get dynamic table rows with entered data in previous panel when click on Previous button?
Please find the below javascript code:
function insertRow() {
if (index >= 2) {
document.getElementById('deleteRow').style.display = "inline";
else { document.getElementById('DeleteRow').style.display = "none"; }
var table = document.getElementById("myTable");
var row = table.insertRow(table.rows.length);
cell1 = row.insertCell(0);
t1 = document.createElement("select");
t1.options[t1.options.length] = new Option('--Select--', '0');
t1.id = "ddlYear" + index;
cell1.appendChild(t1);
for (var i = 1975; i <= 2015; i++) {
opt = document.createElement("option");
opt.value = i;
opt.text = i;
t1.add(opt);
t1.style.width = "155px";
var cell2 = row.insertCell(1);
t2 = document.createElement("Select");
t2.options[t2.options.length]=new Option('--Select--','0');
t2.options[t2.options.length]=new Option('State Board','1');
t2.options[t2.options.length]=new Option('CBSE','2');
t2.options[t2.options.length]=new Option('ICSE','3');
t2.options[t2.options.length] = new Option('Others', '4');
t2.style.width = "155px";
t2.id = "ddlCourse" + index;
cell2.appendChild(t2);
var cell3 = row.insertCell(2);
t3 = document.createElement("input");
t3.id = "txtCity" + index;
cell3.appendChild(t3);
var cell4 = row.insertCell(3);
t4 = document.createElement("input");
t4.id = "txtInstitute" + index;
cell4.appendChild(t4);
var cell5 = row.insertCell(4);
t5 = document.createElement("Select");
t5.options[t5.options.length] = new Option('--Select--', '0');
t5.options[t5.options.length] = new Option('English', '1');
t5.options[t5.options.length] = new Option('Hindi', '2');
t5.options[t5.options.length] = new Option('Telugu', '3');
t5.options[t5.options.length] = new Option('Others', '4');
t5.style.width = "155px";
t5.id = "ddlMedium" + index;
cell5.appendChild(t5);
var cell6 = row.insertCell(5);
t6 = document.createElement("input");
t6.id = "txtSpecialization" + index;
cell6.appendChild(t6);
var cell7 = row.insertCell(6);
t7 = document.createElement("input");
t7.id = "txtFnl" + index;
cell7.appendChild(t7);
index++;
function DeleteRow(index) {
var table = document.getElementById("myTable");
table.deleteRow(index);
// if (index = 2) { alert("There is no rows added.Please add the new row"); }
Design:
<tr style="font-size: 12pt" id="trSecond" runat="server">
<td colspan="3">
<table id="myTable" width="100%" border="0">
</table>
<tr>
<td colspan="3" align="right">
<input type="button" title="Add" value="Add" onclick="insertRow();" />
<input type="button" id="deleteRow" title="Delete" value="Delete Row" onclick="DeleteRow(this);" style="display:none" />
</td>
</tr>
Thank you.Put the button click into an action listener and build the new frame there. The code I have below isn't exactly what you're doing (it's amazingly oversimplified), but it's probably similar enough to get your wheels turning in the right direction.
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class sample
public static void main(String[] args)
JFrame frame = new JFrame("Sample");
frame.setSize(400,400);
Container content = frame.getContentPane();
content.setLayout(new FlowLayout());
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
final JTextField text = new JTextField(10);
content.add(text);
JButton button = new JButton("Send");
content.add(button);
frame.setVisible(true);
button.addActionListener(new ActionListener()
public void actionPerformed(ActionEvent ae)
JFrame myframe = new JFrame("Results");
myframe.setSize(200,200);
Container mycontent = myframe.getContentPane();
mycontent.setLayout(new FlowLayout());
String mytext = text.getText();
JLabel label = new JLabel();
label.setText(String.valueOf(mytext));
mycontent.add(label);
myframe.setVisible(true);
} -
Applying table scroll bar for only table rows with table columns fixed.
hi oa gurus,
i had implemented table scroll bars using oarawtextbean , there is no problem in vertical and horizontal scroll bar working its working fine. but the requirement is i need to scroll only the table rows with table columns fixed. so , how to achieve the table scroll for only table datas neglecting table headers.
the code for vertical and horizontal bars scroll is like this,
OARawTextBean ors = (OARawTextBean)webBean.findChildRecursive("raw1");
ors.setText(div id=tabledivid style=height:500px;width:100%; overflow:auto>);
OARawTextBean ore = (OARawTextBean)webBean.findChildRecursive("raw2");
ore.setText("</div>");
where raw1 and raw2 are rawtextbean created above and below of the table . but i dont know hoow to apply this only for table rows neglecting table columns , can anybody give any ideas.
pelase this is very urgent , can u help me in this regards
thanks
Edited by: user630121 on Sep 29, 2008 5:17 AM
Edited by: user630121 on Sep 29, 2008 5:18 AMhi,
I have a similar task to do... Only to apply scrollbar at the table level.
I tried using the above mentioned but I am facing Null Pointer Exception..
Please explain about raw1 and raw2
Rahul -
How to customize some rows default selected in tableSelectMany
Hi all,
How to set some rows default selected in tableSelectMany
Thanks
JaysonIf you bind table to managed bean attribute using binding property you may preselect some rows in getter of that attribute.
private RichTable _t;
public RichTable get_t() {
//select few rows here or all...
_t.getSelectedRowKeys().addAll();
return _t;
{code} -
How to handle Table controls with XD01 in BDC
How to handle Table controls with XD01 in BDC - If there are more than 5/6 records in Table control. - Can any one explain it with a piece of code plz..
Thanks & Regards,
Krishna ChaitanyaHi
check this code...viz for xko1....
DATA: BEGIN OF it_xk01 OCCURS 0,
f1(1),
f2(5),
f3(5),
f4(9),
f5(9),
END OF it_xk01.
DATA: v_count(2) VALUE '00',
v_koinh(14),
v_banks(14),
v_bankn(14),
v_bankl(14),
it_bdcdata TYPE STANDARD TABLE OF bdcdata WITH HEADER LINE,
wa_ctuparams type ctu_params.
PARAMETERS: p_file TYPE rlgrap-filename OBLIGATORY.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
PERFORM get_f4.
START-OF-SELECTION.
PERFORM upload_data.
END-OF-SELECTION.
LOOP AT it_xk01.
IF it_xk01-f1 = 'H'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0100'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RF02K-KTOKK'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'RF02K-KTOKK'
it_xk01-f2.
ENDIF.
IF it_xk01-f1 = 'N'.
PERFORM bdc_dynpro USING 'SAPMF02K' '0110'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFA1-PSTLZ'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=VW'.
PERFORM bdc_field USING 'LFA1-ANRED'
'Mr'.
PERFORM bdc_field USING 'LFA1-NAME1'
it_xk01-f2.
PERFORM bdc_field USING 'LFA1-SORTL'
it_xk01-f3.
PERFORM bdc_field USING 'LFA1-PSTLZ'
it_xk01-f4.
PERFORM bdc_field USING 'LFA1-LAND1'
it_xk01-f5.
PERFORM bdc_dynpro USING 'SAPMF02K' '0120'.
PERFORM bdc_field USING 'BDC_CURSOR'
'LFA1-KUNNR'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=VW'.
ENDIF.
IF it_xk01-f1 = 'I'.
v_count = v_count + 1.
IF v_count le 5.
CONCATENATE 'LFBK-KOINH(' v_count ')' INTO v_koinh.
CONCATENATE 'LFBK-BANKS(' v_count ')' INTO v_banks.
CONCATENATE 'LFBK-BANKN(' v_count ')' INTO v_bankn.
CONCATENATE 'LFBK-BANKL(' v_count ')' INTO v_bankl.
CONDENSE v_koinh NO-GAPS.
CONDENSE v_banks NO-GAPS.
CONDENSE v_bankl NO-GAPS.
CONDENSE v_bankn NO-GAPS.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
v_koinh.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING v_banks
it_xk01-f2.
PERFORM bdc_field USING v_bankl
it_xk01-f3.
PERFORM bdc_field USING v_bankn
it_xk01-f4.
PERFORM bdc_field USING v_koinh
it_xk01-f5.
else.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
v_koinh.
PERFORM bdc_field USING 'BDC_OKCODE'
'=P+'.
v_count = 1.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
v_koinh.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
CONCATENATE 'LFBK-KOINH(' v_count ')' INTO v_koinh.
CONCATENATE 'LFBK-BANKS(' v_count ')' INTO v_banks.
CONCATENATE 'LFBK-BANKN(' v_count ')' INTO v_bankn.
CONCATENATE 'LFBK-BANKL(' v_count ')' INTO v_bankl.
CONDENSE v_koinh NO-GAPS.
CONDENSE v_banks NO-GAPS.
CONDENSE v_bankl NO-GAPS.
CONDENSE v_bankn NO-GAPS.
PERFORM bdc_field USING v_banks
it_xk01-f2.
PERFORM bdc_field USING v_bankl
it_xk01-f3.
PERFORM bdc_field USING v_bankn
it_xk01-f4.
PERFORM bdc_field USING v_koinh
it_xk01-f5.
ENDIF.
ENDIF.
CLEAR it_xk01.
ENDLOOP.
PERFORM bdc_dynpro USING 'SAPMF02K' '0130'.
PERFORM bdc_field USING 'BDC_CURSOR'
v_koinh.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
perform bdc_dynpro using 'SAPLSPO1' '0300'.
perform bdc_field using 'BDC_OKCODE'
'=YES'.
wa_ctuparams-DISMODE = 'A'.
wa_ctuparams-UPDMODE = 'S'.
wa_ctuparams-DEFSIZE = 'X'.
CALL TRANSACTION 'XK01' USING it_bdcdata MODE 'A'
UPDATE 'S'.
options from wa_ctuparams.
MODE 'A'
UPDATE 'S'.
*& Form upload_data
text
FORM upload_data .
DATA: lv_infile TYPE string.
lv_infile = p_file.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = lv_infile
filetype = 'ASC'
has_field_separator = 'X'
TABLES
data_tab = it_xk01.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " upload_data
*& Form get_f4
text
FORM get_f4 .
CALL FUNCTION 'F4_FILENAME'
EXPORTING
program_name = syst-cprog
dynpro_number = syst-dynnr
FIELD_NAME = ' '
IMPORTING
file_name = p_file.
ENDFORM. " get_f4
Start new screen *
FORM bdc_dynpro USING program dynpro.
CLEAR it_bdcdata.
it_bdcdata-program = program.
it_bdcdata-dynpro = dynpro.
it_bdcdata-dynbegin = 'X'.
APPEND it_bdcdata.
ENDFORM. "BDC_DYNPRO
Insert field *
FORM bdc_field USING fnam fval.
IF FVAL <> NODATA.
CLEAR it_bdcdata.
it_bdcdata-fnam = fnam.
it_bdcdata-fval = fval.
APPEND it_bdcdata.
ENDIF.
ENDFORM. "BDC_FIELD
*H 0302
*N sdng dddsj 500020 IN
*I IN ICICI 734897597 xyz
*I IN SBH 768346687 abc
*I IN SBI 345687346 fgh
*I IN SBH 763846878 ujhgf
*I IN HSBC 797893778 fvdg
*I IN HDFC 723678638 fdgf
*I IN 4444 435645646 fgfg
*I IN 3400 763468768 gfgfg -
How to populate an array with random text files.
I am making a Jeopardy program. I have my program set up so that it retrieves 5 random text files. I just want to know how I populate one array with all the lines from the text files my program is retrieving.
You can read a textfile line by line and add each line to an ArrayList. An ArrayList is very much like an array only that it's "open ended". You can start adding lines without first knowing how many you're going to get. If you still want an ordinary "static" array when you're finished reading lines you can easily get one from the ArrayList and then drop the ArrayList.
-
How to declare and work with select-option in screen painter?
hello there,
can anybody plz suggest me ,how to declare and work with select-option in screen painter?
neonHi Blue,
Please check these threads which will help you a lot..
module pool programming " to add selection-option on screen"
Re: Select option in Dialog program screen
Re: SELECT-OPTIONS in Screen
Good luck
Narin -
How to create table view with reference table
Hi experts,
How to create table view with reference table in SE11, plz gve me stp by stp procedure.
pints grnded for hlp.Hi
Go to Tcode se11 choose view and enter the name and create a popup opens up choose database view option
enter the description
On the left hand side choose the table name.
Click on view fields tab and choose your table fields.Here you can choose which fields you want in your view.
Save and then activate.
Hope this helps.
Regards,
Harish -
How to populate smart form with new values
Hi!
I am new to smart form . Can anybody help me in how to populate smart form with some new fileds. Actually i have to populate credit memo form with some customized values..Hello,
Please elaborate your query more in order to be comprehendable.
Regards,
Shehryar -
I want to read and assign value of ADF Table rows with Java Script
Hi,
I want to read and assign value of ADF Table rows with Java Script, but I cant true index of current row , so I assign wrong value to anathor column of ADF Table.
My Code;
ADF Table items
<af:column sortProperty="Adet" sortable="false"
headerText="#{bindings.RezervasyonWithParams1voHarcamaOdeme1.labels.Adet}"
binding="#{backing_ucret.column2}" id="column2">
<af:inputText value="#{row.Adet}"
required="#{bindings.RezervasyonWithParams1voHarcamaOdeme1.attrDefs.Adet.mandatory}"
columns="10"
binding="#{backing_ucret.inputText2}"
id="inputText2" onchange="getTutar('#{bindings.voHarcamaOdeme1Iterator.rangeStart + bindings.voHarcamaOdeme1Iterator.currentRowIndexInRange + 1}','#{bindings.voHarcamaOdeme1Iterator.estimatedRowCount}','#{row.index}')">
<f:convertNumber groupingUsed="false"
pattern="#{bindings.RezervasyonWithParams1voHarcamaOdeme1.formats.Adet}"/>
</af:inputText>
</af:column>
MY JAVA SCRIPT CODE
<f:verbatim>
<script language="javascript" type="text/javascript">
function getTutar(rowkey,totalrow,currentRow){
alert('rowkey--totalRow--currentRow-->'+rowkey+'--'+totalrow+'--'+currentRow);
if (currentRow==0) {
rowkey=totalrow-1;
}else{
var rw=totalrow-currentRow-1;
rowkey=rw;
alert(document.getElementById('form1:table1:'+rowkey+':inputText8').value);
alert(document.getElementById('form1:table1:'+currentRow+':inputText8').value);
var birim_ucret=document.getElementById('form1:table1:'+rowkey+':inputText8').value;
var adet=document.getElementById('form1:table1:'+rowkey+':inputText2').value;
document.getElementById('form1:table1:'+rowkey+':inputText3').value=birim_ucret*adet;
document.getElementById('form1:inputText6').value=0;
var t;
var toplam=0;
alert('before Sum');
for (var i=0;i!=totalrow-1;i++){
t = document.getElementById('form1:table1:'+i+':inputText3');
toplam+=t.value*1;
document.getElementById('form1:inputText6').value=toplam;
</script>
</f:verbatim>You can achieve the use case you describe with partial page rendering (PPR), a feature of the ADF Faces framework. Here are a few posts that achieve an interactive behavior using PPR. Off the top of my head I do not know of an exact example, but this should be a good starting point:
http://thepeninsulasedge.com/blog/2006/09/12/adf-faces-aftableselectmany/
http://thepeninsulasedge.com/blog/2006/08/31/adf-faces-working-with-aftableselectone-and-the-dialog-framework/
--RiC -
How to populate one dropdown on select of other dropdown in a table
Hi
My requirement is that I want to populate one dropdown on selection of some value in other drop down.The two dropdown are present in two columns of a Table.
Can any body help for the same.
Regards
NitinHi,
Try This
Bind "enable" properties of Both DD1 and DD2 to
context attributes of type boolean. DD1Enable,DD2Enable
1: set their value to false intially
wdContext.currentContextElement.setDD1Enable(false);
wdContext.currentContextElement.setDD2Enable(false);
Bind the selected property of the table to a
Context attribute of type boolean(Initially false), say "selected"
2: Then use check box in the table to get current lead selection
write in "onToggle" action of checkBox
int len=wdContext.nodeTable().size();
for(int i=0;i<len;i++)
if(wdContext.currentTableElement().getSelected()==true)
wdContext.currentDD1Element().setDD1Enabled(true);
wdContext.currentDD2Element().setDD2Enabled(true);
}else
wdContext.currentDD1Element().setCountryEnabled(false);
wdContext.currentDD2Element().setStateEnabled(false);
This is how u get leadselection and able to change particular row in the table
Regards
Lakshmi -
How to make a row as selected in output internal table in oops ALV
Hi All,
I have ALV grid output using oops ALV concept, in my output i have a checkbox as first column when i select this checkbox and press a push button 'Print' which is there above ALV grid that particular line in output table should get selected and i need to code some logic for printing selected row.
how to make the particluar row in the output internal table to be selected and where to write the logic for print once it is pressed?
Thanks in advance
Srilakshmi.but the checkbox is not getting set in internal table when i select some checkboxes.
can anybody explain y the checkbox in internal table not set?
Hi Srilakshmi,
As explained by Uwe, when we change a field ( say check box ) in ALV grid, the view (frontend) changes (showing the tick mark) but the changed data ( normally ) is not transfered to the backend.
We can initiate this data transfer by just registering the cl_gui_alv_grid=>mc_evt_modified edit event
go_grid->set_table_for_first_display( CHANGING it_fieldcatalog = pt_fieldcat
it_outtab = pt_outtab ).
go_grid->set_ready_for_input( 1 ).
go_grid->register_edit_event( EXPORTING i_event_id = cl_gui_alv_grid=>mc_evt_modified ). " This does the trick
Now as soon as we check a checkbox, the data_changed event is triggered.
This initiates data transfer to the backend and the checkbox field in internal table is updated.
check the below code for example.
DATA: go_cont TYPE REF TO cl_gui_custom_container,
go_grid TYPE REF TO cl_gui_alv_grid,
gt_fieldcat TYPE lvc_t_fcat,
gv_language TYPE spras VALUE 'E',
gt_outtab TYPE TABLE OF bus_loca_demo WITH HEADER LINE.
START-OF-SELECTION.
CALL SCREEN 100.
* MODULE PBO OUTPUT *
MODULE pbo OUTPUT.
SET PF-STATUS 'BASIC'.
SET TITLEBAR '001'.
PERFORM create_and_init_alv CHANGING gt_outtab[]
gt_fieldcat.
ENDMODULE. "pbo OUTPUT
* MODULE PAI INPUT *
MODULE pai INPUT.
CASE sy-ucomm.
WHEN 'BACK'.
SET SCREEN 0. LEAVE SCREEN.
WHEN 'PRINT'.
BREAK-POINT.
ENDCASE.
ENDMODULE. "pai INPUT
FORM create_and_init_alv CHANGING pt_outtab LIKE gt_outtab[]
pt_fieldcat TYPE lvc_t_fcat.
CHECK go_cont IS NOT BOUND.
CREATE OBJECT go_cont
EXPORTING
container_name = 'CUSTOM'.
CREATE OBJECT go_grid
EXPORTING
i_parent = go_cont.
PERFORM build_display_table.
PERFORM build_fieldcat CHANGING pt_fieldcat.
go_grid->set_table_for_first_display( CHANGING it_fieldcatalog = pt_fieldcat
it_outtab = pt_outtab ).
go_grid->set_ready_for_input( 1 ).
go_grid->register_edit_event( EXPORTING i_event_id = cl_gui_alv_grid=>mc_evt_modified ). " This does the trick
ENDFORM. "CREATE_AND_INIT_ALV
FORM build_display_table.
FREE gt_outtab.
DO 10 TIMES.
gt_outtab-creation_partner = sy-index.
gt_outtab-date_field = sy-datum.
APPEND gt_outtab.
ENDDO.
ENDFORM. "build_display_table
FORM build_fieldcat CHANGING pt_fieldcat TYPE lvc_t_fcat.
DATA ls_fcat TYPE lvc_s_fcat.
CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
EXPORTING
i_structure_name = 'BUS_LOCA_DEMO'
CHANGING
ct_fieldcat = pt_fieldcat.
LOOP AT pt_fieldcat INTO ls_fcat.
CASE ls_fcat-fieldname.
WHEN 'CHECKBOX'.
ls_fcat-checkbox = 'X'.
ls_fcat-edit = abap_true.
MODIFY pt_fieldcat FROM ls_fcat.
WHEN 'ENTER_FIELD' OR 'DBLCLICK_FIELD'.
ls_fcat-no_out = abap_true.
MODIFY pt_fieldcat FROM ls_fcat.
ENDCASE.
ENDLOOP.
ENDFORM. "build_fieldcat
Cheers,
Jose.
Maybe you are looking for
-
Error in distribution of model view
I created a modelview for distribution of CLFMAS types IDOCS from DEV to PRD. Created ports,RFC destination etc. I was able to generate partner profile in the sending system.When I try to distribute the model view in BD64, I get this error . Initiall
-
In http://download.oracle.com/docs/cd/E14571_01/bi.1111/e10540/datasource.htm#CHDBCAIJ it states you can use XML as your data source and mentions... URLs can include repository or session variables, providing support for HTTP data sources that accept
-
Want to transfer my Palm Tungsten E data to my BB Tour via the BB Desktop Manager Wizard. It gets up to calendar record 1019/1130 then crashes my PC. Tried getting the latest version of Palm Tungsten E Desktop software, but same problem. Please help
-
RPE-01038: Failed to evaluate expression null.
Hi, gurus! :) Upon executing a process flow, I got the following error message: RPE-01003: An infrastructure condition prevented the request from completing. RPE-01038: Failed to evaluate expression null. Please modify the expression, redeploy and r
-
Is garbage collector dameon thread or non dameon thread
hi, i know daemon thread wil do background process. the garbage collector is daemon thread or non daemon thread.