免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4021 | 回复: 8
打印 上一主题 下一主题

带“按钮”的DSPF及演示程序 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-06-15 08:31 |只看该作者 |倒序浏览
在AS400中,  点击确定、 单选、多选  等“按钮” 用得相对比较少。 但在适当的地方使用也挺方便的。

以下通过一个简单的演示例子,介绍下如何实现, 有兴趣的朋友可参考。 效果如附件图所示

1、建一 PF 用存放 演示 结果,  DDS如下

   SEU==>                                                                  TESTPF
        *************** Beginning of data *************************************
0001.00      A          R RTEST                                                
0002.00      A            SING           1  0       COLHDG(' 单选值 ')         
0003.00      A            DUB1           1  0       COLHDG(' 多选值 1')         
0004.00      A            DUB2           1  0       COLHDG(' 多选值 2')         
        ****************** End of data ***************************************

2、建 DSPF  ,  DDS如下:

SEU==>                                                                TESTDSPF
        *************** Beginning of data *************************************
0001.00      A                                      CA03(03 'exit')            
0002.00      A          R R1                                                   
0003.00      A            D2@            1Y 0H                                 
0004.00      A            D1@            1Y 0H                                 
0005.00      A            S1             1Y 0H                                 
0006.00      A            FLD001         2Y 0B  4 18SNGCHCFLD(*RSTCSR *SLTIND (
0007.00      A                                      3))                        
0008.00      A                                      CHOICE(1 ' 测试 1')         
0009.00      A                                      CHCCTL(1 &S1)               
0010.00      A                                      CHOICE(2 ' 测试 2')         
0011.00      A                                      CHCCTL(2 &S1)               
0012.00      A            FLD002         2Y 0B  8 18MLTCHCFLD((*NUMCOL 3))      
0013.00      A                                      CHOICE(1 ' 多选 1  ')      
0014.00      A                                      CHCCTL(1 &D1@)              
0015.00      A                                      CHOICE(2 ' 多选 2')         
0016.00      A                                      CHCCTL(2 &D2@)              
0017.00      A            ENT@           2Y 0B 12 18PSHBTNFLD                  
0018.00      A                                      PSHBTNCHC(1 ' 确定 ')      
0019.00      A            EXT@           2Y 0B 12 36PSHBTNFLD                  
0020.00      A                                       PSHBTNCHC(1 ' 返回 ')                                                                                          
3. 演示程序 , RPG 代码 如下:

SEU==>                                                                 TESTRPG
        *************** Beginning of data *************************************
0001.00 H*                                                                     
0002.00 FTESTPF    UF A E           K DISK                                      
0003.00 FTESTDSPF  CF   E             WORKSTN                                   
0004.00 C                   EXFMT     R1                                       
0005.00 C                   EVAL      SING=FLD001                              
0006.00 C                   EVAL      DUB1=D1@                                 
0007.00 C                   EVAL      DUB2=D2@                                 
0008.00 C                   IF        ENT@=1                                    
0009.00 C                   WRITE     RTEST                                    
0010.00 C                   ENDIF                                               
0011.00 C                   IF        EXT@=1                                    
0012.00 C                   RETURN                                             
0013.00 C                   ENDIF                                               
0014.00 C                   SETON                                        LR     
        ****************** End of data ***************************************

4、运行完 RPG 后   用 QUERY 查看结果如下:
Line   ....+....1....+....2....+....3      
         单选值    多选值 1   多选值 2      
000001     1         1          1         
000002     2         1          1         
000003     1         1          1         
000004     2         1          1         
****** ********  End of report  ********

效果图.jpg (9.13 KB, 下载次数: 52)

画面效果图

画面效果图

论坛徽章:
0
2 [报告]
发表于 2007-06-15 10:09 |只看该作者
谢谢啦。不过,这样的命令我都用过,感觉上是得不偿失。

论坛徽章:
0
3 [报告]
发表于 2007-06-17 10:55 |只看该作者
看到,^_^

论坛徽章:
0
4 [报告]
发表于 2007-06-17 11:25 |只看该作者
不错~~~

论坛徽章:
0
5 [报告]
发表于 2007-06-18 09:33 |只看该作者
用过,感觉不太好

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-06-20 06:20:00
6 [报告]
发表于 2007-06-19 12:42 |只看该作者
用过,不过感觉在项目中很少用到

论坛徽章:
0
7 [报告]
发表于 2007-08-14 15:45 |只看该作者
不错不错,不过只能玩玩,项目里基本不会用的,呵呵

论坛徽章:
0
8 [报告]
发表于 2007-09-13 21:39 |只看该作者
玩玩不错

论坛徽章:
0
9 [报告]
发表于 2007-09-13 23:41 |只看该作者
粗看效果还不错挺新鲜,但很不实用。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP