Utility for Downloading Z Programs and Sapscripts.

HI!
I want to Down load all my Z programs to a local drive. Please help me if you know any utility?
Thank you,
DARSHAN
Message was edited by: Darshankumar Kanubhai Patel

use this program:
PROGRAM ZDOWN.
*========================================================================================================
Direct Download Enterprise version 1.2.
THIS SOFTWARE IS FOR PERSONAL USE ONLY.
THIS PROGRAM IS FREEWARE AND IS PROVIDED ON AN AS-IS BASIS WITHOUT WARRANTY OF ANY KIND.
THE PROVIDER SPECIFICALLY DISCLAIMS ANY OTHER WARRANTY, EXPRESS OR IMPLIED, INCLUDING ANY WARRANTY OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL PROVIDER BE LIABLE FOR ANY CONSEQUENTIAL, INDIRECT, SPECIAL OR INCIDENTAL DAMAGES,
EVEN IF PROVIDER HAS BEEN ADVISED BY CLIENT OF THE POSSIBILITY OF SUCH POTENTIAL LOSS OR DAMAGE.
CLIENT AGREES TO HOLD PROVIDER HARMLESS FROM AND AGAINST ANY AND ALL CLAIMS, LOSSES, LIABILITIES AND
EXPENSES.  BY INSTALLING OR RUNNING THIS PROGRAM YOU ARE AGREEING TO THE TERMS AND CONDITONS STATED
ABOVE.
PROGRAM DESCRIPTION & USE
Allows a user to download programs, Functions, DD definitions, etc to the presentation server.  This
version searches recursively for nested includes and function modules, and allows you to download
the resulting code as standard text or HTML web pages within a suitable directory structure.
You can either search by object name, using wildcards if you wish, or a combination of Author and
object name.  If you want all objects returned for a particular author then select the author name
and choose the most suitable radiobutton.  All objects will be returned if the fields to the right
hand side of the radiobutton are left completely blank.
Compatible with R/3 Enterprise only, for older versions of SAP you will need Direct Download version 5.xx.
This version removes the programming limitations imposed by developing across SAP releases 3 to 4.6.
This program is intended to allow a person to keep a visual representation of a program for backup
purposes only as has not been designed to allow programs to be uploaded to SAP systems.
AUTHOR          : E.G.Mellodew
PROGRAM CONTACT : [email protected]
                  www.dalestech.com
Types
text element structure
types: tTextTable like textpool.
GUI titles
types: tGUITitle like d347t.
Message classes
types: begin of tMessage,
         arbgb like t100-arbgb,
         stext like t100a-stext,
         msgnr like t100-msgnr,
         text  like t100-text,
       end of tMessage.
Screen flow.
types: begin of tScreenFlow,
         screen like d020s-dnum,
         code like d022s-line,
       end of tScreenFlow.
Holds a table\structure definition
types: begin of tDictTableStructure,
         fieldname like dd03l-fieldname,
         position  like dd03l-position,
         keyflag   like dd03l-keyflag,
         rollname  like dd03l-rollname,
         domname   like dd03l-domname,
         datatype  like dd03l-datatype,
         leng      like dd03l-leng,
         ddtext    like dd04t-ddtext,
       end of tdictTableStructure.
Holds a tables attributes + its definition
types: begin of tDictTable,
         tablename    like dd03l-tabname,
         tableTitle   like dd02t-ddtext,
         iStructure type tDictTableStructure occurs 0,
       end of tDictTable.
Include program names
types: begin of tInclude,
         includeName like trdir-name,
         includeTitle like tftit-stext,
       end of tInclude.
Method
types: begin of tMethod,
         cmpName like vseomethod-cmpname,
         descript like vseomethod-descript,
         exposure like vseomethod-exposure,
         methodKey type string,
       end of tMethod.
Class
types: begin of tClass,
         scanned(1),
         clsname like vseoclass-clsname,
         descript like vseoclass-descript,
         msg_id like vseoclass-msg_id,
         exposure like vseoclass-exposure,
         state like vseoclass-state,
         clsfinal like vseoclass-clsfinal,
         r3release like vseoclass-r3release,
         iMethods type tMethod occurs 0,
         iDictStruct type tDictTable occurs 0,
         iTextElements type tTextTable occurs 0,
         iMessages type tMessage occurs 0,
         textElementKey type string,
         publicClassKey type string,
         privateClassKey type string,
         protectedClassKey type string,
         typesClassKey type string,
         exceptionClass type i,
       end of tClass.
function modules
types: begin of tFunction,
         functionName like tfdir-funcName,
         functionGroup like enlfdir-area,
         includeNumber like tfdir-include,
         functionMainInclude like tfdir-funcName,
         functionTitle like tftit-stext,
         topIncludeName like tfdir-funcName,
         progname like tfdir-pname,
         programLinkName like tfdir-pname,
         messageClass like t100-arbgb,
         iTextElements type tTextTable occurs 0,
         iSelectiontexts type tTextTable occurs 0,
         iMessages type tMessage occurs 0,
         iIncludes type tInclude occurs 0,
         iDictStruct type tDictTable occurs 0,
         iGUITitle type tGUITitle occurs 0,
         iScreenFlow type tScreenFlow occurs 0,
       end of tFunction.
types: begin of tProgram,
         progname like trdir-name,
         programTitle like tftit-stext,
         subc like trdir-subc,
         messageClass like t100-arbgb,
         iMessages type tMessage occurs 0,
         iTextElements type tTextTable occurs 0,
         iSelectiontexts type tTextTable occurs 0,
         iGUITitle type tGUITitle occurs 0,
         iScreenFlow type tScreenFlow occurs 0,
         iIncludes type tInclude occurs 0,
         iDictStruct type tDictTable occurs 0,
       end of tProgram.
Internal tables
Dictionary object
data: iDictionary type standard table of tDictTable with header line.
Function modules.
data: iFunctions type standard table of tFunction with header line.
Tree display structure.
data: iTreeDisplay type standard table of snodetext with header line.
Message class data
data: iMessages type standard table of tMessage with header line.
Holds a single message class an all of its messages
data: iSingleMessageClass type standard table of tMessage with header line.
Holds program related data
data: iPrograms type standard table of tProgram with header line.
Classes
data: iClasses type standard table of tClass with header line.
Table prototypes
data: dumiDictStructure type standard table of tDictTableStructure.
data: dumiTextTab type standard table of tTextTable.
data: dumiIncludes type standard table of tInclude.
data: dumiHtml type standard table of string.
data: dumiHeader type standard table of string .
data: dumiScreen type standard table of tScreenFlow .
data: dumIGUITitle type standard table of tGUITitle.
data: dumiMethods type standard table of tMethod.
  Global objects
data: objFile type ref to cl_gui_frontend_services.
data: objRuntimeError type ref to cx_root.
Constants
constants: VERSIONNO type string value '1.2'.
constants: TABLES type string value 'TABLES'.
constants: LIKE type string value 'LIKE'.
constants: TYPE type string value 'TYPE'.
constants: TYPEREFTO type string value 'TYPE REF TO'.
constants: STRUCTURE type string value 'STRUCTURE'.
constants: LOWSTRUCTURE type string value 'structure'.
constants: OCCURS type string value 'OCCURS'.
constants: FUNCTION type string value 'FUNCTION'.
constants: CALLFUNCTION type string value ' CALL FUNCTION'.
constants: MESSAGE type string  value 'MESSAGE'.
constants: INCLUDE type string value 'INCLUDE'.
constants: LOWINCLUDE type string value 'include'.
constants: DESTINATION type string value 'DESTINATION'.
constants: IS_TABLE type string value 'T'.
constants: IS_PROGRAM type string value 'P'.
constants: IS_SCREEN type string value 'S'.
constants: IS_GUITITLE type string value 'G'.
constants: IS_DOCUMENTATION type string value 'D'.
constants: IS_MESSAGECLASS type string value 'MC'.
constants: IS_FUNCTION type string value 'F'.
constants: IS_CLASS type string value 'C'.
constants: IS_METHOD type string value 'M'.
constants: ASTERIX type string value '*'.
constants: COMMA type string value ','.
constants: PERIOD type string value '.'.
constants: DASH type string value '-'.
constants: TRUE type i value 1.
constants: FALSE type i value 0.
constants: LT type string value '<'.
constants: GT type string value '>'.
constants: UNIX type string value 'UNIX'.
constants: NON_UNIX type string value 'not UNIX'.
constants: BACKGROUND_COLOUR type string value '#FFFFE0'.
constants: COLOUR_WHITE type string value '#FFFFFF'.
constants: COLOUR_BLACK type string value '#000000'.
constants: COLOUR_YELLOW type string value '#FFFF00'.
constants: COMMENT_COLOUR type string value '#0000FF'.
constants: HTMLEXTENSION type string value 'html'.
constants: TEXTEXTENSION type string value 'txt'.
Global variables
data: statusBarMessage(100).
data: forcedExit type i value 0.
data: startTime like sy-uzeit.
data: runTime like sy-uzeit.
data: downloadFileExtension type string.
data: downloadFolder type string.
data: slashSeparator type string.
data: frontendOpSystem type string.
data: customerNameSpace type string.
ranges: soProgramName for trdir-name.
ranges: soAuthor for usr02-bname.
ranges: soTable for dd02l-tabname.
ranges: soFunctionName  for tfdir-funcName.
ranges: soClassName for vseoclass-clsname.
ranges: soFunctionGroup for enlfdir-area.
field-symbols: <waDictStruct> type tDictTable.
Selection screen declaration
Author
selection-screen: begin of block b1 with frame title tBlock1.
  selection-screen begin of line.
    selection-screen comment 5(23) tAuth.
    parameters: pAuth like usr02-bname memory id MAUTH.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 5(36) tPmod.
    parameters: pMod as checkbox.
  selection-screen end of line.
*--- Local objects
  selection-screen begin of line.
    selection-screen comment 5(36) t$tmp.
    parameters: p$tmp as checkbox default ''.
  selection-screen end of line.
selection-screen: end of block b1.
selection-screen begin of block b2 with frame title tBlock2.
Tables
  selection-screen begin of line.
    parameters: rTable radiobutton group r1.
    selection-screen comment 5(20) tRtable.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 10(18) tPtable.
    parameters: pTable like dd02l-tabname memory id MTABLE.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 10(79) tTnote.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 10(79) tTnote1.
  selection-screen end of line.
Message classes
  selection-screen begin of line.
    parameters: rMess radiobutton group r1.
    selection-screen comment 5(18) tPMes.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 10(18) tMname.
    parameters: pMname like t100-arbgb memory id MMNAME.
  selection-screen end of line.
Function modules
  selection-screen begin of line.
    parameters: rFunc radiobutton group r1.
    selection-screen comment 5(30) tRfunc.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 10(18) tPfname.
    parameters: pFname like tfdir-funcName memory id MFNAME.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 10(18) tFgroup.
    parameters: pFgroup like enlfdir-area memory id MFGROUP.
  selection-screen end of line.
Classes
  selection-screen begin of line.
    parameters: rClass radiobutton group r1.
    selection-screen comment 5(30) tRClass.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 10(18) tPcName.
    parameters: pClname like seoclass-clsname memory id MCNAME.
  selection-screen end of line.
Programs / includes
  selection-screen begin of line.
    parameters: rProg radiobutton group r1 default 'X'.
    selection-screen comment 5(18) tProg.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 10(18) tRpname.
    parameters: pProg like trdir-name memory id MPROG.
  selection-screen end of line.
  selection-screen skip.
Language
  selection-screen begin of line.
    selection-screen comment 1(18) tMLang.
    parameters: pMLang like t100-sprsl default 'EN'.
  selection-screen end of line.
Package
  selection-screen begin of line.
    selection-screen comment 1(18) tPack.
    parameters: pPack like tadiv-devclass memory id MPACK.
  selection-screen end of line.
Customer objects
  selection-screen begin of line.
    selection-screen comment 1(27) tCust.
    parameters: pCust as checkbox default 'X'.
    selection-screen comment 32(25) tNRange.
    parameters: pCName type namespace memory id MNAMESPACE.
  selection-screen end of line.
selection-screen: end of block b2.
Additional things to download.
selection-screen: begin of block b3 with frame title tBlock3.
  selection-screen begin of line.
    selection-screen comment 1(33) tPtext.
    parameters: pText as checkbox default 'X' memory id MTEXT.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 1(33) tMess.
    parameters: pMess as checkbox default 'X' memory id MMESS.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 1(33) tPinc.
    parameters: pInc as checkbox default 'X' memory id MINC.
    selection-screen comment 40(20) tRecc.
    parameters: pReci as checkbox default 'X' memory id MRECI.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 1(33) tPfunc.
    parameters: pFunc as checkbox default 'X' memory id MFUNC.
    selection-screen comment 40(20) tRecf.
    parameters: pRecf as checkbox default 'X' memory id MRECF.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 1(33) tDoc.
    parameters: pDoc as checkbox default 'X' memory id MDOC.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 1(33) tPscr.
    parameters: pScr as checkbox default 'X' memory id MSCR.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 1(33) tPdict.
    parameters: pDict as checkbox default 'X' memory id MDICT.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 1(33) tSortT.
    parameters: pSortT as checkbox default ' ' memory id MSORTT.
  selection-screen end of line.
selection-screen: end of block b3.
File details
selection-screen: begin of block b4 with frame title tBlock4.
  selection-screen begin of line.
    selection-screen comment 1(20) tPhtml.
    parameters: pHtml radiobutton group g1 default 'X'.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 5(25) tComm.
    parameters: pComm as checkbox default 'X'.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 5(25) tBack.
    parameters: pBack as checkbox default 'X'.
  selection-screen end of line.
  selection-screen begin of line.
    selection-screen comment 1(20) tPtxt.
    parameters: pTxt radiobutton group g1.
  selection-screen end of line.
  selection-screen skip.
  selection-screen begin of line.
    selection-screen comment 1(20) tPpath.
    parameters: pFolder like rlgrap-filename obligatory memory id MFOLDER.
  selection-screen end of line.
selection-screen: end of block b4.
Display a directory picker window
at selection-screen on value-request for pFolder.
data: objFile type ref to cl_gui_frontend_services.
data: pickedFolder type string.
data: initialFolder type string.
  create object objFile.
  if not pFolder is initial.
    initialFolder = pFolder.
  else.
    objFile->get_temp_directory( changing temp_dir = initialFolder
                                 exceptions cntl_error = 1
                                           error_no_gui = 2
                                           not_supported_by_gui = 3 ).
  endif.
  objFile->directory_browse( exporting initial_folder = initialFolder
                             changing selected_folder = pickedFolder
                             exceptions cntl_error = 1
                                        error_no_gui = 2
                                        not_supported_by_gui = 3 ).
  if sy-subrc = 0.
    pFolder = pickedFolder.
  else.
    write: / 'An error has occured picking a folder'.
  endif.
initialisation
Initialization.
Parameter screen texts.
  tBlock1 = 'Author (Optional)'.
  t$tmp   = 'Programs only: include local objects'.
  tBlock2 = 'Objects to download'.
  tBlock3 = 'Additional downloads for programs, function modules and classes'.
  tBlock4 = 'Download parameters'.
  tAuth   = 'Author name'.
  tPmod   = 'Include programs modified by author'.
  tCust   = 'Only customer objects'.
  tNRange = 'Alt customer name range'.
  tRtable = 'Tables / Structures'.
  tPtable = 'Table name'.
  tTnote  = 'Please note: tables are stored under the username of the'.
  tTnote1 = 'last person who modified them.'.
  tRfunc  = 'Function modules'.
  tPfname = 'Function name'.
  tFgroup = 'Function group'.
  tRClass  = 'Classes'.
  tPcname = 'Class name'.
  tMess   = 'Message class'.
  tMName  = 'Class name'.
  tMLang  = 'Language'.
  tProg   = 'Programs'.
  tRpname = 'Program name'.
  tPack   = 'Package'.
  tPtxt   = 'Text document'.
  tPhtml  = 'HTML document'.
  tComm   = 'Highlight comments'.
  tBack   = 'Include background colour'.
  tPtext  = 'Text elements'.
  tPinc   = 'Include programs'.
  tRecc   = 'Recursive search'.
  tPpath  = 'File path'.
  tPmes   = 'Message classes'.
  tPfunc  = 'Function modules'.
  tDoc    = 'Function module documentation'.
  tRecf   = 'Recursive search'.
  tPscr   = 'Screens'.
  tPdict  = 'Dictionary structures'.
  tSortT  = 'Sort table fields alphabetically'.
Determine the frontend operating system type.
  perform determineFrontendOPSystem using slashSeparator.
start-of-selection.
start-of-selection.
  perform checkComboBoxes.
  perform fillSelectionRanges.
  downloadFolder = pFolder.
  startTime = sy-uzeit.
Fool the HTML routines to stop them hyperlinking anything with a space in them
  if pCName is initial.
    customerNameSpace  = '^'.
  else.
    customerNameSpace = pCName.
  endif.
Main program flow.
  case 'X'.
  Select tables
    when rTable.
      perform retrieveTables using iDictionary[]
                                   soTable[]
                                   soAuthor[].
  Select message classes tables
    when rMess.
      perform retrieveMessageClass using iMessages[]
                                         soAuthor[]      "Author
                                         pMname          "Message class name
                                         pMLang          "Message class language
                                         pMod.           "Modified by author
  Select function modules
    when rFunc.
      if pFName+0(1) ca ASTERIX.
      Restrict the search to customer objects only.
        pCust = 'X'.
      endif.
      if pFGroup+0(1) ca ASTERIX.
      Restrict the search to customer objects only.
        pCust = 'X'.
      endif.
      perform retrieveFunctions using soFunctionName[]   "Function name
                                      soFunctionGroup[]  "Function group
                                      iFunctions[]       "Found functions
                                      pAuth              "Author
                                      pText              "Get text elements
                                      pScr               "Get screens
                                      pCust              "Customer data only
                                      customerNameSpace. "Customer name range
      loop at iFunctions.
      Find Dict structures, messages, functions, includes etc.
        perform scanForAdditionalFuncStuff using iFunctions[]
                                                 pRecI                   "Search for includes recursively
                                                 pRecF                   "Search for functions recursively
                                                 pInc                    "Search for includes
                                                 pFunc                   "Search for functions
                                                 pDict                   "search for dictionary objects
                                                 pMess                   "Search for messages
                                                 pCust                   "Customer data only
                                                 customerNameSpace.      "Customer name range
      endloop.
  Select Classes
    when rClass.
      if pClName+0(1) ca ASTERIX.
      Restrict the search to customer objects only.
        pCust = 'X'.
      endif.
      perform retrieveClasses using iClasses[]
                                    iFunctions[]
                                    soClassName[]       "Class name
                                    soAuthor[]          "Author
                                    customerNameSpace   "Customer name range
                                    pMod                "Also modified by author
                                    pCust               "Customer object only
                                    pMess               "Find messages
                                    pText               "Text Elements
                                    pDict               "Dictionary structures
                                    pFunc               "Get functions
                                    pInc                "Get includes
                                    pRecF               "Search recursively for functions
                                    pRecI               "Search recursively for includes
                                    'X'                 "Search recursively for classes
                                    pMLang.             "Language
      loop at iFunctions.
      Find Dict structures, messages, functions, includes etc.
        perform scanForAdditionalFuncStuff using iFunctions[]
                                                 pRecI                   "Search for includes recursively
                                                 pRecF                   "Search for functions recursively
                                                 pInc                    "Search for includes
                                                 pFunc                   "Search for functions
                                                 pDict                   "search for dictionary objects
                                                 pMess                   "Search for messages
                                                 pCust                   "Customer data only
                                                 customerNameSpace.      "Customer name range
      endloop.
  Select programs
    when rProg.
      if pProg+0(1) ca ASTERIX.
      Restrict the search to customer objects only.
        pCust = 'X'.
      endif.
      perform retrievePrograms using iPrograms[]
                                     iFunctions[]
                                     soProgramName[]    "Program name
                                     soAuthor[]         "Author
                                     customerNamespace  "Customer name range
                                     pMod               "Also modified by author
                                     pCust              "Customer object only
                                     pMess              "Find messages
                                     pText              "Text Elements
                                     pDict              "Dictionay structures
                                     pFunc              "Get functions
                                     pInc               "Get includes
                                     pScr               "Get screens
                                     pRecF              "Search recursively for functions
                                     pRecI              "Search recursively for includes
                                     p$Tmp              "local objects
                                     pPack.             "Package
  endcase.
end-of-selection
end-of-selection.
  if forcedExit = 0.
  Set the file extension and output type of the file
    if pTxt is initial.
      downloadFileExtension = HTMLEXTENSION.
    else.
      downloadFileExtension = TEXTEXTENSION.
    endif.
  Decide what to download
    case 'X'.
    Download tables
      when rTable.
        if not ( iDictionary[] is initial ).
          perform downloadDDStructures using iDictionary[]
                                             pFolder
                                             HTMLEXtension
                                             space
                                             pSortT.
        Free up any memory used for caching HTML versions of tables
          loop at iDictionary.
            free memory id iDictionary-tablename.
          endloop.
          get time.
          runTime = sy-uzeit - startTime.
          perform fillTreeNodeTables using iDictionary[]
                                           iTreeDisplay[]
                                           runTime.
          clear iDictionary[].
        endif.
    Download message class
      when rMess.
        if not ( iMessages[] is initial ).
          sort iMessages ascending by arbgb msgnr.
          loop at iMessages.
            append iMessages to iSingleMessageClass.
            at end of arbgb.
              perform downloadMessageClass using iSingleMessageClass[]
                                                 iMessages-arbgb
                                                 pFolder
                                                 downloadFileExtension
                                                 pHtml
                                                 space
                                                 pComm
                                                 customerNameSpace
                                                 pInc
                                                 pDict
                                                 pMess.
               clear iSingleMessageClass[].
             endat.
           endloop.
           get time.
           runTime = sy-uzeit - startTime.
           perform fillTreeNodeMessages using iMessages[]
                                              iTreeDisplay[]
                                              runTime.
           clear iMessages[].
       endif.
    Download functions
      when rFunc.
        if not ( iFunctions[] is initial ).
           perform downloadFunctions using iFunctions[]
                                           pFolder
                                           downloadFileExtension
                                           space
                                           pDoc
                                           pHtml
                                           pComm
                                           customerNameSpace
                                           pInc
                                           pDict
                                           TEXTEXTENSION
                                           HTMLEXTENSION
                                           pSortT.
        Free up any memory used for caching HTML versions of tables
          loop at iFunctions.
            loop at iFunctions-iDictStruct assigning <waDictStruct>.
              free memory id <waDictStruct>-tablename.
            endloop.
          endloop.
          get time.
          runTime = sy-uzeit - startTime.
          perform fillTreeNodeFunctions using iFunctions[]
                                              iTreeDisplay[]
                                              runTime.
          clear iFunctions[].
        endif.
    Download Classes
      when rClass.
        if not ( iClasses[] is initial ).
          perform downloadClasses using iClasses[]
                                        iFunctions[]
                                        pFolder
                                        downloadFileExtension
                                        HTMLEXTENSION
                                        TEXTEXTENSION
                                        pHtml
                                        pComm
                                        customerNameSpace
                                        pInc
                                        pDict
                                        pDoc
                                        pSortT.
        Free up any memory used for caching HTML versions of tables
          loop at iFunctions.
            loop at iFunctions-iDictStruct assigning <waDictStruct>..
              free memory id <waDictStruct>-tablename.
            endloop.
          endloop.
        Free up any memory used for caching HTML versions of tables
          loop at iPrograms.
            loop at iPrograms-iDictStruct assigning <waDictStruct>..
              free memory id <waDictStruct>-tablename.
            endloop.
          endloop.
           get time.
           runTime = sy-uzeit - startTime.
           perform fillTreeNodeClasses using iClasses[]
                                             iFunctions[]
                                             iTreeDisplay[]
                                             runTime.
           clear iClasses[].
           clear iFunctions[].
        endif.
    Download programs
      when rProg.
        if not ( iPrograms[] is initial ).
          perform downloadPrograms using iPrograms[]
                                         iFunctions[]
                                         pFolder
                                         downloadFileExtension
                                         HTMLEXTENSION
                                         TEXTEXTENSION
                                         pHtml
                                         pComm
                                         customerNameSpace
                                         pInc
                                         pDict
                                         pDoc
                                         pSortT.
        Free up any memory used for caching HTML versions of tables
          loop at iFunctions.
            loop at iFunctions-iDictStruct assigning <waDictStruct>..
              free memory id <waDictStruct>-tablename.
            endloop.
          endloop.
        Free up any memory used for caching HTML versions of tables
          loop at iPrograms.
            loop at iPrograms-iDictStruct assigning <waDictStruct>..
              free memory id <waDictStruct>-tablename.
            endloop.
          endloop.
           get time.
           runTime = sy-uzeit - startTime.
           perform fillTreeNodePrograms using iPrograms[]
                                              iFunctions[]
                                              iTreeDisplay[]
                                              runTime.
           clear iPrograms[].
           clear iFunctions[].
        endif.
    endcase.
    if not ( iTreeDisplay[] is initial ).
      perform displayTree using iTreeDisplay[].
    else.
      statusBarMessage = 'No items found matching selection criteria'.
      perform displayStatus using statusBarMessage 1.
    endif.
  endif.
*--- Memory IDs
User name
  set parameter id 'MAUTH' field pAuth.
Table name
  set parameter id 'MTABLE' field pTable.
Message class
  set parameter id 'MMNAME' field pMname.
Function
  set parameter id 'MFNAME' field pFName.
Function group
  set parameter id 'MFGROUP' field pFgroup.
Class
  set parameter id 'MCNAME' field pClName.
Program
  set parameter id 'MPROG' field pProg.
Customer namespace
  set parameter id 'MNAMESPACE' field pCName.
Folder
  set parameter id 'MFOLDER' field pFolder.
Package
  set parameter id 'MPACK' field pPack.
Text element checkbox
  set parameter id 'MTEXT' field pText.
Messages checkbox
  set parameter id 'MMESS' field pMess.
Includes checkbox
  set parameter id 'MINC' field pInc.
Recursive includes checkbox.
  set parameter id 'MRECI' field pReci.
Functions checkbox
  set parameter id 'MFUNC' field pFunc.
Recursive functions checkbox
  set parameter id 'MRECF' field pRecf.
Function module documntation checkbox
  set parameter id 'MDOC' field pDoc.
Screens checkbox
  set parameter id 'MSCR' field pScr.
Dictionary checkbox
  set parameter id 'MDICT' field pDict.
Sort table ascending checkBox
  set parameter id 'MSORTT' field pSortT.
****************************************SUBROUTINES***************************************************
checkComboBoxes...  Check input parameters
form checkComboBoxes.
  if pAuth is initial.
    case 'X'.
      when rTable.
        if pTable is initial.
          statusBarMessage = 'You must enter either a table name or author.'.
        endif.
      when rFunc.
        if ( pFName is initial ) and ( pFGroup is initial ).
          if pFName is initial.
            statusBarMessage = 'You must enter either a function name or author.'.
          else.
            if pFGroup is initial.
              statusBarMessage = 'You must enter either a function group, or an author name.'.
            endif.
          endif.
        endif.
      when rProg.
        if pProg is initial.
            statusBarMessage = 'You must enter either a program name or author name.'.
        endif.
    endcase.
Check the user name of the person objects are to be downloaded for
  else.
    if pAuth = 'SAP*' or pauth = 'SAP'.
      statusBarMessage = 'Sorry cannot download all objects for SAP standard user'.
    endif.
  endif.
  if not statusBarMessage is initial.
    perform displayStatus using statusBarMessage 3.
    forcedExit = 1.
    stop.
  endif.
endform.                                                                                "checkComboBoxes
fillSelectionRanges...      for selection routines
form fillSelectionRanges.
data: valueToFind type string.
  if not pAuth is initial.
    soAuthor-sign = 'I'.
    soAuthor-option = 'EQ'.
    soAuthor-low = pAuth.
    append soAuthor.
  endif.
  if not pTable is initial.
    if not pcName is initial and not pTable+0(1) = '/'.
      concatenate pcName pTable into valueToFind.
    else.
      valueTofind = pTable.
    endif.
    soTable-sign = 'I'.
    soTable-option = 'EQ'.
    soTable-low = valueToFind.
    append soTable.
  endif.
  if not pFName is initial.
    if not pcName is initial and not pFName+0(1) = '/'.
      concatenate pcName pFName into valueToFind.
    else.
      valueTofind = pFName.
    endif.
    soFunctionName-sign = 'I'.
    perform addOption using valueToFind soFunctionName-option.
    soFunctionName-low = valueToFind.
    append soFunctionName.
  endif.
  if not pFGroup is initial.
    if not pcName is initial and not pFGroup+0(1) = '/'.
      concatenate pcName pFGroup into valueToFind.
    else.
      valueTofind = pFGroup.
    endif.
    soFunctionGroup-sign = 'I'.
    perform addOption using valueToFind sofunctionGroup-option.
    soFunctionGroup-low = valueToFind.
    append soFunctionGroup.
  endif.
  if not pClName is initial.
    if not pcName is initial and not pClname+0(1) = '/'.
      concatenate pcName pClname into valueToFind.
    else.
      valueTofind = pClname.
    endif.
    soClassName-sign = 'I'.
    perform addOption using valueToFind soClassName-option.
    soClassName-low = valueToFind.
    append soClassName.
  endif.
  if not pProg is initial.
    if not pcName is initial and not pProg+0(1) = '/'.
      concatenate pcName pProg into valueToFind.
    else.
      valueTofind = pProg.
    endif.
    soProgramName-sign = 'I'.
    perform addOption using valueToFind soProgramName-option.
    soProgramName-low = valueTofind.
    append soProgramName.
  endif.
endfo

Similar Messages

  • I have been unable to download adobe acrobat pro, which I purchased on a month to month basis almost exactly 1 year ago, since I purchased it. I just received a renewal email and it had a link to download the program and for the first time when I clicked

    I have been unable to download adobe acrobat pro, which I purchased on a month to month basis almost exactly 1 year ago, since I purchased it. I just received a renewal email and it had a link to download the program and for the first time when I clicked on the link it actually sent me to a page that had the icon to download now. I clicked on that, but when I went to open the file and start downloading after about 3 minutes into downloading it says an error had occurred. Can anyone help me?

    I am a little worried. If you are an existing subscriber why would Adobe need you to download... I wonder if the message is a fake.
    I'm not clear, if you've had it for a year, whether you need to download, or you are just following the email?
    This page with the icon to download now. Was it a page on adobe.com ?

  • Trying to download a program and get "Waiting for other installations to complete"

    Trying to download a program and get "Waiting for other installations to complete"
    there are no other instalations going on that I know of Please help

    That is for your and your Mac's protection; you need your administrator password to download/install things.

  • Unable to download iTunes on my second windows computer (64 bit). I got it fine on my first one. After downloading the program and installing it, I keep getting an error message:Apple Mobile Device Failed to Start. This happens wven when my IPhone 5c is t

    I am unable to download iTunes on my second Windows 8 computer (64 bit). I got it fine on my first one and have used it quite a bit. After downloading the program and installing it on the second computer, I keep getting this error message: "Apple Mobile Device Failed to Start." This happens when when my IPhone 5c is connected via Wi-Fi and I have clicked on "Trust This Computer." (I have tried to install several times-- It gets hung up when it reaches"Starting Services.")

    Go to Control Panel > Add or Remove Programs (Win XP) or Programs and Features (Later)
    Remove all of these items in the following order:
    iTunes
    Apple Software Update
    Apple Mobile Device Support
    Bonjour
    Apple Application Support
    Reboot, download iTunes, then reinstall, either using an account with administrative rights, or right-clicking the downloaded installer and selecting Run as Administrator.
    See also HT1925: Removing and Reinstalling iTunes for Windows XP or HT1923: Removing and reinstalling iTunes for Windows Vista, Windows 7, or Windows 8
    Should you get the error iTunes.exe - Entry Point Not Found after the above reinstall then copy QTMovieWin.dll from:
    C:\Program Files (x86)\Common Files\Apple\Apple Application Support
    and paste into:
    C:\Program Files (x86)\iTunes
    The above paths would be for a 64-bit machine. Hopefully the same fix with the " (x86)" omitted would work on 32-bit systems with the same error.
    tt2

  • I partitioned a small drive for a windows program, and now the computer only wants to boot to Windows.  How do I get back to Mac so I can have a choice of drives?

      I partitioned a small drive for a windows program, and now the computer only wants to boot to Windows.  How do I get back to Mac so I can have a choice of drives?

    That doesn't sound good. It sounds like the power outage might have corrupted the partition for OS X. I would suggest booting from the Install DVD that came with your Mac while holding down the C key. Once you have selected the language start up Disk Utility from the pull down menu and repair the disk. Once you have done that then repair permissions also.
    Allan

  • Customized PO printing program and sapscript

    Hello,
    i have created a customized program and sapscript for PO printing.
    its working fine in our config client..when i moved to our training client... 2 information is not printing (ie: vendor name)
    i tried to do comparision of the program and sapscript of the 2 client and both are same..
    all setting is completed (NACE,MN04 etc) its only the one field not being display when i do my testing in the training client.
    i tried to use debug on training client and noticed that the field for vendor name is not being populated... but its working fine in the config client..same set up of vendor etc.
    anyway i can check what i have missed out ?
    thanks in advance.
    Edited by: she on Dec 28, 2009 7:03 PM
    <MOVED BY MODERATOR TO THE CORRECT FORUM>
    Edited by: Alvaro Tejada Galindo on Dec 28, 2009 2:36 PM

    Make sure the Vendor number and associated information exist in that client as well. Each client may very well have different Vendor numbers

  • I am trying connect to a SQL instance for our CRM program and I am receiving To Connect to this Server you must use SQL Management Studio or SQL Server Management

    I am trying connect to a SQL instance for our CRM program and I am receiving To Connect to this Server you must use SQL Management Studio or SQL Server Management 
    This is a Brand new Server 2012 that is running our CRM product and it is trying to connect to a Server 2008 R2 server with SQL Server 2008 R2 SP2 instance (10.50.4000)
    I have seen this in the past where it needed the 2005 backwards compatibility components installed but those are not supported on 2012 server and this is not a 2005 SQL instance.
    I am trying to install the Shared Management Objects for SQL Server 2008 but it tells me I need to install the CLR types, which I did install. But it continues to tell me to install the CLR types.
    Has anyone ran into any issues like this? (this happens trying to connect to multiple SQL Servers from this new 2012 Server)
    Thanks!
    -Max

    Hello,
    Which version and edition of the SQL Server instance did you installed on the new server machine?  If you install SQL Server 2012 Express edition, you can try to install SQL Server Management Studio 2012 from
    this link.
    You can connect to SQL Server 2008 R2 or earily verions with SSMS 2012.
    What's more, Microsoft SQL Server 2008 Management Objects Collection requires Microsoft Core XML Services (MSXML) 6.0, Microsoft SQL Server Native Client, and Microsoft SQL Server System CLR Types. You can try to download and install
    SQL Serve 2008 Feature Pack
    which contains packages above.
    Regards,
    Fanny Liu
    Fanny Liu
    TechNet Community Support

  • Apple ID for the Deployment Program and VPP is the same

    I created an Apple ID for the Deployment Program and authorized the same ID for VPP.  Now I learned these should be different.  Is this a problem and if so, how can the VPP ID be changed?

    You should be able to. The only hiccup will be that any apps that you have purchased with the older ID you will have to repurchase with the newer ID to be able to keep using them.
    Though of course this actually depends on how you plan to use the IDs. For example, I had an Apple ID through iTunes a few years before I opened a .Mac/MobileMe account (what iCloud is now in case you are new to Apple). Thus, my iPhone and iPad actually have two IDs on them, one for iTunes/App Store, and one for anything associated with iCloud. I've never really had any problems assoctiated with having two IDs on one device. Usually just an extra step when I get a new device or have to restore either of them for some reason. Though I understand that this is probably not what you plan on doing, I thought I would use it as an example of what the IDs are really associted with on the devices.

  • Why do i need to enter the credit card information for downloading free apps and redeem the codes?

    getting a message says apple id has not yet been used with the itunes store while trying to download apps
    why do i need to enter the credit card information for downloading free apps and redeem the codes?

    As a security precaution, Apple verifies your billing credentials with every transaction whether paid or free apps or using the balance of a redeemed code.

  • I have downloaded my program and it will not extract.  It suggests I download again.

    I have downloaded my program and it will not extract. It suggest i DOWnload again What is the solution?

    Same as in your otehr post: We need a lot more info.
    Mylenium

  • If your Team Lead given Functional Specifications for a BDC program and you

    If your Team Lead given Functional Specifications for a BDC program and you need to decide wether to write a Method Call Transaction or a Session.
    How you will decide ?

    Hi Krishna,
    See this you will got some ideas.
    Diff b/w call transaction and session method is
    Call transaction.
    1) asynchronous processing
    2) can transfer small amount of data
    3) processing is faster.
    4) errors need to be handled explicitly
    5) data is updated automatically
    Session method.
    1) synchronous processing.
    2) can tranfer large amount of data.
    3) processing is slower.
    4) error log is created
    5) data is not updated until session is processed.
    Thanks,
    Reward If Helpful.

  • Can you tell me what is a pass code for re setting program and where can I find it?

    Can you tell me what is a pass code for re setting program and where can I find it?

    For resetting what program? What are you trying to do? When you have a problem, please provide enough info to answer.
     Cheers, Tom

  • I signed up for the edge program and need to send back my old phone.  The instructions say I need to put it in the edge bag provided with my new phone order, but no bag is in the box.  Can I get one at a store?  Please respond!!

    I signed up for the edge program and need to send back my old phone.  The instructions say I need to put it in the edge bag provided with my new phone order, but no bag is in the box.  Can I get one at a store?  Please respond!!

        monkeybuttqueen,
    Thank you so much for reaching out to us today. I hope you are enjoying the new device! I do apologize that you didn't get the proper info sent to you to send back your old device. You can always print a label online from My Verizon. You can do that at www.verizonwireless.com/printlabel Pleaes keep us posted if you have any questions or concerns.
    KevinR_VZW
    Follow us on Twitter @VZWSupport

  • Hai Matt  I have a problem with download a new app. While I bought iphone5, I take iphone to shopkeeper for download some app and videos that he used his Apple ID . That's t problem now.. Not all the time his ID is appearing but some times hi

    Hai Matt
    I have a problem with download a new app. While I bought iphone5, I take iphone to shopkeeper for download some app and videos that he used his Apple ID . That's t problem now.. Not all the time his ID is appearing but some times his Apple ID is appearing that time I can't download app, videos, songs.. So please guide me to remove that ID or how to solve that..
    Regards
    Babu

    Check Settings/iTunes and AppStore/AppleID and make sure that your AppleID is filled in. If not , sign out and sign in with the correct info.
    To make sure that no other apps or videos are on your device than the one you bought, set it up as new device, explained here: How to back up your data and set up as a new device
    Content that is not bought with your ID can't be used on your phone, that's why his ID and password is asked when you try to use those apps downloaded in the store.

  • My icloud account keeps telling me that my user name or password for icloud is incorrect but it works for downloading apps etc and joining this forum

    my icloud account keeps telling me that my user name or password for icloud is incorrect but it works for downloading apps etc and joining this forum

    Accessing the itunes store and joining this forum are different accounts than an icloud account, so it's not necessarily true that your ID for icloud is the same as for itunes.
    Did you set up an icloud account?
    To create a new icloud account, go to
    http://www.apple.com/icloud/setup/

Maybe you are looking for