文库发布:abap程序员之路day_第1页
文库发布:abap程序员之路day_第2页
文库发布:abap程序员之路day_第3页
文库发布:abap程序员之路day_第4页
文库发布:abap程序员之路day_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ABAP/4程序员之路——第4天上海华和得易信息技术有限公司王勇本日学习内容DIALOG程序ScreenObject和PBO、PAI处理特殊对象处理:对话屏幕,子屏幕以及TableControl的处理ScreenTitlebarPushbuttonTextfieldInput/OutputfieldStatusiconGroupboxRadiobuttonandcheckboxSelectionscreenListGUIstatusTablecontrolTabstripcontrolSubscreenScreenObject:PushbuttonsUser-inputusingthe

mouseDisplay/ChangeDisplay/ChangeABABCreatingPushbuttonsPAI.

MODULEuser_command.

...ScreenPainterScreenPainterObjectnamebuttonok_codeType

OKFctCodeSWITFctTyp

ObjectnameObjecttextFctCodebuttonDisplay/ChangeSWITObjectAttributesFctTypABAPFullscreenEditorDisplay/Change2ObjectList121DATA:ok_codeLIKEsy-ucomm,save_okLIKEok_code.MODULEuser_commandINPUT.Save_ok=ok_code.CLEARok_code.CASEsave_ok.WHEN‘SWIT’.……ENDCASE.ENDMODULE.PushbuttonswithFunctionTypeEPAI.

MODULEexit_command

...ScreenPainterScreenPainterObjectnamebuttonok_codeType

OKFctCodeCANCFctTyp

ObjectnameObjecttextFctCodebuttonCancelCANCObjectAttributesFctTypABAPFullscreenEditorCancelObjectListDATA:ok_codeLIKEsy-ucomm.MODULEexit_commandINPUT.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:InternaluseFunctiontext

EnterFunctionKeydescriptionIconname以符號方式來表示此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_codeLIKEsy-ucomm,

pressed_tabLIKEsy-ucommvalue'0101'.MODULEuser_commandINPUT.

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....

MODULEuser_command.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固定不會移動的欄位選擇視窗縮小時出現移動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.ScreenScreenPainterPainter1MODULEmodify_screenOUTPUT.

CHECK

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论