ODI - read CSV file and write to the Oracle table

Hello world

After 4 years, I started to work again with ODI, and I'm completely lost.

I need help, I don't know what to use for each step, interfaces, variables, procedures...

What I have to do is the following:

(1) reading a CSV file-> I have the topologies and the model defined

(2) assess whether there is a field of this CSV file in TABLE A-> who do not exist in the table is ignored (I tried with an interface joining the csv with the TABLE model a model and recording the result in a temporary data store)

Evaluate 3) I need to update TABLE C and if not I need to INSERT if another field that CSV exists in TABLE B-> if there

Could someone help me with what use?

Thanks in advance

Hi how are you?

You must:

Create an interface with the CSV template in the source and a RDBM table in the target (I'll assume you are using Oracle). Any type of filter or the transformation must be defined to be run in the stadium. (you must use a LKM for SQL file and add an IKM Sql control (it is best to trim them and insert the data when it cames to a file if you want after this process, you may have an incremental update to maintain history or something like that).)

For validation, you will use a reference constraints in the model of the oracle table: (for this you need a CKM Oracle to check constraints)

Then, you must select the table that you sponsor and in the column, you choose which column you will match.

To article 3, you repeat the above process.

And that's all. Pretty easy. If you do not have the two tables that you need to use your validation that you need to load before loading the CSV file you need valid.

Hope this can help you

Tags: Business Intelligence

Similar Questions

  • How to get all the style of paragraphs and their policies of an indesign file and write all the info with info para in a txt file with scripts

    @

    How to get everyone how to get all the style of paragraphs and their policies of an indesign file and write all the info with info para in a txt file with scriptingstyle and their policies of an indesign file and write all the info with info para in a txt file with scripts

    Hello

    Try this,

    var doc = app.activeDocument,
        pstyles = doc.allParagraphStyles,
        report = "";
    for(var i =0;i
    

    Kind regards

    Cognet

  • Read a record of file and write to the database.

    Hello

    I read a file using a file adapter and write to the database using DBAdapter table. In BPEL, I used activity to receive the entry from the file and call activity to call dbadapter.in between receive and call I used activity activity of transformation of transformation.the problem is that, after deployment it.i get following error two errors:

    (1) no recoverable system failure:
    < bpelFault > < faultType > 0 < / faultType > < bindingFault xmlns = "http://schemas.oracle.com/bpel/extension" > < a name = "summary" part > < summary > Exception is is produced when the link has been invoked. Exception occurred during invocation of the JCA binding: "JCA binding run reference"insert"operations have to: connection problem component binding JCA.". JCA Binding component is unable to create an outgoing connection of JCA (CCI). ReadWriteDB:WriteDB [WriteDB_ptt::insert (MydbCollection)]: The JCA Binding component could not establish an outbound connection of JCA CCI due to the following problem: BINDING. Error of JCA - 12510 JCA adapter localization resources. Unable to locate the adapter of JCA resource through the element of the binding file .jca & lt; factory connections / > The JCA Binding component is unable to startup of the resource adapter specified in the & lt;-factory connections / > element: location = 'EI, DB, null. The reason is most likely that 1) the resource adapter RAR file has not been deployed successfully to the WebLogic application server or 2) the "& lt;" jndi name > ' element in weblogic - ra.xml has not been defined in eis/DB/null. In the latter case, you need to add a new factory of connections from WebLogic JCA (deploy a RAR). Please fix this and then relaunch the Application Server, please make sure that the JCA connection factory and dependent connection factories have been set up with a sufficient limit for maximum connections Please also make sure that the physical connection to the EIS server is available and the backend itself accepts connections. ". The called JCA adapter threw an exception of resource. Please review the error message above carefully to determine a resolution. < Summary / > < / part > < part name = "detail" > < details > error location JCA resource adapter. Unable to locate the adapter of JCA resource through the element of the binding file .jca & lt; factory connections / > The JCA Binding component is unable to startup of the resource adapter specified in the & lt;-factory connections / > element: location = 'EI, DB, null. The reason is most likely that 1) the resource adapter RAR file has not been deployed successfully to the WebLogic application server or 2) the "& lt;" jndi name > ' element in weblogic - ra.xml has not been defined in eis/DB/null. In the latter case, you need to add a new factory of connections from WebLogic JCA (deploy a RAR). Please fix this and then restart the application server < / details > < / part > < part name = "code" > < code > 12510 < / code > < / piece > < / bindingFault > < / bpelFault >

    2 non recoverable system fault):
    Exception occurred when the link was invoked. Exception occurred during invocation of the JCA binding: "JCA binding run reference"insert"operations have to: connection problem component binding JCA.". JCA Binding component is unable to create an outgoing connection of JCA (CCI). ReadWriteDB:WriteDB [WriteDB_ptt::insert (MydbCollection)]: The JCA Binding component could not establish an outbound connection of JCA CCI due to the following problem: BINDING. Error of JCA - 12510 JCA adapter localization resources. Cannot find the adapter in JCA resources via the element of the binding .jca file <-factory connections / > The JCA Binding component is unable to startup of the resource adapter that is specified in the <-factory connections / > element: location = 'EI, DB, null. The reason is most likely that 1) the resource adapter RAR file has not been deployed successfully to the application server WebLogic or 2) the element '< jndi name >' in weblogic - ra.xml has not been set to eis/DB/null. In the latter case, you need to add a new factory of connections from WebLogic JCA (deploy a RAR). Please fix this and then relaunch the Application Server, please make sure that the JCA connection factory and dependent connection factories have been set up with a sufficient limit for maximum connections Please also make sure that the physical connection to the EIS server is available and the backend itself accepts connections. ". The called JCA adapter threw an exception of resource. Please review the error message above carefully to determine a resolution.

    Please suggest how to solve.

    Thank you

    Tejas

    Check your source data and your connection adapter db adpater deployments factory.
    Check if you have configured all steps of http://docs.oracle.com/cd/E15523_01/integration.1111/e10231/life_cycle.htm#BABBEDBF.
    Also, in your file .jca in your jdeveloper have named the location of connection-factory as "ist/DB/draw ' if so change it to one that you have created in the db adapter deployments.

  • list box given to the .csv file using write on the worksheet File.vi

    Hi, I use the write on the worksheet File.vi to write data multicolumn ListBox to the .csv file. If I do record from Excel, the pop-up window shows as an attachment. And data listbox are too different.  I want the data displayed in the first line not the second row (third photo).

    Thank you for your help.

    Before making your Save As in Excel, change the cell formatting of number. This should avoid the scientific notation conversion before you re-register.

    Or just use Notepad to display the file instead of Excel.

  • How thinApped apps can read other files and write to them?

    Hello

    I have a problem here.

    In my application (which is developed in VB6 and its called InventoryApp) he uses a file of MS Access database as the backend for data operations. Even more, it reads "info.lic" file to authenticate users of authorized machines. Everything works perfectly during the era pre-thinApp but when I used thinApp to make my portable application, all the path used to access the data file and the license file was wrong bcz previously I used "App.Path" command inside my application VB code to get the current path of the bcz my application data file exe and license files are present in the same directory of my application exe.

    After looking on Google to find how to get the current path of the exe to my application within my code when the application runs in the environment ThinApped, I had the 'GetEnvironmentVar("TS_ORIGIN")' api functions to get the current path of my exe inside my code.

    But the problem now is that

    I often use to install my application in the reader "C:\". "like"C:\Program Files\InventoryApp\Myapp.exe ".

    But in a machine if I run "MyApp.exe" of the path above, it will create this path

    "C:\Documents and Settings\xyz\Application Data\Thinstall\InventoryApp\%ProgramFile%" and automatically my data file and the license file will be copied in this way and MyApp.exe will find all files in this path. Even I have change some data in my data file "" C:\Program Files\InventoryApp"I will not reflect the change.

    But in some Machines, it works perfectly that is, even if the application is ThinApped, it will read only from the path that is to call function GetEnvironmentVar ("TS_ORIGIN"). And no more "ProgramFile %" is created and no more data is copied, it will only create up to the path C:\Documents and Settings\xyz\Application Data\Thinstall\InventoryApp\%SystemRoot%"and some registry files.

    How to force (through coding) ThinApped application to read in a specific place because that would solve my problem, I suppose?

    Looking forward to hear some useful tips

    The only reason for ThinApp put your files in the bin to sand is because the files are either virtual (exists within the virtual environment) or is locally present, but in a place where you use WriteCopy as the Mode of insulation AND your application opens the file with write access (so it says the changes would happen to the file). If the application opens the file with read access only they won't end up in the sandbox.

    Possible work around would be to ensure that you only access the files with read access or change isolation merged Mode if the files are present on the spot.

    I do not understand why you are having a different behaviour on different machines. This doesn't really sense.

    When you change the Mode of Isolation please make sure sure delete you the sandbox, because we cache the Modes of insulation in the sandbox.

  • Change .txt and write to the file system

    Hello!

    I created composite simple soa with BPEL process that read the .txt file and write to the file system.

    txt file have this structure:

    < ns1:Record - 1 >

    < ns1:Field - > 123 ABC < / ns1:Field - Somename>

    < / ns1:Record - 1 >

    < ns1:Record - 1 >

    < ns1:Field - unnom > 34 < / ns1:Field - Somename>

    < / ns1:Record - 1 >

    . . .

    < ns1:Record - n >

    < ns1:Field - unnom > 432 < / ns1:Field - Somename>

    < / ns1:Record - n >


    For example the input file are < ns1:Record - 1 > appears twice and < ns1:Record - 2 > appears three times in the file.

    In the output file, I want that < ns1:Record - 1 > occurs three times and < ns1:Record - 2 > occurs four times - more initial registration amount 1

    How is it possible to do? Thank you.

    Hello

    Good to know that your problem is solved.

    Your solution to the problem (copy methods and insertAfter bpel) seems to be very well and works as planned including the edge cases. Rather than use the counters, you could use the "count" in clause () method in .

    (Ex: $Invoke1_Write_InputVariable.body / ns3:Record - 1 [count($InputVariable.body/ns3:Record-1)])

    The snippet of Java code that you plan to use works very well when the records are sorted (ascending). You could do the same thing in bpel code too, but I prefer to implement the same using the method described above.

    Hope that my updates have been useful for you.

    See you soon.

  • Is there a way to select an area of some of the elements of a csv file and read in LabVIEW?

    Hello everyone, I was wondering if there was a way to select only a certain "box" of the elements of a .csv file in LabVIEW? I have LabVIEW 2011 and my main goal is to take two tables and graphs against each other. I can import the .csv perfectly and separate each line and each column to be his own, but I have a 8 X 8 but want graphic in the middle of 4 X 5 or something like that. Is it possible to extract a table without starting at the beginning and end in the end? Thank you in advance.

    Hi Szklanam,

    as a CSV file is a TXT file with a different suffix, you can read a number of lines in this file. For example, you can limit the number of rows in your table of resultung. To limit the number of columns, you must always use an ArraySubset, so maybe it is much easier to read the complete CSV file and select interesting places with ArraySubset...

  • PEUT AN EXCEL XLSM FILE PLAYED FROM A CSV AND WRITE TO THE SAME XLSM - VBA

    Hey Carlos - Here is the repost.

    Could a file of XLSM read one line of a CSV file in 'A1' and depending on what was in the first column of the XLSM, look in the CSV file and find the indexed item in the second or third? I've done it before with VLOOKUP standard functions and it is heavy and very slow and for some reason, whenever I put the file, which should be always the xls file was a single sheet.

    I attacthed a sketch of what I mean, because it is difficult to explain, and I think the sketch it explains better. That is, sorry that if it is blurred, it was happening long before that I posted:

    xlsm example.PNG

    Furthermore, if you add the path of the entire file in the VLOOKUP formula, it works with the firm csv

    = VLOOKUP(A1,'C:\Users\carlos\Documents\[Book2.csv]Book2'!$A$3:$B$7,2,F ALSE)

    On this code (using my file of course), I get a pop that says update, I need to open the workbook with the connection. Are you not who? Sorry to be a pain.

  • Read xls file and display the data in the table.

    Hello

    Try to read the data from an xls or csv file and fill the same data in the table. If I need to use the table to store the data from the file and display, hoping that someone could help.

    Thank you

    Hari

    Hi hari,.

    One thing that is very important when you use the Excel activeX interface (in case you need it) is good termination of worksheet/workbook/lettering handles.

    You need these handles to specify what cell in which file you are trying to access.

    If you are unable to throw each handle you have, then you will be left with ghost Excel process in your task manager, devours your system's memory.

    Thus, when debugging of your application, open the Task Manager and the watch as Excel treats created/destroyed and make sure that you end up with zero Excel process running when your application is closed.

    Also consider the case of fault for your program. Check that your exit routes did not omit any termination of handle.

  • 1 reading coulumn .csv file and display its PSD

    Hello

    I have a .csv file that corresponds to the readings (all the 1 second) voltage.

    I am able to read using LabView, I use Read spreadsheet take his exit (all lines) and then select the first column only, pass it to build a wave form and then, view the power spectral density.

    Unfortunately, nothing is displayed.

    Any ideas? The file only contains double numbers (for example 0.01234 etc.). There are 50 thousand lines.

    Thanks in advance.

    Hello

    I solved the problem in unbundeling the signal out of the PSD, then take the subsignal of greatness and him alone, then wads of scale together.

  • TCP Read and Write at the same time

    Hello everyone,

    I have a question about parallelism in TCP connections.

    I know that it is possible to read and write on the same connection ID.

    So, if you ReadTCP and WriteTCP block each other, if you use the same TCP connection ID?

    Or to request more precise if I run two while loops, in parallel, with one end by calling WriteTCP and the other called ReadTCP.

    one of the delay of loops (or block) will be the other if both loops call their VI TCP at the same time right?

    The system is Windows 7 and Labview 2012.

    Kind regards

    Sebastian

    They are perfectly parallel.  Just write in one and read it from the other.  There is no conflict.

    See My TCP articles for more details.

  • Read new files only created in the shared folder

    Have an iMac with 2 Configuration of users. admin created a directory/folder (/ data) and in the Get Info gave users read and write access to the folder with 'apply to enclosed... items. ».

    New documents created by one of the users can not be written to the other user. If I don't ' sudo chmod-r 777 data / then everything works on existing documents, but a new created have the same problem until I have run chmod.»

    How can I get the files and subfolders for the folder rights parent?

    sudo chmod -R +a "staff allow list,add_file,search,add_subdirectory,delete_child,readattr,writeattr,readextattr,writeextattr,readsecurity,file_inherit,directory_inherit" /Data
  • Store files and backup at the same time

    Hello!

    We have a very good software measurement work written in LabView. However, we want to save the data files on a regular basis. We want to be able to do this, even during the measurement, and then the software is written in the files. Now, when we try to do, we sometimes face 'error 5 has occurred to replace/create/open file' (in 'write in a spreadsheet file') because another software (backup, windows stuff, otherwise...) accesses the files too. Now my point of view this type of file matching should not be a problem since LV is the only writing software in the files. There are 3 possible solutions that I can think of:

    • delay writing (not possible because you don't know how long to delay, for example how long other software remains open)
    • the data in queue and write on the next test (e.g. https://decibel.ni.com/content/docs/DOC-7212 - but once again; how long in the queue?)
    • the good thing is; copy the temporary file to change temporary, delete the original and move the temp in this place

    the last should be the right solution and also work on different OS since the copy/move stuff should be atomic operations and therefore safe in this context. However, I have implemented the solution and always have exactly the same problem but now in 'move the file '... I begin to doubt if it is possible to solve this problem at all and so desparatly need help here! I can see it is not lock, or mutex on file and no need to LV generate an error (I think it's done as a warning to future potential conflicts)... I guess that's a few hidden/strange evil documented Windows API 'characteristic' LV uses to detect the other access and it results in a behavior I can't change or fix - up to what to do here...?

    Thank you very much in advance for helpful suggestions or advice! Greetings

    Ursin Soler

    I must correct myself here:

    • TDMS has not help at all - has exactly the same issues
    • only working solution at the moment is (protected) open the file start and keep this refnum open all the time until the program ends: reading and writing in the program can be done as before and ignore this protection refnum (open and close an another if necessary additional refnum) completely OR be implemented smarter and use the same refnum.

    Hope this helps someone else too.

    Using this method, I can now use for example MS robocopy to back up or all the data files in mirror while the LV program written in it. Something very fundamental and important for a recorder...

    Greetings

  • Can not copy the database of res folder and write to the memory card

    I developed a small application using blackberry jde 7.0. I want to copy the database (.db) of res folder and write to the memory card. When I run in the Simulator, it throws exception "FileNotFound". But the file is located in the res folder.

    Help me guys...

    Here is the code

     copyFile("/Demo.db","file:///SDCard/Databases/Demo.db");
    
    //Copy to Memory card
    public void copyFile(String srFile, String dtFile)
    {
    try
    {
    FileConnection fconn;
    fconn = (FileConnection) Connector.open(dtFile,Connector.READ_WRITE);
    //if(!fconn.exists()) // if file does not exists , create a new one
    // {
    // fconn.create();
    // }
    InputStream is = (InputStream)getClass().getResourceAsStream(srFile);
    System.out.println("read" + String.valueOf(is.available()));
    OutputStream os =fconn.openOutputStream();
    byte[] buf = new byte[is.available()];
    int len;
    while ((len = is.read(buf)) > 0)
    {
    os.write(buf, 0, len);
    }
    is.close();
    os.close();
    }
    catch(IOException e)
    {
    System.out.println("Exception"+e.getMessage());
    }
    }
    

    The exception is

    File not found

    «When I run in the Simulator he throws exception "FileNotFound".»

    Which line is the rise of this?

    You might find the code in the sample application SQLiteDemo, which does almost the same thing, useful in the study to determine what went wrong.

  • get the name of a directory file and insert it into a table

    Hello

    I have a requirement, I need to read the name of a Linux directory file and enter the file name in a variable,

    After that, I need to insert this file name in a table.

    EX: is it a file1.txt in Yearbook of the CBA, and I read that 'file name' in the v_file_name variable and I'm going to insert this file name in a table.

    Hello

    I think you've got your request of replied by Chantal.
    Shoul you have a kind of intelience in the name of the file itself so that ODI retrieves the correct file and insert into the table.

    Thank you
    Fati

Maybe you are looking for

  • Call button does not

    OK so basically that my call button does not work. My command /golive work which is really strange. This started yesterday (8-31) and is still a persistent problem even after I upgraded the latest version of Skype. I checked the forum and have not fo

  • Mobile phone prices is most competitive

    Through regulations of the EU roaming for mobile calls rates have significantly declined in recent years. While Skype has been an easy and obvious choice for many years, when I wanted to make mobile calls to other European countries, I must now pay m

  • Draw rectangular tower to some degree

    Hello Currently, I am trying to shoot a rectangular tower with 'rect' round of photo features plattee. Can I draw a round rectanular to some degree? How to do this? I've attached a picture to help understanding. Thanks for any help, Chao

  • Windows Vista update C80003FE error code

    Hello After computer reseting back to factory settings Im not able to search for Windows updates how do I adjust this? I have Norton 360 instaled on my count. Home Edition of Windows vista. Thank you Shanjeliel

  • Insert the Windows XP Professional Service Pack 3 CD

    How to stop windows from setting up a window that says "Insert XP Professional Service Pack 3 CD now"?  I don't have a CD like this, I'm aware that there is always a CD for SP3?   Whenever I have tuen on my pc, I get this message at least 3 times.  T