How to check pc file path validity?

Hi,
   In my program I have to extract so much SAP data and write in a file in the fornt-end PC. In the selection screen I will input the filepath\name to write the data.
But how should I check whether the filepath is valid or not in the 'AT SELECTION-SCREEN' event itself? so that if it is not valid path, I can give an error message before extracting all the SAP data.
Thank you!
Sunitha.

Hi Sunitha,
Please check the following sample code from other thread at selection screen value request event.
Using ABAP Objects:
PARAMETER : p_file LIKE rlgrap-filename.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR path.
DATA: directory TYPE string,                            
      filetable TYPE filetable,                         
      line      TYPE LINE OF filetable,                 
      rc        TYPE i.                                 
CALL METHOD cl_gui_frontend_services=>get_temp_directory
  CHANGING                                              
      temp_dir = directory.      
CALL METHOD cl_gui_frontend_services=>file_open_dialog  
  EXPORTING                                             
      window_title      = 'SELECT THE FILE'         
      initial_directory = directory                     
      file_filter       = '*.XLS'                       
      multiselection    = ' '                           
    CHANGING                                            
      file_table        = filetable    
      rc                = rc.                       
IF rc = 1.                                          
  READ TABLE filetable INDEX 1 INTO line.           
  P_FILE = line-filename.                         
ENDIF.   
Using Normal ABAP:
DATA: P_FILE LIKE RLGRAP-FILENAME,
      DPATH LIKE RLGRAP-FILENAME,
      UPATH LIKE RLGRAP-FILENAME,
      MODE TYPE C,
      FLG_UD TYPE C.
CALL FUNCTION 'WS_ULDL_PATH'
  IMPORTING
    DOWNLOAD_PATH = DPATH
    UPLOAD_PATH   = UPATH.
IF FLG_UD <> 'D'.
  DPATH = UPATH.
  MODE = 'O'.
ELSE.
  MODE = 'S'.
ENDIF.
CALL FUNCTION 'WS_FILENAME_GET'
  EXPORTING
    DEF_FILENAME     = '*.XLS'
    DEF_PATH         = DPATH
    MASK             = ',*.XLS,*.*,*.*.'
    MODE             = MODE
  IMPORTING
    FILENAME         = P_FILE
  EXCEPTIONS
    SELECTION_CANCEL = 3.
IF SY-SUBRC <> 0.
  EXIT.
ENDIF.
Hope this will help.
Regards,
Ferry Lianto

Similar Messages

  • How to give dynamic file path in the selection  screen

    Hi All,
    How to give dynamic file path f4 functionality to user on the selection so that he can browse for the path in the presentation serve? I believe there is one fun module is there for this purpose I am not getting that
    Please help me in this regard.
    Thanks&Regards
    Mahesh

    HI,
    check this program.
    <b>report ZWA_TEST2.
    PARAMETERS: a(100) default 'PRESS F4'.
    data: filet type table of FILE_TABLE.
    data: wa type file_table.
    data: count type i.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR a.
    CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG
      CHANGING
        FILE_TABLE              = filet
        RC                      = count .
    loop at filet into wa.
      a = wa-FILENAME.
    endloop.</b>
    Regards,
    HRA

  • How to get the file path in adf application

    hii all,
    i have a txt file that i am using in my adf application,
    i am passing this txt file through a File Reader, for which i have to mention the file path.
    The file is in web-content and when i am hard coding the complete file path i.e C:/JDeveloper/myApp/ViewController/public_html/log.txt
    the application is working fine when run on integrated weblogic server.
    My requirement is to access this file without giving the static file path, as in case i have to use this application on any other machine..
    for that how to mention the file path-
    i tried using FacesContext to get the context path :-
    FacesContext.getCurrentInstance().getExternalContext().getRequestContextPath();
    which gives me
    \myApp-ViewController-context-root
    after appending public_html\log.txt
    I am using the following path to access the file :-
    \myApp-ViewController-context-root\public_html\log.txt
    again i am getting the java.io.FileNotFoundException
    Does anyone know how to use file from inside the web-content without giving the complete path..???
    Thanks

    Hi,
    If you put your file under public_html folder, you can use this code to access the file:
    For example file is : log.txt
    FacesContext.getCurrentInstance().getExternalContext().getRealPath('/log.txt').toString().trim();
    Thanks.
    - LSR

  • File browse : How to keep the file path in the file browse field?

    Hello,
    I have
    1) file browse field called P2_FILE_PATH.
    2) a select list with submit : P2_REGION
    If i upload some file d:\abc.gif , then select some region in the P2_REGION,
    P2_FILE_PATH will become empty. But in the session, i can find the blob value. but not the "d:\abc.gif "
    Using the following script I could capture the value of P2_FILE_PATH in a field
    P2_TEST.
    onload="javascript:document.getElementById(P2_FILE_PATH').value = document.getElementById('P2_TEST').value;"
    P2_TEST contains d:\abc.gif .
    How to retain the file path, though some other field is selected and submitted?
    Thanks in advance.
    Regards,
    Archana

    Hello Archana,
    You can't do what you want because of some HTML security restrictions – nothing to do with APEX. As you found out, You can capture the value of this item. You can't set it. After submitting the page, the browser is the one to clear the item.
    The only workaround is to work with AJAX and not submit the page until the end of the user input phase.
    Regards,
    Arie.

  • How to give the file path in adf application

    Hii all,
    I want to use castor xml framework in adf application..
    for which i have to un- marshaller the xml file..
    by using following method-
    Person person = (Person)
    Unmarshaller.unmarshal(Person.class,
    new FileReader("src/com/person.xml"));
    if i use this method in a java class inside a main method directly it works fine,
    but when i try to initiate the java class through a jspx page deployed on integrated server..
    it gives the file not found exception..
    how to define the file path so it can be properly used even when application is deployed on server.
    Thanks

    duplicate {thread:id=2418158} ?
    I guess the path you are using is wrong. It works on your mashiene as the src path is available. When you run the app on a server (jspx file) there is no src path as long as you don't include it in your WAR wich you should not do anyway.
    If you need to access such data you can create a folder in your webroot folder and the the resources from there as /xml_folder_name or if the xml files shouldn't be visible from the outside put the folder under hte web-inf folder.
    Timo
    Edited by: Timo Hahn on 23.07.2012 16:20

  • How to use XSJS file path in Controller.js file

    Hi Experts,
    Regarding How to use XSJS file path in Controller.js file.
    I have gone through the SAP HANA Extended Application Services (Thomas Jung http://scn.sap.com/community/developer-center/hana/blog/2012/11/29/sap-hana-extended-application-services article.)
    Seems to be there is no information about the same. May be the article is targetted for Beginners and above. As I am a learner I am not able to do the same.
    var aUrl = '../../logic/demo_main.xsjs? (highlighted)
    Suppose my XSJS file is at http://ipaddress:8000/newtest/Func.XSJS.
    Can I use like below
    var aUrl = 'http://ipaddress:8000/newtest/Func.xsjs?
    or
    var aUrl = '../../newtest/Func.xsjs?
    I tried with multiple options but not able to get the expected output.
    Can you please provide more details on this?

    Dear Thomas,
    I am a abap developer , recently we meet a problem on our webdynpro report performnace issue. As in the development, we use SALV_WD_TABLE to design a ALV. and verything work correctly in our DEV system.
    But after when our QAS system, there are more records for the ALV, one of them has 21000 records. And in the layout, we have a column as checkbox.
    If we click any one checkbox, then the layout will respond almost 1~2 minutes. With debug I found the most time cost in the standard program.
    And with search I found that you have solution to solve it as 1,000,000 rows.
    So is it possible to provide some idea or solution to us?
    Many thanks for your help!
    BR
    Vincent Chen

  • How to set default file path while downloading alv output

    Hi,
    Can anyone tell me that how to set default file path while downloading the ALV output to system using Local file button on tool bar.
    Please look below screenshots:
    Kindly help me resolve it.
    Thanks in advance.
    Regards,
    Ashutosh Katara

    This information initial value is (maybe) stored in Windows Register (register.exe) at Software\SAP\SAPGUI Front\SAP Frontend Server\Filetransfer -> PathDownload, you can read it thru class CL_GUI_FRONTEND_SERVICES method GET_UPLOAD_DOWNLOAD_PATH and update it thru method REGISTRY_SET_VALUE. (Else there may be some parameter ID to force data, but I'm no longer sure)
    Regards,
    Raymond

  • How to set the file path dynamically based on sytem, username, and date

    Hi All,
    My requirement is upload the data into one  structure like xyz that is related to t.code MCSZ.
    file will be in  UNIx SERVER .
    PATH IS: /sapif
    file name is xy789 load .txt
    I have  to write code in one user-exit
    how can i set the file path for this.
    shall i put hard code file path?
    because i have to writecode in user-exit.
    plz tell me how to set the file path based ons syetem, username, date
    Thanks in advance
    Ram.A

    Concatenate the field SY-SYSID, SY-UNAME and SY-DATUM for the file path

  • How to validate the file path when downloading.

    Hi
    How to validate the file path when downloading to Presentation or application Server.

    hiii
    you can validate file path by following way
    REPORT zvalidate.
    TYPE-POOLS: abap.
    DATA: w_direc TYPE string.
    DATA: w_bool TYPE abap_bool.
    w_dir = 'c:\Myfolder\'.
    CALL METHOD cl_gui_frontend_services=>directory_exist
    EXPORTING
    directory = w_direc
    RECEIVING
    result = w_bool
    EXCEPTIONS
    cntl_error = 1
    error_no_gui = 2
    wrong_parameter = 3
    not_supported_by_gui = 4
    OTHERS = 5.
    IF NOT w_bool IS INITIAL.
    WRITE:/ 'Directory exists.'.
    ELSE.
    WRITE:/ 'Directory does not exist.'.
    ENDIF.
    regards
    twinkal

  • How to get full file path while uploading a file in flex Applications

    How to get full file path while uploading a file in flex applications.
    FileReference Object is giving file name and other details but not the actual path.
    Is there any workaround to to get the file path?.
    Thanks

    Why not ask in the Flex forum; it is more likely that someone over there knows.

  • How to Check a file in the directory..

    Dear,
    Pl. do suggest me how to check a file (e.g. abc.txt) is in the directory (say d:\Print).
    Do tell me how to check whether this file is exist in the directory or not???
    Thanx in Advance.
    Bhavesh

    Hi
    You can use Win_Api_Utility.Copy_File cmd. IF the file does not exist r the file was not copied to the destination properly, it will raise no_data_found error. See Forms help - Find option for syntax & more details.
    I've used it & works well.
    Regards
    APK

  • I am planning to take unlocked  iphone5 which is from USA, let me to know how to check the phone is valid ?

    i am planning to take unlocked  iphone5 which is from USA, let me to know how to check the phone is valid ?.How can i check is that properly unlocked, stolen and service.

    IF you can actually yet purchase an unlocked iPhone4 8GB from the US Retail stores is not clear
    They are certainly available from Apple.com but only if you have a US credit card and a US delivery address
    I suspect you do not fit this requirement
    You also have to be careful as the Apple Retail stores sell no contract iPhones these are NOT unlocked
    However if you are able to purchase an unlocked iPhone4 8GB then it will certainly work with the Approved carriers in India

  • How to check amsilent file in Sun Access manager patch or redeploying WAR's

    h1. How to check amsilent file in Sun Access manager patch or redeploying WAR's
    I had a hard time getting all the passwords correct, so I wrote a shell (bash) script that uses most passwords and other parameters in searches and queries. It let's you know before you start if a value is wrong. It does not change anything, only queries.
    h2. One pitfall I found ...
    during the postinstall of patch 05. I told Sun about it, but I suspect it was too late and is also an issue with patch 06:
    Look at the documentation regarding amconfig and the amsilent file:
    http://docs.sun.com/app/docs/doc/819-2137/adsav?l=en&q=amconfig&a=view
    Two problems that are clear to me now:
    1. ADMINPASSWD in practice, this password is used for cn=puser, not amadmin as it says. Perhaps there is something that makes them the same. It was the same for me, so it probably does not matter.
    2. AS81_ADMINPASSWD is not the same as ADMINPASSWD using either my definition or the document's definition. However, in the amsilent template, it is set like this, which I found is incorrect and the cause of my recent hair loss:
    <blockquote>AS81_ADMINPASSWD="$ADMINPASSWD"</blockquote>
    Also, this one if you use the web server:
    <blockquote>WL8_PASSWORD="$ADMINPASSWD"</blockquote>
    Delete the $ADMINPASSWD and replace it with the password for the app/web server.
    h2. The Script.
    It tests for the above problem, but I just realized it does not check $ADMINPASSWD. If that is set incorrectly in your amsilent, you'll get errors immediately from amconfig, so no big deal. If you make improvements, please post a reply!
    Paste this into a file named checkamsilent. LDAP and appserver must be running. It reads /opt/SUNWam/amsilent. Run it as root or use sudo:
    sudo ./checkamsilent
    #!/usr/bin/bash
            echo "This will test several important parameters of the amsilent file "
            echo "run this as root."
            echo "### read in the amsilent parameters"
            echo "source /opt/SUNWam/amsilent  "
    source /opt/SUNWam/amsilent
            echo "### look for the *server port* with LISTNER, otherwise it's not listening. "
            echo "netstat -a | grep $SERVER_PORT    "
            echo "--------------"
    netstat -a | grep $SERVER_PORT  
            echo "--------------"
            echo "."
            echo "### *admin port* with LISTNER, otherwise it's not listening. "
            echo "netstat -a | grep $ADMIN_PORT   "
            echo "--------------"
    netstat -a | grep $ADMIN_PORT 
            echo "--------------"
            echo "."
            echo "### Expect to see a line of XML, otherwise the SERVER_PORT is incorrect in the amsilent file."
            echo "grep $SERVER_PORT  ${AS81_INSTANCE_DIR}/config/domain.xml  "
            echo "--------------"
    grep $SERVER_PORT  ${AS81_INSTANCE_DIR}/config/domain.xml
            echo "--------------"
            echo "."
            echo "### Expect to see a line of XML, otherwise the ADMIN_PORT is incorrect in the amsilent file."
            echo "grep $ADMIN_PORT  ${AS81_INSTANCE_DIR}/config/domain.xml "
            echo "--------------"
    grep $ADMIN_PORT  ${AS81_INSTANCE_DIR}/config/domain.xml
            echo "--------------"
            echo "."
            echo "### bind as the directory manager "
            echo "ldapsearch -v -h $DS_HOST -p 3892  -L -s sub -D \"$DS_DIRMGRDN\" -w \"$DS_DIRMGRPASSWD\" -b 'dc=nsf, dc=gov' \"cn=amldapuser\"" 
    ldapsearch -v -h $DS_HOST -p 3892  -L -s sub -D "$DS_DIRMGRDN" -w "$DS_DIRMGRPASSWD" -b 'dc=nsf, dc=gov' "cn=amldapuser" 
            echo "."
            echo "### check the amldapuser password. "
            echo "ldapsearch -w $AMLDAPUSERPASSWD -v -h $DS_HOST -p 3892  -L -s sub -D cn=amldapuser,ou=DSAME Users,dc=nsf,dc=gov -b ou=DSAME Users,dc=nsf,dc=gov cn=* cn  "
    ldapsearch -w "$AMLDAPUSERPASSWD" -v -h $DS_HOST -p 3892  -L -s sub -D "cn=amldapuser,ou=DSAME Users,dc=nsf,dc=gov" -b "ou=DSAME Users,dc=nsf,dc=gov" cn=* cn
            echo "."
            echo "### check the app server admin: AS81_ADMIN password: AS81_ADMINPASSWD  and port: ADMIN_PORT "
         echo "### That's actually a bug in the template.  "
         echo "### Do not use AS81_ADMINPASSWD=\$ADMINPASSWD  Make sure they are  different passwords! Don\'t use the default!"
         echo "Expect to see a WARNING about --password option. "
            echo "/opt/SUNWappserver/appserver/bin/asadmin  list-http-listeners --user $AS81_ADMIN --port $ADMIN_PORT  -w $AS81_ADMINPASSWD  "
    /opt/SUNWappserver/appserver/bin/asadmin  list-http-listeners --user $AS81_ADMIN --port $ADMIN_PORT  -w "$AS81_ADMINPASSWD"
            echo "done!"

    I change the product machine from LG optimus to Samsung Galaxy but the file writing is not working, too.
    I copied the source code from Adobe website about FileStream  but it is needless too.
    -----------------program code------------------------
    import flash.filesystem.*;
    import flash.filesystem.FileStream;
    import flash.events.Event;
    //txtFld is a standard textField component
    txtFld.text = "Start";var file:File = new File();
    //btnSaveFile is a standard button component
    btnSaveFile.addEventListener(MouseEvent.CLICK,handlerBtnSaveFile);
    function handlerBtnSaveFile(e:Event){
    txtFld.text = "Pressed";
    file = File.documentsDirectory;
    file = file.resolvePath("test.txt");
    var fileStream:FileStream = new FileStream();
    fileStream.openAsync(file, FileMode.WRITE);
    fileStream.writeUTFBytes("Hello");
    txtFld.text = file.nativePath.toString();
    //fileStream.addEventListener(Event.CLOSE, fileClosed);
    fileStream.close();
    fcnFileName();
    function fcnFileName(){
    txtFld.text = file.name.toString();
    function fileClosed(event:Event):void {
        trace("closed");
    txtFld.text = "FileClosed";

  • How to set the File Path to run a javascript using Plugin Code?

    Hi All,
    Im new to Indesign Plugin Development.Can any one help me out with my problem.
    What i want to do is to run a javascript using Plugin Code.When i went through this forum i was able to find out that i should use the IscriptRunner Class to automate this.I could also figure out that the Member Function to use is "CanHandleFile" &"RunFile".
    The first parameter in CanHandleFile & RunFile Member Function is to specify the path of the JavaScript File i suppose!I could also find out that IDFile has to used to set the file path Information.
    But im clueless how to set the Javascript FilePath using IDFile.Can any one help me how to do this?Any Code Snippets Please?
    Waiting for reply.
    Thanks
    myRiaz

    Hi,  Andreas<br /><br />  Can you explain this in detail? I found it in your post before.<br /><br />  The content of elements are returned through the Characters callback function:<br /><br />From ISaxContentHandler.h:<br /><br />/**<br />        Receives character data<br /><br />The parser will call this method to report each chunk of<br />        character data. SAX parsers may return all contiguous<br />        character data in a single chunk, or they may split it into<br />        several chunks. But all characters in any single<br />        event must come from the same external entity so the<br />        Locator provides useful information.<br /><br />Note some parsers will report whitespace using the<br />        IgnorableWhitespace() method rather than this one (validating<br />        parsers must do so).<br /><br />@param Chars The characters from the XML document.<br />        */<br />virtual void Characters(const PMString& chars) = 0; <br /><br />  What i have done is implement my own SAXContentHandlerServiceBoss, and in my file XXXSAXContentHandler.cpp, I override the fonctions StartElement, EndElement, and Characters() like below: I add the PMString xmlData to collect the file content:<br /><br />class XXXSAXContentHandler : public CSAXContentHandler<br />{<br />void XXXSAXContentHandler::Characters(const WideString& chars)<br />{<br />xmlData.Append(chars);<br />}<br /><br />void XXXSAXContentHandler::StartElement(const WideString& uri, const WideString& localname, const WideString& qname, ISAXAttributes* attrs)<br />{<br />xmlData.Append("<"); xmlData.Append(localname); xmlData.Append(">");<br />}<br />void XXXSAXContentHandler::EndElement(const WideString& uri, const WideString& localname, const WideString& qname)<br />{<br />xmlData.Append("</"); xmlData.Append(localname); xmlData.Append(">");<br />}<br /><br />}<br /><br />and in my program, I use the code below to call the fonction I overrided, but I dont know how I can get the String xmlData I defined in the XXXSAXContentHandler.cpp<br /><br />InterfacePtr<IK2ServiceRegistry> serviceRegistry(gSession, UseDefaultIID());<br /><br />InterfacePtr<IK2ServiceProvider> xmlProvider(serviceRegistry->QueryServiceProviderByClassID(kXMLParserService, kXMLParserServiceBoss));<br /><br />InterfacePtr<ISAXServices> saxServices(xmlProvider, UseDefaultIID());<br />InterfacePtr<ISAXContentHandler> saxHandler(::CreateObject2<ISAXContentHandler>(kXXXSAXContentHandlerServiceBoss));<br />saxHandler->Register(saxServices);<br />bool16 parseFailed = saxServices->ParseStream(readStream, saxHandler);<br /><br />Can you give me any help?<br /><br />Thanks and regards!

  • File Path Validation

    Hi,
    I have to move my data from my program to a flat file on the Application/ Presentation Server. Now i need to validate whether the path provided by user is a valid one or not.
    For eg. If the User enter \usr\sap\ in the presentation server path. The file shd not be saved there instead the user shd get a message to give the correct file path.
    And in case of Application Server if the user enters c:\temp it shd not accept. Also if the user gives some random value ksdjfhakf.txt in the file path it shd not take.
    Please let me know how can we acheive this.
    Regards,
    FS

    Hi
    Validating file path on the Presentation Server
    To validate a file path on the presentation server, use the method directory_exist available in the class cl_gui_frontend_services.
    Demo program to validate the file path on the presentation server:
    REPORT  zdir_test.
    TYPE-POOLS: abap.
    DATA: v_dir TYPE string.
    DATA: v_bol TYPE abap_bool.
    v_dir = 'c:\sap\'.
    CALL METHOD cl_gui_frontend_services=>directory_exist
      EXPORTING
        directory            = v_dir
      RECEIVING
        result               = v_bol
      EXCEPTIONS
        cntl_error           = 1
        error_no_gui         = 2
        wrong_parameter      = 3
        not_supported_by_gui = 4
        OTHERS               = 5.IF NOT v_bol IS INITIAL.
      WRITE:/ 'Directory exists.'.
    ELSE.
      WRITE:/ 'Directory does not exist.'.
    ENDIF.
    PLZ reward if helpful,
    Thanks,
    S.Gangi reddy.

Maybe you are looking for

  • Is there a way to prevent the video chat from resi...

    When doing a video chat with one person, said person can see my video feed fine which is 16:9. He see's the full screen and all the text on both sides of the screen. Problem is when others join in the video chat, skype resizes or crops my feed to the

  • Bridge has error when adding additional keywords to InDesign snippet IDMS files

    I have recently created a whole library of InDesign Snippets. I opened Bridge to add keywords to these files. I can add the first keyword with no problem, but when I try to add a second keyword, I get this error: "There was an error writing metadata

  • How to avoid starting of workflow ?

    hi there, i have a problem: on BO BUS2089 (Travel) i have a event 'CREATED' on that event i have a workflow. everytime the event is raised the workflow starts. so far so good, BUT: i ONLY want to start the workflow when the travel-request is created

  • Spry Image Slideshow w/Filmstrip - Eliminating space around SS images?

    Hello, I can not locate the file/setting to eliminate all the space around the Slideshow images?  In Design/Code view, the SS appears nicely positioned in the table, however when I publish the page, I've got a ton of wasted space below the SS? How do

  • Can't see HP Laserjet 3055 with Bonjour on wireless network

    The printer is an HP Laserjet 3055 with Bonjour and is plugged into the LAN with an Ethernet cable. An eMac which is also connected to the network via Ethernet can see, print and scan without any issues whatsoever. All wireless computers cannot see t