freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

finereport報(bào)表軟件技術(shù)培訓(xùn)手冊(編輯修改稿)

2024-12-14 16:36 本頁面
 

【文章內(nèi)容簡介】 就可以在瀏覽器中進(jìn)行瀏 覽。 動態(tài)隔間運(yùn)算 層次坐標(biāo)原理 由于 FineReport 采用的數(shù)據(jù)模型,是通過單元格綁定數(shù)據(jù)列,擴(kuò)展來實(shí)現(xiàn)數(shù)據(jù)的讀取和展現(xiàn)。那么也就是說在設(shè)計(jì)界面的一個(gè)格子,可能對應(yīng)擴(kuò)展后得到多條數(shù)據(jù)。 28 但是通常像 EXCEL 中設(shè)計(jì)表格的時(shí)候,需要所得的數(shù)據(jù)進(jìn)行一些運(yùn)算,在 FineReport 當(dāng)中,也就是要對數(shù)據(jù)列擴(kuò)展返回的結(jié)果集進(jìn)行運(yùn)算。較為常見的運(yùn)算:對擴(kuò)展出的數(shù)據(jù)進(jìn)行編號,數(shù)據(jù)排名,同期比與環(huán)比,占比,累計(jì)等。 動態(tài)格間運(yùn)算包括兩種運(yùn)算規(guī)則:絕對層次坐標(biāo),相對層次坐標(biāo)。 下面就概念 進(jìn)行一個(gè)簡單的介紹: 1. 絕對層次坐標(biāo) 在進(jìn)行模板設(shè)計(jì)時(shí),單元格尚未進(jìn)行擴(kuò)展,但是單元格的表達(dá)式往往需要對擴(kuò)展后的單元格進(jìn)行運(yùn)算。例如, A1 單元格擴(kuò)展成了A1A5,如果其中一個(gè)單元格的表達(dá)式希望對擴(kuò)展后的 A2 和 A3 進(jìn)行求和,在擴(kuò)展前,表達(dá)式很難描述這樣的關(guān)系。對擴(kuò)展后的單元格進(jìn)行唯一性的定義,這就是單元格的層次坐標(biāo)。 單元格擴(kuò)展后的定位規(guī)則 層次坐標(biāo)的表達(dá)式如圖: 說明: Cellx:目標(biāo)單元格,是 Lk,Lk1...L1。Tk,Tk1...T1 的附屬格。 29 Lk: Cellx 的左父格, Lk 的次序是從遠(yuǎn)到近的,也就是從離當(dāng)前最遠(yuǎn)的左父格開始 Tk: Cellx 的上父格, Tk 的次序是從遠(yuǎn)到近的,也就是從離當(dāng)前最遠(yuǎn)的上父格開始 lk:左父格 LK 擴(kuò)展后的次序,即擴(kuò)展后的第幾個(gè)單元格,如果不指定 lk 或者 lk 為 0,則表 示為當(dāng)前表達(dá)式所在單元格所屬的當(dāng)前左父格 LK tk:上父格 Tk 擴(kuò)展后的次序,即擴(kuò)展后的第幾個(gè)單元格,如果不指定 tk 或者 tk 為 0,則表示為當(dāng)前表達(dá)式所在單元格所屬的當(dāng)前上父格 TK 注:左父格和上父格的坐標(biāo)通過分號來隔開 例如:下圖模板 30 對照上面的模板,若有如下公式: ? C1[A1:1,B1:2]: A1:1,表示 A1 單元格擴(kuò)展出來的第一個(gè)單元格; B1:2,表示在 A1 的第一個(gè)擴(kuò)展格區(qū)域內(nèi) B1 擴(kuò)展出來的第二個(gè)單元格; C1[A1:1,B1:2]就表示在這個(gè) B1 的第二個(gè)擴(kuò)展格區(qū)域下的 C1 單元格,即值為 6 的單元格,所以返回值為 6 31 ? C1[A1:1],表示 A1 父格的第一個(gè)擴(kuò)展格下的所有 B1 擴(kuò)展格下的 C1 單元格,即值為 5, 6, 7 的單元格,返回的值以數(shù)組的形式顯示: [5,6,7] ? C1[B1:1],如果這個(gè)公式寫在單元格在 D1 中,即寫在以 C1為父格的單元格中,則返回的 C1 單元格所屬的 A1 左父格為當(dāng)前 C1所屬的左父格,公式就表示當(dāng)前 A1 父 格下的 B1 的第一個(gè)擴(kuò)展格區(qū)域中的 C1單元格,得到的結(jié)果如圖: 若這個(gè)公式寫在其他與 A1,B1,C1 單元格沒有關(guān)系的單元格中,則返回的是 A1 所有擴(kuò)展格下 B1 的第一個(gè)擴(kuò)展格區(qū)域中的 C1 單元格,即值為 5, 10, 15, 20 的單元格, 返回值為: [5,10,15,20] 2. 相對層次坐標(biāo) 32 報(bào)表中常常需要計(jì)算同期比、比上期之類的與 時(shí)間相關(guān)的運(yùn)算,而這些運(yùn)算往往需要用到下一行的數(shù)據(jù)減上一行數(shù)據(jù),后一列數(shù)據(jù)減前一列數(shù)據(jù),等等,這種涉及到行間、列間的運(yùn)算,稱為位移運(yùn)算,這種位移運(yùn)算通過相對層次坐標(biāo)來表示。 單元格擴(kuò)展后的定位規(guī)則 與絕對層次坐標(biāo)類似 , Lk和 Tk 分別表示 Cellx的左父格和上父格,不同的是這里的 177。lk 和 177。tk 表示的是對應(yīng)父格的位移量,對于左父格來說, +表示向下移動 lk 個(gè)單元格, 表示向上移動 lk 個(gè)單元格;對于上父格來說, +表示向右移動 tk 個(gè)單元格, 表示向左移動 tk 個(gè)單元格。 如果不指定所在單元格 lk,則表示為當(dāng)前所在的父格 LK 例子:依舊使用絕對層次坐標(biāo)中的模板,在 D1 單元格中輸入公式 C1[A1:1],則返回的是當(dāng)前 A1 擴(kuò)展出來的上一格,對應(yīng) B1 擴(kuò)展出來的值,如下圖: 33 累計(jì) 累計(jì)的方式有很多,例如簡單分組累計(jì),交叉報(bào)表累計(jì)等,下面我們一一介紹各種累計(jì)的實(shí)現(xiàn)方法。 簡單分組 逐層累計(jì) 簡單分組 跨曾累計(jì) 交叉報(bào)表累計(jì) 簡單分組累計(jì) 逐層累計(jì) 逐層累計(jì),就是將每層與上一層數(shù)據(jù)相加得到這一層的數(shù)據(jù)結(jié)果,如下圖所示: 34 該報(bào)表的設(shè)計(jì)過程如下: 1. 連接數(shù)據(jù)庫 FRDemo 2. 設(shè)計(jì)報(bào)表 新建報(bào)表 表樣設(shè)計(jì) 按照下圖設(shè)計(jì)好報(bào)表的基本框架 新建一數(shù)據(jù)集名為 ds1 SQL 語句: SELECT MONTH(SIGNDATE) AS MONTH,ORDERID,AMOUNT FROM ORDERS 35 綁定數(shù)據(jù)列 按照下列表格將數(shù)據(jù)集的字段拖入對應(yīng)單元格內(nèi),并作相應(yīng)的設(shè)置 單元格 數(shù)據(jù)集 數(shù)據(jù)列 屬性 A4 ds1 MONTH 從上到下擴(kuò)展,居中,其余默認(rèn) B4 ds2 ORDERID 數(shù)據(jù)設(shè)置:匯總 |個(gè)數(shù),居中,其余默認(rèn) C4 ds2 AMOUNT 數(shù)據(jù)設(shè)置:匯總 |求和,居中,其余默認(rèn) 在 D4 單元格中寫入累計(jì)公式 =D4[A4:1]+C4。 D4[A4:1]寫在D4 單元格中,所以 D4 就是當(dāng)前格, A4:1 表示當(dāng)前單元格所屬的A4 分組格的上一個(gè)格子所對應(yīng)的 D4 單元格,也就是當(dāng)前 D4 格子的上一行的值。所以 D4[A4:1]+C4 表示的就是將 C4 格子中的值累計(jì)相加。 可得最終模板: 36 3. 保存預(yù)覽 保存為 %FR_HOME%\WebReport\WEBINF\reportlets\\doc\Tutorial\advanced\Cacuate_Between_Cells\ 點(diǎn)擊設(shè)計(jì)器界面的分頁預(yù)覽就可以在瀏覽器中進(jìn)行瀏覽。 在上面一張報(bào)表的基礎(chǔ)上我們還可以有一個(gè)稍微復(fù)雜一些的計(jì)算。例如,我們在這張報(bào)表當(dāng)中計(jì) 算的是合同成交量,那么如果我們希望在上一年的數(shù)據(jù)基礎(chǔ)上進(jìn)行累加,要怎么做呢? 下圖是這個(gè)報(bào)表的設(shè)計(jì)圖: 從設(shè)計(jì)圖里我們可以看到,這里我們要在一個(gè)初始值的基礎(chǔ)上對數(shù) 據(jù) 進(jìn) 行 累 計(jì) 。 所 以 在 D5 單 元 格 中 的 公 式 就 是 37 =IF(amp。A5==1,D4,D5[A5:1])+C5 。 amp。A5 即判斷 D5 的位置,如果 amp。A5的返回值為 1,即 D5 是 A5 分組格區(qū)域內(nèi)的第一行值,那么讀取 D4的值作為累計(jì)的第一個(gè)值,如果 amp。A5 的返回值不為 1,則讀取上一個(gè)D5 的值。 最 后 將 這 張 報(bào) 表 保 存為 %FR_HOME%\WebReport\WEBINF\reportlets\\doc\Tutorial\advanced\Cacuate_Between_Cells\ 簡單分組累計(jì) 跨層累計(jì) 如上圖所示,需要將每個(gè)銷售員的 銷售額及產(chǎn)品成本進(jìn)行累計(jì)??鐚永塾?jì)是相對于逐層累計(jì)而言的,很多報(bào)表由于格式的變化或具體的應(yīng)用,擴(kuò)展之后不是每行都有數(shù)據(jù),而此時(shí)我們?nèi)孕枰獙⒂袛?shù)據(jù)的進(jìn)行累加,這時(shí)在公式編寫方面就會有變化。 該報(bào)表的設(shè)計(jì)過程如下: 1. 連接數(shù)據(jù)庫 FRDemo 2. 設(shè)計(jì)報(bào)表 38 新建報(bào)表 表樣設(shè)計(jì) 按照下圖設(shè)計(jì)好報(bào)表的基本框架 新建數(shù)據(jù)集 ds1 SQL 語句 : SELECT ORDERID,PRODUCTNAME,OR,PRICE,COST FROM ORDERSDETAIL,PRODUCT WHERE = 綁定數(shù)據(jù)列 按照下列表格將數(shù)據(jù)集的字段拖入對應(yīng)單元格內(nèi),并作相應(yīng)的設(shè)置 單元格 數(shù)據(jù)集 數(shù)據(jù)列 屬性 A3 ds1 ORDERID 從上到下擴(kuò)展,居中,其余默認(rèn) 39 B4 ds1 PRODUCTID 從上到下擴(kuò)展,左父格: A3,其余默認(rèn) C4 ds1 PRODUCTNAME 從上到下擴(kuò)展,居中 ,其余默認(rèn) D4 ds1 QUANTITY 從上到下擴(kuò)展,居中,其余默認(rèn) E4 ds1 PRICE 從上到下擴(kuò)展,居中,其余默認(rèn) H4 ds1 COST 從上到下擴(kuò)展,居中,其余默認(rèn) 跨層累積 在 F4 單元格中寫入公式: =D4*E4,在 G4 單元格中寫入公式:=if(amp。B4 1,G4[B4:1],G4[A3:1,B4:!1]) + F4。該公式中 amp。C4 即判斷 G4 的位置,如果 amp。C4 的返回值大于 1,那么讀取上一個(gè) G4 的值,如果 amp。C4 的返回值不大于 1,則讀取上一層最后一個(gè)擴(kuò)展單元格的值,同樣 在 I4 單元格中寫入公式: =D4*H4,J4 單元格中寫入公式:=if(amp。B4 1,J4[B4:1],J4[A3:1,B4:!1]) + I4,對銷售總成本進(jìn)行累加。 可得最終模板: 3. 保存預(yù)覽 40 保存為 %FR_HOME%\WebReport\WEBINF\reportlets\\doc\Tutorial\advanced\Cacuate_Between_Cells\ 點(diǎn)擊設(shè)計(jì)器界面的分頁預(yù)覽就可以在瀏覽器中進(jìn)行瀏覽。 交叉報(bào)表累計(jì) 上圖這張報(bào)表,是一個(gè)簡單的交叉表,縱向是按照班級的分組,橫向是按照科目的分組。交叉表的累計(jì)比上述報(bào)表復(fù)雜的一點(diǎn)是累計(jì)的單元格不僅僅會左父格縱向擴(kuò)展開來,也會隨著上父格橫向擴(kuò)展開來,但對 FineReport 來說很輕松就可以解決。 該報(bào)表的設(shè)計(jì)過程如下: 1. 連接數(shù)據(jù)庫 FRDemo 2. 設(shè)計(jì)報(bào)表 新建報(bào)表 新建一數(shù)據(jù)集名為 ds1 SQL 語句: SELECT * FROM STSCORE 綁定數(shù)據(jù)列 41 按照下列表格將數(shù)據(jù)集的字段拖入對應(yīng)單元格內(nèi),并作相應(yīng)的設(shè)置 單元格 數(shù)據(jù)集 數(shù)據(jù)列 屬性 A2 ds1 CLASSNO 從上到下擴(kuò)展,居中,其余默認(rèn) B1 ds1 COURSE 從左到右擴(kuò)展,居中,其余默認(rèn) B2 ds1 GRADE 數(shù)據(jù)設(shè)置:匯總 |求和,居中,其余默認(rèn) 在 C2 單元格中寫入公式 : =B2+C2[A2:1]。其中 C2[A2:1]表達(dá)式中, A2:1 表示 A2 分組格的上一個(gè)格子, C2 表示當(dāng)前格所在的 C2 單元格。 最終模板如下: 3. 保存預(yù)覽 保存為 %FR_HOME%\WebReport\WEBINF\reportlets\doc\Tutorial\advanced\Caculate_Between_Cells\ 點(diǎn)擊設(shè)計(jì)器界面的分頁預(yù)覽就可以在瀏覽器中進(jìn)行瀏覽 42 具體內(nèi)容為制作展示模板 》高級報(bào)表設(shè)計(jì) 》動態(tài)隔間運(yùn)算 》層次坐標(biāo)原理 +累計(jì) 分頁 動態(tài)重復(fù)標(biāo)題 動態(tài)重復(fù)標(biāo)題行是指在報(bào)表數(shù)據(jù)分多頁顯示的時(shí)候,通過重復(fù)標(biāo)題的設(shè)置,將左表頭或者上表頭重復(fù)顯示在每一頁當(dāng)中。如下圖所示: 第一頁: 第二頁:
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1