sap實施abap4程序員之路day4_第1頁
sap實施abap4程序員之路day4_第2頁
sap實施abap4程序員之路day4_第3頁
sap實施abap4程序員之路day4_第4頁
sap實施abap4程序員之路day4_第5頁
已閱讀5頁,還剩61頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

ABAP/4程序員之路——第4天上海華和得易信息技術有限公司王勇本日學習內(nèi)容DIALOG程序ScreenObject和PBO、PAI處理特殊對象處理:對話屏幕,子屏幕以及TableControl的處理ScreenTitlebarPushbuttonTextfieldInput/OutputfieldStatusiconGroupboxRadiobuttonandcheckboxSelectionscreenListGUIstatusTablecontrolTabstripcontrolSubscreenScreenObject:PushbuttonsUser-inputusingthe

mouseDisplay/ChangeDisplay/ChangeABABCreatingPushbuttonsPAI.MODULEmand.

...ScreenPainterScreenPainterObjectnamebuttonok_codeType

OKFctCodeSWITFctTyp

ObjectnameObjecttextFctCodebuttonDisplay/ChangeSWITObjectAttributesFctTypABAPFullscreenEditorDisplay/Change2ObjectList121DATA:ok_codeLIKEm,save_okLIKEok_code.MODULEmandINPUT.Save_ok=ok_code.CLEARok_code.CASEsave_ok.WHEN‘SWIT’.……ENDCASE.ENDMODULE.PushbuttonswithFunctionTypeEPAI.MODULEmand

...ScreenPainterScreenPainterObjectnamebuttonok_codeType

OKFctCodeCANCFctTyp

ObjectnameObjecttextFctCodebuttonCancelCANCObjectAttributesFctTypABAPFullscreenEditorCancelObjectListDATA:ok_codeLIKEm.MODULEmandINPUT.CASEsy-dynnr.WHEN‘0100’.Leaveprogram.……ENDCASE.ENDMODULE.EEATEXIT-COMMAND.ScreenTitlebarPushbuttonTextfieldInput/OutputfieldStatusiconGroupboxRadiobuttonandcheckboxSelectionscreenListGUIstatusTablecontrolTabstripcontrolSubscreenScreenObject:GUIstatusChoosefunctionsbyclickingwiththemouseDevelopmentobject

Edit

GotoSystemHelp3333

FlightdataxxxxENTERF1

HelpF2ChooseF3...MenubarStandardtoolbarApplicationtoolbarFunctionkeysCreateGUIStatus(1)DoubleClickCreateGUIStatus(2)DoubleClickCreateGUIStatus(3)EnterStatus:TechnicalViewStatus001Status002Status...MenubarsM1FunctionkeysettingsT1ApplicationtoolbarsD1MenuBarEnterTransactionCodeEnterDescription____________________Themaxlevelis4FunctionKeyFunctionKey:Attributes

AttributesFunctionaltype?E:Exitcommand?S:Systemfunction?T:CallaTransaction?:NormalapplicationFunction?P:LocalGUIFunction?H:InternaluseFunctiontextEnterFunctionKeydescriptionIconname以符號方式來表示此IconIcontext以文字方式來表示此IconInfo.textShortdescription

FastpathOne-characterIDletterforfunctionfastpathStandardToolbarFunctionsandTheirReservedFunctionKeys

IconFunctionkey

FunctionSaveBackExit(program)Cancel(Screen)PrintFindFindnextFirstpagePreviouspageNextpageLastpageHelpEnterF11F3Ctrl-F3F12Ctrl-PCtrl-FCtrl-GCtrlupPageupPagedownCtrldownF1Navigation-DialogsBackExitCancelYesYesNoSavesDialogYesYesNoChecksEntriesCheck,thensaveSave,thencheck-SequenceSavedata?Savedata?Unsaveddatawillbelost!Cancel?Examplepopup_to_confirm_steporpopup_to_confirm_with_valuepopup_to_confirm_steporpopup_to_confirm_with_valuepopup_to_confirm_loss_of_dataFunctionModuleforDialogApplicationtoolbarScreenTitlebarPushbuttonTextfieldInput/OutputfieldStatusiconGroupboxRadiobuttonandcheckboxSelectionscreenListGUIstatusTablecontrolTabstripcontrolSubscreenScreenObject:ListsDisplayingdataatthefrontendFlightListCARIDFromTo

ListEditGotoSystemHelpAA0017NEWYORKSANFRANCISCOLH0400

FRANKFURTNEWYORKLH0402FRANKFURTBERLIN

Createdon:01.01.1998By:

WITTMANNDisplayingaListWithinaTransactionMODULE<Module_name>.LEAVETOLIST-PROCESSING.SETPF-STATUSSPACE....

WRITE...SKIP...ULINE...ENDMODULE.MODULE<Module_name>.LEAVETOLIST-PROCESSINGANDRETURNTOSCREEN300.SETPF-STATUSSPACE....ENDMODULE.MODULE<Module_name>.SUPPRESSDIALOG.LEAVETOLIST-PROCESSING.SETPF-STATUSSPACE....ENDMODULE.PBO(100)100100PBO(100)PAI(100)PAI(100)PBO(100)100100PAI(100)NextscreenScreen300F3F3ListList100100List100100100100ListsinaModalDialogBoxDialogBoxList200MODULELIST

OUTPUT.

SUPPRESSDIALOG.

LEAVETOLIST-PROCESSING

ANDRETURNTOSCREEN0.

SETPF-STATUSSPACE.

...ENDMODULE.ABAPABAPPROCESSBEFOREOUTPUT.

MODULELIST.ScreenScreenPainterPainter200200MODULEmINPUT....

CALLSCREEN200

STARTINGAT2010

ENDINGAT5015....ENDMODULE.200ABAPABAP100ScreenTitlebarPushbuttonTextfieldInput/OutputfieldStatusiconGroupboxRadiobuttonandcheckboxSelectionscreenListGUIstatusTablecontrolTabstripcontrolSubscreenScreenObject:SelectionscreenRestrictingDatabaseselections

ListEditGotoSystemHelpAirlinetoFromAAFrankfurtThisweekThismonthThisquarterAnyFlightdateEnteringValueRangesAirlineto...FromLHSELECT-OPTIONS...PARAMETERS...SinglevalueGreaterthanorequalGreaterthanLessthanNotequalLessthanoreqeualSelectExcludefromselectionMaintainSelectionOptionsAirlineSelectiontableSIGNIOPTIONGELOWLHHIGHDefiningandCallingaSelectionScreenSELECTION-SCREENBEGINOFSCREEN<nnnn>....SELECTION-SCREENENDOFSCREEN<nnnn>.SELECTION-SCREENBEGINOFSCREEN1200.SELECT-OPTIONSse_carrFORsflight-carrid.PARAMETERSpa_airpfLIKEspfli-airpfrom.SELECTION-SCREENENDOFSCREEN1200....CALLSELECTION-SCREEN1200.ScreenTitlebarPushbuttonTextfieldInput/OutputfieldStatusiconGroupboxRadiobuttonandcheckboxSelectionscreenListGUIstatusTablecontrolTabstripcontrolSubscreenScreenObject:Subscreen

Reservedareaonascreen:FilledatruntimeSubscreenSubscreenareaareaSubscreenSubscreenareaareaSubscreenSubscreenSubscreenICreatingaSubscreenAreaSubscreenAttributesCallingaSubscreenSubscreennameProgramnameScreennumberScreenTitlebarPushbuttonTextfieldInput/OutputfieldStatusiconGroupboxRadiobuttonandcheckboxSelectionscreenListGUIstatusTablecontrolTabstripcontrolSubscreenScreenObject:TabstripControlAneasywaytopresentdatathatlogicallybelongstogetherFrom

ToCountryAirportTimeDETXL10:10:00CityBerlinInfoTabstripElementsDepartArriveSeatsLandFlughafenZeitDETXL10:10:00StadtBerlinCurrenttabtitle

ScrollbarformoretabpagesListofalltabpagesCurrentpageisindicatedTabborderDepartArriveSeatsBookingsInformationTabPage:TechnicalViewTextCONTENTS=SubscreenareaSubscreenarea+TextTextPushbuttonPushbuttonContents

=Subscreen+CreatingaTabstripControlTabstripareaTabstripareaTabtitlesTabtitlesSubscreenareasSubscreenareasCreatingaTabstripControl:TabstripArea*************************************INCLUDEMZxxxTOP*************************************CONTROLS:my_tab_strip

TYPETABSTRIP....ABAPABAPType

TABSTRIPTABSTRIPcorrespondstothestructuredtypeCXTABCXTAB_TABSTRIP

withtheindividualtypes:activetabactivetabtitle...CreatingaTabstripControl:TabTitleCreatingaTabstripControl:SubscreensSubscreenAreaorScrollinginaTabstripControl

DepartArr.InfoPage

1DepartArr.InfoPage

2PAI?

Determineswhichpage

theuserhaschosen?

CallsthescreenagainPBO?

Setsthesubscreen

correspondingtothe

pagechosenbytheuserScrollinginTabstripControls:CodingRCONTROLS:my_tab_stripTYPETABSTRIP.DATA:dynproLIKEsy-dynnr,ok_codeLIKEm,

pressed_tabLIKEmvalue'0101'.MODULEmandINPUT.

CASEok_code.

WHEN'R1'.

pressed_tab='R1'.

WHEN'R2'.

pressed_tab='R2'....ENDMODULE.MODULEset_pageOUTPUT.

my_tab_strip-activetab=pressed_tab.

CASEpressed_tab.

WHEN'R1'.

dynpro='0101'.

WHEN'R2'.

dynpro='0102'....ENDMODULE.ABAPABAPPROCESSBEFOREOUTPUT.

MODULESET_PAGE....

CALLSUBSCREENsubarea

INCLUDINGSYST-CPROGdynpro.PROCESSAFTERINPUT.

CALLSUBSCREENsubarea....MODULEmand.ScreenScreenPainterPainterSubareaR1MY_TAB_STRIPMY_TAB_STRIPDynproR3FctTyp

FctTyp

R2ScreenTitlebarPushbuttonTextfieldInput/OutputfieldStatusiconGroupboxRadiobuttonandcheckboxSelectionscreenListGUIstatusTablecontrolTabstripcontrolSubscreenScreenObject:Tablecontrol

LHFromToFrankfurtFrankfurtBerlin040004022407NewNewSanFAirlineFlgtDisplayinglargeamountsofdataintabluarformABAPTableControl(Function)AutomatichorizontalandverticalscrollingFixedleadingcolumnsMarkrowsMarkandswapcolumnsChangecolumnwidthChangeandsavetablesettingTableControlElementsTableControlCreatingaTableControlProcessingaTableControlFurtherTechniquesCreateTableControlArea1-3給一個tablecontrolname1-1選取tablecontrol物件1-2圈選所需要的畫面My_control*************************************INCLUDEMZxxxTOP*************************************CONTROLS:my_controlTYPETABLEVIEW

USINGSCREEN'0100'....ABAPABAPCreateTableControlFields

或從table中referencefield自己creatfieldTableControlAttributes

TablecontrolnameNotdeleteallheadlineelementsShowtablecontrollabelShowtable直條線Showtable橫條線可選擇欄位的條件增加checkbox固定不會移動的欄位選擇視窗縮小時出現(xiàn)移動bar一次可選擇幾筆資料Tablecontrol抬頭TableControlElementsTableControlCreatingaTableControlProcessingaTableControlFurtherTechniquesProcessingaTableControl(Principle)Databasetable6785InternaltablebufferDatabasetable123456789...

Nextpage3421ABAPprogramScreenPBOPAITableControlApplications(Principle)Screen(withTableControl)PBOPAILOOP...Readline-by-linefromtheinternaltableENDLOOP.LOOP...Updatetheinternaltableline-by-lineENDLOOP.ScrollpagebypageChangedatabasetableScreenScreenPainterPainterInprogramFillinternaltable-CALLSCREEN-StaticscreensequenceFillingaTableControlPROCESSBEFOREOUTPUT.LOOPATitab_sbookINTOsdyn_book

WITH

CONTROLmy_control.ENDLOOPsdyn_bookABAPprogrammScreen1122LH0400...LH0400...33itab_sbookLH0400...Fieldsfromsdyn_book1133++Automaticallydoneusingloopintheflowlogic!ScreenScreenPainterPainter22232434ChangetheContentsofaTCPROCESSAFTERINPUT.LOOPATitab_sbook.FIELDsdyn_book-smoker

MODULEmodify_itabON

REQUEST.ENDLOOP.MODULEmodify_itabINPUT.MODIFYitab_sbookFROMsdyn_book

INDEXmy_control-current_line...ENDMODULE.ABAPABAPScreenScreenPainterPaintersdyn_bookABAPprogram113LH0400...22LH0400...LH0407...LH2402...itab_sbook1122+Performedautomaticallyintheloopintheflowlogic3ProgrammedinABAPScreenLH0402...234.1TableControls:FieldTransportinthePBOTransportABAPtablecontrolfieldstoscreenfieldsLOOPend

LOOPstartMODULEoutput_1AirlineLHTo04000402FrankfurtFrankfurtNewNew2407BerlinSanFromFlightTableControls:FieldTransportinthePAIAirlineLHTo04000402FrankfurtFrankfurtNewNew2407BerlinSanFromFlightMODULEinput_1TransporttablecotrolfieldsfromthescreentotheABAPfieldsLOOPLOOPstartstartMODULEinput_2LOOPLOOPendendTransportallfieldsfromthescreentotheABAPfieldsexcepttablecontrolfieldsandf112AirlineLHTo04000402FrankfurtFrankfurtNewNew2407BerlinSanFromFlight12TableControlElementsTableControlCreatingaTableControlProcessingaTableControlFurtherTechniquesTypeofTABLEVIEW-TypeGroupCXTABTYPE-POOLCXTABTYPES:

BEGINOFCXTAB_COLUMN,

SCREENLIKESCREEN,“AttributesstrukturSCREENINDEXTYPEI,“PositionofacolumnonthescreenSELECTED(1)TYPEC,“Indicator‘columnselected’VISLENGTHLIKEICON-OLENG,“VisualisedlengthofacolumnINVISIBLE(1)TYPEC,“Indicator‘columninvisible’

ENDOFCXTAB_COLUMN,

TypeofTABLEVIEW-TypeGroupCXTAB

BEGINOFCXTAB_CONTROL,

FIXED_COLSTYPEI,“NumberoffixedcolumnsLINESTYPEI,“NumberoflinestodisplayTOP_LINETYPEI,“ToplineduringnextPBOCURRENT_LINETYPEI,“CurrentlineduringLOOP/ENDLOOPLEFT_COLTYPEI,“FirstscrollablecolumnafterfixedareaLINE_SEL_MODETYPEI,“Line-selection:none(0),single(1),multiple(2)COL_SEL_MODETYPEI,“Column-selection:none(0),single(1),multiple(2)LINE_SELECTOR(1)TYPEC,“Indicator:‘Withline-selectioncol’V_SCROLL(1)TYPEC,“notusedH_GRID(1)TYEPC,“Indicator:‘Horizontalgrid-lines’V_GRID(1)TYPEC,“Indicator:‘Vertikalgrid-lines’COLSTYEPSTANDARDTABLEOFCXTAB_COLUMNWITHNON-UNIQUEDEFAULTKEY,INVISIBLE(1)TYPEC,

ENDOFCXTAB_CONTROL,TypeofTABLEVIEW-TypeGroupCXTAB

BEGINOFCXTAB_TABSTRIP,

ACTIVETABLIKESCREEN-NAME,%_SCROLLPOSITIONLIKESCREEN-NAME,INVISIBLE(1)TYPEC,

ENDOFCXTAB_TABSTRIP.*Ifyouwanttostarttheoriginalsetting,asbelow:REFRESHCONTROLmy_controlFROMSCREEN<screen_number>.ScreenFlowLogicPROCESSBEFOREOUTPUT.……LOOPATinitial_tableWITHCONTROLmy_controlCURSORmy_control-current_line.……ENDLOOP.PROCESSAFTERINPUT.LOOPATinitial_table.……ENDLOOP.……MODULEUSER_COMMAND_0100.ChangingtheAttributesofaTC(1)GeneralattrsColumnattrsTablecontrolattributesFIXED_COLS...PAIorPBO.FIELD

dyn_col_num

MODULEchange_table_control_1

ONREQUEST.ScreenScreenPainterPainterMODULEchange_table_control_1....

my_control-fixed_cols=dyn_col_num.

...ENDMODULE.ABAPABAPdyn_col_num3ChangingtheAttributesofaTC(2)RPBOorPAI

MODULEchange_table_control_2.

ScreenScreenPainterPainter...Gen.attributesCol.attributesTablecontrolattributesINDEX...COLS...INTENSIFIEDSCREEN-DATAwaLIKELINEOFmy_control-cols....MODULEchange_table_control...LOOPATmy_control-colsINTOwa.

IFwa-indexBETWEEN1AND3

wa-screen-intensified=1.

ELSE.

wa-screen-intensified=0.

ENDIF.

MODIFYmy_control-colsFROMwa.

ENDLOOP.ENDMODULE.ABAPABAPModifyingFieldAttributesTemporarilyR...Screentable

forline:

Screentable

forline:

NameCol1Col2Col3

...NameCol1Col2Col3

...InputInputOutputOutputIntensifiedIntensified......2221LOOPATitabINTOsdyn_conn.

MODULEmodify_screen.ENDLOOP.ScreenScreenPainterPain

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論