Screen - Tabstrip. Urgent.
Hi, all!
Can anyone plz. tell me in case of multiple tabs in a screen, how to open one tab in write mode and others in diplay mode only......
Thanks n Regards,
Sudipto.
Subscreen 1001 *
SELECTION-SCREEN Begin Of Screen 1001 AS SUBSCREEN.
selection-screen begin of block blk with frame title text-001.
select-options : s_werks for t001w-werks no intervals, " by CR 42129.
s_kunnr for knvv-kunnr, "Ship-to customer
s_date for vbkd-fkdat no-extension. "Date
select-options : s_vkorg for vbak-vkorg, "Sales Org
s_vtweg for vbak-vtweg, "Distribution Channel
s_spart for vbak-spart, "Division
s_auart for vbak-auart. "Order Type.
select-options : s_pstyv for vbap-pstyv no-display
no intervals, "DEFAULT 'ZAP*',
s_pstyv1 for lips-pstyv no-display
no intervals. "DEFAULT 'XAP*'.
select-options: s_fksak for vbuk-fksak no-display,
S_DATE FOR VBAK-VDATU NO-DISPLAY,
s_fkstk for vbuk-fkstk no-display.
selection-screen skip.
parameters: p_cdsys as checkbox
user-command pdatcal.
selection-screen skip.
*Report options
selection-screen comment /1(17) text-002.
selection-screen begin of line.
parameters : rb_order radiobutton group rad2. "Order relevant billing
selection-screen comment 5(22) text-006 for field rb_order.
selection-screen end of line.
selection-screen begin of line.
parameters : rb_deliv radiobutton group rad2. "Delivery relevant billing
selection-screen comment 5(25) text-007 for field rb_deliv.
selection-screen end of line.
selection-screen comment 1(59) text-051.
selection-screen begin of line.
parameters : rb_all radiobutton group rad3. "All Orders
selection-screen comment 5(27) text-052 for field rb_all.
selection-screen end of line.
selection-screen begin of line. "Orders that are invoiced
parameters : rb_bill radiobutton group rad3 default 'X'.
selection-screen comment 5(34) text-053 for field rb_bill.
selection-screen end of line.
selection-screen skip.
parameters : p_vari like disvariant-variant. "Variant for ALV
selection-screen end of block blk.
SELECTION-SCREEN End OF Screen 1001.
Subscreen 1002 *
SELECTION-SCREEN Begin Of Screen 1002 AS SUBSCREEN.
selection-screen begin of block aa with frame title text-058.
parameters : rb_unix radiobutton group rad4 default 'X'
user-command unxloc.
parameters : rb_locl radiobutton group rad4.
selection-screen skip.
selection-screen end of block aa.
selection-screen begin of block bb with frame title text-060.
selection-screen comment /1(40) text-059.
parameters: p_psrvr like rlgrap-filename.
parameters: p_dirct like rlgrap-filename default '/'. "A24863-10.25.04
parameters p_xpath like filepath-pathintern
default 'ZARETESALESDEMAND' no-display.
parameters p_xfile like rlgrap-filename no-display.
selection-screen skip.
selection-screen comment /1(17) text-057.
parameters p_path like rlgrap-filename default 'C:\'.
parameters p_file like rlgrap-filename.
selection-screen end of block bb.
SELECTION-SCREEN End OF Screen 1002.
SELECTION-SCREEN BEGIN OF TABBED BLOCK SCR1 FOR 22 LINES.
SELECTION-SCREEN TAB (15) SC1 USER-COMMAND SCR1
DEFAULT SCREEN 1001.
SELECTION-SCREEN TAB (15) FILEDWNL USER-COMMAND FILEDWNL
DEFAULT SCREEN 1002.
SELECTION-SCREEN END OF BLOCK SCR1.
Above is the example for tabstrips and if you want display only then in the at selection screen output event
loop at screen.
if screen-name = p_matnr.
screen-visble = 1.
modify screen.
endif.
endloop.
You can also make those fiels into one group using modif option and check for group name instead of screen name.
Cheers,
Satya
Similar Messages
-
Hi,
I am working on screen exits for VA01.
Can someone tell me how to add table control in a sub screeen at item level in additional data B ?Hi
How to implement screen exit for a SAP standard transaction HOT
Introduction
SAP provides standard transactions to enter data into database. But a client may want to maintain some additional information in SAP other than what is provided.
To make provisions for this, additional screens have to be provided and additional fields must be added into appropriate database table.
To pave way for this, SAP has provided the option for screen exits. Usually, SAP provides the following:
An append structure in the database table with the new fields.
A subscreen area into the standard screen where the programmer can attach his subscreen of his own program with the new fields.
A function group under which the new subscreen has to be created with the new fields.
Function exits to synchronize the PBO and PAI of the standard SAP program with the PBO and PAI of the subscreen so that data can flow back and forth between the standard SAP program and the program written by the developer for the subscreen. These function modules also exist in the same function group under which the subscreen will have to be developed.
Finally, a linkage has to be done between the subscreen area of standard SAP screen with the custom subscreen constructed by the developer.
Typically, SAP provides an enhancement in which the developer can create an append structure, use the function exits to synchronize the PBO and PAI of the standard SAP program and the custom subscreen program, and make the necessary linking( as mentioned above in step 4. But, again, this is not a hard and fast rule. Linking in some case, is also done by configurations.) SAP also usually provides the name of the function group under which the subscreen has to be developed.
Necessary guidance about implementing a screen exit development is usually available in the Documentation section of the enhancement ( can be availed by transaction SMOD).
Pre-Requisites
The developer to work on screen exit should have essential knowledge on the following:
DDIC concepts, including the knowledge of append structure.
Concept of SAP Enhancements and implementing them using Projects.
Concept of function exits.
Knowledge on Module Pool including subscreens, Tabstrip controls etc.
Steps
Guidelines
So, a developer can follow the guidelines mentioned below to implement a screen exit to a standard SAP transaction, as and when required:
Find out the Required Enhancements
Go to SMOD. Press F4 in the Enhancement field. In the next popup window, click pushbutton SAP Applications. A list will appear that contains information on all the enhancements, categorized under functional areas. Developer must search for the enhancements relevant to his functional area of interest for e.g., Purchasing, Asset Accounting, etc.
Note down the enhancements. Then, come to the initial screen of SMOD and view the documentation of each enhancement to find out which one is required for your development.
Utilize the Enhancement in a Project
After you have found one, do as directed in the documentation. Generally, the steps are as follows:
Create a project using CMOD including your enhancement.
Create the append structure with new fields.
Go to the desired function group and create a subscreen with the new fields. Write PBO and PAI for the subscreen, if required.
Use the function exits in the enhancement to link the PBO and PAI of the subscreen with that of the main SAP program supporting the SAP transaction.
Maintain necessary linkage between the subscreen area of standard SAP program with the custom subscreen developed along with the custom program name. This can be done in the project (developed by CMOD including the enhancement) or outside as a part of configuration.
Activate the project.
Test to ensure that required functionality are met.
Case Study 1
Add three new custom fields for Asset master and maintain information for them
Requirement
Three fields in the legacy system have to be maintained in Asset master. These fields are:
Original Asset number 20 characters
Location 2 15 Characters.
Model no 20 characters
Location 2 should start with L.
Pre-Analysis
Finding out the Enhancement
As described above, the enhancement is determined. It was found, that enhancement AIST0002 will serve the purpose. It contains the following components (can be viewed by transaction SMOD):
Exit Type Description EXIT_SAPL1022_001 Function Exit Check of User-Defined Fields when Using Create and Change BAPI EXIT_SAPLAIST_002 Function Exit Transfer Data for User Subscreens in PBO. EXIT_SAPLAIST_003 Function Exit Transfer of User-Defined Fields to SAP Master Data Transactions CI_ANLU Customizing Include Include structure to add new fields
Studying the Function Exits
The function module level documentation for the function exits are then viewed from transaction SE37. The documentation clearly laid out for the purpose for their use:
EXIT_SAPLAIST_002
Function module Level Documentation
This function module is called by asset master data maintenance at the start of the dialog. (When changing, it is called after reading of the data from the database; when creating it is called after the transfer of the default values from the asset class and reference asset.) The purpose of the function module is to enable this function group to recognize the master data. For interpreting or controlling master data fields that are important for user fields, it is possible to transfer to global variables at this point, so that they can be recognized when the user subscreens are processed.
Import Parameters
Understanding
This function module is called at the PBO to pass the information retrieved from the database to pass them to the custom subscreen and its underlying program. Import parameter : I_ANLU will be populated with the values for user-defined fields which will be passed to the subscreen program. So, there must be some sort of variable assignment from I_ANLU.
EXIT_SAPLAIST_003
Function module Documentation: This function module is called by SAP asset master data maintenance after the screens are processed, but before saving. The purpose of the function module is to transfer fields entered on user sub-screens of SAP asset data maintenance to the database for updating. The export parameter for this function module is:
Understanding
This function module will be used to transfer the user entered data in the subscreen fields to the main SAP program, which will then be saved into the database.
Studying the Documentation of the Enhancement
The enhancement documentation (as is viewed from the initial screen of SMOD] also supports the idea. Moreover, it informs that we need to develop a subscreen under function group XAIS. This is the function group under which the two function exit modules also exist. So, if the custom subscreen refers to the global data of the function group XAIS, then those values will also be available to these function exits as well.
Going to SE80 and viewing the function group XAIS helps us to inform that there are three DDIC tables declared for it:
Deciding the Final course of Action
After making all the investigations, the final course of action was determined.
SrlNo Step Justification
A project has to be created using transaction CMOD where the enhancement AIST0002 will be included.
Customizing include CI_ANLU has to be created with the custom fields demanded When CI_ANLU will be developed, the custom fields will get appended to the database table ANLU. Also, these fields will be used to create screen fields in the new subscreen.
A custom subscreen, say, 9000 will be developed under function group XAIS. The screen group for the screen will be CUST (or any name). The three custom fields added to table ANLU (by creating CI_ANLU) will be used to create new fields in the screen.
In the PAI of the subscreen, validation for Location to start with L will be added. The subscreen with three new fields has to be developed so that it can be attached to a subscreen area of the asset master screens.
In the custom include of the function exit module EXIT_SAPLAIST_002, the following code will be written:-
ANLU = I_ANLU. I_ANLU is the import parameter of this FM. The value is assigned to the global variable ANLU, referring which the three new subscreen fields are developed. So, data retrieved from database table ANLU will be passed to this FM as I_ANLU by the standard SAP main program. The value will be taken and passed to the global variable of the function group XAIS, so that the three custom fields (referring to ANLU of XAIS) get populated.
In the custom include of the function exit module EXIT_SAPLAIST_003, the following code will be written:-
E_ANLU = ANLU. The changed values in the subscreen fields exist in global variable ANLU for the function group XAIS. This function exit module will pass the data back to the SAP main program as E_ANLU.
Proper linkage/configuration has to be done so that the new subscreens get linked to the appropriate subscreen area of the Asset master screen. This has to be done otherwise, the new custom subscreen will not be displayed in the Asset master screens.
Development
Creating a Project to include the enhancement
Go to transaction CMOD and create a project.
Enter a description for the project. Then, click on the pushbutton Enhancement Assignments in the Application Toolbar.
Enter the name of the enhancement and Save.
Go to Components.
Creating Custom Include for ANLU
The screen shown below will appear, showing all the enhancement components under the assignment AIST0002. Double-click on the name of the Include Structure to create it.
Create the include structure with three new fields, as required. Then, save and activate it.
Develop the subscreen and the program
Go to transaction SE80. For the function group XAIS, create a new subscreen 9000.
Create it as subscreen.
Then, go to the Layout of the screen and create three new fields from Database table ANLU.
Drag the fields in the screen body and place them.
Then, save and activate the screen and come back to screen flow editor.
Create the PAI module to add validation for field Location 2, as required .
Activate the whole function group and come out.
Write code in the Function Exits to synchronize the programs
Now, code has to be written in the function modules EXIT_SAPLAIST_002 and EXIT_SAPLAIST_003 so that data flows to and fro between the main SAP program and custom subscreen program. For that, go back to transaction CMOD and change the function exits.
Write code in the function module EXIT_SAPLAIST_002 called once at the beginning of the transaction:
Write code in EXIT_SAPLAIST_003 to pass the data from the subscreen to SAP main program.
Then, activate everything the whole project and come out.
Complete the configuration to link the subscreen
The development portion is complete. Now, linking of the subscreen has to be done with the subscreen area of the main program. In most of the cases, this linking can be done in the enhancement itself. But, here, requirement is a bit different. It is done by configuration using SPRO.
Assets are created under Asset class. And for each asset class, there is a layout assigned to it. For a layout, there are multiple tab pages assigned to it. And, for each tab page, there are multiple screen groups/field groups assigned.
Here, the requirement is to create these three custom fields in the tab page General of asset master screen ( AS01/AS02/AS03/AS91).
Determine the Layout
To achieve this, first of all, we need to find out which layout is assigned to asset class 1000.For that, go to transaction AOLK( information has to be obtained from functional consultant).Select the Asset Class 1000 and click on folder General Assignment of Layout.
Here, for Asset class 1000, for all the user groups, tab layout SAP is assigned. Since layout SAP cannot be changed, it has to be copied and manipulated to include our screen group. Later, the new layout has to be assigned over here.
Create new tab layout
Go to transaction AOLA. Copy the tab layout SAP to create another layout, say, YSUB.
System will copy all the settings and will inform you about that.
Select your newly created layout and double-click on the folder Tab page titles.
You want to put your custom fields in the tab page General. So, select this tab page entry and double-click on the folder "Position of Groups".
Here, all the field groups currently residing in the tab-page General are shown. Add an entry for your newly created fields.
Select the group box from the list. An entry will come with U padded with the custom subscreen prepared by you.
Then, save and come out.
Assign the new Layout to Asset Class
Now, go to tcode AOLK and assign tab layout YSUB for asset class 1000.
Save and come out.
Test the Exit
Everything is over. Now, go to transaction code AS01/02/03 or AS91 to deal with an asset of asset class 1000. You will see your new fields added to the screen. Add values to them save. Then, enter into the tcodes again to see whether the values entered by you are being displayed or not.
Original Source: ittoolbox.com
Screen Exit is nothing but enhancing the screen like creating some more fields, subscreen and so on.
1. Go to the screen>System>Status-->Program (Double
click this program. It will take you to the program.
2. Now, Goto-->Object Directory Entry.
3. Make a note the package name.
4. Now run the transactions SMOD, press F4 and enter the
above noted package, press enter.
5. It will display list of Exits.
6. Now go back to the initial screen SMOD.
7. Specify the exit name here and select the radio button
Components.
8. It will display four group boxes one for FM, second
for Fcodes, thrid for Screen areas and last for
includes.
9. Goto transaction CMOD, create a new project, and
click the button "Enhancement assignments" and
specify your enhancements that you got in SMOD.
10. Now bouble clikc the enhancement, it will take you to editor with some includes starting with Z, double clikc the include you want to edit and proceed.
and you just go through these links also
Screen exit
http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
screen-exits
Check the following link.
https://www.sdn.sap.com/irj/sdn/advancedsearch?query=how%20to%20find%20screen%20exits&cat=sdn_all
Reward points if useful
Regards
Anji -
Reg: Selection screen tabstrip
Hi all,
I need to create a screen with tab strip and inside the tab it should hold a subscreen containing text element and checkbox and a button.
This is to be done using the selection-screen begin of screen method and not as a module pool.
SELECTION-SCREEN BEGIN OF SCREEN 9000 TITLE title.
SELECTION-SCREEN: BEGIN OF TABBED BLOCK mytab FOR 10 LINES,
TAB (20) button1 USER-COMMAND push1,
END OF BLOCK mytab.
SELECTION-SCREEN END OF SCREEN 9000.
I tried by above way but it's going to dump.
Kindly help me on this by providing a sample code as to how to go about it.
Thanks in advance,
KrithikaHi
Sample programs:
DEMO_DYNPRO_TABSTRIP_LOCAL Tabstrip Control - Scrolling at SAPgui
DEMO_DYNPRO_TABSTRIP_SERVER Tabstrip Control - Scrolling at Application Server
DEMO_SEL_SCREEN_IN_TABSTRIP Selection Screen as Subscreen in Tabstrip
DEMO_SEL_SCREEN_WITH_TABSTRIP Selection Screen with Tabstrips
SELECTION-SCREEN: BEGIN OF TABBED BLOCK selec FOR 17 LINES,
TAB (23) button1 USER-COMMAND push1,
TAB (23) button2 USER-COMMAND push2,
TAB (23) button3 USER-COMMAND push3
DEFAULT SCREEN 1001,
END OF BLOCK selec.
SELECTION-SCREEN BEGIN OF SCREEN 1001 AS SUBSCREEN.
SELECTION-SCREEN END OF SCREEN 1001.
SELECTION-SCREEN BEGIN OF SCREEN 1002 AS SUBSCREEN.
SELECTION-SCREEN END OF SCREEN 1002.
SELECTION-SCREEN BEGIN OF SCREEN 1003 AS SUBSCREEN.
SELECTION-SCREEN END OF SCREEN 1003.
Initialization
INITIALIZATION.
button1 = text-det.
button2 = text-sup.
button3 = text-mef.
selec-prog = sy-repid.
selec-dynnr = 1001.
selec-activetab = 'BUTTON1'.
Managing the keys
AT SELECTION-SCREEN.
CASE sy-ucomm.
WHEN 'PUSH1'.
selec-dynnr = 1001.
selec-activetab = 'BUTTON1'.
WHEN 'PUSH2'.
selec-dynnr = 1002.
selec-activetab = 'BUTTON2'.
WHEN 'PUSH3'.
selec-dynnr = 1003.
selec-activetab = 'BUTTON3'.
ENDCASE.
2) DATA flag(1) TYPE c.
SUBSCREEN 1
SELECTION-SCREEN BEGIN OF SCREEN 100 AS SUBSCREEN.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.
PARAMETERS: p1(10) TYPE c,
p2(10) TYPE c,
p3(10) TYPE c.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN END OF SCREEN 100.
SUBSCREEN 2
SELECTION-SCREEN BEGIN OF SCREEN 200 AS SUBSCREEN.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME.
PARAMETERS: q1(10) TYPE c OBLIGATORY,
q2(10) TYPE c OBLIGATORY,
q3(10) TYPE c OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b2.
SELECTION-SCREEN END OF SCREEN 200.
STANDARD SELECTION SCREEN
SELECTION-SCREEN: BEGIN OF TABBED BLOCK mytab FOR 10 LINES,
TAB (20) button1 USER-COMMAND push1,
TAB (20) button2 USER-COMMAND push2,
TAB (20) button3 USER-COMMAND push3
DEFAULT SCREEN 300,
END OF BLOCK mytab.
INITIALIZATION.
button1 = text-010.
button2 = text-020.
button3 = text-030.
mytab-prog = sy-repid.
mytab-dynnr = 100.
mytab-activetab = 'BUTTON1'.
AT SELECTION-SCREEN.
CASE sy-dynnr.
WHEN 1000.
CASE sy-ucomm.
WHEN 'PUSH1'.
mytab-dynnr = 100.
mytab-activetab = 'BUTTON1'.
WHEN 'PUSH2'.
mytab-dynnr = 200.
mytab-activetab = 'BUTTON2'.
ENDCASE.
WHEN 100.
MESSAGE s888(sabapdocu) WITH text-040 sy-dynnr.
WHEN 200.
MESSAGE s888(sabapdocu) WITH text-040 sy-dynnr.
ENDCASE.
MODULE init_0100 OUTPUT.
LOOP AT SCREEN.
IF screen-group1 = 'MOD'.
CASE flag.
WHEN 'X'.
screen-input = '1'.
WHEN ' '.
screen-input = '0'.
ENDCASE.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDMODULE.
MODULE user_command_0100 INPUT.
MESSAGE s888(sabapdocu) WITH text-050 sy-dynnr.
CASE sy-ucomm.
WHEN 'TOGGLE'.
IF flag = ' '.
flag = 'X'.
ELSEIF flag = 'X'.
flag = ' '.
ENDIF.
ENDCASE.
ENDMODULE.
START-OF-SELECTION.
WRITE: / 'P1:', p1,'Q1:', q1,
/ 'P2:', p2,'Q2:', q2,
/ 'P3:', p3,'Q3:', q3.
<b>Reward if usefull</b> -
Need help to disable input selection-screen - very urgent
Hi SAP experts,
I have a requirement where in I need to disable ( Grey out ) the input fileds on the selection screen .
My problem is as I am using ABAP query I am not able to use any events ( AT SELECTION-SCREEN OUTPUT ).
My selection screen looks like this
MATERIAL NUMBER ( SELECT-OPTIONS)
MATERIAL TYPE ( PARAMETERS )
Now I want to add one more check box below the above fields on the selection-screen.When I click on the check-box,the MATERIAL NUMBER must be greyed out and MATERIAL TYPE should remain the same.
Please let me know the coding for the same. All answers would be rewarded.
Thanks in Advance,
Suresh.Hi,
Check out these codes.
1.
TABLES : mara, makt.
parameter: p_matnr type mara-matnr,
p_maktx type makt-maktx.
at selection-screen output.
select single maktx
from makt
into p_maktx
where matnr = p_matnr
and spras = 'EN'.
loop at screen.
if screen-name = 'P_MAKTX'.
screen-input = 0.
modify screen.
endif.
endloop.
2.
TABLES : mara, makt.
TYPES:BEGIN OF tp_maktx,
maktx TYPE makt-maktx,
END OF tp_maktx.
DATA:t_maktx TYPE STANDARD TABLE OF tp_maktx,
wa_maktx TYPE tp_maktx.
SELECT-OPTIONS: s_matnr FOR mara-matnr.
SELECT-OPTIONS: s_maktx FOR makt-maktx.
INITIALIZATION.
REFRESH s_maktx[].
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF screen-name = 'S_MAKTX-LOW' or screen-name = 'S_MAKTX-HIGH'.
screen-input = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
REFRESH s_maktx[].
if s_matnr[] is not initial.
SELECT maktx FROM makt
INTO TABLE t_maktx
WHERE matnr IN s_matnr
AND spras = 'EN'.
endif.
LOOP AT t_maktx INTO wa_maktx.
s_maktx-low = wa_maktx-maktx.
APPEND s_maktx.
CLEAR:wa_maktx.
ENDLOOP.
3.
TABLES : mara, makt.
parameter p_cb1 type c as checkbox.
parameter p_cb2 type c as checkbox.
parameter p_cb3 type c as checkbox.
initialization.
loop at screen.
if screen-name = 'P_CB3'.
screen-invisible = 1.
modify screen.
endif.
endloop.
at selection-screen output.
*loop at screen.
*if screen-name = 'P_CB3'.
*screen-invisible = 1.
*modify screen.
*endif.
*endloop.
loop at screen.
if p_cb1 = 'X'.
if screen-name = 'P_CB2'.
screen-invisible = 1.
modify screen.
endif.
if screen-name = 'P_CB3'.
screen-invisible = 0.
modify screen.
endif.
endif.
if p_cb2 = 'X'.
if screen-name = 'P_CB3'.
screen-invisible = 1.
modify screen.
endif.
if screen-name = 'P_CB1'.
screen-invisible = 0.
modify screen.
endif.
endif.
if p_cb3 = 'X'.
if screen-name = 'P_CB1'.
screen-invisible = 1.
modify screen.
endif.
if screen-name = 'P_CB2'.
screen-invisible = 0.
modify screen.
endif.
endif.
endloop.
Reward if helpful..
Regards. -
hello guru,
how i m able to disable the filds cash discount and cash% in second screen of t-code f-32.
let ,e give urs helping hends.
regards amit.Dear Amit
One option is you can do it by SHD0- Transaction variant. Define transaction variant and make 2 fields in display and save your variant.
Define a transaction in SE93 with this variant.
Secondly you can define in BADI (FI_AUTHORITY_ITEM)
Regards
Jitesh -
Selection Screen problem Urgent ...
Please find below ; It doesn't care of selection screen .For example I want to take all material mtart is 'abc' . How can I build that .For example there is one record instead of mtart (abc ) but when I enter bcd it also get something.
SELECT * FROM mbew
WHERE matnr in s_matnr
AND bwkey IN s_bwkey.
ytab-matnr = mbew-matnr .
ytab-kaln1 = mbew-kaln1 .
SELECT SINGLE * FROM makt
WHERE matnr = ytab-matnr.
ytab-maktx = makt-maktx .
SELECT SINGLE * FROM mara
WHERE matnr = ytab-matnr
AND matkl IN s_matkl
AND mtart IN s_mtart.
ytab-matkl = mara-matkl .
ytab-mtart = mara-mtart .
SELECT SINGLE * FROM mvke
WHERE matnr = ytab-matnr
AND kondm IN s_kondm .
ytab-kondm = mvke-kondm .
SELECT SINGLE * FROM ckmlcr
WHERE kalnr = ytab-kaln1
AND bdatj EQ s_bdatj
AND curtp EQ s_curtp.
ytab-kalnr = ckmlcr-kalnr .
ytab-bdatj = ckmlcr-bdatj .
ytab-curtp = ckmlcr-curtp .
SELECT SINGLE * FROM vbrp
WHERE matnr = ytab-matnr.
ytab-vbeln = vbrp-vbeln .
ytab-fbuda = vbrp-fbuda .
ytab-posnr = vbrp-posnr .
ytab-fkimg = vbrp-fkimg .
ytab-netwr = vbrp-netwr .
APPEND ytab.
CLEAR ytab.
ENDSELECT.
Message was edited by:
yusuf tunay çilesizHi,
The code looks good..Explain your problem clearly..
What ever you give in the selection screen is not getting filtered..??
AFter this select check for sy-subrc..
SELECT SINGLE * FROM mara
WHERE matnr = ytab-matnr
AND matkl IN s_matkl
AND mtart IN s_mtart.
IF SY-SUBRC <> 0.
if you want to skip the record if there is no material found for the corresponding
material, matkl and mtart...use CONTINUE..Which will process the next record in the MBEW select..
CONTINUE.
ENDIF.
Thanks,
Naren -
How to handle 'ENTER' Key on ALV Editable Grid on sub screen (Tabstrips)
Hello Experts ,
I have 2 questions with ALV Editable grid;
please help me if you have answers.
I created ALV grid on one of sub screens on a Tab Strip,
As soon as user types one of the columns of the ALV grid and press u2018ENTERu2019 key, it has to return corresponding details for that line.
I tried to implement this logic in ALV grid event u2018handle_data_changedu2019, but ALV internal table is not getting populated with new entry entered in the grid. but u2018double_clicku2019 event working my purpose, but user might need enter key.
and I thought I would do implement that logic in PAI event of the sub screen, u2018ENTERu2019 key not getting trigger on PAI event of the screen until cursor is on grid.
Another question 2: How do I control and not to be deleted a line on the grid (based on validation), where do I validate and by pass the delete function for a particular line, or suggest me to gray out only one line on the grid .
I would like to have delete function to work as it is ,except for some validations..
Can I implement using PAI event of the sub screen or any by ALV event.
Please suggest me..
Edited by: Ravindranath Arusam on May 13, 2010 2:42 PMIn DATA_CHANGED event, you will get the modified row into the attribute MP_MOD_ROWS of the impoerting object ER_DATA_CHANGED. Since this MP_MOD_ROWS is the Object reference to Data, you need to have the field symbol to get the value.
FIELD-SYMBOLS: <lft_mod_output> TYPE t_t_output.
ASSIGN er_data_changed->mp_mod_rows->* TO <lft_mod_output>.
You can get the Value of the Cell by using the method GET_CELL_VALUE of the same ER_DATA_CHANGED object and use the method MODIFY_CELL To update the value back to ALV.
To Restrict the row deletion:
When the row is deleted it is being added to Attribute mt_deleted_rows of the object ER_DATA_CHANGED. You can put the data back to the table in the DATA_CHANGE_FINISHED event. Visit this post http://help-abap.blogspot.com/2008/10/alv-disable-delete-key-on-keyboard-in.html for more information.
Regards,
Naimesh Patel -
ok so I go skiing and leave my ipod in the club box in a case to keep it warm and it is safe it is not wet or anything. SO when I came back it was fine until I turned it on the top part of the screen which usually has the battery was just a white line with no time no date no battery its just a white line. I rebotted my ipod and I tried restoring i t but theres and erro so i cant do that plz help anyone.!!!!!!!!!!!!!!!!!!!!!!!
Have you tried all of the Five R's?
btabz -
Please find below the code when I select gv_zpersnr1on screen I want to fill second field gv_pername1 and display after we select.But it cannot be displayed
PROCESS BEFORE OUTPUT.
MODULE status_0100.
MODULE init_screen_0100.
PROCESS AFTER INPUT.
MODULE exit_program AT EXIT-COMMAND.
FIELD gv_zpersnr1 MODULE check_zpersnr1 ON REQUEST.
MODULE fill_name1.
FIELD gv_zpersnr2 MODULE check_zpersnr2 ON REQUEST.
MODULE fill_name2.
MODULE user_command_0100.
***INCLUDE LYIMM_MIGO_POP_UPI01 .
*& Module exit_program INPUT
text
MODULE exit_program INPUT.
PERFORM exit_program.
ENDMODULE. " exit_program INPUT
*& Module user_command_0100 INPUT
text
MODULE user_command_0100 INPUT.
PERFORM exit_program.
ENDMODULE. " user_command_0100 INPUT
*& Module check_zpersnr1 INPUT
text
MODULE check_zpersnr1 INPUT.
PERFORM check_zpersnr USING gv_zpersnr1.
ENDMODULE. " check_zpersnr1 INPUT
*& Module check_zpersnr2 INPUT
text
MODULE check_zpersnr2 INPUT.
PERFORM check_zpersnr USING gv_zpersnr2.
ENDMODULE. " check_zpersnr2 INPUT
*& Module fill_name1 INPUT
text
MODULE fill_name1 INPUT.
PERFORM fill_name1 USING gv_zpersnr1
CHANGING gv_zpername1 .
PERFORM fill_name1 USING gv_zpersnr2
CHANGING gv_zpername2.
ENDMODULE. " fill_name1 INPUT
***INCLUDE LYIMM_MIGO_POP_UPF01 .
*& Form exit_program
text
--> p1 text
<-- p2 text
FORM exit_program .
CLEAR ok_code.
ok_code = sy-ucomm.
CASE ok_code.
WHEN 'CANC' OR 'OK'.
LEAVE TO CURRENT TRANSACTION .
WHEN 'OKAY'.
SET SCREEN 0. LEAVE SCREEN.
ENDCASE.
ENDFORM. " exit_program
*& Form check_zpersnr
text
-->P_GV_ZPERSNR1 text
<--P_GV_ZPERNAME1 text
FORM check_zpersnr USING p_gv_zpersnr1.
DATA : lv_zpersnr TYPE zpersnr.
IF p_gv_zpersnr1 IS NOT INITIAL.
SELECT SINGLE zpersnr FROM yipp_personnel INTO lv_zpersnr
WHERE zpersnr EQ p_gv_zpersnr1.
IF sy-subrc NE 0.
*---Personnel ID No &1 does not exist!
MESSAGE e001(yimm) WITH p_gv_zpersnr1.
ENDIF.
ENDIF.
ENDFORM. " check_zpersnr
*& Form fill_name1
text
-->P_GV_ZPERSNR1 text
FORM fill_name1 USING p_gv_zpersnr1 CHANGING p_gv_zpername.
DATA : lv_zpername TYPE zpertxt.
CLEAR : lv_zpername.
SELECT SINGLE zpertxt FROM yipp_personnel INTO lv_zpername
WHERE zpersnr EQ p_gv_zpersnr1.
IF sy-subrc EQ 0.
p_gv_zpername = lv_zpername.
ENDIF.
ENDFORM. " fill_name1
Message was edited by:
yanutyou don't need the "fill_name" routines: you can get name from table into the "check_pernr" routine as you already read the table
also the name doesn't have to be changed in there is no request on screen -
Hi all,
I have created two screens, in one screen i have a mandatory field ...In this screen when i press Back or Exit or Cancel button in application tool bar, i should be able to go to my previous screen without entering any value in the mandatory field.
In my case, i cant able to go to my previous screen without entering some value in the mandatory field...Please explain how to go about this
Thanks in advance
NandhuHi nanda,
you should define fcode as exit command in gui status and write the following flow logic in flow logic.
MODULE d9001_exit AT EXIT-COMMAND.
*& Module D9001_EXIT INPUT
MODULE d9001_exit INPUT.
SET SCREEN 0.
LEAVE PROGRAM.
ENDMODULE. " D9001_EXIT INPUT
thanks !
Regards,
Srini -
Hi...
How can I find selection screen's screen number or is there any command whivh can be leave user to selection screen again ..hi,
u can try this code...
Selection screen number is default as 1000.
<b>data : begin of i_itab occurs 0,
matnr like mara-matnr,
maktx like makt-maktx,
end of i_itab.
parameters: p_matnr like mara-matnr.
select maramatnr maktmaktx into table i_itab from mara inner join makt
on maramatnr = maktmatnr where mara~matnr = p_matnr.
LOOP AT i_itab.
format hotspot on.
WRITE: / i_itab-matnr, i_itab-maktx.
hide: i_itab-matnr.
format hotspot off.
ENDLOOP.
at line-selection.
leave screen .</b>
Regards
SAB -
Credit managemet screen shots urgent
Hi brothers,
can any one plz send me screen shots of credit managemet with step by stephi
I am in the process of preparing them till then check this out
Transaction OB38
Check which credit control area is assigned to the company code.
Company code:
Credit control area:
2. Transaction OVFL
Check which credit control area is assigned to the sales area.
Sales area:
Credit control area:
3. Transaction XD02 or VD02
Check which credit control area is assigned to the payer.
Payer:
Credit control area:
4. Transaction SE37
Is user exit EXIT_SAPFV45K_001 being used?
5. Transaction OBZK
For the settings under items 2 - 4, field "All company codes" must be marked in Transaction OB45, or the credit control area must be entered under the relevant company code in table T001CM of the credit control areas allowed.
Company code:
Credit control areas allowed:
6. Settings for the credit checks
7. Transaction OVAK
Which settings do exist for the sales document type used?
Sales document:
Check credit:
Credit group:
8. Transaction OVAD
Which settings do exist for the delivery type used?
Delivery type:
Credit group for delivery:
Credit group for goods issue:
9. Transaction OB01
Credit management/Change risk category
Definition of the risk category for each credit control area. You can
use Transaction FD32 to assign this risk category to a credit account.
10. Transaction OVA8
Here, the individual credit checks for key fields
credit control area
risk category
credit group
are set. Take these key fields from the above settings and go to the detail screen. In particular, check whether fields "Reaction" and "Status/block" are set correctly. To carry out follow-up actions in case of a credit block, the credit check status must be set (field "Status/block").
11. Transaction FD32
Credit master data for the payer of the relevant document.
Credit account:
Credit limit:
Risk category:
Currency:
12. Settings for updating the credit values
Update of the credit values is required for the limit check (static or dynamic credit limit check).
13. You want the item to be relevant for billing. If an item is not
relevant for billing or for pro forma billing, no update occurs.
14. Transaction OVA7
Update of the credit value is active for the corresponding item type if the check box is marked. This field corresponds to field "Active receivable" in Transaction VOV7.
Item type:
Active receivable:
15. Transaction V/08, Pricing
In the pricing procedure used for pricing, subtotal "A" must be entered in a line for determining the credit value (mark the pricing procedure and doubleclick on "Control"). Usually, the net value plus taxes is used. This way the system is determined to use this subtotal for credit pricing. The credit price is stored in field VBAP-CMPRE and used for update and credit check.
You can find the used pricing procedure of the order under "Item -> Condition -> Analysis".
Pricing procedure:
Line with subtotal = 'A':
16. Transaction OB45
Which update group (field "Update") do you use in the relevant credit control area? The default setting is "12". If you use another update group, check whether this is fine with you.
Credit control area:
Update:
17. Transaction OMO1
Which kind of update did you choose for structure S066? In any case, "Synchronous update (1)" has to be chosen as the kind of update. All other settings will lead to errors. -
Additional field in the sales order screen
I need some additional field in the sales order screen. There is
also no screen exit available for VA01. Can I use this
additional data B tab in header details by creating additional
field in it. Please tell me how to use this tab or how to get
different field in the sales order (header or item level).Hi,
Yes. You can use this screen. For this either can modify the table VBAP with additional fields and put them on this screen.
You have to code your logic to save these values in the include MV45AFZZ. The subscreens you have to use for this are 4462 or 8459.
refer Screen exits - Urgent.
with regards,
Vamsi -
How to write the code for screen-exits
halo fellow SAPiens,
I want to add a screen for t-code AS01......for which i have created a sub-screen in the function grp (related to AS01)........now i need to link the sub-screen with the Standard SAP prgm..........i.e call the sub-screen........how can i do it...........pls send me one example for implementing menu-exits,screen exits and
Screen exits - Urgent.
screen exits
Screen exit
Please reward points if helpful... -
Consumption of data model created using Screen Scraping
Dear All,
I have created a GW Data Model for recording a standard SAP transaction and subsequently created its GW Consumption Model in SAP Netweaver Gateway.This will return a REST service.This REST service supports 'CRUD'
(CREATE,READ,UPDATE.DELETE) operations as per the documentation .While using this REST service I am facing two
problems.
Case 1:
I created a GW Comsumption Model by recording transaction 'TZ60' for READ operation,created QUERY operation
and 'TZ90' for UPDATE operation. I can use the READ operation successfully in Dot Net Application but how can I use
the UPDATE operation in Dot Net Application ?
Case 2:
Can wev create Screen Scraping Data Model for complex transactions involving Multiple Screens/Tabstrips and ALVs.
Please reply to this thread as soon as possible.Thankyou.hi Chris
Before you might want to start refactoring a copy of what you already have, you could consider this ...
"Fear for renaming (refactoring) ADF BC objects in JDeveloper 10.1.3.3 is not unfounded by Frank Houweling"
http://technology.amis.nl/blog/?p=2859
success
Jan Vervecken
Maybe you are looking for
-
Not able to view the values on the report viewed using Query Report Viewer
Hi all, There seems to be some unknown problem with the Report Template I have prepared and uploaded on PIA XML Publisher. When I run it with some ID set, it doesn't seem to show the values from the Data I give. For example if I have a field called C
-
Use of text elements in wirte_form function module.
Hi guru's, Could any one tell me what is the use of text elements in write_form functional module SAP SCRIPTS. As per my knowledge text elements are used for multi language purpose is there any other advantage other than that. Thanks in advance. Var
-
Does aanyone know if one can connect a B&W G3 to a Cinema Display? I will also be using a powerbook G4.
-
Hi guys, What is the purpose of the sort key in the GL account? why does it do. Thanks, Srikanth.
-
{Flash mx 2004} Ayuda con ActionScript, eventos y componentes
Buenos días, Necesito ayuda, debido a que soy aprendiz y tengo problemillas, os cuento: Tengo 2 radioButton en un formulario que indican el sexo de una persona (masculino o femenino). Dichos radio Button los tengo asociados mediante la propiedad grou