SLP SLP: 急問!!! 為何仍出不到入學第一年的首次出席日期??

本文由 Miss Chung 在 2012-02-20 發表於 "WebSAMS 討論區" 討論區

  1. 55036539

    Miss Chung
    Expand Collapse

    文章:
    120
    讚:
    0
    各位高手,

    請教, 我已使用系統內最新的Template來修定, 但在列印時仍未能正確地出到學生的第一年的首次出席日期, 請教如何是好?

    例子: 學生於2006年7月註冊入學, 所以Date of Admission 是06/07/2006, 而首上學日是9月1日, 即是在2006-07年的First Attendence day01/09/2006

    由於我們會於SLP上列印學生最後的年級, 而不知是否此原因, 所以使用附上的Template 時, 列印出來的是
    01/09/2011 (上面)
    06/07/2006 (下面)
    其實我想用First Attendence day, 而出的是該學生於我校就讀的首一學年的首上課, 可以嗎?

    我校現用的Template

    請教如何是好?

    Miss Chung
     
    #1 Miss Chung, 2012-02-20
  2. 57145732

    edb-為求什麼
    Expand Collapse

    文章:
    401
    讚:
    0
    將需要修改的 sub-report 之中command 的 SQL select item 後 from 之前 加上 , min(FIRSTATTDATE) FirstAttendDate
    將 Database field 中的 FirstAttendDate 拉入 sub-report 便可。
    修改完後請老師確定重新連接 主 report 和 sub-report 的連接 parameter.


    請老師參考
    瀏覽附件R-SLP009-CE_v2011_F6_Full_Temp.zip
     
    #2 edb-為求什麼, 2012-02-21
  3. 55036539

    Miss Chung
    Expand Collapse

    文章:
    120
    讚:
    0
    ^_^ 使用參考的檔案, 已成功!

    只是... 你所說的步驟... 嘗試學下如何修改...
    我知道在 profile.rpt 中的Field Explorer 中可以找到Command... 但只看到suid, stuid, admdate, 和 schyear, 請教如何 "SQL select item"? right click? 或是按些甚麼?

    我估當我看到from, 我該知道如何在其之前 加上 , min(FIRSTATTDATE) FirstAttendDate 及將 Database field 中的 FirstAttendDate 拉入 sub-report 便可

    只是你所說的「修改完後請老師確定重新連接 主 report 和 sub-report 的連接 parameter」, 其實步驟是如何呢?

    謝謝!

    Miss Chung
     
    #3 Miss Chung, 2012-02-21
  4. 57145732

    edb-為求什麼
    Expand Collapse

    文章:
    401
    讚:
    0
    以你的 report 作為例子

    首先, double click "R-SLPSTUProfile.rpt" 的 子 report
    Browse 子 report 的 design view 之後, 在 database -> database expert
    database expert 右邊的 "Selected tables:" 有一個 table 叫 "Command" (這個其實是 SQL generate 出來的)
    Table "Command" 上右 click 選 "Edit Command", 將要加的 SQL 加入去之後按 OK

    *****************************************
    select SUID, STUID, min(ADMDATE) ADMDATE, max(SCHYEAR) SCHYEAR, min(FIRSTATTDATE) FirstAttendDate
    from wsadmin.TB_STU_STUSCHREC
    where stuid = {?STUID} and suid = {?SUID}
    group by SUID, STUID
    ******************************************

    按完 ok 之後回到 子 report 的 design view (即是 R-SLPSTUProfile.rpt)
    打開左邊 "Field Explorer" 中的 Database fields 的 Command,
    你會發現會多一個 field 叫 "FirstAttendDate", 拉 "FirstAttendDate" 去你想要的 report 位置
    成事後 儲存一下。

    之後要做的是將主 report 和 subreport 重新連接:
    返回 主 report 的 Design view (即是 "Design" tab)
    在 Group Header#2a 中的 "R-SLPSTUProfile.rpt" 右 click, 選 "Change Subreport links" (因為子 report 一改會斷 link)
    在 "Available Fiels" 之中將 "?SUID" 和 "?STUID" 用 ">" 加入右邊
    在右邊的 "?STUID" 點選之後在下方的 "?STUID field link" 區處選 "?STUID"
    在右邊的 "?SUID" 點選之後在下方的 "?SUID field link" 區處選 "?SUID"
    按 ok 之後儲存。

    儲存後 upload 上 Websams 便可以測試。
     
    #4 edb-為求什麼, 2012-02-21
  5. 57145732

    edb-為求什麼
    Expand Collapse

    文章:
    401
    讚:
    0
    如果老師想有興趣學習相似的 crystal Report
    老師可以報一個 crystal report (advance) 的 course,
    如果老師想由基本學起, 也有 crystal report (Elementary) 的 course.
    自學的話, 可以到 websams login 畫面左下角的 Central Document Repository (CDR)
    培訓材料 -> 「網上校管系統」成績表編修工作坊(初階) 或 「網上校管系統」報表編修工作坊 (進階)
    自行學習
     
    #5 edb-為求什麼, 2012-02-21
  6. 55036539

    Miss Chung
    Expand Collapse

    文章:
    120
    讚:
    0
    謝謝你的指導, 我跟著做, 但是在 webSAMS 中測試時, 沒有反應...

    我嘗試改動後的Rpt

    謝謝!

    Miss Chung
     
    #6 Miss Chung, 2012-02-21
  7. 57145732

    edb-為求什麼
    Expand Collapse

    文章:
    401
    讚:
    0
    #7 edb-為求什麼, 2012-02-23
  8. 57145732

    edb-為求什麼
    Expand Collapse

    文章:
    401
    讚:
    0

    將你的 report 看一看, 那 change report links 右方要 TB_stu_student 的 SUID 和 STUID 連去 sub-report 的 parameter 的 ?SUID 和 ?STUID
    這樣做才可以多卡一人的 report.

    主 report 的 ?SUID 和 ?STUID 分別對 sub-report 的?SUID 和 ?STUID 只能做一個學生的 SLP report
    當多選一個時, ?suid 和 ?STUID 會變左 null, 導致 report error , websams 沒反應的出現。
     
    #8 edb-為求什麼, 2012-02-23
  9. 55036539

    Miss Chung
    Expand Collapse

    文章:
    120
    讚:
    0
    #9 Miss Chung, 2014-02-17
  10. 55036539

    Miss Chung
    Expand Collapse

    文章:
    120
    讚:
    0
    我嘗試
    首先, double click "R-SLPSTUProfile.rpt" 的 子 report
    Browse 子 report 的 design view 之後, 在 database -> database expert
    database expert 右邊的 "Selected tables:" 有一個 table 叫 "Command" (這個其實是 SQL generate 出來的)
    Table "Command" 上右 click 選 "Edit Command", 將要加的 SQL 加入去之後按 OK

    *****************************************
    select SUID, STUID, min(ADMDATE) ADMDATE, max(SCHYEAR) SCHYEAR, min(FIRSTATTDATE) FirstAttendDate
    from wsadmin.TB_STU_STUSCHREC
    where stuid = {?STUID} and suid = {?SUID}
    group by SUID, STUID
    ******************************************

    只是在按完OK後彈出"enter Parameter values"的視窗, 我就不知道下一步該如何, 請教各位高手, 謝謝!

    Miss Chung
     
    #10 Miss Chung, 2014-02-18
  11. 57145732

    edb-為求什麼
    Expand Collapse

    文章:
    401
    讚:
    0
    #11 edb-為求什麼, 2014-02-18
  12. 55036539

    Miss Chung
    Expand Collapse

    文章:
    120
    讚:
    0
    十分感激!!!! 謝謝!

    另加問題如下:
    我校輸入OLE時若只有中文及英活動名稱, 當然是按語文分別輸入, 但若只有中文或只有英文名稱時, 就會將該名稱重複輸入於中文及英文欄位中, 以致各老師能從中或英的界面中也能閱讀該資料, 於是我將OLE.rpt中的prog_short_txt修改為

    if {Command.prog_short_ch_des}={Command.prog_short_en_des}
    then {Command.prog_short_ch_des}
    else {Command.prog_short_ch_des}+chr(13)+{Command.prog_short_en_des}

    務求可以若中英名稱一樣就只出一次, 只是我所發現若該項目為英文名稱, 仍會列印兩次, 請教如何是好?

    中:好活動 英:好活動 ==出:好活動 (只有一次)
    中:abcdef xxxxx yyyyy 英:abcdef xxxxx yyyyy ==出:abcdef xxxxx (另行後) abcdef xxxxx yyyyy

    Miss Chung
     
    #12 Miss Chung, 2014-02-19
  13. 55036539

    Miss Chung
    Expand Collapse

    文章:
    120
    讚:
    0
    ^_^

    原來中文欄位限制是33, 所以系統中根本沒有完整的"中文"名稱, 所以我用以下的formula試試, 叫做完成, 真好!

    if {Command.prog_short_ch_des}={Command.prog_short_en_des}
    then {Command.prog_short_ch_des}
    else
    if {Command.prog_short_ch_des}=left({Command.prog_short_en_des},33)
    then {Command.prog_short_en_des}
    else {Command.prog_short_ch_des}+chr(13)+{Command.prog_short_en_des}

    Miss Chung
     
    #13 Miss Chung, 2014-02-19