中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      oracle reports實現(xiàn)報表定長與定寬輸出

      時間:2024-06-20 09:44:26 Oracle認(rèn)證 我要投稿
      • 相關(guān)推薦

      oracle reports實現(xiàn)報表定長與定寬輸出

        oracle reports是oracle的數(shù)據(jù)統(tǒng)計及圖形化報表工具,它提供了六種風(fēng)格的報表格式,而我們通常使用的只有其中的兩種,即tabular和matrix,無論用哪種風(fēng)格生成的報表,打印出的表格數(shù)都是動態(tài)變化的。其中tabular風(fēng)格的報表,列數(shù)固定,而行數(shù)不定;matrix風(fēng)格的報表,行數(shù)和列數(shù)均不定。那么在oracle reports中如何實現(xiàn)報表的定長與定寬輸出呢?

        一、對于tabular風(fēng)格的報表,可用報表觸發(fā)子after parameter form和after report實現(xiàn)定長輸出。其方法是:根據(jù)實際情況確定每頁打印的行數(shù),當(dāng)最后一頁的記錄數(shù)少于每頁打印的行數(shù)時,則用空記錄補齊。在觸發(fā)子after parameter form插入空記錄,在觸發(fā)子after report中再將空記錄刪除,下面舉例說明。

        假設(shè)有一數(shù)據(jù)基表wzdm:存放物資代碼信息,其數(shù)據(jù)結(jié)構(gòu)為:

      字段名 含義 長度 類型
      wzdm 物資代碼 9 c
      wzmc 物資名稱 20 c
      xhgg 型號規(guī)格 20 c
      jldw 計量單位 6 c

        要求:按定長輸出物資代碼表,并且每頁均輸出x行(x可根據(jù)實際情況而定)。

        1.啟動oracle*reports,建立物資代碼打印報表(略),然后在報表觸發(fā)子after parameter form中加入以下代碼:

        declare

        v—jls number(2);

        i number(2):=1;

        begin

        select count(*) into v—jls from wzdm;

        if mod(v—jls,x)〈〉0 then

        loop

        exit when i〉=(x-mod(v—jls,x))+1;

        insert into wzdm(wzdm,wzmc,xhgg,jldw)

        values(′′,′′,′′,′′);

        i:=i+1;

        end loop;

        commit;

        end if;

        end;

        在報表觸發(fā)子after report中分別加入以下代碼:

        begin

        delete from wzdm where wzdm is null;

        commit;

        end;

        2.運行報表后即可輸出定長的物資代碼表。

        說明:對于其它tabular風(fēng)格的報表,在編寫上述兩個觸發(fā)子時只需將基表名與列名根據(jù)實際情況修改一下,并確定x的值即可。

        二、對于matrix風(fēng)格的報表,可利用視圖實現(xiàn)定長與定寬輸出,其思路是:當(dāng)行記錄數(shù)和列記錄少于實際報表的行數(shù)和列數(shù)時,均以空記錄補齊。下面舉例說明。

        假設(shè)有一物資資金消耗去向統(tǒng)計月報,該表橫向顯示本期消耗去向,縱向顯示物資類別,由于每月物資消耗去向和消耗物資均不定,所以此類報表即為一矩陣報表。該報表的數(shù)據(jù)存放在基表t—zjxhqx中,其數(shù)據(jù)結(jié)構(gòu)如下:

      字段名 含義 長度 類型
      lbmc 類別名稱 20 c
      dwmc 單位名稱 20 c
      je 金額 14,2 n

        要求:按定長定寬輸出物資資金消耗去向統(tǒng)計月報,并且每頁均輸出x行y列(行數(shù)和列數(shù)可根據(jù)實際情況而定)。

        1.首先建一基表t—kjl,用來存放空記錄,其數(shù)據(jù)結(jié)構(gòu)為:

      字段名 含義 長度 類型
      no 序號 2 n

        建完該數(shù)據(jù)表后,再往其中插入記錄,記錄數(shù)可根據(jù)實際情況而定,一般為一頁所能打印的最大行數(shù),這里假設(shè)為z條,即no的值為1,2,3…z。

        2.建視圖,其過程如下:

        create view v—tjbb as

        select dwmc,lbmc,je from t—zjxhqx

        union

        select dwmc,null,to—number(null) from t—zjxhqx,t—kjl

        where no-(z-x)〉(select mod(count(distinct lbmc)-1,x)+1 from t—zjxhqx)

        union

        select null,lbmc,to—number(null) from t—zjxhqx,t—kjl

        where no-(z-y)〉(select mod(count(distinct dwmc)-1,y)+1 from t—zjxhqx);

        3. 啟動oracle*reports,建立矩陣報表查詢時直接引用視圖v—tjbb即可。這樣運行時輸出的報表每頁都是x行y列,即實現(xiàn)了定長和定寬輸出。

      【oracle reports實現(xiàn)報表定長與定寬輸出】相關(guān)文章:

      Oracle認(rèn)證:ORACLE綁定變量BINDPEEKING08-25

      Oracle認(rèn)證:Oracle控制件文件修復(fù)07-27

      Oracle認(rèn)證:Oracle避免全表掃描方式10-04

      Oracle認(rèn)證:Oracle內(nèi)存結(jié)構(gòu)研究-PGA篇09-22

      oracle的sql語句01-21

      Oracle認(rèn)證作用07-31

      Oracle最新認(rèn)證07-13

      Oracle認(rèn)證簡介11-30

      Oracle常見產(chǎn)品10-14

      Oracle認(rèn)證途徑09-11

      主站蜘蛛池模板: 吉安县| 国产精品白浆视频一区| 顶级嫩模精品视频在线看| 日韩人妻高清福利视频| 婷婷色在线视频中文字幕| 中文字幕无码免费久久9一区9| 国产亚洲精品日韩香蕉网| 国产av一区二区三区丝袜| 国产一级a爱做片一女多男| 辉县市| 巧家县| 马龙县| 亚洲AV色欲色欲WWW| 亚洲嫩模高清在线视频| 亚洲中文字幕中文字幕中文字幕| 偷拍熟女亚洲另类| 欧美日韩一二三区高在线| 久久精品视频中文字幕无码| 永仁县| 大英县| 西昌市| 松溪县| 日本一区二区三区在线播放| 平陆县| 精品在免费线中文字幕久久| 宜章县| 瑞昌市| 新久久久高清黄色国产| 北票市| 日本一区二区三区专区| 国产a视频一区二区三区| 欧美深夜福利视频| 久久这里只有精品黄色| 国产免费无码9191精品| 亚洲午夜激情久久加勒比| 国产不卡在线免费视频| 国内自拍视频在线观看| 国产在线观看不卡免费| 天堂最新在线官网av| 粉嫩小泬无遮挡久久久久久 | 国产内射一区二区三区|