2015年8月28日 星期五

MS SQL INDEX LIST 取得現有 MS SQL 的資料表的index清單

'取得現有 MS SQL 的資料表的index清單

SELECT TBL.NAME AS TABLE_NAME,
        I.NAME AS INDEX_NAME,
        I.INDEX_ID,
        (CASE IC.IS_INCLUDED_COLUMN
            WHEN 1 THEN IC.INDEX_COLUMN_ID
            ELSE IC.KEY_ORDINAL
         END)
           AS [ID],
        CLMNS.NAME AS COLUMN_NAME,
        CLMNS.COLUMN_ID AS COLUMN_POSITION,
        IC.IS_DESCENDING_KEY AS DESCEND , I.IS_UNIQUE
   FROM          SYS.TABLES AS TBL
              INNER JOIN
                 SYS.INDEXES AS I
              ON (I.OBJECT_ID = TBL.OBJECT_ID)
           INNER JOIN
              SYS.INDEX_COLUMNS AS IC
           ON (IC.COLUMN_ID > 0
               AND (   IC.KEY_ORDINAL > 0
                    OR IC.PARTITION_ORDINAL = 0
                    OR IC.IS_INCLUDED_COLUMN != 0))
              AND (IC.INDEX_ID = CAST (I.INDEX_ID AS INT)
                   AND IC.OBJECT_ID = I.OBJECT_ID)
        INNER JOIN
           SYS.COLUMNS AS CLMNS
        ON CLMNS.OBJECT_ID = IC.OBJECT_ID AND CLMNS.COLUMN_ID = IC.COLUMN_ID
  WHERE 1 = 1
 --(I.NAME='???')
 --AND (TBL.NAME=???'  )
 ORDER BY TBL.NAME , INDEX_ID ASC , [ID]

2015年8月7日 星期五

crystal report 浮水印(watermark) 簽章(STAMP)

下載 sample pdf

下載 sample pdf

crystal report 浮水印(watermark) 簽章(STAMP)

準備兩個當浮水印圖檔
A.confidential.wmf 背景透通
B.confidential.jpg 沒有透通

'步驟
1.在頁首a放入這兩張圖,頁首a的區段專家"放置在隨後區段"勾選起來
2.將頁首a高度拉大,圖檔移至頁首a的最下方(這樣浮水印就會出現在頁面靠中間的位置))


如果報表中沒有線條這兩種圖檔呈現出的結果是一樣的
但是如果報表中有線條

3.在細目中插入藍色線條
4.在細目中插入文字物件,但是這個文字物件不放入任何文字,且將它拉的和藍線一樣長
   並將文字物件的"框線"-"線條樣式"-"上"設定成單線,將"色彩"設定為綠色
設計畫面 左圖為A 右圖為B

預覽畫面


此時預覽結果發現 兩張圖都被綠線壓過 , A圖以透通的方式顯示藍線,
B圖藍線完全被蓋掉


結論
以浮水印的需求 (浮水印應該是在最下層)
A/B圖檔都可以但需使用非一般的線條,要用文字物件的框線也就是綠線


以簽章(STAMP)的需求,例如收據章 (圖案應該是在最上層)
若有壓到"方塊"或"線條",則只有A圖檔可以

收據章範例