沈默的食指族
自從iPhone上市之後,身邊的人個個成為蘋果一族,食指功力越來越強,每次聚會到一半,拿出手機拍完照,就開始各自低頭玩手機,

急著把照片傳到 Facebook上與朋友分享,

王圓外 發表在 痞客邦 留言(1) 人氣()

在 SSRS 2008 R2 之前要讓報表匯出的 Excel 工作表名稱有一定命名方式是不可能的,在先前我曾寫過一個 VBScript 來改寫 Sheet Name 來達到一樣的效果,請參考 [VBScript] 變更 Excel 檔案中的 SheetName 以及 Link 網址 ,但現在 R2 之後不需要這麼辛苦了,可以在匯出的報表上自動就產生好名字了。

其方法很簡單,只要在你想要產生匯出命名的 tablix 上,找到 PageName 的屬性,如下圖,匯出後即可顯示想要的樣子了。

匯出結果如下:

renameexcel2.png

王圓外 發表在 痞客邦 留言(0) 人氣()

當 Reporting Services 的訂閱擁有者離職或被 AD 刪除後,相關的訂閱會被失效而無法發送,除了用管理者身分去一個一個重新定義訂閱以外,簡單的方法是使用 SQL 語法,將舊的人員改成新的人員。

SQL 如下:

DECLARE @OldUserID uniqueidentifier
DECLARE @NewUserID uniqueidentifier
SELECT @OldUserID = UserID FROM dbo.Users WHERE UserName = 'DOMAINA\OldUser'
SELECT @NewUserID = UserID FROM dbo.Users WHERE UserName = 'DOMAINA\NewUser'
UPDATE dbo.Subscriptions SET OwnerID = @NewUserID WHERE OwnerID = @OldUserID

SQL 參考來源 : Tip: Change the Owner of SQL Reporting Services Subscription


王圓外 發表在 痞客邦 留言(0) 人氣()

以前如果要大量修改檔案的話不就是自己寫 bat 批次檔或者是script,懶得寫程式就是找大量修改檔名的軟體,這類的軟體太多了~

但是如果懶得找軟體,又只是簡單的修改檔名的話,可以使用 PowerShell 指令簡單修改。

假設我要修改附檔名為mp3 的檔案,把 "_" 改成 " " 只需下面指令即可。

 

gci *.mp3 | % { rename-item $_ $_.Name.Replace("_", " ") }

王圓外 發表在 痞客邦 留言(0) 人氣()

最近實作了一個列舉的 Flag 來處理權限的機制,也在無意之間發現了 .NET 4.0 多了一個 HasFlag 這個 Function ,這倒是節省了很多寫 code 的程式與判斷。

如下的權限身分:

public enum SystemRoles
{
    None = 0,                       // 0000 0000 0000 0000  0x0000
    ReportUser = 1 << 0,            // 0000 0000 0000 0001  0x0001
    WebUser = 1 << 1,               // 0000 0000 0000 0010  0x0002
    
    ACCUser = 1 << 6,               // 0000 0000 0100 0000  0x0040
    HRUser = 1 << 7,                // 0000 0000 1000 0000  0x0080

    ReadyOnlyAdmin = 1 << 8,        // 0000 0001 0000 0000  0x0100

    ACCAdmin = 1 << 10,             // 0000 0100 0000 0000  0x0400
    HRAdmin = 1 << 11,              // 0000 1000 0000 0000  0x0800
    
    SystemAdmin = 1 << 14,          // 0100 0000 0000 0000  0x4000
    ITAdmin = 1 << 15,              // 1000 0000 0000 0000  0x8000
}

如下面的情況,早期要得到 hasFlag1 的值,必須使用 hasFlag2 的方式,才能得到相同的結果,在程式的判讀上也比較吃力,現在使用 HasFlag() 的 Function 變得更簡單易懂了。

SystemRoles flagEnum = SystemRoles.WebUser | SystemRoles.HRUser | SystemRoles.ReportUser;
        
bool hasFlag1 = flagEnum.HasFlag(SystemRoles.WebUser);
bool hasFlag2 = ((flagEnum & SystemRoles.WebUser) != 0) ? true : false;

王圓外 發表在 痞客邦 留言(0) 人氣()

MS 在 3/24 發布了 1.1 的更新版了,更新的內容如下,我還沒測試過,有機會來升級一下看看。

Overview

Microsoft Connector Version 1.1 for Oracle by Attunity - The Oracle source and destination components are written to achieve optimal performance when loading data into Oracle or unloading data from Oracle in the context of Microsoft SSIS.

Microsoft Connector Version 1.1 for Teradata by Attunity - The components are written to achieve optimal performance when loading data into Teradata or unloading data from Teradata in the context of Microsoft SSIS.

文章標籤

王圓外 發表在 痞客邦 留言(0) 人氣()

在 SSRS 中,大家可以發現不管在哪裡的運算式都只有 Like 這個運算式,那 Not Like 又在哪裡呢?我又把依照 Like 的範例 =Fields!FirstName.Value Like "T*" 中的 Like 前面加個 Not 卻照成語法錯誤!! 那這樣看起來好像就沒有 Not Like 這個運算式可以使用了~ 以前遇到這樣的問題,其實都是在 SQL 中就使用 NOT LIKE 語法處理掉了,但是這次卻遇到所有的資料其實我都要的,只是在報表呈現中某一個 Group 要處理這樣的問題,因此無法再 SQL 中先處理資料了~ 最後的變通方式就是自己寫一段 CODE 來處理這樣的事情了~ 首先,先在整個報表的報表屬性中的程式碼,寫下自己定義的 NotLike 的程式

Public Function NotLike(ByVal val As String, ByVal filter As String) As Boolean
        IF val.Contains(filter) Then
                Return False
        Else
                Return True
        End If
End Function

 

這樣就可以在所有的運算式中使用 =code.NotLike(Fields!FirstName.Value, "T") 這樣的語法了,但是那要在 Group 中的篩選要怎麼使用呢,其實已是很簡單,在運算式中打上=code.NotLike(Fields!FirstName.Value, "T") ,運算子選擇 = ,值打上 =True,這樣就可以在 Group 中使用 NotLike 來過濾你的資料了。


王圓外 發表在 痞客邦 留言(0) 人氣()

最近因為某些原因,公司將不再使用 Outlook 了,因為在 Outlook 上要查詢員工資訊變得困難重重了,另外,也因為公司的組織異動,全部都要建入 AD ,因此又要搞個 AD 通訊錄異動的自動化程式,又讓我重拾寫 AD 程式的能力。

由於這次的關係,在 .NET 3.5 中發現了 AD 的命名空間又多了兩個東西,一個是 System.DirectoryServices.AccountManagement ,另一個為 System.DirectoryServices.Protocols,Protocols 在此就暫時不提它了,因為我還沒用到。

由 MSDN 上的的解釋,System.DirectoryServices.AccountManagement 可跨多重主體存放區存取與管理安全性主體。存放區包括 Active Directory 網域服務 (AD DS)、Active Directory 輕量型目錄服務 (AD LDS) 與電腦 SAM (MSAM)。System.DirectoryServices.AccountManagement 可管理目錄物件,而不受 System.DirectoryServices 命名空間影響。

因此就可以多多利用這個命名空間做很多使用者、群組、電腦的管理。省去之前使用 System.DirectoryServices 跟 Interop.ActiveDs.dll COM 元件的複雜工作。

 

王圓外 發表在 痞客邦 留言(0) 人氣()

SharePoint 2010 系統越來越大,認證的分類也變多了,看來又要一翻的努力才能拿到全部的認證...

新的認證應該會於六月上路...詳情參考https://partner.microsoft.com/global/40121316

 

以下為新的認證:

Certification Path for IT professionals

王圓外 發表在 痞客邦 留言(0) 人氣()

視窗控制快速鍵

Win+Home: 將所有使用中視窗以外的視窗最小化(和搖動使用中視窗一樣意思)
Win+Space:將所有桌面上的視窗透明化(和滑鼠移到工作列的最右下角一樣意思)
Win+上方向鍵:最大化使用中視窗(和將視窗用滑鼠拖到螢幕上緣一樣意思)

王圓外 發表在 痞客邦 留言(0) 人氣()

您尚未登入,將以訪客身份留言。亦可以上方服務帳號登入留言

請輸入暱稱 ( 最多顯示 6 個中文字元 )

請輸入標題 ( 最多顯示 9 個中文字元 )

請輸入內容 ( 最多 140 個中文字元 )

請輸入左方認證碼:

看不懂,換張圖

請輸入驗證碼