Save data into multiple collections in Data Control
Hi,
In another post (https://forums.oracle.com/message/11094155) I asked how to merge data from multiple collections and show it into a table. FrankNimphius gave me the correct answer. I have now my table with data merged from some collections from my data control. But now I have the opposite request: the table must allow insert new rows and store the data in the model that is represented by all those collections.
I saw this blog https://blogs.oracle.com/jdevotnharvest/entry/how_to_add_new_adf, and is great, but works with one collectionModel, but the idea is exactly the same, just with multiple collectionModels inside a parent one.
The table is not bounded to one collectionModel, it is bounded to a List<MyObject> in my managed bean, so the built-in Create/Delete data control operations of the parent collection don't work.
Another thing is: for me the model is a black box, I don't know anything about the model, I just know the datacontrol.
Thanks!
AAPDL
Hi Frank,
I tried calling the create built-in operation for each collection.
I insert the row in the parent RowSetIterator and set it as the currentRow, then call the create operation. Later insert rows in each children and call the create operation of each one. Finally I call the commit operation.
I tried and it worked, but you said that there would be a tricky part. I don't know if in the code bellow I did that, please let me know.
In the bellow code the PersonasBinding2 is bind to the iterator of the parent collection, and the PersonaNaturalBinding2 and IdentificacionBinding2 are bind to the children collections.
DCBindingContainer bindingContainer = (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();
JUCtrlHierBinding personasBinding = (JUCtrlHierBinding)bindingContainer.findCtrlBinding("PersonasBinding2");
RowSetIterator personasRowSet = personasBinding.getIteratorBinding().getRowSetIterator();
Row nuevaFilaPersona = personasRowSet.createRow();
nuevaFilaPersona.setAttribute("Id",15);
nuevaFilaPersona.setAttribute("TipoPersona",0);
OperationBinding createPersonaOperation = bindingContainer.getOperationBinding("CreatePersona");
createPersonaOperation.execute();
personasRowSet.setCurrentRow(nuevaFilaPersona);
JUCtrlHierBinding personaNaturalBinding = (JUCtrlHierBinding)bindingContainer.findCtrlBinding("PersonaNaturalBinding2");
RowSetIterator personaNaturalRowSet = personaNaturalBinding.getIteratorBinding().getRowSetIterator();
Row nuevaFilaPersonaNatural = personaNaturalRowSet.createRow();
nuevaFilaPersonaNatural.setAttribute("IdPersona",15);
nuevaFilaPersonaNatural.setAttribute("PrimerApellido","PA");
nuevaFilaPersonaNatural.setAttribute("PrimerNombre","PN");
nuevaFilaPersonaNatural.setAttribute("SegundoApellido","SA");
nuevaFilaPersonaNatural.setAttribute("SegundoNombre","SN");
OperationBinding createPersonaNaturalOperation = bindingContainer.getOperationBinding("CreatePersonaNatural");
createPersonaNaturalOperation.execute();
JUCtrlHierBinding identificacionBinding = (JUCtrlHierBinding)bindingContainer.findCtrlBinding("IdentificacionBinding2");
RowSetIterator identificacionRowSet = identificacionBinding.getIteratorBinding().getRowSetIterator();
Row nuevaFilaIdentificacion = identificacionRowSet.createRow();
nuevaFilaIdentificacion.setAttribute("IdPersona",15);
nuevaFilaIdentificacion.setAttribute("NumeroIdentificacion","NI");
nuevaFilaIdentificacion.setAttribute("TipoIdentificacion","TI");
OperationBinding createIdentificacionOperation = bindingContainer.getOperationBinding("CreateIdentificacion");
createIdentificacionOperation.execute();
OperationBinding commitOperation = bindingContainer.getOperationBinding("Commit");
commitOperation.execute()
By other side, in the delete operation I guess that I must delete the childrens before the parent. I know that ADF supports the delete cascade operation only if in the database is configured in that way, but as I said, I don't know how is the model.
Thanks!
AAPDL
Similar Messages
-
I have a process that creates a collection with data from multiple tables. The query returns multiple rows in 'Sql commands' tab. The same query is used to create the collection in 'Before Header' and when i create a region with Region source as
Select * From apex_collections Where collection_name = 'load_dashboard';
At the time of rendering the page shows me 'no data found'.
what could be the problem? Are there any prerequisites before creating the collection?
Thanks in Advance,
SriramHi Denes,
Below is my code for creating and saving data into the collection.
if apex_collection.collection_exists(p_collection_name =>'load_dashboard') then
apex_collection.delete_collection(
p_collection_name =>'load_dashboard');
end if;
apex_collection.create_collection_from_query(
p_collection_name => 'load_dashboard',
p_query => 'select a.rowid
,b.first_name
,b.last_name
,c.job_title
,d.parent
,d.child_level_1
,d.child_level_2
,a.resource_allocation
,a.person_id
,a.month_id
,a.oracom_project_id ,wwv_flow_item.md5(a.rowid,b.first_name,b.last_name,c.job_title,d.parent,d.child_level_1,d.child_level_2,a.resource_allocation,a.person_id,a.month_id,a.oracom_project_id)
from oracom_resource_management a, oracom_people b,oracom_job c ,oracom_project d where a.supervisor_id=886302415 and a.month_id=201312 and a.oracom_job_id=c.job_id and a.person_id=b.person_id and a.oracom_project_id=d.oracom_project_id',
p_generate_md5 => 'YES'
Sriram. -
Splitting comma seperated column data into multiple rows
Hi Gurus,
Please help me for solving below scenario. I have multiple value in single column with comma seperated values and my requirement is load that data into multiple rows.
Below is the example:
Source Data:
Product Size Stock
ABC X,XL,XXL,M,L,S 1,2,3,4,5,6
Target Data:
Product Size Stock
ABC X 1
ABC XL 2
ABC XXL 3
ABC M 4
ABC L 5
ABC S 6
Which transformation we need to use for getting this output?
Thanks in advance !Hello,
Do you need to do this tranformation through OWB mapping only? And can you please tell what type of source you are using? Is it a flat file or a table?
Thanks -
Insert data into multiple entities at once using a view object
Hi,
I'm trying to insert data into multiple entities at once using a view object, but unfortunately it doesn't seem to work. The two entities have a 1:1 association. I created a view object which contains both entities and I made sure they aren't read-only. But like I said it doesn't work, I can't insert data in both entities at once... :(
Is this possible? And how (if it is)?Hi,
I'm trying to insert data into multiple entities at once using a view object, but unfortunately it doesn't seem to work. The two entities have a 1:1 association. I created a view object which contains both entities and I made sure they aren't read-only. But like I said it doesn't work, I can't insert data in both entities at once... :(
Is this possible? And how (if it is)? Peter:
This is definitely supported and tested. Please send us the exception stack trace. You must running into other problems. A few things to note:
A) You have to mark the entities as both updateable (not read-only) and not reference-only.
B) If you're not seeing an exception stack, turn on diagnostic. Here is how:
To turn on diagnostic, go to the IDE,
1. Select the project.
2. Do right mouse click and select "Project Settings..."
3. On the Settings dialog, select Configurations/Runner.
4. In the righthand side pane, you should see a textbox for "Java
Options". Please add the following JVM switch:
-Djbo.debugoutput=console
Then, rerun. The run command should include
-Djbo.debugoutput=console as in
"D:\JDev9i\jdk\bin\javaw.exe" -Djbo.debugoutput=console -classpath ...
You should now see a lot more output on the IDE's message window. Here you should see the exception stack trace.
If you invoking your app directly from command prompt, just add "-Djbo.debugoutput=console" after your "java.exe".
Thanks.
Sung -
Inserting Data into a Collection
Hi
Can anybody suggest how to Insert data into a Collection from another Collection Using Bulk Binds in PLSQL?
My scenario :-
CREATE OR REPLACE PACKAGE te_ar IS
TYPE srm_rec IS RECORD (col1 <table>.<col1>%TYPE, col2 <table>.<col2>%TYPE);
TYPE srm_rec_list IS TABLE OF srm_rec INDEX BY BINARY_INTEGER;
FUNCTION z_srm_rec RETURN srm_rec_list PIPELINED;
END te_ar;
CREATE OR REPLACE PACKAGE BODY te_ar IS
FUNCTION z_srm_rec RETURN srm_rec_list PIPELINED IS
v_srm_rec srm_rec;
TYPE col1_t IS TABLE OF <table>.<col1>%TYPE INDEX BY BINARY_INTEGER;
TYPE col2_t IS TABLE OF <table>.<col2>%TYPE INDEX BY BINARY_INTEGER;
col1_tt col1_t;
col2_tt col2_t;
CURSOR c1
IS
SELECT col1, col2 FROM table;
BEGIN
OPEN c1;
FETCH c1 BULK COLLECT INTO col1_tt,col2_tt;
FORALL i IN 1 .. c1%ROWCOUNT
v_srm_rec.col1(i) := col1_tt(i);
v_srm_rec.col2(i) := col2_tt(i);
PIPE_ROW(v_srm_rec);
CLOSE c1;
RETURN;
END;
END te_ar;
I have created a Record Type in which I am trying to insert rows using bulk bind and return it using a pipelined function.
This approach is throwing me errors in which I am unable to use both Pipelining and Bulk Binds together so that I can make the Performance of the entire bit better.
Please suggest the way forward.
Any other relevant info I am ready to supply.
Thanks
ArnabFORALL is used for bulk DML statements and will not work for your collections. http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/forall_statement.htm#LNPLS01321. I think you may want to use a regular FOR loop.
-
Insert data into multiple tables
Hi all,
I've a requirement where i need to insert data into multiple tables using PL/SQL procedure
Procedure should have two parameters
1. Table Name (parameter1)
2. Data (parameter2)
Based on these two parameters i need to insert data into table (parameter1) using data (parameter2)
ex:
Procedure insert_data (p_table IN VARCHAR2
,p_data IN -- what should be the datatype?
IS
l_statement VARCHAR2(2000);
BEGIN
-- insert data into tables
INSERT INTO p_table
values (....);
END insert_data;Thanks in advance!!BEDE wrote:
Amen to that!
So, I believe a better approach would be the following...
Suppose you have N datafiles with the same structure, and you wish to insert into the database the data from all those files.
For that, you should have a single table, named, say incoming_file_data, which should be structured more or less like below:
create table incoming_file_data (
filename varchar2(250) not null -- name of the file inserted from
,file_time timestamp -- timestamp when the data was inserted
,... -- the columns of meaningful data contained in the lines of those files
);And you will insert the data from all those files in this table, having normally one transaction for each file processed, for otherwise, when shit happens, some file may only get to be partially inserted into the table...
Maybe one good approach would be to create dynamically an external table for the file to be loaded, and then execute dynamically insert select into the table I said, so that you will have only one insert select for one file instead of using utl_file... RTM on that.If the file structures are the same, and it's just the filename that's changing, I would have a single external table definition, and use the alter table ... location ... statement (through execute immediate) to change the filename(s) as appropriate before querying the data. Of course that's not scalable if there are multiple users intenting to use this, but generally when we talk about importing multiple files, it's a one-user/one-off/once-a-day type of scenario, so multi-user isn't a consideration. -
How to spool data into multiple Excel sheet if result is more then 65k rows
Hi all,
Wann spool data into multiple excel sheet bocz my resultant no of rows are more then 65k.
Thanks to all in advance.....many choices
1) migrate to a newer version of Excel
2) split the files after spooling
for instance with split
split -l65000 file.txtor with perl, java, vb or what-so-ever
3) do more than one report by using rownum
spool f1
select empno,ename from (select rownum r,empno,ename from emp order by empno) where r<6 ;
spool off
spool f2
select empno,ename from (select * from (select rownum r,empno,ename from emp order by empno) where r<11) where r>5 ;
spool off
spool f3
select empno,ename from (select rownum r,empno,ename from emp order by empno) where r>10 ;
spool off -
How to insert one table data into multiple tables by using procedure?
How to insert one table data into multiple tables by using procedure?
Below is the simple procedure. Try the below
CREATE OR REPLACE PROCEDURE test_proc
AS
BEGIN
INSERT ALL
INTO emp_test1
INTO emp_test2
SELECT * FROM emp;
END;
If you want more examples you can refer below link
multi-table inserts in oracle 9i
Message was edited by: 000000 -
Export XML data into multiple worksheet of an Excel file..using FO processr
Hi,
I need to export XML data into Excel output, the data should flow into multiple worksheet of the Excel file.
Let me know if this can be done using XML publisher. If yes, please provide me the steps to do the same.
Could not able to achieve this through by the below process:
(1) Created a RTF (which has single excel table structure).
(2) Generated the XSL file using XSL-FO Style Sheet.
(3) Passed the XSL file and XML
which exported the data into an Excel (single worksheet) format.
Please let me know, how this can be exported into multiple worksheets.
Thanks & Regards,
Dhamodaran VJ.Hi Dhamodaran ,
pass me the template you created and XML. "Created a RTF (which has single excel table structure)."
Let me have a look at it,
For ID, look at profile. -
Inserting data into multiple tables in jdbc
I am doing on file to jdbc. Now I got a requirement to insert data into multiple tables on the receiver side. How can I do this ?
Hi,
you are going to insert data into 4 tables in a sequence one after another , I see three options.
1) Stored procedure and 2) creating 4 statement data structure (one for each table)
The third option is writing a SQL with join for the 4 tables and use action command = SQL_DML. Example as follows....
Write SQL code and place it in access tag. Pass values for the columns using key tag...
<stmt>
<Customers action="SQL_DML">
<access> UPDATE Customers SET CompanyName=u2019$NAME$u2019, Address=u2019$ADDRESS$' WHERE CustomerID='$KEYFIELD$u2019
</access>
<key>
<NAME>name</NAME>
<ADDRESS>add </ADDRESS>
<KEYFIELD>1</KEYFIELD>
</key>
</Customers>
</stmt>
Refer this http://help.sap.com/saphelp_nwpi71/helpdata/en/44/7b7855fde93673e10000000a114a6b/content.htm
Hope this helps .... -
Hi All,
i am concerned with entering data into a collection (NameValuePair) of two elements using as assign activity. the data is string information and below is part of the xsd:-
<element name="Data" maxOccurs="1" minOccurs="0">
<complexType>
<sequence>
<element name="NameValuePair" maxOccurs="unbounded"
minOccurs="0">
<complexType>
<sequence minOccurs="1">
<element name="name" type="string"/>
<element name="value" type="string"/>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
my assign activities look like:-
<from>'Parent Concurrent Req ID'</from>
<to>$Invoke_InputVariable.payload/ns20:Data/ns20:NameValuePair[1]/ns20:name</to>
</copy>
<copy>
<from>$Receive_ConcReqID_InputVariable.Response/ns10:ConcRequestID</from>
<to>$Invoke_InputVariable.payload/ns20:Data/ns20:NameValuePair[1]/ns20:value</to>
</copy>
<copy>
<from>'Errored Child Req ID'</from>
(line 626) <to>$Invoke_InputVariable.payload/ns20:Data/ns20:NameValuePair[2]/ns20:name</to>
</copy>
<copy>
<from>$Invoke_ConcRequestsQuery_DB_QueryChildJob_DetailsSelect_OutputVariable.FndConcurrentRequestsCollection/ns9:FndConcurrentRequests[$ForEachCounter]/ns9:requestId</from>
<to>$Invoke_InputVariable.payload/ns20:Data/ns20:NameValuePair[2]/ns20:value</to>
but however i am getting an error at runtime that 'Exception is thrown because the to-spec at line 626 is evaluated to be empty'
Could someone suggest how i should get this done.. if there is a more correct approach, pls suggest.
regards
RakeshHi Rakesh,
If you edit your assign and right click on the expression bellow you should see "ignoringMissingFromData" and "insertMissingToData" options... I believe the latter will solve your problem...
Cheers,
Vlad -
How to select data into multiple bind variables
Hi,
I need to load data into multiple bind variable how to do that
As of now i am using this
select a , b into :a, :b from dual
But i want even a to be loaded into both :a and :c also b to be loaded into :b and :d Please suggest
Thanks
Sudhir.Thanks much it worked
Thanks
Sudhir -
Downloading data into multiple work sheets in excel
Hi All,
Could you please tell me the way of downloading data into multiple work sheets .
Now, we are downloading data into multiple excel files and after that copying all the excel file data in to different work sheets of the single excel manually.
So , here I want directly download the data into different work sheets of single excel file.
Regards,
Siddivinesh JoguHi,
Down load into three worksheets in one XL
REPORT ZKC_TEST1.
INCLUDE ole2incl.
DATA: w_cell1 TYPE ole2_object,
w_cell2 TYPE ole2_object.
*--- Ole data Declarations
DATA: h_excel TYPE ole2_object, " Excel object
h_mapl TYPE ole2_object, " list of workbooks
h_map TYPE ole2_object, " workbook
h_zl TYPE ole2_object, " cell
h_f TYPE ole2_object, " font
gs_interior TYPE ole2_object, " Pattern
worksheet TYPE ole2_object,
h_cell TYPE ole2_object,
h_cell1 TYPE ole2_object,
range TYPE ole2_object,
h_sheet2 TYPE ole2_object,
h_sheet3 TYPE ole2_object,
gs_font TYPE ole2_object,
e_color TYPE ole2_object,
gs_italic TYPE ole2_object,
flg_stop(1) TYPE c.
** Internal table Declaration
DATA: BEGIN OF t_excel OCCURS 0,
MATNR type mara-matnr, "(18) type c,
ERSDA type mara-ersda, " (8) type c,
ERNAM type mara-ernam, "(12) type c,
LAEDA type mara-laeda, "(8) type c,
AENAM type mara-aenam, "(12) type c,
VPSTA type mara-vpsta, "(15) type c,
PSTAT type mara-pstat, "(15) type c,
END OF t_excel.
DATA: t_excel_bckord LIKE t_excel OCCURS 0 WITH HEADER LINE,
t_excel_bcklog LIKE t_excel OCCURS 0 WITH HEADER LINE,
t_excel_blkord LIKE t_excel OCCURS 0 WITH HEADER LINE.
data: wa_excel_bckord like line of t_excel.
TYPES: data1(1500) TYPE c,
ty TYPE TABLE OF data1.
DATA: it TYPE ty WITH HEADER LINE,
it_2 TYPE ty WITH HEADER LINE,
it_3 TYPE ty WITH HEADER LINE,
rec TYPE sy-tfill,
deli(1) TYPE c,
l_amt(18) TYPE c.
DATA: BEGIN OF hex,
tab TYPE x,
END OF hex.
FIELD-SYMBOLS: <fs> .
CONSTANTS cns_09(2) TYPE n VALUE 09.
ASSIGN deli TO <fs> TYPE 'X'.
hex-tab = cns_09.
<fs> = hex-tab.
DATA gv_sheet_name(20) TYPE c .
*---selecting into tables
select MATNR
ERSDA
ERNAM
LAEDA
AENAM
VPSTA
PSTAT
from mara into table t_excel_bckord
where pstat = 'KVELBCD'.
wa_excel_bckord-matnr = 'MATNR'.
wa_excel_bckord-ersda = 'ERSDA'.
wa_excel_bckord-ernam = 'ERNAM'.
wa_excel_bckord-laeda = 'LAEDA'.
wa_excel_bckord-aenam = 'AENAM'.
wa_excel_bckord-vpsta = 'VPSTA'.
wa_excel_bckord-pstat = 'PSTAT'.
INSERT wa_excel_bckord
INTO t_excel_bckord INDEX 1 .
select MATNR
ERSDA
ERNAM
LAEDA
AENAM
VPSTA
PSTAT
from mara into table t_excel_bcklog
where pstat = 'KVELBCDP'.
INSERT wa_excel_bckord
INTO t_excel_bcklog INDEX 1 .
select MATNR
ERSDA
ERNAM
LAEDA
AENAM
VPSTA
PSTAT
from mara into table t_excel_blkord
where pstat = 'KEBC'.
INSERT wa_excel_bckord
INTO t_excel_blkord INDEX 1 .
LOOP AT t_excel_bckord.
CONCATENATE
t_excel_bckord-MATNR
t_excel_bckord-ERSDA
t_excel_bckord-ERNAM
t_excel_bckord-laeda
t_excel_bckord-aenam
t_excel_bckord-vpsta
t_excel_bckord-pstat
INTO it
SEPARATED BY deli.
APPEND it.
CLEAR it.
ENDLOOP.
LOOP AT t_excel_bcklog.
CONCATENATE
t_excel_bcklog-matnr
t_excel_bcklog-ersda
t_excel_bcklog-ernam
t_excel_bcklog-laeda
t_excel_bcklog-aenam
t_excel_bcklog-vpsta
t_excel_bcklog-pstat
INTO it_2
SEPARATED BY deli.
APPEND it_2.
CLEAR it_2.
ENDLOOP.
LOOP AT t_excel_blkord.
CONCATENATE
t_excel_blkord-matnr
t_excel_blkord-ersda
t_excel_blkord-ernam
t_excel_blkord-laeda
t_excel_blkord-aenam
t_excel_blkord-vpsta
t_excel_blkord-pstat
INTO it_3
SEPARATED BY deli.
APPEND it_3.
CLEAR it_3.
ENDLOOP.
*--- start Excel
IF h_excel-header = space OR h_excel-handle = -1.
CREATE OBJECT h_excel 'EXCEL.APPLICATION'.
ENDIF.
*--- get list of workbooks, initially empty
CALL METHOD OF h_excel 'Workbooks' = h_mapl.
SET PROPERTY OF h_excel 'Visible' = 1.
CALL METHOD OF h_mapl 'Add' = h_map.
gv_sheet_name = 'Back Orders'.
GET PROPERTY OF h_excel 'ACTIVESHEET' = worksheet.
SET PROPERTY OF worksheet 'Name' = gv_sheet_name .
*--Formatting the area of additional data 1 and doing the BOLD
CALL METHOD OF h_excel 'Cells' = w_cell1
EXPORTING
#1 = 1
#2 = 1.
CALL METHOD OF h_excel 'Cells' = w_cell2
EXPORTING
#1 = 1
#2 = 50.
CALL METHOD OF h_excel 'Range' = h_cell
EXPORTING
#1 = w_cell1
#2 = w_cell2.
GET PROPERTY OF h_cell 'Font' = gs_font .
SET PROPERTY OF gs_font 'Bold' = 1 .
SET PROPERTY OF gs_font 'Name' = 'Arial' .
GET PROPERTY OF h_cell 'Interior' = e_color.
SET PROPERTY OF e_color 'ColorIndex' = 35.
GET PROPERTY OF h_cell 'Font' = gs_italic .
SET PROPERTY OF gs_italic 'Italic' = 1 .
DATA l_rc TYPE i.
CALL METHOD cl_gui_frontend_services=>clipboard_export
IMPORTING
data = it[]
CHANGING
rc = l_rc
EXCEPTIONS
cntl_error = 1
error_no_gui = 2
not_supported_by_gui = 3
OTHERS = 4.
CALL METHOD OF h_excel 'Cells' = w_cell1
EXPORTING
#1 = 1
#2 = 1.
CALL METHOD OF h_excel 'Cells' = w_cell2
EXPORTING
#1 = 1
#2 = 1.
CALL METHOD OF h_excel 'Range' = range
EXPORTING
#1 = w_cell1
#2 = w_cell2.
CALL METHOD OF range 'Select'.
CALL METHOD OF worksheet 'Paste'.
gv_sheet_name = 'Backlog'.
GET PROPERTY OF h_excel 'Sheets' = h_sheet2 .
CALL METHOD OF h_sheet2 'Add' = h_map.
SET PROPERTY OF h_map 'Name' = gv_sheet_name .
GET PROPERTY OF h_excel 'ACTIVESHEET' = worksheet.
*--Formatting the area of additional data 1 and doing the BOLD
CALL METHOD OF h_excel 'Cells' = w_cell1
EXPORTING
#1 = 1
#2 = 1.
CALL METHOD OF h_excel 'Cells' = w_cell2
EXPORTING
#1 = 1
#2 = 50.
CALL METHOD OF h_excel 'Range' = h_cell
EXPORTING
#1 = w_cell1
#2 = w_cell2.
GET PROPERTY OF h_cell 'Font' = gs_font .
SET PROPERTY OF gs_font 'Bold' = 1 .
GET PROPERTY OF h_cell 'Interior' = e_color.
SET PROPERTY OF e_color 'ColorIndex' = 40.
CALL METHOD cl_gui_frontend_services=>clipboard_export
IMPORTING
data = it_2[]
CHANGING
rc = l_rc
EXCEPTIONS
cntl_error = 1
error_no_gui = 2
not_supported_by_gui = 3
OTHERS = 4.
CALL METHOD OF h_excel 'Cells' = w_cell1
EXPORTING
#1 = 1
#2 = 1.
CALL METHOD OF h_excel 'Cells' = w_cell2
EXPORTING
#1 = 1
#2 = 1.
CALL METHOD OF h_excel 'Range' = range
EXPORTING
#1 = w_cell1
#2 = w_cell2.
CALL METHOD OF range 'Select'.
CALL METHOD OF worksheet 'Paste'.
gv_sheet_name = 'Blocked Orders'.
GET PROPERTY OF h_excel 'Sheets' = h_sheet3 .
CALL METHOD OF h_sheet3 'Add' = h_map.
SET PROPERTY OF h_map 'Name' = gv_sheet_name .
GET PROPERTY OF h_excel 'ACTIVESHEET' = worksheet.
*--Formatting the area of additional data 1 and doing the BOLD
CALL METHOD OF h_excel 'Cells' = w_cell1
EXPORTING
#1 = 1
#2 = 1.
CALL METHOD OF h_excel 'Cells' = w_cell2
EXPORTING
#1 = 1
#2 = 50.
CALL METHOD OF h_excel 'Range' = h_cell
EXPORTING
#1 = w_cell1
#2 = w_cell2.
GET PROPERTY OF h_cell 'Font' = gs_font .
SET PROPERTY OF gs_font 'Bold' = 1 .
GET PROPERTY OF h_cell 'Interior' = e_color.
SET PROPERTY OF e_color 'ColorIndex' = 45.
CALL METHOD cl_gui_frontend_services=>clipboard_export
IMPORTING
data = it_3[]
CHANGING
rc = l_rc
EXCEPTIONS
cntl_error = 1
error_no_gui = 2
not_supported_by_gui = 3
OTHERS = 4.
CALL METHOD OF h_excel 'Cells' = w_cell1
EXPORTING
#1 = 1
#2 = 1.
CALL METHOD OF h_excel 'Cells' = w_cell2
EXPORTING
#1 = 1
#2 = 1.
CALL METHOD OF h_excel 'Range' = range
EXPORTING
#1 = w_cell1
#2 = w_cell2.
CALL METHOD OF range 'Select'.
CALL METHOD OF worksheet 'Paste'.
*--- disconnect from Excel
FREE OBJECT h_zl.
FREE OBJECT h_mapl.
FREE OBJECT h_map.
FREE OBJECT h_excel.
Thanks,
Krishna.. -
Exporting data into multiple tabs of Excel from OA Framework Page.
Hii,
I have a requirement like exporting data into multiple tabs of Excel from OA Framework.
Like One Quarter Data should be in one Excel Sheet, and the Second Quarter data should go into other Excel Sheet, like wise ...
I have tried searching forums, and developers guide, But couldn't find any correct answer on this. If its there on developers guide can somebody point me exactly where it is located.
If someone can help me through this or can guide me through any document in this. It would be really helpful.
Thanks
Prakash.I guess, tabs are not supported in XML publisher as well.
I would be worth checking at with BI publisher forum.
--Prasanna -
Split flat file column data into multiple columns using ssis
Hi All, I need one help in SSIS.
I have a source file with column1, I want to split the column1 data into
multiple columns when there is a semicolon(';') and there is no specific
length between each semicolon,let say..
Column1:
John;Sam;Greg;David
And at destination we have 4 columns let say D1,D2,D3,D4
I want to map
John -> D1
Sam->D2
Greg->D3
David->D4
Please I need it ASAP
Thanks in Advance,
RH
sqlImports System
Imports System.Data
Imports System.Math
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Imports Microsoft.SqlServer.Dts.Runtime.Wrapper
Imports System.IO
Public Class ScriptMain
Inherits UserComponent
Private textReader As StreamReader
Private exportedAddressFile As String
Public Overrides Sub AcquireConnections(ByVal Transaction As Object)
Dim connMgr As IDTSConnectionManager90 = _
Me.Connections.Connection
exportedAddressFile = _
CType(connMgr.AcquireConnection(Nothing), String)
End Sub
Public Overrides Sub PreExecute()
MyBase.PreExecute()
textReader = New StreamReader(exportedAddressFile)
End Sub
Public Overrides Sub CreateNewOutputRows()
Dim nextLine As String
Dim columns As String()
Dim cols As String()
Dim delimiters As Char()
delimiters = ",".ToCharArray
nextLine = textReader.ReadLine
Do While nextLine IsNot Nothing
columns = nextLine.Split(delimiters)
With Output0Buffer
cols = columns(1).Split(";".ToCharArray)
.AddRow()
.ID = Convert.ToInt32(columns(0))
If cols.GetUpperBound(0) >= 0 Then
.Col1 = cols(0)
End If
If cols.GetUpperBound(0) >= 1 Then
.Col2 = cols(1)
End If
If cols.GetUpperBound(0) >= 2 Then
.Col3 = cols(2)
End If
If cols.GetUpperBound(0) >= 3 Then
.Col4 = cols(3)
End If
End With
nextLine = textReader.ReadLine
Loop
End Sub
Public Overrides Sub PostExecute()
MyBase.PostExecute()
textReader.Close()
End Sub
End Class
Put this code in ur script component. Before that add 5 columns to the script component output and name them as ID, col1, co2..,col4. ID is of data type int. Create a flat file destination and name it as connection and point it to the flat file as the source.
Im not sure whats the delimiter in ur flat file between the 2 columns. I have use a comma change it accordingly.
This is the output I get:
ID Col1
Col2 Col3
Col4
1 john
Greg David
Sam
2 tom
tony NULL
NULL
3 harry
NULL NULL
NULL
Maybe you are looking for
-
I want to use my apple ID but i dont have credit card, what should i do?
i want to use my apple ID but i dont have credit card, what should i do? my last telephone was I phone 5, now i have 6 and i have a problem using my apple id. there are a new things like credit card, pass and so on... i just want to install apps like
-
On IOS 7, how can you tell when your battery is charging for your phone?
on IOS 7, how can you tell when your battery is charging for your phone?
-
Ssrs 2008 r2 straight line within a matrix
In an SSRS 2008 R2 new report have placed a matrix on the end of the report for information the user wants to see at the end of the report. The user wants to place a straight line between the different infomation sections in the tablix. Here are the
-
Why some contact forms doesn't work on some websites? We don't receive the submission form with the information?
-
Hi all, Whenever I try to burn a disc with iTunes (I'm backing up my whole library), I get this error: "The device failed to respond properly, unable to recover or retry." I'm using MBP and the SuperDrive is Matshushuita UJ-857D. Anyone know what's g