Validate filenames

Hello everyone,
I am creating files with a program that I have created but there is something I can't seem to succeed to fix.
I have a choice of either doing a logical file, a UNIX file or a physical file.
Though, I need to check if the name in the appropriate textbox where the file name is written is something valid. For example... In a physical file, you have to write C:\MyDocuments\SAP\test.csv
But if I write "anything" instead, I would like it to say "Hey! That's not something valid!" Of course, I saw many things that check the existence of files but I don't want to see if the file exists since if it doesn't exist, it will create one. I just want to see if what is written in the textboxs for the logical file name, the UNIX file name and the Physical file name makes sense...
Is there something (or a few things) in SAP that can help me to validate those filenames for the three files types?
Thank you greatly for your help.
Edited by: SBenoit on Aug 11, 2011 9:50 PM

Hello Benoit,
For local PC file:
I believe SAP will automatically create FILE for you while downloading itself.  So, what you can do is you go for the directory validation instead of File (though File existence check is also available). So you better split the input variable at last '/' and then check directory.
C:\MyDocuments\SAP\test.csv ==> Split into lv_dir and lv_file
lv_dir = C:\MyDocuments\SAP
lv_file = test.csv
Then use, CL_GUI_FRONTEND_SERVICES=>DIRECTORY_EXIST for checking if lv_dir exist, if yes, proceed to download File.
If it is not existing, use CL_GUI_FRONTEND_SERVICES=>DIRECTORY_CREATE to create it, if you get an error in creation throw error that ' "Hey! That's not something valid!" '.
i believe for unix file, Directory can't be created at runtime using ABAP and should pre-exist but the File is automatically created if not existing earlier. So, just use open dataset command and raise an error of invalid path if sy-subrc fails. You can also use function like EPS_GET_DIRECTORY_LISTING to validate a path (after splitting away Filename) if you need a validation firsthand.  Other functions in same Fgrp might also interest you.
BR,
Diwakar

Similar Messages

  • Validate filename and filepath

    I have a physical file name and file path.
    Please send code or FM for the validation of corrct file path and existance of file in application server .
    Thanks

    Hi,
    Check this code :
    data: begin of it_filedir occurs 10.
    include structure salfldir.
    data: end of it_filedir.
    <b>validation of corrct file path</b>
    Get Current Directory Listing for OUT Dir
    call function 'RZL_READ_DIR_LOCAL'
    exporting
    name = p_fdir
    tables
    file_tbl = it_filedir.
    if 'it_filedir' contains any records , that means given path is valid.
    <b>existance of file in application server</b>
    List of files are contained within table it_filedir
    loop at it_filedir.
    if x_file eq  it_filedir-NAME.
    file exist
    endif
    endloop.
    check this FM : '/SAPDMC/LSM_F4_SERVER_FILE' also
    Regards
    Appana
    *reward points for helpful answers

  • Validate filenames in Unix using PLSQL

    Hello,
    I need to check for the existence of files and its contents in a given directory that exist on a unix server using PLSQL. Could anyone suggest me how do I approach this? I am using Oracle 10g database.
    Message was edited by:
    user519027

    Again, taking a step back, nothing I could possibly do on Machine A could possibly allow it to execute anything on Machine B unless Machine B had been set up, somehow, to permit that sort of thing. Generally, that is going to require some sort of "listener" on Machine B that can process remote requests, execute the appropriate programs/ scripts/ etc., and return the results.
    Think of the security problems that would arise if you could install something on one machine and then, suddenly, be able to execute arbitrary scripts on another machine...
    Of course, you could certainly configure something on the machine where the scripts reside that would permit them to be executed remotely and then have your local machine call that "listener" process via whatever protocol it understood. For example, you could install a web server on the remote machine, configure the web server to execute certain scripts when appropriate URLs are hit, and then use UTL_HTTP in your local Oracle database to generate that HTTP traffic. Of course, that's one of many, many options for an appropriate listener...
    Justin

  • Error : Create Application server Connection.

    Hi Friends,
    I am new to SOA Suite,
    I have installled SOA sute on my laptop on which i have Oracle -E-Business Suite R12.
    I have installed "soa_windows_x86_101310_disk1_1" and J-Dev "jdevstudio10134"
    My SOA suite is working fine (I think so) but when i am connecting thrpugh J-Develover i am getting error in the 4th step (Test)
    The credential i am giving
    1 AppServerConnection1
    2Connection Type : Oracle AS 10g 10.1.3
    3 user Name and Pwd which was given at the time of installation.
    4 Connect to : single instance
    5 Host name : Localhost
    6 oc4jinstance name : home
    7 OPMN port : 6003
    and then trying test and getting error.
    Error getting OC4j Process for : opmn-home+oc4j-localhost-6003-default: Error Connecting to OPMN(is it OPMN running?) connection refused connect.
    I tried same thing on a different machine where this is working fine confused why it's not working on this machine. i have to do some integration work with BPEL and SOA with R12 hence this need to be installed on this machine.
    Please help.
    Bachan

    Hi James,
    I am getting this things please check and suggest.
    As i am using 10.1.3.4.0 J-Dev hence i am downloading a patch set mentioned below. please suggest if i am picking wrong patch set.
    Patchset: 10.1.3.4.0     20-Oct-2006
      This patchset is not a standalone installation, it gets applied to an existing installation. You can apply this patchset to any earlier 10.1.3.x installation (i.e., the base release or any previous patchsets, even if you installed MLRs.) This is a cumulative patchset and includes all fixes from earlier patchsets. Download patchset number 7272722 from Metalink. Download size: 733 MB. Output which u have requested for.
    E:\SOA_AS\10.1.3.1\OracleAS_1\opmn\bin>opmnctl
    usage: opmnctl [verbose] [<scope>] <command> [<options>]
    verbose: print detailed execution message if available
    Permitted <scope>/<command>/<options> combinations are:
    scope    command       options
              start                         - Start opmn
              startall                      - Start opmn & all managed processes
              stopall                       - Stop  opmn & all managed processes
              shutdown                      - Shutdown opmn & all managed processes
    [<scope>] startproc   [<attr>=<val> ..] - Start opmn managed processes
    [<scope>] restartproc [<attr>=<val> ..] - Restart opmn managed processes
    [<scope>] stopproc    [<attr>=<val> ..] - Stop opmn managed processes
    [<scope>] reload                        - Trigger opmn to reread opmn.xml
    [<scope>] status      [<options>]       - Get managed process status
    [<scope>] dmsdump     [<attr>=<val>&..] - Get DMS stats
    [<scope>] set         [<attr>=<val> ..] - Set opmn log parameters
    [<scope>] query       [<attr>=<val>]    - Query opmn log parameters
              ping        [<max_retry>]     - Ping local opmn
              validate    [<filename>]      - Validate the given xml file
              config      [<options>]       - Modify the opmn xml file
              help                          - Print brief usage description
              usage       [<command>]       - Print detailed usage description
    E:\SOA_AS\10.1.3.1\OracleAS_1\opmn\bin>opmnctl ping
    opmnctl: ping succeeded.
    E:\SOA_AS\10.1.3.1\OracleAS_1\opmn\bin>opmnctl startall
    opmnctl: starting opmn and all managed processes...
    E:\SOA_AS\10.1.3.1\OracleAS_1\opmn\bin>opmnctl status
    Processes in Instance: oc4jadmin.lk
    ---------------------------------+--------------------+---------+---------
    ias-component                    | process-type       |     pid | status
    ---------------------------------+--------------------+---------+---------
    OC4JGroup:default_group          | OC4J:home          |     920 | Alive
    ASG                              | ASG                |     N/A | Down
    E:\SOA_AS\10.1.3.1\OracleAS_1\opmn\bin>Waiting for your reply.
    Thanks
    Bachan.

  • Getting OPMN error while starting Oracle SOA Suite

    Configuration information
    Running in C:\product\10.1.3.1\OracleAS_1
    Operation mode:Stop, App Server, No Enterprise Manager, Single Instance
    Oracle home:C:\product\10.1.3.1\OracleAS_1
    Oracle home name:Unnamed
    Instance name:SOA_1.S119SNIQ056995.schneider.com
    Instance type:allProducts
    Version:10.1.3.3.0
    Uses infrastructure:false
    Not an infrastructure instance, no infrastructure information available
    Components:[j2ee, orabpel, oraesb, owsm, Wsil]
    2008-03-02 05:20:29.571--Begin log output for Mid-tier services (SOA_1.S119SNIQ056995.schneider.com)
    2008-03-02 05:20:29.604--Processing Step: stopping OPMN managed processes
    2008-03-02 05:20:34.945--End log output for Mid-tier services (SOA_1.S119SNIQ056995.schneider.com)
    OPMN has thrown a control exception
    oracle.appserver.startupconsole.model.ConsoleException: OPMN has thrown a control exception
         at oracle.appserver.startupconsole.control.OPMNController.doStop(OPMNController.java:157)
         at oracle.appserver.startupconsole.control.Controller.stop(Controller.java:79)
         at oracle.appserver.startupconsole.control.GroupController.doStop(GroupController.java:52)
         at oracle.appserver.startupconsole.control.Controller.stop(Controller.java:79)
         at oracle.appserver.startupconsole.view.controller.ControllerAdapter.stop(ControllerAdapter.java:38)
         at oracle.appserver.startupconsole.view.controller.MasterControlAdapter.run(MasterControlAdapter.java:96)
         at oracle.appserver.startupconsole.view.Runner.main(Runner.java:39)
    Caused by: oracle.ias.opmn.optic.OpticControlException: Error from opmn during process control operation
         at oracle.ias.opmn.optic.AbstractOpmnEntity.runCommand(AbstractOpmnEntity.java:174)
         at oracle.ias.opmn.optic.AbstractOpmnEntity.stop(AbstractOpmnEntity.java:134)
         at oracle.appserver.startupconsole.control.OPMNController.doStop(OPMNController.java:137)
         ... 6 more
    Exception caused by
    Error from opmn during process control operation
    oracle.ias.opmn.optic.OpticControlException: Error from opmn during process control operation
         at oracle.ias.opmn.optic.AbstractOpmnEntity.runCommand(AbstractOpmnEntity.java:174)
         at oracle.ias.opmn.optic.AbstractOpmnEntity.stop(AbstractOpmnEntity.java:134)
         at oracle.appserver.startupconsole.control.OPMNController.doStop(OPMNController.java:137)
         at oracle.appserver.startupconsole.control.Controller.stop(Controller.java:79)
         at oracle.appserver.startupconsole.control.GroupController.doStop(GroupController.java:52)
         at oracle.appserver.startupconsole.control.Controller.stop(Controller.java:79)
         at oracle.appserver.startupconsole.view.controller.ControllerAdapter.stop(ControllerAdapter.java:38)
         at oracle.appserver.startupconsole.view.controller.MasterControlAdapter.run(MasterControlAdapter.java:96)
         at oracle.appserver.startupconsole.view.Runner.main(Runner.java:39)
    <?xml version='1.0' encoding='WINDOWS-1252'?>
    <response>
    <msg code="-82" text="Remote request with weak authentication.">
    </msg>
    <opmn id="S119SNIQ056995:6200" http-status="406" http-response="no processes or applications matched this request">
    </opmn>
    </response>

    I have found out the problem and solution for this OPMN error, its actually our Fusion team work
    the error is caused by Port conflicts we believe
    so by using these set of commands of opmnctl
    usage: opmnctl [verbose] [<scope>] <command> [<options>]
    verbose: print detailed execution message if available
    Permitted <scope>/<command>/<options> combinations are:
    scope command options
    start - Start opmn
    startall - Start opmn & all managed processe
    stopall - Stop opmn & all managed processe
    shutdown - Shutdown opmn & all managed proce
    [<scope>] startproc [<attr>=<val> ..] - Start opmn managed processes
    [<scope>] restartproc [<attr>=<val> ..] - Restart opmn managed processes
    [<scope>] stopproc [<attr>=<val> ..] - Stop opmn managed processes
    [<scope>] reload - Trigger opmn to reread opmn.xml
    [<scope>] status [<options>] - Get managed process status
    [<scope>] dmsdump [<attr>=<val>&..] - Get DMS stats
    [<scope>] set [<attr>=<val> ..] - Set opmn log parameters
    [<scope>] query [<attr>=<val>] - Query opmn log parameters
    ping [<max_retry>] - Ping local opmn
    validate [<filename>] - Validate the given xml file
    config [<options>] - Modify the opmn xml file
    help - Print brief usage description
    usage [<command>] - Print detailed usage description
    we have shutdown the opmn box and restarted all of its process
    it did not happen in the first time itself i have to repeat this for a several times then the SOA suite is running normally
    if any one faces this issue i can help

  • OPMN ERROR while starting

    WHen I try to start the opmn process I get the following error:
    [oracle@ip-10-0-20-40 bin]$ ./opmnctl startall
    opmnctl: starting opmn and all managed processes...
    ================================================================================
    opmn id=ip-10-0-20-40:6200
    1 of 2 processes started.
    ias-instance id=IAS-1.ec2-46-51-197-244.eu-west-1.compute.amazonaws.com
    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    ias-component/process-type/process-set:
    HTTP_Server/HTTP_Server/HTTP_Server/
    Error
    --> Process (index=1,uid=2128376900,pid=24434)
    failed to start a managed process after the maximum retry limit
    Log:
    /u01/app/oracle/Middleware_1034_AIA/ora_soa10135/opmn/logs//HTTP_Server~1.log
    The content of the log file is below:
    12/03/09 02:25:45 Start process
    /u01/app/oracle/Middleware_1034_AIA/ora_soa10135/Apache/Apache/bin/apachectl startssl: execing httpd
    /u01/app/oracle/Middleware_1034_AIA/ora_soa10135/Apache/Apache/bin/httpd: error while loading shared libraries: libdb.so.2: cannot open shared object file: No such file or directory
    12/03/09 02:42:11 Start process
    /u01/app/oracle/Middleware_1034_AIA/ora_soa10135/Apache/Apache/bin/apachectl startssl: execing httpd
    /u01/app/oracle/Middleware_1034_AIA/ora_soa10135/Apache/Apache/bin/httpd: error while loading shared libraries: libdb.so.2: cannot open shared object file: No such file or directory
    12/03/09 02:42:13 Start process
    /u01/app/oracle/Middleware_1034_AIA/ora_soa10135/Apache/Apache/bin/apachectl startssl: execing httpd
    /u01/app/oracle/Middleware_1034_AIA/ora_soa10135/Apache/Apache/bin/httpd: error while loading shared libraries: libdb.so.2: cannot open shared object file: No such file or directory
    12/03/09 02:47:19 Start process
    apachectl is not owned by this user
    12/03/09 02:47:21 Start process
    apachectl is not owned by this user
    12/03/09 04:14:41 Start process
    apachectl is not owned by this user
    12/03/09 04:14:41 Start process
    apachectl is not owned by this user

    I have found out the problem and solution for this OPMN error, its actually our Fusion team work
    the error is caused by Port conflicts we believe
    so by using these set of commands of opmnctl
    usage: opmnctl [verbose] [<scope>] <command> [<options>]
    verbose: print detailed execution message if available
    Permitted <scope>/<command>/<options> combinations are:
    scope command options
    start - Start opmn
    startall - Start opmn & all managed processe
    stopall - Stop opmn & all managed processe
    shutdown - Shutdown opmn & all managed proce
    [<scope>] startproc [<attr>=<val> ..] - Start opmn managed processes
    [<scope>] restartproc [<attr>=<val> ..] - Restart opmn managed processes
    [<scope>] stopproc [<attr>=<val> ..] - Stop opmn managed processes
    [<scope>] reload - Trigger opmn to reread opmn.xml
    [<scope>] status [<options>] - Get managed process status
    [<scope>] dmsdump [<attr>=<val>&..] - Get DMS stats
    [<scope>] set [<attr>=<val> ..] - Set opmn log parameters
    [<scope>] query [<attr>=<val>] - Query opmn log parameters
    ping [<max_retry>] - Ping local opmn
    validate [<filename>] - Validate the given xml file
    config [<options>] - Modify the opmn xml file
    help - Print brief usage description
    usage [<command>] - Print detailed usage description
    we have shutdown the opmn box and restarted all of its process
    it did not happen in the first time itself i have to repeat this for a several times then the SOA suite is running normally
    if any one faces this issue i can help

  • Getting Win32 exception when starting Oracle Infrastructure iasconsole

    Installed Oracle Infrastructure server 10GR1 and everything appears to be working EXCEPT I keep getting these "Visual Stidio Just-In-Time Debugger" pop-ups saying "An unhandled WIN32 exception occurred in nmupm.exe and also cmd.exe"
    Any ideas?
    Stumped in Boston

    I have found out the problem and solution for this OPMN error, its actually our Fusion team work
    the error is caused by Port conflicts we believe
    so by using these set of commands of opmnctl
    usage: opmnctl [verbose] [<scope>] <command> [<options>]
    verbose: print detailed execution message if available
    Permitted <scope>/<command>/<options> combinations are:
    scope command options
    start - Start opmn
    startall - Start opmn & all managed processe
    stopall - Stop opmn & all managed processe
    shutdown - Shutdown opmn & all managed proce
    [<scope>] startproc [<attr>=<val> ..] - Start opmn managed processes
    [<scope>] restartproc [<attr>=<val> ..] - Restart opmn managed processes
    [<scope>] stopproc [<attr>=<val> ..] - Stop opmn managed processes
    [<scope>] reload - Trigger opmn to reread opmn.xml
    [<scope>] status [<options>] - Get managed process status
    [<scope>] dmsdump [<attr>=<val>&..] - Get DMS stats
    [<scope>] set [<attr>=<val> ..] - Set opmn log parameters
    [<scope>] query [<attr>=<val>] - Query opmn log parameters
    ping [<max_retry>] - Ping local opmn
    validate [<filename>] - Validate the given xml file
    config [<options>] - Modify the opmn xml file
    help - Print brief usage description
    usage [<command>] - Print detailed usage description
    we have shutdown the opmn box and restarted all of its process
    it did not happen in the first time itself i have to repeat this for a several times then the SOA suite is running normally
    if any one faces this issue i can help

  • Opmn status

    Respected Masters and Experts,
    I am trying to display the status of ora9ias using the following command.
    $pwd
    /oracle/formserv/opmn/bin
    $opmnctl status all
    The above command doesn't display anything..what could be the reasons for that sir....
    I want to shutdown all the services to perform cold backup of my Database....
    Please Help...
    Thanks and Regards
    Monoj Das

    Hi
    There is no command like "opmnctl status all" you have to use "opmnctl status"
    usage: opmnctl [verbose] [<scope>] <command> [<options>]
    verbose: print detailed execution message if available
    Permitted <scope>/<command>/<options> combinations are:
    scope command options
    start - Start opmn
    startall - Start opmn & all managed processes
    stopall - Stop opmn & all managed processes
    shutdown - Shutdown opmn & all managed processes
    [<scope>] startproc [<attr>=<val> ..] - Start opmn managed processes
    [<scope>] restartproc [<attr>=<val> ..] - Restart opmn managed processes
    [<scope>] stopproc [<attr>=<val> ..] - Stop opmn managed processes
    [<scope>] reload - Trigger opmn to reread opmn.xml
    [<scope>] status [<options>] - Get managed process status
    [<scope>] metric [<attr>=<val> ..] - Get DMS metrics for managed processes
    [<scope>] dmsdump [<dmsargs>] - Get DMS metrics for opmn
    [<scope>] debug [<attr>=<val> ..] - Display opmn server debug information
    [<scope>] set [<attr>=<val> ..] - Set opmn log parameters
    [<scope>] query [<attr>=<val>] - Query opmn log parameters
    launch [<attr>=<val> ..] - Launch a configured target process
    phantom [<attr>=<val> ..] - Register phantom processes
    ping [<max-retry>] - Ping local opmn
    validate [<filename>] - Validate the given opmn xml file
    help - Print brief usage description
    usage [<command>] - Print detailed usage description
    createinstance - Create an Oracle Instance
    createcomponent - Create a specified component
    deleteinstance - Delete an instance and components
    deletecomponent - Delete a specified component
    registerinstance - Register with admin server
    unregisterinstance - Unregister with admin server
    updateinstanceregistration - Update instance registration
    updatecomponentregistration - Update component registration
    For your reference please look on this link http://docs.oracle.com/cd/E17904_01/doc.1111/e14007/opmnctl.htm
    Thanks
    Yakub

  • Essbase with OPMN

    Hi Can anyone tell me how to identify are we running Essbase with OPM.N

    After typing opmnctl statusall command I got output like below,
    C:\Users\a501706>opmnctl statusall
    opmnctl: unknown command: statusall
    usage: opmnctl [verbose] [<scope>] <command> [<options>]
    verbose: print detailed execution message if available
    Permitted <scope>/<command>/<options> combinations are:
    scope command options
    start - Start opmn
    startall - Start opmn & all managed process
    stopall - Stop opmn & all managed processe
    shutdown - Shutdown opmn & all managed proc
    [<scope>] startproc [<attr>=<val> ..] - Start opmn managed processes
    [<scope>] restartproc [<attr>=<val> ..] - Restart opmn managed processes
    [<scope>] stopproc [<attr>=<val> ..] - Stop opmn managed processes
    [<scope>] reload - Trigger opmn to reread opmn.xml
    [<scope>] status [<options>] - Get managed process status
    [<scope>] metric [<attr>=<val> ..] - Get DMS metrics for managed proc
    [<scope>] dmsdump [<dmsargs>] - Get DMS metrics for opmn
    [<scope>] debug [<attr>=<val> ..] - Display opmn server debug inform
    [<scope>] set [<attr>=<val> ..] - Set opmn log parameters
    [<scope>] query [<attr>=<val>] - Query opmn log parameters
    launch [<attr>=<val> ..] - Launch a configured target proce
    phantom [<attr>=<val> ..] - Register phantom processes
    ping [<max-retry>] - Ping local opmn
    validate [<filename>] - Validate the given opmn xml file
    help - Print brief usage description
    usage [<command>] - Print detailed usage description
    createinstance - Create an Oracle Instance
    createcomponent - Create a specified component
    deleteinstance - Delete an instance and component
    deletecomponent - Delete a specified component
    registerinstance - Register with admin server
    redeploy - Redeploy the admin server applic
    unregisterinstance - Unregister with admin server
    updateinstanceregistration - Update instance registration
    updatecomponentregistration - Update component registration
    Can you please tell me whether there is use of OPMN or not.

  • Validate filepath and filename

    Hello friends,
    I have a filepath given in the selection screen.  How to check whetehr the file attributes are valid. ie file path and name is a valid one.
    Regards,
    jamshed

    hi John,
      Use FM WS_FILENAME_GET FM...
    i.e,
    *AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_INFILE.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_infile.
      CALL FUNCTION 'WS_FILENAME_GET'
           EXPORTING
                def_filename     = p_infile
                mask             = ',*.txt.'
                mode             = 'O'
                title            = 'Upload File'(078)
           IMPORTING
                filename         = p_infile
           EXCEPTIONS
                inv_winsys       = 1
                no_batch         = 2
                selection_cancel = 3
                selection_error  = 4
                OTHERS           = 5.
    *START-OF-SELECTION
    START-OF-SELECTION.
      gd_file = p_infile.
      CALL FUNCTION 'GUI_UPLOAD'
        EXPORTING
          filename                = gd_file
          has_field_separator     = 'X'  "file is TAB delimited
        TABLES
          data_tab                = it_record
        EXCEPTIONS
          file_open_error         = 1
          file_read_error         = 2
          no_batch                = 3
          gui_refuse_filetransfer = 4
          invalid_type            = 5
          no_authority            = 6
          unknown_error           = 7
          bad_data_format         = 8
          header_not_allowed      = 9
          separator_not_allowed   = 10
          header_too_long         = 11
          unknown_dp_error        = 12
          access_denied           = 13
          dp_out_of_memory        = 14
          disk_full               = 15
          dp_timeout              = 16
          OTHERS                  = 17.
        IF sy-subrc NE 0.
          write: 'Error ', sy-subrc, 'returned from GUI_UPLOAD FM'.
          skip.
        endif.

  • Validate  application server file

    Hi,
      I have to validate the application server file path on selection screen.
    I am using following code :
    form VALID_APP_FILEPATH   using    p_filpath TYPE FILENAME-FILEINTERN.
      data : l_fname(60).
      CALL FUNCTION 'FILE_GET_NAME'
        EXPORTING
          LOGICAL_FILENAME = p_filpath
          OPERATING_SYSTEM = SY-OPSYS
        IMPORTING
          FILE_NAME        = L_FNAME
        EXCEPTIONS
          FILE_NOT_FOUND   = 1
          OTHERS           = 2.
      IF SY-SUBRC ne 0.
          MESSAGE 'Enter the valid file path'(e01) TYPE 'E'.
      ENDIF.
    endform.                    " VALID_APP_FILEPATH
    but if i choose correct file path from F4 help also.
    It displays error message.
    Sy-subrc always equals 1.
    Help me out

    Hi,
    I have implemented the code mentioned by you and am not having any problems even when I use F4 to get the fle name.
    Pls recheck and get back if the error persists.
    Reward if found helpful.
    Warm Regards,
    R Adarsh

  • Using a Variable to Substitute the path\filename of a Batch file in the Start_Process Command

    I am trying to write a script that will execute a batch file on a remote Windows server.
    This line below is basically what I'm trying to do and it works without error, however I would like to use a variable for the path\filename of the batch file.
    invoke-command -computername QSC-A-ICE01 -scriptblock {Start-Process "\\qsc-a-ice01\D$\Test\RunThis.bat" }
    If I try to use a variable as in this example below I receive the error below. The error seems to indicate it's it expecting a "FilePath" parameter. Is this true? How would I change this script to make it work when substituting a variable.
    $MyProcess =  "\\qsc-a-ice01\D$\Test\RunThis.bat"
    Write-Host $MyProcess
    invoke-command -computername QSC-A-ICE01 -scriptblock {Start-Process "$MyProcess"}
    This is the error text I receive when using a variable:
     PS C:\Windows\system32> D:\Test\ThisWorks.ps1
    \\qsc-a-ice01\D$\Test\RunThis.bat
    Cannot validate argument on parameter 'FilePath'. The argument is null or empty. Supply an argument that is not null or
    empty and then try the command again.
        + CategoryInfo          : InvalidData: (:) [Start-Process], ParameterBindingValidationException
        + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.PowerShell.Commands.StartProcessCommand
        + PSComputerName        : QSC-A-ICE01
    PS C:\Windows\system32>

    Mike,
    Thanks for providing the link, it was very informative. The link described how to use the args in a ScriptBlock and provided me with an explaination as to why it works the way it does on a remote server. This is my 1st post to the forum and I don't know
    how the points system works yet.
    I would like to split the points , but I don't see that this is possible.
    You're very welcome, I'm glad that the information was helpful.
    You can mark as many posts as answers as you'd like, there's not a restriction on only having a single answer per thread. You certainly don't have to though, David's answer is more than sufficient to help any future people who find this thread.
    Also, on a side note, you may want to post in the thread below. Posting there will get your account verified so you'll be able to post links and images.
    http://social.technet.microsoft.com/Forums/en-US/200c33c9-abe9-494a-953a-bf53fccb3c76/verify-your-account-11?forum=reportabug
    (Future people - don't use that link.
    Click here and look for the current thread as a sticky.)
    Don't retire TechNet! -
    (Don't give up yet - 12,575+ strong and growing)

  • ERROR Command File filename Not Found.

    Hi all,
    I am trying to automate the import of interface tables into Planning Dimension library. I am getting the below error. I have tried lot of methods in the way I call the Import.txt from epma-batch-client.bat but nothing seem to work. Your help appreciated. Thanks in advance.
    Error -> ERROR Command File "E:\\Import.txt" Not Found.
    Way Executed ->
    E:\Oracle\Middleware\EPMSystem11R1\products\Foundation\BPMA\EPMABatchClient>epma
    -batch-client.bat -C"E:\\Import.txt" -Uhypadmin -Ppassword
    Welcome to EPM Architect command line processing...
    Version:11.1.2.1.00
    2012-09-25 09:49:21,116 INFO Validating the command file E:\\Import.txt
    2012-09-25 09:49:21,117 ERROR Command File "E:\\Import.txt" Not Found.
    2012-09-25 09:49:21,118 INFO Exiting with return code 1 - Command File Validati
    on Error
    2012-09-25 09:49:21,118 INFO Thank you for using EPMA Batch Client!
    E:\Oracle\Middleware\EPMSystem11R1\products\Foundation\BPMA\EPMABatchClient>
    Contents of Import.txt ->
    set bpmaserverurl=http://server/hyperion-bpma-server;
    set workspaceurl=http://server:19000/workspace;
    Login hypadmin,password;
    Execute Import Parameters(importtype, profilename, filename, waitforcompletion) Values ('InterfaceTables','customertest','.txt','true');
    Logout;
    QUIT;

    Thanks all, It was an oversight. A very silly mistake and I took a lot of your time, sorry about that.
    I had the folder structure set as "hide known file types". And I named the file with an extension import.txt assuming the file's name is import and the extension is .txt. That was the error and that is why epma-batch-client could not locate the file called import.txt in the E: drive while the file name was actually import.txt.txt.
    I fixed that and now it runs fine as expected.

  • How to enable Validate and Export in FDM task

    Hi everyone
    I am working with setting up an FDM Task to Import, Validate and Export data to HFM.
    The Task is able to import data to FDM, but I cannot make the process start the Validate and Export functions. If I do the process manually, then data is imported to HFM succesfully.
    Am I missing something in the scripts or do I need to enable some feature in FDM?
    Action Script:
    Sub BatchLoadLedgerTrans()
    'Declare Local Variables
    Dim lngProcessLevel
    Dim strDelimiter
    Dim blnAutoMapCorrect
    'Initialize Variables
    lngProcessLevel = 50   'Import
    strDelimiter = "_"
    blnAutoMapCorrect = 0
    'Create the file collection
    Set BATCHENG.PcolFiles = BATCHENG.fFileCollectionCreate(CStr(strDelimiter), FileName)
    'Execute a Standard Serial batch
    BATCHENG.mFileCollectionProcess BATCHENG.PcolFiles, CLng(lngProcessLevel), , CBool(blnAutoMapCorrect)
    End Sub Integration Script:
    Function LedgerTrans_EDW_to_HFM(strLoc, lngCatKey, dblPerKey, strWorkTableName)
    Dim objSS 'ADODB.Connection
    Dim strSQL 'SQL String
    Dim rs 'Recordset
    Dim rsAppend 'tTB table append rs Object
    'Initialize objects
    Set cnSS = CreateObject("ADODB.Connection")
    Set rs = CreateObject("ADODB.Recordset")
    Set rsAppend = DW.DataAccess.farsTable(strWorkTableName)
    cnss.open "Provider=SQLNCLI11; Data Source=10.250.200.10; Initial Catalog=EDW; User ID=FDM-user; Password=MyPassword"
    cnss.CommandTimeout = 0
    'Create query String - VIEW
    strSQL = "Select * "
    strSQL = strSQL & "FROM EDW.hfm.ledgertranstable "
    'Get data
    rs.Open strSQL, cnSS
    'Check For data
    If rs.bof And rs.eof Then
    RES.PlngActionType = 2
    RES.PstrActionValue = "No Records To load!"
    Exit Function
    End If
    'Loop through records And append To tTB table In location’s DB
    If Not rs.bof And Not rs.eof Then
    Do While Not rs.eof
    rsAppend.AddNew
    rsAppend.Fields("PartitionKey") = RES.PlngLocKey
    rsAppend.Fields("CatKey") = lngCatKey ' PlngCatKey
    rsAppend.Fields("PeriodKey") = dblPerKey ' PlngCatKey
    rsAppend.Fields("DataView") = "YTD"
    rsAppend.Fields("CalcAcctType") = 9
    rsAppend.Fields("Account") = rs.fields(2).Value
    rsAppend.Fields("Desc1") = rs.fields(2).Value
    rsAppend.Fields("Entity") = rs.fields(6).Value
    rsAppend.Fields("ICP") = rs.fields(8).Value
    rsAppend.Fields("Amount") = rs.fields(14).Value
    rsAppend.Fields("UD1") = rs.fields(5).Value
    rsAppend.Fields("UD2") = rs.fields(9).Value
    rsAppend.Fields("UD3") = rs.fields(10).Value
    rsAppend.Fields("UD4") = rs.fields(7).Value
    rsAppend.Fields("UD5") = rs.fields(13).Value
    rsAppend.Update
    rs.movenext
    Loop
    End If
    'Records loaded
    RES.PlngActionType = 6
    RES.PstrActionValue = "SQL Import successful!"
    'Assign Return value
    LedgerTrans_EDW_to_HFM = True
    End Function Best regards
    Frederik
    Edited by: Frederik Andersen on Jun 1, 2013 1:32 AM

    Found the solution.
    The variable lngProcessLevel should be set to "12" to execute the full Import, Validate and Export.
    Best regards
    Frederik

  • To upload the ZIP file and get the filenames available in ZIP file in ABAP

    Hi Experts,
    For my requirement, file from legacy comes as ZIP file with number of files in that.
    Please provide one code sample to upload the ZIP file from local workstation and get the filenames available in ZIP file to check few filename validation checks for the available files in report program.
    Thanks in Advance,
    Regards,
    Basani

    1. Copy the ZIP file into App server
    2. Call function
      call function 'RFC_REMOTE_PIPE'
        destination 'SERVER_EXEC'
        exporting
          command = command  " Unzip command gunzip /path & file
          read = 'X'
        tables
          pipedata = std_lines
    then you can read the files and can validate the file names

Maybe you are looking for