Best strategy to upload a big data file and then to insert in db the content

Hi,
Here's our requirement. We have a web business application developed on JSF 1.2, JE66, WebLogic for application server, and Oracle for the data back end tier. We need to upload big data files (80 to 100 Mb) from a web page, and persist the content in database tables.
What's the best way in terms of performance to implement this use case ? Once the file is uploaded on server a command button is available on the web page  to trigger a JSF controller action in order to save data in database.
Actually we plan to keep in memory the content of the http request, and call insert line on each line of the file. But i think it's bad and not scalable.
Is is better to write the file on server's disk and then use multiple threads to send the lines to the database ? How to use multi threading in a JSF managed bean ?
Thanks

In addition, LoadFromFile is overloaded to handle both BLOB and CLOB:
PROCEDURE LOADFROMFILE
Argument Name                  Type                    In/Out Default?
DEST_LOB                       BLOB                    IN/OUT
SRC_LOB                        BINARY FILE LOB         IN
AMOUNT                         NUMBER(38)              IN
DEST_OFFSET                    NUMBER(38)              IN     DEFAULT
SRC_OFFSET                     NUMBER(38)              IN     DEFAULT
<BR>
PROCEDURE LOADFROMFILE
Argument Name                  Type                    In/Out Default?
DEST_LOB                       CLOB                    IN/OUT
SRC_LOB                        BINARY FILE LOB         IN
AMOUNT                         NUMBER(38)              IN
DEST_OFFSET                    NUMBER(38)              IN     DEFAULT
SRC_OFFSET                     NUMBER(38)              IN     DEFAULT

Similar Messages

  • Sent myself a vcard from outlook to my iphone. It is coming through as a dat file and won't open. In the past I have done this and it comes through as a vcf with no problems. Any ideas?

    Sent myself a vcard from Outlook so I can open it on my I phone. These have always in the past come through as vcf and I have been able to open and save them. Today no matter what I do they are coming through as dat files. Any ideas?

    Use Plain Text for the sent message, not HTML or RTF.
    http://www.fileinfo.com/help/winmail_dat_files

  • I deleted contents from pages school report by accident. is there any way to get it back. I reopened the file and it is blank, I deleted the contents from a school report by accident. is there any way to get it back. I reopened the file and it is blank

    I opened a file to print and by accident highlighted and deleted the content. Then in a panic I closed the file and now when I open it is blank. Is there any way to get it back.  I have looked and can not see anyway. I dont have anything in my backup?

    I'm not sure about older versions, but in Pages 3.x (OS X 10.9.x) select File > Revert To > Browse All Versions.  Hopefully there will be an earlier version that you can "revert to".

  • Powershell script - how to read a registry hive and store the value in text file and then again read the text file to write the values back in registry

    Hi All,
    powershell script Method required to read a value from registry and then taking the backup of that values in some text file.
    For example the hive is
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\Path
    and under path i need to take back up  of values in some text file and then put some value in the registry after back is taken in text file.
    Also how to read the text file values so that we can again write to registry hive  back from the back up text file.
    Your help is much appreciated.
    Umeed4u

    I think you need to read this first:
    http://social.technet.microsoft.com/Forums/scriptcenter/en-US/a0def745-4831-4de0-a040-63b63e7be7ae/posting-guidelines?forum=ITCG
    Don't retire TechNet! -
    (Don't give up yet - 12,830+ strong and growing)

  • What is the thumb64segment.data file, and why so big?

    Ok, I finally got my MacBook Pro (first mac) got all my photos approx.7-8k worth into iPhoto. Can someone tell me what are the:
    thumb64segment.data
    thumb32segment.data
    thumbJPGsegment.data
    files and why are they in hundreds of MB, and one is ~1.5GB?
    Thanks

    Thanks toad. You might be right about the color profile, I imported all my photos into iPhoto yesterday and I had left the add colorsync profile checkbox clicked--I'm still trying to figure out exactly what it does and if I should have done that in the first place.
    As a side note, and while I have your attention (since you are so good at answering iphoto questions).
    I have a Sony V1 camera, which I assume uses the RGB or the sRGB color profile. When I get home tonight, I would like to software calibrate my monitor to 2.2 gama and 6500k white point. What else do I need to do to make sure that my photos are the same accross the board with respect to colorsync/color profile.
    I rarely print photos (never at home), usually through imagestation.com (maybe through apple's service from now on, but I doubt it). I understand that assuming these services dont discard the color profile embeded into the image file I send them, I should aim to send them the file with the same color profile as is used by their printers? correct?
    Is there anything else I'm missing here?
    Is there any other benefit to embeding a color profile into an image? Like, if I email the img to someone, will the image look the same on their screen? (I assume not, because they will a) not have the screen calibrated the same way, and b) well, I'm sure there's another reason.
    PPS. I did the search on this group earlier today and read a bunch of threads on this, but I"m still not clear.
    Thanks in advance,
    Alex

  • Sql server data file and log file

    hello experts
    what is the best way to save data file and log file in a two node cluster environment. i have an active\passive cluster with windows server 2008r2 enterprise and sql server 2008r2. i am new to the environment and i noticed that all system and user databases
    including their data and log files are stored in one drive, just curious, what is the best practise in such kinds of scenario, thank you as always for your help.

    Make sure  you have valid/tested  backup strategy for both system and user databases.
    Best Regards,Uri Dimant SQL Server MVP,
    http://sqlblog.com/blogs/uri_dimant/
    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting:
    Large scale of database and data cleansing
    Remote DBA Services:
    Improves MS SQL Database Performance
    SQL Server Integration Services:
    Business Intelligence

  • Timeouts increased after we moved USR, SAP data files and TLogs to new SAN

    We are having issues with timeouts after we moved our USR, SAP SQL Datafiles and SAP Transaction Logs from our old SAN to a new SAN.
    Timeouts for SAPGUI users are set to 10 minutes.
    We are running Windows Server 2003 with SQL Server 2005.
    The SAP database has 8 datafiles with a total size of about 350GB.
    Procedure we used to move SAP to new SAN:
    1. Attached 3 new SAN Volumes
         -a. USR
         -b. Data Files
         -c. Transaction Logs
    2. Shutdown SAP and SQL services
    3. Alligned the new volumes with a 1024kb offset and gave the Data files and Transaction log volumes a 64kb allocation
        size. (The alignment and 64kb allocation size were not setup for these volumes on the old SAN)
    4. Copied the 3 volumes from old to new.
    5. Changed the new volumes drive letter to the drive letters of the old volumes.
         -a. I had to restart in order to change the USR volume.
         -b. Because of this I had to resetup the sapmnt and saploc shares.
    6. Started SQL services and then SAP services and everything came up just fine.
    The week before we had anywhere from 1 to 9 timeouts per day.
    This week: Monday had 20 and Tuesday had 26.
    On Monday we saw that MD07 was the only transaction that was timing out, but Tuesday had others as well.
    The amount of users in the system is about the same.  The amount of orders going in are about the same.  No big transports went in right before we switched.
    Performance counters that I know about for disk look a lot better on the Data Files.
    - PAGEIOLATCH_SH ms/request is about 50% better
    - Under I/O Performance in DBACOCKPIT:
      - MS/OP is now anywhere from 5 to 30 - Old SAN: 50 to 300
    - The Hit Ratio is over 99% - same as the old SAN
    Looking at Wiley Introscope graphs:
    - The "SAP Host: Average queue length" is about 30% to 40% lower then the old SAN.
    - the "SAP Host: Disk utilization in %" is about the same.
    Questions:
    1. Did we do anything wrong or miss anything with our move procedure?
         a. Do we have to do anything in SQL since we changed volumes even though we kept the drive letters the same?
    2. What other logs or performance counters should I be looking at?
    Thank you,
    Neil

    Our new SAN Vendor is Compellent.  They have been fantastic.  I would highly recommend checking them out.
    The reasons for the timeouts had nothing to do with the SAN...Well kind of anyway.
    I decided to check t-code SM20 to see what users were doing when these timeouts were happening.  What I found was the program R_BAPI_NETWORK_MAINTAIN was being called thousands of times in a matter of 10 to 15 minutes at random times through out the day.  It would take up about 50 to 80 percent of the amount of programs being executed during these times.
    So, I sent this information to our developers and they found out that R_BAPI_NETWORK_MAINTAIN was being called from another program that was looping thousands of times. The trigger to stop the loop wasn't happening fast enough.  They made a change and we haven't seen the timeouts since.
    I think that the performance increases allowed the loop to run faster which caused the slow downs and timeouts to happen more often.
    Thank you to everyone for their help!
    Neil

  • How to send data (file and text both) from jsp to servlet

    upload JSP 
    case 1>> if i am using this  <form enctype="multipart/form-data" the file value is comming on the servlet side
             and other vales are not comming when i am using request.get parameter(....);
    case 2>>  if i am using this <form  type="text/html" the "submissionperiod" and "Types" value is comming on the servlet but the file is not comming ........
         How to resolve this issue .  i need to send all the three parameter on single submit and retrieve the parameter values  in my servlet .
    please help !
    <form enctype="multipart/form-data" name="form" method="post" action="Upload" >
                    <table font size="3" style="color:brown;font-family:Arial" >
                    <tr>
                    <td>Submission Year:    </td>
                    <td><select  name="submissionperiod">
                         <option value="">--select--</option>
                         <option value="2000">2000</option>
                         <option value="2001">2001</option>
                         <option value="2002">2002</option>
                         <option value="2003">2003</option>
                         <option value="2004">2004</option>
                         <option value="2005">2005</option>
                         <option value="2006">2006</option>
                         <option value="2007">2007</option>
                         <option value="2008">2008</option>
                         <option value="2009">2009</option>
                    </select><label class="Required">*</label></br></td>
                    </tr>
                    <tr>
                    <td>Submission Type :    </td>
                    <td><select  name="types"   onchange="showDescription()">
                         <option value="">--select--</option>
                         <option value="CRF">CRF</option>
                         <option value="NIR">NIR</option>
                         <option value="NC">NC</option>
                         <option value="SEF">SEF</option>
                    </select><label class="Required">*</label></br></td>
                   </tr>
                   <tr><td></td><td>
                   <div id="divTypeDetails">
                    <textarea  id= "subTypeDes" name="subTypeDes"  value=""></textarea></br></br>
                  </div>
                  </td>
              </table>     
              <td>Select a file (< 100 MB):   </td>
              <td><input id="importFile" name="importFile" type="file"></br>          
              </td>
              <input type="hidden" name="types">
              <input type="hidden" name="submissionperiod">
              <input type="submit" id="submitButton" name="submit" value="Upload" onclick = "checkUploadValidity();"/>
              <input type="button" name=btncancel id=btncancel value="cancel" onclick= "btncancel_click()"/>
    </form> 

    Both the file and text values are included in the binary inputstream of the request. The parametermap is always empty.
    There exist 3rd party API's to parse multipart/form-data streams, such as [Apache Commons FileUpload API|http://commons.apache.org/fileupload].
    Read at least the 'User Guide' and 'Frequently Asked Questions' sections.

  • HT201317 When I view photos on my devices some are not oriented correctly. I used Picassa to turn all photos upright and then copied those photos into the upload file but they are still not corrected when viewed on my devices (ipads)

    When I view photos on my devices some are not oriented correctly. I used Picassa to turn all photos upright and then copied those photos into the upload file but they are still not corrected when viewed on my devices (ipads)

    Generally I would not use Facebook for sharing any photos, it compresses the photos substantially, and when you have shadows and dark colours you get visible "bands" where there should be subtle gradients, ie at sunsets and sunrises.
    It sounds like you are using two methods to upload to Facebook:
    1. Sharing from within Aperture, which basically syncs Facebook with your Aperture album, so any changes made at either end gets synced, hence the deletions from Albums, although the original file should still be in your library, just removed rom the album. It is like a playlist in iTunes.
    2. Exporting pics and uploading to Facebook from the browser.
    I am not sure how method 1 gets compressed, but I know that uploading hi-res jpegs to Facebook using method 2 results in poor quality images.
    I wouldn't even bother comparing option 1 or 2, and they will both be poor images once you view them on Facebook, as opposed to viewing uploaded images on proper image sharing / hosting sites.
    Your problem is not with Aperture, it is using Facebook for showing your work.
    If you export pics form Aperture at high res jpegs or TIFFs your images will be fine.
    If you insist to use Facebook as your way to share your work, then your workflow should be this:
    1. Right click images you want to share.
    2. Select Export version.
    3. Export as 100% size and ensure the export settings are set at 100% quality.
    4. Upload this pic into Facebook.
    This will get you the best image size and resolution on Facebook.
    See how you go.

  • How to design SQL server data file and log file growth

    how to design SQL DB data file and log file growth- SQL server 2012
    if my data file is having 10 GB sizze and log file is having 5 GB size
    what should be the size in MB (not in %) of autogrowth. based on what we have to determine the ideal size of file auto growth.

    It's very difficult to give a definitive answer on this. Best principal is to size your database correctly in advance so that you never have to autogrow, of course in reality that isn't always practical.
    The setting you use is really dictated by the expected growth in your files. Given that the size is relatively small why not set it to 1gb on the datafile(s) and 512mb on the log file? The important thing is to monitor it on an on-going basis to see if that's
    the appropriate amount.
    One thing you should do is enable instant file initialization by granting the service account Perform Volume Maintenance tasks in group policy. This will allow the data files to grow quickly when required, details here:
    https://technet.microsoft.com/en-us/library/ms175935%28v=sql.105%29.aspx?f=255&MSPPError=-2147217396
    Also, it possible to query the default trace to find autogrowth events, if you wanted you could write an alert/sql job based on this 
    SELECT
    [DatabaseName],
    [FileName],
    [SPID],
    [Duration],
    [StartTime],
    [EndTime],
    CASE [EventClass]
    WHEN 92 THEN 'Data'
    WHEN 93 THEN 'Log' END
    FROM sys.fn_trace_gettable('c:\path\to\trace.trc', DEFAULT)
    WHERE
    EventClass IN (92,93)
    hope that helps

  • I have a VI and an attched .txt data file. Now I want to read the data from the .txt file and display it as an array in the front panel. But the result is not right. Any help?

    I have a VI and an attched .txt data file. Now I want to read the data from the .txt file and display it as an array in the front panel. But the result is not right. Any help?
    Attachments:
    try2.txt ‏2 KB
    read_array.vi ‏21 KB

    The problem is in the delimiters in your text file. By default, Read From Spreadsheet File.vi expects a tab delimited file. You can specify a delimiter (like a space), but Read From Spreadsheet File.vi has a problem with repeated delimiters: if you specify a single space as a delimiter and Read From Spreadsheet File.vi finds two spaces back-to-back, it stops reading that line. Your file (as I got it from your earlier post) is delimited by 4 spaces.
    Here are some of your choices to fix your problem.
    1. Change the source file to a tab delimited file. Your VI will then run as is.
    2. Change the source file to be delimited by a single space (rather than 4), then wire a string constant containing one space to the delimiter input of Read From Spreadsheet File.vi.
    3. Wire a string constant containing 4 spaces to the delimiter input of Read From Spreadsheet File.vi. Then your text file will run as is.
    Depending on where your text file comes from (see more comments below), I'd vote for choice 1: a tab delimited text file. It's the most common text output of spreadsheet programs.
    Comments for choices 1 and 2: Where does the text file come from? Is it automatically generated or manually generated? Will it be generated multiple times or just once? If it's manually generated or generated just once, you can use any text editor to change 4 spaces to a tab or to a single space. Note: if you want to change it to a tab delimited file, you can't enter a tab directly into a box in the search & replace dialog of many programs like notepad, but you can do a cut and paste. Before you start your search and replace (just in the text window of the editor), press tab. A tab character will be entered. Press Shift-LeftArrow (not Backspace) to highlight the tab character. Press Ctrl-X to cut the tab character. Start your search and replace (Ctrl-H in notepad in Windows 2000). Click into the Find What box. Enter four spaces. Click into the Replace With box. Press Ctrl-V to paste the tab character. And another thing: older versions of notepad don't have search and replace. Use any editor or word processor that does.

  • How to read the data file and write into the same file without a temp table

    Hi,
    I have a requirement as below:
    We are running lockbox process for several business, but for a few businesses we have requirement where in we receive a flat file in different format other than how the transmission format is defined.
    This is a 10.7 to 11.10 migration. In 10.7 the users are using a custom table into which they are first loading the raw data and writing a pl/sql validation on that and loading it into a new flat file and then running the lockbox process.
    But in 11.10 we want to restrict using temp table how can we achieve this.
    Can we read the file first and then do validations accordingly and then write to the same file and process the lockbox.
    Any inputs are highly appreciated.
    Thanks & Regards,
    Lakshmi Kalyan Vara Prasad.

    Hello Gurus,
    Let me tell you about my requirement clearly with an example.
    Problem:
    i am receiving a dat file from bank in below format
    105A371273020563007 07030415509174REF3178503 001367423860020015E129045
    in this detail 1 record starting from 38th character to next 15 characters is merchant reference number
    REF3178503 --- REF denotes it as Sales Order
    ACC denotes it as Customer No
    INV denotes it as Transaction Number
    based on this 15 characters......my validation comes.
    If i see REF i need to pick that complete record and then fill that record with the SO details as per my system and then submit the file for lockbox processing.
    In 10.7 they created a temporary table into which they are loading the data using a control file....once the data is loaded into the temporary table then they are doing a validation and updating the record exactly as required and then creating one another file and then submitting the file for lockbox processing.
    Where as in 11.10 they want to bypass these temporary tables and writing it into a different file.
    Can this be handled by writing a pl/sql procedure ??
    My findings:
    May be i am wrong.......but i think .......if we first get the data into ar_payments_interface_all table and then do the validations and then complete the lockbox process may help.
    Any suggestions from Oracle GURUS is highly appreciated.
    Thanks & Regards,
    Lakshmi Kalyan Vara Prasad.

  • Hi all,  need data file and co file after single transport in 6.4 or 6.7

    hi all
    following is the requirement
    To process/compile the attached programs (given below) in 6.4/7 Kernel (SAP 6.4 version  or 6.7 version )and send a single transport (Data File and Co File).
    these data file and co file are flat files.
    CAN ANYONE HELP ME GETTING THESE FLAT FILES.   I need these flat files urgently.
    WHAT U HAVE TO DO IS:
    IF U HAVE 6.4 OR 6.7 VERSION, JUST TRANSPORT FOLLOWING 10 PROGRAMS IN SINGLE TRANSPORT IN TESTING SYSTEM OR DEVELOPEMENT SYSTEM AND AFTER GETTING DATA FILE AND CO FILE U CAN REVERT THE TRANSPORT.
    Programs files are as follows:  (total number of prog is 10)
    1.
    FUNCTION Z_3N_CKS_EXIST_USER .
    ""Local interface:
    *" IMPORTING
    *" VALUE(CKSUSRID) TYPE USR02-BNAME
    *" VALUE(CKSMDTID) TYPE USR02-MANDT DEFAULT SY-MANDT
    *" EXPORTING
    *" VALUE(RCODE) TYPE SY-SUBRC
    *" EXCEPTIONS
    *" USER_DONT_EXIST
    *" USER_EXISTS
    FUNCTION TO CHECK IF USER EXISTS
    CLEAR RCODE.
    CALL FUNCTION 'USER_EXISTS'
    EXPORTING
    BNAME = CKSUSRID
    CLIENT = CKSMDTID
    EXCEPTIONS
    USER_DONT_EXIST = 1
    USER_EXISTS = 0.
    RCODE = SY-SUBRC.
    ENDFUNCTION.
    2.
    FUNCTION Z_3N_CKS_LOCKSTATE.
    ""Local interface:
    *" IMPORTING
    *" VALUE(CKSUSRID) TYPE USR02-BNAME
    *" EXPORTING
    *" VALUE(RCODE) TYPE SY-SUBRC
    FUNCTION TO OBTAIN THE CURRENT LOCK STATUS FOR A USER
    *{ PASSGOAPR06
    *\DATA:LOCKSTATE(50) type c,
    *\C_LOCKED_BY_ADMIN like usr02-uflag.
    *\tables:usr02.
    DATA:LOCKSTATE(50) type c.
    *} PASSGOAPR06
    CLEAR: RCODE, LOCKSTATE.
    SELECT SINGLE * FROM USR02 WHERE BNAME = CKSUSRID.
    IF SY-SUBRC <> 0.
    RCODE = 01. "No such User
    EXIT.
    ENDIF.
    *{ PASSGOAPR06
    IF USR02-UFLAG Z C_LOCKED_BY_ADMIN AND
    USR02-UFLAG Z C_LOCKED_BY_FAILED_LOGON.
    LOCKSTATE = 'UNLOCKED'.
    RCODE = 00.
    ELSE.
    IF USR02-UFLAG O C_LOCKED_BY_FAILED_LOGON.
    LOCKSTATE = 'LOCKED_BY_FAILED_LOGON'.
    RCODE = 02.
    ENDIF.
    IF USR02-UFLAG O C_LOCKED_BY_ADMIN.
    LOCKSTATE = 'LOCKED_BY_ADMIN'.
    RCODE = 02.
    ENDIF.
    ENDIF.
    uflag = usr02-uflag.
    IF UFLAG Z C_LOCKED_BY_ADMIN AND
    UFLAG Z C_LOCKED_BY_FAILED_LOGON.
    LOCKSTATE = 'UNLOCKED'.
    RCODE = 00.
    ELSE.
    IF UFLAG O C_LOCKED_BY_FAILED_LOGON.
    LOCKSTATE = 'LOCKED_BY_FAILED_LOGON'.
    RCODE = 02.
    ENDIF.
    IF UFLAG O C_LOCKED_BY_ADMIN.
    LOCKSTATE = 'LOCKED_BY_ADMIN'.
    RCODE = 02.
    ENDIF.
    ENDIF.
    *} PASSGOAPR06
    ENDFUNCTION.
    3.
    FUNCTION Z_3N_CKS_PWDCHG_INITIAL.
    ""Local interface:
    *" IMPORTING
    *" VALUE(CKSUSRID) TYPE USR02-BNAME
    *" VALUE(CKSUSRPWD) TYPE RSYST-BCODE
    *" EXPORTING
    *" VALUE(RCODE) TYPE SY-SUBRC
    *" TABLES
    *" RETURN STRUCTURE BAPIRET2
    FUNCTION TO INITIALISE USERs PASSWORD, USER WILL BE FORCED
    TO CHANGE PASSWORD ON NEXT LOGIN
    CLEAR: USR02, RCODE.
    SELECT SINGLE * from USR02 WHERE BNAME = CKSUSRID.
    IF SY-SUBRC <> 0.
    RCODE = 01.
    else.
    CALL FUNCTION 'BAPI_USER_CHANGE'
    EXPORTING
    USERNAME = CKSUSRID
    PASSWORD = CKSUSRPWD
    PASSWORDX = 'X'
    TABLES
    RETURN = RETURN.
    loop at return.
    if return-type eq 'E' or return-type eq 'A'.
    rcode = 13.
    endif.
    endloop.
    endif.
    ENDFUNCTION.
    4.
    FUNCTION Z_3N_CKS_VERIFY_USER.
    ""Local interface:
    *" IMPORTING
    *" VALUE(CKSUSRID) TYPE RSYST-BNAME
    *" VALUE(CKSUSRPWD) TYPE RSYST-BCODE OPTIONAL
    *" EXPORTING
    *" VALUE(RCODE) TYPE SY-SUBRC
    FUNCTION TO VALIDATE A USER
    *{ PASSGOAPR06
    TABLES:USR02.
    CLEAR: USR02, RCODE.
    SELECT SINGLE * from USR02 WHERE BNAME = CKSUSRID.
    IF SY-SUBRC = 4.
    RCODE = 01. "no such user
    EXIT.
    ELSEIF CKSUSRPWD = SPACE.
    RCODE = 03. "invalid old password
    EXIT.
    ELSE.
    CALL FUNCTION 'SUSR_LOGIN_CHECK_RFC'
    EXPORTING
    BNAME = CKSUSRID
    PASSWORD = CKSUSRPWD
    EXCEPTIONS
    WAIT = 1
    USER_LOCKED = 2
    USER_NOT_ACTIVE = 3
    PASSWORD_EXPIRED = 4
    WRONG_PASSWORD = 5
    NO_CHECK_FOR_THIS_USER = 6
    INTERNAL_ERROR = 7
    OTHERS = 8
    CASE SY-SUBRC.
    WHEN '2'. RCODE = 02. "user disabled/blocked
    WHEN '3'. RCODE = 02. "user disabled/blocked
    WHEN '4'. RCODE = 03. "invalid old password
    WHEN '5'. RCODE = 03. "invalid old password
    WHEN '8'. RCODE = 12. "internal error
    ENDCASE.
    ENDIF.
    *} PASSGOAPR06
    ENDFUNCTION.
    5.
    *& Include ZMS01JTOP *
    PROGRAM MS01JTOP MESSAGE-ID 01 LINE-SIZE 132. "Berechtigungsdatenpflege
    13.08.93
    INCLUDE MS01CTP2.
    INCLUDE MS01CTCO.
    TABLES: XU200, XU213, XU310, XU350, XU390, XU400.
    TABLES: TSTC, TSP03, TPARA, TPARAT.
    TABLES: *USR01, *USR03, USR15.
    TABLES: SOUD, SOUD3.
    *ABLES: ZCSA, ADRS.
    *{ PASSGOAPR06
    TABLES: usr02.
    DATA: uflag type x.
    DATA: begin of return occurs 0.
    INCLUDE structure bapiret2.
    DATA: end of return.
    DATA calling_cksusrid like usr02-bname.
    DATA: init_pass like BAPIPWD.
    INCLUDE USER_CONSTANTS.
    *} PASSGOAPR06
    CONTROLS TC213 TYPE TABLEVIEW USING SCREEN 213.
    CONTROLS TC520 TYPE TABLEVIEW USING SCREEN 350.
    DATA: COPYOK TYPE I,
    RENAMEOK TYPE I,
    DATFM1,
    DATFM2,
    DATFM3,
    DATFM4,
    DCPFM1,
    DCPFM2,
    USERNAME LIKE USR01-BNAME,
    LOCK,
    UNLO,
    STATFLAG TYPE I VALUE 0,
    NAVIFLAG TYPE I VALUE 0,
    PARTOPIX TYPE I,
    PARFILL TYPE I,
    PARAMETER LIKE USR05-PARVA,
    PARID LIKE USR05-PARID,
    PARLOOP LIKE SY-STEPL,
    SHOW_ONLY VALUE ' ',
    INTPRO_LOADED TYPE I VALUE 0,
    EXT_SECURITY VALUE ' '.
    DATA: H_201_USGRP LIKE USGRP-USERGROUP,
    H_201_VALID TYPE C,
    CC201 LIKE SY-CUCOL VALUE 2,
    CR201 LIKE SY-CUROW VALUE 6,
    SAVE_LINE201 LIKE SY-LILLI VALUE 1,
    SAVE_LSIND201 LIKE SY-LSIND VALUE 1.
    DATA: OFFICENAME LIKE SOUD-USRNAM.
    DATA: BEGIN OF NAME_IN.
    INCLUDE STRUCTURE SOUD3.
    DATA: END OF NAME_IN.
    DATA: BEGIN OF NAME_OUT.
    INCLUDE STRUCTURE SOUD3.
    DATA: END OF NAME_OUT.
    DATA: BEGIN OF EMPTYPROF OCCURS 2.
    INCLUDE STRUCTURE USREF.
    DATA: END OF EMPTYPROF.
    DATA: BEGIN OF PROFILES OCCURS 10.
    INCLUDE STRUCTURE USREF.
    DATA: END OF PROFILES.
    DATA: MAXPAR TYPE I VALUE 300.
    DATA: BEGIN OF TABPAR OCCURS 300,
    PARID LIKE USR05-PARID,
    PARVA LIKE USR05-PARVA,
    END OF TABPAR.
    DATA: BEGIN OF DELTAB OCCURS 50,
    USGRP LIKE USR02-CLASS,
    END OF DELTAB.
    DATA: BEGIN OF ADDTAB OCCURS 50,
    USGRP LIKE USR02-CLASS,
    END OF ADDTAB.
    DATA: BEGIN OF ADDRESS_DATA.
    INCLUDE STRUCTURE SADRP_USR.
    DATA: END OF ADDRESS_DATA.
    DATA:
    CLEAR TYPE X VALUE '00'.
    *ATA: BEGIN OF ADRSDATEN.
    INCLUDE STRUCTURE ADRS.
    *ATA: END OF ADRSDATEN.
    06.10.95 Tosun
    DATA 930_FLAG.
    "$$
    6.
    FUNCTION Z_3N_CKS_LOCK_USER.
    ""Local interface:
    *" IMPORTING
    *" VALUE(CKSUSRID) TYPE USR02-BNAME
    *" EXPORTING
    *" VALUE(RCODE) TYPE SY-SUBRC
    CLEAR RCODE.
    *{ PASSGOAPR06
    *\ PERFORM LOCK_USER IN PROGRAM ZSAPMS01J USING CKSUSRID.
    *\ IF SY-SUBRC <> 0.
    *\ RCODE = SY-SUBRC.
    *\ EXIT.
    *\ ELSE.
    *\ COMMIT WORK.
    *\ ENDIF.
    the report (form) is dumping.
    so we try it with the correct BAPI
    CALL FUNCTION 'BAPI_USER_LOCK'
    EXPORTING
    USERNAME = CKSUSRID
    TABLES
    RETURN = return
    IF return-type <> 'S'.
    RCODE = '8'.
    rollback work.
    EXIT.
    ENDIF.
    *} PASSGOAPR06
    ENDFUNCTION.
    7.
    FUNCTION Z_3N_CKS_PWDCHG_DIRECT.
    ""Local interface:
    *" IMPORTING
    *" VALUE(CKSUSRID) TYPE USR02-BNAME
    *" VALUE(CKSUSRPWD) TYPE RSYST-BCODE
    *" EXPORTING
    *" VALUE(RCODE) TYPE SY-SUBRC
    *" TABLES
    *" RETURN STRUCTURE BAPIRET2
    FUNCTION TO CHANGE USERs PASSWORD
    Password is initialised to a fixed value,
    to avoid having to provide the valid old password
    If the password change fails, the change is
    rolled back - this is required because
    BAPI_USER_CHANGE does an internal commit.
    CLEAR: USR02, RCODE.
    DATA: L_TIME LIKE SY-UZEIT,
    ZLIN TYPE I.
    *{ PASSGOAPR06
    calling_cksusrid = cksusrid. "Save calling userid
    init_pass = 'INITPASS'.
    *} PASSGOAPR06
    do 1 times.
    SELECT SINGLE * from USR02 WHERE BNAME = CKSUSRID.
    IF SY-SUBRC <> 0.
    RCODE = 1.
    else.
    * Change login to initpass.
    CALL FUNCTION 'BAPI_USER_CHANGE'
    EXPORTING
    USERNAME = CKSUSRID
    *{ PASSGOAPR06
    *\ PASSWORD = 'INITPASS'
    PASSWORD = init_pass
    *} PASSGOAPR06
    PASSWORDX = 'X'
    TABLES
    RETURN = RETURN.
    * Evaluate return table, if not success, rcode = 13
    describe table return lines zlin.
    IF zlin > 0.
    IF return-type ne 'S'.
    rcode = 13.
    exit.
    ENDIF.
    ENDIF.
    * Wait 1 second, otherwise table ush02 gets the same key as before.
    * Not very good, but its the only way, because the wait up to
    * statement includes a db-commit.
    L_TIME = sy-uzeit.
    WHILE L_TIME = sy-uzeit.
    GET TIME.
    ENDWHILE.
    * Change 'INITPASS' to input login
    CALL FUNCTION 'SUSR_USER_CHANGE_PASSWORD_RFC'
    EXPORTING
    BNAME = CKSUSRID
    PASSWORD = 'INITPASS'
    NEW_PASSWORD = CKSUSRPWD
    NEW_BCODE = '0000000000000000'
    NEW_CODVN = ' '
    EXCEPTIONS
    CHANGE_NOT_ALLOWED = 1
    PASSWORD_NOT_ALLOWED = 2
    INTERNAL_ERROR = 3
    CANCELED_BY_USER = 4
    OTHERS = 5.
    case sy-subrc.
    when '0'. rcode = 0.
    when '1'. rcode = 2.
    when '2'. rcode = 4.
    when '3'. rcode = 12.
    when '4'. rcode = 2.
    when '5'. rcode = 12.
    ENDCASE.
    ENDIF.
    exit. "end of do 1 times "
    enddo.
    * rollback if it didn't work
    if not rcode is initial.
    rollback work.
    endif.
    ENDFUNCTION.
    8.
    FUNCTION Z_3N_CKS_UNLOCK_USER.
    ""Local interface:
    *" IMPORTING
    *" VALUE(CKSUSRID) TYPE USR02-BNAME
    *" EXPORTING
    *" VALUE(RCODE) TYPE SY-SUBRC
    CLEAR RCODE.
    *{ PASSGOAPR06
    *\ PERFORM UNLOCK_USER IN PROGRAM ZSAPMS01J USING CKSUSRID.
    *\ IF SY-SUBRC <> 0.
    *\ RCODE = SY-SUBRC.
    *\ EXIT.
    *\ ELSE.
    *\ COMMIT WORK.
    *\ ENDIF.
    the report (form) is dumping.
    so we try it with the correct BAPI
    CALL FUNCTION 'BAPI_USER_UNLOCK'
    EXPORTING
    USERNAME = CKSUSRID
    TABLES
    RETURN = return
    IF return-type <> 'S'.
    RCODE = '8'.
    rollback work.
    EXIT.
    ENDIF.
    *} PASSGOAPR06
    ENDFUNCTION.
    9.
    *& Include ZMS01JO10 *
    MS01JO10 Module before Output
    14.05.93
    MODULE D150_SELECT *
    Einen Eintrag aus der Liste uebernehmen. *
    MODULE D150_SELECT OUTPUT.
    IF SELE = 1.
    IF SY-LILLI < 3.
    MESSAGE S209.
    ELSE.
    IF USRFLAG = 10 AND SY-LILLI = 3.
    MESSAGE S209.
    ELSE.
    IF USRFLAG = 10.
    XU150-VON = SY-LISEL.
    ELSE.
    COUNTX = PUSR - 1.
    ASSIGN SY-LISEL+COUNTX(12) TO <TEXT>. " unicode
    WRITE <TEXT> TO XU150-VON.
    ENDIF.
    ENDIF.
    ENDIF.
    SELE = 0.
    ENDIF.
    IF FERTIG = 2.
    FCODE = 'BACK'.
    SUPPRESS DIALOG.
    ENDIF.
    ENDMODULE.
    MODULE D150_SETSTATUS *
    PF-Status setzen *
    MODULE D150_SETSTATUS OUTPUT.
    PERFORM SET_STATUS USING 150.
    XU150-SELPROF = XU150-SELFEST = XU150-SELADRE = XU150-SELPARA = 'X'.
    XU150-SELMENU = 'X'.
    ENDMODULE.
    MODULE D155_SETSTATUS *
    PF-Status setzen *
    MODULE D155_SETSTATUS OUTPUT.
    PERFORM SET_STATUS USING 155.
    ENDMODULE.
    MODULE D200_SELECT *
    Einen Eintrag aus der Liste ins Dynpro uebernehmen *
    MODULE D200_SELECT OUTPUT.
    IF SELE = 1.
    IF SY-LILLI < 3.
    MESSAGE S209.
    ELSE.
    XU200-XUSER = SY-LISEL.
    ENDIF.
    SELE = 0.
    ENDIF.
    IF FCODE2 = 'USER' OR FCODE2 = 'FEST' OR FCODE2 = 'ADRE' OR
    FCODE2 = 'PARA' OR FCODE2 = 'ADMI' OR FCODE2 = 'RESE' OR
    FCODE2 = 'N '.
    SUPPRESS DIALOG.
    ENDIF.
    PERFORM SET_STATUS USING 200.
    ENDMODULE.
    MODULE D213_VALOUT *
    Festwerte auf das Dynpro schreiben. *
    MODULE D213_VALOUT OUTPUT.
    DEL = 0.
    XU213-DIA = '.'.
    XU213-ODC = '.'.
    XU213-BDC = '.'.
    XU213-CPIC = '.'.
    XU213-BATCH = '.'.
    CASE USR02-USTYP.
    WHEN TYPDIA.
    XU213-DIA = 'X'.
    WHEN TYPBATCH.
    XU213-BATCH = 'X'.
    WHEN TYPCPIC.
    XU213-CPIC = 'X'.
    WHEN TYPBDC.
    XU213-BDC = 'X'.
    WHEN TYPODC.
    XU213-ODC = 'X'.
    ENDCASE.
    IF USR02-LTIME <> SPACE AND USR02-LTIME <> '000000'.
    LOOP AT SCREEN.
    CASE SCREEN-GROUP1.
    WHEN 'MOD'.
    SCREEN-INVISIBLE = '1'.
    SCREEN-INPUT = '0'.
    MODIFY SCREEN.
    ENDCASE.
    ENDLOOP.
    SET CURSOR FIELD 'USR02-CLASS'.
    IF F <> ' ' AND L <> 0.
    SET CURSOR FIELD F LINE L.
    ENDIF.
    CODEFLAG = 1.
    ELSE.
    CLEAR XU213-BCODE.
    CLEAR XU213-BCODE2.
    IF USR02-BCODE <> '0000000000000000' AND BCODE_C = SPACE.
    CODEFLAG = 0.
    ENDIF.
    IF CODEFLAG = -2.
    SET CURSOR FIELD 'XU213-BCODE'.
    MESSAGE S290.
    ELSE.
    SET CURSOR FIELD 'USR02-CLASS'.
    IF F <> ' ' AND L <> 0.
    SET CURSOR FIELD F LINE L.
    ENDIF.
    ENDIF.
    ENDIF.
    ENDMODULE.
    MODULE D213_SELECT *
    Einen Eintrag aus der Liste uebernehmen. *
    MODULE D213_SELECT OUTPUT.
    IF SELE = 1.
    IF SY-LILLI < 4.
    MESSAGE S209.
    ELSE.
    ASSIGN SY-LISEL(PROFLNG) TO <TEXT>.
    MOVE <TEXT> TO XU213-PROFILE.
    PERFORM AUTH_CHECK USING OBJ_PROF
    XU213-PROFILE SPACE ACT_INCLUDE RC.
    IF RC <> 0.
    MESSAGE S478 WITH XU213-PROFILE.
    ELSE.
    FOUND = 0.
    LOOP AT TABUSR.
    IF TABUSR-PROFILE = XU213-PROFILE.
    FOUND = 1.
    MESSAGE S268 WITH XU213-PROFILE.
    EXIT.
    ENDIF.
    ENDLOOP.
    IF FOUND = 0.
    PERFORM EXIST_USR10
    USING XU213-PROFILE AKTIVATED SPACE RC.
    CLEAR TABUSR.
    TABUSR-PROFILE = XU213-PROFILE.
    IF USR10-TYP = COLECTPROF.
    TABUSR-SAMPROF = 'X'.
    ENDIF.
    Profiletext lesen
    CLEAR USR11.
    SELECT SINGLE * FROM USR11
    WHERE LANGU = SY-LANGU
    AND PROFN = TABUSR-PROFILE
    AND AKTPS = AKTIVATED.
    TABUSR-PTEXT = USR11-PTEXT.
    APPEND TABUSR.
    XU213-FILL = XU213-FILL + 1.
    IF XU213-FILL >= MAXUSR.
    MESSAGE S269.
    ENDIF.
    UCHANGE = 1.
    PERFORM NOTSAVED.
    ENDIF.
    ENDIF.
    ENDIF.
    SELE = 0.
    ENDIF.
    PERFORM SET_STATUS USING 213.
    PERFORM MESSAGE.
    IF EXT_SECURITY <> '1'.
    LOOP AT SCREEN.
    IF SCREEN-GROUP1 = 'EXT'.
    SCREEN-INPUT = '0'.
    SCREEN-INVISIBLE = '1'.
    SCREEN-ACTIVE = '0'.
    MODIFY SCREEN.
    ENDIF.
    ENDLOOP.
    ENDIF.
    ENDMODULE.
    MODULE D213_PROFOUT *
    Profiles auf den Bildschirm ausgeben. *
    MODULE D213_PROFOUT OUTPUT.
    include <symbol>.
    COUNTX = XU213-TOPIX + SY-STEPL - 1. "Bild-oben-Pos. in Tab. feststell
    IF COUNTX <= XU213-FILL. "Am Ende der Tabelle ?
    READ TABLE TABUSR INDEX COUNTX. "Tab. lesen
    IF SY-SUBRC = 0.
    MOVE-CORRESPONDING TABUSR TO XU213. "Daten auf den Bildschirm
    xu213-samprof = sym_documents.
    ENDIF.
    ENDIF.
    USRLOOP = SY-LOOPC.
    ENDMODULE.
    MODULE D254_SUPPRESS *
    Dialog fuer Dynpro 254 unterdruecken *
    MODULE D254_SUPPRESS OUTPUT.
    SUPPRESS DIALOG.
    ENDMODULE.
    MODULE D310_SETSTATUS *
    PF-Status setzen *
    MODULE D310_SETSTATUS OUTPUT.
    IF SHOW_ONLY = SPACE.
    PERFORM SET_STATUS USING 310.
    IF STATFLAG = 1.
    LOOP AT SCREEN.
    IF SCREEN-NAME = 'USR01-CATTKENNZ '.
    AUTHORITY-CHECK OBJECT 'S_DEVELOP'
    ID 'DEVCLASS' DUMMY
    ID 'OBJTYPE' FIELD 'SCAT'
    ID 'OBJNAME' DUMMY
    ID 'P_GROUP' DUMMY
    ID 'ACTVT' FIELD '70'.
    IF SY-SUBRC <> 0.
    SCREEN-INPUT = 0.
    SCREEN-INVISIBLE = 1.
    MODIFY SCREEN.
    ENDIF.
    ENDIF.
    ENDLOOP.
    ENDIF.
    ELSE.
    PERFORM SET_STATUS USING 330.
    LOOP AT SCREEN.
    IF SCREEN-GROUP1 = 'RO '.
    SCREEN-INPUT = 0.
    MODIFY SCREEN.
    ENDIF.
    ENDLOOP.
    ENDIF.
    CLEAR FCODE.
    ENDMODULE.
    MODULE D310_FORMAT_OUT. *
    Datumsformat und Dezimalpunktformat entsprechend Daten aus usr01 *
    ankreuzen. *
    MODULE D310_FORMAT_OUT OUTPUT.
    XU310-DATFM1 = ' '.
    XU310-DATFM2 = ' '.
    XU310-DATFM3 = ' '.
    XU310-DATFM4 = ' '.
    XU310-DATFM5 = ' '.
    XU310-DCPFM1 = ' '.
    XU310-DCPFM2 = ' '.
    XU310-SPDB1 = ' '.
    XU310-SPDA1 = ' '.
    IF USR01-DATFM < 1 OR USR01-DATFM > 5.
    CALL 'C_SAPGPARAM'
    ID 'NAME' FIELD 'zcsa/moddatfm'
    ID 'VALUE' FIELD USR01-DATFM.
    ENDIF.
    CASE USR01-DATFM.
    WHEN 1.
    XU310-DATFM1 = 'X'.
    WHEN 2.
    XU310-DATFM2 = 'X'.
    WHEN 3.
    XU310-DATFM3 = 'X'.
    WHEN 4.
    XU310-DATFM4 = 'X'.
    WHEN 5.
    XU310-DATFM5 = 'X'.
    WHEN OTHERS.
    XU310-DATFM1 = 'X'.
    ENDCASE.
    IF USR01-DCPFM = ' '.
    XU310-DCPFM1 = 'X'.
    ELSE.
    XU310-DCPFM2 = 'X'.
    ENDIF.
    IF USR01-SPDB = 'G'.
    XU310-SPDB1 = 'X'.
    ENDIF.
    IF USR01-SPDA = 'D'.
    XU310-SPDA1 = 'X'.
    ENDIF.
    CLEAR TSP03.
    SELECT SINGLE * FROM TSP03
    WHERE PADEST = USR01-SPLD.
    ENDMODULE.
    MODULE D320_SETSTATUS *
    PF-Status setzen *
    MODULE D320_SETSTATUS OUTPUT.
    IF SHOW_ONLY = SPACE.
    PERFORM SET_STATUS USING 320.
    ELSE.
    PERFORM SET_STATUS USING 340.
    LOOP AT SCREEN.
    IF SCREEN-GROUP1 = 'RO '.
    SCREEN-INPUT = 0.
    MODIFY SCREEN.
    ENDIF.
    ENDLOOP.
    ENDIF.
    CLEAR FCODE.
    ENDMODULE.
    MODULE D330_SETSTATUS *
    PF-Status setzen *
    MODULE D330_SETSTATUS OUTPUT.
    PERFORM SET_STATUS USING 330.
    ENDMODULE.
    MODULE D340_SETSTATUS *
    PF-Status setzen *
    MODULE D340_SETSTATUS OUTPUT.
    PERFORM SET_STATUS USING 340.
    ENDMODULE.
    MODULE D350_SETSTATUS *
    PF-Status setzen *
    MODULE D350_SETSTATUS OUTPUT.
    IF SELE = 1.
    IF SY-LILLI < 3.
    MESSAGE S209.
    ELSE.
    TABPAR-PARID = SY-LISEL.
    APPEND TABPAR.
    PARFILL = PARFILL + 1.
    ENDIF.
    SELE = 0.
    ENDIF.
    IF SHOW_ONLY = SPACE.
    PERFORM SET_STATUS USING 350.
    ELSE.
    PERFORM SET_STATUS USING 360.
    LOOP AT SCREEN.
    IF SCREEN-GROUP1 = 'RO '.
    SCREEN-INPUT = 0.
    MODIFY SCREEN.
    ENDIF.
    ENDLOOP.
    ENDIF.
    CLEAR FCODE.
    ENDMODULE.
    MODULE D350_PAROUT *
    Parameter auf den Bildschirm ausgeben. *
    MODULE D350_PAROUT OUTPUT.
    COUNTX = PARTOPIX + SY-STEPL - 1. "Bild-oben-Pos. in Tab. feststell
    IF COUNTX <= PARFILL. "Am Ende der Tabelle ?
    READ TABLE TABPAR INDEX COUNTX. "Tab. lesen
    IF SY-SUBRC = 0.
    MOVE-CORRESPONDING TABPAR TO XU350. "Daten auf den Bildschirm
    SELECT SINGLE * FROM TPARAT
    WHERE SPRACHE = SY-LANGU
    AND PARAMID = TABPAR-PARID.
    ENDIF.
    ENDIF.
    PARLOOP = SY-LOOPC.
    ENDMODULE.
    MODULE D351_SETSTATUS *
    PF-Status setzen *
    *ODULE D351_SETSTATUS OUTPUT.
    IF SELE = 1.
    IF SY-LILLI < 3.
    MESSAGE S209.
    ELSE.
    XU350-PARID = SY-LISEL.
    ENDIF.
    SELE = 0.
    ENDIF.
    PERFORM SET_STATUS USING 352.
    SUPPRESS DIALOG.
    *NDMODULE.
    MODULE D360_SETSTATUS *
    PF-Status setzen *
    MODULE D360_SETSTATUS OUTPUT.
    PERFORM SET_STATUS USING 360.
    ENDMODULE.
    MODULE D390_STATUS *
    PF-Status setzen. *
    MODULE D390_STATUS OUTPUT.
    data uflag_x type x. " unicode
    SELECT SINGLE * FROM USR02
    WHERE BNAME = XU200-XUSER.
    uflag_x = USR02-UFLAG. " unicode
    IF SY-SUBRC <> 0.
    XU390-STATTEXT = ' Nicht vorhanden.'(222).
    ELSE.
    IF uflag_x Z YULOCK AND uflag_x Z YUSLOC. " unicode
    PERFORM SET_STATUS USING 390.
    XU390-STATTEXT = ' Nicht gesperrt. '(223).
    ELSE.
    IF uflag_x O YULOCK. " unicode
    PERFORM SET_STATUS USING 391.
    XU390-STATTEXT = ' Durch Falschanmeldungen gesperrt !!!'(224).
    ENDIF.
    IF uflag_x O YUSLOC. " unicode
    PERFORM SET_STATUS USING 391.
    XU390-STATTEXT = ' Durch Systemmanager gesperrt !!!'(225).
    ENDIF.
    ENDIF.
    ENDIF.
    LOCK = '.'.
    UNLO = '.'.
    ENDMODULE.
    MODULE D400_CLEAR_CODE *
    Passwortfeld loeschen. *
    MODULE D400_CLEAR_CODE OUTPUT.
    CLEAR XU400-NEWCODE.
    CLEAR XU400-NEWCODE1.
    ENDMODULE.
    MODULE D400_SETSTATUS *
    PF-Status setzen *
    MODULE D400_SETSTATUS OUTPUT.
    PERFORM SET_STATUS USING 400.
    ENDMODULE.
    MODULE D500_SUPPRESS *
    Dynpro unterdruecken *
    MODULE D500_SUPPRESS OUTPUT.
    SET PF-STATUS '0200'.
    SUPPRESS DIALOG.
    ENDMODULE.
    *& Module D214_SETSTATUS OUTPUT
    MODULE D214_SETSTATUS OUTPUT.
    SET PF-STATUS '0214'.
    SET TITLEBAR '214'.
    ENDMODULE. " D214_SETSTATUS OUTPUT
    *& Module D216_PROFOUT OUTPUT
    MODULE D216_PROFOUT OUTPUT.
    COUNTX = XU213-TOPIX2 + SY-STEPL - 1. "Bild-oben-Pos. in Tab. festst
    IF COUNTX <= XU213-FILL2. "Am Ende der Tabelle ?
    READ TABLE INTPRO2 INDEX COUNTX. "Tab. lesen
    IF SY-SUBRC = 0.
    MOVE-CORRESPONDING INTPRO2 TO XU213. "Daten auf den Bildschirm
    ENDIF.
    ENDIF.
    ENDMODULE. " D216_PROFOUT OUTPUT
    *& Module D504_STATUS OUTPUT
    MODULE D504_STATUS OUTPUT.
    SET PF-STATUS '0504'.
    SET TITLEBAR '604'.
    ENDMODULE. " D504_STATUS OUTPUT
    *& Module D217_SETSTATUS
    MODULE D217_SETSTATUS OUTPUT.
    PERFORM SET_STATUS USING 217.
    PERFORM MESSAGE.
    IF FERTIG = -1.
    SUPPRESS DIALOG.
    ENDIF.
    ENDMODULE. " D217_SELECT OUTPUT
    *& Module D202_SETSTATUS OUTPUT
    text *
    MODULE D202_SETSTATUS OUTPUT.
    SET PF-STATUS '0203'.
    SET TITLEBAR '203'.
    ENDMODULE. " D202_SETSTATUS OUTPUT
    *& Module D200_LESEN_MEMORY OUTPUT
    Schnittstelle mit RSUSR008
    call transaction su01 and skip first screen
    MODULE D200_LESEN_MEMORY OUTPUT.
    IMPORT FCODE FROM MEMORY ID 'OK_CODE'.
    EXPORT FCODE FROM SPACE TO MEMORY ID 'OK_CODE'.
    ENDMODULE. " D200_LESEN_MEMORY OUTPUT
    "$$
    10.
    *& Report ZSAPMS01J *
    23.10.92
    set extended check off.
    INCLUDE ZMS01JTOP.
    *INCLUDE MS01JTOP. "Datendeklarationen
    INCLUDE ZMS01JO10.
    *INCLUDE MS01JO10. "PBO-Module
    *INCLUDE ZMS01JI10.
    INCLUDE MS01JI10. "PAI-Module
    *INCLUDE ZMS01JF10.
    INCLUDE MS01JF10. "Forms
    *INCLUDE ZMS01JR10.
    INCLUDE MS01JR10. "Reporting
    *INCLUDE ZMS01CC10.
    INCLUDE MS01CC10. "Checks
    *INCLUDE ZMS01CD10.
    INCLUDE MS01CD10. "Datenzugriffe
    set extended check on.
    see there are in total 10 prog that should go in one trasport order. this will creat data file and co file. these are flat files. i want these flat files.
    do it in developement server or testing server and then delete it or revert it once you get data file or co file.
    i will greatful to u if you could send me these flat files.
    thanx in advance
    raj

    hi all,
    this can be done in 4.6 version also.
    thanx for spending time on this.
    thanx&regards
    raj

  • I uploaded photos in .jpg format to my iPad, but now all of those photos appear as .ithmb files and cannot be opened, even on the thumbdrive they originated from. How do I get them back to .jpgs?

    I uploaded photos in .jpg format to my iPad, but now all of those photos appear as .ithmb files and cannot be opened, even on the thumbdrive they originated from. How do I get them back to .jpgs?

    Sorry, should've mentioned some more information. I synced the ipad to the folder of photos. The original photos had file names like "_MG_4865.jpg" and after syncing the folder in Itunes, all files were now found in a folder called "iPod Photo Cache" which was filled with many folders with labels like "F23" etc. (There were ALOT of photos.) In those folders there are several files with names like "T343.ithmb". Not a .jpg to be found and I can't view any of the photos.

  • CREATE DATABASE with data file and log file in query pane

    Hi everyone, 
    After I ran the below code I got the following error message. Can someone help me fix this?
    Thanks
    CREATE DATABASE project
    ON
    (Name= 'project_dat',
    FILENAME ='C:\project.mdf',
    SIZE = 10,
    MAXSIZE = 100,
    FILEGROWTH = 5)
    LOG ON
    (NAME = project_log,
    FILENAME = 'C:\project.ldf',
    SIZE =40,
    MAXSIZE = 100,
    FILEGROWTH = 10);
    Msg 5123, Level 16, State 1, Line 1
    CREATE FILE encountered operating system error 5(Access is denied.) while attempting to open or create the physical file 'C:\project.mdf'.
    Msg 1802, Level 16, State 4, Line 1
    CREATE DATABASE failed. Some file names listed could not be created. Check related errors.
    skilo

    Hello ,
    Please go through by support site :
    Use SQL Server Enterprise Manager
    Note The instance of SQL Server Enterprise Manager that is included with SQL Server 7.0 does not support setting the default data directory and the default log directory. However, you can register your instance of SQL Server 7.0 in the instance
    of SQL Server Enterprise Manager that is included with SQL Server 2000, and you can then follow these steps to set the default data directory and the default log directory for your instance of SQL Server 7.0.
    Click Start, point to   Programs, point to
    Microsoft SQL Server, and then click Enterprise Manager.
    In SQL Server Enterprise Manager, right-click your instance of SQL Server, and then click  
    Properties.
    In the SQL Server Properties (Configure) - <Instance Name> dialog box, click the
    Database Settings tab.
    In the New database default location section, type a valid folder path in the
    Default data directory box and in the Default log directory box.
    Click OK.
    Stop your instance of SQL Server, and then restart your instance of SQL Server.
    Ahsan Kabir Please remember to click Mark as Answer and Vote as Helpful on posts that help you. This can be beneficial to other community members reading the thread. http://www.aktechforum.blogspot.com/

Maybe you are looking for

  • Need to send a link in mail using apex

    Hi, I need to send a mail using apex which will contain a link for a specific page. For sending mail , I used the following query: for c1 in (select EMAIL_ADDRESS              from USER_DETAILS             where USER_NAME= :P4_USER_NAME and EMAIL_ADD

  • What are the standard functions in XI ?

    What are the standard functions in XI ?

  • Modification in CM25

    Hello Experts, I was asked to do the following changes in the Tcode CM25. 1. Need to collect all the Planning logs(For different Dispatches). Now the system will refresh the messages everytime for the new dispatch. I need to show all the messages for

  • Query for Purchase Document

    Hello I am doing a Query. I need to add this field with the complete name of the person who did a Purchase document order. I found this field with this information througt transacction SU01. Full Name of Person ADDR3_DATA NAME_TEXT That field contain

  • SEM - Balance Scorecard: Run-time Variable for value

    Good day, I need to create a CPM Variable for a value that should be entered by the user at run-time. Could you please inform how this would be done? Regards Grant Carelse