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. 03.将MPP部署到开发板上

    转载侵删 在一般的嵌入式开发中,只要将uboot,kernel,rootfs下载到开发板上,就可以进行程序开发了.但是海思又进一步的把一些常用视频编解码算法等封装到MPP平台中,进一步简化了工程师的开 ...

  2. C语言面试题3

    编程题 1.读文件file1.txt的内容(例如): 123456 输出到file2.txt: 563412 #include <stdio.h> #include <stdlib. ...

  3. MySql初试

    初次使用MySql感觉有点不方便,习惯了使用MS Sql Server带来的便利,话不多说直接进入主题. 第一步.下载MySQL Community Server,下载地址:https://dev.m ...

  4. hadoop最新版本介绍之dkhadoop版本选择

    Hadoop对于从事互联网工作的朋友来说已经非常熟悉了,相信在我们身边有很多人正在转行从事hadoop开发的工作,理所当然也会有很多hadoop入门新手.Hadoop开发太过底层,技术难度远比我们想象 ...

  5. linux 线程的同步 一 (互斥量和信号量)

    互斥量(Mutex) 互斥量表现互斥现象的数据结构,也被当作二元信号灯.一个互斥基本上是一个多任务敏感的二元信号,它能用作同步多任务的行为,它常用作保护从中断来的临界段代码并且在共享同步使用的资源. ...

  6. typescript-dva脚手架

    2019有太多的东西想尝试,ts,GraphQL,SSR,docker,python,electron,小程序云后台,vue3等等,一个个来吧,用两天了解了下typescript,大概做了个webpa ...

  7. JS URL 使用base64加密与解密和MD5解密

    JS编码方式: <script type="text/javascript"> document.write(encodeURI("http://www.w3 ...

  8. $(function(){}) ,$(document).ready(function(){}),window.onload = function(){...},$(window).load(function(){...})区别

    1. 写法:      $(function(){}) ,$(document).ready(function(){})是一样的 2. 时间: window.onload和$(window).load ...

  9. SpringMVC 实现返回一段数据 & 实现自动发送json格式数据 - AJAX

    实现返回一段数据 - AJAX 当页面通过AJAX来访问Controller时,期望得到的不是一个页面而是一段数据,此时可以使用如下方法,直接向相应中写入数据: /** * 直接向响应中写出数据,通常 ...

  10. 操作系统-容器-Docker:如何将应用打包成为 Docker 镜像?

    ylbtech-操作系统-容器-Docker:如何将应用打包成为 Docker 镜像? 1.返回顶部 1. 虽然 DockerHub 提供了大量的镜像,但是由于企业环境的多样性,并不是每个应用都能在 ...