Separation of Function?

Basic functionality question - for multifunction devices where the Fax is connected to an analog phone line and the device is also attached to a (wired) LAN. Can the inbound fax connection be used as a bridge to the LAN in such a case?
I know that for many such devices the fax only understands / processes T.30, so it dismisses typical LAN protocols as noise, but wasn't sure how HP multifunction devices manage this particular scenario.

No, the phone line and LAN lines are totally separate in the printer.
Say thanks by clicking "Kudos" "thumbs up" in the post that helped you.
I am employed by HP

Similar Messages

  • Acrobat 9 Separations Preview.

    Acrobat 9 Output Preview.
    Just got the new CS4 and when I use the output preview (Separations Preview) in Acrobat it shows the 100% black text to be a CMYK mix (as if the file was RGB but it is not)
    I am a printer and I use this separations preview function continuously all day.
    The file is fine I look at it in Acrobat 8 it's just 100% black and in indesign its just 100% black
    Simulation Profile= US Sheetfed Coated V2
    Show= All
    It has to be a color management issue but
    Color management settings are
    RGB= Adobe RGB (1998)
    CMYK= U.S. Sheetfed Coated V2
    Grayscale= Dot Gain 20%
    Any help?

    Problem Solved but Thanks!

  • Function.InvokeAfter()

    Hi all,
    I've just noticed the new(ish) Function.InvokeAfter() function but one thing puzzles me: why does Function.Invoke() allow you to specify a function and a list of arguments separately, while Function.InvokeAfter() does not seem to allow for passing a list
    of arguments, just a function and a duration?
    Thanks,
    Chris
    Check out my MS BI blog I also do
    SSAS, PowerPivot, MDX and DAX consultancy and run
    public SQL Server and BI training courses in the UK

    Thanks Tristan, I guess the difference between the signatures made me wonder whether there was something I was missing.
    Chris
    Check out my MS BI blog I also do
    SSAS, PowerPivot, MDX and DAX consultancy
    and run public SQL Server and BI training courses in the UK

  • PHP: run a function during preg_replace

    This is an ongoing issue (sadly unsolved), if you're bored
    enough you can
    see my other posts.
    The code I have so far (thanks to one and all), successfully
    creates
    hyperlinks that target the right files, have the right
    'title', etc.
    However, the getFileSize function refuses to work within the
    preg_replace.
    Seems to me that I can't properly send the $1 variable to the
    getFileSize
    function; the $strfilename always just shows up as $1, but
    really it should
    be a file name, as it is within the hyperlink section. Most
    boring.
    So, does anyone know how to trigger the getFileSize by
    sending $1 as a
    string rather than just as a variable name '$1'?
    When called separately the function getFileSize works, so the
    issue really
    is the getFileSize('$1') section.
    <?php function changeMe($str){
    $pattern = "/\{([^:]*):([^\}]*)\}/";
    preg_match($pattern,$str,$matches);
    $file = $matches[2];
    $pattern = "/\{link:([^\}]*)\}/";
    return preg_replace($pattern,'<a href="docs/$1"
    title="click to open $1"
    target="_blank">'.getFileSize('$1').'</a>',$str);}
    ?>
    <?
    function getFileSize($strfilename){
    echo $strfilename.'<br />'; //returns $1 but should
    really return the file
    name
    $pathname='docs/';
    $fullname=$pathname.$strfilename;
    if (file_exists($fullname)){
    $strsize = human(filesize($fullname));
    return($strfilename.' : '.$strsize);
    } else {
    return("no file found");
    return;
    function human($size){
    for($si = 0; $size >= 1024; $size /= 1024, $si++);
    return round($size, 1).substr(' kMG', $si, 1);}
    ?>

    Thanks Joris,
    the preg_replace_callabck() has me thoroughly confused, but I
    guess a few
    more sleepless nights and I'll either have cracked it or
    moved to
    Kyrgyzstan.
    Craig
    "Joris van Lier" <[email protected]> wrote in message
    news:[email protected]...
    > Did you see Michael Fesser's reply in an earlier thread
    about
    > preg_replace_callback()?
    > it seems like that's what you need.
    >
    > "Craig" <[email protected]> wrote in message
    > news:[email protected]...
    >> This is an ongoing issue (sadly unsolved), if you're
    bored enough you can
    >> see my other posts.
    >> The code I have so far (thanks to one and all),
    successfully creates
    >> hyperlinks that target the right files, have the
    right 'title', etc.
    >> However, the getFileSize function refuses to work
    within the
    >> preg_replace.
    >> Seems to me that I can't properly send the $1
    variable to the getFileSize
    >> function; the $strfilename always just shows up as
    $1, but really it
    >> should be a file name, as it is within the hyperlink
    section. Most
    >> boring.
    >> So, does anyone know how to trigger the getFileSize
    by sending $1 as a
    >> string rather than just as a variable name '$1'?
    >> When called separately the function getFileSize
    works, so the issue
    >> really is the getFileSize('$1') section.
    >>
    >> <?php function changeMe($str){
    >> $pattern = "/\{([^:]*):([^\}]*)\}/";
    >> preg_match($pattern,$str,$matches);
    >> $file = $matches[2];
    >> $pattern = "/\{link:([^\}]*)\}/";
    >> return preg_replace($pattern,'<a href="docs/$1"
    title="click to open $1"
    >>
    target="_blank">'.getFileSize('$1').'</a>',$str);}
    >> ?>
    >> <?
    >> function getFileSize($strfilename){
    >> echo $strfilename.'<br />'; //returns $1 but
    should really return the
    >> file name
    >> $pathname='docs/';
    >> $fullname=$pathname.$strfilename;
    >> if (file_exists($fullname)){
    >> $strsize = human(filesize($fullname));
    >> return($strfilename.' : '.$strsize);
    >> } else {
    >> return("no file found");
    >> }
    >> return;
    >> }
    >> function human($size){
    >> for($si = 0; $size >= 1024; $size /= 1024,
    $si++);
    >> return round($size, 1).substr(' kMG', $si, 1);}
    >> ?>
    >>

  • Unable to select "show reminders" in ical

    Hi,
    I am unable to import my reminders into ical.  Everything I've read shows that I need to select "show reminders" under View in ical, but this isn't an option (It's not even that I can't select it.  It's just not there).  My reminders and calendar are all visible on icloud, just not visible together on my mac. 
    Any help would be much appreciated. 
    Thanks.

    Sorry, no answer, but I have the same problem.  I was trying to research why shared reminder lists between my wife and I, who have different AppleIDs, seemed to no longer work.  We set them up originally using iCal on icloud.com and shared them per the instructions we'd found.  They worked great, but seemed to be no longer working recently.  I finally got around to trying to troubleshoot but in no way can get the Reminders list to show in iCal on the website anymore (just like you found).  I was wondering if perhaps they were separating sharing functionality into the Reminders app but don't see it there either (nor even a Settings). 
    Note we still have the reminder lists on our devices (even the ones that were "owned" by the other), however when you use them, it's as if they were only your personal lists - they share only on your AppleID.   Any help appreciated.

  • How to setup a (ui) class in a readable way ?

    I'm pretty new to java (and java's OO model) and i can't really think of a nice way to do this :
    I'm creating a UI, a JFrame which has a JTabbedPane (with 8 tabs)
    and each of these 8 tabs contains either a few listboxes or a pretty complex form (think: 8 textboxes, dragdrop lists, buttons, labels, etc.).
    now i know how to code this but tossing it all in a single class will make it HUGE and thus pretty unmaintainable (i'm a pretty 'clean' programmer but still, thousands of lines in a method never looks good).
    Does anyone have any tips on how to organise my "ui building" code in multiple classes or interfaces or something else.
    When push comes to shove and the application is running the tabs do share some functionality (example: if you choose an item from a list in tab2 then the complex form on tab3 gets filled with the values of that item), so they are not truely separate entities.
    I usually have no trouble organising my code in a nice manner but visual/ui code in java doesn't really seem to fit into my way of thinking :)
    Any help would be appreciated !

    If a panel/tab has about 10 input components (input
    boxes, lists, buttons, etc.) and each of them has a
    label (pretty common) then you're easily talking
    about 25+ swing components (10x component, 10x label,
    some additional scrollpanes e.a.). Now imagine the
    form with 8 of these tabs , and we're talking about a
    few hundred of components.Once again, break them up. Why do all eight tabs have to be in the same class? You could easily define eight different classes that return or are eight different JComponent or JPanel instances and add each as a tab. Making each it's own class might not be appropriate in your case, but the point is they don't need to be in the same class or even the same source file.
    A typical Swing component needs about 5 (for a
    JButton) to 15 (for a JList in a scrollpane) lines of
    code to be initialized and tossed in the
    panel/layoutmanager. This means that my hundreds of
    components (together) need thousands of lines of
    code, just to place them.Where do you see redundancy in your code? Can you extract any of this redundancy to a separate method that can be called once for each component? Why does the initialization even have to be in the same place as the actual placement?
    For this reason, im looking for a good way to
    separate the UI (The view part of MVC) into
    sub-components. Reusability isn't really my concern
    at the moment, maintainability and good practise is.
    Besides, my skills with swing are too limited at the
    moment to be thinking about abstraction/reusability
    within the UI anyway.I don't think your knowledge of Swing matters. We're not talking about creating a robust custom table widget. We're talking about something as simple as moving code that creates a JPanel to show an address to another class called "AddressPanel" for example.
    I guess the real trouble is with me anyway, i'm
    pretty new to java (and swing) and although i really
    like the things it CAN do, i don't like the amount of
    code it takes to do it (mostly a swing problem i
    guess). I'm a big fan of abstraction and interfaces
    and all, but the amount of code needed to use simple
    components (such as listboxes) and placement on the
    form (whole layoutmanagers paradygm) just keeps the
    codebase huge and ugly.There were many design decisions made with Swing that I disagree with. For example, it's massive depedency on concrete inheritance and the implications it has, forcing you into concrete inheritance yourself. However, in the end it's pretty powerful and you can use these things as a benefit. For example, separate intialization and layout. They do not need to be in the same place.
    Maybe instead of worrying too much how to separate
    stuff in the "View" part of MVC), i should be looking
    at alternatives to Swing that are more appealing to
    my desire of having a clean codebase (maybe SWT or
    Buoy is any better? honoustly haven't looked yet) or
    maybe i should just ride it out and write a little
    wrapper/framework around swing myself (step by
    step).I am not aware of any solution out there as robust and consistent as Swing that is supported on all Java platforms. SWT sounds nice, but you rely on Eclipse to continue to support it on your target platforms. Maybe that's acceptable to you, but if it's not you're probably stuck with Swing.
    A typical java project of mine is (imo) pretty nicely
    setup (overall model, separation of functionality,
    codestyle, the use of 3rd party packages etc.) but
    has the UI in there as the ugly black sheep ;p (with
    either big classes or lots of classes).Refactoring is the best approach in my opinion. Check out Martin Fowler's book "Refactoring" if you're not familiar with what I mean. It doesn't require you to completely rethink your design or make massive changes. You just need to make little improvements, and in the end it adds up to a good solution. At least that's my experience.
    I'm just coding java applications for myself (usually
    more into non-UI programming) so i have the luxury of
    being able to try different approaches without
    worrying about a timetable. Best thing to do now is
    to think my current model over (compare it to true
    MVC and see what's different) and try to implement
    the "Command pattern" stuff and see where that gets
    me.The hardest part is figuring out how to implement MVC well using Swing. Or at least that's been the most difficult thing for me. I understand MVC. I understand Swing. Combining the two to meet my requirements has been a challenge and I still don't have the answer. After the fifth "re-design" I gave up the notion of figuring it out and decided to just do it and refactor whenever I saw something that smelled. So far it's working out pretty well.

  • Hi Profit center descriptions

    Hi Experts,
         For this design only profit centers under the following level 4 nodes will need to be extracted and sent to PROS SOI7CR0326 , SOI7FU0763 , SOI7FU0764 , SOI7FU0765.  All profit centers under these nodes will need to be sent although only level 4, level 6, and level 7 descriptions should be sent for each profit center.  I used transaction KCH3 to view the hierarchy below.
         I need descriptions for all the profit centers for the above mentioned nodes,  please see the code and give me some solution.
        5  SOI_STREAM      Downstream                                                                               
    4  SOI4000011      DOWNSTREAM (OIL)                                                       
            4  SOI5000001      DOWNSTREAM REFINING 1 PEER GRP                                         
            4  SOI5000002      DOWNSTREAM REFINING 2 PEER GRP                                         
            4  SOI5000003      DOWNSTREAM COMMERCIAL PEER GRP                                         
            5  SOI5000004      DOWNSTREAM RETAIL PEER GROUP                                                                               
    4  SOI6AC0001      ACCELERATOR BUSINESS UNIT                                          
                4  SOI6CR0001      US CONVENIENCE OPERATIONS                                          
                5  SOI6FU0001      US FUELS OPERATING UNIT                                                                               
    5  SOI7FU0692      SECONDARY TRANS / PIPELINE                                     
                    5  SOI7FU0762      RESTRUCTURING HIERARCHY                                        
                    5 <b> SOI7FU0763</b>      US FUELS MARKETING - EAST/GULF COAST         <--           Level 4 Description                                                                               
    5  SOI7FU0766      EGC FUELS SUPPLY GEOGRAPHY                                                                               
    5  SOI7FU0017      NORTHEAST GEOGRAPHY                                     <--          Level 6 Description
                                                                                    18026650   EAST S&H OPPORTUNITY PROJECTS EXPENSE       <--          Level 7 Description                                                                               
    5  SOI7FU0033      NEW YORK HARBOR - SUPPLY ENVELOPE                                                                               
    5  SOI7FU0034      TERMINALS&SUPPLYPLANTS -NEW YORK HARBOR                                                                               
    5  SOI7FU0174      GASOLINE - NEW YORK HARBOR                                                                               
    18000063   MA FIELD DISTRIBUTION                          
                                            18000070   WASHINGTON DC-20003 (LPOB)                     
                                            18000361   WILMINGTON DE-19801 (LPOB)                     
                                            18000371   CORAOPOLIS PA-15108 (LPOB)                     
                                            18000396   PHILADELPHIA PA-EXXON (LTOZ)                   
                                            18004753   BROOKLYN TERMINAL
    * This program can be used to export profit center hierarchies or other groups in a level table (format used by RGSIMPH1)
    * To actively use this program:
    *   - copy it to a local object
    *   - adapt DATA_TAB to the data structure in your foreign system
    *     (change positions, length of fields, remove TOVALUE if
    *      hierarchies contain single values only, ...)
    *   - write an export routine for DATA_TAB if you don't want to
    *     download it to the presentation server
    * Example hierarchy that will be exported by this program
    *    HIER-TOP                      Top node
    *      |
    *      |---- HIER-010              Node 10
    *      |       |
    *      |       |---- HIER-011      Node 11
    *      |       |       - CC 1      Profit center 1
    *      |       |       - CC 2      Profit center 2
    *      |       |
    *      |        ---- HIER-012      Node 12
    *      |               - CC 3      Profit center 3
    *      |               - CC 4      Profit center 4
    *      |
    *       ---- HIER-020              Node 20
    *              - CC 5              Profit center 5
    * The level table  DATA_TAB will look like this:
    *    Level  Groupname    Fromvalue  Tovalue           Descript
    *    0001   HIER-TOP                                  Top node
    *    0002   HIER-010                                  Node 10
    *    0003   HIER-011                                  Node 11
    *    0004                CC 1       CC 1
    *    0004                CC 2       CC 2
    *    0003   HIER-012                                  Node 12
    *    0004                CC 3       CC 3
    *    0004                CC 4       CC 4
    *    0002   HIER-020                                  Node 20
    *    0003                CC 5       CC 5
    *  Standard Architecture Data Structures
    INCLUDE: zbiod001,
             zbiud002,
             zbiud007.
    DATA: c_text_write(5) TYPE c VALUE 'Write'.
    TABLES: CEPC,
            CEPCT.
    *------------------------ Data ---------------------------------*
    DATA: I_CEPCT  LIKE CEPCT OCCURS 0 WITH HEADER LINE,
          WA_CEPCT LIKE CEPCT,
          I_CEPC   LIKE CEPC OCCURS 0 WITH HEADER LINE,
          WA_CEPC  LIKE CEPC.
    DATA: W_OBJECTID LIKE CDHDR-OBJECTID,
          W_LEVEL_CODE(30) TYPE C,
          W_LEVEL_NAME(50) TYPE C,
          W_LEVEL_CODE1(30) TYPE C,
          W_LEVEL_NAME1(50) TYPE C.
    DATA: BEGIN OF I_PROFIT OCCURS 10,
      ID(15)                TYPE C,
      CODE(10)                 TYPE C,
      NAME(20)                 TYPE C,
      DESC(40)                 TYPE C,
      HIER_LVL1_CODE(30)       TYPE C,
      HIER_LVL1_NAME(50)       TYPE C,
      HIER_LVL2_CODE(30)       TYPE C,
      HIER_LVL2_NAME(50)       TYPE C,
      HIER_LVL3_CODE(30)       TYPE C,
      HIER_LVL3_NAME(50)       TYPE C,
      HIER_LVL4_CODE(30)       TYPE C,
      HIER_LVL4_NAME(50)       TYPE C,
      HIER_LVL5_CODE(30)       TYPE C,
      HIER_LVL5_NAME(50)       TYPE C,
      HIER_LVL6_CODE(30)       TYPE C,
      HIER_LVL6_NAME(50)       TYPE C,
      HIER_LVL7_CODE(30)       TYPE C,
      HIER_LVL7_NAME(50)       TYPE C,
      HIER_LVL8_CODE(30)       TYPE C,
      HIER_LVL8_NAME(50)       TYPE C,
      HIER_LVL9_CODE(30)       TYPE C,
      HIER_LVL9_NAME(50)       TYPE C,
      HIER_LVL10_CODE(30)      TYPE C,
      HIER_LVL10_NAME(50)      TYPE C,
      HIER_LVL11_CODE(30)      TYPE C,
      HIER_LVL11_NAME(50)      TYPE C,
      CREATED_BY(15)                         TYPE C,
      CREATED_DATE(10)                       TYPE C,
      LAST_UPDATED_BY(15)                    TYPE C,
      LAST_UPDATED_DATE(10)                  TYPE C,
      BATCH_ID(15)                           TYPE C,
      STAGE2_DIM_ID(15)        TYPE C,
      SOURCE_SYSTEM_ID(20)                   TYPE C,
      ALT_ACCOUNT_SET_HIERARCHY_IND(1)       TYPE C,
    END OF I_PROFIT.
    *Structure required by Essbase. Str_PC1.TXT
    DATA: BEGIN OF I_STR_PC1 OCCURS 10,
      HIER_LVL1_CODE(30)       TYPE C,
      FILLER1(1)                TYPE C VALUE '|',
      HIER_LVL1_NAME(50)       TYPE C,
      FILLER2(1)                TYPE C VALUE '|',
      HIER_LVL2_CODE(30)       TYPE C,
      FILLER3(1)                TYPE C VALUE '|',
      HIER_LVL2_NAME(50)       TYPE C,
      FILLER4(1)                TYPE C VALUE '|',
      HIER_LVL3_CODE(30)       TYPE C,
      FILLER5(1)                TYPE C VALUE '|',
      HIER_LVL3_NAME(50)       TYPE C,
      FILLER6(1)                TYPE C VALUE '|',
      HIER_LVL4_CODE(30)       TYPE C,
      FILLER7(1)                TYPE C VALUE '|',
      HIER_LVL4_NAME(50)       TYPE C,
      FILLER8(1)                TYPE C VALUE '|',
      HIER_LVL5_CODE(30)       TYPE C,
      FILLER9(1)                TYPE C VALUE '|',
      HIER_LVL5_NAME(50)       TYPE C,
      FILLER10(1)                TYPE C VALUE '|',
      HIER_LVL6_CODE(30)       TYPE C,
      FILLER11(1)                TYPE C VALUE '|',
      HIER_LVL6_NAME(50)       TYPE C,
      FILLER12(1)                TYPE C VALUE '|',
      HIER_LVL7_CODE(30)       TYPE C,
      FILLER13(1)                TYPE C VALUE '|',
      HIER_LVL7_NAME(50)       TYPE C,
      FILLER14(1)                TYPE C VALUE '|',
      HIER_LVL8_CODE(30)       TYPE C,
      FILLER15(1)                TYPE C VALUE '|',
      HIER_LVL8_NAME(50)       TYPE C,
      FILLER16(1)                TYPE C VALUE '|',
      HIER_LVL9_CODE(30)       TYPE C,
      FILLER17(1)                TYPE C VALUE '|',
      HIER_LVL9_NAME(50)       TYPE C,
      FILLER18(1)                TYPE C VALUE '|',
      HIER_LVL10_CODE(30)      TYPE C,
      FILLER19(1)                TYPE C VALUE '|',
      HIER_LVL10_NAME(50)      TYPE C,
      FILLER20(1)                TYPE C VALUE '|',
      HIER_LVL11_CODE(30)      TYPE C,
      FILLER21(1)                TYPE C VALUE '|',
      HIER_LVL11_NAME(50)      TYPE C,
      FILLER22(1)                TYPE C VALUE '|',
      CODE(10)                 TYPE C,
      FILLER23(1)                TYPE C VALUE '|',
      DESC(40)                 TYPE C,
      FILLER24(1)                TYPE C VALUE '|',
      NAME(20)                 TYPE C,
      FILLER25(1)                TYPE C VALUE '|',
    END OF I_STR_PC1.
    *Variable declaration
    DATA: CTR(2) TYPE C,
          INC TYPE I,
          W_CTR1(2) TYPE C,
          W_INC1 TYPE I.
    DATA: w_file_prft LIKE w_prc_files.
    *Field symbols.
      FIELD-SYMBOLS: <CD1>,
                     <NM1>.
    * External level table will be using the following structure
    DATA: BEGIN OF data_tab OCCURS 0,
            level(4)      TYPE n,          "level in hierarchy
            groupname     LIKE grpdynp-name_coall, "name of node
            fromvalue     LIKE setvalues-from,  "From-Value of interval
            tovalue       LIKE setvalues-to,    "To-Value of interval
            descript      LIKE sethier-descript,"description of this entry
          END OF data_tab.
    *Constants
    CONSTANTS: c_setclass LIKE sethier-setclass VALUE '01++'.
    *------------------------ SelectionScreen--------------------------*
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    * Parameters
    PARAMETERS: g_setid   LIKE sethier-setid OBLIGATORY MEMORY ID gse.
    SELECTION-SCREEN END OF BLOCK B1.
    * Tables to read sets
    DATA: sethier   LIKE sethier OCCURS 0 WITH HEADER LINE,  "hierar. nodes
          setvalues LIKE setvalues OCCURS 0 WITH HEADER LINE, "hier. values
          g_setval_index LIKE sy-tabix,    "index for setvalues,
          g_int     TYPE i,
          g_rc      TYPE c,
          g_old_file LIKE lgrwo-exp_file.
    *------------------------ AT Selection screen----------------------*
    AT SELECTION-SCREEN.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR g_setid.
    * Value request for group name
      CALL FUNCTION 'G_RW_SET_SELECT'
           EXPORTING
                class           = c_setclass
                set             = g_setid
                typelist        = 'BS'
                show_field_name = ' '
                show_table_name = ' '
           IMPORTING
                setid           = g_setid
                set_name        = g_setid.
    *peform to read profit center hierarchy
    PERFORM READ_SETHIER.
    *perform to change the output format to flat file format
    PERFORM PROFIT_CENTER_HIER.
    *Fill remaining details from profit center master tables
    PERFORM FILL_PRCTR_DETAILS.
    *perform to download the details
    PERFORM F_WRITE_TO_FILE.
    FORM READ_SETHIER.
    * Preparations: check authority to read sets
        CALL FUNCTION 'G_SET_OR_GROUP_AUTHORITY'
             EXPORTING
                  i_setid = g_setid
                  i_actvt = '03'.
    * Read set
      REFRESH: sethier, setvalues.
      CALL FUNCTION 'G_SET_TREE_IMPORT'
           EXPORTING
                no_rw_info    = 'X'
                setid         = g_setid
           TABLES
                set_hierarchy = sethier
                set_values    = setvalues.
    * Copy set into DATA_TAB
      REFRESH data_tab.
      g_setval_index = 1.
      LOOP AT sethier.
        CLEAR data_tab.
        data_tab-level = sethier-level.
        data_tab-groupname = sethier-shortname.
        data_tab-descript = sethier-descript.
        APPEND data_tab.
        CHECK sethier-vcount > 0.
        CLEAR data_tab.
        data_tab-level = sethier-level + 1.
        g_int = g_setval_index + sethier-vcount - 1.
        LOOP AT setvalues FROM g_setval_index TO g_int.
          data_tab-fromvalue = setvalues-from.
          data_tab-tovalue = setvalues-to.
          data_tab-descript = setvalues-descript.
          APPEND data_tab.
        ENDLOOP.
        g_setval_index = g_int + 1.
      ENDLOOP.
    ENDFORM.
    FORM PROFIT_CENTER_HIER.
    * Use DATA_TAB table here to get to the heirarchies.
    LOOP AT DATA_TAB.
         W_INC1 = DATA_TAB-LEVEL.
         W_CTR1 = W_INC1.
         IF DATA_TAB-LEVEL = '0000' .
            CONTINUE.
         ENDIF.
        IF NOT DATA_TAB-GROUPNAME IS INITIAL.
          CONCATENATE 'I_PROFIT-HIER_LVL' W_CTR1 '_CODE' INTO W_LEVEL_CODE1.
          ASSIGN  (W_LEVEL_CODE1) TO <CD1>.
          <CD1> = DATA_TAB-GROUPNAME.
          CONCATENATE 'I_PROFIT-HIER_LVL' W_CTR1 '_NAME' INTO W_LEVEL_NAME1.
          ASSIGN (W_LEVEL_NAME1) TO <NM1>.
          <NM1> = DATA_TAB-DESCRIPT.
         ELSEIF NOT ( DATA_TAB-FROMVALUE IS INITIAL OR
                           DATA_TAB-TOVALUE IS INITIAL ) AND
                            DATA_TAB-LEVEL NE '0001' .
              MOVE DATA_TAB-FROMVALUE TO I_PROFIT-CODE.
              PERFORM CLEAR_ABOVE_LEVEL USING W_CTR1.
              APPEND I_PROFIT.
              CONTINUE.
         ENDIF.
    ENDLOOP.
    ENDFORM.
    *       FORM GET_FILE_NAME                                            *
    *       Value help for export/import file name                        *
    FORM get_file_name CHANGING p_outfile LIKE lgrwo-exp_file.
      DATA: path             LIKE lgrwo-exp_file,
            len              TYPE i,
            separator(1)     TYPE c,
            window_system(4) TYPE c.
      FIELD-SYMBOLS <last_char>.
    * get presentation server operating system for file name separator
      CALL FUNCTION 'WS_QUERY'
           EXPORTING
                query  = 'WS'
           IMPORTING
                return = window_system.
      IF window_system = 'MC'.             "Mac OS
        separator = ':'.
      ELSE.                                "Windoze
        separator = ''.
      ENDIF.
    * get path name
      path = p_outfile.
      SHIFT path RIGHT DELETING TRAILING space.
      DESCRIBE FIELD path LENGTH len.
      len = len - 1.
      ASSIGN path+len(1) TO <last_char>.
      WHILE <last_char> <> separator AND
            path <> space.
        SHIFT path RIGHT.
      ENDWHILE.
      SHIFT path LEFT DELETING LEADING space.
    * get file name
      WHILE p_outfile CS separator.
        SHIFT p_outfile UP TO separator.
        SHIFT p_outfile.
      ENDWHILE.
    * get file name
      CALL FUNCTION 'WS_FILENAME_GET'
           EXPORTING
                def_filename = p_outfile
                def_path     = path
                mask         = ',*.*,*.*.'
                mode         = 'S'
           IMPORTING
                filename     = p_outfile
           EXCEPTIONS
                OTHERS       = 0.
    ENDFORM.
    *&      Form  CLEAR_ABOVE_LEVEL
    FORM CLEAR_ABOVE_LEVEL USING   P_LEVEL.
    *Field symbols.
      FIELD-SYMBOLS: <CD>,
                     <NM>.
    *Clear code and name from upper level hierarchies when profit center
    * is found in the lower level hierarchies.
        WHILE P_LEVEL <= 10.
         CONCATENATE 'I_PROFIT-HIER_LVL' P_LEVEL '_CODE' INTO W_LEVEL_CODE.
          ASSIGN  (W_LEVEL_CODE) TO <CD>.
          CLEAR <CD>.
         CONCATENATE 'I_PROFIT-HIER_LVL' P_LEVEL '_NAME' INTO W_LEVEL_NAME.
          ASSIGN  (W_LEVEL_NAME) TO <NM>.
          CLEAR <NM>.
          P_LEVEL = P_LEVEL + 1.
        ENDWHILE.
        CLEAR: P_LEVEL,
               W_LEVEL_CODE,
               W_LEVEL_NAME.
    ENDFORM.                    " CLEAR_ABOVE_LEVEL
    *&      Form  FILL_PRCTR_DETAILS
    FORM FILL_PRCTR_DETAILS.
    DATA: CTR TYPE I.
    *Select description from CEPCT table
      SELECT * FROM CEPCT INTO TABLE I_CEPCT WHERE SPRAS EQ 'EN'.
      SELECT * FROM CEPC INTO  TABLE I_CEPC.
       SORT I_CEPC DESCENDING BY PRCTR DATBI.
       DELETE ADJACENT DUPLICATES FROM I_CEPC COMPARING PRCTR.
       SORT I_CEPC.
       SORT I_PROFIT BY CODE.
    LOOP AT I_PROFIT.
       CLEAR: WA_CEPC,
              WA_CEPCT,
              W_OBJECTID.
       CTR = CTR + 1.
         READ TABLE I_CEPC INTO WA_CEPC WITH KEY PRCTR = I_PROFIT-CODE.
         READ TABLE I_CEPCT INTO WA_CEPCT WITH KEY PRCTR = WA_CEPC-PRCTR
                                                   DATBI = WA_CEPC-DATBI.
              MOVE: CTR             TO I_PROFIT-ID,
                    WA_CEPCT-KTEXT  TO I_PROFIT-NAME,
                    WA_CEPCT-LTEXT  TO I_PROFIT-DESC.
        CONCATENATE '0002' I_PROFIT-CODE INTO W_OBJECTID.
           MOVE-CORRESPONDING I_PROFIT TO I_STR_PC1.
           APPEND I_STR_PC1.
    ENDLOOP.
    FREE I_PROFIT.
    ENDFORM.                    " FILL_PRCTR_DETAILS
    *&      Form  F_DOWNLOAD
    FORM F_DOWNLOAD.
    ENDFORM.
    *&      Form  F_WRITE_TO_FILE
    FORM F_WRITE_TO_FILE.
    LOOP AT I_STR_PC1.
        PERFORM WRITE_FILE USING I_STR_PC1
                                       w_file_prft-PRC_FILE..
    ENDLOOP.
    ENDFORM.                    " F_WRITE_TO_FILE
    FORM WRITE_FILE USING W_RECORD W_PRC_FILE.
      DATA: W_RECORD_LEN TYPE I.
    *  Retreive the actual length of the record to be written
      DESCRIBE FIELD W_RECORD LENGTH W_RECORD_LEN.
      TRANSFER W_RECORD TO W_PRC_FILE LENGTH W_RECORD_LEN.
      IF SY-SUBRC NE 0.
        MESSAGE ID 'ZZ' TYPE 'A' NUMBER '001'
             WITH C_TEXT_WRITE  W_PRC_FILE.
      ENDIF.
      CLEAR W_RECORD.
    ENDFORM.
    Thanks & Regards,
    Poorna.

    hi all,
              here is the solution:
    **------------------------ Data ---------------------------------*
    DATA: i_cepct  LIKE cepct OCCURS 0 WITH HEADER LINE,
          wa_cepct LIKE cepct,
          i_cepc   LIKE cepc OCCURS 0 WITH HEADER LINE,
          wa_cepc  LIKE cepc.
    *Variable declaration
    DATA: w_ctr1(2) TYPE c,
          w_inc1 TYPE i.
    DATA: w_level_code(30) TYPE c,
          w_level_name(50) TYPE c,
          w_level_code1(30) TYPE c,
          w_level_name1(50) TYPE c.
    *Field symbols.
    FIELD-SYMBOLS: <cd1>,
                   <nm1>.
    * External level table will be using the following structure
    DATA: BEGIN OF data_tab OCCURS 0,
            level(4)      TYPE n,          "level in hierarchy
            groupname     LIKE grpdynp-name_coall, "name of node
            fromvalue     LIKE setvalues-from,  "From-Value of interval
            tovalue       LIKE setvalues-to,    "To-Value of interval
            descript      LIKE sethier-descript,"description of this entry
          END OF data_tab.
    * Tables to read sets
    DATA: sethier   LIKE sethier OCCURS 0 WITH HEADER LINE, "hier-nodes
          setvalues LIKE setvalues OCCURS 0 WITH HEADER LINE, "hier-values
          g_setval_index LIKE sy-tabix,    "index for setvalues,
          g_int     TYPE i.
    DATA: BEGIN OF i_profit OCCURS 10,
      id(15)                TYPE c,
      code(10)                 TYPE c,
      name(20)                 TYPE c,
      desc(40)                 TYPE c,
      hier_lvl1_code(30)       TYPE c,
      hier_lvl1_name(50)       TYPE c,
      hier_lvl2_code(30)       TYPE c,
      hier_lvl2_name(50)       TYPE c,
      hier_lvl3_code(30)       TYPE c,
      hier_lvl3_name(50)       TYPE c,
      hier_lvl4_code(30)       TYPE c,
      hier_lvl4_name(50)       TYPE c,
      hier_lvl5_code(30)       TYPE c,
      hier_lvl5_name(50)       TYPE c,
      hier_lvl6_code(30)       TYPE c,
      hier_lvl6_name(50)       TYPE c,
      hier_lvl7_code(30)       TYPE c,
      hier_lvl7_name(50)       TYPE c,
      hier_lvl8_code(30)       TYPE c,
      hier_lvl8_name(50)       TYPE c,
      hier_lvl9_code(30)       TYPE c,
      hier_lvl9_name(50)       TYPE c,
      hier_lvl10_code(30)      TYPE c,
      hier_lvl10_name(50)      TYPE c,
      hier_lvl11_code(30)      TYPE c,
      hier_lvl11_name(50)      TYPE c,
      created_by(15)                         TYPE c,
      created_date(10)                       TYPE c,
      last_updated_by(15)                    TYPE c,
      last_updated_date(10)                  TYPE c,
      batch_id(15)                           TYPE c,
      stage2_dim_id(15)        TYPE c,
      source_system_id(20)                   TYPE c,
      alt_account_set_hierarchy_ind(1)       TYPE c,
    END OF i_profit.
    DATA: BEGIN OF i_str_pc2 OCCURS 10,
            code(10)                 TYPE c,
            desc(50)                 TYPE c,
            hier_lvl1_name(50)       TYPE c,
            hier_lvl3_name(50)       TYPE c,
            hier_lvl4_name(50)       TYPE c,
            extradatetime(20)        TYPE c,
          END OF i_str_pc2,
          BEGIN OF i_setid OCCURS 4,
            g_setid   LIKE sethier-setid,
            v_kokrs LIKE sethier-kokrs,
          END OF i_setid.
    DATA : wa_str_pc2 LIKE i_str_pc2,
           wa_setid LIKE i_setid,
           v_datetim(20) TYPE c,
           v_tim(8) TYPE c,
           v_level_dec(50) TYPE c,
           v_profit_desc(50) TYPE c.
    *"*"Local interface:
    *"  TABLES
    *"      IPROFIT STRUCTURE  ZPCT
    * Append all the major nodes to I_setid
    * SOI7CR0326 – Profit Center node1( under this Hier will be available, and the end you will have profit centers),
    * SOI7FU0763 – Profit Center node2,
    * SOI7FU0764 – Profit Center node3,
    * SOI7FU0765 – Profit Center node4.
      wa_setid-g_setid = text-009.
      wa_setid-v_kokrs = text-004.
      APPEND wa_setid TO i_setid.
      wa_setid-g_setid = text-010.
      wa_setid-v_kokrs = text-004.
      APPEND wa_setid TO i_setid.
      wa_setid-g_setid = text-011.
      wa_setid-v_kokrs = text-004.
      APPEND wa_setid TO i_setid.
      wa_setid-g_setid = text-012.
      wa_setid-v_kokrs = text-004.
      APPEND wa_setid TO i_setid.
    * Loop at earch major nodes from i_setid.
      LOOP AT i_setid INTO wa_setid.
        REFRESH: i_profit.
    * Preparations: check authority to read sets
        CALL FUNCTION 'G_SET_OR_GROUP_AUTHORITY'
             EXPORTING
                  i_setid = wa_setid-g_setid
                  i_actvt = '03'.
    * Funtion module to import the set hierarchy and nodes values.
        REFRESH: sethier, setvalues.
        CALL FUNCTION 'G_SET_TREE_IMPORT'
             EXPORTING
                  no_rw_info    = 'X'
                  setid         = wa_setid-g_setid
             TABLES
                  set_hierarchy = sethier
                  set_values    = setvalues.
    * Copy set into DATA_TAB
        REFRESH data_tab.
        g_setval_index = 1.
        LOOP AT sethier.
          CLEAR data_tab.
          data_tab-level = sethier-level.
          data_tab-groupname = sethier-shortname.
          data_tab-descript = sethier-descript.
          APPEND data_tab.
          CHECK sethier-vcount > 0.
          CLEAR data_tab.
          data_tab-level = sethier-level + 1.
          g_int = g_setval_index + sethier-vcount - 1.
          LOOP AT setvalues FROM g_setval_index TO g_int.
            data_tab-fromvalue = setvalues-from.
            data_tab-tovalue = setvalues-to.
            data_tab-descript = setvalues-descript.
            APPEND data_tab.
          ENDLOOP.
          g_setval_index = g_int + 1.
        ENDLOOP.
    * Loop at the data_tab to move all the Profit center nodes to i_profit.
        LOOP AT data_tab.
          w_inc1 = data_tab-level.
          w_ctr1 = w_inc1.
          IF data_tab-level = text-002 .
            v_level_dec = data_tab-descript.  "Description of level 4 node
            CONTINUE.
          ENDIF.
          IF NOT data_tab-groupname IS INITIAL.
            CONCATENATE text-001 w_ctr1 text-007 INTO w_level_code1.
            ASSIGN  (w_level_code1) TO <cd1>.
            <cd1> = data_tab-groupname.
            CONCATENATE text-001 w_ctr1 text-008 INTO w_level_name1.
            ASSIGN (w_level_name1) TO <nm1>.
            <nm1> = data_tab-descript.
          ELSEIF NOT ( data_tab-fromvalue IS INITIAL OR
                            data_tab-tovalue IS INITIAL ) AND
                             data_tab-level NE text-003 .
            MOVE data_tab-fromvalue TO i_profit-code.
            PERFORM clear_above_level USING w_ctr1.
            APPEND i_profit.
            CONTINUE.
          ENDIF.
        ENDLOOP.
    *Select description from CEPCT table
        SELECT * FROM cepct
                 INTO TABLE i_cepct
                 WHERE spras EQ text-006.
        SELECT * FROM cepc
                 INTO  TABLE i_cepc.
        SORT i_cepc DESCENDING BY prctr datbi.
        DELETE ADJACENT DUPLICATES FROM i_cepc COMPARING prctr.
        SORT i_cepc.
        SORT i_profit BY code.
    * Date and Times for each record.
        CONCATENATE sy-uzeit+0(2) text-005 sy-uzeit+2(2) text-005
          sy-uzeit+4(2) INTO v_tim.
        CONCATENATE sy-datum v_tim INTO v_datetim SEPARATED BY space.
        LOOP AT i_profit .
          CLEAR: wa_cepc,
                 wa_cepct.
          IF   ( i_profit-code <> space
            AND i_profit-hier_lvl2_name <> space
            AND i_profit-hier_lvl3_name <> space ).
            READ TABLE i_cepc INTO wa_cepc WITH KEY prctr = i_profit-code.
            IF sy-subrc = 0.
            READ TABLE i_cepct INTO wa_cepct WITH KEY prctr = wa_cepc-prctr
                                                      datbi = wa_cepc-datbi.
              IF sy-subrc = 0.
    *v_level_dec               ( Description of level 4 node )
    *i_profit-hier_lvl2_name   ( Descri Level 6 )
    *i_profit-hier_lvl3_name   ( Descri Level 6 )
    *i_profit-code             ( Profit Center code )
    *v_profit_desc             ( Profit Center description )
       CONCATENATE wa_cepct-ltext text-013 i_profit-code INTO v_profit_desc.
                wa_str_pc2-hier_lvl1_name = v_level_dec.
                wa_str_pc2-hier_lvl3_name = i_profit-hier_lvl2_name.
                wa_str_pc2-hier_lvl4_name = i_profit-hier_lvl3_name.
                wa_str_pc2-code           = i_profit-code.
                wa_str_pc2-desc           = v_profit_desc.
                wa_str_pc2-extradatetime  = v_datetim.
                APPEND wa_str_pc2 TO iprofit.
              ENDIF.
            ENDIF.
          ENDIF.
        ENDLOOP.
        CLEAR: v_level_dec.
      ENDLOOP.
      CLEAR: wa_setid.
    ENDFUNCTION.

  • File path and file name?

    hi could anyone give code for filename and file path name from application and presentation server....
    I need to give file name and file path on selection screen for both the servers....

    Hi Abhay,
    Refer to the below code:
    *& Report  ZHYPERION                                                   *
    *& Project : SubSea7
    Created on : 07/02/2007
    Created by : Puneet Jhari.
    *& Purpose : For SAP Interface download Hyperion.
    REPORT  zhyperion NO STANDARD PAGE HEADING  MESSAGE-ID zhyper.
    Start of Data Declaration
    TYPE-POOLS : truxs,vrm.
    TABLES : glpct,cepc.
    DATA : var TYPE i,
            total TYPE f.
    DATA : BEGIN OF wa2,
           ryear LIKE glpct-ryear,
           rbukrs LIKE glpct-rbukrs,
           racct LIKE glpct-racct,
           ksl01 LIKE glpct-ksl01,
           END OF wa2.
    DATA : BEGIN OF wa3,
           ryear LIKE glpct-ryear,
           rbukrs LIKE glpct-rbukrs,
           racct LIKE glpct-racct,
           ksl01 LIKE glpct-ksl01,
           END OF wa3.
    DATA : BEGIN OF wa4,
           racct LIKE glpct-racct,
           END OF wa4.
    DATA : BEGIN OF wa5,
           rbukrs LIKE glpct-rbukrs,
           racct LIKE glpct-racct,
           total1(8) TYPE p DECIMALS 2,
           END OF wa5.
    DATA : BEGIN OF wa9,
           khinr LIKE cepc-khinr,
           racct LIKE glpct-racct,
           total1(8) TYPE p DECIMALS 2,
           END OF wa9.
    DATA : BEGIN OF wa6,
           khinr LIKE cepc-khinr,
           prctr LIKE cepc-prctr,
           rprctr LIKE glpct-rprctr,
           ryear LIKE glpct-ryear,
           rbukrs LIKE glpct-rbukrs,
           racct LIKE glpct-racct,
           ksl01 LIKE glpct-ksl01,
           END OF wa6.
    DATA : BEGIN OF wa7,
           khinr LIKE cepc-khinr,
           prctr LIKE cepc-prctr,
           rprctr LIKE glpct-rprctr,
           ryear LIKE glpct-ryear,
           rbukrs LIKE glpct-rbukrs,
           racct LIKE glpct-racct,
           ksl01 LIKE glpct-ksl01,
           END OF wa7.
    DATA : itab3 LIKE TABLE OF wa2,
           itab4 LIKE TABLE OF wa3,
           itab5 LIKE TABLE OF wa4 WITH HEADER LINE,
           itab6 LIKE TABLE OF wa5 WITH HEADER LINE,
           itab7 LIKE TABLE OF wa6,
           itab8 LIKE TABLE OF wa7,
           itab10 LIKE TABLE OF wa9.
    DATA : flag(1) TYPE c,
           temp(6) TYPE c.
    DATA : itab2 TYPE truxs_t_text_data,
           itab9 TYPE truxs_t_text_data WITH HEADER LINE.
    DATA : name TYPE vrm_id,
           list TYPE vrm_values,
           value LIKE LINE OF list,
           FILNAM11 TYPE STRING,
           FILNAM21 TYPE STRING.
    End of Data Declaration
    Begin of Selection Screen
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    PARAMETERS: r1 DEFAULT 'X' RADIOBUTTON GROUP g1 USER-COMMAND rad1,
    r2 RADIOBUTTON GROUP g1 .
    SELECTION-SCREEN END OF BLOCK b1.
    SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-005.
    PARAMETERS: rbukrs1 TYPE glpct-rbukrs MODIF ID ful,
                khinr1 TYPE cepc-khinr AS LISTBOX VISIBLE LENGTH 20
                MODIF ID sam ,
                ryear1 TYPE glpct-ryear MODIF ID ful,
                ryear2 TYPE glpct-ryear MODIF ID sam,
                rpmax1 TYPE i MODIF ID ful,
                rpmax2 TYPE i MODIF ID sam,
                filnam1 TYPE rlgrap-filename MODIF ID ful,
                filnam2 TYPE RLGRAP-FILENAME MODIF ID sam.
    SELECTION-SCREEN END OF BLOCK b3.
    End of Selection Screen
    AT SELECTION-SCREEN OUTPUT
    AT SELECTION-SCREEN OUTPUT.
    PERFORM populate.          "For populating the drop-down list.
    CLEAR VALUE.
    REFRESH LIST.
    NAME = 'KHINR1'.
    VALUE-KEY = '1S7_NOCASV'.
    VALUE-TEXT = '1S7_NOCASV'.
    APPEND VALUE TO LIST.
    VALUE-KEY = '1S7_NOCJOT'.
    VALUE-TEXT = '1S7_NOCJOT'.
    APPEND VALUE TO LIST.
    LOOP AT SCREEN.            "For toggling between the selection screens.
        IF r1 EQ 'X'.
          IF screen-group1 = 'SAM'.
            screen-active = 0.
          ENDIF.
        ELSEIF r2 EQ 'X'.
          IF screen-group1 = 'FUL'.
            screen-active = 0.
          ENDIF.
        ENDIF.
        MODIFY SCREEN.
      ENDLOOP.
    For the Drop-Down Listbox
      CALL FUNCTION 'VRM_SET_VALUES'
        EXPORTING
          id                    = name
          values                = list
    EXCEPTIONS
      ID_ILLEGAL_NAME       = 1
      OTHERS                = 2
      IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    Begin of Data Selection
    START-OF-SELECTION.
    When Company Code radio button is selected.
      IF r1 EQ 'X'.            "If Company Code radio button is selected.
        IF rbukrs1 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
        IF rpmax1 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
        IF ryear1 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
        IF filnam1 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
    MOVE FILNAM1 TO FILNAM11.
        CASE rpmax1.
          WHEN '01'.
            SELECT ryear rbukrs racct ksl01
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '02'.
            SELECT ryear rbukrs racct ksl02
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '03'.
            SELECT ryear rbukrs racct ksl03
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '04'.
            SELECT ryear rbukrs racct ksl04
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '05'.
            SELECT ryear rbukrs racct ksl05
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '06'.
            SELECT ryear rbukrs racct ksl06
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '07'.
            SELECT ryear rbukrs racct ksl07
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '08'.
            SELECT ryear rbukrs racct ksl08
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '09'.
            SELECT ryear rbukrs racct ksl09
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '10'.
            SELECT ryear rbukrs racct ksl10
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '11'.
            SELECT ryear rbukrs racct ksl11
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '12'.
            SELECT ryear rbukrs racct ksl12
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '13'.
            SELECT ryear rbukrs racct ksl13
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '14'.
            SELECT ryear rbukrs racct ksl14
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '15'.
            SELECT ryear rbukrs racct ksl15
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '16'.
            SELECT ryear rbukrs racct ksl16
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
        ENDCASE.
        MOVE itab3 TO itab4.
        LOOP AT itab3 INTO wa2.
          flag = 0.
          LOOP AT itab5 INTO wa4.
            IF wa2-racct EQ wa4-racct.
              flag = 1.
              EXIT.
            ENDIF.
          ENDLOOP.
          DELETE ADJACENT DUPLICATES FROM itab5.
          IF flag = 1.
            CONTINUE.
          ENDIF.
          LOOP AT itab4 INTO wa3.
            IF wa2-rbukrs EQ wa3-rbukrs AND wa2-racct EQ wa3-racct AND
            wa2-ryear EQ wa3-ryear.
              total = total + wa3-ksl01.
            ENDIF.
          ENDLOOP.
          wa5-rbukrs = wa2-rbukrs.
          wa5-racct = wa2-racct+4(6).
          wa5-total1 = total.
          APPEND wa5 TO itab6.
          CLEAR total.
          APPEND wa2-racct TO itab5.
        ENDLOOP.
    If no data is available corresponding to the values entered.
        IF itab6[] IS INITIAL.
          MESSAGE i003.
        ENDIF.
    For making the file Comma separated
        CALL FUNCTION 'SAP_CONVERT_TO_TEX_FORMAT'
          EXPORTING
            i_field_seperator          = ','
    I_LINE_HEADER              =
      I_FILENAME                 =
      I_APPL_KEEP                = ' '
          TABLES
            i_tab_sap_data             = itab6
         CHANGING
           i_tab_converted_data       = itab2
    EXCEPTIONS
      CONVERSION_FAILED          = 1
      OTHERS                     = 2
        IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
    For downloading it to the Presentation Server
       MOVE itab2[] TO itab9[].
       OPEN DATASET filnam1 FOR OUTPUT IN LEGACY TEXT MODE.
       LOOP AT itab9.
         TRANSFER itab9 TO filnam1.
       ENDLOOP.
       CLOSE DATASET filnam1.
       IF sy-subrc EQ 0.
         MESSAGE s004.
       ENDIF.
    CALL FUNCTION 'GUI_DOWNLOAD'
      EXPORTING
      BIN_FILESIZE                    =
        filename                        = FILNAM11
      FILETYPE                        = 'ASC'
      APPEND                          = ' '
      WRITE_FIELD_SEPARATOR           = ' '
      HEADER                          = '00'
      TRUNC_TRAILING_BLANKS           = ' '
      WRITE_LF                        = 'X'
      COL_SELECT                      = ' '
      COL_SELECT_MASK                 = ' '
      DAT_MODE                        = ' '
      CONFIRM_OVERWRITE               = ' '
      NO_AUTH_CHECK                   = ' '
      CODEPAGE                        = ' '
      IGNORE_CERR                     = ABAP_TRUE
      REPLACEMENT                     = '#'
      WRITE_BOM                       = ' '
      TRUNC_TRAILING_BLANKS_EOL       = 'X'
      WK1_N_FORMAT                    = ' '
      WK1_N_SIZE                      = ' '
      WK1_T_FORMAT                    = ' '
      WK1_T_SIZE                      = ' '
      WRITE_LF_AFTER_LAST_LINE        = ABAP_TRUE
    IMPORTING
      FILELENGTH                      =
      tables
        data_tab                        = itab2
      FIELDNAMES                      =
    EXCEPTIONS
      FILE_WRITE_ERROR                = 1
      NO_BATCH                        = 2
      GUI_REFUSE_FILETRANSFER         = 3
      INVALID_TYPE                    = 4
      NO_AUTHORITY                    = 5
      UNKNOWN_ERROR                   = 6
      HEADER_NOT_ALLOWED              = 7
      SEPARATOR_NOT_ALLOWED           = 8
      FILESIZE_NOT_ALLOWED            = 9
      HEADER_TOO_LONG                 = 10
      DP_ERROR_CREATE                 = 11
      DP_ERROR_SEND                   = 12
      DP_ERROR_WRITE                  = 13
      UNKNOWN_DP_ERROR                = 14
      ACCESS_DENIED                   = 15
      DP_OUT_OF_MEMORY                = 16
      DISK_FULL                       = 17
      DP_TIMEOUT                      = 18
      FILE_NOT_FOUND                  = 19
      DATAPROVIDER_EXCEPTION          = 20
      CONTROL_FLUSH_ERROR             = 21
      OTHERS                          = 22
    IF sy-subrc eq 0.
    message s004.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    When Region radio button is selected.
      ELSEIF r2 EQ 'X'.
        IF khinr1 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
        IF rpmax2 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
        IF ryear2 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
        IF filnam2 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
    MOVE FILNAM2 TO FILNAM21.
        CASE rpmax2.
          WHEN '01'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl01
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '02'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl02
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '03'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl03
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '04'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl04
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '05'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl05
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '06'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl06
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '07'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl07
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '08'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl08
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '09'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl09
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '10'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl10
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '11'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl11
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '12'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl12
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '13'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl13
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '14'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl14
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '15'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl15
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '16'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl16
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
        ENDCASE.
        MOVE itab7 TO itab8.
        LOOP AT itab7 INTO wa6.
          flag = 0.
          LOOP AT itab5 INTO wa4.
            IF wa6-racct EQ wa4-racct.
              flag = 1.
              EXIT.
            ENDIF.
          ENDLOOP.
          DELETE ADJACENT DUPLICATES FROM itab5.
          IF flag = 1.
            CONTINUE.
          ENDIF.
          LOOP AT itab8 INTO wa7.
            IF wa6-rbukrs EQ wa7-rbukrs AND wa6-racct EQ wa7-racct AND
            wa6-ryear EQ wa7-ryear.
              total = total + wa7-ksl01.
            ENDIF.
          ENDLOOP.
          wa9-khinr = khinr1.
          wa9-racct = wa6-racct+4(6).
          wa9-total1 = total.
          APPEND wa9 TO itab10.
          CLEAR total.
          APPEND wa6-racct TO itab5.
        ENDLOOP.
    *If no data is available corresponding to the values entered.
        IF itab10 IS INITIAL.
          MESSAGE i003.
        ENDIF.
    For making the file Comma separated
        CALL FUNCTION 'SAP_CONVERT_TO_TEX_FORMAT'
          EXPORTING
            i_field_seperator          = ','
      I_LINE_HEADER              =
      I_FILENAME                 =
      I_APPL_KEEP                = ' '
          TABLES
            i_tab_sap_data             = itab10
         CHANGING
           i_tab_converted_data       = itab2
    EXCEPTIONS
      CONVERSION_FAILED          = 1
      OTHERS                     = 2
        IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
    For downloading it to the Presentation Server
       MOVE itab2[] TO itab9[].
       OPEN DATASET filnam2 FOR OUTPUT IN LEGACY TEXT MODE.
       LOOP AT itab9.
         TRANSFER itab9 TO filnam2.
       ENDLOOP.
       CLOSE DATASET filnam2.
       IF sy-subrc EQ 0.
         MESSAGE s004.
       ENDIF.
    CALL FUNCTION 'GUI_DOWNLOAD'
      EXPORTING
      BIN_FILESIZE                    =
        filename                        = FILNAM21
      FILETYPE                        = 'ASC'
      APPEND                          = ' '
      WRITE_FIELD_SEPARATOR           = ' '
      HEADER                          = '00'
      TRUNC_TRAILING_BLANKS           = ' '
      WRITE_LF                        = 'X'
      COL_SELECT                      = ' '
      COL_SELECT_MASK                 = ' '
      DAT_MODE                        = ' '
      CONFIRM_OVERWRITE               = ' '
      NO_AUTH_CHECK                   = ' '
      CODEPAGE                        = ' '
      IGNORE_CERR                     = ABAP_TRUE
      REPLACEMENT                     = '#'
      WRITE_BOM                       = ' '
      TRUNC_TRAILING_BLANKS_EOL       = 'X'
      WK1_N_FORMAT                    = ' '
      WK1_N_SIZE                      = ' '
      WK1_T_FORMAT                    = ' '
      WK1_T_SIZE                      = ' '
      WRITE_LF_AFTER_LAST_LINE        = ABAP_TRUE
    IMPORTING
      FILELENGTH                      =
      tables
        data_tab                        = itab2
      FIELDNAMES                      =
    EXCEPTIONS
      FILE_WRITE_ERROR                = 1
      NO_BATCH                        = 2
      GUI_REFUSE_FILETRANSFER         = 3
      INVALID_TYPE                    = 4
      NO_AUTHORITY                    = 5
      UNKNOWN_ERROR                   = 6
      HEADER_NOT_ALLOWED              = 7
      SEPARATOR_NOT_ALLOWED           = 8
      FILESIZE_NOT_ALLOWED            = 9
      HEADER_TOO_LONG                 = 10
      DP_ERROR_CREATE                 = 11
      DP_ERROR_SEND                   = 12
      DP_ERROR_WRITE                  = 13
      UNKNOWN_DP_ERROR                = 14
      ACCESS_DENIED                   = 15
      DP_OUT_OF_MEMORY                = 16
      DISK_FULL                       = 17
      DP_TIMEOUT                      = 18
      FILE_NOT_FOUND                  = 19
      DATAPROVIDER_EXCEPTION          = 20
      CONTROL_FLUSH_ERROR             = 21
      OTHERS                          = 22
    IF sy-subrc eq 0.
    message s004.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
      ENDIF.
    *&      Form  POPULATE
          text
    FORM populate.
      CLEAR value.
      REFRESH list.
      name = 'KHINR1'.
      value-key = '1S7_SUBSEA'.
      value-text = '1S7_SUBSEA'.
      APPEND value TO list.
      value-key = '1S7_GEN'.
      value-text = '1S7_GEN'.
      APPEND value TO list.
      value-key = '1S7'.
      value-text = '1S7'.
      APPEND value TO list.
      value-key = '1S7_CORPTP'.
      value-text = '1S7_CORPTP'.
      APPEND value TO list.
      value-key = '1S7_BRRE'.
      value-text = '1S7_BRRE'.
      APPEND value TO list.
      value-key = '1S7_BRCON'.
      value-text = '1S7_BRCON'.
      APPEND value TO list.
      value-key = '1S7_BRCJOB'.
      value-text = '1S7_BRCJOB'.
      APPEND value TO list.
      value-key = '1S7_BRCJBU'.
      value-text = '1S7_BRCJBU'.
      APPEND value TO list.
      value-key = '1S7_BRCJCO'.
      value-text = '1S7_BRCJCO'.
      APPEND value TO list.
      value-key = '1S7_BRCJIR'.
      value-text = '1S7_BRCJIR'.
      APPEND value TO list.
      value-key = '1S7_BRCJEN'.
      value-text = '1S7_BRCJEN'.
      APPEND value TO list.
      value-key = '1S7_BRCJPI'.
      value-text = '1S7_BRCJPI'.
      APPEND value TO list.
      value-key = '1S7_BRCJSU'.
      value-text = '1S7_BRCJSU'.
      APPEND value TO list.
      value-key = '1S7_BRCJFL'.
      value-text = '1S7_BRCJFL'.
      APPEND value TO list.
      value-key = '1S7_BRCJOT'.
      value-text = '1S7_BRCJOT'.
      APPEND value TO list.
      value-key = '1S7_BRCASV'.
      value-text = '1S7_BRCASV'.
      APPEND value TO list.
      value-key = '1S7_BRCASE'.
      value-text = '1S7_BRCASE'.
      APPEND value TO list.
      value-key = '1S7_BRCOOC'.
      value-text = '1S7_BRCOOC'.
      APPEND value TO list.
      value-key = '1S7_BRCOHD'.
      value-text = '1S7_BRCOHD'.
      APPEND value TO list.
      value-key = '1S7_BRCGEN'.
      value-text = '1S7_BRCGEN'.
      APPEND value TO list.
      value-key = '1S7_BRDRI'.
      value-text = '1S7_BRDRI'.
      APPEND value TO list.
      value-key = '1S7_BRDJOB'.
      value-text = '1S7_BRDJOB'.
      APPEND value TO list.
      value-key = '1S7_BRDASV'.
      value-text = '1S7_BRDASV'.
      APPEND value TO list.
      value-key = '1S7_BRDASE'.
      value-text = '1S7_BRDASE'.
      APPEND value TO list.
      value-key = '1S7_BRDAEW'.
      value-text = '1S7_BRDAEW'.
      APPEND value TO list.
      value-key = '1S7_BRDAEO'.
      value-text = '1S7_BRDAEO'.
      APPEND value TO list.
      value-key = '1S7_BRDAET'.
      value-text = '1S7_BRDAET'.
      APPEND value TO list.
      value-key = '1S7_BRDOOC'.
      value-text = '1S7_BRDOOC'.
      APPEND value TO list.
      value-key = '1S7_BRDOHD'.
      value-text = '1S7_BRDOHD'.
      APPEND value TO list.
      value-key = '1S7_BRVER'.
      value-text = '1S7_BRVER'.
      APPEND value TO list.
      value-key = '1S7_BRVJOB'.
      value-text = '1S7_BRVJOB'.
      APPEND value TO list.
      value-key = '1S7_BRVASV'.
      value-text = '1S7_BRVASV'.
      APPEND value TO list.
      value-key = '1S7_BRVASE'.
      value-text = '1S7_BRVASE'.
      APPEND value TO list.
      value-key = '1S7_BRVOOC'.
      value-text = '1S7_BRVOOC'.
      APPEND value TO list.
      value-key = '1S7_BRVOHD'.
      value-text = '1S7_BRVOHD'.
      APPEND value TO list.
      value-key = '1S7_UKRE'.
      value-text = '1S7_UKRE'.
      APPEND value TO list.
      value-key = '1S7_UKCON'.
      value-text = '1S7_UKCON'.
      APPEND value TO list.
      value-key = '1S7_UKCJOB'.
      value-text = '1S7_UKCJOB'.
      APPEND value TO list.
      value-key = '1S7_UKCJBU'.
      value-text = '1S7_UKCJBU'.
      APPEND value TO list.
      value-key = '1S7_UKCJCO'.
      value-text = '1S7_UKCJCO'.
      APPEND value TO list.
      value-key = '1S7_UKCJIR'.
      value-text = '1S7_UKCJIR'.
      APPEND value TO list.
      value-key = '1S7_UKCJEN'.
      value-text = '1S7_UKCJEN'.
      APPEND value TO list.
      value-key = '1S7_UKCJPI'.
      value-text = '1S7_UKCJPI'.
      APPEND value TO list.
      value-key = '1S7_UKCJSU'.
      value-text = '1S7_UKCJSU'.
      APPEND value TO list.
      value-key = '1S7_UKCJFL'.
      value-text = '1S7_UKCJFL'.
      APPEND value TO list.
      value-key = '1S7_UKCJOT'.
      value-text = '1S7_UKCJOT'.
      APPEND value TO list.
      value-key = '1S7_UKCASV'.
      value-text = '1S7_UKCASV'.
      APPEND value TO list.
      value-key = '1S7_UKCASE'.
      value-text = '1S7_UKCASE'.
      APPEND value TO list.
      value-key = '1S7_UKCOOC'.
      value-text = '1S7_UKCOOC'.
      APPEND value TO list.
      value-key = '1S7_UKBA'.
      value-text = '1S7_UKBA'.
      APPEND value TO list.
      value-key = '1S7_UKBATE'.
      value-text = '1S7_UKBATE'.
      APPEND value TO list.
      value-key = '1S7_UKCOHD'.
      value-text = '1S7_UKCOHD'.
      APPEND value TO list.
      value-key = '1S7_UKCGEN'.
      value-text = '1S7_UKCGEN'.
      APPEND value TO list.
      value-key = '1S7_UKDRI'.
      value-text = '1S7_UKDRI'.
      APPEND value TO list.
      value-key = '1S7_UKDJOB'.
      value-text = '1S7_UKDJOB'.
      APPEND value TO list.
      value-key = '1S7_UKDASV'.
      value-text = '1S7_UKDASV'.
      APPEND value TO list.
      value-key = '1S7_UKDASE'.
      value-text = '1S7_UKDASE'.
      APPEND value TO list.
      value-key = '1S7_UKDAEW'.
      value-text = '1S7_UKDAEW'.
      APPEND value TO list.
      value-key = '1S7_UKDAEO'.
      value-text = '1S7_UKDAEO'.
      APPEND value TO list.
      value-key = '1S7_UKDAET'.
      value-text = '1S7_UKDAET'.
      APPEND value TO list.
      value-key = '1S7_UKDOOC'.
      value-text = '1S7_UKDOOC'.
      APPEND value TO list.
      value-key = '1S7_UKDOHD'.
      value-text = '1S7_UKDOHD'.
      APPEND value TO list.
      value-key = '1S7_UKVER'.
      value-text = '1S7_UKVER'.
      APPEND value TO list.
      value-key = '1S7_UKVJOB'.
      value-text = '1S7_UKVJOB'.
      APPEND value TO list.
      value-key = '1S7_UKVASV'.
      value-text = '1S7_UKVASV'.
      APPEND value TO list.
      value-key = '1S7_UKVASE'.
      value-text = '1S7_UKVASE'.
      APPEND value TO list.
      value-key = '1S7_UKVOOC'.
      value-text = '1S7_UKVOOC'.
      APPEND value TO list.
      value-key = '1S7_UKVOHD'.
      value-text = '1S7_UKVOHD'.
      APPEND value TO list.
      value-key = '1S7_NORE'.
      value-text = '1S7_NORE'.
      APPEND value TO list.
      value-key = '1S7_NOCON'.
      value-text = '1S7_NOCON'.
      APPEND value TO list.
      value-key = '1S7_NOCJOB'.
      value-text = '1S7_NOCJOB'.
      APPEND value TO list.
      value-key = '1S7_NOCJBU'.
      value-text = '1S7_NOCJBU'.
      APPEND value TO list.
      value-key = '1S7_NOCJCO'.
      value-text = '1S7_NOCJCO'.
      APPEND value TO list.
      value-key = '1S7_NOCJIR'.
      value-text = '1S7_NOCJIR'.
      APPEND value TO list.
      value-key = '1S7_NOCJEN'.
      value-text = '1S7_NOCJEN'.
      APPEND value TO list.
      value-key = '1S7_NOCJPI'.
      value-text = '1S7_NOCJPI'.
      APPEND value TO list.
      value-key = '1S7_NOCJSU'.
      value-text = '1S7_NOCJSU'.
      APPEND value TO list.
      value-key = '1S7_NOCJFL'.
      value-text = '1S7_NOCJFL'.
      APPEND value TO list.
      value-key = '1S7_NOCJOT'.
      value-text = '1S7_NOCJOT'.
      APPEND value TO list.
      value-key = '1S7_NOCASV'.
      value-text = '1S7_NOCASV'.
      APPEND value TO list.
      value-key = '1S7_NOCASE'.
      value-text = '1S7_NOCASE'.
      APPEND value TO list.
      value-key = '1S7_NOCOOC'.
      value-text = '1S7_NOCOOC'.
      APPEND value TO list.
      value-key = '1S7_NOCOHD'.
      value-text = '1S7_NOCOHD'.
      APPEND value TO list.
      value-key = '1S7_NOCGEN'.
      value-text = '1S7_NOCGEN'.
      APPEND value TO list.
      value-key = '1S7_NODRI'.
      value-text = '1S7_NODRI'.
      APPEND value TO list.
      value-key = '1S7_NODJOB'.
      value-text = '1S7_NODJOB'.
      APPEND value TO list.
      value-key = '1S7_NODASV'.
      value-text = '1S7_NODASV'.
      APPEND value TO list.
      value-key = '1S7_NODASE'.
      value-text = '1S7_NODASE'.
      APPEND value TO list.
      value-key = '1S7_NODAEW'.
      value-text = '1S7_NODAEW'.
      APPEND value TO list.
      value-key = '1S7_NODAEO'.
      value-text = '1S7_NODAEO'.
      APPEND value TO list.
      value-key = '1S7_NODAET'.
      value-text = '1S7_NODAET'.
      APPEND value TO list.
      value-key = '1S7_NODOOC'.
      value-text = '1S7_NODOOC'.
      APPEND value TO list.
      value-key = '1S7_NODOHD'.
      value-text = '1S7_NODOHD'.
      APPEND value TO list.
      value-key = '1S7_NOVER'.
      value-text = '1S7_NOVER'.
      APPEND value TO list.
      value-key = '1S7_NOVJOB'.
      value-text = '1S7_NOVJOB'.
      APPEND value TO list.
      value-key = '1S7_NOVASV'.
      value-text = '1S7_NOVASV'.
      APPEND value TO list.
      value-key = '1S7_NOVASE'.
      value-text = '1S7_NOVASE'.
      APPEND value TO list.
      value-key = '1S7_NOVOOC'.
      value-text = '1S7_NOVOOC'.
      APPEND value TO list.
      value-key = '1S7_NOVOHD'.
      value-text = '1S7_NOVOHD'.
      APPEND value TO list.
      value-key = '1S7_GORE'.
      value-text = '1S7_GORE'.
      APPEND value TO list.
      value-key = '1S7_GOCON'.
      value-text = '1S7_GOCON'.
      APPEND value TO list.
      value-key = '1S7_GOCJOB'.
      value-text = '1S7_GOCJOB'.
      APPEND value TO list.
      value-key = '1S7_GOCJBU'.
      value-text = '1S7_GOCJBU'.
      APPEND value TO list.
      value-key = '1S7_GOCJCO'.
      value-text = '1S7_GOCJCO'.
      APPEND value TO list.
      value-key = '1S7_GOCJIR'.
      value-text = '1S7_GOCJIR'.
      APPEND value TO list.
      value-key = '1S7_GOCJEN'.
      value-text = '1S7_GOCJEN'.
      APPEND value TO list.
      value-key = '1S7_GOCJPI'.
      value-text = '1S7_GOCJPI'.
      APPEND value TO list.
      value-key = '1S7_GOCJSU'.
      value-text = '1S7_GOCJSU'.
      APPEND value TO list.
      value-key = '1S7_GOCJFL'.
      value-text = '1S7_GOCJFL'.
      APPEND value TO list.
      value-key = '1S7_GOCJOT'.
      value-text = '1S7_GOCJOT'.
      APPEND value TO list.
      value-key = '1S7_GOCASV'.
      value-text = '1S7_GOCASV'.
      APPEND value TO list.
      value-key = '1S7_GOCASE'.
      value-text = '1S7_GOCASE'.
      APPEND value TO list.
      value-key = '1S7_GOCOOC'.
      value-text = '1S7_GOCOOC'.
      APPEND value TO list.
      value-key = '1S7_GOCOHD'.
      value-text = '1S7_GOCOHD'.
      APPEND value TO list.
      value-key = '1S7_GOCGEN'.
      value-text = '1S7_GOCGEN'.
      APPEND value TO list.
      value-key = '1S7_GODRI'.
      value-text = '1S7_GODRI'.
      APPEND value TO list.
      value-key = '1S7_GODJOB'.
      value-text = '1S7_GODJOB'.
      APPEND value TO list.
      value-key = '1S7_GODASV'.
      value-text = '1S7_GODASV'.
      APPEND value TO list.
      value-key = '1S7_GODASE'.
      value-text = '1S7_GODASE'.
      APPEND value TO list.
      value-key = '1S7_GODAEW'.
      value-text = '1S7_GODAEW'.
      APPEND value TO list.
      value-key = '1S7_GODAEO'.
      value-text = '1S7_GODAEO'.
      APPEND value TO list.
      value-key = '1S7_GODAET'.
      value-text = '1S7_GODAET'.
      APPEND value TO list.
      value-key = '1S7_GODOOC'.
      value-text = '1S7_GODOOC'.
      APPEND value TO list.
      value-key = '1S7_GODOHD'.
      value-text = '1S7_GODOHD'.
      APPEND value TO list.
      value-key = '1S7_GOVER'.
      value-text = '1S7_GOVER'.
      APPEND value TO list.
      value-key = '1S7_GOVJOB'.
      value-text = '1S7_GOVJOB'.
      APPEND value TO list.
      value-key = '1S7_GOVASV'.
      value-text = '1S7_GOVASV'.
      APPEND value TO list.
      value-key = '1S7_GOVASE'.
      value-text = '1S7_GOVASE'.
      APPEND value TO list.
      value-key = '1S7_GOVOOC'.
      value-text = '1S7_GOVOOC'.
      APPEND value TO list.
      value-key = '1S7_GOVOHD'.
      value-text = '1S7_GOVOHD'.
      APPEND value TO list.
      value-key = '1S7_GVRE'.
      value-text = '1S7_GVRE'.
      APPEND value TO list.
      value-key = '1S7_GVCON'.
      value-text = '1S7_GVCON'.
      APPEND value TO list.
      value-key = '1S7_GVCJOB'.
      value-text = '1S7_GVCJOB'.
      APPEND value TO list.
      value-key = '1S7_GVCJBU'.
      value-text = '1S7_GVCJBU'.
      APPEND value TO list.
      value-key = '1S7_GVCJCO'.
      value-text = '1S7_GVCJCO'.
      APPEND value TO list.
      value-key = '1S7_GVCJIR'.
      value-text = '1S7_GVCJIR'.
      APPEND value TO list.
      value-key = '1S7_GVCJEN'.
      value-text = '1S7_GVCJEN'.
      APPEND value TO list.
      value-key = '1S7_GVCJPI'.
      value-text = '1S7_GVCJPI'.
      APPEND value TO list.
      value-key = '1S7_GVCJSU'.
      value-text = '1S7_GVCJSU'.
      APPEND value TO list.
      value-key = '1S7_GVCJFL'.
      value-text = '1S7_GVCJFL'.
      APPEND value TO list.
      value-key = '1S7_GVCJOT'.
      value-text = '1S7_GVCJOT'.
      APPEND value TO list.
      value-key = '1S7_GVCASV'.
      value-text = '1S7_GVCASV'.
      APPEND value TO list.
      value-key = '1S7_GVCASE'.
      value-text = '1S7_GVCASE'.
      APPEND value TO list.
      value-key = '1S7_GVCOOC'.
      value-text = '1S7_GVCOOC'.
      APPEND value TO list.
      value-key = '1S7_GVCOHD'.
      value-text = '1S7_GVCOHD'.
      APPEND value TO list.
      value-key = '1S7_GVCGEN'.
      value-text = '1S7_GVCGEN'.
      APPEND value TO list.
      value-key = '1S7_GVDRI'.
      value-text = '1S7_GVDRI'.
      APPEND value TO list.
      value-key = '1S7_GVDJOB'.
      value-text = '1S7_GVDJOB'.
      APPEND value TO list.
      value-key = '1S7_GVDASV'.
      value-text = '1S7_GVDASV'.
      APPEND value TO list.
      value-key = '1S7_GVDASE'.
      value-text = '1S7_GVDASE'.
      APPEND value TO list.
      value-key = '1S7_GVDOOC'.
      value-text = '1S7_GVDOOC'.
      APPEND value TO list.
      value-key = '1S7_GVDOHD'.
      value-text = '1S7_GVDOHD'.
      APPEND value TO list.
      value-key = '1S7_GVVER'.
      value-text = '1S7_GVVER'.
      APPEND value TO list.
      value-key = '1S7_GVVJOB'.
      value-text = '1S7_GVVJOB'.
      APPEND value TO list.
      value-key = '1S7_GVVASV'.
      value-text = '1S7_GVVASV'.
      APPEND value TO list.
      value-key = '1S7_GVVASE'.
      value-text = '1S7_GVVASE'.
      APPEND value TO list.
      value-key = '1S7_GVVOOC'.
      value-text = '1S7_GVVOOC'.
      APPEND value TO list.
      value-key = '1S7_GVVOHD'.
      value-text = '1S7_GVVOHD'.
      APPEND value TO list.
      value-key = '1S7_GCRE'.
      value-text = '1S7_GCRE'.
      APPEND value TO list.
      value-key = '1S7_GCCON'.
      value-text = '1S7_GCCON'.
      APPEND value TO list.
      value-key = '1S7_GCCJOB'.
      value-text = '1S7_GCCJOB'.
      APPEND value TO list.
      value-key = '1S7_GCCJBU'.
      value-text = '1S7_GCCJBU'.
      APPEND value TO list.
      value-key = '1S7_GCCJCO'.
      value-text = '1S7_GCCJCO'.
      APPEND value TO list.
      value-key = '1S7_GCCJIR'.
      value-text = '1S7_GCCJIR'.
      APPEND value TO list.
      value-key = '1S7_GCCJEN'.
      value-text = '1S7_GCCJEN'.
      APPEND value TO list.
      value-key = '1S7_GCCJPI'.
      value-text = '1S7_GCCJPI'.
      APPEND value TO list.
      value-key = '1S7_GCCJSU'.
      value-text = '1S7_GCCJSU'.
      APPEND value TO list.
      value-key = '1S7_GCCJFL'.
      value-text = '1S7_GCCJFL'.
      APPEND value TO list.
      value-key = '1S7_GCCJOT'.
      value-text = '1S7_GCCJOT'.
      APPEND value TO list.
      value-key = '1S7_GCCASV'.
      value-text = '1S7_GCCASV'.
      APPEND value TO list.
      value-key = '1S7_GCCASE'.
      value-text = '1S7_GCCASE'.
      APPEND value TO list.
      value-key = '1S7_GCCOOC'.
      value-text = '1S7_GCCOOC'.
      APPEND value TO list.
      value-key = '1S7_GCCOHD'.
      value-text = '1S7_GCCOHD'.
      APPEND value TO list.
      value-key = '1S7_GCCRD'.
      value-text = '1S7_GCCRD'.
      APPEND value TO list.
      value-key = '1S7_GCCGEN'.
      value-text = '1S7_GCCGEN'.
      APPEND value TO list.
      value-key = '1S7_GCDRI'.
      value-text = '1S7_GCDRI'.
      APPEND value TO list.
      value-key = '1S7_GCDJOB'.
      value-text = '1S7_GCDJOB'.
      APPEND value TO list.
      value-key = '1S7_GCDASV'.
      value-text = '1S7_GCDASV'.
      APPEND value TO list.
      value-key = '1S7_GCDASE'.
      value-text = '1S7_GCDASE'.
      APPEND value TO list.
      value-key = '1S7_GCDOOC'.
      value-text = '1S7_GCDOOC'.
      APPEND value TO list.
      value-key = '1S7_GCDOHD'.
      value-text = '1S7_GCDOHD'.
      APPEND value TO list.
      value-key = '1S7_GCVER'.
      value-text = '1S7_GCVER'.
      APPEND value TO list.
      value-key = '1S7_GCVJOB'.
      value-text = '1S7_GCVJOB'.
      APPEND value TO list.
      value-key = '1S7_GCVASV'.
      value-text = '1S7_GCVASV'.
      APPEND value TO list.
      value-key = '1S7_GCVASE'.
      value-text = '1S7_GCVASE'.
      APPEND value TO list.
      value-key = '1S7_GCVOOC'.
      value-text = '1S7_GCVOOC'.
      APPEND value TO list.
      value-key = '1S7_GCVOHD'.
      value-text = '1S7_GCVOHD'.
      APPEND value TO list.
      value-key = '1S7_APRE'.
      value-text = '1S7_APRE'.
      APPEND value TO list.

  • Hyperlink appearance in a pdf?

    I've just found out about how to put hyperlinks into a pdf exported from InDesign using the InDesign help. But it looks like the only way they can be styled is either with or without a rectangle around them, which is quite an unconventional way to display hyperlinks.
    I would've thought you'd have the option to use the much more recognised method of underlining text in a colour of your choice, but unless I'm missing something, it looks like this needs to be styled manually using the character styles palette (which is very unsatisfying in this day and age!).
    Am I mistaken, or can this actually be done when you set up the URL in the hyperlink palette?
    thanks,
    Lachlan

    >which is very unsatisfying in this day and age!
    Because hyperlinks are
    i supposed
    to be blue and underlined?
    I see it the other way: because Adobe separated the functionality (hyperlinking) from display (purple, capitalized, with a yellow blinking outline) I can do whatever I like. If you actually
    i like
    your hyperlinks blue & underlined, go ahead.
    You do yourself a favour if you make it a character style, so, when enough people disagree, you won't have to change them all manually.

  • How to get murrine dust theme to work? (new concept theme for ubuntu)

    hello!
    i just want to try and install the new concept theme for ubuntu - DustTheme!
    but i don't get it to work. it uses the murrine-engine - but when i want to select it via gtk-chtheme or gtk2_prefs it does not sets the colors or anything else. when i hit apply, the standard ugly gtk-theme will be selected.
    anyone here who actually uses the theme?
    more information:
    DustTheme Ubuntu Wiki
    installed packages:
    gtk-engine-murrine 0.53.1
    also tried: gtk-engine-murrine-svn rev 94
    please help, thanks...
    bye iggy
    Last edited by iggy (2008-10-22 10:04:48)

    andrek wrote:There's a difference between the new SVN version of the Murrine engine and the Dust theme - you've got to change "profile" into "style" in theme's gtkrc file.
    Hrm, I'm not quite sure what you mean.  I don't see "profile" anywhere in the gtkrc - everything seems to be labeled as "style" already.
    # Dust theme
    # by Rico Sta. Cruz and Ricardo (Kido) Mariano III
    # Last rev: Oct 4
    # Set GtkSettings color scheme property.
    # This can be overriden (via an xsetting) with eg. the gnome-appearance-properties.
    #gtk_color_scheme = "fg_color:#323232\nbg_color:#e4e0d8\nbase_color:#fff\ntext_color:#323232\nselected_bg_color:#996B5C\nselected_fg_color:#fff\ntooltip_bg_color:#ebeab8\ntooltip_fg_color:#323232"
    gtk_color_scheme = "fg_color:#323232\nbg_color:#D9D4CC\nbase_color:#fff\ntext_color:#323232\nselected_bg_color:#996B5C\nselected_fg_color:#fff\ntooltip_bg_color:#ebeab8\ntooltip_fg_color:#323232"
    include "scrollbars/scrollbar.rc"
    style "murrine-default"
    # Style Properties
    GtkScrolledWindow ::scrollbar-spacing = 3
    GtkScrolledWindow ::scrollbar-within-bevel = 1
    GtkButton ::child-displacement-x = 1
    GtkButton ::child-displacement-y = 1
    GtkButton ::default-border = { 0, 0, 0, 0 }
    GtkButton ::focus-padding = 0
    GtkCheckButton ::indicator-size = 14
    GtkPaned ::handle-size = 6
    GtkRange ::trough-border = 0
    GtkRange ::slider-width = 15
    GtkRange ::stepper-size = 15
    GtkScale ::slider-length = 20
    GtkScale ::trough-side-details = 0 # 0 = thin slider, >0 = thick slider
    GtkScrollbar ::min-slider-length = 30
    GtkMenuBar ::internal-padding = 0
    GtkExpander ::expander-size = 16
    GtkToolbar ::internal-padding = 1
    GtkTreeView ::expander-size = 14
    GtkTreeView ::vertical-separator = 0
    GtkMenu ::horizontal-padding = 0
    GtkMenu ::vertical-padding = 0
    WnckTasklist ::fade-overlay-rect = 0
    xthickness = 1
    ythickness = 1
    fg[NORMAL] = @fg_color
    fg[PRELIGHT] = @fg_color
    fg[SELECTED] = @selected_fg_color
    fg[ACTIVE] = @fg_color
    fg[INSENSITIVE] = darker (@bg_color)
    bg[NORMAL] = @bg_color
    bg[PRELIGHT] = shade (1.02, @bg_color)
    bg[SELECTED] = @selected_bg_color
    bg[INSENSITIVE] = @bg_color
    bg[ACTIVE] = shade (0.9, @bg_color)
    base[NORMAL] = @base_color
    base[PRELIGHT] = shade (0.95, @bg_color)
    base[ACTIVE] = shade (0.9, @selected_bg_color)
    base[SELECTED] = @selected_bg_color
    base[INSENSITIVE] = @bg_color
    text[NORMAL] = @text_color
    text[PRELIGHT] = @text_color
    text[ACTIVE] = @selected_fg_color
    text[SELECTED] = @selected_fg_color
    text[INSENSITIVE] = darker (@bg_color)
    engine "murrine"
    animation = TRUE # FALSE = disabled, TRUE = enabled
    colorize_scrollbar = TRUE # FALSE = disabled, TRUE = enabled
    contrast = 1.0 # 0.8 for less contrast, more than 1.0 for more contrast on borders
    glazestyle = 0 # 0 = flat highlight, 1 = curved highlight, 2 = concave style, 3 = top curved highlight, 4 = beryl highlight
    gradient_shades = {1.1,1.0,1.0,0.87} # default: {1.1,1.0,1.0,1.1}
    gradients = TRUE # FALSE = disabled, TRUE = enabled
    highlight_ratio = 1.0 # set highlight amount for buttons or widgets
    lightborder_ratio = 1.0 # sets lightborder amount for buttons or widgets
    lightborderstyle = 0 # 0 = lightborder on top side, 1 = lightborder on all sides
    listviewheaderstyle = 1 # 0 = flat, 1 = glassy, 2 = raised
    listviewstyle = 0 # 0 = nothing, 1 = dotted
    menubaritemstyle = 0 # 0 = menuitem look, 1 = button look
    menubarstyle = 1 # 0 = flat, 1 = glassy, 2 = gradient, 3 = striped
    menuitemstyle = 1 # 0 = flat, 1 = glassy, 2 = striped
    menustyle = 0 # 0 = no vertical menu stripe, 1 = display vertical menu stripe
    reliefstyle = 2 # 0 = flat, 1 = inset, 2 = shadow
    rgba = FALSE # FALSE = disabled, TRUE = enabled
    roundness = 2 # 0 = squared, 1 = old default, more will increase roundness
    scrollbarstyle = 2 # 0 = nothing, 1 = circles, 2 = handles, 3 = diagonal stripes, 4 = diagonal stripes and handles, 5 = horizontal stripes, 6 = horizontal stripes and handles
    sliderstyle = 0 # 0 = nothing added, 1 = handles
    stepperstyle = 1 # 0 = standard, 1 = integrated stepper handles, 2 = unknown
    style = MURRINE # engine style options: CANDIDO, CLEARLOOKS, MIST, MURRINE, NODOKA
    toolbarstyle = 0 # 0 = flat, 1 = glassy, 2 = gradient
    style "murrine-wide"
    xthickness = 2
    ythickness = 2
    style "murrine-wider"
    xthickness = 3
    ythickness = 3
    style "murrine-dark"
    bg[NORMAL] = shade(0.24,@bg_color)
    bg[SELECTED] = shade(0.9,@selected_bg_color)
    bg[PRELIGHT] = shade (0.5, @selected_bg_color)
    bg[ACTIVE] = mix (0.5, @selected_bg_color, shade(0.2,@bg_color))
    bg[INSENSITIVE] = shade(0.2,@bg_color)
    fg[NORMAL] = mix (0.7, '#ffffef', @fg_color)
    fg[PRELIGHT] = mix (0.8, '#ffffef', @fg_color)
    fg[SELECTED] = mix (0.8, '#ffffef', @fg_color)
    fg[ACTIVE] = mix (0.8, '#ffffef', @fg_color)
    fg[INSENSITIVE] = mix (0.4, '#ffffef', @fg_color)
    style "murrine-button"
    xthickness = 3
    ythickness = 3
    bg[NORMAL] = shade (1.2, @bg_color)
    bg[PRELIGHT] = shade (0.9, @bg_color) #mix(0.82,shade (1.3, @bg_color),@selected_bg_color)
    bg[ACTIVE] = shade (0.85, @bg_color)
    # SZ07: button engine changed to clearlooks.
    # Change back to murrine to get the old dotted focus ring.
    engine "clearlooks" {
    contrast = 1.0
    radius = 2.0
    style = GUMMY
    reliefstyle = 1
    style "murrine-toolbar" = "murrine-default"
    xthickness = 4
    ythickness = 3
    bg[NORMAL] = shade(0.88,@bg_color)
    bg[PRELIGHT] = shade(0.88,@bg_color)
    bg[ACTIVE] = shade(0.88,@bg_color)
    bg[SELECTED] = shade(0.88,@bg_color)
    bg[INSENSITIVE] = shade(0.88,@bg_color)
    fg[NORMAL] = @text_color
    fg[PRELIGHT] = @text_color
    fg[SELECTED] = @text_color
    fg[ACTIVE] = @text_color
    fg[INSENSITIVE] = @text_color
    fg[NORMAL] = @text_color
    text[NORMAL] = @text_color
    #engine "murrine" {
    # gradient_shades = {1.1,1.0,1.0,0.85}
    engine "pixmap"
    image {
    function = BOX
    file = "toolbar_light.png"
    border = {1,1,1,1}
    image {
    function = HANDLE
    overlay_file = "handlebox.png"
    overlay_stretch = FALSE
    orientation = HORIZONTAL
    image {
    function = HANDLE
    overlay_file = "handlebox.png"
    overlay_stretch = FALSE
    orientation = VERTICAL
    style "murrine-toolbar-item" = "murrine-toolbar"
    bg[NORMAL] = shade(0.88,@bg_color)
    bg[PRELIGHT] = shade(1.1,@bg_color)
    bg[ACTIVE] = shade(0.6,@bg_color)
    fg[INSENSITIVE] = shade(0.6,@bg_color)
    fg[ACTIVE] = @selected_fg_color
    text[ACTIVE] = @selected_fg_color
    engine "clearlooks" {
    contrast = 1.0
    radius = 2.0
    style = GUMMY
    reliefstyle = 1
    style "murrine-toolbar-sep" = "murrine-toolbar-item"
    bg[NORMAL] = shade(0.5, @bg_color)
    style "murrine-dark-toolbar" = "murrine-dark"
    xthickness = 6
    bg[PRELIGHT] = mix (0.3, @selected_bg_color, shade(0.2,@bg_color))
    bg[SELECTED] = mix (0.3, @selected_bg_color, shade(0.2,@bg_color))
    bg[ACTIVE] = mix (0.5, @selected_bg_color, shade(0.2,@bg_color))
    engine "murrine"{
    gradient_shades = {1.3,1.1,1.1,0.9}
    style = MURRINE
    style "murrine-dark-toolbar-sep" = "murrine-dark-toolbar"
    { xthickness = 2 }
    style "pixmap-dark-toolbar" = "murrine-dark-toolbar"
    # To-do: make the toolbar recolorable, possibly without using pixmaps
    # We only like this because of the top line, anyway.
    engine "pixmap"{
    image {
    function = BOX
    file = "toolbar_o.png"
    border = {1,1,1,1}
    image
    function = HANDLE
    overlay_file = "handlebox.png"
    overlay_stretch = FALSE
    orientation = HORIZONTAL
    image
    function = HANDLE
    overlay_file = "handlebox.png"
    overlay_stretch = FALSE
    orientation = VERTICAL
    style "murrine-notebook-bg" = "murrine-default"
    bg[NORMAL] = shade (1.05, @bg_color)
    bg[SELECTED] = shade (1.05, @bg_color)
    xthickness = 2
    style "murrine-notebook" = "murrine-notebook-bg"
    xthickness = 2
    style "murrine-tasklist"
    xthickness = 3
    ythickness = 3
    style "murrine-panel" = "murrine-dark" {
    bg[NORMAL] = shade (0.15, @bg_color)
    engine "murrine" {
    style "murrine-menu" = "murrine-dark"
    xthickness = 0
    ythickness = 2
    bg[NORMAL] = shade (0.15, @bg_color)
    text[NORMAL] = @bg_color
    text[PRELIGHT] = @selected_fg_color
    style "murrine-menu-item" = "murrine-dark"
    xthickness = 0
    ythickness = 3
    engine "murrine" {
    roundness = 0
    contrast = 0.2
    gradient_shades = {1.0,0.9,0.9,0.7}
    style "murrine-separator-menu-item"
    GtkSeparatorMenuItem::horizontal-padding = 0
    GtkWidget::wide-separators = 1
    GtkWidget::separator-width = 1
    GtkWidget::separator-height = 1
    xthickness = 1
    ythickness = 0
    style "murrine-treeview"
    # Based on the default style so that the colors from the button
    # style are overriden again.
    style "murrine-treeview-header" = "murrine-default"
    xthickness = 2
    ythickness = 1
    bg[NORMAL] = shade(0.9, @bg_color)
    bg[PRELIGHT] = shade(1.0, @bg_color)
    bg[ACTIVE] = shade(0.8, @bg_color)
    GtkWidget::focus-line-width = 0
    engine "murrine" {
    gradient_shades = {1.3,1.0,1.0,1.1}
    style = MURRINE
    contrast = 0.5
    glazestyle = 1
    listviewheaderstyle = 1
    # SZ07: This is added to tell the theme how to color checkmarks and radio items that are not in menus.
    style "murrine-radiocheck" = "murrine-default"
    text[NORMAL] = shade (1.15, @bg_color) # Color for checks/radio items.
    text[PRELIGHT] = @selected_fg_color # Color for selected checks/radio items.
    engine "murrine"{
    style "murrine-tooltips"
    xthickness = 4
    ythickness = 4
    bg[NORMAL] = @tooltip_bg_color
    fg[NORMAL] = @tooltip_fg_color
    style "murrine-progressbar"
    xthickness = 1
    ythickness = 1
    fg[PRELIGHT] = @selected_fg_color
    engine "murrine"
    style = NODOKA
    #I want my shiny progressbar!
    #gradient_shades = {1.3,1.1,0.9,1.0}
    style "pixmap-statusbar" = "murrine-default"
    ythickness = 3
    xthickness = 3
    engine "pixmap"
    image
    function = RESIZE_GRIP
    recolorable = TRUE
    detail = "statusbar"
    overlay_file = "statusgrip.png"
    overlay_border = {0,0,0,0}
    overlay_stretch = TRUE
    image
    function = SHADOW
    shadow = IN
    file = "blank.png"
    image
    function = SHADOW
    shadow = OUT
    file = "blank.png"
    image
    function = SHADOW
    shadow = ETCHED_IN
    file = "blank.png"
    image
    function = SHADOW
    shadow = ETCHED_OUT
    file = "blank.png"
    style "murrine-comboboxentry"
    style "murrine-spinbutton"
    style "murrine-scale"
    bg[PRELIGHT] = shade(0.9,@bg_color)
    engine "murrine"{
    gradient_shades = {1.3,1.1,0.9,1.0}
    style "murrine-hscale" = "murrine-scale"
    style "murrine-vscale" = "murrine-scale"
    style "murrine-scrollbar"
    bg[ACTIVE] = "#fff"
    bg[NORMAL] = @bg_color
    bg[PRELIGHT] = shade(0.9,@bg_color)
    engine "murrine"{
    gradient_shades = {1.1,1.0,1.0,0.9}
    contrast = 1.4
    style "murrine-hscrollbar" = "murrine-scrollbar"
    style "murrine-vscrollbar" = "murrine-scrollbar"
    style "murrine-menubar" = "murrine-dark"
    engine "murrine"{
    gradient_shades = {1.0,0.9,0.9,0.75}
    style "murrine-frame"
    #Uncomment for dark statusbars. Breaks some apps.
    #bg[ACTIVE] = shade(0.2,@bg_color)
    #fg[NORMAL] = mix (1.5, @fg_color, '#ffffff')
    #fg[PRELIGHT] = mix (1.4, @fg_color, '#ffffff')
    style "murrine-frame-title" = "murrine-frame"
    fg[NORMAL] = lighter (@fg_color)
    style "murrine-nautilus-location"
    bg[NORMAL] = mix(0.60, shade (1.05,@bg_color), @selected_bg_color)
    # Matches
    # murrine default style is applied to every widget
    class "GtkWidget" style "murrine-default"
    # Increase the x/ythickness in some widgets
    class "GtkRange" style "murrine-default"
    class "GtkFrame" style "murrine-frame"
    class "GtkSeparator" style "murrine-wide"
    class "GtkEntry" style "murrine-wider"
    class "GtkStatusbar" style "pixmap-statusbar"
    class "GtkMenuBar" style:highest "murrine-menubar"
    # Toolbar default: dark
    #class "*HandleBox" style "pixmap-dark-toolbar"
    #class "GtkToolbar" style "pixmap-dark-toolbar"
    #widget_class "*HandleBox" style "pixmap-dark-toolbar"
    #widget_class "*<GtkToolbar>.*" style "murrine-dark-toolbar"
    # Toolbar default: light
    class "*HandleBox" style "murrine-toolbar"
    class "GtkToolbar" style "murrine-toolbar"
    widget_class "*HandleBox" style "murrine-toolbar"
    widget_class "*<GtkToolbar>.*" style "murrine-toolbar-item"
    # Place this fix far above so overrides work better
    # Affects: gedit sidebar, GCstar, meld
    style "murrine-toolbar-flat"
    engine "murrine"
    toolbarstyle = 0
    widget_class "*.*.*.*.*.*Toolbar*" style "murrine-toolbar-flat"
    widget_class "*.*.*.*.*.*HandleBox*" style "murrine-toolbar-flat"
    # Toolbar exceptions:
    # Browser-type and viewer-type applications get a dark toolbar.
    # Everything below the toolbar for these apps are the content. This will make
    # a separation on function (toolbar) and content (client area).
    # Work around for http://bugzilla.gnome.org/show_bug.cgi?id=382646
    style "murrine-text-is-fg-color-workaround"
    text[NORMAL] = @fg_color
    text[PRELIGHT] = @fg_color
    text[SELECTED] = @selected_fg_color
    text[ACTIVE] = @fg_color
    text[INSENSITIVE] = darker (@bg_color)
    widget_class "*.<GtkComboBox>.<GtkCellView>" style "murrine-text-is-fg-color-workaround"
    style "murrine-text-is-fg-color-workaround-dark"
    #Make it work with this theme!
    text[NORMAL] = mix (1.5, @fg_color, '#ffffff')
    text[PRELIGHT] = mix (1.4, @fg_color, '#ffffff')
    # Nautilus toolbar: dark
    widget_class "*Nautilus*Toolbar*" style "pixmap-dark-toolbar"
    widget_class "*Nautilus*Tool*GtkButton" style "murrine-dark-toolbar"
    widget_class "*Nautilus*Tool*.*.*" style "murrine-dark-toolbar"
    widget_class "*Nautilus*Tool*GtkToggleButton" style "murrine-dark-toolbar"
    widget_class "*Nautilus*Tool*Separator*" style "murrine-dark-toolbar-sep"
    widget_class "*Nautilus*Tool*.<GtkComboBox>.<GtkCellView>" style "murrine-text-is-fg-color-workaround-dark"
    # Evince/EOG: dark
    widget_class "*EggEditable*Toolbar*" style "pixmap-dark-toolbar"
    widget_class "*EggEditable*Toolbar*.*.*.*" style "murrine-dark-toolbar"
    widget_class "*EggEditable*Tool*.<GtkComboBox>.<GtkCellView>" style "murrine-text-is-fg-color-workaround-dark"
    widget "*fullscreen-toolbar" style "pixmap-dark-toolbar"
    widget "*fullscreen-toolbar.*" style "murrine-dark-toolbar"
    # Epiphany: dark
    widget_class "*EphyToolbar*" style "pixmap-dark-toolbar"
    widget_class "*EphyToolbar*.*.*.*" style "murrine-dark-toolbar"
    widget_class "*EphyTool*.<GtkComboBox>.<GtkCellView>" style "murrine-text-is-fg-color-workaround-dark"
    # F-Spot(?): dark
    widget_class "*Spot*Toolbar*" style "pixmap-dark-toolbar"
    widget_class "*Spot*Toolbar*.*.*.*" style "murrine-dark-toolbar"
    widget_class "*Spot*Toolbar*.<GtkComboBox>.<GtkCellView>" style "murrine-text-is-fg-color-workaround-dark"
    # Gedit: Dark
    widget_class "*edit*Toolbar*" style "pixmap-dark-toolbar"
    widget_class "*edit*Toolbar*.*" style "murrine-dark-toolbar"
    widget_class "*edit*Toolbar*.<GtkComboBox>.<GtkCellView>" style "murrine-text-is-fg-color-workaround-dark"
    # Brasero: Dark
    widget_class "*rasero*Toolbar*" style "pixmap-dark-toolbar"
    widget_class "*rasero*Toolbar*.*" style "murrine-dark-toolbar"
    widget_class "*rasero*Toolbar*.<GtkComboBox>.<GtkCellView>" style "murrine-text-is-fg-color-workaround-dark"
    #gThumb: dark
    widget_class "*Gth*Toolbar*" style "pixmap-dark-toolbar"
    widget_class "*Gth*Toolbar*.*" style "murrine-dark-toolbar"
    widget_class "*Gth*Toolbar*.<GtkComboBox>.<GtkCellView>" style "murrine-text-is-fg-color-workaround-dark"
    widget_class "*GthFull*" style "pixmap-dark-toolbar" #Doesn't work
    class "GtkSpinButton" style "murrine-spinbutton"
    class "GtkScale" style "murrine-scale"
    class "GtkVScale" style "murrine-vscale"
    class "GtkHScale" style "murrine-hscale"
    class "GtkScrollbar" style "murrine-scrollbar"
    class "GtkVScrollbar" style "murrine-vscrollbar"
    class "GtkHScrollbar" style "murrine-hscrollbar"
    class "GtkButton" style "murrine-button"
    class "GtkRadioButton*" style "murrine-radiocheck" # SZ07: Added for the checkmarks/radio
    class "GtkCheckButton" style "murrine-radiocheck" # SZ07: Added for the checkmarks/radio
    # General matching following, the order is choosen so that the right styles override each other
    # eg. progressbar needs to be more important then the menu match.
    widget_class "*<GtkNotebook>*<GtkEventBox>" style "murrine-notebook-bg"
    widget_class "*<GtkNotebook>*<GtkDrawingArea>" style "murrine-notebook-bg"
    widget_class "*<GtkNotebook>*<GtkLayout>" style "murrine-notebook-bg"
    widget_class "*<GtkNotebook>" style "murrine-notebook"
    widget_class "*<GtkComboBoxEntry>*" style "murrine-comboboxentry"
    widget_class "*<GtkCombo>*" style "murrine-comboboxentry"
    widget_class "*<GtkMenu>*" style "murrine-menu"
    widget_class "*<GtkMenuItem>*" style "murrine-menu-item"
    widget_class "*<GtkSeparatorMenuItem>*" style "murrine-separator-menu-item"
    widget_class "*<GtkFrame>" style "murrine-frame"
    widget_class "*.<GtkFrame>.<GtkLabel>" style "murrine-frame-title"
    widget_class "*.<GtkTreeView>*" style "murrine-treeview"
    widget_class "*<GtkStatusbar>*" style "murrine-wider"
    widget_class "*<GtkProgressBar>" style "murrine-progressbar"
    # Treeview header
    widget_class "*.<GtkTreeView>.<GtkButton>" style "murrine-treeview-header"
    widget_class "*.<GtkCTree>.<GtkButton>" style "murrine-treeview-header"
    widget_class "*.<GtkList>.<GtkButton>" style "murrine-treeview-header"
    widget_class "*.<GtkCList>.<GtkButton>" style "murrine-treeview-header"
    #Panel
    widget "*PanelWidget*" style "murrine-panel"
    widget "*PanelApplet*" style "murrine-panel"
    widget "*fast-user-switch*" style "murrine-panel" # Workaround for Fast User Switch applet
    class "PanelApp*" style "murrine-panel"
    class "PanelToplevel*" style "murrine-panel"
    #The panel menubar
    widget_class "*Panel*<GtkMenuBar>*" style:highest "murrine-panel"
    # The window of the tooltip is called "gtk-tooltip"
    widget "gtk-tooltip*" style "murrine-tooltips"
    # Special cases and work arounds
    # Workarounds for Evolution
    widget_class "*.ETable.ECanvas" style "murrine-treeview-header"
    widget_class "*.ETree.ECanvas" style "murrine-treeview-header"
    #Firefox isn't nice to dark themes, so unset the dark stuff.
    widget "MozillaGtkWidget*Toolbar*" style "murrine-default"
    #widget "MozillaGtkWidget*Frame*" style "murrine-default"
    #Thunderbird too. But since Thunderbird uses the same theming engine as FF2, things are worse for us.
    style "murrine-menuitem-text-is-fg-color-workaround"
    #text[NORMAL] = @fg_color
    #text[PRELIGHT] = @selected_fg_color
    #text[SELECTED] = @selected_fg_color
    #text[ACTIVE] = @fg_color
    #text[INSENSITIVE] = darker (@bg_color)
    #Make it work with this theme!
    text[NORMAL] = mix (1.5, @fg_color, '#ffffff')
    text[PRELIGHT] = mix (1.4, @fg_color, '#ffffff')
    widget "*.gtk-combobox-popup-menu.*" style "murrine-menuitem-text-is-fg-color-workaround"
    # Work around the usage of GtkLabel inside GtkListItems to display text.
    # This breaks because the label is shown on a background that is based on the
    # base color set.
    style "murrine-fg-is-text-color-workaround"
    fg[NORMAL] = @text_color
    fg[PRELIGHT] = @text_color
    fg[ACTIVE] = @selected_fg_color
    fg[SELECTED] = @selected_fg_color
    fg[INSENSITIVE] = darker (@bg_color)
    widget_class "*<GtkListItem>*" style "murrine-fg-is-text-color-workaround"
    # The same problem also exists for GtkCList and GtkCTree
    # Only match GtkCList and not the parent widgets, because that would also change the headers.
    widget_class "*<GtkCList>" style "murrine-fg-is-text-color-workaround"
    style "murrine-evo-new-button-workaround"
    engine "murrine"
    toolbarstyle = 0
    widget_class "EShellWindow.GtkVBox.BonoboDock.BonoboDockBand.BonoboDockItem*" style "murrine-evo-new-button-workaround"
    #Rhythmbox toolbar near the search entry. Use default + wide so that it doesn't turn dark.
    style "murrine-rhythmbox-header" = "murrine-default"
    xthickness = 3
    ythickness = 3
    engine "murrine" {
    widget "*RBSourceHeader*" style:highest "murrine-rhythmbox-header"
    widget "*swt*toolbar*" style "murrine-default"
    # RSC: Fix for CPU frequency applet
    style "applet-text" = "murrine-panel"
    fg[NORMAL] = @bg_color
    widget_class "*CPUFreqApplet*" style:highest "applet-text"
    style "murrine-dialog" = "murrine-dark"
    bg[NORMAL] = mix(0.4, @selected_bg_color, shade(0.7, @bg_color))
    fg[NORMAL] = shade(0.5, @fg_color)
    text[NORMAL] = shade(0.5, @text_color)
    style "murrine-dialog-button" = "murrine-dark"
    bg[NORMAL] = shade(0.15, @bg_color)
    bg[PRELIGHT] = shade(0.18, @bg_color)
    # Dialog boxes...?
    # widget_class "*Dialog*" style "murrine-dialog"
    # widget_class "*Dialog*.*" style "murrine-dialog"
    # widget_class "*Dialog*.*Button*" style "murrine-dialog-button"

  • Error Code: AIP: 50080:  Exchange protocol identification error

    Hi,
    I have setup a business action to process EDI X12 850 (PO) document version 4010 over EDI X12 over Internet - HTTP. To simulate the Trading Partner sending the EDI data to us I have developed a test.html page to submit the EDI data. The test.html does a http post to the b2b/transportServlet. When I do this I get the following error:
    AIP: 50080 Exchange protocol identification errorMy Business Action
    setup look like this:
    BUSINESS ACTION:
    Create Business Action : Review for 850
    Business Protocol     : EDI X12 over Internet
    Process Protocol     : B2B
    Process Protocol Revision : B2B Process - 1.0
    General
    Name     :Process_850
    Revision     :1.0
    Document Protocol Revision
    Name     :X12_4010
    Revision     :4010
    Document Type
    Document Type     :850
    Document Definition     :850_Def
    Create Business Action : Review
    Business Protocol     :EDI X12 over Internet
    Process Protocol     :B2B
    Process Protocol Revision :B2B Process - 1.0
    General
    Name     :Process_997
    Revision     :1.0
    Document Protocol Revision
    Name     :X12_4010
    Revision     :4010
    Document Type
    Document Type     :997
    Document Definition     :997_Def
    Create Trading Partner : Review
    General
    Name     :ACME
    Operational Capability
    Business Protocol     :EDI X12 over Internet
    Business Action     :Process_850
    Use Default Document Protocol Parameters     :false
    Use Default Document Definition     :true
    Communication Capability
    Delivery Channel     :ACME_X12_DC
    Document Exchange     :ACME_X12_DocEx
    Exchange Protocol Revision     :AS2 - 1.1
    Transport     :ACME_X12_Transport
    Transport Protocol     :HTTP
    Transport Server     :ACME_X12_Transport_Server
    Trading Partner     :ACME
    Business Protocol     :EDI X12 over Internet
    Details
    Business Action     :Process_997 - Responder
    Is Initiator     :false
    Functional acknowledgement required?     :false
    Is acknowledgement handled by Integration B2B?     :true
    Document Information
    Document Protocol     :EDI_X12
    Document Protocol Revision     :X12_4010
    Document Type     :997
    Document Definition     
    Document Protocol Parameters
    Name Value
    Interchange Time     #SystemTime(HHMM)#
    Interchange ecs File     
    Security Information Qualifier     00
    Security Information     
    Authorization Information     
    [ Application Receiver's Code ]     ACME
    Interchange Control Standard/Repetition Separator     U
    Segment Delimiter     0x27
    Interchange Date     #SystemDate(YYMMDD)#
    Authorization Information Qualifier     00
    [ Application Sender's Code ]     ACME
    ImplementationClass     oracle.tip.adapter.b2b.document.edi.EDIDocumentPlugin
    [ Interchange Sender ID Qualifier ]     ZZ
    Replacement Character     0x7c
    Subelement Delimiter     0x2b
    Interchange Control Version Number     00200
    [ Interchange Sender ID ]     ACME
    [ Interchange Receiver ID Qualifier ]     ZZ
    Tag Delimiter     0x3d
    Usage Indicator     P
    [ Interchange Receiver ID ]     ACME
    Version/Release/Industry Identifier Code     
    Component Element Separator     0x2b
    Decimal Separator     0x2e
    Functional Group Time     #SystemTime(HHMM)#
    Responsible Agency Code     X
    Functional Group Date     #SystemDate(CCYYMMDD)#
    Group ecs File     
    Element Delimiter     0x7e
    Create Trading Partner : Review
    General
    Trading Partner     :GLOBALCHIPS
    Communication Capability
    Delivery Channel     :GLOBALCHIPS_X12_DOC
    Document Exchange     :GLOBALCHIPS_X12_DocEx
    Exchange Protocol Revision     :AS2 - 1.1
    Transport     :GLOBALCHIPS_X12_Transport
    Transport Protocol     :HTTP
    Transport Server     :GLOBALCHIPS_X12_Transport_Server
    Confirmation
    Trading partner participant successfully added.
    Agreement Details: X12_Agreement
    Details
    Agreement Id     X12_1001
    Description     
    Effective From Date     
    Effective To Date     
    Invocation Limit     
    Concurrent Conversations     
    Trading Partner Participants
    ACME - Process_850 - Initiator
    GLOBALCHIPS - Process_850 - Responder
    GLOBALCHIPS - Process_997 - Initiator
    ACME - Process_997 - Responder
    If I tried to use enq_850 I am getting the following error:
    AIP-50547 : Trading partner agreement not found for the given input values: From party[NAME] "GLOBALCHIPS", To party[NAME] "GLOBALCHIPS", Business action name "Process_850"; also verify agreement effectiveToDate

    Hi Ramesh,
    I have created Internal Deliver Channel as File Inbound for the Host Trading Partner and at the time of creating the agreement between the partners I have selected this channel.
    And I am keeping the EDI document in the end point folder. I am giving the file name as XXX_850_4010_1_12345.dat.
    Now I am not getting General validation error. This time I am getting the below error.
    Please Let me know If my approch is correct?
    Error Brief :
    5000: Parser error - Missing trailer.
    5042: Parser error - No matching parser schema was found.
    Error Brief :
    5000: Parser error - Missing trailer.
    5042: Parser error - No matching parser schema was found.
    iAudit Report :
    <?xml version="1.0" encoding="UTF-16"?><AnalyzerResults Guid="{BACD5C1A-90BE-4D6D-8F48-97E66EE909B6}" InterchangeReceived="1" InterchangeProcessed="1" InterchangeAccepted="0"> <ExecutionDate>Friday, January 12, 2007</ExecutionDate> <ExecutionTime>02:26:40 PM (India Standard Time)</ExecutionTime> <AnalyzerReturn>Failed</AnalyzerReturn> <NumberOfErrors>2</NumberOfErrors> <ErrorByCategory> <Category Name="Rejecting"> <Severity Name="Normal">2</Severity> </Category> </ErrorByCategory> <Status>Finished</Status> <DataFile> <FilePath>D:\OraASRel2\ip</FilePath> <FileName/> <LastModified/> <FileSize/> <DataURL>file:\\D:\OraASRel2\ip</DataURL> </DataFile> <Interchange Guid="{A87B69C1-43E3-423B-AA44-9F0C3BE37CF3}" InterchangeAckCode="R" FunctionalGroupReceived="1" FunctionalGroupProcessed="1" FunctionalGroupAccepted="0" RError="1" NError="0" OtherWI="0"> <DataXPointer> <StartPos>0</StartPos> <Size>951</Size> </DataXPointer> <NodeInfo> <Links> <Link Name="InterchangeSenderQual">ZZ</Link> <Link Name="InterchangeSenderID">BLUECHIPS </Link> <Link Name="InterchangeReceiverQual">12</Link> <Link Name="InterchangeReceiverID">colourchips </Link> <Link Name="InterchangeControlVersion">00300</Link> <Link Name="Standard">X12</Link> </Links> <Properties> <Property Name="InterchangeAuthorizationInfoQual">00</Property> <Property Name="InterchangeAuthorizationInfo"> </Property> <Property Name="InterchangeSecurityInfoQual">00</Property> <Property Name="InterchangeSecurityInfo"> </Property> <Property Name="InterchangeSenderQual">ZZ</Property> <Property Name="InterchangeSenderID">BLUECHIPS </Property> <Property Name="InterchangeReceiverQual">12</Property> <Property Name="InterchangeReceiverID">colourchips </Property> <Property Name="InterchangeDate">061207</Property> <Property Name="InterchangeTime">1601</Property> <Property Name="InterchangeControlStandard_RepeatingSeparator">U</Property> <Property Name="InterchangeControlVersion">00300</Property> <Property Name="InterchangeControlNumber">000050524</Property> <Property Name="InterchangeAckRequested">1</Property> <Property Name="InterchangeUsageIndicator">P</Property> <Property Name="InterchangeComponentElementSep">0x2a</Property> <Property Name="DecimalSeparator"/> <Property Name="ElementDelimiter">0x7e</Property> <Property Name="ReleaseCharacter"/> <Property Name="RepeatingSeparator"/> <Property Name="SegmentDelimiter">0x2b0xd0xa</Property> <Property Name="SubelementDelimiter">0x2a</Property> </Properties> </NodeInfo> <FunctionalGroup Guid="{BF922FB1-9661-462C-B5A6-D868869A8C79}" FunctionalGroupAckCode="R" TransactionSetsIncluded="1" TransactionSetsReceived="1" TransactionSetsProcessed="1" TransactionSetsAccepted="0" RError="0" NError="0" OtherWI="0"> <DataXPointer> <StartPos>108</StartPos> <Size>843</Size> </DataXPointer> <NodeInfo> <Links> <Link Name="GroupSenderID">BLUECHIPS</Link> <Link Name="GroupReceiverID">colourchips</Link> <Link Name="GroupVersionNumber">004010</Link> </Links> <Properties> <Property Name="GroupID">PO</Property> <Property Name="GroupSenderID">BLUECHIPS</Property> <Property Name="GroupReceiverID">colourchips</Property> <Property Name="GroupDate">20061207</Property> <Property Name="GroupTime">1601</Property> <Property Name="GroupControlNumber">150524</Property> <Property Name="GroupAgencyCode">X</Property> <Property Name="GroupVersionNumber">004010</Property> <Property Name="GroupChildCount">1</Property> <Property Name="GroupTrailerControlNumber">150524</Property> </Properties> </NodeInfo> <Transaction Guid="{367C24CC-9747-4E49-9F02-AFC4295CF850}" TransactionAckCode="R" RError="0" NError="0" OtherWI="0"> <DataXPointer> <StartPos>171</StartPos> <Size>766</Size> </DataXPointer> <NodeInfo> <Links> <Link Name="TransactionID">850</Link> </Links> <Properties> <Property Name="TransactionID">850</Property> <Property Name="TransactionControlNumber">158192</Property> <Property Name="TransactionImplementationReference"/> <Property Name="TransactionChildCount">26</Property> <Property Name="TransactionTrailerControlNumber">158192</Property> </Properties> </NodeInfo> </Transaction> </FunctionalGroup> <InterchangeErrors> <Error ErrorCode="{03942C04-7909-4DFB-8F7D-6E5B3D8BDF48}" Severity="Normal" Category="Rejecting" Index="1" ID="50000200"> <ErrorBrief>5000: Parser error - Missing trailer.</ErrorBrief> <ErrorMsg>The Interchange Trailer is missing. The segment itself may be missing or the Segment Delimiter may be missing.{br}{br}Trailer was expected after:{br}{tab}Character: 952 </ErrorMsg> <ErrorObjectInfo> <Parameter Name="ErrorLevel">1</Parameter> <Parameter Name="Name">Parser</Parameter> <Parameter Name="_ec_CaseID">02</Parameter> <Parameter Name="_ec_dn_guid_">{A87B69C1-43E3-423B-AA44-9F0C3BE37CF3}</Parameter> <Parameter Name="_ec_start_pos_">952</Parameter> <Parameter Name="ec_error_scope">File</Parameter> </ErrorObjectInfo> <ErrorDataInfo> <Part1/> <Part3/> <DataXPointer> <StartPos>952</StartPos> <Size>0</Size> </DataXPointer> </ErrorDataInfo> </Error> </InterchangeErrors> </Interchange> <AnalyzerErrors> <Error ErrorCode="{9EE55FDF-8668-4499-9F2E-D9247519A850}" Severity="Normal" Category="Rejecting" Index="2" ID="50420000"> <ErrorBrief>5042: Parser error - No matching parser schema was found.</ErrorBrief> <ErrorMsg>The data starting at position 951 is not a valid EDI interchange. The remainder of the data file was ignored.</ErrorMsg> <ErrorObjectInfo> <Parameter Name="ErrorLevel">0</Parameter> <Parameter Name="Name">Parser</Parameter> <Parameter Name="_ec_start_pos_">951</Parameter> <Parameter Name="ec_error_scope">File</Parameter> </ErrorObjectInfo> <ErrorDataInfo> <Part1/> <ErrData/> <Part3/> <DataXPointer> <StartPos>951</StartPos> <Size>0</Size> </DataXPointer> </ErrorDataInfo> </Error> </AnalyzerErrors></AnalyzerResults>
    2007.01.12 at 14:26:40:779: Thread-12: B2B - (ERROR) Error -: AIP-50083: Document protocol identification error
         at oracle.tip.adapter.b2b.engine.Engine.identifyDocument(Engine.java:2403)
         at oracle.tip.adapter.b2b.engine.Engine.processIncomingMessage(Engine.java:1263)
         at oracle.tip.adapter.b2b.engine.Engine.incomingContinueProcess(Engine.java:1845)
         at oracle.tip.adapter.b2b.engine.Engine.handleMessageEvent(Engine.java:1777)
         at oracle.tip.adapter.b2b.engine.Engine.processEvents(Engine.java:1735)
         at oracle.tip.adapter.b2b.data.MsgListener.onMessage(MsgListener.java:455)
         at oracle.tip.adapter.b2b.data.MsgListener.run(MsgListener.java:327)
         at java.lang.Thread.run(Thread.java:534)
    Thanks
    Raghu

  • Sage's SCAFFOLDS - A developers point of view.

    The Scaffolds style layers are rocking. They allow the logical
    separation between function, data, and displays. And each of them have
    their own limb on the family tree which is well thought out and easy to
    preserve.
    There are three layers which you get with Scaffolds.
    SCF layer:
    This is where Scaffolds lives. If you need to upgrade scaffolds this is
    the place where that happens. Away from all the stuff you have already
    working...which buffers you from changes. We have went through 3
    different upgrades from Sage's Scaffolds and they went rather smoothly.
    ( not accounting that we were running Forte Beta 3....)
    This layer is where the true heart of Scaffolds lives. The meat and the
    drive of Scaffolds which manages and controls what is called when and
    why resides here.
    AppBase Layer
    This is where you could start to do some modifications to
    Scaffolds..this is the first of the Style layers. We have reserved this
    layer for needed fixes between Scaffolds and our own style layer. Not
    much resides here usually for our development.
    App Layer
    This is where our magic begins. With the top down inherence which
    Scaffolds has if a modification is done here all the children which
    inherits from anything in this layer also gets the change.
    Like...if you have a mess of windows which need a certain widget and the
    same action for that widget...you could "roll" that widget and action
    into this layer there by giving it to all the children for "free". All
    a new child would have to do to get the same inter-workings of the other
    windows is to subclass of the same parent.
    This is really nice since, like most window projects you would want your
    windows to act the same and if you make a change you only have to do it
    in one place...and not all over every window.
    Those are the Three layers which are provided for you and you can add
    your own below those to buffer changes. We added another layer below
    the App layer to continue the chain. In this new layer we do hard core
    development and find out what...if any...things we can roll up to the
    app layer.
    In each of these layers there are 5 projects. In order of supplier
    plans....
    Constants
    Classes
    Services
    Facilities
    Windows
    Which really helps keep things in perspective, and makes sure those who
    need to see something sees it and nothing else. So this helps keep
    those nasty circular suppliers in check.
    In the window classes you get a bunch of pre-called methods.
    init
    onframeopen
    ondisplayframe
    ondisplayedframe
    oncloseframe
    onmapindata
    onmapoutdata
    (there are more...but this is a good start...)
    The nice thing about windows is they are separated from the data by
    means of a content object. The content object has the information which
    the window needs to display. So you separate the acting like a window
    away from managing data. This makes for some really easy reuse
    concepts. Then on top of that your Business objects are kept way from
    the data base by means of a Strategy builder, which associates a BO with
    the needed connections to get to and from the data base.
    Then there is the Frame/controller/view branch.
    The Frame has like menus and toolbars which are common on all frames of
    that type.
    On a Frame you can have either a single view or a view controller.
    On a view controller you can have another view controller and/or views
    So you can nest really quickly pre-made groupings of widgets and
    actions.
    Views for example would be a address widget grouping. With street,
    city, state, zip such included with the required actions. Like zip code
    checking, making sure they include a state in the US..such.
    Now how many places in your app has a need to show addresses? Well
    after building the widget groupings and actions the first time...it
    takes like two or three lines of code to include that view into a frame
    or view controller. And if by chance you want to add country to all
    your addresses, you change it one place and it ripples through your
    system without need to revisit all who use that grouping.
    So as far as Customizations....man...it helps you do that in a
    controlled and easy way which will really speed your development. This
    is because you build reusable parts every time you build a frame with
    views.
    Also may I add, that Sage just rules. We went against their advice and
    started using Forte Beta 3 with Scaffolds and they helped us work
    through the bugs and the problems on the fly. At the time we started
    Scaffolds did not support Forte Beta 3, but after a bunch of heart aches
    and long sessions Sage's Scaffolds seems to me right now to be well
    worth the time and effort ( not to even forget to mention the money)
    that we have invested into it.
    Hope this helps you see the added value Scaffolds gives your Forte
    investment.
    Billy Cole
    Software Engineer
    GTE Government Systems
    From: [email protected][SMTP:[email protected]]
    Sent: Thursday, September 04, 1997 9:30 AM
    To: [email protected]
    Subject: SCAFFOLDs Customization
    Does anyone have experience using SCAFFOLDs style layer? What type of
    customiziation does it allow and how flexible is it? Does it provide
    for
    both enterprise-wide customization and application-wide customization?
    The
    literature from Sage doesn't provide much detail so I would appreciate
    hearing from those who have used it.
    Sincerely,
    CJ

    The Scaffolds style layers are rocking. They allow the logical
    separation between function, data, and displays. And each of them have
    their own limb on the family tree which is well thought out and easy to
    preserve.
    There are three layers which you get with Scaffolds.
    SCF layer:
    This is where Scaffolds lives. If you need to upgrade scaffolds this is
    the place where that happens. Away from all the stuff you have already
    working...which buffers you from changes. We have went through 3
    different upgrades from Sage's Scaffolds and they went rather smoothly.
    ( not accounting that we were running Forte Beta 3....)
    This layer is where the true heart of Scaffolds lives. The meat and the
    drive of Scaffolds which manages and controls what is called when and
    why resides here.
    AppBase Layer
    This is where you could start to do some modifications to
    Scaffolds..this is the first of the Style layers. We have reserved this
    layer for needed fixes between Scaffolds and our own style layer. Not
    much resides here usually for our development.
    App Layer
    This is where our magic begins. With the top down inherence which
    Scaffolds has if a modification is done here all the children which
    inherits from anything in this layer also gets the change.
    Like...if you have a mess of windows which need a certain widget and the
    same action for that widget...you could "roll" that widget and action
    into this layer there by giving it to all the children for "free". All
    a new child would have to do to get the same inter-workings of the other
    windows is to subclass of the same parent.
    This is really nice since, like most window projects you would want your
    windows to act the same and if you make a change you only have to do it
    in one place...and not all over every window.
    Those are the Three layers which are provided for you and you can add
    your own below those to buffer changes. We added another layer below
    the App layer to continue the chain. In this new layer we do hard core
    development and find out what...if any...things we can roll up to the
    app layer.
    In each of these layers there are 5 projects. In order of supplier
    plans....
    Constants
    Classes
    Services
    Facilities
    Windows
    Which really helps keep things in perspective, and makes sure those who
    need to see something sees it and nothing else. So this helps keep
    those nasty circular suppliers in check.
    In the window classes you get a bunch of pre-called methods.
    init
    onframeopen
    ondisplayframe
    ondisplayedframe
    oncloseframe
    onmapindata
    onmapoutdata
    (there are more...but this is a good start...)
    The nice thing about windows is they are separated from the data by
    means of a content object. The content object has the information which
    the window needs to display. So you separate the acting like a window
    away from managing data. This makes for some really easy reuse
    concepts. Then on top of that your Business objects are kept way from
    the data base by means of a Strategy builder, which associates a BO with
    the needed connections to get to and from the data base.
    Then there is the Frame/controller/view branch.
    The Frame has like menus and toolbars which are common on all frames of
    that type.
    On a Frame you can have either a single view or a view controller.
    On a view controller you can have another view controller and/or views
    So you can nest really quickly pre-made groupings of widgets and
    actions.
    Views for example would be a address widget grouping. With street,
    city, state, zip such included with the required actions. Like zip code
    checking, making sure they include a state in the US..such.
    Now how many places in your app has a need to show addresses? Well
    after building the widget groupings and actions the first time...it
    takes like two or three lines of code to include that view into a frame
    or view controller. And if by chance you want to add country to all
    your addresses, you change it one place and it ripples through your
    system without need to revisit all who use that grouping.
    So as far as Customizations....man...it helps you do that in a
    controlled and easy way which will really speed your development. This
    is because you build reusable parts every time you build a frame with
    views.
    Also may I add, that Sage just rules. We went against their advice and
    started using Forte Beta 3 with Scaffolds and they helped us work
    through the bugs and the problems on the fly. At the time we started
    Scaffolds did not support Forte Beta 3, but after a bunch of heart aches
    and long sessions Sage's Scaffolds seems to me right now to be well
    worth the time and effort ( not to even forget to mention the money)
    that we have invested into it.
    Hope this helps you see the added value Scaffolds gives your Forte
    investment.
    Billy Cole
    Software Engineer
    GTE Government Systems
    From: [email protected][SMTP:[email protected]]
    Sent: Thursday, September 04, 1997 9:30 AM
    To: [email protected]
    Subject: SCAFFOLDs Customization
    Does anyone have experience using SCAFFOLDs style layer? What type of
    customiziation does it allow and how flexible is it? Does it provide
    for
    both enterprise-wide customization and application-wide customization?
    The
    literature from Sage doesn't provide much detail so I would appreciate
    hearing from those who have used it.
    Sincerely,
    CJ

  • Colored Calendar in Sharepoint 2013

    Hello,
    I have tried every solution to get my Calendar for SharePoint 2013 to have colors for different event types, but to no avail.  Overlays don't work since the calendars are based off of a list item, not a calendar item. Overlay is just not an option in
    that case.  I am putting my calendar on a page with other APPs, that seemed to have messed up the color options to begin with.  I guess in that case I created a calendar with Overlays, and then inserted that into a page with other items.  When
    I did that the overlay colors disappeared.
    When I tried this one ttp://social.technet.microsoft.com/Forums/sharepoint/en-US/ca331954-0771-4fc9-9c9e-b7efca6114f8/color-code-calendar-by-category?forum=sharepointdevelopmentprevious
             (I had to remove the first "h" since it wouldn't let me insert a link until my account is verified, and I didn't know how else to not have it automatically create it as a link here).
    I noticed this warning in Dimitri's description ... could this be what is causing my problems?
         "Caution: The jQuery JavaScript library must be available in your environment."
    How do I know if the JQuery JavaScript library is available? 
    I'm not sure what to try next.  I don't want to move forward with my program until this gets figured out, since it is so important to the project.
    Thank you, Liz.

    Check if below can help
    http://www.sharepointbreak.com/2012/09/02/creating-a-color-coded-calendar-by-category-using-js-in-sharepoint-2010/
    function ColourCalendar() {
    if(jQuery('a:contains(' + SEPARATOR + ')') != null)
    jQuery('a:contains(' + SEPARATOR + ')').each(function (i) {
    $box = jQuery(this).parents('div[title]');
    var colours = GetColourCodeFromCategory(GetCategory(this.innerHTML));
    var colour = colours[0];
    //colour += "!important";
    var Fontcolour = colours[1];
    this.innerHTML = GetActualText(this.innerHTML);
    jQuery($box).attr("title", GetActualText(jQuery($box).attr("title")));
    $box.css('background-color', colour);
    $box.children().css('color', Fontcolour);
    // I've added this condition since the font color did not catch on to a a:link unless i used !important
    //if (Fontcolour == 'white')
    //$('a:link', $box).css("cssText", "color: white !important;");
    function GetColourCodeFromCategory(category) {
    var colour = null;
    var Fontcolour = null;
    switch (category.trim().toLowerCase()) {
    case 'category1':
    colour = 'green';
    Fontcolour = 'black';
    break;
    case 'category2':
    colour = 'blue';
    Fontcolour = 'white';
    break;
    case 'category3':
    colour = 'yellow';
    Fontcolour = 'black';
    break;
    return [colour, Fontcolour];
    CSS, javascript & calculated columns should do the trick. Read the following posts:
    Tutorial: add color coding to your SharePoint 2007 calendar in 15 minutes
    Colour coded SharePoint 2010 Calendar
    If this helped you resolve your issue, please mark it Answered

  • I have 6 radio buttons.i want to use a case statement to read them.

    i have 6 radio buttons.i grouped them.i want to read them in a subroutine using a case statement.how can i read them

    Hi Leela,
    You cannot use the Case statement to read the radio buttons.
    nstead you will have to use Loop at Screen under At Selection Screen Output.
    Please refer to the below code or the reference:
    *& Report  ZHYPERION                                                   *
    *& Project : SubSea7
    Created on : 07/02/2007
    Created by : Puneet Jhari.
    *& Purpose : For SAP Interface download Hyperion.
    REPORT  zhyperion NO STANDARD PAGE HEADING  MESSAGE-ID zhyper.
    Start of Data Declaration
    TYPE-POOLS : truxs,vrm.
    TABLES : glpct,cepc.
    DATA : var TYPE i,
            total TYPE f.
    DATA : BEGIN OF wa2,
           ryear LIKE glpct-ryear,
           rbukrs LIKE glpct-rbukrs,
           racct LIKE glpct-racct,
           ksl01 LIKE glpct-ksl01,
           END OF wa2.
    DATA : BEGIN OF wa3,
           ryear LIKE glpct-ryear,
           rbukrs LIKE glpct-rbukrs,
           racct LIKE glpct-racct,
           ksl01 LIKE glpct-ksl01,
           END OF wa3.
    DATA : BEGIN OF wa4,
           racct LIKE glpct-racct,
           END OF wa4.
    DATA : BEGIN OF wa5,
           rbukrs LIKE glpct-rbukrs,
           racct LIKE glpct-racct,
           total1(8) TYPE p DECIMALS 2,
           END OF wa5.
    DATA : BEGIN OF wa9,
           khinr LIKE cepc-khinr,
           racct LIKE glpct-racct,
           total1(8) TYPE p DECIMALS 2,
           END OF wa9.
    DATA : BEGIN OF wa6,
           khinr LIKE cepc-khinr,
           prctr LIKE cepc-prctr,
           rprctr LIKE glpct-rprctr,
           ryear LIKE glpct-ryear,
           rbukrs LIKE glpct-rbukrs,
           racct LIKE glpct-racct,
           ksl01 LIKE glpct-ksl01,
           END OF wa6.
    DATA : BEGIN OF wa7,
           khinr LIKE cepc-khinr,
           prctr LIKE cepc-prctr,
           rprctr LIKE glpct-rprctr,
           ryear LIKE glpct-ryear,
           rbukrs LIKE glpct-rbukrs,
           racct LIKE glpct-racct,
           ksl01 LIKE glpct-ksl01,
           END OF wa7.
    DATA : itab3 LIKE TABLE OF wa2,
           itab4 LIKE TABLE OF wa3,
           itab5 LIKE TABLE OF wa4 WITH HEADER LINE,
           itab6 LIKE TABLE OF wa5 WITH HEADER LINE,
           itab7 LIKE TABLE OF wa6,
           itab8 LIKE TABLE OF wa7,
           itab10 LIKE TABLE OF wa9.
    DATA : flag(1) TYPE c,
           temp(6) TYPE c.
    DATA : itab2 TYPE truxs_t_text_data,
           itab9 TYPE truxs_t_text_data WITH HEADER LINE.
    DATA : name TYPE vrm_id,
           list TYPE vrm_values,
           value LIKE LINE OF list,
           FILNAM11 TYPE STRING,
           FILNAM21 TYPE STRING.
    End of Data Declaration
    Begin of Selection Screen
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    PARAMETERS: r1 DEFAULT 'X' RADIOBUTTON GROUP g1 USER-COMMAND rad1,
    r2 RADIOBUTTON GROUP g1 .
    SELECTION-SCREEN END OF BLOCK b1.
    SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-005.
    PARAMETERS: rbukrs1 TYPE glpct-rbukrs MODIF ID ful,
                khinr1 TYPE cepc-khinr AS LISTBOX VISIBLE LENGTH 20
                MODIF ID sam ,
                ryear1 TYPE glpct-ryear MODIF ID ful,
                ryear2 TYPE glpct-ryear MODIF ID sam,
                rpmax1 TYPE i MODIF ID ful,
                rpmax2 TYPE i MODIF ID sam,
                filnam1 TYPE rlgrap-filename MODIF ID ful,
                filnam2 TYPE RLGRAP-FILENAME MODIF ID sam.
    SELECTION-SCREEN END OF BLOCK b3.
    End of Selection Screen
    AT SELECTION-SCREEN OUTPUT
    AT SELECTION-SCREEN OUTPUT.
    PERFORM populate.          "For populating the drop-down list.
    CLEAR VALUE.
    REFRESH LIST.
    NAME = 'KHINR1'.
    VALUE-KEY = '1S7_NOCASV'.
    VALUE-TEXT = '1S7_NOCASV'.
    APPEND VALUE TO LIST.
    VALUE-KEY = '1S7_NOCJOT'.
    VALUE-TEXT = '1S7_NOCJOT'.
    APPEND VALUE TO LIST.
    LOOP AT SCREEN.            "For toggling between the selection screens.
        IF r1 EQ 'X'.
          IF screen-group1 = 'SAM'.
            screen-active = 0.
          ENDIF.
        ELSEIF r2 EQ 'X'.
          IF screen-group1 = 'FUL'.
            screen-active = 0.
          ENDIF.
        ENDIF.
        MODIFY SCREEN.
      ENDLOOP.
    For the Drop-Down Listbox
      CALL FUNCTION 'VRM_SET_VALUES'
        EXPORTING
          id                    = name
          values                = list
    EXCEPTIONS
      ID_ILLEGAL_NAME       = 1
      OTHERS                = 2
      IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    Begin of Data Selection
    START-OF-SELECTION.
    When Company Code radio button is selected.
      IF r1 EQ 'X'.            "If Company Code radio button is selected.
        IF rbukrs1 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
        IF rpmax1 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
        IF ryear1 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
        IF filnam1 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
    MOVE FILNAM1 TO FILNAM11.
        CASE rpmax1.
          WHEN '01'.
            SELECT ryear rbukrs racct ksl01
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '02'.
            SELECT ryear rbukrs racct ksl02
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '03'.
            SELECT ryear rbukrs racct ksl03
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '04'.
            SELECT ryear rbukrs racct ksl04
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '05'.
            SELECT ryear rbukrs racct ksl05
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '06'.
            SELECT ryear rbukrs racct ksl06
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '07'.
            SELECT ryear rbukrs racct ksl07
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '08'.
            SELECT ryear rbukrs racct ksl08
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '09'.
            SELECT ryear rbukrs racct ksl09
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '10'.
            SELECT ryear rbukrs racct ksl10
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '11'.
            SELECT ryear rbukrs racct ksl11
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '12'.
            SELECT ryear rbukrs racct ksl12
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '13'.
            SELECT ryear rbukrs racct ksl13
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '14'.
            SELECT ryear rbukrs racct ksl14
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '15'.
            SELECT ryear rbukrs racct ksl15
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
          WHEN '16'.
            SELECT ryear rbukrs racct ksl16
    FROM glpct INTO TABLE itab3 WHERE rbukrs EQ rbukrs1 AND ryear EQ ryear1.
        ENDCASE.
        MOVE itab3 TO itab4.
        LOOP AT itab3 INTO wa2.
          flag = 0.
          LOOP AT itab5 INTO wa4.
            IF wa2-racct EQ wa4-racct.
              flag = 1.
              EXIT.
            ENDIF.
          ENDLOOP.
          DELETE ADJACENT DUPLICATES FROM itab5.
          IF flag = 1.
            CONTINUE.
          ENDIF.
          LOOP AT itab4 INTO wa3.
            IF wa2-rbukrs EQ wa3-rbukrs AND wa2-racct EQ wa3-racct AND
            wa2-ryear EQ wa3-ryear.
              total = total + wa3-ksl01.
            ENDIF.
          ENDLOOP.
          wa5-rbukrs = wa2-rbukrs.
          wa5-racct = wa2-racct+4(6).
          wa5-total1 = total.
          APPEND wa5 TO itab6.
          CLEAR total.
          APPEND wa2-racct TO itab5.
        ENDLOOP.
    If no data is available corresponding to the values entered.
        IF itab6[] IS INITIAL.
          MESSAGE i003.
        ENDIF.
    For making the file Comma separated
        CALL FUNCTION 'SAP_CONVERT_TO_TEX_FORMAT'
          EXPORTING
            i_field_seperator          = ','
    I_LINE_HEADER              =
      I_FILENAME                 =
      I_APPL_KEEP                = ' '
          TABLES
            i_tab_sap_data             = itab6
         CHANGING
           i_tab_converted_data       = itab2
    EXCEPTIONS
      CONVERSION_FAILED          = 1
      OTHERS                     = 2
        IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
    For downloading it to the Presentation Server
       MOVE itab2[] TO itab9[].
       OPEN DATASET filnam1 FOR OUTPUT IN LEGACY TEXT MODE.
       LOOP AT itab9.
         TRANSFER itab9 TO filnam1.
       ENDLOOP.
       CLOSE DATASET filnam1.
       IF sy-subrc EQ 0.
         MESSAGE s004.
       ENDIF.
    CALL FUNCTION 'GUI_DOWNLOAD'
      EXPORTING
      BIN_FILESIZE                    =
        filename                        = FILNAM11
      FILETYPE                        = 'ASC'
      APPEND                          = ' '
      WRITE_FIELD_SEPARATOR           = ' '
      HEADER                          = '00'
      TRUNC_TRAILING_BLANKS           = ' '
      WRITE_LF                        = 'X'
      COL_SELECT                      = ' '
      COL_SELECT_MASK                 = ' '
      DAT_MODE                        = ' '
      CONFIRM_OVERWRITE               = ' '
      NO_AUTH_CHECK                   = ' '
      CODEPAGE                        = ' '
      IGNORE_CERR                     = ABAP_TRUE
      REPLACEMENT                     = '#'
      WRITE_BOM                       = ' '
      TRUNC_TRAILING_BLANKS_EOL       = 'X'
      WK1_N_FORMAT                    = ' '
      WK1_N_SIZE                      = ' '
      WK1_T_FORMAT                    = ' '
      WK1_T_SIZE                      = ' '
      WRITE_LF_AFTER_LAST_LINE        = ABAP_TRUE
    IMPORTING
      FILELENGTH                      =
      tables
        data_tab                        = itab2
      FIELDNAMES                      =
    EXCEPTIONS
      FILE_WRITE_ERROR                = 1
      NO_BATCH                        = 2
      GUI_REFUSE_FILETRANSFER         = 3
      INVALID_TYPE                    = 4
      NO_AUTHORITY                    = 5
      UNKNOWN_ERROR                   = 6
      HEADER_NOT_ALLOWED              = 7
      SEPARATOR_NOT_ALLOWED           = 8
      FILESIZE_NOT_ALLOWED            = 9
      HEADER_TOO_LONG                 = 10
      DP_ERROR_CREATE                 = 11
      DP_ERROR_SEND                   = 12
      DP_ERROR_WRITE                  = 13
      UNKNOWN_DP_ERROR                = 14
      ACCESS_DENIED                   = 15
      DP_OUT_OF_MEMORY                = 16
      DISK_FULL                       = 17
      DP_TIMEOUT                      = 18
      FILE_NOT_FOUND                  = 19
      DATAPROVIDER_EXCEPTION          = 20
      CONTROL_FLUSH_ERROR             = 21
      OTHERS                          = 22
    IF sy-subrc eq 0.
    message s004.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    When Region radio button is selected.
      ELSEIF r2 EQ 'X'.
        IF khinr1 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
        IF rpmax2 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
        IF ryear2 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
        IF filnam2 IS INITIAL.
          MESSAGE i002.
          LEAVE TO SCREEN 1000.
        ENDIF.
    MOVE FILNAM2 TO FILNAM21.
        CASE rpmax2.
          WHEN '01'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl01
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '02'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl02
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '03'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl03
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '04'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl04
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '05'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl05
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '06'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl06
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '07'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl07
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '08'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl08
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '09'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl09
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '10'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl10
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '11'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl11
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '12'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl12
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '13'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl13
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '14'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl14
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '15'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl15
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
          WHEN '16'.
           SELECT ckhinr cprctr grprctr gryear grbukrs gracct g~ksl16
           INTO CORRESPONDING FIELDS OF TABLE itab7
           FROM (  glpct AS g
                   INNER JOIN cepc AS c ON grprctr = cprctr )
           WHERE c~khinr = khinr1 AND
                 g~ryear = ryear2.
        ENDCASE.
        MOVE itab7 TO itab8.
        LOOP AT itab7 INTO wa6.
          flag = 0.
          LOOP AT itab5 INTO wa4.
            IF wa6-racct EQ wa4-racct.
              flag = 1.
              EXIT.
            ENDIF.
          ENDLOOP.
          DELETE ADJACENT DUPLICATES FROM itab5.
          IF flag = 1.
            CONTINUE.
          ENDIF.
          LOOP AT itab8 INTO wa7.
            IF wa6-rbukrs EQ wa7-rbukrs AND wa6-racct EQ wa7-racct AND
            wa6-ryear EQ wa7-ryear.
              total = total + wa7-ksl01.
            ENDIF.
          ENDLOOP.
          wa9-khinr = khinr1.
          wa9-racct = wa6-racct+4(6).
          wa9-total1 = total.
          APPEND wa9 TO itab10.
          CLEAR total.
          APPEND wa6-racct TO itab5.
        ENDLOOP.
    *If no data is available corresponding to the values entered.
        IF itab10 IS INITIAL.
          MESSAGE i003.
        ENDIF.
    For making the file Comma separated
        CALL FUNCTION 'SAP_CONVERT_TO_TEX_FORMAT'
          EXPORTING
            i_field_seperator          = ','
      I_LINE_HEADER              =
      I_FILENAME                 =
      I_APPL_KEEP                = ' '
          TABLES
            i_tab_sap_data             = itab10
         CHANGING
           i_tab_converted_data       = itab2
    EXCEPTIONS
      CONVERSION_FAILED          = 1
      OTHERS                     = 2
        IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
    For downloading it to the Presentation Server
       MOVE itab2[] TO itab9[].
       OPEN DATASET filnam2 FOR OUTPUT IN LEGACY TEXT MODE.
       LOOP AT itab9.
         TRANSFER itab9 TO filnam2.
       ENDLOOP.
       CLOSE DATASET filnam2.
       IF sy-subrc EQ 0.
         MESSAGE s004.
       ENDIF.
    CALL FUNCTION 'GUI_DOWNLOAD'
      EXPORTING
      BIN_FILESIZE                    =
        filename                        = FILNAM21
      FILETYPE                        = 'ASC'
      APPEND                          = ' '
      WRITE_FIELD_SEPARATOR           = ' '
      HEADER                          = '00'
      TRUNC_TRAILING_BLANKS           = ' '
      WRITE_LF                        = 'X'
      COL_SELECT                      = ' '
      COL_SELECT_MASK                 = ' '
      DAT_MODE                        = ' '
      CONFIRM_OVERWRITE               = ' '
      NO_AUTH_CHECK                   = ' '
      CODEPAGE                        = ' '
      IGNORE_CERR                     = ABAP_TRUE
      REPLACEMENT                     = '#'
      WRITE_BOM                       = ' '
      TRUNC_TRAILING_BLANKS_EOL       = 'X'
      WK1_N_FORMAT                    = ' '
      WK1_N_SIZE                      = ' '
      WK1_T_FORMAT                    = ' '
      WK1_T_SIZE                      = ' '
      WRITE_LF_AFTER_LAST_LINE        = ABAP_TRUE
    IMPORTING
      FILELENGTH                      =
      tables
        data_tab                        = itab2
      FIELDNAMES                      =
    EXCEPTIONS
      FILE_WRITE_ERROR                = 1
      NO_BATCH                        = 2
      GUI_REFUSE_FILETRANSFER         = 3
      INVALID_TYPE                    = 4
      NO_AUTHORITY                    = 5
      UNKNOWN_ERROR                   = 6
      HEADER_NOT_ALLOWED              = 7
      SEPARATOR_NOT_ALLOWED           = 8
      FILESIZE_NOT_ALLOWED            = 9
      HEADER_TOO_LONG                 = 10
      DP_ERROR_CREATE                 = 11
      DP_ERROR_SEND                   = 12
      DP_ERROR_WRITE                  = 13
      UNKNOWN_DP_ERROR                = 14
      ACCESS_DENIED                   = 15
      DP_OUT_OF_MEMORY                = 16
      DISK_FULL                       = 17
      DP_TIMEOUT                      = 18
      FILE_NOT_FOUND                  = 19
      DATAPROVIDER_EXCEPTION          = 20
      CONTROL_FLUSH_ERROR             = 21
      OTHERS                          = 22
    IF sy-subrc eq 0.
    message s004.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
      ENDIF.
    *&      Form  POPULATE
          text
    FORM populate.
      CLEAR value.
      REFRESH list.
      name = 'KHINR1'.
      value-key = '1S7_SUBSEA'.
      value-text = '1S7_SUBSEA'.
      APPEND value TO list.
      value-key = '1S7_GEN'.
      value-text = '1S7_GEN'.
      APPEND value TO list.
      value-key = '1S7'.
      value-text = '1S7'.
      APPEND value TO list.
      value-key = '1S7_CORPTP'.
      value-text = '1S7_CORPTP'.
      APPEND value TO list.
      value-key = '1S7_BRRE'.
      value-text = '1S7_BRRE'.
      APPEND value TO list.
      value-key = '1S7_BRCON'.
      value-text = '1S7_BRCON'.
      APPEND value TO list.
      value-key = '1S7_BRCJOB'.
      value-text = '1S7_BRCJOB'.
      APPEND value TO list.
      value-key = '1S7_BRCJBU'.
      value-text = '1S7_BRCJBU'.
      APPEND value TO list.
      value-key = '1S7_BRCJCO'.
      value-text = '1S7_BRCJCO'.
      APPEND value TO list.
      value-key = '1S7_BRCJIR'.
      value-text = '1S7_BRCJIR'.
      APPEND value TO list.
      value-key = '1S7_BRCJEN'.
      value-text = '1S7_BRCJEN'.
      APPEND value TO list.
      value-key = '1S7_BRCJPI'.
      value-text = '1S7_BRCJPI'.
      APPEND value TO list.
      value-key = '1S7_BRCJSU'.
      value-text = '1S7_BRCJSU'.
      APPEND value TO list.
      value-key = '1S7_BRCJFL'.
      value-text = '1S7_BRCJFL'.
      APPEND value TO list.
      value-key = '1S7_BRCJOT'.
      value-text = '1S7_BRCJOT'.
      APPEND value TO list.
      value-key = '1S7_BRCASV'.
      value-text = '1S7_BRCASV'.
      APPEND value TO list.
      value-key = '1S7_BRCASE'.
      value-text = '1S7_BRCASE'.
      APPEND value TO list.
      value-key = '1S7_BRCOOC'.
      value-text = '1S7_BRCOOC'.
      APPEND value TO list.
      value-key = '1S7_BRCOHD'.
      value-text = '1S7_BRCOHD'.
      APPEND value TO list.
      value-key = '1S7_BRCGEN'.
      value-text = '1S7_BRCGEN'.
      APPEND value TO list.
      value-key = '1S7_BRDRI'.
      value-text = '1S7_BRDRI'.
      APPEND value TO list.
      value-key = '1S7_BRDJOB'.
      value-text = '1S7_BRDJOB'.
      APPEND value TO list.
      value-key = '1S7_BRDASV'.
      value-text = '1S7_BRDASV'.
      APPEND value TO list.
      value-key = '1S7_BRDASE'.
      value-text = '1S7_BRDASE'.
      APPEND value TO list.
      value-key = '1S7_BRDAEW'.
      value-text = '1S7_BRDAEW'.
      APPEND value TO list.
      value-key = '1S7_BRDAEO'.
      value-text = '1S7_BRDAEO'.
      APPEND value TO list.
      value-key = '1S7_BRDAET'.
      value-text = '1S7_BRDAET'.
      APPEND value TO list.
      value-key = '1S7_BRDOOC'.
      value-text = '1S7_BRDOOC'.
      APPEND value TO list.
      value-key = '1S7_BRDOHD'.
      value-text = '1S7_BRDOHD'.
      APPEND value TO list.
      value-key = '1S7_BRVER'.
      value-text = '1S7_BRVER'.
      APPEND value TO list.
      value-key = '1S7_BRVJOB'.
      value-text = '1S7_BRVJOB'.
      APPEND value TO list.
      value-key = '1S7_BRVASV'.
      value-text = '1S7_BRVASV'.
      APPEND value TO list.
      value-key = '1S7_BRVASE'.
      value-text = '1S7_BRVASE'.
      APPEND value TO list.
      value-key = '1S7_BRVOOC'.
      value-text = '1S7_BRVOOC'.
      APPEND value TO list.
      value-key = '1S7_BRVOHD'.
      value-text = '1S7_BRVOHD'.
      APPEND value TO list.
      value-key = '1S7_UKRE'.
      value-text = '1S7_UKRE'.
      APPEND value TO list.
      value-key = '1S7_UKCON'.
      value-text = '1S7_UKCON'.
      APPEND value TO list.
      value-key = '1S7_UKCJOB'.
      value-text = '1S7_UKCJOB'.
      APPEND value TO list.
      value-key = '1S7_UKCJBU'.
      value-text = '1S7_UKCJBU'.
      APPEND value TO list.
      value-key = '1S7_UKCJCO'.
      value-text = '1S7_UKCJCO'.
      APPEND value TO list.
      value-key = '1S7_UKCJIR'.
      value-text = '1S7_UKCJIR'.
      APPEND value TO list.
      value-key = '1S7_UKCJEN'.
      value-text = '1S7_UKCJEN'.
      APPEND value TO list.
      value-key = '1S7_UKCJPI'.
      value-text = '1S7_UKCJPI'.
      APPEND value TO list.
      value-key = '1S7_UKCJSU'.
      value-text = '1S7_UKCJSU'.
      APPEND value TO list.
      value-key = '1S7_UKCJFL'.
      value-text = '1S7_UKCJFL'.
      APPEND value TO list.
      value-key = '1S7_UKCJOT'.
      value-text = '1S7_UKCJOT'.
      APPEND value TO list.
      value-key = '1S7_UKCASV'.
      value-text = '1S7_UKCASV'.
      APPEND value TO list.
      value-key = '1S7_UKCASE'.
      value-text = '1S7_UKCASE'.
      APPEND value TO list.
      value-key = '1S7_UKCOOC'.
      value-text = '1S7_UKCOOC'.
      APPEND value TO list.
      value-key = '1S7_UKBA'.
      value-text = '1S7_UKBA'.
      APPEND value TO list.
      value-key = '1S7_UKBATE'.
      value-text = '1S7_UKBATE'.
      APPEND value TO list.
      value-key = '1S7_UKCOHD'.
      value-text = '1S7_UKCOHD'.
      APPEND value TO list.
      value-key = '1S7_UKCGEN'.
      value-text = '1S7_UKCGEN'.
      APPEND value TO list.
      value-key = '1S7_UKDRI'.
      value-text = '1S7_UKDRI'.
      APPEND value TO list.
      value-key = '1S7_UKDJOB'.
      value-text = '1S7_UKDJOB'.
      APPEND value TO list.
      value-key = '1S7_UKDASV'.
      value-text = '1S7_UKDASV'.
      APPEND value TO list.
      value-key = '1S7_UKDASE'.
      value-text = '1S7_UKDASE'.
      APPEND value TO list.
      value-key = '1S7_UKDAEW'.
      value-text = '1S7_UKDAEW'.
      APPEND value TO list.
      value-key = '1S7_UKDAEO'.
      value-text = '1S7_UKDAEO'.
      APPEND value TO list.
      value-key = '1S7_UKDAET'.
      value-text = '1S7_UKDAET'.
      APPEND value TO list.
      value-key = '1S7_UKDOOC'.
      value-text = '1S7_UKDOOC'.
      APPEND value TO list.
      value-key = '1S7_UKDOHD'.
      value-text = '1S7_UKDOHD'.
      APPEND value TO list.
      value-key = '1S7_UKVER'.
      value-text = '1S7_UKVER'.
      APPEND value TO list.
      value-key = '1S7_UKVJOB'.
      value-text = '1S7_UKVJOB'.
      APPEND value TO list.
      value-key = '1S7_UKVASV'.
      value-text = '1S7_UKVASV'.
      APPEND value TO list.
      value-key = '1S7_UKVASE'.
      value-text = '1S7_UKVASE'.
      APPEND value TO list.
      value-key = '1S7_UKVOOC'.
      value-text = '1S7_UKVOOC'.
      APPEND value TO list.
      value-key = '1S7_UKVOHD'.
      value-text = '1S7_UKVOHD'.
      APPEND value TO list.
      value-key = '1S7_NORE'.
      value-text = '1S7_NORE'.
      APPEND value TO list.
      value-key = '1S7_NOCON'.
      value-text = '1S7_NOCON'.
      APPEND value TO list.
      value-key = '1S7_NOCJOB'.
      value-text = '1S7_NOCJOB'.
      APPEND value TO list.
      value-key = '1S7_NOCJBU'.
      value-text = '1S7_NOCJBU'.
      APPEND value TO list.
      value-key = '1S7_NOCJCO'.
      value-text = '1S7_NOCJCO'.
      APPEND value TO list.
      value-key = '1S7_NOCJIR'.
      value-text = '1S7_NOCJIR'.
      APPEND value TO list.
      value-key = '1S7_NOCJEN'.
      value-text = '1S7_NOCJEN'.
      APPEND value TO list.
      value-key = '1S7_NOCJPI'.
      value-text = '1S7_NOCJPI'.
      APPEND value TO list.
      value-key = '1S7_NOCJSU'.
      value-text = '1S7_NOCJSU'.
      APPEND value TO list.
      value-key = '1S7_NOCJFL'.
      value-text = '1S7_NOCJFL'.
      APPEND value TO list.
      value-key = '1S7_NOCJOT'.
      value-text = '1S7_NOCJOT'.
      APPEND value TO list.
      value-key = '1S7_NOCASV'.
      value-text = '1S7_NOCASV'.
      APPEND value TO list.
      value-key = '1S7_NOCASE'.
      value-text = '1S7_NOCASE'.
      APPEND value TO list.
      value-key = '1S7_NOCOOC'.
      value-text = '1S7_NOCOOC'.
      APPEND value TO list.
      value-key = '1S7_NOCOHD'.
      value-text = '1S7_NOCOHD'.
      APPEND value TO list.
      value-key = '1S7_NOCGEN'.
      value-text = '1S7_NOCGEN'.
      APPEND value TO list.
      value-key = '1S7_NODRI'.
      value-text = '1S7_NODRI'.
      APPEND value TO list.
      value-key = '1S7_NODJOB'.
      value-text = '1S7_NODJOB'.
      APPEND value TO list.
      value-key = '1S7_NODASV'.
      value-text = '1S7_NODASV'.
      APPEND value TO list.
      value-key = '1S7_NODASE'.
      value-text = '1S7_NODASE'.
      APPEND value TO list.
      value-key = '1S7_NODAEW'.
      value-text = '1S7_NODAEW'.
      APPEND value TO list.
      value-key = '1S7_NODAEO'.
      value-text = '1S7_NODAEO'.
      APPEND value TO list.
      value-key = '1S7_NODAET'.
      value-text = '1S7_NODAET'.
      APPEND value TO list.
      value-key = '1S7_NODOOC'.
      value-text = '1S7_NODOOC'.
      APPEND value TO list.
      value-key = '1S7_NODOHD'.
      value-text = '1S7_NODOHD'.
      APPEND value TO list.
      value-key = '1S7_NOVER'.
      value-text = '1S7_NOVER'.
      APPEND value TO list.
      value-key = '1S7_NOVJOB'.
      value-text = '1S7_NOVJOB'.
      APPEND value TO list.
      value-key = '1S7_NOVASV'.
      value-text = '1S7_NOVASV'.
      APPEND value TO list.
      value-key = '1S7_NOVASE'.
      value-text = '1S7_NOVASE'.
      APPEND value TO list.
      value-key = '1S7_NOVOOC'.
      value-text = '1S7_NOVOOC'.
      APPEND value TO list.
      value-key = '1S7_NOVOHD'.
      value-text = '1S7_NOVOHD'.
      APPEND value TO list.
      value-key = '1S7_GORE'.
      value-text = '1S7_GORE'.
      APPEND value TO list.
      value-key = '1S7_GOCON'.
      value-text = '1S7_GOCON'.
      APPEND value TO list.
      value-key = '1S7_GOCJOB'.
      value-text = '1S7_GOCJOB'.
      APPEND value TO list.
      value-key = '1S7_GOCJBU'.
      value-text = '1S7_GOCJBU'.
      APPEND value TO list.
      value-key = '1S7_GOCJCO'.
      value-text = '1S7_GOCJCO'.
      APPEND value TO list.
      value-key = '1S7_GOCJIR'.
      value-text = '1S7_GOCJIR'.
      APPEND value TO list.
      value-key = '1S7_GOCJEN'.
      value-text = '1S7_GOCJEN'.
      APPEND value TO list.
      value-key = '1S7_GOCJPI'.
      value-text = '1S7_GOCJPI'.
      APPEND value TO list.
      value-key = '1S7_GOCJSU'.
      value-text = '1S7_GOCJSU'.
      APPEND value TO list.
      value-key = '1S7_GOCJFL'.
      value-text = '1S7_GOCJFL'.
      APPEND value TO list.
      value-key = '1S7_GOCJOT'.
      value-text = '1S7_GOCJOT'.
      APPEND value TO list.
      value-key = '1S7_GOCASV'.
      value-text = '1S7_GOCASV'.
      APPEND value TO list.
      value-key = '1S7_GOCASE'.
      value-text = '1S7_GOCASE'.
      APPEND value TO list.
      value-key = '1S7_GOCOOC'.
      value-text = '1S7_GOCOOC'.
      APPEND value TO list.
      value-key = '1S7_GOCOHD'.
      value-text = '1S7_GOCOHD'.
      APPEND value TO list.
      value-key = '1S7_GOCGEN'.
      value-text = '1S7_GOCGEN'.
      APPEND value TO list.
      value-key = '1S7_GODRI'.
      value-text = '1S7_GODRI'.
      APPEND value TO list.
      value-key = '1S7_GODJOB'.
      value-text = '1S7_GODJOB'.
      APPEND value TO list.
      value-key = '1S7_GODASV'.
      value-text = '1S7_GODASV'.
      APPEND value TO list.
      value-key = '1S7_GODASE'.
      value-text = '1S7_GODASE'.
      APPEND value TO list.
      value-key = '1S7_GODAEW'.
      value-text = '1S7_GODAEW'.
      APPEND value TO list.
      value-key = '1S7_GODAEO'.
      value-text = '1S7_GODAEO'.
      APPEND value TO list.
      value-key = '1S7_GODAET'.
      value-text = '1S7_GODAET'.
      APPEND value TO list.
      value-key = '1S7_GODOOC'.
      value-text = '1S7_GODOOC'.
      APPEND value TO list.
      value-key = '1S7_GODOHD'.
      value-text = '1S7_GODOHD'.
      APPEND value TO list.
      value-key = '1S7_GOVER'.
      value-text = '1S7_GOVER'.
      APPEND value TO list.
      value-key = '1S7_GOVJOB'.
      value-text = '1S7_GOVJOB'.
      APPEND value TO list.
      value-key = '1S7_GOVASV'.
      value-text = '1S7_GOVASV'.
      APPEND value TO list.
      value-key = '1S7_GOVASE'.
      value-text = '1S7_GOVASE'.
      APPEND value TO list.
      value-key = '1S7_GOVOOC'.
      value-text = '1S7_GOVOOC'.
      APPEND value TO list.
      value-key = '1S7_GOVOHD'.
      value-text = '1S7_GOVOHD'.
      APPEND value TO list.
      value-key = '1S7_GVRE'.
      value-text = '1S7_GVRE'.
      APPEND value TO list.
      value-key = '1S7_GVCON'.
      value-text = '1S7_GVCON'.
      APPEND value TO list.
      value-key = '1S7_GVCJOB'.
      value-text = '1S7_GVCJOB'.
      APPEND value TO list.
      value-key = '1S7_GVCJBU'.
      value-text = '1S7_GVCJBU'.
      APPEND value TO list.
      value-key = '1S7_GVCJCO'.
      value-text = '1S7_GVCJCO'.
      APPEND value TO list.
      value-key = '1S7_GVCJIR'.
      value-text = '1S7_GVCJIR'.
      APPEND value TO list.
      value-key = '1S7_GVCJEN'.
      value-text = '1S7_GVCJEN'.
      APPEND value TO list.
      value-key = '1S7_GVCJPI'.
      value-text = '1S7_GVCJPI'.
      APPEND value TO list.
      value-key = '1S7_GVCJSU'.
      value-text = '1S7_GVCJSU'.
      APPEND value TO list.
      value-key = '1S7_GVCJFL'.
      value-text = '1S7_GVCJFL'.
      APPEND value TO list.
      value-key = '1S7_GVCJOT'.
      value-text = '1S7_GVCJOT'.
      APPEND value TO list.
      value-key = '1S7_GVCASV'.
      value-text = '1S7_GVCASV'.
      APPEND value TO list.
      value-key = '1S7_GVCASE'.
      value-text = '1S7_GVCASE'.
      APPEND value TO list.
      value-key = '1S7_GVCOOC'.
      value-text = '1S7_GVCOOC'.
      APPEND value TO list.
      value-key = '1S7_GVCOHD'.
      value-text = '1S7_GVCOHD'.
      APPEND value TO list.
      value-key = '1S7_GVCGEN'.
      value-text = '1S7_GVCGEN'.
      APPEND value TO list.
      value-key = '1S7_GVDRI'.
      value-text = '1S7_GVDRI'.
      APPEND value TO list.
      value-key = '1S7_GVDJOB'.
      value-text = '1S7_GVDJOB'.
      APPEND value TO list.
      value-key = '1S7_GVDASV'.
      value-text = '1S7_GVDASV'.
      APPEND value TO list.
      value-key = '1S7_GVDASE'.
      value-text = '1S7_GVDASE'.
      APPEND value TO list.
      value-key = '1S7_GVDOOC'.
      value-text = '1S7_GVDOOC'.
      APPEND value TO list.
      value-key = '1S7_GVDOHD'.
      value-text = '1S7_GVDOHD'.
      APPEND value TO list.
      value-key = '1S7_GVVER'.
      value-text = '1S7_GVVER'.
      APPEND value TO list.
      value-key = '1S7_GVVJOB'.
      value-text = '1S7_GVVJOB'.
      APPEND value TO list.
      value-key = '1S7_GVVASV'.
      value-text = '1S7_GVVASV'.
      APPEND value TO list.
      value-key = '1S7_GVVASE'.
      value-text = '1S7_GVVASE'.
      APPEND value TO list.
      value-key = '1S7_GVVOOC'.
      value-text = '1S7_GVVOOC'.
      APPEND value TO list.
      value-key = '1S7_GVVOHD'.
      value-text = '1S7_GVVOHD'.
      APPEND value TO list.
      value-key = '1S7_GCRE'.
      value-text = '1S7_GCRE'.
      APPEND value TO list.
      value-key = '1S7_GCCON'.
      value-text = '1S7_GCCON'.
      APPEND value TO list.
      value-key = '1S7_GCCJOB'.
      value-text = '1S7_GCCJOB'.
      APPEND value TO list.
      value-key = '1S7_GCCJBU'.
      value-text = '1S7_GCCJBU'.
      APPEND value TO list.
      value-key = '1S7_GCCJCO'.
      value-text = '1S7_GCCJCO'.
      APPEND value TO list.
      value-key = '1S7_GCCJIR'.
      value-text = '1S7_GCCJIR'.
      APPEND value TO list.
      value-key = '1S7_GCCJEN'.
      value-text = '1S7_GCCJEN'.
      APPEND value TO list.
      value-key = '1S7_GCCJPI'.
      value-text = '1S7_GCCJPI'.
      APPEND value TO list.
      value-key = '1S7_GCCJSU'.
      value-text = '1S7_GCCJSU'.
      APPEND value TO list.
      value-key = '1S7_GCCJFL'.
      value-text = '1S7_GCCJFL'.
      APPEND value TO list.
      value-key = '1S7_GCCJOT'.
      value-text = '1S7_GCCJOT'.
      APPEND value TO list.
      value-key = '1S7_GCCASV'.
      value-text = '1S7_GCCASV'.
      APPEND value TO list.
      value-key = '1S7_GCCASE'.
      value-text = '1S7_GCCASE'.
      APPEND value TO list.
      value-key = '1S7_GCCOOC'.
      value-text = '1S7_GCCOOC'.
      APPEND value TO list.
      value-key = '1S7_GCCOHD'.
      value-text = '1S7_GCCOHD'.
      APPEND value TO list.
      value-key = '1S7_GCCRD'.
      value-text = '1S7_GCCRD'.
      APPEND value TO list.
      value-key = '1S7_GCCGEN'.
      value-text = '1S7_GCCGEN'.
      APPEND value TO list.
      value-key = '1S7_GCDRI'.
      value-text = '1S7_GCDRI'.
      APPEND value TO list.
      value-key = '1S7_GCDJOB'.
      value-text = '1S7_GCDJOB'.
      APPEND value TO list.
      value-key = '1S7_GCDASV'.
      value-text = '1S7_GCDASV'.
      APPEND value TO list.
      value-key = '1S7_GCDASE'.
      value-text = '1S7_GCDASE'.
      APPEND value TO list.
      value-key = '1S7_GCDOOC'.
      value-text = '1S7_GCDOOC'.
      APPEND value TO list.
      value-key = '1S7_GCDOHD'.
      value-text = '1S7_GCDOHD'.
      APPEND value TO list.
      value-key = '1S7_GCVER'.
      value-text = '1S7_GCVER'.
      APPEND value TO list.
      value-key = '1S7_GCVJOB'.
      value-text = '1S7_GCVJOB'.
      APPEND value TO list.
      value-key = '1S7_GCVASV'.
      value-text = '1S7_GCVASV'.
      APPEND value TO list.
      value-key = '1S7_GCVASE'.
      value-text = '1S7_GCVASE'.
      APPEND value TO list.
      value-key = '1S7_GCVOOC'.
      value-text = '1S7_GCVOOC'.
      APPEND value TO list.
      value-key = '1S7_GCVOHD'.

  • Best way to use Models

    Hello,
    What is the best practice when using models? Given a scenario like, 1 project has several components. Each component has its view, windows, etc, since the components are separated by functionality.
    Is it better to create a model, then add that model to the "used models" on each component? Or should I create a different component, that will handle the model, and expose its data via context on its interface?
    regards,
    arnold

    Hello Arnold,
    I have read in one of the SAP Documents, If Models are used in Different Projects (Diff DC's) then create in Separate DC for Models and use it in all the projects.
    If Models are in used in one DC with different components, use it with used models.
    Regards,
    Sridhar

Maybe you are looking for

  • HP EliteBook 850 G1 SSD M.2 chip...

    I want to add a SSD chip as a second drive to my EliteBook. It has that SSD M.2 type 2242 . Can anyone point out a chip model/manufacturer I could shop for? There is not a lot of information in any of the HP documentation I found. There seem to be 2

  • Installing oracle 11.2 rac with IBM Storwize V7000 san with aix 6.1

    Has and one deployed 11g rac with IBM Storwize V7000 san with aix 6.1 Is this possible using Oracle CRS without going for OS cluster like GPFS

  • Microphone displaying "Not Plugged In"....WHAAAAAA?

    I have a Toshiba Satellite L645-S4038 laptop and recently, I upgraded my Operating System to Windows 7 Home Premium and before, when I had Windows Vista, my sound worked GREAT, but now, when I go into Recording Devices, It shows my microphone as "not

  • SQL select * from v$log_history;

    SQL> select * from v$log_history; RECID STAMP THREAD# SEQUENCE# FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# 1 726598206 1 1 190578 08-AUG-10 467652 2 726663400 1 2 467652 09-AUG-10 719320 3 726758063 1 3 719320 10-AUG-10 1044278 (1)From this output how I ca

  • Reconcile role members

    Hi all, We encounter some problems when adding a privilege (a SAP technical role) to a business role: the users who are assigned to this business role, do not receive the privilege. So when we add the privilege to the role, the task "reconcile role m