Chinaunix

标题: 请教一个函数的问题... [打印本页]

作者: 辽B_AS400    时间: 2010-02-26 16:34
标题: 请教一个函数的问题...
C*===============================================
     C* Chaining to a logical file, if record found
     C* then update quantities else write record.
     C*===============================================
     C     TheKey02      Klist
     C                   Kfld                    PGPGRP
     C                   Kfld                    PGPCA1
     C                   Kfld                    PGPCA2
     C                   Kfld                    PGPRDCS2
     C*
     C* Chain to file with keylist if found add to existing values
     C* else Z-ADD (Zero out and add)
     C*
     C     TheKey02      Chain     AVAILABLEW
     C*
     C* This snippet of code is getting total quantity on hand/pick
     C*
     C                   If        %Found(AVAILABLEW)
     C                   Eval      ONHAND = ONHAND + LPLOQT
     C                   Eval      ONPICK = ONPICK + LPPIQT
     C                             + MOMQTY
     C                   Update    AVAILR
     C                   Else
     C                   Movel(p)  PGPRDCS2      PRODUCT
     C                   Movel(p)  PGPGRP        PGROUP
     C                   Movel(p)  PGPCA1        CAT1
     C                   Movel(p)  PGPCA2        CAT2
     C                   Movel(p)  PGDESC        DESC
     C                   Z-add     LPLOQT        ONHAND
     C                   Z-add     LPPIQT        ONPICK
     C                   Write     AVAILR
     C                   Endif
     C*===============================================
其中%FOUND 是什么功能?
作者: JmLei    时间: 2010-02-26 17:01
%FOUND        Return Found Condition

如果记录存在,返回true.
作者: 辽B_AS400    时间: 2010-02-26 17:52
  1. C*
  2.      C     '&EXT'        [color=Orange]Scan [/color]     WBTEXT
  3.      C                   If        %Found
  4.      C                   Eval      WBTEXT = %Trim(WBPEXT)
  5.      C                   Endif
  6.      C*
  7.      C     '&DEPT'       [color=DarkOrange]Scan [/color]     WBTEXT
  8.      C                   If        %Found
  9.      C                   Eval      WBTEXT = %Trim(WBPDEPT)
  10.      C                   Endif
  11.      C*
  12.      C     '&IMAGE'      [color=Orange]Scan[/color]      WBTEXT
  13.      C                   If        %Found
  14.      C                   Eval      WBTEXT = 'No photo Available'
  15.      C                   Endif
复制代码
SCAN 是做什么的呢?
作者: 辽B_AS400    时间: 2010-02-26 17:57
  1.      C*
  2.      C* Footer
  3.      C*
  4.      C     'F'           Setll     WBPHONE1WP
  5.      C     'F'           Reade     WBPHONE1WP
  6.      C                   Dow       Not%Eof(WBPHONE1WP)
  7.      C*
  8.      C                   eval      WrtDta = %trim(WBTEXT) +
  9.      C                                      NewLine
  10.      C                   EXSR      $WrStout
  11.      C*
  12.      C     'F'           Reade     WBPHONE1WP
  13.      C                   Enddo
复制代码
Not%Eof(WBPHONE1WP) 是说如果还能读取到数据的意思么?
作者: insmile    时间: 2010-02-26 22:02
SCAN 是做什么的呢?
辽B_AS400 发表于 2010-02-26 17:52



   C     '&EXT'        Scan     WBTEXT      

/*以字符“&EXT”扫描  WBTEXT  中是否存在
作者: insmile    时间: 2010-02-26 22:04
Not%Eof(WBPHONE1WP) 是说如果还能读取到数据的意思么?
辽B_AS400 发表于 2010-02-26 17:57


C     'F'           Reade     WBPHONE1WP
C                   Dow       Not%Eof(WBPHONE1WP)
/*当读的不是文件WBPHONE1WP末尾的时候
作者: insmile    时间: 2010-02-26 22:06
这些东西  ILE RPG Reference.pdf 里面都有说明的




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2