Field invisible 0001-FKBER Problem?

Dear Friends,
I am trying to maintain field FKBER-Functional Area on Org Assignment screen under Enterprise Structure but this filed is not appearing on the screen.
In module pool MP000100 screen 2000 filed is appearing on the screen layout.
for displaying that field i written a code in ZXPADU01 exit . now the field iam able to see when ever i try to create a new record. but if i try for display or change mode the field disappears.
pls help me with the soloution
Thanks

Hi,
You can make the field visible via V_T588M table SM30.
Module pool : MP000100
Regards,
Dilek

Similar Messages

  • Making field invisible on screen shifts rest of the fields Up..

    Hi All,
    I am facing a problem that when i make one of my screen fields invisible the rest of the fields shifts up and fill up the space.
    Can this be avoided...
    please suggest
    thanks in advance,
    kushagra sharma

    Hi,
    Try to make that field with different block and then make them as invisible. it will solve ur problem
    Thanks
    kishore

  • Additional field in 0001 info type

    Hi all,
    I want to add a new field in 0001 info type.
    i believe this is just enhancement.
    Could you pls suggest the ways to enhance the 0001 info type accordingly..?
    Thanks & Regards,

    1. Using transaction PM01 chose the 'Enhance Infotype tab' and press the create 'All' button.
    2. In the next screen enter the new fields you wish to add to the Infotype 0001.
    3. After Saving  and Activating check the screen(using PA20 / PA30) and table PA0001. You will be able to see your new field.

  • Make fields invisible in SAPLBBP_MON_SC 1200

    Dear SRM-gurus,
    for making fields unvisible in Shopping Cart Detail you can go to SE51 --> SAPLBBP_SC_UI_ITS --> e.g. 100 and set fields whether "Invisible" or in Screen Painter double-click on the specific field and enter "MOR" in the 4th group field.
    This works perfectly for SAPLBBP_SC_UI_ITS.
    Now we'd like make the same restriction of fields in "Monitor Shopping Cart" transaction.
    --> SE51 --> SAPLBBP_MON_SC --> 1200
    Here when I click on Layout and set the field as "Invisible" this works alright for the description of the fields (e.g. Description) BUT for all the fields where values can be entered there is no way to make them invisible in transaction BBP_MON_SC. No matter if I set Invisible and/or the value MOR in 4th group field.
    Do you have any idea how I can also make the dropdown and value fields invisible (not available)?
    Thanks a lot for your help.Points will be given!
    Best regards,
    Henning

    Hi Henning,
    The trick cannot work in SAPLBBP_MON_SC_1200, because in the application there is no handling for the modification group. That is the difference with SAPLBBP_SC_UI_ITS / 0100. We used the trick there to avoid modifications in HTML because HTML has no modification-assistent and ABAP does.
    In your case I would suggest to modify the HTML-template (service BBP_MON_SC, template SAPLBBP_MON_SC 1200 ) to hide the unwanted fields simply by deleting or commenting the unwanted tablerows.
    Regards,
    Hendrik-Jan

  • Module Pool Programming - Radio Buttons & Screen Field Invisible or Display

    Hi,
    I have 2 radio buttons in my screen and both of them are checked or on. Not sure how to make one of them is on and other is off at a time. If A is off, i need to make few screen fields invisible or display. if A is on, i need to make the screen field invisible or input enabled.
    Can  you please suggest me a suitable way to accomplish this task.
    Appreciate Your Help in Advance.
    Thanks,
    Kannan

    hi
    try this
    go to SE38 create a program of type M
    go to SE51,give a screen no (ex : 0800) and click on create
    then click on Layout in se51
    in the Layout select the Radiobutton icon and drag/drop it on the layout
    Define them as by double clicking on the radiobutton icon
    First Radiobutton name : RB1, Groups : u can see 4 boxes,in the first box give group as G1
    do the same for the Second Radiobutton RB2.
    Now select both the radiobuttons RB1,RB2 both at a time and right click the cursor
    Radiobutton - Define.
    Then drag and drop a i/o field name : wk_name. save & activate the layout.
    in se51
    PBO
    Module_status_0800.
    Module_screen_modif.
    PAI
    Module_user_command_0800.
    in se38
    data : wk_name(10) type c.
    data : rb1,rb2.
    Module_screen_modif_o/p.
    if RB1 = 'X'.
    LOOP AT SCREEN.
    IF SCREEN-NAME = 'WK_NAME'.
    SCREEN-INPUT = '1'.
    SCREEN-INVISIBLE = '0'.
    MODIFY SCREEN.
    ENDIF.
    ENDLOOP.
    if RB2 = 'X'.
    LOOP AT SCREEN.
    IF SCREEN-NAME = 'WK_NAME'.
    SCREEN-INPUT = '0'.
    SCREEN-INVISIBLE = '1'.
    MODIFY SCREEN.
    ENDIF.
    ENDLOOP.
    endmodule.
    Module_user_command_0800.
    case sy-ucomm.
    when 'EXIT' or 'BACK' or 'CANCEL'.
    LEAVE PROGRAM.
    endcase.
    Endmodule.
    Regards

  • How to make material number field invisible in MM60?

    Dear expert,
    Is there any way to make material number field invisible in MM60 for one user?
    Best regards

    Hello,
    You may create a transaction variant for MM60 and hide Material code using SHD0. Then create Variant group and assign users to this group.
    Thanks,
    Venu

  • How to make a field invisible using t-code SHDG

    Hi Experts,
    I got a requirement to disable a field Business unit in all transactions of Plant maintainance. I heard that it can be done with the help of transaction SHDG.
    I am not aware of this transaction. So anyone please provide some information or the material related to this transaction.
    Also let me know. If i make this field invisible using this transaction. If the same field business unit is used in other modules such as SD, FICO then there also will it get invisible?
    If that is the case how to overcome the above scenario.
    Useful answers are rewarded....
    Thanks
    Kiran.

    Hi,
    I think its not shdg but shd0.
    the best way to do it is Screen Variant and Transcation Variant.
    Tcode for it is SHD0 and you can disable, make any field invisible, make screen invisible , can have default value can be done through SHD0.
    Try it. It will be helpful for you.
    http://help.sap.com/saphelp_47x200/helpdata/en/7d/f639f8015111d396480000e82de14a/frameset.htm
    Regards

  • Item field invisible

    Hi gurus,
                 Could any body give the steps for making an item field invisible in bid invitation cockpitt.
    the transaction i am using is bbp_bid_inv
    i am not able to hit that using badi bbp_ui_control_badi vth method bbp_bid_ui_ctrl vth filter bus2200
    the proposed solution is creating screen varient & transation varient by making that field invisble
    could any body provide me the steps
    i am implementing a zz of the above badi

    hi Rajanya,
            i logged into the shd0 and gave transation code bbp_bid_inv
    In transaction varient tab what i have to give
    i think i have to create transation varient how to do that
    after that is there a need to create the screen varient how to do that
    plz give the proper steps
    thanks in advance
    Edited by: sukruthi raj on Feb 5, 2008 4:11 PM
    Edited by: sukruthi raj on Feb 5, 2008 4:21 PM

  • Conditionally making a field invisible.....

    XMLP Gurus,
    Some of the values in a column has dots(.). Conditionally i have to make it invisible.
    I tried replacing null value for a dot using decode function, but in this case the other column values are shifting themselves up by taking place of null values thus losing sync with other columns.
    After the decode statement i want the null value to remain null in sync with the other columns instead of replacing the null value with a value below it (shifting up)
    Thanks in advance.

    Hi venkat,
    Thanks for the reply.
    Originally the problem persisted with the null values in the column and it is getting shrinked when the statement goes to the second page.
    This template is already created and I need to modify it. There are six different columns in the template and each column has its own for each and END for each (similar grouping for all say G_XYZ).
    Say in the 5th column if the first row in the second page(continuation from first page) is null then it is shiftng itself up losing sync with the other columns.
    To over come this I used decode in the 5th column field. I replaced the null value with a dot. It is working fine now(shrinking problem is nailed) but the users dont like the dot in place of null value.
    I tried to make the dot invisble using:
    <?if:AMOUNT_DUE=''?><xsl:attribute xdofo:ctx="block" name="background-color">white</xsl:attribute><?end if?>
    But it is throwing error: " XML-22047: (Error) Invalid instantiation of 'Attribute' in 'Element' context." .
    It does not like ctx="block" and if I replace block with line or inline, it is working as expected.
    The solution I am looking for now is to avoid shrinking of null values at first place. If not then substitute this null with some value that is invisible (say invisible dot) and avoid shrinking.
    Any help is highly appreciated.
    Thanks.......

  • How to set the fields invisible/visible dynamically with screen-exits

    <b>Goal:</b> I am changing the subscreen from standard screen for mobile device interface, i.e. function group LMOB. With a scanner I am to read a material number and have it confirmed by the SAP system. For this I need an input field which is already supplied by the standard program. The users require the screen to be dynamic, i.e. I can not do the settings in the screen-painter.
    <b>Problem occurred:</b> After I have changed to use the customized subscreen 1202 in function group XLRF, not all the fields are displayed. It seems that the values for setting the screen elements are lost when calling the subscreen (3202, copy of screen 2202). For instance, it does not show my input field. Somewhere there need to be a list that contains all these parameter switches? I know how “Loop at screen” works but can’t find the values that are supposed to be passed over to the subscreen.
    Would be grateful for some help.

    Hi Niklas!
    Unfortunately I don't know the transaction you're working on, but I had a similar problem once.
    You have to use the commands <b>LOOP AT SCREEN</b> and <b>MODIFY SCREEN</b>. I found some online help here: <a href="http://help.sap.com/saphelp_470/helpdata/en/9f/dba70535c111d1829f0000e829fbfe/frameset.htm">SAP Online Help</a>. The fields of the pseudo-table <b>SCREEN</b> can be found here: <a href="http://help.sap.com/saphelp_470/helpdata/en/9f/dbab6f35c111d1829f0000e829fbfe/frameset.htm">SAP Online Help</a>. I think you have to set <b>INVISIBLE</b> to 'X' - but you may have to experiment.
    Another thing to look out for is that you have to call this method in the <b>PBO</b> section of the dynpro. Take care no SAP logic is executed after your modification that changes your settings...
    Hope this helps (please reward me if it does),
    Joerg

  • How to make a screen field invisible?

    Hi
    My problem is the following one : I use th screen painter to create a screen.
    I would like one of the screen fields to be invisible for the user but I would like to be able to write and read values in this field using 'C14Z_DYNP_READ_FIELD' and 'DYNP_VALUES_UPDATE'
    I tried to set the value of screen-active to 0 in the PBO module but it doesn't solve the problem cause if I do it, I can't specify a value for the field.
    Please help,
    Kind Regards
    Morgan

    hi
    good
    ACTIVE, INPUT, OUTPUT, and INVISIBLE
    There are certain hierarchy rules between the components ACTIVE, INPUT, OUTPUT, and INVISIBLE. They also have different effects depending on their respective static settings.
    The ACTIVE component has no equivalent in the element attributes. Instead, it changes the components INPUT, OUTPUT, and INVISIBLE.
    At the beginning of the PBO, ACTIVE is always set to 1, regardless of the static attribute settings. Setting ACTIVE to 0 automatically sets INPUT = 0, OUTPUT = 0, and INVISIBLE = 1. Any other changes to the settings of INPUT; OUTPUT, and INVISIBLE to the current screen element are ignored. Conversely, setting INPUT = 0, OUTPUT = 0, and INVISIBLE = 1 automatically sets ACTIVE to 0, and any further assignment to ACTIVE for the current screen element will be ignored. The setting ACTIVE = 1 has no other effect on the attributes. The only purpose of the ACTIVE component is to allow you to make a screen field inactive through a single assignment. You should particularly note that a module call linked to a FIELD statement in the screen flow logic is always executed, even when SCREEN-ACTIVE = 0 for the field in question. If you want to prevent a module from being processed for an inactive field, you must specify the FIELD- and MODULE statements separately.
    go through this link
    http://help.sap.com/saphelp_nw2004s/helpdata/en/9f/dbab6f35c111d1829f0000e829fbfe/content.htm
    http://www.sts.tu-harburg.de/teaching/sap_r3/ABAP4/loop_a03.htm
    thanks
    mrutyun^

  • How to make fields invisible dynamically in standard transaction?

    When we visit T-Code FB60 there are tabs like Basic data, Payment , Details ,Tax ,Notes ,Local Currency.
    In the Tax tab there are fields like Tax code, Rep. Date etc.
    The Rep.Date has value from BKPF-VATDATE and value for tax code from RTAX1U12-MWSKZ.
    The requirement is that in Tax tab if value for tax code is not selected then the Rep. Date field should become invisible i.e., if  tax code value is empty then the Rep. Date field should become invisible dynamically.
    Is there any BADI/Enhancement Spots  to achieve this requirement?

    1.In designer on tools menu  you have level security. Add what you want objects or groups or users level security.
    2.In CMS Select the option universes then provide the security for the object level.
    3. you create the below variables :
    if CurrentUser()="@Varaible(BOUSER)" then " " else [Dimension]
    Hope this is what you are looking out for.

  • Creating Packages from BLOB field contents, line wrap problems

    Good afternoon,
    we use an in-house developed database-driven update system to update both our databases and filesystems, the system itself performs really well but there is still one problem I can't fix without some expert help:
    the code of to-be-updated Oracle packages is stored inside of a BLOB field, the BLOB field will contain both the package specification and package body and needs to be split into two parts to first execute the spec and then to execute the package body (I tried to execute both in a single step but this didn't work). This works for packages with less than 32767 characters and also works in some other cases but I found one case where the executed code contains an extra line wrap right in the middle of a word.
    To make it more clear (I hope it's comprehensible), imagine the following database content:
    CREATE OR REPLACE Package
    MyPack
    AS
    [... a lot procedure headers ...]
    END MyPack;
    CREATE OR REPLACE
    Package Body MyPack AS
    [... a lot more procedures ...]
    PROCEDURE myTest (intID OUT integer)
    AS
    BEGIN
      SELECT count (*) into intID FROM MyTa[--this is where the dbms_lob.substr() ends --]ble;
    END;
    END MyPack;My code searches for the second occurrence of the "Create or replace package", splits the code into spec and body, executes the specification and keeps on adding the rest of the code to a VARCHAR2A variable called "storedCode" from the BLOB. Now in the above example, after the specification has been removed from the string, the remaining characters (ending with the "MyTa" string) are added to the varchar2a variable, the next line is fetched from the BLOB via "dbms_lob.substr()" and added as long as dbms_lob.substr() does not return a NULL value (end of BLOB). When the code is executed after all has been fetched, the generated Package Body will contain an extra line wrap right in the middle of the "MyTable" word compiling the package invalid.
    This is the procedure code I use (definitely improvable, I'm better in MSSQL and MySQL dialects ...) to load, parse and execute the BLOB content:
       -- to run package code
      procedure runPackageCode (stepRef integer)
      AS
        numLines integer default 1;
        pos     integer default 1;
        storedCode    LOG_CHANGEDOBJECT.STOREDOBJECT%type;
        objectCursor  integer;
        lSqlOut     integer;
        sqlCommand  dbms_sql.varchar2a;
        emptyCommand dbms_sql.varchar2a;
        pIsError integer := 0;
        pErrorMsg varchar2(200) := '';
        updateRef integer := 0;
        currentUpdate integer := 0;
        schemaReference varchar2(20);
        -- required to do string cutting
        strLine varchar2(32767);
        strLeftFromSlash varchar2(32767);
        strRemaining varchar2(32767);
        intDelimiterPos integer := 0;
      begin
        -- retrieve update ID
        SELECT log_update_ref INTO currentUpdate FROM link_update_with_taskstep WHERE log_taskstep_ref = stepRef;
         begin
            select storedobject, change_area
            into storedCode, schemaReference
            from vw_storedobjects
            where step_id = stepRef;
         exception
          when no_data_found then
            pIsError := 1;
            pErrorMsg := 'Invalid SQL ID ' || stepRef;
            pkg_generic.LogError(updateRef, 'LocalUpdater', stepRef, 'Run package code failed: ' || pErrorMsg);
         end;
          if pIsError = 0 then     
            begin
              -- change schema
              execute immediate 'alter session set current_schema = ' || schemaReference;         
              objectCursor := dbms_sql.open_cursor;   
              loop
                strLine := UTL_RAW.CAST_TO_VARCHAR2(dbms_lob.substr(storedCode, 32767, pos));
                intDelimiterPos := regexp_instr(strLine, '\s*Create\s*or\s*Replace\s*Package', 2, 1, 0, 'i');
                while intDelimiterPos > 0
                loop
                  -- '/' found, execute currently stored statement
                  strLeftFromSlash := substr(strLine, 1, intDelimiterPos-1);
                  strLine := substr(strLine, intDelimiterPos);
                  -- execute the extracted part without any '/' in it
                  sqlCommand(numLines) := regexp_replace(strLeftFromSlash, '(^|\s+)/(\s+|$)', '', 1, 0, 'm');
                  if (sqlCommand(numLines) is not null) then
                    objectCursor := dbms_sql.open_cursor;   
                    dbms_sql.parse(objectCursor, sqlCommand, 1, numLines, true, dbms_sql.native);
                    lSqlOut := dbms_sql.execute(objectCursor);
                    dbms_sql.close_cursor(objectCursor);
                  end if;
                  -- reset sqlCommand
                  sqlCommand := emptyCommand;
                  -- reset line counter and store remaining string
                  numLines := 1;
                  -- check for further '/'s           
                  intDelimiterPos := regexp_instr(strLine, '\s*Create\s*or\s*Replace\s*Package', 2, 1, 0, 'i');
                end loop;
                -- add the remaining strLine to the sqlCommand
                strLine := regexp_replace(strLine, '(^|\s+)/(\s+|$)', '', 1, 0, 'm');
       --> I assume this line breaks the code, lpad()'ing the content to move it to the end of a varchar2a line didn't help
                sqlCommand(numLines) := strLine;
                exit when sqlCommand(numLines) is null;
                pos := pos+32767;
                numLines := numLines+1;
              end loop;
              objectCursor := dbms_sql.open_cursor;   
              dbms_sql.parse(objectCursor, sqlCommand, 1, numLines, true, dbms_sql.native);   
              lSqlOut := dbms_sql.execute(objectCursor);
              dbms_sql.close_cursor(objectCursor);
              commit;
              -- reset schema
              execute immediate 'alter session set current_schema = UPDATE_DB';
              -- set state to installed
              pkg_update.setstepstate(stepRef, 'Installed');
        exception
        when others then
              -- reset schema
              execute immediate 'alter session set current_schema = UPDATE_DB';
              -- set state to installFailed
              pkg_update.setstepstate(stepRef, 'InstallFailed');
              pkg_generic.LogError(updateRef, 'Database', stepRef, 'Run package code failed: ' || sqlerrm);
        end;
        end if;
      END;    Thanks if you kept on reading so far, I would really appreciate any feedback!
    Regards, Sascha

    Welcome to the forum!
    Whenever you post provide your 4 digit Oracle version (result of SELECT * FROM V$VERSION).
    Thanks for providing an easy-to-understand problem statement and for using code tags.
    >
    the code of to-be-updated Oracle packages is stored inside of a BLOB field
    >
    This should be stored in a CLOB since it is character data. Why are you using BLOB?
    >
    the BLOB field will contain both the package specification and package body and needs to be split into two parts to first execute the spec and then to execute the package body
    >
    Good, clear problem statement. So why doesn't your code do just what you said it should do: 1) split the code into two parts, 2) execute the spec and 3) execute the body.
    Instead of writing code that does these three relatively simple steps your code tries to combine splitting and executing and mushes/mashes it all together. The result, as you found, is code that is hard to understand, hard to debug, doesn't work and doesn't report on what it is doing.
    Code like this doesn't have a performance issue so the code should implement the simple step-by-step process that you so elegantly stated in your problem description:
    1. split the code into two parts
    2. execute the spec
    3. execute the body
    My advice is to refactor your code to perform the above steps in the proper order and to add proper exception handling and reporting for each step. Then when a step isn't working you will know exactly where and what the problem is.
    Here are my recommendations.
    1. Add two CLOB variables - one will hold the spec, the second will hold the body
    2. Add a comment (you have some good ones in the code now) for every step no matter how trivial it may be
    3. Add exception/error handling to EVERY STEP
    Your code for the first step has a comment but no exception handling. What should happen if you don't get any data? Why aren't you validating the data you get? Dynamic SQL using table-driven data is great, I love it, but you MUST validate that the data you get is what you expect to get.
        -- retrieve update ID
        SELECT log_update_ref INTO currentUpdate FROM link_update_with_taskstep WHERE log_taskstep_ref = stepRef;Recommended
        -- step 1 - retrieve update ID - This is the id that determines BLAH, BLAH, BLAH - add appropriate to tell a new developer what this ID is and what it means.
        BEGIN
            SELECT log_update_ref INTO currentUpdate FROM link_update_with_taskstep WHERE log_taskstep_ref = stepRef;
        EXCEPTION
            WHEN ??? THEN -- what should happen if step 1 fails? Do it here - don't default to an exception handler that is several pages away.
        END;Your code
         begin
            select storedobject, change_area
            into storedCode, schemaReference
            from vw_storedobjects
            where step_id = stepRef;
         exception
          when no_data_found then
            pIsError := 1;
            pErrorMsg := 'Invalid SQL ID ' || stepRef;
            pkg_generic.LogError(updateRef, 'LocalUpdater', stepRef, 'Run package code failed: ' || pErrorMsg);
         end;
    Good - except there is no comment that says what this does - I assume that the query above and this block are the 'retrieve update ID ' step?
    You log an error message and set the error flag to '1'. But since you don't want to continue why aren't you exiting the procedure and returning right here?
          if pIsError = 0 then     
            beginSo now you check the error flag and do several pages of code if there were no errors.
    I don't like that 'inverted' logic.
    If you don't want to continue then STOP right now! Don't make a developer scan through pages and pages of code to find out you really aren't doing anything else if there was an error.
    Either put a RETURN statement in the exception handler above or change your code to
          if pIsError = 1 then     
            RETURN;
          end if;Now the rest of the code doesn' t have to be indented; you will never get there if there is an error. Check for errors after every step and exit right then as appropriate.
              -- change schema
              execute immediate 'alter session set current_schema = ' || schemaReference;         
              objectCursor := dbms_sql.open_cursor;   
              loop
                strLine := UTL_RAW.CAST_TO_VARCHAR2(dbms_lob.substr(storedCode, 32767, pos));
                intDelimiterPos := regexp_instr(strLine, '\s*Create\s*or\s*Replace\s*Package', 2, 1, 0, 'i');
                while intDelimiterPos > 0
                loopThis code mixes all of the steps together into one giant mess. You open a cursor, try to split the BLOB into spec and body and try to parse and execute both all within a double nested loop.
    Even if that works correctly another developer will have a hard time understanding what the code is doing and fixing it if it goes wrong. And it will go wrong if you let me test if for you because I will put garbage into the BLOB for the spec, body or both to make sure it breaks and to see how your code handles it.
    I suggest you rewrite this double nested loop to perform the three steps separately.
    1. split the code into two parts
    a. put the spec into one new CLOB variable and the body into the other.
    b. use DBMS_OUTPUT (or a work table) to output the spec and body so you can see what the code is and make sure the 'split' process worked properly. You probably created that BLOB by manually concatenating the SPEC and BODY to begin with so now create a SPLIT process to split them again and give them back to you. This is such a fundamental component that I suggest creating a new SPLIT_MY_BLOB procedure. This procedure would take a BLOB and return two CLOBS as OUT parameters: one CLOB is the spec and one is the body. Then you can reuse this 'split' procedure in other code or more complex versions of code. Modular programming is the key.
    2. execute the spec - Now have a step that executes the spec and does something appropriate if the step succeeds or if it fails. I mean, do you really want to do execute the body if the spec execution fails? What do you want to do? Should you delete the body and spec? If you don't you might wind up with an INVALID body based on old code and an INVALID spec based on the new code you were trying to use. How will anyone, including you, know that the spec and body in the ALL_SOURCE view is really two different versions of things?
    This suggests that for your use case you may want to consider DROPPING the entire package, spec and body, before trying to recreate them both. At least if the package is totally missing anyone will know that the entire thing needs to be put back. Ahhhh - but to do that you need to know the package name so you can drop it. Than may require adding another step to get the package name from your data-driven table and adding a DROP PACKAGE step.
    3. execute the body - This step executes the body. Hmmmm - we have two nearly identical steps. So why don't you create a new function/procedure that takes a CLOB as input, uses dynamic sql to execute it and returns a result code. That would be useful. Then you could execute ANY sql stored in a CLOB and have a generic function that you can use for other things.
    Right now you are using the VARCHAR2 table version of DBMS_SQL.PARSE but you would change this to use the CLOB version.
    The end result of this refactoring is a main function/procedure that acts as the CONTROL - it decides what to do and what data (BLOB) to do it with. But it doesn't actually do ANY of the work. It just controls what is done.
    And you have a couple of generic, reuseable functions that actually do the work. One knows how to split a CLOB into spec and body. The other knows how to use dynamic SQL to execute a CLOB.
    Now you have a modular architecture that is easy to understand, easy to code and easy to test.

  • How to make the Selection Screen fields Invisible..?

    Hi All,
    I have a selection screen in which I have 2 Radio Buttons and 2 Blocks(with input fields).
    The requirement is when the Radiobutton1 is selected, it should display the BLOCK1 and the BLOCK2 should be Invisible. The same way, when the Radiobutton2 is selected, it should display the BLOCK2 and the BLOCK1 should be Invisible.
    Could someone help me how to do this. Please share your valuable inputs. If anyone has some sample code, that would be greatful.
    Thanks in advance.
    Thanks & Regards,
    Paddu.

    Please search the forum. This question has been asked and answered many times before.
    Rob

  • Make fields invisible based on selection in module pool screen

    I have a several fields in my module pool screen.
    There i have a box called Ref Obj.
    Inside the box i have fields a b c d e f.
    suppose my input has parameter 1.
    I need to show only fielda a and b inside the box
    suppose my input has parameter 2.
    I need to show only fielda c and d inside the box
    suppose my input has parameter 3.
    I need to show only fielda e and f inside the box
    suppose my input has parameter 4.
    I should not show any fields and box should be invisible.
    I would appreciate if any one could help me regarding this
    Thanks in advance

    hi,
    go through this code, and make the required changes according to u'r requirement but the logic is same.
    TABLES: mara , lfa1.
    SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME.
    PARAMETERS: p_matnr LIKE mara-matnr DEFAULT 'M633640000' MODIF ID m1,
                p_ersda LIKE mara-ersda DEFAULT '30.06.2004' MODIF ID m2,
                p_aenam LIKE mara-aenam DEFAULT 'DOVIND' MODIF ID m3,
                p_matkl  LIKE mara-matkl DEFAULT '0000' MODIF ID m4,
                p_meins LIKE mara-meins DEFAULT 'ST' MODIF ID m5,
                p_mbrsh LIKE mara-mbrsh DEFAULT 'M' MODIF ID m6,
                p_vpsta LIKE mara-vpsta DEFAULT 'KV' MODIF ID m7.
    SELECTION-SCREEN: END OF BLOCK b1.
    SELECTION-SCREEN: BEGIN OF BLOCK b2 WITH FRAME.
    PARAMETERS: p_lifnr LIKE lfa1-lifnr DEFAULT 5070001063 MODIF ID s1 ,
                p_land1 LIKE lfa1-land1 DEFAULT 'FR' MODIF ID s1,
                p_name1 LIKE lfa1-name1 DEFAULT 'HONDA' MODIF ID s3,
                p_ort01 LIKE lfa1-ort01 DEFAULT 'PARIS' MODIF ID s4.
    SELECTION-SCREEN: END OF BLOCK b2.
    AT SELECTION-SCREEN OUTPUT.
      LOOP AT SCREEN.
        IF screen-group1 = 'M1' .
          screen-input = 0.
          MODIFY SCREEN.
        ELSE.
          IF screen-group1 = 'M2' .
            screen-invisible = 1.
            MODIFY SCREEN.
          ELSE.
            IF screen-group1 = 'M3' .
              screen-intensified = 1.
              MODIFY SCREEN.
            ELSE.
              IF screen-group1 = 'M5' .
                screen-length = 10.
                MODIFY SCREEN.
              ELSE.
                IF screen-group1 = 'M6' .
                  screen-active = 0.
                  MODIFY SCREEN.
                ELSE.
                  IF screen-group1 = 'M7' .
                    screen-display_3d = 1.
                    MODIFY SCREEN.
                  ELSE.
                    IF screen-group1 = 'M4' .
                      screen-output = 0.
                      MODIFY SCREEN.
                    ELSE.
                      IF screen-group1 = 'S1' AND
                      screen-name = 'P_LIFNR'.
                        screen-values_in_combo = 1.
                        MODIFY SCREEN.
                      ELSE.
                        IF screen-group1 = 'S1' AND
                        screen-name = 'P_LAND1'.
                          MODIFY SCREEN.
                        ENDIF.
                      ENDIF.
                    ENDIF.
                  ENDIF.
                ENDIF.
              ENDIF.
            ENDIF.
          ENDIF.
        ENDIF.
      ENDLOOP.
    <b>please reward points if helpfull.</b>
    with regards,
    radhika kolluru.

Maybe you are looking for