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. MySQLi基于面向对象的编程

    http://blog.csdn.net/koastal/article/details/50650500

  2. WebForm使用FileUpload控件上传压缩二进制图片

    fuImage 是FileUpload页面控件 ImageHelper.CompressionImage(fuImage.FileBytes, quality); /// <summary> ...

  3. zsh 使用

    使用ctrl+r,弹出搜索框: bck-i-search: mac os 系统默认的终端为bash,切换该终端为zsh,可以用以下命令: chsh -s /bin/zsh 如过要切回默认终端bash, ...

  4. TP5 首页导航一级和二级分类

    <ul id="jsddm"> <li><a class="navi_home" href="{:url('/index ...

  5. 对比两个表中,字段名不一样的SQL

    需要包括有几种情况一.A表中有的字段B表无二.B表有的A表无三.两个表字段名不一致的 --------------------------------------------------------- ...

  6. 跟我一起学Makefile

    概述 什么是makefile?或许很多Winodws程序员都不知道这个东西,因为那些Windows IDE都为你做了这个工作,但我觉得要做一个好的和professional的程序员,makefile还 ...

  7. sikuli 安装

    1     简介 官方介绍: Sikuli脚本自动化,你在屏幕上看到的任何东西.它使用图像识别,识别和控制GUI组件.这是有用的,当有一个GUI的内部或源代码的访问是不容易的. Sikuli(在墨西哥 ...

  8. [转] Maven.pom.xml 配置示例

    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave ...

  9. 【精】Linux磁盘I/O性能监控之iostat详解

    [精]Linux磁盘I/O性能监控之iostat详解 Linux命令详解----iostat 使用iostat分析IO性能

  10. ZeroClipboard插件,复制到剪切板

    发现一个复制到剪切板的插件:ZeroClipboard插件.挺好用,用法如下: 头部引用: <script type="text/javascript" src=" ...