selection-screen begin of block block1 with frame title text-.

parameters:p_mon1 like s031-spmon,

           p_mon2 like s031-spmon.

selection-screen end of block block1.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_mon1.

  PERFORM MONAT_F4.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_mon2.

  PERFORM MONAT_F4.

FORM MONAT_F4 .

  DATA: BEGIN OF MF_DYNPFIELDS OCCURS .

          INCLUDE STRUCTURE DYNPREAD.

  DATA: END   OF MF_DYNPFIELDS.

  DATA: MF_RETURNCODE   LIKE SY-SUBRC,

        MF_MONAT        LIKE ISELLIST-MONTH,

        MF_HLP_REPID    LIKE SY-REPID.

  FIELD-SYMBOLS: <MF_FELD>.

* Wert von Dynpro lesen

  GET CURSOR FIELD MF_DYNPFIELDS-FIELDNAME.

  APPEND MF_DYNPFIELDS.

  MF_HLP_REPID = SY-REPID.

  DO  TIMES.

    CALL FUNCTION 'DYNP_VALUES_READ'

      EXPORTING

        DYNAME               = MF_HLP_REPID

        DYNUMB               = SY-DYNNR

      TABLES

        DYNPFIELDS           = MF_DYNPFIELDS

      EXCEPTIONS

        INVALID_ABAPWORKAREA = 

        INVALID_DYNPROFIELD  = 

        INVALID_DYNPRONAME   = 

        INVALID_DYNPRONUMMER = 

        INVALID_REQUEST      = 

        NO_FIELDDESCRIPTION  = 

        UNDEFIND_ERROR       = .

    IF SY-SUBRC = .

*     Aktuelles Dynpro ist Wertemengenbild

      MF_HLP_REPID = 'SAPLALDB'.

    ELSE.

      READ TABLE MF_DYNPFIELDS INDEX .

*     Unterstriche durch Blanks ersetzen

      TRANSLATE MF_DYNPFIELDS-FIELDVALUE USING '_ '.

      EXIT.

    ENDIF.

  ENDDO.

  IF SY-SUBRC = .

*   Konvertierung ins interne Format

    CALL FUNCTION 'CONVERSION_EXIT_PERI_INPUT'

      EXPORTING

        INPUT         = MF_DYNPFIELDS-FIELDVALUE

      IMPORTING

        OUTPUT        = MF_MONAT

      EXCEPTIONS

        ERROR_MESSAGE = .

    IF MF_MONAT IS INITIAL.

*     Monat ist initial => Vorschlagswert aus akt. Datum ableiten

      MF_MONAT = SY-DATLO().

    ENDIF.

    CALL FUNCTION 'POPUP_TO_SELECT_MONTH'

      EXPORTING

        ACTUAL_MONTH               = MF_MONAT

      IMPORTING

        SELECTED_MONTH             = MF_MONAT

        RETURN_CODE                = MF_RETURNCODE

      EXCEPTIONS

        FACTORY_CALENDAR_NOT_FOUND = 

        HOLIDAY_CALENDAR_NOT_FOUND = 

        MONTH_NOT_FOUND            = .

    IF SY-SUBRC =  AND MF_RETURNCODE = .

      CALL FUNCTION 'CONVERSION_EXIT_PERI_OUTPUT'

        EXPORTING

          INPUT  = MF_MONAT

        IMPORTING

          OUTPUT = MF_DYNPFIELDS-FIELDVALUE.

      COLLECT MF_DYNPFIELDS.

      CALL FUNCTION 'DYNP_VALUES_UPDATE'

        EXPORTING

          DYNAME               = MF_HLP_REPID

          DYNUMB               = SY-DYNNR

        TABLES

          DYNPFIELDS           = MF_DYNPFIELDS

        EXCEPTIONS

          INVALID_ABAPWORKAREA = 

          INVALID_DYNPROFIELD  = 

          INVALID_DYNPRONAME   = 

          INVALID_DYNPRONUMMER = 

          INVALID_REQUEST      = 

          NO_FIELDDESCRIPTION  = 

          UNDEFIND_ERROR       = .           "<<== note 148804

    ENDIF.

  ENDIF.

ENDFORM.                                                    " MONAT_F4

*************************************************************************************

"前一个月

data:datum type sy-datum.

CALL FUNCTION 'BKK_ADD_MONTH_TO_DATE'

  EXPORTING

    MONTHS        = -

    OLDDATE       = sy-datum

  IMPORTING

    NEWDATE       = datum

          .

  p_mon1 = datum+().

  p_mon2 = sy-datum+().

ABAP-年月期间搜索帮助的更多相关文章

  1. ABAP search help (搜索帮助) 几种种方法

    ABAP search help (搜索帮助) 几种种方法    域范围  ABAP 的搜索帮助有很多种方法,掌握下面的几种基本差不多了 *&------------------------- ...

  2. ABAP 中的搜索帮助

    ABAP 中的搜索帮助 https://blog.csdn.net/u011576750/article/details/50999078 一.简介:在abap中,用到的搜索帮助个人遇到的情况如下,进 ...

  3. ABAP DEMO 年月的搜索帮助

    效果图: *&---------------------------------------------------------------------* *& Report YCX_ ...

  4. abap seach help 搜索帮助

    ABAP 的搜索帮助有很多种方法,掌握下面的几种基本差不多了 *&--------------------------------------------------------------- ...

  5. ERP报错:所在的期间无效,但又无法新增账套期间。

    问题: 进入2018新年月,客户在新增单据的时候,报错:日期[2018-01-03]所在的期间无效 正常解决方法 过账期间里面设置一下路径:管理----期间与结账----过账期间设置 先设置年期间-- ...

  6. 使用Visual Studio Code编写和激活ABAP代码 (上)

    猪年春节后的第一篇,Jerry祝各位猪年大吉! 2019年的六分之一马上就快过完了,不知道大家在新的一年是否给自己定了新的小目标呢?这里Jerry先预祝大家到2019年年底的时候,在年初制定的小目标都 ...

  7. 【ABAP系列】【第五篇】SAP ABAP7.50 之用户接口

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列][第五篇]SAP ABAP7.5 ...

  8. SAP翔子_ABAP_DEMO篇索引

    序号 描述 SAP翔子_ABAP_DEMO篇1 ABAP DEMO篇1 单层反查BOM SAP翔子_ABAP_DEMO篇2 ABAP DEMO篇2 删除工艺路线 SAP翔子_ABAP_DEMO篇3 A ...

  9. 屏幕 Dynpro

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

随机推荐

  1. Oracle GI 日志收集工具 - TFA 简介

    转载自:https://blogs.oracle.com/Database4CN/entry/tfa_collector_%E4%BB%8B%E7%BB%8D 1.TFA的目的: TFA是个11.2版 ...

  2. MySQL索引分类和各自用途

    一. MySQL: 索引以B树格式保存 Memory存储引擎可以选择Hash或BTree索引,Hash索引只能用于=或<=>的等式比较. 1.普通索引:create index on Ta ...

  3. Python——collections模块、time模块、random模块、os模块、sys模块

    1. collections模块 (1)namedtuple # (1)点的坐标 from collections import namedtuple Point = namedtuple('poin ...

  4. Django的 admin管理工具

    admin组件使用 Django 提供了基于 web 的管理工具. Django 自动管理工具是 django.contrib 的一部分.你可以在项目的 settings.py 中的 INSTALLE ...

  5. [转]触发窗体事件(例如按Esc关闭窗体),WinForm

    设置窗体属性KeyPreview=True. private void Form1_KeyUp(object sender, KeyEventArgs e) { if (e.KeyData == Ke ...

  6. redis和memcached选择,对比分析

    memcache和redis是互联网分层架构中,最常用的KV缓存.不少同学在选型的时候会纠结,到底是选择memcache还是redis? memcache提供的功能是redis提供的功能的子集,不用想 ...

  7. React-Native 在android写不支持gif的解决方案!

    只需要在android/app/build.gradle中的dependencies字段中添加: compile 'com.facebook.fresco:animated-gif:0.13.0' 然 ...

  8. bzoj 2601: [Jsoi2011]同分异构体计数

    Description Antonio 最近对有机化学比较感兴趣,他想请你帮助他快速计算出某种烃类的同分异 构体的数目.  为了表述方便,我们作出如下定义:    环烷烃: 具有n 个碳原子的环烷烃可 ...

  9. bzoj2242 计算器

    Description 你被要求设计一个计算器完成以下三项任务: 1.给定y,z,p,计算Y^Z Mod P 的值: 2.给定y,z,p,计算满足xy≡ Z ( mod P )的最小非负整数: 3.给 ...

  10. [转]IDEA 新建 JSP 项目时

    本文转自:https://www.vastyun.com/bloger/670.html 新建的 jsp 页面不像 eclipse 的页面一样有 <% String path = request ...