Target Table Column Changes .....?
Dear All,
If the target table column gets changed, how can we implement in OWB Mappings? For instance today I have a column name as CTYNAM in the CITY_DIM, a couple of days after in the database it is renamed as CTY_NAME. How can I do the changes in OWB. Assume that this column is mapped to n number of transformations when extracted from source tables.
Thanks in Advance
Regards
Kishan
Good morning Kishan,
As an addition, if the datatype of columns has changed, the reconcile inbound might correct it for the reconciled table operator, but not for any other operator in your mappings.
Check all operators that use columns of which the datatype has changed, unfortunately that's a manual job (unless you're handy with OMBPlus, then you could use scripting to alter properties for all occurrences).
Good luck, Patrick
Similar Messages
-
Suggestion required in target table structure change
Hi all good morning,
I have one requirement. I have a target table T with some coulmns. Now I need to add one additional column to T and one procedure is there to populate the data for new column. This target table T is used by 50 mappings.my questions is if we change the structure of the table do we need to import(I think we must import). If we import what could be the impact of this re-import. do we need to rebound and validate alla the mappings and then deploy?
the other possibility what I can do is I will create a replica of T as T1 with one additional column. I will create a new mapping which dumps data from T to T1and I will replace my T with T1 in my reporting environment.
pls suggest which is good one. it is urgent.
thanks in advance.
VikiHello, if you don't need the new column in the 50 mappings, you can temporarily leave them alone (you say it's urgent), and just feed the new col..
When you have more time, you should reconcile the mappings with table T and re-deploy them. OMBPlus scripting is ideal for this task.
Hope this helps, Antonio -
How to execute query to store the result in the target table column ?
Hi
Source: Oracle
Target: Oracle
ODI: 11g
I have an interface which loads the data from source table to target. Some of the columns in the target tables are automatically mapped with source table. Some of the column remain un-mapped. Those who remain un-mapped, I want to load the values in that column by executing an query. So can anybody tell me where I should mention that query whose result would become the value of the specific column.
-Thanks,
ShrinivasActually I select the column from the target table then in the Property Inspector-->Mapping properties-->Implementation
tab I have written the query which retrieve the value for that column. Is the right place to write the query? How can do this ?
-Shrinivas -
Need to create a audit table column change wise
Is it possible to know which column value has been change? when ? by which operation(insert,update,delete) ?
have any view or trigger?
MY sample audit table like
CREATE TABLE CHANGE_TRACK
SERIAL NUMBER NULL,
TABLE_NAME VARCHAR2(100 BYTE) NULL,
COLUMN_NAME VARCHAR2(100 BYTE) NULL,
COLUMN_VALUE VARCHAR2(1024 BYTE) NULL,
CHANGE_TIME DATE NULL,
OPERATION_TYPE VARCHAR2(20 BYTE) NULL
Thanks
HalimI have found my solution here
http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:59412348055
Thanks
Halim -
How do I create a target table with the same PK as the source table?
I am trying to create a target table in a mapping that will end up with the same primary key as the source table.
It is a simple map that simply uses a subset of the columns of the source table in the target table. I was wanting to create and bind a new table by dragging the columns I want from the source to the initially blank target table operator, change the column names and create a primary key to match the source table.
I can't seem to be able to create a constraint on the table in the mapping. I can create the constraint after the table is created and boound to the database object but the PK doesn't carry back into the mapping.
I need it in the mapping so I can use the UPDATE/INSERT operation and use the 'All Constraints' implementation. The mapping won't let me validate the object without the PK on it in the map.
Believe it or not folks, I am getting better at this.
Thanks very much for the guidance.
GaryHi Gary
You are close, you are really close... :-))
You need to do exactly as you propose plus one extra step. Build the map as you describe, binding the new table to the target. Then you edit the table definition to add the primary key and any other constraints you need. After this is the step that you are missing.
You need to do the following:
1. Go back and re-edit the map
2. Right click on the table
3. From the pop up menu, select Reconcile Inbound
4. Set any operators that you need for the UPDATE/INSERT
5. Save the map
6. Commit your changes
The first three steps above make the map read in the indexes and constraints that you set on the table. Finally, you need to deploy the table and then deploy the map.
Hope this helps
Regards
Michael -
Lookup Table and Target Table are the same
Hi All,
I have a requirement in which I have to lookup the target table and based on the records in it, I need to load a new record into the target table.
Being very specific,
Suppose I have a key column which when changes I want to generate a new id and then insert this new value.
The target table record structure looks like this
list_id list_key list_name
1 'A' 'NAME1'
1 'A' 'NAME2'
1 'A' 'NAME3'
2 'B' 'NAME4'
2 'B' 'NAME5'
As shown the target table list_id changes only when the list key changes. I need to generate the list_id value from within OWB mapping.
Can anyone throw some light as to how this can be done in OWB???
regards
-APHello, AP
You underestimate the power of single mapping :) If you could tolerate using additional stage table (with is definitly recomended in case your table from example will account a lot of rows).
You underestimate the power of single mapping :) It you could tolerate using additional stage table (witch is definitely recommended in case your table from example will account a lot of rows), you could accomplish all you need within one mapping and without using PLSQL function. This is true as far as you could have several targets within one mapping.
Source ----------------------------------------------------- >| Join2 | ---- > Target 2
|------------------------ >|Join 1| --> Lookup table -->|
Target Dedup >|
Here Target your target table. Join 1 operator covers operations needed to get existing key mapping (from dedup) and find new mappings. Results are stored within Lookup Table target (operation type TRUNCATE/INSERT).
Join 2 is used to perform final lookup and load it into the Target 2 the same as Target
The approach with lookup table is fast and reliable and could run on Set base mode. Also you could revisit lookup table to find what key mapping are loaded during last load operation.
Serhit -
ExtendScript example for Frame - changing tags by table column
In the excellent book Unstructured Framemaker 11, there is Chapter 25 on using Extendscript, the only place I have seen
a cogent, coherent walkthrough of the history behind ExtendScript for Frame (evolving form the FDK) and an example showing good
design principles. The example shows how, starting from the small to the large tasks, select a cell, filter it for a criteria, and highlight the
cell, make these functions, then wrap these in functions that select all the tables of a specific name, then go through a document, etc.
I would like to learn more about Extendscript, I'm going through the Scripting Guide, but the key is the tweak for finding a specific column,
changing the tag for the heading cell of the column to a specified format, then changing the remaining "normal" cells of the column to a specified format.
That is the trick, since the heading cell needs have the option to be a different format, since the tag_name would help identify the rest of cells in the
column.
I'll come up with the main parts of the program, but it's the getting the specified column and specifying the heading cell and then the remaining
cells is the tricky part.OK, starting at the lowest level is getting the column selected, since we need to select the correct column
before selecting the first cell in the column to rename (a separate funciton?) and then the remaining cells
in the column (another function)? Once these two functions are done, the rest would be like the example in the
the Frame book, since then you would have a function select only the tables that have a certain name and then
all the files in the book.
#target framemaker
// !! first, click on table
var doc=app.ActiveDoc;
//Get the table containing the insertion point
var tbl=doc.SelectedTbl;
//Get the first cell in the first row
var cell=tbl.FirstRowInTbl.FirstCellInRow;
var colNum=3;
for (var i=1; i<colNum; i+=1){
cell=cell.NextCellInRow;
while (cell.ObjectValid()){
var pgf=cell.FirstPgf;
alert (pgf.Name);
alert(cell);
cell=cell.CellBelowInCol;// Move down to next cell -
How to sort columns in the target table
I have a simple mapping which I am trying to design. There's only one table on the source and one in the target . There are no filter conditions, only thing is I want the target table to be sorted.
Literally, say
Src is source table has 3 columns x,y,z
Trg is dest table and has 3 columns a,b,c
x--->a
y---->b
z---->c
The SQL should be
select x,y,z from src order by x,y.
I could do the mapping but the order by ..I could not do it .
IKM used: IKM BIAPPS Oracle Incremental UpdateWhy can't you use simple UPDATE command in EXECUTE SQL Task as below,
DROP TABLE SSN
DROP TABLE STAGING
DROP TABLE STUDENT
CREATE TABLE SSN(pn_id VARCHAR(100),ssn BIGINT)
INSERT INTO SSN VALUES('000616850',288258466)
INSERT INTO SSN VALUES('002160790',176268917)
CREATE TABLE Staging (ssn BIGINT, id INT, pn_id BIGINT, name VARCHAR(100), subject VARCHAR(100),grade VARCHAR(10), [academic year] INT, comments VARCHAR(100))
INSERT INTO Staging VALUES(288258466, 1001, '770616858','Sally Johnson', 'English','A', 2005,'great student')
INSERT INTO Staging VALUES(176268917, 1002, '192160792','Will Smith', 'Math','C', 2014,'no comments')
INSERT INTO Staging VALUES(444718562, 1003, '260518681','Mike Lira', 'Math','B', 2013,'no comments')
CREATE TABLE Student(id INT,pn_id BIGINT,subject VARCHAR(100), [academic year] INT, grade VARCHAR(10), comments VARCHAR(100) )
INSERT INTO Student VALUES(1001, '000616850', NULL,NULL,NULL ,NULL)
INSERT INTO Student VALUES(1002, '002160790', NULL,NULL,NULL ,NULL)
UPDATE Student SET Subject = C.Subject, [academic year]=C.[academic year], grade=C.grade,comments=C.comments
FROM SSN A INNER JOIN Student B
ON A.pn_id=B.pn_id INNER JOIN Staging C
ON A.ssn = C.ssn
SELECT * FROM Student
Regards, RSingh -
How can I insert an aggregated column name as a string in the target table?
I have a large source table, with almost 70 million records. I need to pull the sum of four of the columns into another target table, but instead of having the same four target columns I just want to have two.
So, let's take SUM(col1), SUM(col2), SUM(col3), and SUM(col4) from the source DB & insert them into the target like this:
SOURCE_COLUMN
| AMOUNT
1 col1
| SUM_AMOUNT
2 col2
| SUM_AMOUNT
3 col3
| SUM_AMOUNT
4 col4
| SUM_AMOUNT
I know how to do this in four separate Data Flows using the source, an Aggregation Transformation, a Derived Column (to hard code the SOURCE_COLUMN label), and destination... but with this many records, it takes over 3 hours to run because it has to loop
through these records four separate times instead of once. Isn't there a way to do this with one Data Flow? I'm thinking maybe Conditional Split?
Any help is appreciated, thanks!Hi ,
This could be achieved using UNPIVOT transformation. The below sample uses the below source query
SELECT 1 AS COL1,2 AS COL2,3 AS COL3,4 AS COL4
setup the UNPIVOT transformation as below
The output of unpivot transformation will be as below
Hope this helps.
Best Regards Sorna -
To change the width of a Table Column
Hai Developers..................
I have problem with the Table Column Width.
When am on search state.
The search results are showing in a table.
At that time i want to change the width of the each column with respect to the column content.
Like the jsp table.......
Pls replay with example......
Thanks.And that is why Swing related questions should be posted in the Swing forum so we don't spend time guessing what you are talking about.
Darn, the [Table Column Adjuster|http://www.camick.com/java/blog.html?name=table-column-adjuster] didn't show up in that Google search. -
Hope you all are doing good.
I have a business issue to be implemented in ODI 11G. Here it is. I am trying to load a target table from two sources having same coulmn names. But one source is in file format and other is in Oracle Database.
This is what i think i will create two mappings in the same interface using Union between the sources. But i am not sure how the interface would connect to different logical architecture to connect to two different sources.
Thanks,
SMYou are on the right track, this can all be done in a single interface. Do the following
1) Pull your file data model into the source designer and and your target table model to the target pane.
2) Map all the relevant columns
3) In the source designer create a new dataset and choose the UNION join type (this will create a separate tab in the source designer pane)
4) Select the new dataset tab in the source designer pane and pull your source oracle table data model into the source designer. Map all the relevant columns to the target
5) Make sure that your staging location is defined on a relational technology i.e. in this case the target would be an ideal candidate as that is where ODI will stage the data from both file and oracle source and perform the UNION before loading to the target
If you want to look at some pretty screenshots showing the steps above take a look at http://odiexperts.com/11g-oracle-data-integrator-part-611g-union-minus-intersect/ -
Dynamically changing the Advance table column Header.
Dear All,
I want to change dynamically the Advance table column header.
I tried the below code and its working process request,not in process form request when button pressing.
Please suggest me.
OAAdvancedTableBean tableBean =
(OAAdvancedTableBean)webBean.findIndexedChildRecursive("advanceTableRN");
if (tableBean != null) {
System.out.println("tableBean");
OAColumnBean columnBean =
(OAColumnBean)tableBean.findIndexedChildRecursive("column3");
if (columnBean != null) {
System.out.println("columnBean");
OASortableHeaderBean colHeaderBean =
(OASortableHeaderBean)columnBean.getColumnHeader();
if (colHeaderBean != null) {
System.out.println("colHeaderBean");
colHeaderBean.setText("Segment3");You can try 2 options:
1. Try to call pageContext.forwardImmediatlytoCurrentPage();
2. Try yo set a vo attribute to the columnbean text property and set the vo attribute programmatically. (I have not tried this but I think it should work)
Cheers
AJ -
Change Data Table column header color
How do I change the background color displayed in data table column headers?
Thanks for your response. Problem is that I'm creating a portlet and the stylesheet.css file does not appear to exist, so Winston's blog does not help.
-
Table control change column position or number
Hi Guys,
I need to move a column from position 10 to position 5 in the standard program. I did change the table control position in screen painter by doing cut and past of columns at required positions and it does change there but it does not show column positions in the actual screen. Is there config for table control in the standard program?
In the attributes the position number is disable. Is there some other way that I can move the columns.
Please advise.
Thanks,
FSThanks Manesh,
I am using travel overview transaction PR05. Can you recommend any config area where the table column positions are maintained. Thanks.
Regards,
FS -
HOW populate target table if one of the column in target has sequence on it
Hi,
I am trying to insert rows in oracle target, on oracle table column is LIST_ID(PK) has sequence on it.
I am not mapping the LIST_ID(target) from source but it seeing an error invalid identifier.
How to solve thisat 14 step giving that invalid identifier as LIST_ID which is PK column in target column
how to slove to this
Maybe you are looking for
-
Multiple possibilities for the same response
Is it possible to make an IF statement accept multiple responses in a console application... Example: In this piece of code, I have an if statement that only accepts OK as a response, and I don't want to make the same piece millions of times just to
-
iPad Mini 2 - iOS 8.1.3 When I've opened iTunes U for the first time it started to synchronise some courses. Some of them are old courses that probably I subscribed from my Mac in the past and that are no more present in my Mac. I've tried to sync iT
-
How do I copy/paste text from a Word document into the clipboard of an iTouch(3.13)?
-
Importing New CD's in iTunes 10 is Very Slow
Apple needs to improve the speed in which iTunes imports CDs. Songs are imported at the same speed as my old Power Mac G4. The new computers have faster processors in them, why don't they take advantage of the processors installed in them? At times m
-
How do I retrieve both user name and password?