Crystal Reports 2008
有一欄位 列印報表輸出值
C00001.C00002,c00003,C00004,C00005
請問可以在 Crystal Reports 設定
讓有逗號處 自動換行 列印報表輸出值
C00001.
C00002,
c00003,
C00004,
C00005
謝謝
CrystalReport 細目就可以跑回圈了!
你的字串(C00001.C00002,c00003,C00004,C00005)可以再程式處理後再給CrystalReport顯示即可.
請問能請教您語法範例嗎?
是在自訂欄位如何下公式
IF 欄位 逗號 THEN
換行
END
謝謝
你是用甚麼語言?我建議不用CrystalReport是後端(.NET/C#/PHP....)程式做掉後再傳到CrystalReport
Dim value As String = "C00001,C00002,c00003,C00004,C00005"
Dim delimiter As Char = ","
Dim substrings() As String = value.Split(delimiter)
Dim substring = ""
For Each substring In substrings
Console.WriteLine(substring)
Next
我用VB範例讓你參考把你要的字串分割取出,塞暫存表後再傳到CrystalReport細目就完成了.
前端 Genero Studio (鼎新)
傳報表程式(SEP CRYSTAL REPORT 2008)
喔~~你也是4GL~那應該更簡單!
你C00001,C00002,c00003,C00004,C00005怎麼得到的?
給你參考4js範例!
https://4js.com/online_documentation/fjs-fgl-2.50.02-manual-html/c_fgl_ClassStringTokenizer_create.html
DEFINE tok base.StringTokenizer
-- Using a single pipe delimiter
LET tok = base.StringTokenizer.create("aaa|bbb|ccc","|")
-- Using several delimiters
LET tok = base.StringTokenizer.create("aaa|bbb;ccc+ddd","|+;")
你可以先用小程式是跑看看就知道結果了.
LET l_sql_b_bmd04 = #2020/07/15
"SELECT bmd04 FROM bmd_file",
" WHERE bmd01='",sr[i].bmb03,"' ",
" AND bmd08='",g_bma01,"' ",
" AND bmdacti = 'Y' ",
" AND bmd02 = '2' ", #bmd02 值 1 取代 VS 2 替代 VS 3 配方替代
"ORDER BY bmd03"
PREPARE r001_bmd04 FROM l_sql_b_bmd04
IF SQLCA.sqlcode THEN
CALL cl_err('P7:',SQLCA.sqlcode,1)
EXIT PROGRAM
END IF
DECLARE r601_cur7 CURSOR FOR r001_bmd04
FOREACH r601_cur7 INTO sqlb_bmd04
IF sr[i].b_bmd04 IS NULL THEN
LET sr[i].b_bmd04 = sqlb_bmd04
ELSE
LET sr[i].b_bmd04 = sr[i].b_bmd04 clipped,',' clipped,sqlb_bmd04
END IF
END FOREACH
PS:
LET sr[i].b_bmd04 = sr[i].b_bmd04 clipped, ',' clipped,sqlb_bmd04 可能多個值用(多個項次值) , 串接起來的
能否再 , 處改成換行語法
因我是新手 還不太會運用
謝謝
目前如圖 難分辨 所以如果可以在有逗號處換行
這欄位名多少?
抓bmd04欄位值 INTO b_bmd04
DEFINE tok base.StringTokenizer
LET tok = base.StringTokenizer.create(sr[i].b_bmd04,",")
WHILE tok.hasMoreTokens()
DISPLAY tok.nextToken()
END WHILE
大概就是這樣放在FOREACH之外 EXECUTE前.
你要把替代料拆開的話這樣在CR報表就會顯示很多項是你要的嗎?
可以私下密喔交換聯絡方式!
好像有限制 符號
我原用 ','執行肥反映 改用'\' 結果是 少一個 \ 一樣部會換行
PS:請問如何私下密
1.C00001/C00002/c00003/C00004/C00005 測試可以
C00001\C00002\c00003\C00004\C00005 測試可以
2.先SELECT bmd04 FROM bmd_file WHERE bmd01 = 'XXX' 看看資料是如何顯示的!
3.你這支報表代號是多少?
4.我有傳資料給你站內簡訊!!
5.看來\是事後加入的你可以改任意字元 如 ,