CMTrans.exe 使用說明 ------------------------------------------------------------- 一、輸出某表格某日的資料(多股排行) 例如:您想要輸出 2003/5/26 收盤資料您可下以下參數 C:\Program Files\CMoney\CMTrans.exe 日收盤表排行/20030526 同目錄下會產出檔案:20030526_日收盤表排行.TXT (格式為以","分隔各欄位資料的CSV檔案,請參考附檔:20030526_日收盤表排行.txt) 如果您要轉出最新一日資料則可忽略日期參數 例如:C:\Program Files\CMoney\CMTrans.exe 日收盤表排行 =>將產出檔案=> 日收盤表排行.txt *動態樣本–交易所分類:代號^[動態連結代號] 您想要輸出 2003/5/22 上市收盤資料您可下以下參數 C:\Program Files\CMoney\CMTrans.exe 日收盤表排行/20030522|代號^1 *動態樣本–個股特殊分類:特殊^[動態連結代號] 您想要輸出 2003/5/22 「台灣50」的季財報現金流量資料您可下以下參數 C:\Program Files\CMoney\CMTrans.exe 季財報(現金流量單季)/201003|特殊^1 *動態樣本–細產業分類:產業^[動態連結代號] 您想要輸出 2003/5/22 「電子-DRAM製造」的季財報現金流量資料您可下以下參數 C:\Program Files\CMoney\CMTrans.exe 季財報(現金流量單季)/201003|產業^303 *動態樣本(非台股):一般^[動態連結代號]^[資料表名稱]^[樣本分類名稱] 您想要輸出 2011/01/20 「原物料資料」的水泥類資料您可下以下參數 C:\Program Files\CMoney\CMTrans.exe 原物料資料表(日)/20110120|一般^N110^原物料資料表(日)^產業分類 ------------------------------------------------------------- 二、輸出某個股某段時間的資料(個股總覽) 例如:您想要輸出"重要國際指數"表,其中代號為"#N225" 之 20020101-20030811 期間的資料 您可下以下參數 C:\Program Files\CMoney\CMTrans.exe 重要國際指數/20000810-20010811,#N225 同目錄下會產出檔案:#N225_重要國際指數.txt 如果您要轉出該個股所有歷史資料則可忽略期間參數 例如:C:\Program Files\CMoney\CMTrans.exe 重要國際指數/,#N225 ------------------------------------------------------------- 三、輸出某個自訂報表資料 呼叫執行 CMTrans.exe 參數1;參數2;參數3;參數4;參數5;參數6;參數7;參數8 參數1:報表種類 參數2:檢視方式 參數3:自訂報表名稱 參數4:日期 參數5:輸出資料內容分隔符號 參數6:指定檔名或副檔名 參數7:是否匯出日期{是;否(預設值)} 參數8:檢視資料包含股票代號類別 代碼如下: 1:全部代號包含指數權證 2:全部代號不含指數權證 3:全部代號包含指數 4:全部代號包含權證 1.多股排行 例如:您想要輸出"外資持股與收盤價" 這個自訂報表(多股排行的類型),您可下以下參數 C:\Program Files\CMoney\CMTrans.exe 自訂報表/多股排行/外資持股與收盤價/20030526 同目錄下會產出檔案:20030526_自訂報表_外資持股與收盤價.TXT 如果要轉出的報表,不指定日期(不帶最後一個日期參數),則程式會自動判斷最新一天日期 2.個股排行 例如:您想要輸出"投信持股與收盤價" 這個自訂報表(個股總覽的類型),您可下以下參數 C:\Program Files\CMoney\CMTrans.exe 自訂報表/個股總覽/投信持股與收盤價/20000810-20010811,2303 同目錄下會產出檔案:2303_自訂報表_投信持股與收盤價.TXT 如果您要轉出該個股所有歷史資料則可忽略期間參數 例如:C:\Program Files\CMoney\CMTrans.exe 自訂報表/個股總覽/投信持股與收盤價/,2303 註1:轉出自訂報表,僅限於執行檔所在點腦所執行CM主程式時,裡面可以看到的自訂報表 例如,當在A電腦中用CM主程式可看到B自訂報表,才可以用A電腦中的CMTrans轉出B報表 註2:動態樣本不適用於以參數轉自訂報表 ------------------------------------------------------------- 四、輸出SQL指令下的資料 4.0參數說明 C:\Program Files\CMoney\CMTrans.exe 參數1;參數2;參數3;參數4 參數1:將要轉出的是一般報表或是自訂報表("SQL1"為一般報表,"SQL2"為自定報表) 參數2:SQL語法字串 參數3:分隔符號(不可以為分號";"及除號"/",預設為逗號",") 參數4:輸出的檔案名稱 4.1 轉出一般報表 例如:您想要轉出一般報表其中的"日收盤表排行"2005年9月20日的資料,分隔符號為逗號,輸出的檔案名稱為"轉出資料.TXT",您可以如以下範例操作 C:\Program Files\CMoney\CMTrans.exe SQL1;SELECT * FROM [日收盤表排行] WHERE [日期] = '20050920';,;轉出資料.TXT 之後會在同一目錄下會產出檔案,若輸出的檔案名稱沒有指定則預設產生CMData.TXT的檔案 當下次再次執行時,若輸出的檔案名稱為同一個時,舊檔將會被覆蓋,此時這個檔案必需是沒有開啟的狀態下,否則將無法覆蓋 請注意!當輸入表名或是欄位名稱時,請用[]中刮號框起來 4.2 關於動態連結代號–台股(適用轉出一般報表與自訂報表:SQL1、SQL2) 標籤:使用 來決定要設定的動態連結代號,標籤內用逗號來分隔參數 :參數1是動態連結的種類,參數2是動態連結的代號 1、台股–交易所代號: 例:SELECT * FROM [季財報(現金流量單季)] WHERE 年季='201003' AND 股票代號 IN 2、台股–細產業分類: 例:SELECT * FROM [季財報(現金流量單季)] WHERE 年季='201003' AND 股票代號 IN 3、台股–個股特殊分類(不含指數彙編): 例:SELECT * FROM [季財報(現金流量單季)] WHERE 年季='201003' AND 股票代號 IN 4.3 關於動態連結代號–非台股(僅適用轉出一般報表:SQL1) 標籤:使用 來決定要設定的動態連結代號,標籤內用逗號來分隔參數 :參數1是動態連結的種類,參數2是動態連結的代號,參數3是資料表名稱,參數4是次樣本名稱 1、非台股: 例:SELECT * FROM [重要國際指數] WHERE 日期='20110120' AND 代號 IN 例:SELECT * FROM [權證基本資料表] WHERE 年度='2011' AND 代號 IN ------------------------------------------------------------- 五、輸出某個進階篩選之符合個股 例如:您想要輸出 "營收創新高" 這個進階篩選(假設您已設定該項於基本面之中) 您可下以下參數 C:\Program Files\CMoney\CMTrans.exe 進階篩選/基本面篩選/營收創新高/20041026 同目錄下會產出檔案:20041026_進階篩選_營收創新高.txt 如果要轉出的報表,不指定日期(不帶最後一個日期參數),則程式會自動判斷最新一天日期 同目錄下會產出檔案:進階篩選_營收創新高.txt 註:轉出進階篩選,僅限於執行檔所在點腦所執行CM主程式時,裡面可以看到的進階篩選 例如,當在A電腦中用CM主程式可看到B進階篩選,才可以用A電腦中的CMTrans轉出B進階篩選 六、其他注意事項 1.表格名稱: CMoney系統的功能表[財報明細]、[籌碼排行]、[其他查詢] 內之一般報表項目名稱即是可輸出之 表格名 參數 如籌碼排行下的 "日收盤表排行" 2.指定分隔符號: 產出檔資料預設以 "," 隔開 。如果您想用其他字元隔開,例如"^",則可多下一個參數如: C:\Program Files\CMoney\CMTrans.exe 日收盤表排行/20030526/^ 3.若想指定伺服器位置 在參數最後面加上指定的字串 範例:在參數尾端加上/Server=CMoneyServer/ C:\Program Files\CMoney\CMTrans.exe 進階篩選/基本面篩選/營收創新高/20041026/Server=CMoneyServer/ 4.錯誤訊息: 若無法正常輸出資料,上述輸出檔案內則會出現錯誤訊息: Error_找不到指定的進階篩選! Error_找不到指定的自訂報表! Error_CMTrans程式未授權使用! Error_沒有資料! Error_參數錯誤! Error_授權使用次數已滿! Error_SQL語法錯誤! Error_SQL語法不可以載入DELETE、UPDATE以及必需要有SELECT! Error_SQL錯誤: ... 4.在命令提示字元下,「%」是特殊字元,當SQL參數內有使用時,需用「%%」才能表示% 5.在命令提示字元下,「>=」「<=」是特殊符號,當SQL參數內有使用時,需用Between語法代替 -------------------------------------------------------------