發表文章

目前顯示的是有「問答集」標籤的文章

Xamarin : Designer show error : you need to use a theme.appcompat theme (or descendant) with the design library

圖片
這個問題是出現在使用 Visual Studio 2017 Xamarin 建立 Android 單一檢視應用程式時發生的問題,主要原因應該 原因是這個專案預設使用了 appcompat 主題的 android.support.design.widget.CoordinatorLayout 框架,而預設主題無法解析這個框架導致錯誤 如果你在 Designer 的畫面上點擊 show error 就可以看到這個相關訊息 java.lang.IllegalArgumentException was throw  you need to use a theme.appcompat theme (or descendant) with the design library 如果堅持使用 CoordinatorLayout 解決方式就是去更改 Designer 上的 主題(Theme),將它改為 Theme.AppCompat 樣式 就可以正常顯示了

datawindow使用陣列參數傳遞

圖片
如果你的 DataWindow 需要 in 的條件,要注意的是 Datawindow 裡面 SQL 的 in 參數是需要一個陣列型態的參數,所以你必須在指定 DataWindow 參數的時候宣告它為陣列型態: 1、選擇 Design > Retrieval Arguments

DataWindow執行時出現encountered select error錯誤

一般DW如果會跳出這個錯誤,通常是DW中的table定義的欄位長度與SQL執行的欄位長度不符。 如果說有其他原因,也可能是DW與SQL指令搭配不完全。 再者,一般DW執行發生錯誤如果沒有攔截dberror事件,是不會得到SQL error的訊息,然而SQL CODE 2 encountered select error:這種錯誤訊息是DW已經將SQL指令送出執行,在資料庫傳送資料到DW上發生無法處理的錯誤,導致無法繼續(encountered)。 據我的經驗是DW當初"設計"時參照使用的Table,後來因為某些因素做了變更(通常是欄位長度加大),導致DW中記載的欄位長度與實際Table不符合,當資料長度小於DW當初定義的欄位長度時還不會發生問題,但是當資料長度超過DW當初定義欄位的長度時就會出現錯誤。 解決方式: 重新進入設計DW的data source,簡單的變更或是調整一下SQL部分語法,此時DW painter會重新對應資料庫Table欄位資訊。 如果擔心有些版面會因為調整過data source就會被破壞(Regenerate),就只好匯出SRD,直接修改SRD檔案中記載TABLE的COLUMN欄位長度,如:CHAR(10) -> CHAR(30) 。使用這種方式要特別注意,修改的欄位長度最好跟資料庫中的Table欄位長度一致,以免後續有問題又需要DEBUG,反而自找麻煩。

Compute欄位小計異常

圖片
請問一下,為什麼我在這個DW的[總成本小計]後面的COMPUTE欄位(如下圖所示)加入sum( compute_0024 for group 1 ) 但出來的結果卻是 我是很單純的想把COMPUTE_0024加總起來而已!!好怪 ******************************************************************************** 關於Compute的問題,我也遇過幾次,原因不是很清楚,但是有些做過調整後就可以使用了,我提供幾種解決方法你可以各個去試試: compute_0024有Null值,因為某些條件下沒有計算值,我推測是Null值,這個Null值 可能 導致Group1上的compute計算sum值錯誤。解決方式:在compute_0024的公式外面加個if(isnull(xx) , 0 , xx)的判斷,強迫讓Null值的公式出現0值,缺點:畫面上會有"0"值出現。 在Group1上的compute公式中加入isnull判斷sum(if(isnull(compute_0024),0,compute_0024) for group 1),這方法不會有第一點的問題,但是如果是compute_0024值有問題,依然不能解決。 在Group1上的compute公式中 不要直接使用compute_0024這種計算欄位 的值,直接將compute_0024中的公式拿來替代compute_0024,因為經過測試發現計算欄位 有時候 去取得其他計算欄位的值時會有異常值的出現(原因不明,我猜可能是PB內部運算順序導致),因此我發現這樣雖然公式會"落落長"但是比較不會有問題。 Compute欄位的format不要使用預設的這個也是特例問題,雖然系統在不指定下會使用[general],卻有時候會發生計算小數點的錯誤問題,通常這種錯誤都會只發生在小數點下,我的經驗是有時候去TOTAL整數卻會跑出一堆小數點以下的數值,修改過FORMAT後就好了。例如僅需要整數時把FORMAT設定:###0。 以上四點是我這邊解決compute field的經驗,你可以修正試試看。