文章目錄
js 文件 (todo 標註的需要修改)
//Script here
//todo : 初始化日期 需要進行修改
var initDate = "2019-01-01";
//使用SimpleDateFormat對字符串類型的日期進行轉化
var dateFormat = java.text.SimpleDateFormat("yyyy-MM-dd");
//指定開始時間 從哪一天開始
var startDate = dateFormat.parse(initDate);
//創建日曆對象
var calendar = java.util.Calendar.getInstance();
//設置開始時間
calendar.setTime(startDate);
//累加日期
calendar.add(java.util.Calendar.DAY_OF_MONTH, rowNumber);
//請求的url
var url = null;
//建立的http鏈接
var httpConn = null;
//輸入流的緩衝
var sb = null;
//獲取當前時間的字符串
var date_value = dateFormat.format(calendar.getTime());
//獲取代理鍵 20190101
var surrogateKey = date_value.replace("-", "");
//獲取一年中的第幾天
var dayOfYear = calendar.get(java.util.Calendar.DAY_OF_YEAR) + "";
//獲取當月中的第幾天
var dayOfMonth = calendar.get(java.util.Calendar.DAY_OF_MONTH) + "";
//判斷是否爲月的第一天
var isFirstOfMonth = dayOfMonth == 1;
//判斷是否爲月的最後一天
var isLastOfMonth = calendar.get(java.util.Calendar.DAY_OF_MONTH) == calendar.getActualMaximum(java.util.Calendar.DAY_OF_MONTH);
//獲取月的第幾個星期
var weekOfMonth = calendar.get(java.util.Calendar.WEEK_OF_MONTH) + "";
//獲取月份
var month = calendar.get(java.util.Calendar.MONTH) + 1 + "";
//獲取year
var year = calendar.get(java.util.Calendar.YEAR) + "";
//獲取季度
var quarter = "";
if (month >= 1 && month < 4) {
quarter = "1";
} else if (month < 7) {
quarter = "2";
} else if (month < 10) {
quarter = "3";
} else if (month <= 12) {
quarter = "4";
}
for (var i = 0; i < 10; i++) {
//創建一個stringBuffer用來保存json
sb = java.lang.StringBuffer();
//讀取文件
var ins = null;
//todo: 修改爲自己的url 創建url
var urlStr = "http://api.tianapi.com/txapi/jiejiari/index?key=1270660d00be313436831f88253918ac&date=" + date_value;
url = java.net.URL(urlStr);
var str = null;
try {
//調用API
ins = java.io.BufferedReader(java.io.InputStreamReader(url.openStream(), "UTF-8"));
//一行一行進行讀入
while ((str = ins.readLine()) != null) {
sb.append(str);
}
break;
} catch (err) {
} finally {
if (ins != null) {
ins.close(); //關閉流
}
}
}
var result = sb.toString();
var obj = JSON.parse(result);
var list = obj.newslist[0];
//獲取周幾
var week = list.weekday + "";
//是否爲週一
var isMonday = week == 1;
//是否休息日
var is_dayoff = list.info == "雙休日";
//是否是工作日
var is_work = list.info == "工作日";
//是否爲節假日
var is_holiday = list.info == "節假日";
//日期類型
var date_type = "";
if (list.daycode == "0") {
date_type = list.info
} else if (list.daycode == "1") {
date_type = "節假日"
} else if (list.daycode == "2") {
date_type = "雙休日"
} else if (list.daycode == "3") {
date_type = "調休日"
}
//季度名稱
var quarter_name = "Q" + quarter;
//年份 - 名稱季度
var year_quarter = year + "-Q" + quarter;
//年份 - 月份
var year_month = date_value.substring(0,7);
kettle 操作
1. 生成記錄
2.增加序列
3. 使 js 文件中的變量名跟序列的變量名對應上,並修改url
4.測試腳本文件並預覽
5.獲取需要的字段
6.使用excel輸出 指定輸出路徑
7. 使用excel輸出 指定輸出字段
8. 執行 excel 文件內容如下(用的是19年的數據)
最後
如果需要節假日表excel文件可以在評論區留言!!! 本人看到會及時回覆!!!