數字解譯
當您載入包含數字、貨幣或日期的資料時,將根據是否已定義資料類型使用不同方式進行解譯。本節描述如何在兩個不同的案例中解譯資料。
含類型資訊的資料
對於在透過 ODBC 載入的資料庫有已定義資料類型,且包含數字的欄位,QlikView 會按照其各自格式加以處理。其字串表示法為套用適當格式設定的數字。
即使已在應用程式的數字格式對話方塊中變更數字格式,QlikView 仍會記得欄位的原始數字格式。永遠可以還原原始格式,方式是按一下 來自輸入的預設按鈕,這位於數字格式對話方塊中
針對各個資料類型的預設格式如下:
- 整數、浮點數:數字的預設設定
- 貨幣:貨幣的預設設定
- 時間、日期、時間戳記:ISO 標準格式設定
數字和貨幣的預設設定是透過指令碼數字解譯變數或作業系統設定 (控制台) 所定義。
不含類型資訊的資料
對於不含來源中特定格式設定資訊的資料 (例如來自文字檔的資料,或含一般格式的 ODBC 資料),情況就變得較為複雜。最終結果會取決於至少六個不同因素:
- 資料在來源資料庫中的寫入方式
- 對於數字、時間、日期等的作業系統設定等。(控制面板)
- 是否在指令碼中使用選用的數字解譯變數
- 是否在指令碼中使用選用的解譯函數
- 是否在指令碼中使用選用的格式設定函數
- 文件中的數字格式設定控制項
QlikView 嘗試將輸入資料解譯為數字、日期、時間等。只要資料使用系統預設設定,QlikView 就會自動解譯並顯示格式設定,使用者無需更改指令碼或 QlikView 的任何設定。有個簡單的方式可查明輸入資料是否正確解譯:在列表框中數值會靠右對齊,而文字字串會靠左對齊。
預設會使用以下配置,直到找到完全符合的格式為止。(預設格式是在作業系統中,亦即控制台中,或在某些情況下透過指令碼中的特殊數字解譯變數,所指定的如小數點分隔符號、年月日順序等的格式。)
QlikView 將會按順序以下列其中一個方式解譯資料:
- 按照數字預設格式的數字。
- 按照日期預設格式的日期。
- 按照時間和日期預設格式的時間戳記。
- 按照時間預設格式的時間。
- 按照下列格式的日期:yyyy-MM-dd。
- 按照下列格式的時間戳記:YYYY-MM-DD hh:mm[:ss[.fff]]。
- 按照下列格式的時間:hh:mm[:ss[.fff]]。
- 按照貨幣預設格式的金額。
- 以 '.' 為小數點分隔符號和 ',' 為千位分隔符號的數字 (倘若小數點分隔符號和千位分隔符號都未設為 ',')。
- 以 ',' 為小數分點隔符號和 '.' 為千位分隔符號的數字 (倘若小數點分隔符號和千位分隔符號都未設為 '.')。
- 文字字串。這最後一個測試絕對不會失敗:只要資料可以讀取,就一定可將其解譯為字串。
從文字檔載入數字時,可能會發生一些解譯問題;例如,不正確的千位分隔符號或小數點分隔符號可能會造成 QlikView 錯誤解譯數字。首先要做的是檢查指令碼中的數字解譯變數是否正確定義,以及控制台中的系統設定是否正確。
一旦 QlikView 將資料解譯為日期或時間,就可在工作表物件的屬性對話方塊中變更為其他日期或時間格式。
因為資料沒有預先定義的格式,所以不同筆的記錄自然可能在相同欄位中包含不同格式化的資料。例如,可能在同一個欄位中就會發現有效的日期、整數和文字。因此資料不會進行格式設定,而是以原始形式顯示。