<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    The NoteBook of EricKong

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      611 Posts :: 1 Stories :: 190 Comments :: 0 Trackbacks

    With subfiles you can create a display file with lists of items. Let's see how that's done.
    利用子文件我們可以創建帶有列表項目的顯示文件,現在我們就看看是如何創建的
    A subfile is a display file where you can place a listing of values and process changes on the list. The list of members that you can see in the PDM is an example of a subfile.
    子文件是一個顯示文件,它能夠幫助你顯示列表和在列表上作相應的處理,你在PDM上能看到的列表成員就是你的一個子文件
    In this chapter we'll create a subfile which will show all the cards from a client given its ID. To make the manipulation of several tables easier, we'll create a view with the fields we'll use on the subfile. In STRSQL insert this code:
    在這一章,我們將要創建一個子文件,它用于根據特定的ID顯示所有的卡,為了更好地維護幾張表,我們創建一個表包含多個我們將要用在子文件的字段,在STRSQL中輸入這些代碼
    CREATE VIEW CLICARD AS SELECT CL.ID_CLI, CR.ID_CRD, SH.NAME_SHP, CR.SHOP_CRD 
    FROM DEMO/CLIENTS CL, DEMO/SHOP SH, DEMO/CARDS CR 
    WHERE CL.ID_CLI = CR.CLIENT_CRD AND CR.SHOP_CRD = SH.ID_SHP
    Open SDA (STRSDA) and create a new member:
    打開SDA創建一個新的成員

    Create a BOTTOM record that should look like this:
    創建一個Bottom記錄像如下

    And the TOP record like this: 和Top記錄

    Let's create the subfile now. Create a new record, name it LIST, the record type is SFL:
    現在我們開始創建子文件了,創建一個新的記錄,名字為LIST,記錄的類型是SFL

    When you press Enter a new record appears. Write SFLCTL on it:
    現在我們按下回車,一個新的記錄出現如下,在上面寫下SFLCTL如圖

    This field creates a subfile control record, which works like the heading on the list.
    這個字段用來創建子文件控制記錄,就像列表的頭部
    You have to activate some options now: 現在你需要激活下面的選項

    On the General Keywords menu insert the data you see below:
    在General Keywords菜單輸入輸入如下

    These indicators allow us to manipulate the status of the subfile from the RPG code. Press Enter to go back to the previous screen. Select Subfile display layout.
    這些指示器允許我們利用RPG代碼維護控制控制子文件的狀態,輸入回車我們會返回之前的屏幕界面,現在選擇子文件的顯示布局

    On subfile maximum size type 9999 and on the number of records for page type 9:
    在子文件的最大值輸入9999和頁面的最大記錄數輸入9

    Press enter to go back. Select the option Select Record Keyword:
    輸入回車返回,然后選擇字段關鍵字選項

    Choose Overlay keywords: 選擇覆蓋關鍵字

    Select Overlay without erasing: 選擇覆蓋但不擦除選項

    Press Enter until you're back on this screen: 輸入回車,然后返回如下 

    Open the SFLCTL record. By default the record list is already visible on the design screen. Select to visualize the other 2 records, TOM and BOTTOM (F9).
    打開SFLCTL記錄,默認是這個記錄顯示在設計界面上,選擇To和Bottom進行可視化(按下F9)

    Back to the design screen, write at the top “Client Nr.”. Select the fields from CLICARD view for input/output (F10) and select the ID_CLI field:
    返回設計界面,在上面寫上“Client Nr.”,在CLICARD試圖中選擇字段ID_CLI作為輸入和輸出,

    Type the titles of the subfile's columns and a separating line:
    輸入分割線和子文件的字段標題

    Let's add some proprieties to the Client ID field. Place an * before to the left of the field.
    現在我們添加一些新的屬性給與Client ID字段,在這個字段的左邊輸入一個*

    We're going to add an indicator to this field, which will be activated when no record is found for an ID inserted (either the ID doesn't exist or it doesn't have any associated cards). Option Error Messages:
    現在我們需要為這個字段添加一個指示器,當值一個指定的ID沒有找到記錄(這個ID并不存在或者根據這個ID找不到記錄)的時候,這個指示器將被激活,在錯誤描述選項的地方輸入Y

    Insert the following information:
    輸入下面的信息

    Close this record and open the LIST record. Select the TOP and BOTTOM records for display (F9):
    選擇這個記錄并且同時打開這個LIST記錄,選擇Top和Bottom記錄作顯示(按下F9)

    To create an input field, where the user will type the options, type '+i' on the same position as in the following image and press Enter.
    創建一個輸入字段,用戶我在這里輸入選項,我們在如下圖的位置輸入‘+i’然后按下回車

    Notice how the field spread across the 9 line you previously defined as the subfile page size.
    注意你之前是如何定義子文件的每頁大小為9行

    Select the records from CLICARD view for output.
    從CLICARD視圖中選擇記錄作為輸入

    The fields will probably be listed twice, because the SDA will show you the field that had been previously loaded from I/O in the SFLCTL record. You should select the fields further to the right, because they are the last ones loaded. You must be careful selecting the fields.
    這些字段大概會本顯示兩次,因為SDA會把之前加載的字段也被顯示出來,因此選擇字段的時候需要小心一點,盡量選擇那些比較靠右的字段,因為他們是最后被加載的,
    If there are more fields than the ones that can fit the message line, a plus (+) sign will appear at the end of the line. Press Page Down to see the remaining fields.
    假如有很多的字段,消息行顯示不完,在行尾會顯示一個+號,按下翻頁鍵就可以看到剩下的那些沒有顯示的字段。

    Place the fields on their positions: 將字段放在相關的位置

    The final result: 最后的結果

    Don't forget to activate the indicator 03 at file-level so that “F3=Exit” can work and add the keyword INDARA to the code. Check out the Display file chapter if you don't remember how to do this.
    不要忘記激活03指示器,在文件的層面,使得“F3=Exit”生效,同時添加關鍵字INDARA到代碼中去,假如你忘記了怎么做的話,回頭看看第八章的顯示文件創建。
    You must add the red line to the SFLCTL record:
    你必須為SFLCTL記錄添加紅線
    A R SFLCTL SFLCTL(LIST)
    A SFLSIZ(9999)
    A SFLPAG(0009)
    A OVERLAY
    A 30 SFLDSP
    A 31 SFLDSPCTL
    A 35 SFLCLR
    A 33 SFLEND(*MORE)
    A 4 8'Client Nr.'
    A ID_CLI R B 4 19REFFLD(CLICARD/ID_CLI DEMO/CLICARD)
    A 90 ERRMSG('No Data Found')
    A 6 4'Op.'
    A 6 12'Card Nr.'
    A 6 27'Shop Nr.'
    A 6 42'Shop Name'
    A 7 2'__________________________________-
    A ___________________________________-
    A __________'
    A RRN 4S 0H SFLRCDNBR(CURSOR)
    In the LIST record change the name of the input field to OPTION. By default it must be named FLD001, or something like it.
    在LIST記錄中,你必須修改默認的輸入字段的名字,因為默認是FLD001,或者像如下
    A R LIST SFL
    A OPTION 1A I 9 5
    (...)
    Executing the subfile 執行子文件
    To run the subfile you must create an RPGLE member. Check out the file QRPGLESRC.SHW_SFL for more details on how to write this member.
    要運行子文件,你必須創建一個RPGLE的成員,檢出文件QRPGLESRC.SHW_SFL 查看一下細節,看看是如何寫這個文件
    When you run the RPGLE code: 當你運行RPGLE代碼后可以看到下面的結果

    Attachments

    posted on 2013-08-02 10:34 Eric_jiang 閱讀(597) 評論(0)  編輯  收藏 所屬分類: AS400
    主站蜘蛛池模板: 亚洲影视自拍揄拍愉拍| 亚洲精品无码专区久久同性男| 亚洲综合激情六月婷婷在线观看| 一区二区三区四区免费视频| 亚洲伊人久久大香线蕉| 国产男女性潮高清免费网站| 二区久久国产乱子伦免费精品 | 亚洲 国产 图片| 久久精品国产影库免费看| 亚洲男人天堂影院| 亚洲成a人无码av波多野按摩| 国产婷婷成人久久Av免费高清 | 污污视频免费观看网站| 亚洲成AV人片在线观看无| 久久这里只有精品国产免费10| 人碰人碰人成人免费视频| 亚洲成人福利在线观看| 国产精品亚洲玖玖玖在线观看 | 国产精品成人免费视频网站京东| 一级黄色毛片免费看| 亚洲一级毛片在线观| 亚洲综合久久夜AV | 永久免费毛片在线播放| 免费看黄的成人APP| 韩国亚洲伊人久久综合影院| 67pao强力打造67194在线午夜亚洲| 国产免费黄色大片| 国产成人yy免费视频| 99久久免费国产精精品| 在线观看免费亚洲| 亚洲第一福利视频| 亚洲综合色在线观看亚洲| 免费鲁丝片一级观看| 亚洲视频免费观看| 日韩免费的视频在线观看香蕉| 免费在线观看一区| 亚洲中文精品久久久久久不卡| 亚洲爱情岛论坛永久| 亚洲真人无码永久在线| 日本高清色本免费现在观看| 中文字幕无码播放免费|