2013-11-14 26 views
0

我目前有晶體報告的問題。我在使用Crystal方面很新,但有一個可靠的訪問背景。我在一份新工作中繼承了這份報告。晶體陣列查詢

該報告有2個數組(我認爲),這些數組限制誰可以看到針對特定銷售代表發出的訂單或由特定用戶記錄的訂單。

用戶應該只能看到他們在此報告上處理的訂單。在用戶26,42,62和139下面的這段代碼中,他們可以看到所有針對任何用戶記錄的訂單。

select {@disCurrentUserID} 
case 26, 42, 62, 139: 
(
SalesRepCode[1] := 0; 
UserID := 0; 
) 

凡在本例中用戶49只能看到他們的訂單已經登錄反對衆議員代碼2281和2283

case 49: 
(
redim SalesRepCode[2]; 
SalesRepCode[1] := 2281; 
SalesRepCode[2] := 2283; 
UserID := 0; 
) 

我所用下面的掙扎。用戶45和用戶143在相同的區域工作,並且需要在報告上看到彼此的訂單。如果我以用戶45身份登錄,那麼隨後的代碼位只能看到該用戶處理的訂單,如果我以143登錄,則只能看到訂單。

case 45, 143: 
(
UserID := 45; 
UserID := 143; 
SalesRepCode[1] := 0; 
) 

任何幫助將不勝感激。如果需要的話

// determine valid salesreps from username 
global numbervar array SalesRepCode := [0]; 
global numbervar UserID; 

global stringvar array SalesReps; 
global stringvar array Users; 

redim SalesReps[100]; 

SalesReps[2200-2199] := "1"; 
SalesReps[2201-2199] := "2"; 
SalesReps[2202-2199] := "3"; 
SalesReps[2203-2199] := "4"; 
SalesReps[2205-2199] := "5"; 
SalesReps[2206-2199] := "6"; 
SalesReps[2208-2199] := "7"; 
SalesReps[2241-2199] := "8"; 
SalesReps[2243-2199] := "9"; 
SalesReps[2244-2199] := "10"; 
SalesReps[2245-2199] := "11"; 
SalesReps[2248-2199] := "12"; 
SalesReps[2281-2199] := "13"; 
SalesReps[2283-2199] := "14"; 
SalesReps[2299-2199] := "15"; 

redim Users[143]; 

Users[26] := "User1"; 
Users[42] := "User2"; 
Users[44] := "User3"; 
Users[45] := "User4"; 
Users[48] := "User5"; 
Users[51] := "User6"; 
Users[60] := "User7"; 
Users[62] := "User8"; 
Users[74] := "User9"; 
Users[139] := "User10"; 
Users[122] := "User11"; 
Users[143] := "User12"; 

select {@disCurrentUserID} 
case 26, 42, 62, 139: 
(
SalesRepCode[1] := 0; 
UserID := 0; 
) 
case 45, 143: 
(
UserID := 45; 
UserID := 143; 
SalesRepCode[1] := 0; 
) 
case 48: 
(
SalesRepCode[1] := 0; 
UserID := 48; 
) 
case 49: 
(
redim SalesRepCode[2]; 
SalesRepCode[1] := 2281; 
SalesRepCode[2] := 2283; 
UserID := 0; 
) 
case 96: 
(
redim SalesRepCode[4]; 
SalesRepCode[1] := 2208; 
SalesRepCode[2] := 2243; 
SalesRepCode[3] := 2241; 
SalesRepCode[4] := 2200; 
UserID := 0; 
) 
// set default values to disable report if non-sales user 
default: 
(
SalesRepCode[1] := 0; 
UserID := -1; 
) 

回答

0

你需要把用戶ID陣列以及

感謝 李

所有的代碼如下。在您的代碼中,您將UserID設置爲45或143.因此,您需要創建一個UserID數組以便將多個ID值放入。 case 45,143:

+0

嗨,感謝您回覆我。我怎麼做?我不知道該怎麼做。謝謝 – Lee83

+0

做一點谷歌搜索。下面是讓你開始的東西:http://stackoverflow.com/questions/638216/vb-net-initialising-an-array-on-the-fly –