10-23-2007 7:28 AM
hi friends, any body using MCSI transaction code ?
In this switch drill down box is there . I want like that dirll down box for our requiement. How to develop like that screens in output screen.
if any body know plz send me the coding.
Plz help me iam new to this requirement.
Sreerama
10-23-2007 7:39 AM
Transaction Code - MCSI Call Standard Analyses of Sales
Exit Name Description
RMCAF000 LIS: Import External Data for Copy Management
No of Exits: 1
USER EXIT
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sapgenie.com/abap/code/abap26.htm
http://www.sap-img.com/abap/what-is-user-exits.htm
http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
http://www.easymarketplace.de/userexit.php
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sappoint.com/abap/userexit.pdfUser-Exit
http://www.sap-img.com/ab038.htm
http://help.sap.com/saphelp_46c/helpdata/en/64/72369adc56d11195100060b03c6b76/frameset.htm
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sap-img.com/abap/what-is-user-exits.htm
http://expertanswercenter.techtarget.com/eac/knowledgebaseAnswer/0,295199,sid63_gci982756,00.html
Rewards if useful.........
Minal
10-23-2007 7:44 AM
Hi How are you..
This is the source code of that drill down button.. in MCSI transaction code. well some of the comments here are in german.. to understand this you need german to english translator, u can have this service from this website. enjoy...
http://translation2.paralink.com/
Reward point if helpfull...
Regards
Naeem
*----
*
FORM AKT_DRILLDOWN_AKTUALISIEREN *
*----
*
Table AKT_DRILLDOWN according to the topical cunning step aktualis. *
*----
*
FORM AKT_DRILLDOWN_AKTUALISIEREN.
DATA: AA_LSIND LIKE SY-LSIND. " logische Liststufe
IF FLG_VERGLEICH = FALSE OR
SY-LSIND <= 1 OR
SY-PFKEY CS 'LIST'.
AA_LSIND = SY-LSIND.
ELSE.
Im Normalfall ist sy-lsind = 0 bei 1. Liste (=Grundliste), 1 bei
2. Liste (= 1. Aufrißliste), usw.. Bei Vergleich (Plan/Ist usw.)
ist aber sy-lsind um 1 erhöht. Deshalb wird aa_lsind um 1 verringert
AA_LSIND = SY-LSIND - 1.
ENDIF.
aa_lsind = sy-lsind. "vorläufig
IF DRILLDOWN_EINTRAEGE > AA_LSIND AND AA_LSIND > 0 OR
SAV_FCODE = 'CLOS'.
Aufriß mit größerer Liststufe wurde erzeugt und es soll nicht als
nächstes die Grundliste ausgegeben werden => AUSTAB nicht aktuell
oder: Nach Verlassen Vergleichspopup muß immer der alte Zustand
zurückgesetzt werden
REFRESH AKT_DRILLDOWN.
AKT_DRILLDOWN aktualisieren, weil nicht mehr aktuell
LOOP AT SAV_AKT_DRILLDOWN.
IF SAV_AKT_DRILLDOWN-LSIND > SY-LSIND.
DELETE SAV_AKT_DRILLDOWN.
ELSEIF SAV_AKT_DRILLDOWN-LSIND = SY-LSIND.
AKT_DRILLDOWN = SAV_AKT_DRILLDOWN.
INSERT AKT_DRILLDOWN INDEX 1.
if flg_vergleich = false or
sav_akt_drilldown-lsind >= mainlist_lsind.
DELETE SAV_AKT_DRILLDOWN.
endif.
ELSE.
EXIT.
ENDIF.
ENDLOOP.
FLG_AUSTAB_AKTUELL = FALSE.
ausgewählte Kennzahlen wiederherstellen
REFRESH: AKT_KENNZAHLEN.
LOOP AT SAV_KENNZAHLEN.
IF SAV_KENNZAHLEN-LSIND > SY-LSIND.
DELETE SAV_KENNZAHLEN.
ELSEIF SAV_KENNZAHLEN-LSIND = SY-LSIND.
AKT_KENNZAHLEN = SAV_KENNZAHLEN.
INSERT AKT_KENNZAHLEN INDEX 1.
if flg_vergleich = false or
sav_kennzahlen-lsind >= mainlist_lsind.
DELETE SAV_KENNZAHLEN.
endif.
ELSE.
EXIT.
ENDIF.
ENDLOOP.
PERFORM AUSTAB_TEXT_ZUWEISEN.
DESCRIBE TABLE AKT_KENNZAHLEN LINES KENNZAHL_ANZAHL.
LOOP AT AKT_KENNZAHLEN.
PERFORM AUSGABEFELD_ZUWEISEN USING SY-TABIX.
ENDLOOP.
ausgewählte Sortier- und Gruppierkriterien wiederherstellen
REFRESH: SORT_KENNZAHLEN.
LOOP AT SAV_SORT_KENNZAHLEN.
IF SAV_SORT_KENNZAHLEN-LSIND > SY-LSIND.
DELETE SAV_SORT_KENNZAHLEN.
ELSEIF SAV_SORT_KENNZAHLEN-LSIND = SY-LSIND.
SORT_KENNZAHLEN = SAV_SORT_KENNZAHLEN.
INSERT SORT_KENNZAHLEN INDEX 1.
if flg_vergleich = false or
sav_sort_kennzahlen-lsind >= mainlist_lsind.
DELETE SAV_SORT_KENNZAHLEN.
endif.
ELSE.
EXIT.
ENDIF.
ENDLOOP.
Anzahl Sortier- und Gruppenkriterien bestimmen
CLEAR ANZ_GRUPPENKRIT.
LOOP AT SORT_KENNZAHLEN WHERE FLG_GRUPPE = TRUE.
ADD 1 TO ANZ_GRUPPENKRIT.
ENDLOOP.
DESCRIBE TABLE SORT_KENNZAHLEN LINES ANZ_SORTKRIT.
ANZ_SORTKRIT = ANZ_SORTKRIT - ANZ_GRUPPENKRIT.
IF ANZ_SORTKRIT = 1.
Es existiert genau ein Sortierkriterium
SORT_KRITERIUM = SORT_KENNZAHLEN-AUSTABFELD.
ELSE.
CLEAR SORT_KRITERIUM.
ENDIF.
PERFORM GRUPPENFELDER_ZUWEISEN IN PROGRAM (LIS_PROGNAME) IF FOUND.
ENDIF.
CLEAR ANZ_HIERARCHIE_AUFRISSE.
LOOP AT AKT_DRILLDOWN.
IF SY-TABIX > AA_LSIND.
Überflüssig, da AKT_DRILLDOWN sowie so ganz zurückgelesen wird
Nicht mehr benötigte Aufrißinfo löschen
delete akt_drilldown.
ELSE.
IF AKT_DRILLDOWN-FCODE(1) = 'H'.
Hierarchieaufriß
ADD 1 TO ANZ_HIERARCHIE_AUFRISSE.
ENDIF.
IF SY-TABIX = AA_LSIND.
IF FLG_AUSTAB_AKTUELL = FALSE.
Merkmalsausprägung des Aufrisses löschen
CLEAR AKT_DRILLDOWN-OBJEKT.
MODIFY AKT_DRILLDOWN.
Layouteinstellung wiederherstellen
ANALYSE_WAEHRUNG = AKT_DRILLDOWN-WAEHRUNG.
FLG_HEADER_PATH = AKT_DRILLDOWN-FLG_HEADER_PATH.
FLG_OBJEKTTEXT = AKT_DRILLDOWN-FLG_OBJEKTTEXT.
FLG_PROZENTWERT = AKT_DRILLDOWN-FLG_PROZENTWERT.
FLG_TOPLISTE = AKT_DRILLDOWN-FLG_TOPLISTE.
FLG_SORT_ABST = AKT_DRILLDOWN-FLG_SORT_ABST.
SPALTEN_ANFANG = AKT_DRILLDOWN-SPALTEN_ANFANG.
SPALTEN_BREITE = AKT_DRILLDOWN-SPALTEN_BREITE.
SPALTEN_BREITE_P = SPALTEN_BREITE - 1.
HITLISTEN_GROESSE = AKT_DRILLDOWN-HITL_GROESSE.
HITL_KRITERIUM = AKT_DRILLDOWN-HITL_KRITERIUM.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
DESCRIBE TABLE AKT_DRILLDOWN LINES DRILLDOWN_EINTRAEGE.
IF FLG_AUSTAB_AKTUELL = FALSE AND FLG_STD_DRILLDOWN = FALSE.
Aufriß- und Standardaufriß waren bei tieferer Aufrißstufe verschie-
den => es muß überprüft werden, ob dies noch immer der Fall ist
FLG_STD_DRILLDOWN = TRUE.
LOOP AT AKT_DRILLDOWN.
READ TABLE STD_DRILLDOWN WITH KEY FCODE = AKT_DRILLDOWN-FCODE.
IF SY-SUBRC <> 0.
FLG_STD_DRILLDOWN = FALSE.
EXIT.
ENDIF.
ENDLOOP.
ENDIF.
PERFORM SPEZIAL_AKT_DRILLDOWN IN PROGRAM (LIS_PROGNAME) IF FOUND.
ENDFORM. "AKT_DRILLDOWN_AKTUALISIEREN