Read/write operation on SAP IDOC file

Hi All,
We are developing an application, which will be used for registering and processing of travel data for a client.One of itu2019s functionality is to get the data from external system in different format(like CSV, Excel, Fixed Flat file, XML, main frame file, DBF and SAP IDOC) and import it into Oracle databases.
One of the design considerations for it, is to read these files and convert it into predefined XML format
and then import these data from XML to oracle database.
Currently we are analyzing the requirement and trying to find out all the Open Source JAVA API which can convert these different format files to predefined XML format, using some mapping file.
We have found out Open Source JAVA API for all the file format, except SAP IDOC files.
Any Java API to read/write the SAP IDOC file, Please advise
Regards,
Madhu
Edited by: Madhu Sudhan on Feb 17, 2009 12:06 PM

Hi All,
We are developing an application, which will be used for registering and processing of travel data for a client.One of itu2019s functionality is to get the data from external system in different format(like CSV, Excel, Fixed Flat file, XML, main frame file, DBF and SAP IDOC) and import it into Oracle databases.
One of the design considerations for it, is to read these files and convert it into predefined XML format
and then import these data from XML to oracle database.
Currently we are analyzing the requirement and trying to find out all the Open Source JAVA API which can convert these different format files to predefined XML format, using some mapping file.
We have found out Open Source JAVA API for all the file format, except SAP IDOC files.
Any Java API to read/write the SAP IDOC file, Please advise
Regards,
Madhu
Edited by: Madhu Sudhan on Feb 17, 2009 12:06 PM

Similar Messages

  • NFC tags read/write operations on low level

    Hi,
    I know this is little bit offtopic question - but since you are experts in the area I will try to ask you probably a pretty simple question:
    1/ I would like to know which protocol is used for the read/write operations to the NFC tags are used. According to my understanding after the tag is placed on the NFC reader (NFC phone, USB reader), it is powered and set to the ready state. Then the application protocol for read/write operation is used. As I think the exact format and the content of commands used for read/write is not specified in ISO 14443 and it is dependent on a tag hardware/manufacturer and will be different for FeliCa/Mifare/Innovision/etc. tags, so there is no way how to handle NFC tags read/write operations with the single implementation. Is that assumption correct?
    2/ Are there any tags, which supports the APDU 7816-4 commands for read/write operations?
    Thank you for reply
    Kind regards,
    STeN

    hello,
    you have to read the NFC forum specs. all of this will be better explained than by me.
    more than one protocol are used according the the contactless front end configuration and abilities. It includes ISO14443-A, ISO14443-B and Felica. Sometimes other protocols are also available, for example Innovatron (not Innovision lol)
    Mifare is not a protocol, it is a line of NXP products. These products use the lower layers of the ISO14443-A protocol specification.
    There are 4 types of tags
    1) using the lower layers of ISO14443-A
    2) using the lower layers of ISO14443-B
    3) something related to felica?
    not sure exactly about these 3, you have to read the specs. Everything is clearly understandable, not like ETSI.
    4) something using ISO7816-4 commands on top of ISO14443 A or B or others. You have SELECT, READ BINARY, UPDATE BINARY. You can implement that using javacard, I did it and it works. You need two binary files, that can be hardcoded.
    Regards
    Sebastien

  • The first binary file write operation for a new file takes progressively longer.

    I have an application in which I am acquiring analog data from multiple
    PXI-6031E DAQ boards and then writing that data to FireWire hard disks
    over an extended time period (14 days).  I am using a PXI-8145RT
    controller, a PXI-8252 FireWire interface board and compatible FireWire
    hard drive enclosures.  When I start acquiring data to an empty
    hard disk, creating files on the fly as well as the actual file I/O
    operations are both very quick.  As the number of files on the
    hard drive increases, it begins to take considerably longer to complete
    the first write to a new binary file.  After the first write,
    subsequent writes of the same data size to that same file are very
    fast.  It is only the first write operation to a new file that
    takes progressively longer.  To clarify, it currently takes 1 to 2
    milliseconds to complete the first binary write of a new file when the
    hard drive is almost empty.  After writing 32, 150 MByte files,
    the first binary write to file 33 takes about 5 seconds!  This
    behavior is repeatable and continues to get worse as the number of
    files increases.  I am using the FAT32 file system, required for
    the Real-Time controller, and 80GB laptop hard drives.   The
    system works flawlessly until asked to create a new file and write the
    first set of binary data to that file.  I am forced to buffer lots
    of data from the DAQ boards while the system hangs at this point. 
    The requirements for this data acquisition system do not allow for a
    single data file so I can not simply write to one large file.  
    Any help or suggestions as to why I am seeing this behavior would be
    greatly appreciated.

    I am experiencing the same problem. Our program periodically monitors data and eventually save it for post-processing. While it's searching for suitable data, it creates one file for every channel (32 in total) and starts streaming data to these files. If it finds data is not suitable, it deletes the files and creates new ones.
    On our lab, we tested the program on windows and then on RT and we did not find any problems.
    Unfortunately when it was time to install the PXI on field (an electromechanic shovel on a copper mine) and test it, we've come to find that saving was taking to long and the program screwed up. Specifically when creating files (I.E. "New File" function). It could take 5 or more seconds to create a single file.
    As you can see, field startup failed and we will have to modify our programs to workaround this problem and return next week to try again, with the additional time and cost involved. Not to talk about the bad image we are giving to our costumer.
    I really like labview, but I am particularly upset beacuse of this problem. LV RT is supposed to run as if it was LV win32, with the obvious and expected differences, but a developer can not expect things like this to happen. I remember a few months ago I had another problem: on RT Time/Date function gives a wrong value as your program runs, when using timed loops. Can you expect something like that when evaluating your development platform? Fortunately, we found the problem before giving the system to our costumer and there was a relatively easy workaround. Unfortunately, now we had to hit the wall to find the problem.
    On this particular problem I also found that it gets worse when there are more files on the directory. Create a new dir every N hours? I really think that's not a solution. I would not expect this answer from NI.
    I would really appreciate someone from NI to give us a technical explanation about why this problem happens and not just "trial and error" "solutions".
    By the way, we are using a PXI RT controller with the solid-state drive option.
    Thank you.
    Daniel R.
    Message Edited by Daniel_Chile on 06-29-2006 03:05 PM

  • Oracle coherence first read/write operation take more time

    I'm currently testing with oracle coherence Java and C++ version and from both versions for writing to any local or distributed or near cache first read/write operation take more time compared to next consecutive read/write operation. Is this because of boost operations happening inside actual HashMap or serialization or memory mapped implementation. What are the techniques which we can use to improve the performance with this first read/write operation?
    Currently I'm doing a single read/write operation after fetching the NamedCache Instance. Please let me know whether there's any other boosting coherence cache techniques available.

    In which case, why bother using Coherence? You're not really gaining anything, are you?
    What I'm trying to explain is that you're probably not going to get that "micro-second" level performance on a fully configured Coherence cluster, running across multiple machines, going via proxies for c++ clients. Coherence is designed to be a scalable, fault-tolerant, distributed caching/processing system. It's not really designed for real-time, guaranteed, nano-second/micro-second level processing. There are much better product stacks out there for that type of processing if that is your ultimate goal, IMHO.
    As you say, just writing to a small, local Map (or array, List, Set, etc.) in a local JVM is always going to be very fast - literally as fast as the processor running in the machine. But that's not really the focus of a product like Coherence. It isn't trying to "out gun" what you can achieve on one machine doing simple processing; Coherence is designed for scalability rather than outright performance. Of course, the use of local caches (including Coherence's near caching or replicated caching), can get you back some of the performance you've "lost" in a distributed system, but it's all relative.
    If you wander over to a few of the CUG presentations and attend a few CUG meetings, one of the first things the support guys will tell you is "benchmark on a proper cluster" and not "on a localised development machine". Why? Because the difference in scalability and performance will be huge. I'm not really trying to deter you from Coherence, but I don't think it's going to meet you requirements when fully configured in a cluster of "1 Micro seconds for 100000 data collection" on a continuous basis.
    Just my two cents.
    Cheers,
    Steve
    NB. I don't work for Oracle, so maybe they have a different opinion. :)

  • How can read/write FORMSWEB.CFG & DEFAULT.ENV file entries programatically?

    Environment: Forms 9i (Web)
    As : Oracle 9i As
    How can read/write FORMSWEB.CFG & DEFAULT.ENV file entries programatically?

    I guess you cannot. There is an enhancement request to get the name of the config-section as a GET_APPLICATION_PROPERTY.
    What you could do is add extra parameter(s) to your form and pass the necessary formsweb.cfg parameters in this form parameter. See Get formsweb.cfg section name in Forms for more info and an example.

  • Parsing SAP IDOC files

    Hello Experts,
    I want to parse the outgoing idoc invoice file.i mean when a invoice is generated in SAP then a idoc file is created and i want to read the data from the out file like which all fields are there and what all data does it have. I want to extract the necessary info out of the IDOC files .
    Is there an easy way of doing this ,I am new to R/3,any help would be highly appreciated.
    Thanks
    Abhishek

    hi,
    check out the database tables EDIDC and EDID4, there you will find the idoc-data, including INVOIC. by reading the needed lines from EDID4 and copying them in the given structures, you can easily extract the needed data.
    greetings,
    dsp

  • Read/Write folder, but newly added files Read Only?

    Our company uses a server to store a shared logo database and work files, and to transfer data from one user to another. At this point, we do not have any need for Read Only on this server; everything should be Read/Write. That's how it was set up initially, and the permissions were propagated. About a year ago, our old XServe crashed and was replaced with a new XServe. I believe our trouble started there, and has since migrated to our Snow Leopard Server: we have several folders where, if an employee uploads a folder and/or file, those files become Read Only. We have to go to the Get Info for that folder and fix the permissions each time. This has to happen up to 20 or so times a day, and I'm the only one who has server access to fix it; it also seems to be affecting more and more folders. I'm not in IT, so this is a little beyond me, but I've been working with IT on this (I'm Mac, he's PC). Can anyone offer a suggestion as to how else we can go about permanently setting the permission to Read/Write on all folders? Server Admin hasn't been successful.
    Thanks!

    Hi
    +"We have to go to the Get Info for that folder and fix the permissions each time"+
    This might be fine for OSX Client but it's not the way to do things on OSX Server. Consider stopping doing this because ultimately you're adding to the problems you're seeing. To reset permissions launch terminal on the server and issue this command:
    sudo chmod -R -N /pathtoshare
    Depending on how much data there is as well as the structure (nested folders within nested folders etc) this may take some time. If you're sharing the Volume (hard drive), don't. Share a folder instead. If you have only one share point which is the name of the drive. Create a folder with the same name and move all the data into that folder. Un-share the drive and Re-share the folder.
    Once the command has ran, repeat for any other share points you may have. When finished launch Server Admin because this is what you should be using. Select the Server name. Click on the Sharing icon. Select Share Points. Select the share point you're interested in and add desired users or groups into the ACL window. Select Read/Write. Don't fiddle with the POSIX permissions. Cick Save. Click on the small gear wheel and select Propagate Permissions. By default ACL will be ticked. You don't tick anything else. Click save/apply and let it do its stuff. Repeat for any other share points you may have.
    Tony

  • How read/write matlab style WAV sound file?

    The supplied LabVIEW WAV read/write VIs require fixed sampling rates (like 8000, 11025, 22050, 44100), and use integer data (so the waveforms take on large +/- integer values).
    I need to read/write WAV files that are like those used in Matlab with its wavread and wavwrite functions. Those can use ANY sample rate, and the waveforms have decimal values between -1 and +1.
    Could someone suggest either how to directly write these standard WAV files with an existing VI, or how to write my own VI to do this?
    Thanks in advance.

    That's a great help! Thanks. I have made the changes to the supplied NI VIs so that any rate can be used. The new read/write VIs are attached and seem to work ok.
    Best,
    F
    Attachments:
    Snd_Read_Wave_File.vi ‏128 KB
    Snd_Write_Wave_File.vi ‏110 KB

  • Serializin​g read/write operations of network-pu​blished shared variables

    Hi all,
    I'm developing a distributed application (PC + CompactRIO), and using shared variables (SVs) for inter-device communication. Here's my journey so far:
    Intended procedure
    PC parses file
    PC writes processed file data (custom cluster, large) into the 1st SV 
    PC writes a "grab data" signal/command (enum) into the 2nd SV
    cRIO polls the 2nd SV
    cRIO sees the command, then reacts by reading the 1st SV
    Steps #2 and #3 were sequenced, using error wires.
    Unexpected results
    Even after the command is transmitted and the cRIO sees it, the cRIO could not read the data (which I wrote BEFORE the command) -- LabVIEW reported that the buffer was empty.
    The operation succeeded when I placed a wait (5 seconds) between steps #2 and #3.
    Questions
    What am I doing wrong, and how do I achieve my desired outcome?
    Is SV I/O asynchronous by design?
    Is it possible to use event-driven programming to handle SV access? (i.e. does LabVIEW signal when the new SV value has propagated across the network?)

    BillMe wrote:
    Why do you have to "notify" the other end that data is available? The subscriber can simply sit in a loop doing a timed read just as if using a queue or notifier IPC. If it doesn't time out, you got new data. If it does time out, do some other processing if needed and then loop back for another timed read.
    My sytem architecture is command-driven -- the cRIO listens for instructions from the PC interface (sent as an enum via one SV), and performs tasks (motor control) in response. One of the commands (the one described in this thread) happens to be "download a new motion profile from the PC, by reading the other SV". Given that the cRIO is already polling the command channel, I felt that there's no need to also poll the data channel (especially since the "download" command is issued very infrequenty). Plus, I thought that polling two channels would increase the chances of race conditions or illegal state transitions, particularly if the app is developed over a long term.
    I am also new to LabVIEW, so my current programming style will heavily reflect my C++/Qt background while I get a feel for LabVIEW's strengths and weaknesses -- Qt is a heavily event-driven framework (even for networking!), where polling often means you're doing something wrong.
    Still, thank you for pointing out that I can use timeouts to determine if new data has arrived -- my subscriber current writes a null command back into the SV when it has consumed the command, but you showed me that I don't have to.

  • Read&write binary float var to file

    Hello everybody.
    Oracle 11G R 2 on Linux.
    My problem.
    I have some millions of records (270.000.000)  with numeric data that can be store in binary float variables. Making the database work with so big table convert the database in a slow and hard to manage, because copys and so. The advantage is that this data only need be read, not modified or add news record.
    So, Im thinking to store in the file system, with UTL_FILE package, one or more binary files and access data through a algorithm to calculate the position of data inside the file. The data can be stored in binary float vars.
    My question.
    How I can add this binary data in binary format to the stream of write and read from the stream of data when I write to disk and when I read from disk.
    Any idea welcome.
    Thanks in advanced & regards everybody.

    I think that you dont understand the problem.
    The problem is easy, I have a table with 270.000.000 records. When you try to do anything with this table the database go slow, for your understand, when you ask a simple and easy query, by example a select count(*) from, it take more than 200 seconds to answer.
    ok, but the data is all numeric that can be stored in binary float var and moreover its position in a sequential file can be calculate.
    So if I make a sequential file, or more than one, where I can save this data I kick this problem to the database.
    And what I´m asking for help is if anybody know a way, using UTL_FILE, to include in the stream to save and read this data from disk (UTL_FILE.put_raw and UTL_FILE.get_raw) in binary float format, nothing more than this I want.
    You are correct that I 'dont understand the problem' because you yourself do not know what the 'problem' is.
    All you said is 'try to do anything with this table the database go slow' but you don't tell us what that 'anything' is. You give only ONE example.
    A COUNT(*) in Oracle could possibly use an index but you don't tell us if you have any indexes. You don't even provide the table DDL so we can see the structure.
    Your description gives the impression that all you have is a table with ONE column defined as BINARY FLOAT and that column is defined as NOT NULL. If that is the case you can create an index and Oracle can use it to get the COUNT(*) results.
    That ONE query is just about the only thing that might be faster with the data in a file. Since each value is four bytes and they can't be null then all you need to know is the length of the file. Then you can divide by four to find out how many entries there are.
    For anything else your 'file' solution will need to read the ENTIRE FILE to do anything other than access values as if the file was a large array of BINARY FLOAT four byte values.
    And for that, as I previously suggested, just forget Oracle and write a simple Java program that uses RandomAccessFile. Then for any given 'array' value just multiply by four, set the FilePointer value to that result and read your 4 bytes.

  • Read / Write a MAX .daq configuration file?

    How can I read or write a .daq configuration file programmatically ?(channel names, range, units, etc.)
    And/Or:
    Does anyone know the internal structure of a .daq file? Is it documented?
    Thanks.
    MichelC.

    Michel,
    The .daq file, where all the MAX information gets stored, is in binary format. You will have a hard time decoding it LabVIEW.
    However, you can use some DAQ VIs to get this information.
    Under Data Acquisition>>Calibration and Configuration>>DAQ Channel Utilities palette, use the following VIs:
    Get DAQ Channel Name
    Get Channel Information
    Get Scale Information
    Zvezdana S.
    National Instruments

  • Read & Write all folders and files

    How do I allow another account user read & write privileges to all my files and folders? I have set the other user as an administrator however each file and folder that i've copied into their documents folder still need to be changed individually (through the Get Info window) in order to save changes or add new files to them. This is very time consuming, so is there an easier way?

    Not exactly what you are looking for but maybe some useful information:
    http://www.computerworld.com.au/article/197922/useraccounts_file_sharing_leopard_whatnew?pp=1&fp=2&fpid=2

  • Why can't I open read/write rules file?

    I have followed the Cookbook XML tutorial exactly as prescribed, even down to using all the examples from the 'Completed' folder, but when I try to perform any procedure such as generating a EDD or reading an XML instance (the ColorDoc.xml example) I get the following in the log file:
    Could not open the read/write rules file
    (App\ChapterReadWriteRules)
    Make sure you have read access to the file and that
    the file is not already in use.
    Using XP and Framemaker 7.
    Its a real blocker this proble. Have tries unsetting the XP Read-only folder property on all the folders in the heirarchy but XP won't let me do that. Very grateful if anyone could help me over this problem.

    What is the path you mentioned the structapps.fm file for read/write rules
    It should be full file path for read/write rules(including extension of file). Otherwise there is possibility of throwing the error you mentioned.
    Would it be possible to paste your XML application defined in your structapps.fm file??
    Thanks
    Basav

  • ATTN Java Gurus: udf.policy - Unable to Grant Read,Write to Specific File

    NOTE: A correct answer to this question will receive the rarely used OTN 25pt <font color="silver" size="3" face="script">Platinum Star</font><font color="silver" size="4" face="script"> &#9733;</font> *
    Essbase 9.3.1
    Using a Java CDF that reads and writes to a file
    I'm trying to grant permission to a specific file in the file system by granting permission in the udf.policy file.
    When I uncomment the line permission java.security.AllPermission; the CDF works fine and interacts with the file correctly. This is just to prove that the CDF works, I need to tighten this up to a single file. I stop and start the app after each edit.(I've also tried bouncing the Essbase server too)
    When I use the following, I get an exception, shown below. Nothing of consequence is being written to the app or essbase logs
    grant {
      permission java.io.FilePermission "C:/test/essbase/CalcProfile.db", "write, read";
    };java.security.AccessControlException: access denied (java.io.FilePermission C:\esstest\Server\PlugIns\Essbase read)
         at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
         at java.security.AccessController.checkPermission(AccessController.java:546)
         at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
         at java.lang.SecurityManager.checkRead(SecurityManager.java:871)
         at com.hyperion.essbase.calculator.ESecurityManager.checkRead(ESecurityManager.java:80)
         at java.io.File.exists(File.java:731)
         at org.sqlite.Conn.open(Conn.java:98)
         at org.sqlite.Conn.<init>(Conn.java:57)
         at org.sqlite.JDBC.createConnection(JDBC.java:77)
         at org.sqlite.JDBC.connect(JDBC.java:64)
         at java.sql.DriverManager.getConnection(DriverManager.java:582)
         at java.sql.DriverManager.getConnection(DriverManager.java:207)
         at com.accelatis.essbase.calcprofile.cdf.CalcComment.calcComment(CalcComment.java:16)
    >
    I've tried creating the policy using PolicyTool, same result. However, I have no idea what or if I should put in the "CodeBase" field.
    Has anyone had success creating read & write permissions to a single file using the udf.policy file? What is the magic syntax?
    Regards,
    Robb Salzmann
    * <font face="small" size=".2em" color="silver">right after the platinum star award is created</font>

    Hi Robb,
    Never heard of the OTN 25pt Platinum Star award... It sounds appetizing, but I know I won't get it since I've got no Java experience. :)
    I was just gonna ask if you've thought about posting the same question on one of the Java forums?
    https://forums.oracle.com/forums/category.jspa?categoryID=285
    Cheers,
    Mehmet

  • Socket read write on Solaris 8 too slow.

    Hi
    We have an application which consists of several server instances.
    The front-end is web-based , using JSP/Servlets. We are using Tomcat 4.0.
    The servlet makes several connections to the underlying servers. But the read/write operation is too slow. Same setup runs much quicker on Windows.
    We are running jdk1.4.1_02 (stable ?). Would much appreciate any help.
    cheers
    Projyal

    tomcat version --3.2.3
    j2sdk version----1.4
    plarform---------solaris
    solaris version--8
    using the aboue configuration i need to deploy JSP codes on the solaris platfrom..can any technical expert guide me on how to do this..would be grateful if anyone could suggest a good site where i can download free tuorials of "JSP" for development in HTML files format or HELP format]
    thank you
    regards
    brijesh

Maybe you are looking for

  • Firefox shows windows from last time, how to clear last open tab?

    I have Firefox set to restore my previous session when starting. The last tab open doesn't have an 'x' to close it. When pressing ctrl+w it will close the window in such a way that next time I open firefox it'll restore the previous tab. Is there a w

  • DVD's won't play

    My TouchSmart IQ 840t will play audio CD's but will not play a movie DVD?

  • F-32 validation

    The Issue is that. When i clear Cutomer with T.code f-32, we require when business ares field is empty at the in the documents , so while clearing it should pop up inforamtion message to input business area regards sri

  • Web forms in 10g

    hi, i must install forms and web server in 10g, so the forms could be shown on web. what i don't know is what should i install, aplication server or developer suite (10g pack of 10 cd's including app server (3 cd) and dev suite (2 cd))???

  • Start a new scene at scene break doesnt work

    I'm using iMovie HD and when I import footage, a new scene/clip doesn't start up. I've checked and unchecked the prefrence, quit iMovie and I still can't get a new clip to start from where I hit pause record on the camera. Thanks