zoukankan      html  css  js  c++  java
  • ABAP游标

    DATA: BEGIN OF count_line, 
            carrid TYPE spfli-carrid, 
            count  TYPE i, 
          END OF count_line, 
          spfli_tab TYPE TABLE OF spfli. 
    
    DATA: dbcur1 TYPE cursor, 
          dbcur2 TYPE cursor. 
    
    OPEN CURSOR @dbcur1 FOR 
      SELECT carrid, count(*) AS count 
             FROM spfli 
             GROUP BY carrid 
             ORDER BY carrid. 
    
    OPEN CURSOR @dbcur2 FOR 
      SELECT * 
             FROM spfli 
             ORDER BY carrid. 
    
    DO. 
      FETCH NEXT CURSOR @dbcur1 INTO @count_line. 
      IF sy-subrc <> 0. 
        EXIT. 
      ENDIF. 
      FETCH NEXT CURSOR @dbcur2 
        INTO TABLE @spfli_tab PACKAGE SIZE @count_line-count. 
    ENDDO. 
    
    CLOSE CURSOR: @dbcur1, 
                  @dbcur2. 
    DATA: wa_spfli   TYPE spfli,
          wa_sflight TYPE sflight,
          wa_sflight_back TYPE sflight.
    
    DATA: c1 TYPE cursor,
          c2 TYPE cursor.
    
    OPEN CURSOR @c1 FOR
      SELECT *
        FROM spfli
        ORDER BY PRIMARY KEY.
    
    OPEN CURSOR @c2 FOR
      SELECT *
             FROM sflight
             ORDER BY PRIMARY KEY.
    
    DATA(out) = cl_demo_output=>new( ).
    
    DO.
      FETCH NEXT CURSOR @c1 INTO @wa_spfli.
      IF sy-subrc NE 0.
        EXIT.
      ENDIF.
      out->begin_section(
        |{ wa_spfli-carrid } { wa_spfli-connid }| ).
      DO.
        IF NOT wa_sflight_back IS INITIAL.
          wa_sflight = wa_sflight_back.
          CLEAR wa_sflight_back.
        ELSE.
          FETCH NEXT CURSOR @c2 INTO @wa_sflight.
          IF  sy-subrc <> 0.
            EXIT.
          ELSEIF wa_sflight-carrid <> wa_spfli-carrid
              OR wa_sflight-connid <> wa_spfli-connid.
            wa_sflight_back = wa_sflight.
            EXIT.
          ENDIF.
        ENDIF.
        out->write(
         |{ wa_sflight-carrid } {
            wa_sflight-connid } {
            wa_sflight-fldate }| ).
      ENDDO.
      out->end_section( ).
    ENDDO.
    
    CLOSE CURSOR: @c1, @c2.
    
    out->display( ).
  • 相关阅读:
    浏览器20年图说简史
    CF1437D Solution
    CF1446B Solution
    CF1444A Solution
    CF1437C Solution
    让您的网站拥有MSDN资源库搜索功能[转摘MSDN]
    自定义web part版面变形的原因
    SPS中模板保存数据库的位置
    利用配置文件自定义站点
    VS.NET2003 开发环境 生成样式表 和 自动书写HTML对象模型
  • 原文地址:https://www.cnblogs.com/sapSB/p/8044067.html
Copyright © 2011-2022 走看看