Commit 33cb000e0dbb47abe60cdf8cee793e4ff2cb7914

Authored by 潘钊
2 parents 0e833200 5e947ca0

Merge branch 'minhang' into pudong

Showing 53 changed files with 3616 additions and 2873 deletions
src/main/java/com/bsth/Application.java
... ... @@ -2,10 +2,6 @@ package com.bsth;
2 2  
3 3 import com.fasterxml.jackson.databind.ObjectMapper;
4 4 import com.fasterxml.jackson.databind.SerializationFeature;
5   -
6   -import java.util.concurrent.Executors;
7   -import java.util.concurrent.ScheduledExecutorService;
8   -
9 5 import org.springframework.boot.SpringApplication;
10 6 import org.springframework.boot.autoconfigure.SpringBootApplication;
11 7 import org.springframework.boot.builder.SpringApplicationBuilder;
... ... @@ -13,10 +9,13 @@ import org.springframework.boot.context.web.SpringBootServletInitializer;
13 9 import org.springframework.context.annotation.Bean;
14 10 import org.springframework.context.annotation.Primary;
15 11  
  12 +import java.util.concurrent.Executors;
  13 +import java.util.concurrent.ScheduledExecutorService;
  14 +
16 15 @SpringBootApplication
17 16 public class Application extends SpringBootServletInitializer {
18 17  
19   - public static ScheduledExecutorService mainServices = Executors.newScheduledThreadPool(12);
  18 + public static ScheduledExecutorService mainServices = Executors.newScheduledThreadPool(13);
20 19  
21 20 @Override
22 21 protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
... ...
src/main/java/com/bsth/controller/DownloadController.java
... ... @@ -100,4 +100,29 @@ public class DownloadController
100 100 os.close();
101 101 file.delete();
102 102 }
  103 +
  104 +
  105 + @RequestMapping("downloadModel")
  106 + public void downloadModel(HttpServletResponse response,String fileName)
  107 + throws IOException {
  108 +// String fileNames=URLDecoder.decode(fileName,"UTF-8");
  109 + fileName =fileName + ".xls";
  110 + String moudelPath = this.getClass().getResource("/").getPath()+ "static/pages/forms/export/"+fileName;
  111 + File file = new File(moudelPath);// path是根据日志路径和文件名拼接出来的
  112 +// String filename = file.getName();// 获取日志文件名称
  113 + InputStream fis = new BufferedInputStream(new FileInputStream(moudelPath));
  114 + byte[] buffer = new byte[fis.available()];
  115 + fis.read(buffer);
  116 + fis.close();
  117 + response.reset();
  118 + response.addHeader("Content-Disposition", "attachment;filename=" + new String(fileName.replaceAll(" ", "").getBytes("utf-8"),"iso8859-1"));
  119 + response.addHeader("Content-Length", "" + file.length());
  120 + OutputStream os = new BufferedOutputStream(response.getOutputStream());
  121 + response.setContentType("application/octet-stream");
  122 + os.write(buffer);// 输出文件
  123 + os.flush();
  124 + os.close();
  125 + }
  126 +
  127 +
103 128 }
... ...
src/main/java/com/bsth/controller/oil/DlbController.java
1 1 package com.bsth.controller.oil;
2 2  
  3 +import java.text.SimpleDateFormat;
  4 +import java.util.ArrayList;
3 5 import java.util.HashMap;
  6 +import java.util.Iterator;
4 7 import java.util.List;
5 8 import java.util.Map;
6 9  
... ... @@ -17,6 +20,7 @@ import com.bsth.controller.BaseController;
17 20 import com.bsth.entity.oil.Dlb;
18 21 import com.bsth.entity.oil.Ylb;
19 22 import com.bsth.service.oil.DlbService;
  23 +import com.bsth.util.ReportUtils;
20 24 import com.google.common.base.Splitter;
21 25  
22 26 @RestController
... ... @@ -124,4 +128,57 @@ public class DlbController extends BaseController<Dlb, Integer>{
124 128 }
125 129 return list;
126 130 }
  131 +
  132 +
  133 + @RequestMapping(value = "/listExport",method = RequestMethod.POST)
  134 + public List<Map<String, Object>> listExport(@RequestParam Map<String, Object> map){
  135 + SimpleDateFormat sdfMonth = new SimpleDateFormat("yyyy-MM-dd"),
  136 + sdfSimple = new SimpleDateFormat("yyyyMMdd");
  137 + List<Iterator<?>> listI = new ArrayList<Iterator<?>>();
  138 + ReportUtils ee = new ReportUtils();
  139 + List<Dlb> dlb= service.listDlb(map);
  140 +// (new CustomerSpecs<Ylb>(map)).iterator();
  141 + List<Map<String, Object>> resList = new ArrayList<Map<String, Object>>();
  142 + for (Dlb y : dlb) {
  143 + Map<String, Object> m = new HashMap<String, Object>();
  144 + m.put("rq", y.getRq());
  145 + m.put("gsname",y.getGsname() );
  146 + m.put("xlname", y.getXlname());
  147 + m.put("nbbm", y.getNbbm());
  148 + m.put("jsy", y.getJsy());
  149 + m.put("cdl", y.getCdl());
  150 + m.put("czcd", y.getCzcd()+"%");
  151 + m.put("jzcd", y.getJzcd()+"%");
  152 + m.put("hd", y.getHd());
  153 + String shyy ="无";
  154 + if(y.getShyy()!=null){
  155 + if(shyy.equals("1")){shyy="票务用油";}
  156 + else if(shyy.equals("2")){shyy="保养用油";}
  157 + else if(shyy.equals("3")){shyy="报废车用油";}
  158 + else if(shyy.equals("4")){shyy="其它用油";}
  159 + else if(shyy.equals("5")){shyy="人保部";}
  160 + else if(shyy.equals("6")){shyy="车队";}
  161 + else if(shyy.equals("7")){shyy="车间(高保)";}
  162 + else if(shyy.equals("8")){shyy="车间(小修)";}
  163 + else{shyy ="无";}
  164 + }
  165 + m.put("shyy", shyy);
  166 + m.put("sh", y.getSh());
  167 + m.put("zlc", y.getZlc());
  168 + m.put("bglyh", y.getBglyh());
  169 + resList.add(m);
  170 + }
  171 + try {
  172 + listI.add(resList.iterator());
  173 + String path = this.getClass().getResource("/").getPath()+"static/pages/forms/";
  174 + ee.excelReplace(listI, new Object[] { map }, path+"mould/listDl.xls",
  175 + path+"export/"+map.get("rq").toString()+ "进出场存电量.xls");
  176 + } catch (Exception e) {
  177 + e.printStackTrace();
  178 + }
  179 +
  180 + return resList;
  181 +
  182 + }
  183 +
127 184 }
... ...
src/main/java/com/bsth/controller/realcontrol/LineConfigController.java
... ... @@ -14,39 +14,91 @@ public class LineConfigController extends BaseController&lt;LineConfig, Integer&gt;{
14 14  
15 15 @Autowired
16 16 LineConfigService lineConfigService;
17   -
  17 +
  18 + /**
  19 + * 检查是否有线路配置信息
  20 + * @param codeArray
  21 + * @return
  22 + */
18 23 @RequestMapping("/check")
19 24 public Map<String, Object> check(@RequestParam String[] codeArray){
20 25 return lineConfigService.check(codeArray);
21 26 }
22   -
  27 +
  28 + /**
  29 + * 初始化线路配置
  30 + * @param lineCode
  31 + * @return
  32 + * @throws Exception
  33 + */
23 34 @RequestMapping("/init/{lineCode}")
24 35 public Integer init(@PathVariable("lineCode") String lineCode) throws Exception{
25 36 return lineConfigService.init(lineCode);
26 37 }
27   -
  38 +
  39 + /**
  40 + * 修改班次刷新时间
  41 + * @param time
  42 + * @param lineCode
  43 + * @return
  44 + */
28 45 @RequestMapping(value = "/editTime", method = RequestMethod.POST)
29 46 public Map<String, Object> editStartOptTime(@RequestParam String time,@RequestParam String lineCode){
30 47 return lineConfigService.editStartOptTime(time, lineCode);
31 48 }
32   -
  49 +
  50 + /**
  51 + * 修改出场时间类型
  52 + * @param lineCode
  53 + * @param type
  54 + * @return
  55 + */
33 56 @RequestMapping(value = "/editOutTimeType", method = RequestMethod.POST)
34   - public Map<String, Object> editOutTimeType(@RequestParam String lineCode, @RequestParam int type){
35   - return lineConfigService.editOutTimeType(lineCode, type);
  57 + public Map<String, Object> editOutTimeType(@RequestParam String lineCode, @RequestParam int type,@RequestParam String parkCode,@RequestParam String stationCode){
  58 + return lineConfigService.editOutTimeType(lineCode, type, parkCode, stationCode);
36 59 }
37 60  
  61 + /**
  62 + * 启用原线路回场
  63 + * @param lineCode
  64 + * @param enable
  65 + * @return
  66 + */
38 67 @RequestMapping(value = "/enableInParkForSource", method = RequestMethod.POST)
39 68 public Map<String, Object> enableInParkForSource(@RequestParam String lineCode, @RequestParam int enable){
40 69 return lineConfigService.enableInParkForSource(lineCode, enable);
41 70 }
42 71  
  72 + /**
  73 + * 根据线路编码获取配置信息
  74 + * @param lineCode
  75 + * @return
  76 + */
43 77 @RequestMapping(value = "/getByLineCode")
44 78 public LineConfig getByLineCode(@RequestParam String lineCode){
45 79 return lineConfigService.getByLineCode(lineCode);
46 80 }
47 81  
  82 + /**
  83 + * 到站缓冲区设置
  84 + * @param lineCode
  85 + * @param field
  86 + * @param value
  87 + * @return
  88 + */
48 89 @RequestMapping(value = "/bufferTimeDiff", method = RequestMethod.POST)
49 90 public Map<String, Object> bufferTimeDiff(@RequestParam String lineCode, @RequestParam String field,@RequestParam String value){
50 91 return lineConfigService.bufferTimeDiff(lineCode, field, value);
51 92 }
  93 +
  94 + /**
  95 + * 应急停靠设置
  96 + * @param map
  97 + * @return
  98 + */
  99 + @RequestMapping(value = "/yjtkSet", method = RequestMethod.POST)
  100 + public Map<String, Object> yjtkSet(@RequestParam Map<String, String> map){
  101 + //System.out.println(map);
  102 + return lineConfigService.yjtkSet(map);
  103 + }
52 104 }
... ...
src/main/java/com/bsth/controller/realcontrol/ScheduleRealInfoController.java
1 1 package com.bsth.controller.realcontrol;
2 2  
3 3 import com.alibaba.fastjson.JSONArray;
  4 +import com.bsth.common.ResponseCode;
4 5 import com.bsth.controller.BaseController;
5 6 import com.bsth.controller.realcontrol.dto.ChangePersonCar;
6 7 import com.bsth.controller.realcontrol.dto.DfsjChange;
... ... @@ -486,4 +487,33 @@ public class ScheduleRealInfoController extends BaseController&lt;ScheduleRealInfo,
486 487 public Map<String, Object> lpChangeMulti(@RequestParam String leftIdx, @RequestParam String rightIdx,@RequestParam int type){
487 488 return scheduleRealInfoService.lpChangeMulti(leftIdx, rightIdx, type);
488 489 }
  490 +
  491 + /**
  492 + * 删除当日实际排班
  493 + * @return
  494 + */
  495 + @RequestMapping(value = "deleteRealSchedule", method = RequestMethod.POST)
  496 + public Map<String, Object> deleteRealSchedule(@RequestParam String lineCode){
  497 + return dayOfSchedule.deleteRealSchedule(lineCode);
  498 + }
  499 +
  500 + /**
  501 + * 从计划表重新加载当日排班
  502 + * @param lineCode
  503 + * @return
  504 + */
  505 + @RequestMapping(value = "reLoadRealSchedule", method = RequestMethod.POST)
  506 + public Map<String, Object> reLoadRealSchedule(@RequestParam String lineCode){
  507 + Map<String, Object> rs = new HashMap<>();
  508 + List<ScheduleRealInfo> list = dayOfSchedule.findByLineCode(lineCode);
  509 + if(list != null && list.size() > 0){
  510 + rs.put("status", ResponseCode.ERROR);
  511 + rs.put("msg", "失败," + list.get(0).getXlName() + "当日存在实际排班,无法重新加载。");
  512 + return rs;
  513 + }
  514 +
  515 + int code = dayOfSchedule.reloadSch(lineCode);
  516 + rs.put("status", code==0? ResponseCode.SUCCESS: ResponseCode.ERROR);
  517 + return rs;
  518 + }
489 519 }
... ...
src/main/java/com/bsth/data/LineConfigData.java
1 1 package com.bsth.data;
2 2  
  3 +import com.bsth.Application;
3 4 import com.bsth.entity.Line;
4 5 import com.bsth.entity.realcontrol.D80ReplyTemp;
5 6 import com.bsth.entity.realcontrol.LineConfig;
6   -import com.bsth.oplog.normal.OpLogger;
  7 +import com.bsth.entity.realcontrol.ScheduleRealInfo;
7 8 import com.bsth.service.LineService;
8 9 import com.bsth.service.realcontrol.LineConfigService;
9 10 import org.slf4j.Logger;
... ... @@ -14,101 +15,151 @@ import org.springframework.core.annotation.Order;
14 15 import org.springframework.stereotype.Component;
15 16  
16 17 import java.util.*;
  18 +import java.util.concurrent.TimeUnit;
17 19  
18 20 /**
19   - *
  21 + * @author PanZhao
20 22 * @ClassName: LineConfigData
21 23 * @Description: TODO(线路配置数据管理)
22   - * @author PanZhao
23 24 * @date 2016年8月15日 下午2:50:19
24   - *
25 25 */
26 26 @Component
27 27 @Order(value = 2)
28 28 public class LineConfigData implements CommandLineRunner {
29   -
30   - Logger logger = LoggerFactory.getLogger(this.getClass());
31   -
32   - // 线路编码和配置
33   - private Map<String, LineConfig> lineConfMap;
34   -
35   - @Autowired
36   - LineConfigService lineConfigService;
37   -
38   - @Autowired
39   - LineService lineService;
40   -
41   - @Autowired
42   - OpLogger opLog;
43   -
44   - @Override
45   - public void run(String... arg0) throws Exception {
46   - lineConfMap = new HashMap<>();
47   -
48   - Iterator<LineConfig> itr = lineConfigService.findAll().iterator();
49   - while (itr.hasNext())
50   - setBuffer(itr.next());
51   -
52   - opLog.info("Line_config_data");
53   - }
54   -
55   - public LineConfig get(String lineCode){
56   - return lineConfMap.get(lineCode);
57   - }
58   -
59   - public Collection<LineConfig> getAll(){
60   - return lineConfMap.values();
61   - }
62   -
63   - public void set(LineConfig conf){
64   - lineConfigService.save(conf);
65   - setBuffer(conf);
66   - }
67   -
68   - public void setBuffer(LineConfig conf){
69   - lineConfMap.put(conf.getLine().getLineCode(), conf);
70   - }
71   -
72   - /**
73   - *
74   - * @Title: init
75   - * @Description: TODO(初始化配置信息)
76   - */
77   - public void init(String lineCode) throws Exception{
78   - LineConfig conf = new LineConfig();
79   - //线路
80   - Line line = lineService.findByLineCode(lineCode);
81   - if(null == line)
82   - throw new NullPointerException("异常的lineCode");
83   -
84   - conf.setLine(line);
85   - //开始运营时间
86   - conf.setStartOpt("02:00");
87   - //托管状态
88   - conf.setTrust(true);
89   - //出场时间类型
90   - conf.setOutConfig(0);
91   - //进场时间类型
92   - //conf.setInConfig(1);
93   - //短语模板
94   - conf.setPhraseTemps("");
95   - //调度指令模板
96   - conf.setSchDirectiveTemp("");
97   -
98   - //80指令回复
99   - D80ReplyTemp t50 = new D80ReplyTemp(conf, (short)0x50, "同意,回电详谈", "不同意,请回电")
100   - ,t60 = new D80ReplyTemp(conf, (short)0x60, "同意,回电详谈", "不同意,请回电")
101   - ,tA2 = new D80ReplyTemp(conf, (short)0xA2, "同意,回电详谈", "不同意,请回电")
102   - ,t70 = new D80ReplyTemp(conf, (short)0x70, "同意,回电详谈", "不同意,请回电")
103   - ,t11 = new D80ReplyTemp(conf, (short)0x11, "同意,回电详谈", "不同意,请回电");
104   -
105   - Set<D80ReplyTemp> temps = conf.getD80Temps();
106   - temps.add(t50);
107   - temps.add(t60);
108   - temps.add(tA2);
109   - temps.add(t70);
110   - temps.add(t11);
111   -
112   - set(conf);
113   - }
  29 +
  30 + static Logger logger = LoggerFactory.getLogger(LineConfigData.class);
  31 +
  32 + // 线路编码和配置
  33 + private Map<String, LineConfig> lineConfMap;
  34 +
  35 + @Autowired
  36 + LineConfigService lineConfigService;
  37 +
  38 + @Autowired
  39 + LineService lineService;
  40 +
  41 + //入库缓冲
  42 + static LinkedList<LineConfig> saveBuffers = new LinkedList<>();
  43 +
  44 + @Autowired
  45 + LineConfigPersistThread configPersistThread;
  46 +
  47 + @Override
  48 + public void run(String... arg0) throws Exception {
  49 + lineConfMap = new HashMap<>();
  50 +
  51 + Iterator<LineConfig> itr = lineConfigService.findAll().iterator();
  52 + while (itr.hasNext())
  53 + setBuffer(itr.next());
  54 +
  55 + //异步入库
  56 + Application.mainServices.scheduleWithFixedDelay(configPersistThread, 60, 60, TimeUnit.SECONDS);
  57 + }
  58 +
  59 + /**
  60 + * 起点发出,应用缓冲区设置参数
  61 + * @param sch
  62 + * @param timestamp
  63 + * @return
  64 + */
  65 + public long applyOut(ScheduleRealInfo sch, Long timestamp) {
  66 + LineConfig config = lineConfMap.get(sch.getXlBm());
  67 + int diff = sch.getXlDir()=="0"?config.getUpOutDiff():config.getDownOutDiff();
  68 + return timestamp - (diff * 1000);
  69 + }
  70 +
  71 + /**
  72 + * 终点到达,应用缓冲区设置参数
  73 + * @param sch
  74 + * @param timestamp
  75 + * @return
  76 + */
  77 + public long applyIn(ScheduleRealInfo sch, Long timestamp){
  78 + LineConfig config = lineConfMap.get(sch.getXlBm());
  79 + int diff = sch.getXlDir()=="0"?config.getUpInDiff():config.getDownInDiff();
  80 + return timestamp - (diff * 1000);
  81 + }
  82 +
  83 + @Component
  84 + private static class LineConfigPersistThread extends Thread {
  85 +
  86 + @Autowired
  87 + LineConfigService lineConfigService;
  88 +
  89 + @Override
  90 + public void run() {
  91 + LineConfig config;
  92 + for (int i = 0; i < 800; i++) {
  93 + config = saveBuffers.poll();
  94 + if (config == null)
  95 + break;
  96 +
  97 + try {
  98 + lineConfigService.save(config);
  99 + }catch (Exception e){
  100 + logger.error("", e);
  101 + }
  102 + }
  103 + }
  104 + }
  105 +
  106 + public LineConfig get(String lineCode) {
  107 + return lineConfMap.get(lineCode);
  108 + }
  109 +
  110 + public Collection<LineConfig> getAll() {
  111 + return lineConfMap.values();
  112 + }
  113 +
  114 + public void set(LineConfig conf) {
  115 + //lineConfigService.save(conf);
  116 + saveBuffers.add(conf);
  117 + setBuffer(conf);
  118 + }
  119 +
  120 + public void setBuffer(LineConfig conf) {
  121 + lineConfMap.put(conf.getLine().getLineCode(), conf);
  122 + }
  123 +
  124 + /**
  125 + * @Title: init
  126 + * @Description: TODO(初始化配置信息)
  127 + */
  128 + public void init(String lineCode) throws Exception {
  129 + LineConfig conf = new LineConfig();
  130 + //线路
  131 + Line line = lineService.findByLineCode(lineCode);
  132 + if (null == line)
  133 + throw new NullPointerException("异常的lineCode");
  134 +
  135 + conf.setLine(line);
  136 + //开始运营时间
  137 + conf.setStartOpt("02:00");
  138 + //托管状态
  139 + conf.setTrust(true);
  140 + //出场时间类型
  141 + conf.setOutConfig(0);
  142 + //进场时间类型
  143 + //conf.setInConfig(1);
  144 + //短语模板
  145 + conf.setPhraseTemps("");
  146 + //调度指令模板
  147 + conf.setSchDirectiveTemp("");
  148 +
  149 + //80指令回复 闵行用
  150 + D80ReplyTemp t50 = new D80ReplyTemp(conf, (short) 0x50, "同意,回电详谈", "不同意,请回电"), t60 = new D80ReplyTemp(conf, (short) 0x60, "同意,回电详谈", "不同意,请回电"), tA2 = new D80ReplyTemp(conf, (short) 0xA2, "同意,回电详谈", "不同意,请回电"), t70 = new D80ReplyTemp(conf, (short) 0x70, "同意,回电详谈", "不同意,请回电"), t11 = new D80ReplyTemp(conf, (short) 0x11, "同意,回电详谈", "不同意,请回电");
  151 +
  152 + //应急停靠默认值
  153 + conf.setYjtkStart("00:00");
  154 + conf.setYjtkEnd("23:59");
  155 +
  156 + Set<D80ReplyTemp> temps = conf.getD80Temps();
  157 + temps.add(t50);
  158 + temps.add(t60);
  159 + temps.add(tA2);
  160 + temps.add(t70);
  161 + temps.add(t11);
  162 +
  163 + set(conf);
  164 + }
114 165 }
... ...
src/main/java/com/bsth/data/gpsdata/arrival/handlers/InOutStationSignalHandle.java
... ... @@ -135,8 +135,11 @@ public class InOutStationSignalHandle extends SignalHandle{
135 135 if(StringUtils.isNotEmpty(sch.getFcsjActual()))
136 136 return;
137 137  
  138 + //应用到离站缓冲区设置参数
  139 + long rsT = lineConfigData.applyOut(sch, gps.getTimestamp());
  140 +
138 141 //实发时间
139   - sch.setFcsjActualAll(gps.getTimestamp());
  142 + sch.setFcsjActualAll(rsT);
140 143 //通知客户端
141 144 sendUtils.sendFcsj(sch);
142 145 //持久化
... ... @@ -215,7 +218,10 @@ public class InOutStationSignalHandle extends SignalHandle{
215 218 if(StringUtils.isNotEmpty(sch.getZdsjActual()))
216 219 return;
217 220  
218   - sch.setZdsjActualAll(gps.getTimestamp());
  221 + //应用到离站缓冲区设置参数
  222 + long rsT = lineConfigData.applyIn(sch, gps.getTimestamp());
  223 +
  224 + sch.setZdsjActualAll(rsT);
219 225 //已完成班次数
220 226 int doneSum = dayOfSchedule.doneSum(sch.getClZbh());
221 227 ScheduleRealInfo next = dayOfSchedule.next(sch);
... ...
src/main/java/com/bsth/data/schedule/DayOfSchedule.java
... ... @@ -3,6 +3,7 @@ package com.bsth.data.schedule;
3 3 import com.alibaba.fastjson.JSON;
4 4 import com.alibaba.fastjson.JSONArray;
5 5 import com.bsth.Application;
  6 +import com.bsth.common.ResponseCode;
6 7 import com.bsth.data.BasicData;
7 8 import com.bsth.data.LineConfigData;
8 9 import com.bsth.data.directive.DirectivesPstThread;
... ... @@ -18,7 +19,6 @@ import com.bsth.util.BatchSaveUtils;
18 19 import com.bsth.util.DateUtils;
19 20 import com.bsth.websocket.handler.SendUtils;
20 21 import com.google.common.collect.ArrayListMultimap;
21   -import com.google.common.collect.TreeMultimap;
22 22 import org.apache.commons.lang3.StringUtils;
23 23 import org.joda.time.format.DateTimeFormat;
24 24 import org.joda.time.format.DateTimeFormatter;
... ... @@ -56,7 +56,7 @@ public class DayOfSchedule implements CommandLineRunner {
56 56 private static Map<Long, ScheduleRealInfo> id2SchedulMap;
57 57  
58 58 // 车辆和排班起终点站对照(包括进出的停车场,区间起终点)
59   - private static TreeMultimap<String, String> nbbm2SEStationMap;
  59 + //private static TreeMultimap<String, String> nbbm2SEStationMap;
60 60  
61 61 //车辆 ——> 当前执行班次
62 62 private static Map<String, ScheduleRealInfo> carExecutePlanMap;
... ... @@ -99,7 +99,7 @@ public class DayOfSchedule implements CommandLineRunner {
99 99 pstBuffer = new LinkedList<>();
100 100 schFCSJComparator = new ScheduleComparator.FCSJ();
101 101 currSchDateMap = new HashMap<>();
102   - nbbm2SEStationMap = TreeMultimap.create();
  102 + //nbbm2SEStationMap = TreeMultimap.create();
103 103 carExecutePlanMap = new HashMap<>();
104 104  
105 105 schedulePlanMap = new HashMap<>();
... ... @@ -244,6 +244,10 @@ public class DayOfSchedule implements CommandLineRunner {
244 244 return 0;
245 245 }
246 246  
  247 + public int reloadSch(String lineCode){
  248 + return reloadSch(lineCode, calcSchDate(lineCode), true);
  249 + }
  250 +
247 251 /**
248 252 * @Title: searchAllCars
249 253 * @Description: TODO(搜索班次集合中的车辆)
... ... @@ -480,9 +484,9 @@ public class DayOfSchedule implements CommandLineRunner {
480 484 return id2SchedulMap.get(id);
481 485 }
482 486  
483   - public Set<String> getSEStationList(String nbbm) {
  487 + /* public Set<String> getSEStationList(String nbbm) {
484 488 return nbbm2SEStationMap.get(nbbm);
485   - }
  489 + }*/
486 490  
487 491 /**
488 492 * @Title: next
... ... @@ -610,8 +614,8 @@ public class DayOfSchedule implements CommandLineRunner {
610 614  
611 615 String nbbm = sch.getClZbh();
612 616 nbbmScheduleMap.put(nbbm, sch);
613   - nbbm2SEStationMap.put(nbbm, sch.getQdzCode());
614   - nbbm2SEStationMap.put(nbbm, sch.getZdzCode());
  617 + //nbbm2SEStationMap.put(nbbm, sch.getQdzCode());
  618 + //nbbm2SEStationMap.put(nbbm, sch.getZdzCode());
615 619  
616 620 //主键索引
617 621 id2SchedulMap.put(sch.getId(), sch);
... ... @@ -630,9 +634,6 @@ public class DayOfSchedule implements CommandLineRunner {
630 634 //return sch;
631 635 }
632 636  
633   -// public void calcQdzTimePlan(String nbbm){
634   -// schAttrCalculator.calcQdzTimePlan(nbbmScheduleMap.get(nbbm));
635   -// }
636 637  
637 638 public List<ScheduleRealInfo> updateQdzTimePlan(String nbbm) {
638 639 Collections.sort(nbbmScheduleMap.get(nbbm), schFCSJComparator);
... ... @@ -640,27 +641,6 @@ public class DayOfSchedule implements CommandLineRunner {
640 641 }
641 642  
642 643 /**
643   - *
644   - * @Title: nextAll
645   - * @Description: TODO(之后的所有班次)
646   - */
647   -/* public List<ScheduleRealInfo> nextAll(ScheduleRealInfo sch) {
648   - List<ScheduleRealInfo> list = nbbmScheduleMap.get(sch.getClZbh());
649   - // 排序
650   - Collections.sort(list, schFCSJComparator);
651   -
652   - List<ScheduleRealInfo> rs = new ArrayList<>();
653   - ScheduleRealInfo temp;
654   - for (int i = 0; i < list.size() - 1; i++) {
655   - temp = list.get(i);
656   - if(temp.getFcsjT() > sch.getFcsjT())
657   - rs.add(temp);
658   -
659   - }
660   - return rs;
661   - }*/
662   -
663   - /**
664 644 * @Title: doneSum
665 645 * @Description: TODO(已完成班次总数)
666 646 */
... ... @@ -828,8 +808,8 @@ public class DayOfSchedule implements CommandLineRunner {
828 808  
829 809 sch.setClZbh(newClZbh);
830 810 nbbmScheduleMap.put(newClZbh, sch);
831   - nbbm2SEStationMap.put(newClZbh, sch.getQdzCode());
832   - nbbm2SEStationMap.put(newClZbh, sch.getZdzCode());
  811 + //nbbm2SEStationMap.put(newClZbh, sch.getQdzCode());
  812 + //nbbm2SEStationMap.put(newClZbh, sch.getZdzCode());
833 813  
834 814 //重新计算班次应到时间
835 815 ups.addAll(updateQdzTimePlan(oldClzbh));
... ... @@ -876,43 +856,50 @@ public class DayOfSchedule implements CommandLineRunner {
876 856 }
877 857  
878 858 /**
879   - * 获取班次的计划停站时间
880   - * @param sch
  859 + * 删除实际排班
  860 + * @param lineCode
881 861 * @return
  862 + */
  863 + public Map<String, Object> deleteRealSchedule(String lineCode) {
  864 + Map<String, Object> rs = new HashMap<>();
882 865  
883   - public int stopTimePlan(Object task) {
  866 + try {
  867 + String rq = currSchDateMap.get(lineCode);
  868 + if(StringUtils.isNotEmpty(rq)){
  869 + //解除gps 和班次之间的关联
  870 + List<ScheduleRealInfo> unions = calcUnion(findByLineCode(lineCode), carExecutePlanMap.values());
  871 + for(ScheduleRealInfo sch : unions){
  872 + removeExecPlan(sch.getClZbh());
  873 + }
884 874  
885   - ScheduleRealInfo sch = prev((ScheduleRealInfo) task);
  875 + //删除班次数据
  876 + removeRealSch(lineCode, rq);
  877 + //删除相关班次修正记录
  878 + }
  879 + rs.put("status", ResponseCode.SUCCESS);
  880 + }catch (Exception e){
  881 + logger.error("", e);
  882 + rs.put("status", ResponseCode.ERROR);
  883 + }
886 884  
887   - sch.getzdsj
888   - return -1;
889   - }*/
  885 + return rs;
  886 + }
890 887  
891 888 /**
  889 + * 计算并集
892 890 *
893   - * @Title: linkToSchPlan
894   - * @Description: TODO(车辆关联到班次)
  891 + * @param all
  892 + * @param sub
  893 + * @return
895 894 */
896   -/* public void linkToSchPlan(String nbbm) {
897   - //当前GPS状态
898   - GpsEntity gps = gpsRealData.get(BasicData.deviceId2NbbmMap.inverse().get(nbbm));
899   - if(null == gps)
900   - return;
901   -
902   - //班次集合
903   - List<ScheduleRealInfo> schArr = nbbmScheduleMap.get(nbbm);
904   -
905   - for(ScheduleRealInfo sch : schArr){
906   - if(sch.getStatus() == 2)
907   - continue;
908   - if(sch.isDestroy())
909   - continue;
910   - if(!sch.getXlBm().equals(gps.getLineId())
911   - || Integer.parseInt(sch.getXlDir()) != gps.getUpDown().intValue())
912   - continue;
913   -
914   - addExecPlan(sch);
915   - break;
916   - }
917   - }*/
  895 + public List<ScheduleRealInfo> calcUnion(Collection<ScheduleRealInfo> c1, Collection<ScheduleRealInfo> c2) {
  896 + List<ScheduleRealInfo> rs = new ArrayList<>();
  897 +
  898 + for (ScheduleRealInfo sch : c1) {
  899 + if(c2.contains(sch)){
  900 + rs.add(sch);
  901 + }
  902 + }
  903 + return rs;
  904 + }
918 905 }
919 906 \ No newline at end of file
... ...
src/main/java/com/bsth/data/schedule/thread/ScheduleRefreshThread.java
... ... @@ -2,7 +2,6 @@ package com.bsth.data.schedule.thread;
2 2  
3 3 import com.bsth.data.BasicData;
4 4 import com.bsth.data.LineConfigData;
5   -import com.bsth.data.arrival.ArrivalData_GPS;
6 5 import com.bsth.data.directive.DayOfDirectives;
7 6 import com.bsth.data.pilot80.PilotReport;
8 7 import com.bsth.data.schedule.DayOfSchedule;
... ... @@ -29,8 +28,8 @@ public class ScheduleRefreshThread extends Thread{
29 28 @Autowired
30 29 DayOfSchedule dayOfSchedule;
31 30  
32   - @Autowired
33   - ArrivalData_GPS arrivalData;
  31 + /*@Autowired
  32 + ArrivalData_GPS arrivalData;*/
34 33  
35 34 @Autowired
36 35 LineConfigData lineConfs;
... ... @@ -59,7 +58,7 @@ public class ScheduleRefreshThread extends Thread{
59 58  
60 59 logger.info(lineCode + "开始翻班, " + currSchDate);
61 60 //清除进出站数据
62   - arrivalData.clearRAMData(lineCode);
  61 + //arrivalData.clearRAMData(lineCode);
63 62 //清除指令数据
64 63 Set<String> cars = dayOfSchedule.findCarByLineCode(lineCode);
65 64 for(String car : cars)
... ...
src/main/java/com/bsth/entity/realcontrol/LineConfig.java
... ... @@ -50,6 +50,9 @@ public class LineConfig {
50 50 /** 出站既出场 对应的停车场 */
51 51 private String twinsPark;
52 52  
  53 + /** 出站既出场 对应的起点站 */
  54 + private String twinsStation;
  55 +
53 56 /** 短语模板 , 号分隔多个 */
54 57 private String phraseTemps;
55 58  
... ... @@ -268,4 +271,12 @@ public class LineConfig {
268 271 public void setEnableYjtk(boolean enableYjtk) {
269 272 this.enableYjtk = enableYjtk;
270 273 }
  274 +
  275 + public String getTwinsStation() {
  276 + return twinsStation;
  277 + }
  278 +
  279 + public void setTwinsStation(String twinsStation) {
  280 + this.twinsStation = twinsStation;
  281 + }
271 282 }
... ...
src/main/java/com/bsth/repository/oil/DlbRepository.java
... ... @@ -22,8 +22,9 @@ public interface DlbRepository extends BaseRepository&lt;Dlb, Integer&gt;{
22 22 @Modifying
23 23 @Query(value="SELECT a.* FROM bsth_c_dlb a where to_days(?1)-to_days(a.rq)=1"
24 24 + " and jcsx=(select max(b.jcsx) from bsth_c_dlb b where a.nbbm=b.nbbm and "
25   - + " to_days(?1)-to_days(b.rq)=1 )",nativeQuery=true)
26   - List<Dlb> obtainYlbefore(String rq);
  25 + + " to_days(?1)-to_days(b.rq)=1 ) and ssgsdm like %?2% and fgsdm like %?3% and "
  26 + + " xlbm like %?4% and nbbm like %?5%",nativeQuery=true)
  27 + List<Dlb> obtainYlbefore(String rq,String gsdm,String fgsdm,String xlbm,String nbbm);
27 28 /**
28 29 * 当天DLB信息
29 30 * @param rq
... ... @@ -31,8 +32,10 @@ public interface DlbRepository extends BaseRepository&lt;Dlb, Integer&gt;{
31 32 */
32 33 @Transactional
33 34 @Modifying
34   - @Query(value="SELECT * FROM bsth_c_dlb where to_days(?)=to_days(rq)",nativeQuery=true)
35   - List<Dlb> obtainDl(String rq);
  35 + @Query(value="SELECT * FROM bsth_c_dlb where to_days(?1)=to_days(rq) and ssgsdm like %?2% "
  36 + + " and fgsdm like %?3%"
  37 + + " and xlbm like %?4% and nbbm like %?5% order by ?6 asc",nativeQuery=true)
  38 + List<Dlb> obtainDl(String rq,String gsbm,String fgsdm,String xlbm,String nbbm,String px);
36 39  
37 40 @Query(value="select s from Dlb s "
38 41 + " where to_days(?1)=to_days(s.rq) "
... ...
src/main/java/com/bsth/service/oil/impl/DlbServiceImpl.java
... ... @@ -26,7 +26,9 @@ import org.springframework.stereotype.Service;
26 26 import com.alibaba.fastjson.JSONArray;
27 27 import com.alibaba.fastjson.JSONObject;
28 28 import com.bsth.common.ResponseCode;
  29 +import com.bsth.data.BasicData;
29 30 import com.bsth.entity.Cars;
  31 +import com.bsth.entity.Line;
30 32 import com.bsth.entity.oil.Cdl;
31 33 import com.bsth.entity.oil.Cyl;
32 34 import com.bsth.entity.oil.Dlb;
... ... @@ -97,13 +99,13 @@ public class DlbServiceImpl extends BaseServiceImpl&lt;Dlb,Integer&gt; implements DlbS
97 99 // TODO Auto-generated method stub
98 100 Map<String, Object> newMap=new HashMap<String,Object>();
99 101 //当天DLB信息
100   - List<Dlb> dlList=repository.obtainDl(rq);
  102 + List<Dlb> dlList=repository.obtainDl(rq, gsbm, "", line, "", "nbbm");
101 103 //当天YLXXB信息
102 104 List<Ylxxb> ylxxList=ylxxbRepository.obtainYlxx(rq,1,gsbm);
103 105 //当天加电信息表
104 106 List<Jdl> jdlList=jdlRepository.JdlList(rq);
105 107 //前一天所有车辆最后进场班次信息
106   - List<Dlb> dlListBe=repository.obtainYlbefore(rq);
  108 + List<Dlb> dlListBe=repository.obtainYlbefore(rq, "", "", "", "");
107 109 List<Cdl> cdyList=cdlRepository.obtainCdl();
108 110 //从排班表中计算出行驶的总里程
109 111 List<Map<String,Object>> listpb=scheduleRealInfoService.yesterdayDataList(line,rq,"","","","");
... ... @@ -258,25 +260,48 @@ public class DlbServiceImpl extends BaseServiceImpl&lt;Dlb,Integer&gt; implements DlbS
258 260 @Override
259 261 public Map<String, Object> checkDl(Map<String, Object> map) {
260 262 Map<String, Object> newMap=new HashMap<String,Object>();
261   - String xlbm=map.get("xlbm_eq").toString();
262   - String gsbm="";
263   - if(map.get("ssgsdm_like")!=null){
264   - gsbm=map.get("ssgsdm_like").toString();
265   - }
  263 +// String xlbm="";
  264 +// if(map.get("xlbm_like")!=null){
  265 +// xlbm=map.get("xlbm_like").toString();
  266 +// }
266 267 // TODO Auto-generated method stub
  268 +
  269 + List<Cars> carsList = carsRepository.findCars();
  270 + Map<String, String> carsMap = new HashMap<String, String>();
  271 + for (int i = 0; i < carsList.size(); i++) {
  272 + Cars c = carsList.get(i);
  273 + carsMap.put(c.getInsideCode(), c.getBrancheCompanyCode()==null?"":c.getBrancheCompanyCode());
  274 + }
  275 +
267 276 try{
268 277 //获取车辆存油信息
269   -// List<Cyl> cylList=cylRepository.findAll(new CustomerSpecs<Cyl>(newMap));
  278 +
270 279 String rq=map.get("rq").toString();
271   - List<Dlb> dlbList=repository.obtainDl(rq);
272   - List<Ylxxb> ylxxbList=ylxxbRepository.obtainYlxx(rq,1,gsbm);
273   - //当天加电信息表
274   - List<Jdl> jdlList=jdlRepository.JdlList(rq);
  280 + String xlbm="";
  281 + if(map.get("xlbm_like")!=null){
  282 + xlbm= map.get("xlbm_like").toString().trim();
  283 + }
  284 + String gsbm="";
  285 + if(map.get("ssgsdm_like")!=null){
  286 + gsbm=map.get("ssgsdm_like").toString();
  287 + }
  288 + String fgsbm="";
  289 + if(map.get("fgsdm_like")!=null){
  290 + fgsbm=map.get("fgsdm_like").toString();
  291 + }
  292 + String nbbm="";
  293 + if(map.get("nbbm_eq")!=null){
  294 + nbbm=map.get("nbbm_eq").toString();
  295 + }
  296 + List<Dlb> ylListBe=repository.obtainYlbefore(rq, gsbm, "", xlbm, nbbm);
  297 +// List<Cdl> cylList=cdlRepository.obtainCdl(nbbm, gsbm);
  298 + List<Dlb> ylbList=repository.obtainDl(rq,gsbm,fgsbm,xlbm,nbbm,"nbbm");
  299 + List<Ylxxb> ylxxbList=ylxxbRepository.obtainYlxx(rq,0,gsbm);
275 300 for (int i = 0; i < ylxxbList.size(); i++) {
276 301 Boolean fage=true;
277 302 Ylxxb y1=ylxxbList.get(i);
278   - for(int y=0;y<dlbList.size();y++){
279   - Dlb y2=dlbList.get(y);
  303 + for(int y=0;y<ylbList.size();y++){
  304 + Dlb y2=ylbList.get(y);
280 305 if(y1.getNbbm().equals(y2.getNbbm())){
281 306 fage=false;
282 307 break;
... ... @@ -290,37 +315,55 @@ public class DlbServiceImpl extends BaseServiceImpl&lt;Dlb,Integer&gt; implements DlbS
290 315 t.setJsy(y1.getJsy());
291 316 t.setCdl(y1.getJzl());
292 317 t.setSsgsdm(y1.getGsdm());
293   - t.setXlbm(xlbm);
294   - repository.save(t);
295   - }
296   - }
297   -
298   - for (int i = 0; i < jdlList.size(); i++) {
299   - Boolean fage=true;
300   - Jdl y1=jdlList.get(i);
301   - for(int y=0;y<dlbList.size();y++){
302   - Dlb y2=dlbList.get(y);
303   - if(y1.getNbbm().equals(y2.getNbbm())){
304   - fage=false;
305   - break;
  318 + String fgsdm="";
  319 + if(null!=carsMap.get(y1.getNbbm())){
  320 + fgsdm=carsMap.get(y1.getNbbm());
  321 + }
  322 + t.setFgsdm(fgsdm);
  323 + t.setJcsx(1);
  324 + Line line= BasicData.nbbm2LineMap.get(y1.getNbbm());
  325 + if(null !=line){
  326 + t.setXlbm(line.getLineCode());
  327 + }else{
  328 + t.setXlbm("");
  329 + }
  330 + t.setJcsx(1);
  331 + boolean status=true;
  332 + for (int j = 0; j < ylListBe.size(); j++) {
  333 + Dlb b=ylListBe.get(j);
  334 + if(b.getNbbm().equals(y1.getNbbm())){
  335 + t.setCzcd(b.getJzcd());
  336 + status=false;
  337 + break;
  338 + }
  339 + }
  340 + /*if(status){
  341 + for (int j = 0; j < cylList.size(); j++) {
  342 + Cyl c=cylList.get(j);
  343 + if(c.getNbbm().equals(y1.getNbbm())){
  344 + t.setCzyl(c.getCyl());
  345 + cyl=c;
  346 + status=false;
  347 + break;
  348 + }
  349 + }
  350 + }*/
  351 + if(status){
  352 + t.setCzcd(0.0);
  353 + }
  354 +// double jzyl=Arith.add(t.getJzl(), t.getCzyl());
  355 + t.setJzcd(100.0);
  356 + t.setHd(0.0);
  357 + if(fgsdm.equals(fgsbm)){
  358 + repository.save(t);
306 359 }
307   - }
308   -
309   - if(fage){
310   - Dlb t=new Dlb();
311   - t.setNbbm(y1.getNbbm());
312   - t.setRq(y1.getRq());
313   -// t.setJsy(y1.getJsy());
314   - t.setCdl(y1.getJdl());
315   - t.setSsgsdm(y1.getGsBm());
316   - t.setXlbm(xlbm);
317   - repository.save(t);
318 360 }
319 361 }
320 362 newMap.put("status", ResponseCode.SUCCESS);
321 363 }catch(Exception e){
322 364 newMap.put("status", ResponseCode.ERROR);
323 365 logger.error("save erro.", e);
  366 + throw e;
324 367 }
325 368  
326 369 return newMap;
... ...
src/main/java/com/bsth/service/oil/impl/YlbServiceImpl.java
... ... @@ -701,7 +701,10 @@ public class YlbServiceImpl extends BaseServiceImpl&lt;Ylb,Integer&gt; implements YlbS
701 701 t.setJsy(y1.getJsy());
702 702 t.setJzl(y1.getJzl());
703 703 t.setSsgsdm(y1.getGsdm());
704   - String fgsdm=carsMap.get(y1.getNbbm());
  704 + String fgsdm="";
  705 + if(null !=carsMap.get(y1.getNbbm())){
  706 + fgsdm=carsMap.get(y1.getNbbm());
  707 + }
705 708 t.setFgsdm(fgsdm);
706 709 t.setJcsx(1);
707 710 Line line= BasicData.nbbm2LineMap.get(y1.getNbbm());
... ... @@ -737,7 +740,7 @@ public class YlbServiceImpl extends BaseServiceImpl&lt;Ylb,Integer&gt; implements YlbS
737 740 // double jzyl=Arith.add(t.getJzl(), t.getCzyl());
738 741 t.setJzyl(Arith.add(t.getJzl(), t.getCzyl()));
739 742 t.setYh(0.0);
740   - if(fgsdm.equals("fgsbm")){
  743 + if(fgsdm.equals(fgsbm)){
741 744 repository.save(t);
742 745 if(null!=cyl){
743 746 cyl.setCyl(Arith.add(t.getJzl(), t.getCzyl()));
... ...
src/main/java/com/bsth/service/realcontrol/LineConfigService.java
... ... @@ -13,11 +13,13 @@ public interface LineConfigService extends BaseService&lt;LineConfig, Integer&gt;{
13 13  
14 14 Map<String, Object> editStartOptTime(String time, String lineCode);
15 15  
16   - Map<String, Object> editOutTimeType(String lineCode, int type);
  16 + Map<String, Object> editOutTimeType(String lineCode, int type, String parkCode, String stationCode);
17 17  
18 18 LineConfig getByLineCode(String lineCode);
19 19  
20 20 Map<String,Object> enableInParkForSource(String lineCode, int enable);
21 21  
22 22 Map<String,Object> bufferTimeDiff(String lineCode, String field, String value);
  23 +
  24 + Map<String,Object> yjtkSet(Map<String, String> map);
23 25 }
... ...
src/main/java/com/bsth/service/realcontrol/impl/LineConfigServiceImpl.java
... ... @@ -75,17 +75,20 @@ public class LineConfigServiceImpl extends BaseServiceImpl&lt;LineConfig, Integer&gt;
75 75 }
76 76  
77 77 @Override
78   - public Map<String, Object> editOutTimeType(String lineCode, int type) {
  78 + public Map<String, Object> editOutTimeType(String lineCode, int type, String parkCode, String stationCode) {
79 79 Map<String, Object> rs = new HashMap<>();
80 80 try {
81 81 LineConfig conf = lineConfigData.get(lineCode);
82 82  
83 83 conf.setOutConfig(type);
84   - //conf.setInConfig(type);
  84 + if(type == 2){
  85 + conf.setTwinsPark(parkCode);
  86 + conf.setTwinsStation(stationCode);
  87 + }
85 88 lineConfigData.set(conf);
86 89  
87 90 rs.put("status", ResponseCode.SUCCESS);
88   - rs.put("type", type);
  91 + rs.put("conf", conf);
89 92 } catch (Exception e) {
90 93 rs.put("status", ResponseCode.ERROR);
91 94 rs.put("msg", e.getMessage());
... ... @@ -140,4 +143,40 @@ public class LineConfigServiceImpl extends BaseServiceImpl&lt;LineConfig, Integer&gt;
140 143 }
141 144 return rs;
142 145 }
  146 +
  147 + @Override
  148 + public Map<String, Object> yjtkSet(Map<String, String> map) {
  149 + String lineCode = map.get("lineCode").toString();
  150 + int enableYjtk = Integer.parseInt(map.get("enableYjtk").toString());
  151 +
  152 + Map<String, Object> rs = new HashMap<>();
  153 + try {
  154 + LineConfig conf = lineConfigData.get(lineCode);
  155 +
  156 + if(enableYjtk == 1){
  157 + String yjtkStart = map.containsKey("yjtkStart") ? map.get("yjtkStart").toString() : "00:00";
  158 + String yjtkEnd = map.containsKey("yjtkEnd") ? map.get("yjtkEnd").toString() : "23:59";
  159 + int upStopMinute = Integer.parseInt(map.get("upStopMinute").toString());
  160 + int downStopMinute = Integer.parseInt(map.get("downStopMinute").toString());
  161 +
  162 + conf.setEnableYjtk(true);
  163 + conf.setYjtkStart(yjtkStart);
  164 + conf.setYjtkEnd(yjtkEnd);
  165 + conf.setUpStopMinute(upStopMinute);
  166 + conf.setDownStopMinute(downStopMinute);
  167 + }
  168 + else
  169 + conf.setEnableYjtk(false);
  170 +
  171 + lineConfigData.set(conf);
  172 +
  173 + rs.put("status", ResponseCode.SUCCESS);
  174 + rs.put("conf", conf);
  175 + } catch (Exception e) {
  176 + rs.put("status", ResponseCode.ERROR);
  177 + rs.put("msg", e.getMessage());
  178 + logger.error("", e);
  179 + }
  180 + return rs;
  181 + }
143 182 }
... ...
src/main/java/com/bsth/service/schedule/impl/CarConfigInfoServiceImpl.java
... ... @@ -50,6 +50,8 @@ public class CarConfigInfoServiceImpl extends BServiceImpl&lt;CarConfigInfo, Long&gt;
50 50 ktrParms.put("filepath", file.getAbsolutePath());
51 51 ktrParms.put("erroroutputdir", dataToolsProperties.getTransErrordir());
52 52  
  53 + ktrParms.putAll(params);
  54 +
53 55 super.importData(file, ktrParms);
54 56  
55 57 LOGGER.info("//---------------- 导入车辆配置信息 success... ----------------//");
... ... @@ -77,6 +79,8 @@ public class CarConfigInfoServiceImpl extends BServiceImpl&lt;CarConfigInfo, Long&gt;
77 79 ktrParms.put("transpath", ktrFile.getAbsolutePath());
78 80 ktrParms.put("filename", "车辆配置信息_download-");
79 81  
  82 + ktrParms.putAll(params);
  83 +
80 84 File file = super.exportData(ktrParms);
81 85  
82 86 LOGGER.info("//---------------- 导出车辆配置信息 success... ----------------//");
... ...
src/main/java/com/bsth/service/schedule/impl/EmployeeConfigInfoServiceImpl.java
... ... @@ -48,6 +48,8 @@ public class EmployeeConfigInfoServiceImpl extends BServiceImpl&lt;EmployeeConfigIn
48 48 ktrParms.put("filepath", file.getAbsolutePath());
49 49 ktrParms.put("erroroutputdir", dataToolsProperties.getTransErrordir());
50 50  
  51 + ktrParms.putAll(params);
  52 +
51 53 super.importData(file, ktrParms);
52 54  
53 55 LOGGER.info("//---------------- 导入人员配置信息 success... ----------------//");
... ... @@ -75,6 +77,8 @@ public class EmployeeConfigInfoServiceImpl extends BServiceImpl&lt;EmployeeConfigIn
75 77 ktrParms.put("transpath", ktrFile.getAbsolutePath());
76 78 ktrParms.put("filename", "人员配置信息_download-");
77 79  
  80 + ktrParms.putAll(params);
  81 +
78 82 File file = super.exportData(ktrParms);
79 83  
80 84 LOGGER.info("//---------------- 导出人员配置信息 success... ----------------//");
... ...
src/main/java/com/bsth/service/schedule/impl/GuideboardInfoServiceImpl.java
... ... @@ -122,6 +122,8 @@ public class GuideboardInfoServiceImpl extends BServiceImpl&lt;GuideboardInfo, Long
122 122 ktrParms.put("filepath", file.getAbsolutePath());
123 123 ktrParms.put("erroroutputdir", dataToolsProperties.getTransErrordir());
124 124  
  125 + ktrParms.putAll(params);
  126 +
125 127 super.importData(file, ktrParms);
126 128  
127 129 LOGGER.info("//---------------- 导入路牌信息 success... ----------------//");
... ... @@ -149,6 +151,8 @@ public class GuideboardInfoServiceImpl extends BServiceImpl&lt;GuideboardInfo, Long
149 151 ktrParms.put("transpath", ktrFile.getAbsolutePath());
150 152 ktrParms.put("filename", "路牌信息_download-");
151 153  
  154 + ktrParms.putAll(params);
  155 +
152 156 File file = super.exportData(ktrParms);
153 157  
154 158 LOGGER.info("//---------------- 导出路牌信息 success... ----------------//");
... ...
src/main/java/com/bsth/service/schedule/impl/ScheduleRule1FlatServiceImpl.java
... ... @@ -42,6 +42,8 @@ public class ScheduleRule1FlatServiceImpl extends BServiceImpl&lt;ScheduleRule1Flat
42 42 ktrParms.put("filepath", file.getAbsolutePath());
43 43 ktrParms.put("erroroutputdir", dataToolsProperties.getTransErrordir());
44 44  
  45 + ktrParms.putAll(params);
  46 +
45 47 super.importData(file, ktrParms);
46 48  
47 49 LOGGER.info("//---------------- 导入排版规则信息 success... ----------------//");
... ... @@ -69,6 +71,8 @@ public class ScheduleRule1FlatServiceImpl extends BServiceImpl&lt;ScheduleRule1Flat
69 71 ktrParms.put("transpath", ktrFile.getAbsolutePath());
70 72 ktrParms.put("filename", "排版规则信息_download-");
71 73  
  74 + ktrParms.putAll(params);
  75 +
72 76 File file = super.exportData(ktrParms);
73 77  
74 78 LOGGER.info("//---------------- 导出排版规则信息 success... ----------------//");
... ...
src/main/java/com/bsth/service/schedule/impl/TTInfoDetailServiceImpl.java
... ... @@ -281,7 +281,8 @@ public class TTInfoDetailServiceImpl extends BServiceImpl&lt;TTInfoDetail, Long&gt; im
281 281 Sheet sheet = book.getSheet(0);
282 282  
283 283 // 2-2、处理数据
284   - int all_bc = 0; // 总班次
  284 + int all_bc_ks = 0; // 总空驶班次
  285 + int all_bc_yy = 0; // 总营运班次
285 286 double all_lc_ks = 0; // 总空驶里程
286 287 double all_lc_yy = 0; // 总营运里程
287 288  
... ... @@ -330,14 +331,14 @@ public class TTInfoDetailServiceImpl extends BServiceImpl&lt;TTInfoDetail, Long&gt; im
330 331 bc_ks += 1;
331 332 lc_ks += Double.valueOf(jhlc);
332 333  
333   - all_bc += 1;
  334 + all_bc_ks += 1;
334 335 all_lc_ks += Double.valueOf(jhlc);
335 336  
336 337 } else {
337 338 bc_yy += 1;
338 339 lc_yy += Double.valueOf(jhlc);
339 340  
340   - all_bc += 1;
  341 + all_bc_yy += 1;
341 342 all_lc_yy += Double.valueOf(jhlc);
342 343 }
343 344 }
... ... @@ -359,7 +360,7 @@ public class TTInfoDetailServiceImpl extends BServiceImpl&lt;TTInfoDetail, Long&gt; im
359 360 }
360 361 editInfo.getHeader().addAll(Arrays.asList(headarrays));
361 362  
362   - editInfo.setYy_desc(String.format("班次=%d,空驶里程=%.2f,营运里程=%.2f", all_bc, all_lc_ks, all_lc_yy));
  363 + editInfo.setYy_desc(String.format("空驶班次=%d,营运班次=%d,空驶里程=%.2f,营运里程=%.2f", all_bc_ks, all_bc_yy, all_lc_ks, all_lc_yy));
363 364 }
364 365  
365 366 LOGGER.info("//---------------- 时刻表编辑用数据输出 success... ----------------//");
... ...
src/main/java/com/bsth/service/schedule/utils/DataToolsProperties.java
... ... @@ -27,6 +27,9 @@ public class DataToolsProperties {
27 27 /** 临时输出文件目录 */
28 28 @NotNull
29 29 private String transTempdir;
  30 + /** 模版文件目录 */
  31 + @NotNull
  32 + private String transTemplatedir;
30 33  
31 34 /** kettle配置文件路径 */
32 35 @NotNull
... ... @@ -331,4 +334,12 @@ public class DataToolsProperties {
331 334 public void setTtinfodetailDatainputktr2(String ttinfodetailDatainputktr2) {
332 335 this.ttinfodetailDatainputktr2 = ttinfodetailDatainputktr2;
333 336 }
  337 +
  338 + public String getTransTemplatedir() {
  339 + return transTemplatedir;
  340 + }
  341 +
  342 + public void setTransTemplatedir(String transTemplatedir) {
  343 + this.transTemplatedir = transTemplatedir;
  344 + }
334 345 }
... ...
src/main/java/com/bsth/service/schedule/utils/DataToolsServiceImpl.java
... ... @@ -53,6 +53,7 @@ public class DataToolsServiceImpl implements DataToolsService, InitializingBean
53 53 File file = new File(getClass().getResource(dataToolsProperties.getKettleProperties()).toURI());
54 54 Properties kettleProperties = EnvUtil.readProperties(file.getAbsolutePath());
55 55 EnvUtil.applyKettleProperties(kettleProperties);
  56 +// System.getProperties().put("file.encoding", "Cp1252");
56 57 System.getProperties().put("Internal.Cluster.Size", "1");
57 58 System.getProperties().put("Internal.Slave.Transformation.Number", "0");
58 59 System.getProperties().put("Internal.Slave.Server.Name", "slave-trans-name");
... ... @@ -207,6 +208,9 @@ public class DataToolsServiceImpl implements DataToolsService, InitializingBean
207 208 new DateTime().toString("yyyyMMddHHmmss") + ".xls";
208 209 params.put("filepath", filepath);
209 210  
  211 + // ktr输出模版目录(可选)
  212 + params.put("templatepath", dataToolsProperties.getTransTemplatedir());
  213 +
210 214 // 2、使用kettle运行封装数据导入逻辑的ktr转换文件
211 215 // 2.1、初始化kettle(组件初始化已经做了)
212 216 // 2.2、创建转换元数据,转换
... ...
src/main/resources/datatools/config-dev.properties
... ... @@ -19,6 +19,8 @@ datatools.fileupload_dir=/Users/xu/resource/project_code/runtime_temp/bsth_contr
19 19 datatools.trans_errordir=/Users/xu/resource/project_code/runtime_temp/bsth_control_u_d_files/erroroutput
20 20 # 临时输出文件目录
21 21 datatools.trans_tempdir=/Users/xu/resource/project_code/runtime_temp/bsth_control_u_d_files/temp
  22 +# 模版文件目录
  23 +datatools.trans_templatedir=/Users/xu/resource/project_code/runtime_temp/bsth_control_u_d_files/template
22 24  
23 25 ##---------------------------- 导入数据ktr ----------------------------##
24 26 # 车辆信息导入ktr转换
... ...
src/main/resources/datatools/config-prod.properties
... ... @@ -20,6 +20,8 @@ datatools.fileupload_dir=/home/bsth_control_u_d_files
20 20 datatools.trans_errordir=/home/bsth_control_u_d_files/erroroutput
21 21 # 临时输出文件目录
22 22 datatools.trans_tempdir=/home/bsth_control_u_d_files/temp
  23 +# 模版文件目录
  24 +datatools.trans_templatedir=/home/bsth_control_u_d_files/template
23 25  
24 26 ##---------------------------- 导入数据ktr ----------------------------##
25 27 # 车辆信息导入ktr转换
... ...
src/main/resources/datatools/ktrs/carsConfigDataOutput.ktr
1   -<?xml version="1.0" encoding="UTF-8"?>
2   -<transformation>
3   - <info>
4   - <name>&#x8f66;&#x8f86;&#x914d;&#x7f6e;&#x4fe1;&#x606f;&#x5bfc;&#x51fa;</name>
5   - <description/>
6   - <extended_description/>
7   - <trans_version/>
8   - <trans_type>Normal</trans_type>
9   - <trans_status>0</trans_status>
10   - <directory>&#x2f;</directory>
11   - <parameters>
12   - <parameter>
13   - <name>filepath</name>
14   - <default_value/>
15   - <description>excel&#x6587;&#x4ef6;&#x8def;&#x5f84;</description>
16   - </parameter>
17   - </parameters>
18   - <log>
19   -<trans-log-table><connection/>
20   -<schema/>
21   -<table/>
22   -<size_limit_lines/>
23   -<interval/>
24   -<timeout_days/>
25   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STATUS</id><enabled>Y</enabled><name>STATUS</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name><subject/></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name><subject/></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name><subject/></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name><subject/></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name><subject/></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name><subject/></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>STARTDATE</id><enabled>Y</enabled><name>STARTDATE</name></field><field><id>ENDDATE</id><enabled>Y</enabled><name>ENDDATE</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>DEPDATE</id><enabled>Y</enabled><name>DEPDATE</name></field><field><id>REPLAYDATE</id><enabled>Y</enabled><name>REPLAYDATE</name></field><field><id>LOG_FIELD</id><enabled>Y</enabled><name>LOG_FIELD</name></field><field><id>EXECUTING_SERVER</id><enabled>N</enabled><name>EXECUTING_SERVER</name></field><field><id>EXECUTING_USER</id><enabled>N</enabled><name>EXECUTING_USER</name></field><field><id>CLIENT</id><enabled>N</enabled><name>CLIENT</name></field></trans-log-table>
26   -<perf-log-table><connection/>
27   -<schema/>
28   -<table/>
29   -<interval/>
30   -<timeout_days/>
31   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>SEQ_NR</id><enabled>Y</enabled><name>SEQ_NR</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>INPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>INPUT_BUFFER_ROWS</name></field><field><id>OUTPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>OUTPUT_BUFFER_ROWS</name></field></perf-log-table>
32   -<channel-log-table><connection/>
33   -<schema/>
34   -<table/>
35   -<timeout_days/>
36   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>LOGGING_OBJECT_TYPE</id><enabled>Y</enabled><name>LOGGING_OBJECT_TYPE</name></field><field><id>OBJECT_NAME</id><enabled>Y</enabled><name>OBJECT_NAME</name></field><field><id>OBJECT_COPY</id><enabled>Y</enabled><name>OBJECT_COPY</name></field><field><id>REPOSITORY_DIRECTORY</id><enabled>Y</enabled><name>REPOSITORY_DIRECTORY</name></field><field><id>FILENAME</id><enabled>Y</enabled><name>FILENAME</name></field><field><id>OBJECT_ID</id><enabled>Y</enabled><name>OBJECT_ID</name></field><field><id>OBJECT_REVISION</id><enabled>Y</enabled><name>OBJECT_REVISION</name></field><field><id>PARENT_CHANNEL_ID</id><enabled>Y</enabled><name>PARENT_CHANNEL_ID</name></field><field><id>ROOT_CHANNEL_ID</id><enabled>Y</enabled><name>ROOT_CHANNEL_ID</name></field></channel-log-table>
37   -<step-log-table><connection/>
38   -<schema/>
39   -<table/>
40   -<timeout_days/>
41   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>LOG_FIELD</id><enabled>N</enabled><name>LOG_FIELD</name></field></step-log-table>
42   -<metrics-log-table><connection/>
43   -<schema/>
44   -<table/>
45   -<timeout_days/>
46   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>METRICS_DATE</id><enabled>Y</enabled><name>METRICS_DATE</name></field><field><id>METRICS_CODE</id><enabled>Y</enabled><name>METRICS_CODE</name></field><field><id>METRICS_DESCRIPTION</id><enabled>Y</enabled><name>METRICS_DESCRIPTION</name></field><field><id>METRICS_SUBJECT</id><enabled>Y</enabled><name>METRICS_SUBJECT</name></field><field><id>METRICS_TYPE</id><enabled>Y</enabled><name>METRICS_TYPE</name></field><field><id>METRICS_VALUE</id><enabled>Y</enabled><name>METRICS_VALUE</name></field></metrics-log-table>
47   - </log>
48   - <maxdate>
49   - <connection/>
50   - <table/>
51   - <field/>
52   - <offset>0.0</offset>
53   - <maxdiff>0.0</maxdiff>
54   - </maxdate>
55   - <size_rowset>10000</size_rowset>
56   - <sleep_time_empty>50</sleep_time_empty>
57   - <sleep_time_full>50</sleep_time_full>
58   - <unique_connections>N</unique_connections>
59   - <feedback_shown>Y</feedback_shown>
60   - <feedback_size>50000</feedback_size>
61   - <using_thread_priorities>Y</using_thread_priorities>
62   - <shared_objects_file/>
63   - <capture_step_performance>N</capture_step_performance>
64   - <step_performance_capturing_delay>1000</step_performance_capturing_delay>
65   - <step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
66   - <dependencies>
67   - </dependencies>
68   - <partitionschemas>
69   - </partitionschemas>
70   - <slaveservers>
71   - </slaveservers>
72   - <clusterschemas>
73   - </clusterschemas>
74   - <created_user>-</created_user>
75   - <created_date>2017&#x2f;01&#x2f;11 14&#x3a;14&#x3a;13.722</created_date>
76   - <modified_user>-</modified_user>
77   - <modified_date>2017&#x2f;01&#x2f;11 14&#x3a;14&#x3a;13.722</modified_date>
78   - <key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA&#x3d;</key_for_session_key>
79   - <is_key_private>N</is_key_private>
80   - </info>
81   - <notepads>
82   - <notepad>
83   - <note>&#x8fd9;&#x91cc;&#x6709;&#x4e9b;&#x95ee;&#x9898;&#xa;&#x5728;window2012&#x7684;&#x73af;&#x5883;&#x4e0b;&#xff0c;&#xa;MySql&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x4e2d;&#x5982;&#x679c;&#x8fd4;&#x56de;&#x4e2d;&#x6587;&#x5185;&#x5bb9;&#x7684;&#x5b57;&#x6bb5;&#xff0c;&#x8fd9;&#x4e2a;&#x5185;&#x5bb9;&#x4e71;&#x7801;&#xa;&#x89e3;&#x51b3;&#x529e;&#x6cd5;&#xff0c;&#x5c31;&#x662f;&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x5168;&#x90e8;&#x7f13;&#x5b58;&#xff0c;&#x5c31;&#x4e0d;&#x4e71;&#x7801;&#xa;linux&#x73af;&#x5883;&#x4e0b;&#x6ca1;&#x95ee;&#x9898;</note>
84   - <xloc>81</xloc>
85   - <yloc>172</yloc>
86   - <width>333</width>
87   - <heigth>90</heigth>
88   - <fontname>YaHei Consolas Hybrid</fontname>
89   - <fontsize>12</fontsize>
90   - <fontbold>N</fontbold>
91   - <fontitalic>N</fontitalic>
92   - <fontcolorred>0</fontcolorred>
93   - <fontcolorgreen>0</fontcolorgreen>
94   - <fontcolorblue>0</fontcolorblue>
95   - <backgroundcolorred>255</backgroundcolorred>
96   - <backgroundcolorgreen>205</backgroundcolorgreen>
97   - <backgroundcolorblue>112</backgroundcolorblue>
98   - <bordercolorred>100</bordercolorred>
99   - <bordercolorgreen>100</bordercolorgreen>
100   - <bordercolorblue>100</bordercolorblue>
101   - <drawshadow>Y</drawshadow>
102   - </notepad>
103   - </notepads>
104   - <connection>
105   - <name>bus_control_variable</name>
106   - <server>&#x24;&#x7b;v_db_ip&#x7d;</server>
107   - <type>MYSQL</type>
108   - <access>Native</access>
109   - <database>&#x24;&#x7b;v_db_dname&#x7d;</database>
110   - <port>3306</port>
111   - <username>&#x24;&#x7b;v_db_uname&#x7d;</username>
112   - <password>&#x24;&#x7b;v_db_pwd&#x7d;</password>
113   - <servername/>
114   - <data_tablespace/>
115   - <index_tablespace/>
116   - <attributes>
117   - <attribute><code>EXTRA_OPTION_MYSQL.characterEncoding</code><attribute>utf8</attribute></attribute>
118   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
119   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
120   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
121   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
122   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
123   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
124   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
125   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
126   - <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
127   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
128   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
129   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
130   - </attributes>
131   - </connection>
132   - <connection>
133   - <name>bus_control_&#x516c;&#x53f8;_201</name>
134   - <server>localhost</server>
135   - <type>MYSQL</type>
136   - <access>Native</access>
137   - <database>control</database>
138   - <port>3306</port>
139   - <username>root</username>
140   - <password>Encrypted </password>
141   - <servername/>
142   - <data_tablespace/>
143   - <index_tablespace/>
144   - <attributes>
145   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
146   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
147   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
148   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
149   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
150   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
151   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
152   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
153   - <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
154   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
155   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
156   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
157   - </attributes>
158   - </connection>
159   - <connection>
160   - <name>bus_control_&#x672c;&#x673a;</name>
161   - <server>localhost</server>
162   - <type>MYSQL</type>
163   - <access>Native</access>
164   - <database>control</database>
165   - <port>3306</port>
166   - <username>root</username>
167   - <password>Encrypted </password>
168   - <servername/>
169   - <data_tablespace/>
170   - <index_tablespace/>
171   - <attributes>
172   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
173   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
174   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
175   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
176   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
177   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
178   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
179   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
180   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
181   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
182   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
183   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
184   - </attributes>
185   - </connection>
186   - <connection>
187   - <name>xlab_mysql_youle</name>
188   - <server>101.231.124.8</server>
189   - <type>MYSQL</type>
190   - <access>Native</access>
191   - <database>xlab_youle</database>
192   - <port>45687</port>
193   - <username>xlab-youle</username>
194   - <password>Encrypted 2be98afc86aa78a88aa1be369d187a3df</password>
195   - <servername/>
196   - <data_tablespace/>
197   - <index_tablespace/>
198   - <attributes>
199   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
200   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
201   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
202   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
203   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
204   - <attribute><code>PORT_NUMBER</code><attribute>45687</attribute></attribute>
205   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
206   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
207   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
208   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
209   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
210   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
211   - </attributes>
212   - </connection>
213   - <connection>
214   - <name>xlab_mysql_youle&#xff08;&#x672c;&#x673a;&#xff09;</name>
215   - <server>localhost</server>
216   - <type>MYSQL</type>
217   - <access>Native</access>
218   - <database>xlab_youle</database>
219   - <port>3306</port>
220   - <username>root</username>
221   - <password>Encrypted </password>
222   - <servername/>
223   - <data_tablespace/>
224   - <index_tablespace/>
225   - <attributes>
226   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
227   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
228   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
229   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
230   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
231   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
232   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
233   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
234   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
235   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
236   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
237   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
238   - </attributes>
239   - </connection>
240   - <connection>
241   - <name>xlab_youle</name>
242   - <server/>
243   - <type>MYSQL</type>
244   - <access>JNDI</access>
245   - <database>xlab_youle</database>
246   - <port>1521</port>
247   - <username/>
248   - <password>Encrypted </password>
249   - <servername/>
250   - <data_tablespace/>
251   - <index_tablespace/>
252   - <attributes>
253   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
254   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
255   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
256   - <attribute><code>PORT_NUMBER</code><attribute>1521</attribute></attribute>
257   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
258   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
259   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
260   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
261   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
262   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
263   - </attributes>
264   - </connection>
265   - <order>
266   - <hop> <from>&#x8f66;&#x8f86;&#x914d;&#x7f6e;&#xff08;&#x6ca1;&#x6709;&#x4f5c;&#x5e9f;&#xff09;</from><to>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
267   - <hop> <from>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</from><to>&#x8f66;&#x8f86;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
268   - <hop> <from>&#x8f66;&#x8f86;&#x67e5;&#x8be2;</from><to>&#x683c;&#x5f0f;&#x5316;&#x65e5;&#x671f;</to><enabled>Y</enabled> </hop>
269   - <hop> <from>&#x683c;&#x5f0f;&#x5316;&#x65e5;&#x671f;</from><to>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>
270   - <hop> <from>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</from><to>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</to><enabled>Y</enabled> </hop>
271   - <hop> <from>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</from><to>Excel&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>
272   - </order>
273   - <step>
274   - <name>Excel&#x8f93;&#x51fa;</name>
275   - <type>ExcelOutput</type>
276   - <description/>
277   - <distribute>Y</distribute>
278   - <custom_distribution/>
279   - <copies>1</copies>
280   - <partitioning>
281   - <method>none</method>
282   - <schema_name/>
283   - </partitioning>
284   - <header>Y</header>
285   - <footer>N</footer>
286   - <encoding/>
287   - <append>N</append>
288   - <add_to_result_filenames>Y</add_to_result_filenames>
289   - <file>
290   - <name>&#x24;&#x7b;filepath&#x7d;</name>
291   - <extention/>
292   - <do_not_open_newfile_init>N</do_not_open_newfile_init>
293   - <create_parent_folder>N</create_parent_folder>
294   - <split>N</split>
295   - <add_date>N</add_date>
296   - <add_time>N</add_time>
297   - <SpecifyFormat>N</SpecifyFormat>
298   - <date_time_format>yyyyMMddHHmmss</date_time_format>
299   - <sheetname>&#x5de5;&#x4f5c;&#x8868;1</sheetname>
300   - <autosizecolums>N</autosizecolums>
301   - <nullisblank>N</nullisblank>
302   - <protect_sheet>N</protect_sheet>
303   - <password>Encrypted </password>
304   - <splitevery>0</splitevery>
305   - <usetempfiles>N</usetempfiles>
306   - <tempdirectory/>
307   - </file>
308   - <template>
309   - <enabled>N</enabled>
310   - <append>N</append>
311   - <filename>template.xls</filename>
312   - </template>
313   - <fields>
314   - <field>
315   - <name>&#x7ebf;&#x8def;</name>
316   - <type>String</type>
317   - <format/>
318   - </field>
319   - <field>
320   - <name>&#x5185;&#x90e8;&#x7f16;&#x7801;</name>
321   - <type>String</type>
322   - <format/>
323   - </field>
324   - <field>
325   - <name>&#x542f;&#x7528;&#x65e5;&#x671f;</name>
326   - <type>String</type>
327   - <format/>
328   - </field>
329   - <field>
330   - <name>&#x7ec8;&#x7ed3;&#x65e5;&#x671f;</name>
331   - <type>String</type>
332   - <format/>
333   - </field>
334   - <field>
335   - <name>&#x505c;&#x8f66;&#x70b9;</name>
336   - <type>String</type>
337   - <format/>
338   - </field>
339   - </fields>
340   - <custom>
341   - <header_font_name>arial</header_font_name>
342   - <header_font_size>10</header_font_size>
343   - <header_font_bold>N</header_font_bold>
344   - <header_font_italic>N</header_font_italic>
345   - <header_font_underline>no</header_font_underline>
346   - <header_font_orientation>horizontal</header_font_orientation>
347   - <header_font_color>black</header_font_color>
348   - <header_background_color>none</header_background_color>
349   - <header_row_height>255</header_row_height>
350   - <header_alignment>left</header_alignment>
351   - <header_image/>
352   - <row_font_name>arial</row_font_name>
353   - <row_font_size>10</row_font_size>
354   - <row_font_color>black</row_font_color>
355   - <row_background_color>none</row_background_color>
356   - </custom>
357   - <cluster_schema/>
358   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
359   - <xloc>596</xloc>
360   - <yloc>265</yloc>
361   - <draw>Y</draw>
362   - </GUI>
363   - </step>
364   -
365   - <step>
366   - <name>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</name>
367   - <type>SelectValues</type>
368   - <description/>
369   - <distribute>Y</distribute>
370   - <custom_distribution/>
371   - <copies>1</copies>
372   - <partitioning>
373   - <method>none</method>
374   - <schema_name/>
375   - </partitioning>
376   - <fields> <field> <name>xlmc</name>
377   - <rename>&#x7ebf;&#x8def;</rename>
378   - <length>-2</length>
379   - <precision>-2</precision>
380   - </field> <field> <name>zbh</name>
381   - <rename>&#x5185;&#x90e8;&#x7f16;&#x7801;</rename>
382   - <length>-2</length>
383   - <precision>-2</precision>
384   - </field> <field> <name>qyrq</name>
385   - <rename>&#x542f;&#x7528;&#x65e5;&#x671f;</rename>
386   - <length>-2</length>
387   - <precision>-2</precision>
388   - </field> <field> <name>zzrq</name>
389   - <rename>&#x7ec8;&#x7ed3;&#x65e5;&#x671f;</rename>
390   - <length>-2</length>
391   - <precision>-2</precision>
392   - </field> <field> <name>tcd</name>
393   - <rename>&#x505c;&#x8f66;&#x70b9;</rename>
394   - <length>-2</length>
395   - <precision>-2</precision>
396   - </field> <select_unspecified>N</select_unspecified>
397   - </fields> <cluster_schema/>
398   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
399   - <xloc>595</xloc>
400   - <yloc>167</yloc>
401   - <draw>Y</draw>
402   - </GUI>
403   - </step>
404   -
405   - <step>
406   - <name>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</name>
407   - <type>SortRows</type>
408   - <description/>
409   - <distribute>Y</distribute>
410   - <custom_distribution/>
411   - <copies>1</copies>
412   - <partitioning>
413   - <method>none</method>
414   - <schema_name/>
415   - </partitioning>
416   - <directory>&#x25;&#x25;java.io.tmpdir&#x25;&#x25;</directory>
417   - <prefix>out</prefix>
418   - <sort_size>1000000</sort_size>
419   - <free_memory/>
420   - <compress>N</compress>
421   - <compress_variable/>
422   - <unique_rows>N</unique_rows>
423   - <fields>
424   - <field>
425   - <name>xlmc</name>
426   - <ascending>Y</ascending>
427   - <case_sensitive>N</case_sensitive>
428   - <presorted>N</presorted>
429   - </field>
430   - <field>
431   - <name>zbh</name>
432   - <ascending>Y</ascending>
433   - <case_sensitive>N</case_sensitive>
434   - <presorted>N</presorted>
435   - </field>
436   - <field>
437   - <name>qyrq</name>
438   - <ascending>Y</ascending>
439   - <case_sensitive>N</case_sensitive>
440   - <presorted>N</presorted>
441   - </field>
442   - </fields>
443   - <cluster_schema/>
444   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
445   - <xloc>592</xloc>
446   - <yloc>66</yloc>
447   - <draw>Y</draw>
448   - </GUI>
449   - </step>
450   -
451   - <step>
452   - <name>&#x683c;&#x5f0f;&#x5316;&#x65e5;&#x671f;</name>
453   - <type>SelectValues</type>
454   - <description/>
455   - <distribute>Y</distribute>
456   - <custom_distribution/>
457   - <copies>1</copies>
458   - <partitioning>
459   - <method>none</method>
460   - <schema_name/>
461   - </partitioning>
462   - <fields> <select_unspecified>N</select_unspecified>
463   - <meta> <name>qyrq</name>
464   - <rename>qyrq</rename>
465   - <type>String</type>
466   - <length>-2</length>
467   - <precision>-2</precision>
468   - <conversion_mask>yyyy-MM-dd</conversion_mask>
469   - <date_format_lenient>false</date_format_lenient>
470   - <date_format_locale/>
471   - <date_format_timezone/>
472   - <lenient_string_to_number>false</lenient_string_to_number>
473   - <encoding/>
474   - <decimal_symbol/>
475   - <grouping_symbol/>
476   - <currency_symbol/>
477   - <storage_type/>
478   - </meta> <meta> <name>zzrq</name>
479   - <rename>zzrq</rename>
480   - <type>String</type>
481   - <length>-2</length>
482   - <precision>-2</precision>
483   - <conversion_mask>yyyy-MM-dd</conversion_mask>
484   - <date_format_lenient>false</date_format_lenient>
485   - <date_format_locale/>
486   - <date_format_timezone/>
487   - <lenient_string_to_number>false</lenient_string_to_number>
488   - <encoding/>
489   - <decimal_symbol/>
490   - <grouping_symbol/>
491   - <currency_symbol/>
492   - <storage_type/>
493   - </meta> </fields> <cluster_schema/>
494   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
495   - <xloc>478</xloc>
496   - <yloc>66</yloc>
497   - <draw>Y</draw>
498   - </GUI>
499   - </step>
500   -
501   - <step>
502   - <name>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</name>
503   - <type>DBLookup</type>
504   - <description/>
505   - <distribute>Y</distribute>
506   - <custom_distribution/>
507   - <copies>1</copies>
508   - <partitioning>
509   - <method>none</method>
510   - <schema_name/>
511   - </partitioning>
512   - <connection>bus_control_variable</connection>
513   - <cache>Y</cache>
514   - <cache_load_all>Y</cache_load_all>
515   - <cache_size>0</cache_size>
516   - <lookup>
517   - <schema/>
518   - <table>bsth_c_line</table>
519   - <orderby/>
520   - <fail_on_multiple>N</fail_on_multiple>
521   - <eat_row_on_failure>N</eat_row_on_failure>
522   - <key>
523   - <name>xl</name>
524   - <field>id</field>
525   - <condition>&#x3d;</condition>
526   - <name2/>
527   - </key>
528   - <value>
529   - <name>name</name>
530   - <rename>xlmc</rename>
531   - <default/>
532   - <type>String</type>
533   - </value>
534   - </lookup>
535   - <cluster_schema/>
536   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
537   - <xloc>248</xloc>
538   - <yloc>67</yloc>
539   - <draw>Y</draw>
540   - </GUI>
541   - </step>
542   -
543   - <step>
544   - <name>&#x8f66;&#x8f86;&#x67e5;&#x8be2;</name>
545   - <type>DBLookup</type>
546   - <description/>
547   - <distribute>Y</distribute>
548   - <custom_distribution/>
549   - <copies>1</copies>
550   - <partitioning>
551   - <method>none</method>
552   - <schema_name/>
553   - </partitioning>
554   - <connection>bus_control_variable</connection>
555   - <cache>N</cache>
556   - <cache_load_all>N</cache_load_all>
557   - <cache_size>0</cache_size>
558   - <lookup>
559   - <schema/>
560   - <table>bsth_c_cars</table>
561   - <orderby/>
562   - <fail_on_multiple>N</fail_on_multiple>
563   - <eat_row_on_failure>N</eat_row_on_failure>
564   - <key>
565   - <name>cl</name>
566   - <field>id</field>
567   - <condition>&#x3d;</condition>
568   - <name2/>
569   - </key>
570   - <value>
571   - <name>inside_code</name>
572   - <rename>zbh</rename>
573   - <default/>
574   - <type>String</type>
575   - </value>
576   - </lookup>
577   - <cluster_schema/>
578   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
579   - <xloc>361</xloc>
580   - <yloc>67</yloc>
581   - <draw>Y</draw>
582   - </GUI>
583   - </step>
584   -
585   - <step>
586   - <name>&#x8f66;&#x8f86;&#x914d;&#x7f6e;&#xff08;&#x6ca1;&#x6709;&#x4f5c;&#x5e9f;&#xff09;</name>
587   - <type>TableInput</type>
588   - <description/>
589   - <distribute>Y</distribute>
590   - <custom_distribution/>
591   - <copies>1</copies>
592   - <partitioning>
593   - <method>none</method>
594   - <schema_name/>
595   - </partitioning>
596   - <connection>bus_control_variable</connection>
597   - <sql>select &#x2a; from bsth_c_s_ccinfo where is_cancel &#x3d; 0</sql>
598   - <limit>0</limit>
599   - <lookup/>
600   - <execute_each_row>N</execute_each_row>
601   - <variables_active>N</variables_active>
602   - <lazy_conversion_active>N</lazy_conversion_active>
603   - <cluster_schema/>
604   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
605   - <xloc>106</xloc>
606   - <yloc>68</yloc>
607   - <draw>Y</draw>
608   - </GUI>
609   - </step>
610   -
611   - <step_error_handling>
612   - </step_error_handling>
613   - <slave-step-copy-partition-distribution>
614   -</slave-step-copy-partition-distribution>
615   - <slave_transformation>N</slave_transformation>
616   -
617   -</transformation>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<transformation>
  3 + <info>
  4 + <name>&#x8f66;&#x8f86;&#x914d;&#x7f6e;&#x4fe1;&#x606f;&#x5bfc;&#x51fa;</name>
  5 + <description/>
  6 + <extended_description/>
  7 + <trans_version/>
  8 + <trans_type>Normal</trans_type>
  9 + <trans_status>0</trans_status>
  10 + <directory>&#x2f;</directory>
  11 + <parameters>
  12 + <parameter>
  13 + <name>filepath</name>
  14 + <default_value/>
  15 + <description>excel&#x6587;&#x4ef6;&#x8def;&#x5f84;</description>
  16 + </parameter>
  17 + <parameter>
  18 + <name>templatepath</name>
  19 + <default_value/>
  20 + <description>&#x6a21;&#x7248;&#x6587;&#x4ef6;&#x8def;&#x5f84;</description>
  21 + </parameter>
  22 + <parameter>
  23 + <name>xlid</name>
  24 + <default_value/>
  25 + <description>&#x7ebf;&#x8def;id</description>
  26 + </parameter>
  27 + </parameters>
  28 + <log>
  29 +<trans-log-table><connection/>
  30 +<schema/>
  31 +<table/>
  32 +<size_limit_lines/>
  33 +<interval/>
  34 +<timeout_days/>
  35 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STATUS</id><enabled>Y</enabled><name>STATUS</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name><subject/></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name><subject/></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name><subject/></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name><subject/></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name><subject/></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name><subject/></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>STARTDATE</id><enabled>Y</enabled><name>STARTDATE</name></field><field><id>ENDDATE</id><enabled>Y</enabled><name>ENDDATE</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>DEPDATE</id><enabled>Y</enabled><name>DEPDATE</name></field><field><id>REPLAYDATE</id><enabled>Y</enabled><name>REPLAYDATE</name></field><field><id>LOG_FIELD</id><enabled>Y</enabled><name>LOG_FIELD</name></field><field><id>EXECUTING_SERVER</id><enabled>N</enabled><name>EXECUTING_SERVER</name></field><field><id>EXECUTING_USER</id><enabled>N</enabled><name>EXECUTING_USER</name></field><field><id>CLIENT</id><enabled>N</enabled><name>CLIENT</name></field></trans-log-table>
  36 +<perf-log-table><connection/>
  37 +<schema/>
  38 +<table/>
  39 +<interval/>
  40 +<timeout_days/>
  41 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>SEQ_NR</id><enabled>Y</enabled><name>SEQ_NR</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>INPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>INPUT_BUFFER_ROWS</name></field><field><id>OUTPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>OUTPUT_BUFFER_ROWS</name></field></perf-log-table>
  42 +<channel-log-table><connection/>
  43 +<schema/>
  44 +<table/>
  45 +<timeout_days/>
  46 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>LOGGING_OBJECT_TYPE</id><enabled>Y</enabled><name>LOGGING_OBJECT_TYPE</name></field><field><id>OBJECT_NAME</id><enabled>Y</enabled><name>OBJECT_NAME</name></field><field><id>OBJECT_COPY</id><enabled>Y</enabled><name>OBJECT_COPY</name></field><field><id>REPOSITORY_DIRECTORY</id><enabled>Y</enabled><name>REPOSITORY_DIRECTORY</name></field><field><id>FILENAME</id><enabled>Y</enabled><name>FILENAME</name></field><field><id>OBJECT_ID</id><enabled>Y</enabled><name>OBJECT_ID</name></field><field><id>OBJECT_REVISION</id><enabled>Y</enabled><name>OBJECT_REVISION</name></field><field><id>PARENT_CHANNEL_ID</id><enabled>Y</enabled><name>PARENT_CHANNEL_ID</name></field><field><id>ROOT_CHANNEL_ID</id><enabled>Y</enabled><name>ROOT_CHANNEL_ID</name></field></channel-log-table>
  47 +<step-log-table><connection/>
  48 +<schema/>
  49 +<table/>
  50 +<timeout_days/>
  51 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>LOG_FIELD</id><enabled>N</enabled><name>LOG_FIELD</name></field></step-log-table>
  52 +<metrics-log-table><connection/>
  53 +<schema/>
  54 +<table/>
  55 +<timeout_days/>
  56 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>METRICS_DATE</id><enabled>Y</enabled><name>METRICS_DATE</name></field><field><id>METRICS_CODE</id><enabled>Y</enabled><name>METRICS_CODE</name></field><field><id>METRICS_DESCRIPTION</id><enabled>Y</enabled><name>METRICS_DESCRIPTION</name></field><field><id>METRICS_SUBJECT</id><enabled>Y</enabled><name>METRICS_SUBJECT</name></field><field><id>METRICS_TYPE</id><enabled>Y</enabled><name>METRICS_TYPE</name></field><field><id>METRICS_VALUE</id><enabled>Y</enabled><name>METRICS_VALUE</name></field></metrics-log-table>
  57 + </log>
  58 + <maxdate>
  59 + <connection/>
  60 + <table/>
  61 + <field/>
  62 + <offset>0.0</offset>
  63 + <maxdiff>0.0</maxdiff>
  64 + </maxdate>
  65 + <size_rowset>10000</size_rowset>
  66 + <sleep_time_empty>50</sleep_time_empty>
  67 + <sleep_time_full>50</sleep_time_full>
  68 + <unique_connections>N</unique_connections>
  69 + <feedback_shown>Y</feedback_shown>
  70 + <feedback_size>50000</feedback_size>
  71 + <using_thread_priorities>Y</using_thread_priorities>
  72 + <shared_objects_file/>
  73 + <capture_step_performance>N</capture_step_performance>
  74 + <step_performance_capturing_delay>1000</step_performance_capturing_delay>
  75 + <step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
  76 + <dependencies>
  77 + </dependencies>
  78 + <partitionschemas>
  79 + </partitionschemas>
  80 + <slaveservers>
  81 + </slaveservers>
  82 + <clusterschemas>
  83 + </clusterschemas>
  84 + <created_user>-</created_user>
  85 + <created_date>2017&#x2f;01&#x2f;11 14&#x3a;14&#x3a;13.722</created_date>
  86 + <modified_user>-</modified_user>
  87 + <modified_date>2017&#x2f;01&#x2f;11 14&#x3a;14&#x3a;13.722</modified_date>
  88 + <key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA&#x3d;</key_for_session_key>
  89 + <is_key_private>N</is_key_private>
  90 + </info>
  91 + <notepads>
  92 + <notepad>
  93 + <note>&#x8fd9;&#x91cc;&#x6709;&#x4e9b;&#x95ee;&#x9898;&#xa;&#x5728;window2012&#x7684;&#x73af;&#x5883;&#x4e0b;&#xff0c;&#xa;MySql&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x4e2d;&#x5982;&#x679c;&#x8fd4;&#x56de;&#x4e2d;&#x6587;&#x5185;&#x5bb9;&#x7684;&#x5b57;&#x6bb5;&#xff0c;&#x8fd9;&#x4e2a;&#x5185;&#x5bb9;&#x4e71;&#x7801;&#xa;&#x89e3;&#x51b3;&#x529e;&#x6cd5;&#xff0c;&#x5c31;&#x662f;&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x5168;&#x90e8;&#x7f13;&#x5b58;&#xff0c;&#x5c31;&#x4e0d;&#x4e71;&#x7801;&#xa;linux&#x73af;&#x5883;&#x4e0b;&#x6ca1;&#x95ee;&#x9898;</note>
  94 + <xloc>81</xloc>
  95 + <yloc>172</yloc>
  96 + <width>333</width>
  97 + <heigth>90</heigth>
  98 + <fontname>YaHei Consolas Hybrid</fontname>
  99 + <fontsize>12</fontsize>
  100 + <fontbold>N</fontbold>
  101 + <fontitalic>N</fontitalic>
  102 + <fontcolorred>0</fontcolorred>
  103 + <fontcolorgreen>0</fontcolorgreen>
  104 + <fontcolorblue>0</fontcolorblue>
  105 + <backgroundcolorred>255</backgroundcolorred>
  106 + <backgroundcolorgreen>205</backgroundcolorgreen>
  107 + <backgroundcolorblue>112</backgroundcolorblue>
  108 + <bordercolorred>100</bordercolorred>
  109 + <bordercolorgreen>100</bordercolorgreen>
  110 + <bordercolorblue>100</bordercolorblue>
  111 + <drawshadow>Y</drawshadow>
  112 + </notepad>
  113 + </notepads>
  114 + <connection>
  115 + <name>bus_control_variable</name>
  116 + <server>&#x24;&#x7b;v_db_ip&#x7d;</server>
  117 + <type>MYSQL</type>
  118 + <access>Native</access>
  119 + <database>&#x24;&#x7b;v_db_dname&#x7d;</database>
  120 + <port>3306</port>
  121 + <username>&#x24;&#x7b;v_db_uname&#x7d;</username>
  122 + <password>&#x24;&#x7b;v_db_pwd&#x7d;</password>
  123 + <servername/>
  124 + <data_tablespace/>
  125 + <index_tablespace/>
  126 + <attributes>
  127 + <attribute><code>EXTRA_OPTION_MYSQL.characterEncoding</code><attribute>utf8</attribute></attribute>
  128 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  129 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  130 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  131 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  132 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  133 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  134 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  135 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  136 + <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
  137 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  138 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  139 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  140 + </attributes>
  141 + </connection>
  142 + <connection>
  143 + <name>bus_control_&#x516c;&#x53f8;_201</name>
  144 + <server>localhost</server>
  145 + <type>MYSQL</type>
  146 + <access>Native</access>
  147 + <database>control</database>
  148 + <port>3306</port>
  149 + <username>root</username>
  150 + <password>Encrypted </password>
  151 + <servername/>
  152 + <data_tablespace/>
  153 + <index_tablespace/>
  154 + <attributes>
  155 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  156 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  157 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  158 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  159 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  160 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  161 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  162 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  163 + <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
  164 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  165 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  166 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  167 + </attributes>
  168 + </connection>
  169 + <connection>
  170 + <name>bus_control_&#x672c;&#x673a;</name>
  171 + <server>localhost</server>
  172 + <type>MYSQL</type>
  173 + <access>Native</access>
  174 + <database>control</database>
  175 + <port>3306</port>
  176 + <username>root</username>
  177 + <password>Encrypted </password>
  178 + <servername/>
  179 + <data_tablespace/>
  180 + <index_tablespace/>
  181 + <attributes>
  182 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  183 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  184 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  185 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  186 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  187 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  188 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  189 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  190 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  191 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  192 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  193 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  194 + </attributes>
  195 + </connection>
  196 + <connection>
  197 + <name>xlab_mysql_youle</name>
  198 + <server>101.231.124.8</server>
  199 + <type>MYSQL</type>
  200 + <access>Native</access>
  201 + <database>xlab_youle</database>
  202 + <port>45687</port>
  203 + <username>xlab-youle</username>
  204 + <password>Encrypted 2be98afc86aa78a88aa1be369d187a3df</password>
  205 + <servername/>
  206 + <data_tablespace/>
  207 + <index_tablespace/>
  208 + <attributes>
  209 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  210 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  211 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  212 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  213 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  214 + <attribute><code>PORT_NUMBER</code><attribute>45687</attribute></attribute>
  215 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  216 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  217 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  218 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
  219 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
  220 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  221 + </attributes>
  222 + </connection>
  223 + <connection>
  224 + <name>xlab_mysql_youle&#xff08;&#x672c;&#x673a;&#xff09;</name>
  225 + <server>localhost</server>
  226 + <type>MYSQL</type>
  227 + <access>Native</access>
  228 + <database>xlab_youle</database>
  229 + <port>3306</port>
  230 + <username>root</username>
  231 + <password>Encrypted </password>
  232 + <servername/>
  233 + <data_tablespace/>
  234 + <index_tablespace/>
  235 + <attributes>
  236 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  237 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  238 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  239 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  240 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  241 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  242 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  243 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  244 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  245 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
  246 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
  247 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  248 + </attributes>
  249 + </connection>
  250 + <connection>
  251 + <name>xlab_youle</name>
  252 + <server/>
  253 + <type>MYSQL</type>
  254 + <access>JNDI</access>
  255 + <database>xlab_youle</database>
  256 + <port>1521</port>
  257 + <username/>
  258 + <password>Encrypted </password>
  259 + <servername/>
  260 + <data_tablespace/>
  261 + <index_tablespace/>
  262 + <attributes>
  263 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  264 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  265 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  266 + <attribute><code>PORT_NUMBER</code><attribute>1521</attribute></attribute>
  267 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  268 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  269 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  270 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  271 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  272 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  273 + </attributes>
  274 + </connection>
  275 + <order>
  276 + <hop> <from>&#x8f66;&#x8f86;&#x914d;&#x7f6e;&#xff08;&#x6ca1;&#x6709;&#x4f5c;&#x5e9f;&#xff09;</from><to>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
  277 + <hop> <from>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</from><to>&#x8f66;&#x8f86;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
  278 + <hop> <from>&#x8f66;&#x8f86;&#x67e5;&#x8be2;</from><to>&#x683c;&#x5f0f;&#x5316;&#x65e5;&#x671f;</to><enabled>Y</enabled> </hop>
  279 + <hop> <from>&#x683c;&#x5f0f;&#x5316;&#x65e5;&#x671f;</from><to>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>
  280 + <hop> <from>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</from><to>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</to><enabled>Y</enabled> </hop>
  281 + <hop> <from>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</from><to>Excel&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>
  282 + </order>
  283 + <step>
  284 + <name>Excel&#x8f93;&#x51fa;</name>
  285 + <type>ExcelOutput</type>
  286 + <description/>
  287 + <distribute>Y</distribute>
  288 + <custom_distribution/>
  289 + <copies>1</copies>
  290 + <partitioning>
  291 + <method>none</method>
  292 + <schema_name/>
  293 + </partitioning>
  294 + <header>Y</header>
  295 + <footer>N</footer>
  296 + <encoding/>
  297 + <append>N</append>
  298 + <add_to_result_filenames>Y</add_to_result_filenames>
  299 + <file>
  300 + <name>&#x24;&#x7b;filepath&#x7d;</name>
  301 + <extention/>
  302 + <do_not_open_newfile_init>N</do_not_open_newfile_init>
  303 + <create_parent_folder>N</create_parent_folder>
  304 + <split>N</split>
  305 + <add_date>N</add_date>
  306 + <add_time>N</add_time>
  307 + <SpecifyFormat>N</SpecifyFormat>
  308 + <date_time_format>yyyyMMddHHmmss</date_time_format>
  309 + <sheetname>&#x5de5;&#x4f5c;&#x8868;1</sheetname>
  310 + <autosizecolums>N</autosizecolums>
  311 + <nullisblank>N</nullisblank>
  312 + <protect_sheet>N</protect_sheet>
  313 + <password>Encrypted </password>
  314 + <splitevery>0</splitevery>
  315 + <usetempfiles>N</usetempfiles>
  316 + <tempdirectory/>
  317 + </file>
  318 + <template>
  319 + <enabled>N</enabled>
  320 + <append>N</append>
  321 + <filename>template.xls</filename>
  322 + </template>
  323 + <fields>
  324 + <field>
  325 + <name>&#x7ebf;&#x8def;</name>
  326 + <type>String</type>
  327 + <format/>
  328 + </field>
  329 + <field>
  330 + <name>&#x5185;&#x90e8;&#x7f16;&#x7801;</name>
  331 + <type>String</type>
  332 + <format/>
  333 + </field>
  334 + <field>
  335 + <name>&#x542f;&#x7528;&#x65e5;&#x671f;</name>
  336 + <type>String</type>
  337 + <format/>
  338 + </field>
  339 + <field>
  340 + <name>&#x7ec8;&#x7ed3;&#x65e5;&#x671f;</name>
  341 + <type>String</type>
  342 + <format/>
  343 + </field>
  344 + <field>
  345 + <name>&#x505c;&#x8f66;&#x70b9;</name>
  346 + <type>String</type>
  347 + <format/>
  348 + </field>
  349 + </fields>
  350 + <custom>
  351 + <header_font_name>arial</header_font_name>
  352 + <header_font_size>10</header_font_size>
  353 + <header_font_bold>N</header_font_bold>
  354 + <header_font_italic>N</header_font_italic>
  355 + <header_font_underline>no</header_font_underline>
  356 + <header_font_orientation>horizontal</header_font_orientation>
  357 + <header_font_color>black</header_font_color>
  358 + <header_background_color>none</header_background_color>
  359 + <header_row_height>255</header_row_height>
  360 + <header_alignment>left</header_alignment>
  361 + <header_image/>
  362 + <row_font_name>arial</row_font_name>
  363 + <row_font_size>10</row_font_size>
  364 + <row_font_color>black</row_font_color>
  365 + <row_background_color>none</row_background_color>
  366 + </custom>
  367 + <cluster_schema/>
  368 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  369 + <xloc>596</xloc>
  370 + <yloc>265</yloc>
  371 + <draw>Y</draw>
  372 + </GUI>
  373 + </step>
  374 +
  375 + <step>
  376 + <name>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</name>
  377 + <type>SelectValues</type>
  378 + <description/>
  379 + <distribute>Y</distribute>
  380 + <custom_distribution/>
  381 + <copies>1</copies>
  382 + <partitioning>
  383 + <method>none</method>
  384 + <schema_name/>
  385 + </partitioning>
  386 + <fields> <field> <name>xlmc</name>
  387 + <rename>&#x7ebf;&#x8def;</rename>
  388 + <length>-2</length>
  389 + <precision>-2</precision>
  390 + </field> <field> <name>zbh</name>
  391 + <rename>&#x5185;&#x90e8;&#x7f16;&#x7801;</rename>
  392 + <length>-2</length>
  393 + <precision>-2</precision>
  394 + </field> <field> <name>qyrq</name>
  395 + <rename>&#x542f;&#x7528;&#x65e5;&#x671f;</rename>
  396 + <length>-2</length>
  397 + <precision>-2</precision>
  398 + </field> <field> <name>zzrq</name>
  399 + <rename>&#x7ec8;&#x7ed3;&#x65e5;&#x671f;</rename>
  400 + <length>-2</length>
  401 + <precision>-2</precision>
  402 + </field> <field> <name>tcd</name>
  403 + <rename>&#x505c;&#x8f66;&#x70b9;</rename>
  404 + <length>-2</length>
  405 + <precision>-2</precision>
  406 + </field> <select_unspecified>N</select_unspecified>
  407 + </fields> <cluster_schema/>
  408 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  409 + <xloc>595</xloc>
  410 + <yloc>167</yloc>
  411 + <draw>Y</draw>
  412 + </GUI>
  413 + </step>
  414 +
  415 + <step>
  416 + <name>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</name>
  417 + <type>SortRows</type>
  418 + <description/>
  419 + <distribute>Y</distribute>
  420 + <custom_distribution/>
  421 + <copies>1</copies>
  422 + <partitioning>
  423 + <method>none</method>
  424 + <schema_name/>
  425 + </partitioning>
  426 + <directory>&#x25;&#x25;java.io.tmpdir&#x25;&#x25;</directory>
  427 + <prefix>out</prefix>
  428 + <sort_size>1000000</sort_size>
  429 + <free_memory/>
  430 + <compress>N</compress>
  431 + <compress_variable/>
  432 + <unique_rows>N</unique_rows>
  433 + <fields>
  434 + <field>
  435 + <name>xlmc</name>
  436 + <ascending>Y</ascending>
  437 + <case_sensitive>N</case_sensitive>
  438 + <presorted>N</presorted>
  439 + </field>
  440 + <field>
  441 + <name>zbh</name>
  442 + <ascending>Y</ascending>
  443 + <case_sensitive>N</case_sensitive>
  444 + <presorted>N</presorted>
  445 + </field>
  446 + <field>
  447 + <name>qyrq</name>
  448 + <ascending>Y</ascending>
  449 + <case_sensitive>N</case_sensitive>
  450 + <presorted>N</presorted>
  451 + </field>
  452 + </fields>
  453 + <cluster_schema/>
  454 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  455 + <xloc>592</xloc>
  456 + <yloc>66</yloc>
  457 + <draw>Y</draw>
  458 + </GUI>
  459 + </step>
  460 +
  461 + <step>
  462 + <name>&#x683c;&#x5f0f;&#x5316;&#x65e5;&#x671f;</name>
  463 + <type>SelectValues</type>
  464 + <description/>
  465 + <distribute>Y</distribute>
  466 + <custom_distribution/>
  467 + <copies>1</copies>
  468 + <partitioning>
  469 + <method>none</method>
  470 + <schema_name/>
  471 + </partitioning>
  472 + <fields> <select_unspecified>N</select_unspecified>
  473 + <meta> <name>qyrq</name>
  474 + <rename>qyrq</rename>
  475 + <type>String</type>
  476 + <length>-2</length>
  477 + <precision>-2</precision>
  478 + <conversion_mask>yyyy-MM-dd</conversion_mask>
  479 + <date_format_lenient>false</date_format_lenient>
  480 + <date_format_locale/>
  481 + <date_format_timezone/>
  482 + <lenient_string_to_number>false</lenient_string_to_number>
  483 + <encoding/>
  484 + <decimal_symbol/>
  485 + <grouping_symbol/>
  486 + <currency_symbol/>
  487 + <storage_type/>
  488 + </meta> <meta> <name>zzrq</name>
  489 + <rename>zzrq</rename>
  490 + <type>String</type>
  491 + <length>-2</length>
  492 + <precision>-2</precision>
  493 + <conversion_mask>yyyy-MM-dd</conversion_mask>
  494 + <date_format_lenient>false</date_format_lenient>
  495 + <date_format_locale/>
  496 + <date_format_timezone/>
  497 + <lenient_string_to_number>false</lenient_string_to_number>
  498 + <encoding/>
  499 + <decimal_symbol/>
  500 + <grouping_symbol/>
  501 + <currency_symbol/>
  502 + <storage_type/>
  503 + </meta> </fields> <cluster_schema/>
  504 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  505 + <xloc>478</xloc>
  506 + <yloc>66</yloc>
  507 + <draw>Y</draw>
  508 + </GUI>
  509 + </step>
  510 +
  511 + <step>
  512 + <name>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</name>
  513 + <type>DBLookup</type>
  514 + <description/>
  515 + <distribute>Y</distribute>
  516 + <custom_distribution/>
  517 + <copies>1</copies>
  518 + <partitioning>
  519 + <method>none</method>
  520 + <schema_name/>
  521 + </partitioning>
  522 + <connection>bus_control_variable</connection>
  523 + <cache>Y</cache>
  524 + <cache_load_all>Y</cache_load_all>
  525 + <cache_size>0</cache_size>
  526 + <lookup>
  527 + <schema/>
  528 + <table>bsth_c_line</table>
  529 + <orderby/>
  530 + <fail_on_multiple>N</fail_on_multiple>
  531 + <eat_row_on_failure>N</eat_row_on_failure>
  532 + <key>
  533 + <name>xl</name>
  534 + <field>id</field>
  535 + <condition>&#x3d;</condition>
  536 + <name2/>
  537 + </key>
  538 + <value>
  539 + <name>name</name>
  540 + <rename>xlmc</rename>
  541 + <default/>
  542 + <type>String</type>
  543 + </value>
  544 + </lookup>
  545 + <cluster_schema/>
  546 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  547 + <xloc>248</xloc>
  548 + <yloc>67</yloc>
  549 + <draw>Y</draw>
  550 + </GUI>
  551 + </step>
  552 +
  553 + <step>
  554 + <name>&#x8f66;&#x8f86;&#x67e5;&#x8be2;</name>
  555 + <type>DBLookup</type>
  556 + <description/>
  557 + <distribute>Y</distribute>
  558 + <custom_distribution/>
  559 + <copies>1</copies>
  560 + <partitioning>
  561 + <method>none</method>
  562 + <schema_name/>
  563 + </partitioning>
  564 + <connection>bus_control_variable</connection>
  565 + <cache>N</cache>
  566 + <cache_load_all>N</cache_load_all>
  567 + <cache_size>0</cache_size>
  568 + <lookup>
  569 + <schema/>
  570 + <table>bsth_c_cars</table>
  571 + <orderby/>
  572 + <fail_on_multiple>N</fail_on_multiple>
  573 + <eat_row_on_failure>N</eat_row_on_failure>
  574 + <key>
  575 + <name>cl</name>
  576 + <field>id</field>
  577 + <condition>&#x3d;</condition>
  578 + <name2/>
  579 + </key>
  580 + <value>
  581 + <name>inside_code</name>
  582 + <rename>zbh</rename>
  583 + <default/>
  584 + <type>String</type>
  585 + </value>
  586 + </lookup>
  587 + <cluster_schema/>
  588 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  589 + <xloc>361</xloc>
  590 + <yloc>67</yloc>
  591 + <draw>Y</draw>
  592 + </GUI>
  593 + </step>
  594 +
  595 + <step>
  596 + <name>&#x8f66;&#x8f86;&#x914d;&#x7f6e;&#xff08;&#x6ca1;&#x6709;&#x4f5c;&#x5e9f;&#xff09;</name>
  597 + <type>TableInput</type>
  598 + <description/>
  599 + <distribute>Y</distribute>
  600 + <custom_distribution/>
  601 + <copies>1</copies>
  602 + <partitioning>
  603 + <method>none</method>
  604 + <schema_name/>
  605 + </partitioning>
  606 + <connection>bus_control_variable</connection>
  607 + <sql>select &#x2a; from bsth_c_s_ccinfo where is_cancel &#x3d; 0 and xl &#x3d; &#x24;&#x7b;xlid&#x7d;</sql>
  608 + <limit>0</limit>
  609 + <lookup/>
  610 + <execute_each_row>N</execute_each_row>
  611 + <variables_active>Y</variables_active>
  612 + <lazy_conversion_active>N</lazy_conversion_active>
  613 + <cluster_schema/>
  614 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  615 + <xloc>106</xloc>
  616 + <yloc>68</yloc>
  617 + <draw>Y</draw>
  618 + </GUI>
  619 + </step>
  620 +
  621 + <step_error_handling>
  622 + </step_error_handling>
  623 + <slave-step-copy-partition-distribution>
  624 +</slave-step-copy-partition-distribution>
  625 + <slave_transformation>N</slave_transformation>
  626 +
  627 +</transformation>
... ...
src/main/resources/datatools/ktrs/employeesConfigDataOutput.ktr
1   -<?xml version="1.0" encoding="UTF-8"?>
2   -<transformation>
3   - <info>
4   - <name>&#x4eba;&#x5458;&#x914d;&#x7f6e;&#x4fe1;&#x606f;&#x5bfc;&#x51fa;</name>
5   - <description/>
6   - <extended_description/>
7   - <trans_version/>
8   - <trans_type>Normal</trans_type>
9   - <trans_status>0</trans_status>
10   - <directory>&#x2f;</directory>
11   - <parameters>
12   - <parameter>
13   - <name>filepath</name>
14   - <default_value/>
15   - <description>excel&#x6587;&#x4ef6;&#x8def;&#x5f84;</description>
16   - </parameter>
17   - </parameters>
18   - <log>
19   -<trans-log-table><connection/>
20   -<schema/>
21   -<table/>
22   -<size_limit_lines/>
23   -<interval/>
24   -<timeout_days/>
25   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STATUS</id><enabled>Y</enabled><name>STATUS</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name><subject/></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name><subject/></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name><subject/></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name><subject/></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name><subject/></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name><subject/></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>STARTDATE</id><enabled>Y</enabled><name>STARTDATE</name></field><field><id>ENDDATE</id><enabled>Y</enabled><name>ENDDATE</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>DEPDATE</id><enabled>Y</enabled><name>DEPDATE</name></field><field><id>REPLAYDATE</id><enabled>Y</enabled><name>REPLAYDATE</name></field><field><id>LOG_FIELD</id><enabled>Y</enabled><name>LOG_FIELD</name></field><field><id>EXECUTING_SERVER</id><enabled>N</enabled><name>EXECUTING_SERVER</name></field><field><id>EXECUTING_USER</id><enabled>N</enabled><name>EXECUTING_USER</name></field><field><id>CLIENT</id><enabled>N</enabled><name>CLIENT</name></field></trans-log-table>
26   -<perf-log-table><connection/>
27   -<schema/>
28   -<table/>
29   -<interval/>
30   -<timeout_days/>
31   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>SEQ_NR</id><enabled>Y</enabled><name>SEQ_NR</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>INPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>INPUT_BUFFER_ROWS</name></field><field><id>OUTPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>OUTPUT_BUFFER_ROWS</name></field></perf-log-table>
32   -<channel-log-table><connection/>
33   -<schema/>
34   -<table/>
35   -<timeout_days/>
36   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>LOGGING_OBJECT_TYPE</id><enabled>Y</enabled><name>LOGGING_OBJECT_TYPE</name></field><field><id>OBJECT_NAME</id><enabled>Y</enabled><name>OBJECT_NAME</name></field><field><id>OBJECT_COPY</id><enabled>Y</enabled><name>OBJECT_COPY</name></field><field><id>REPOSITORY_DIRECTORY</id><enabled>Y</enabled><name>REPOSITORY_DIRECTORY</name></field><field><id>FILENAME</id><enabled>Y</enabled><name>FILENAME</name></field><field><id>OBJECT_ID</id><enabled>Y</enabled><name>OBJECT_ID</name></field><field><id>OBJECT_REVISION</id><enabled>Y</enabled><name>OBJECT_REVISION</name></field><field><id>PARENT_CHANNEL_ID</id><enabled>Y</enabled><name>PARENT_CHANNEL_ID</name></field><field><id>ROOT_CHANNEL_ID</id><enabled>Y</enabled><name>ROOT_CHANNEL_ID</name></field></channel-log-table>
37   -<step-log-table><connection/>
38   -<schema/>
39   -<table/>
40   -<timeout_days/>
41   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>LOG_FIELD</id><enabled>N</enabled><name>LOG_FIELD</name></field></step-log-table>
42   -<metrics-log-table><connection/>
43   -<schema/>
44   -<table/>
45   -<timeout_days/>
46   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>METRICS_DATE</id><enabled>Y</enabled><name>METRICS_DATE</name></field><field><id>METRICS_CODE</id><enabled>Y</enabled><name>METRICS_CODE</name></field><field><id>METRICS_DESCRIPTION</id><enabled>Y</enabled><name>METRICS_DESCRIPTION</name></field><field><id>METRICS_SUBJECT</id><enabled>Y</enabled><name>METRICS_SUBJECT</name></field><field><id>METRICS_TYPE</id><enabled>Y</enabled><name>METRICS_TYPE</name></field><field><id>METRICS_VALUE</id><enabled>Y</enabled><name>METRICS_VALUE</name></field></metrics-log-table>
47   - </log>
48   - <maxdate>
49   - <connection/>
50   - <table/>
51   - <field/>
52   - <offset>0.0</offset>
53   - <maxdiff>0.0</maxdiff>
54   - </maxdate>
55   - <size_rowset>10000</size_rowset>
56   - <sleep_time_empty>50</sleep_time_empty>
57   - <sleep_time_full>50</sleep_time_full>
58   - <unique_connections>N</unique_connections>
59   - <feedback_shown>Y</feedback_shown>
60   - <feedback_size>50000</feedback_size>
61   - <using_thread_priorities>Y</using_thread_priorities>
62   - <shared_objects_file/>
63   - <capture_step_performance>N</capture_step_performance>
64   - <step_performance_capturing_delay>1000</step_performance_capturing_delay>
65   - <step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
66   - <dependencies>
67   - </dependencies>
68   - <partitionschemas>
69   - </partitionschemas>
70   - <slaveservers>
71   - </slaveservers>
72   - <clusterschemas>
73   - </clusterschemas>
74   - <created_user>-</created_user>
75   - <created_date>2017&#x2f;01&#x2f;11 15&#x3a;36&#x3a;10.101</created_date>
76   - <modified_user>-</modified_user>
77   - <modified_date>2017&#x2f;01&#x2f;11 15&#x3a;36&#x3a;10.101</modified_date>
78   - <key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA&#x3d;</key_for_session_key>
79   - <is_key_private>N</is_key_private>
80   - </info>
81   - <notepads>
82   - <notepad>
83   - <note>&#x8fd9;&#x91cc;&#x6709;&#x4e9b;&#x95ee;&#x9898;&#xa;&#x5728;window2012&#x7684;&#x73af;&#x5883;&#x4e0b;&#xff0c;&#xa;MySql&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x4e2d;&#x5982;&#x679c;&#x8fd4;&#x56de;&#x4e2d;&#x6587;&#x5185;&#x5bb9;&#x7684;&#x5b57;&#x6bb5;&#xff0c;&#x8fd9;&#x4e2a;&#x5185;&#x5bb9;&#x4e71;&#x7801;&#xa;&#x89e3;&#x51b3;&#x529e;&#x6cd5;&#xff0c;&#x5c31;&#x662f;&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x5168;&#x90e8;&#x7f13;&#x5b58;&#xff0c;&#x5c31;&#x4e0d;&#x4e71;&#x7801;&#xa;linux&#x73af;&#x5883;&#x4e0b;&#x6ca1;&#x95ee;&#x9898;</note>
84   - <xloc>66</xloc>
85   - <yloc>151</yloc>
86   - <width>333</width>
87   - <heigth>90</heigth>
88   - <fontname>YaHei Consolas Hybrid</fontname>
89   - <fontsize>12</fontsize>
90   - <fontbold>N</fontbold>
91   - <fontitalic>N</fontitalic>
92   - <fontcolorred>0</fontcolorred>
93   - <fontcolorgreen>0</fontcolorgreen>
94   - <fontcolorblue>0</fontcolorblue>
95   - <backgroundcolorred>255</backgroundcolorred>
96   - <backgroundcolorgreen>205</backgroundcolorgreen>
97   - <backgroundcolorblue>112</backgroundcolorblue>
98   - <bordercolorred>100</bordercolorred>
99   - <bordercolorgreen>100</bordercolorgreen>
100   - <bordercolorblue>100</bordercolorblue>
101   - <drawshadow>Y</drawshadow>
102   - </notepad>
103   - </notepads>
104   - <connection>
105   - <name>bus_control_variable</name>
106   - <server>&#x24;&#x7b;v_db_ip&#x7d;</server>
107   - <type>MYSQL</type>
108   - <access>Native</access>
109   - <database>&#x24;&#x7b;v_db_dname&#x7d;</database>
110   - <port>3306</port>
111   - <username>&#x24;&#x7b;v_db_uname&#x7d;</username>
112   - <password>&#x24;&#x7b;v_db_pwd&#x7d;</password>
113   - <servername/>
114   - <data_tablespace/>
115   - <index_tablespace/>
116   - <attributes>
117   - <attribute><code>EXTRA_OPTION_MYSQL.characterEncoding</code><attribute>utf8</attribute></attribute>
118   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
119   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
120   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
121   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
122   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
123   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
124   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
125   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
126   - <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
127   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
128   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
129   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
130   - </attributes>
131   - </connection>
132   - <connection>
133   - <name>bus_control_&#x516c;&#x53f8;_201</name>
134   - <server>localhost</server>
135   - <type>MYSQL</type>
136   - <access>Native</access>
137   - <database>control</database>
138   - <port>3306</port>
139   - <username>root</username>
140   - <password>Encrypted </password>
141   - <servername/>
142   - <data_tablespace/>
143   - <index_tablespace/>
144   - <attributes>
145   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
146   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
147   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
148   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
149   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
150   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
151   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
152   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
153   - <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
154   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
155   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
156   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
157   - </attributes>
158   - </connection>
159   - <connection>
160   - <name>bus_control_&#x672c;&#x673a;</name>
161   - <server>localhost</server>
162   - <type>MYSQL</type>
163   - <access>Native</access>
164   - <database>control</database>
165   - <port>3306</port>
166   - <username>root</username>
167   - <password>Encrypted </password>
168   - <servername/>
169   - <data_tablespace/>
170   - <index_tablespace/>
171   - <attributes>
172   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
173   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
174   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
175   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
176   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
177   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
178   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
179   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
180   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
181   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
182   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
183   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
184   - </attributes>
185   - </connection>
186   - <connection>
187   - <name>xlab_mysql_youle</name>
188   - <server>101.231.124.8</server>
189   - <type>MYSQL</type>
190   - <access>Native</access>
191   - <database>xlab_youle</database>
192   - <port>45687</port>
193   - <username>xlab-youle</username>
194   - <password>Encrypted 2be98afc86aa78a88aa1be369d187a3df</password>
195   - <servername/>
196   - <data_tablespace/>
197   - <index_tablespace/>
198   - <attributes>
199   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
200   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
201   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
202   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
203   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
204   - <attribute><code>PORT_NUMBER</code><attribute>45687</attribute></attribute>
205   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
206   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
207   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
208   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
209   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
210   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
211   - </attributes>
212   - </connection>
213   - <connection>
214   - <name>xlab_mysql_youle&#xff08;&#x672c;&#x673a;&#xff09;</name>
215   - <server>localhost</server>
216   - <type>MYSQL</type>
217   - <access>Native</access>
218   - <database>xlab_youle</database>
219   - <port>3306</port>
220   - <username>root</username>
221   - <password>Encrypted </password>
222   - <servername/>
223   - <data_tablespace/>
224   - <index_tablespace/>
225   - <attributes>
226   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
227   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
228   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
229   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
230   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
231   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
232   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
233   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
234   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
235   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
236   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
237   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
238   - </attributes>
239   - </connection>
240   - <connection>
241   - <name>xlab_youle</name>
242   - <server/>
243   - <type>MYSQL</type>
244   - <access>JNDI</access>
245   - <database>xlab_youle</database>
246   - <port>1521</port>
247   - <username/>
248   - <password>Encrypted </password>
249   - <servername/>
250   - <data_tablespace/>
251   - <index_tablespace/>
252   - <attributes>
253   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
254   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
255   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
256   - <attribute><code>PORT_NUMBER</code><attribute>1521</attribute></attribute>
257   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
258   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
259   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
260   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
261   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
262   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
263   - </attributes>
264   - </connection>
265   - <order>
266   - <hop> <from>&#x4eba;&#x5458;&#x914d;&#x7f6e;&#xff08;&#x6ca1;&#x6709;&#x4f5c;&#x5e9f;&#xff09;</from><to>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
267   - <hop> <from>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</from><to>&#x9a7e;&#x9a76;&#x5458;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
268   - <hop> <from>&#x9a7e;&#x9a76;&#x5458;&#x67e5;&#x8be2;</from><to>&#x552e;&#x7968;&#x5458;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
269   - <hop> <from>&#x552e;&#x7968;&#x5458;&#x67e5;&#x8be2;</from><to>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</to><enabled>Y</enabled> </hop>
270   - <hop> <from>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</from><to>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>
271   - <hop> <from>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</from><to>Excel&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>
272   - </order>
273   - <step>
274   - <name>Excel&#x8f93;&#x51fa;</name>
275   - <type>ExcelOutput</type>
276   - <description/>
277   - <distribute>Y</distribute>
278   - <custom_distribution/>
279   - <copies>1</copies>
280   - <partitioning>
281   - <method>none</method>
282   - <schema_name/>
283   - </partitioning>
284   - <header>Y</header>
285   - <footer>N</footer>
286   - <encoding/>
287   - <append>N</append>
288   - <add_to_result_filenames>Y</add_to_result_filenames>
289   - <file>
290   - <name>&#x24;&#x7b;filepath&#x7d;</name>
291   - <extention/>
292   - <do_not_open_newfile_init>N</do_not_open_newfile_init>
293   - <create_parent_folder>N</create_parent_folder>
294   - <split>N</split>
295   - <add_date>N</add_date>
296   - <add_time>N</add_time>
297   - <SpecifyFormat>N</SpecifyFormat>
298   - <date_time_format>yyyyMMddHHmmss</date_time_format>
299   - <sheetname>&#x5de5;&#x4f5c;&#x8868;1</sheetname>
300   - <autosizecolums>N</autosizecolums>
301   - <nullisblank>N</nullisblank>
302   - <protect_sheet>N</protect_sheet>
303   - <password>Encrypted </password>
304   - <splitevery>0</splitevery>
305   - <usetempfiles>N</usetempfiles>
306   - <tempdirectory/>
307   - </file>
308   - <template>
309   - <enabled>N</enabled>
310   - <append>N</append>
311   - <filename>template.xls</filename>
312   - </template>
313   - <fields>
314   - <field>
315   - <name>&#x7ebf;&#x8def;</name>
316   - <type>String</type>
317   - <format/>
318   - </field>
319   - <field>
320   - <name>&#x642d;&#x73ed;&#x7f16;&#x7801;</name>
321   - <type>String</type>
322   - <format/>
323   - </field>
324   - <field>
325   - <name>&#x9a7e;&#x9a76;&#x5458;&#x5de5;&#x53f7;</name>
326   - <type>String</type>
327   - <format/>
328   - </field>
329   - <field>
330   - <name>&#x9a7e;&#x9a76;&#x5458;</name>
331   - <type>String</type>
332   - <format/>
333   - </field>
334   - <field>
335   - <name>&#x552e;&#x7968;&#x5458;&#x5de5;&#x53f7;</name>
336   - <type>String</type>
337   - <format/>
338   - </field>
339   - <field>
340   - <name>&#x552e;&#x7968;&#x5458;</name>
341   - <type>String</type>
342   - <format/>
343   - </field>
344   - </fields>
345   - <custom>
346   - <header_font_name>arial</header_font_name>
347   - <header_font_size>10</header_font_size>
348   - <header_font_bold>N</header_font_bold>
349   - <header_font_italic>N</header_font_italic>
350   - <header_font_underline>no</header_font_underline>
351   - <header_font_orientation>horizontal</header_font_orientation>
352   - <header_font_color>black</header_font_color>
353   - <header_background_color>none</header_background_color>
354   - <header_row_height>255</header_row_height>
355   - <header_alignment>left</header_alignment>
356   - <header_image/>
357   - <row_font_name>arial</row_font_name>
358   - <row_font_size>10</row_font_size>
359   - <row_font_color>black</row_font_color>
360   - <row_background_color>none</row_background_color>
361   - </custom>
362   - <cluster_schema/>
363   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
364   - <xloc>696</xloc>
365   - <yloc>257</yloc>
366   - <draw>Y</draw>
367   - </GUI>
368   - </step>
369   -
370   - <step>
371   - <name>&#x4eba;&#x5458;&#x914d;&#x7f6e;&#xff08;&#x6ca1;&#x6709;&#x4f5c;&#x5e9f;&#xff09;</name>
372   - <type>TableInput</type>
373   - <description/>
374   - <distribute>Y</distribute>
375   - <custom_distribution/>
376   - <copies>1</copies>
377   - <partitioning>
378   - <method>none</method>
379   - <schema_name/>
380   - </partitioning>
381   - <connection>bus_control_variable</connection>
382   - <sql>select &#x2a; from bsth_c_s_ecinfo where is_cancel &#x3d; 0</sql>
383   - <limit>0</limit>
384   - <lookup/>
385   - <execute_each_row>N</execute_each_row>
386   - <variables_active>N</variables_active>
387   - <lazy_conversion_active>N</lazy_conversion_active>
388   - <cluster_schema/>
389   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
390   - <xloc>90</xloc>
391   - <yloc>59</yloc>
392   - <draw>Y</draw>
393   - </GUI>
394   - </step>
395   -
396   - <step>
397   - <name>&#x552e;&#x7968;&#x5458;&#x67e5;&#x8be2;</name>
398   - <type>DBJoin</type>
399   - <description/>
400   - <distribute>Y</distribute>
401   - <custom_distribution/>
402   - <copies>1</copies>
403   - <partitioning>
404   - <method>none</method>
405   - <schema_name/>
406   - </partitioning>
407   - <connection>bus_control_variable</connection>
408   - <rowlimit>1</rowlimit>
409   - <sql>select job_code as scode, personnel_name as sname from bsth_c_personnel&#xa;where id &#x3d; &#x3f;</sql>
410   - <outer_join>Y</outer_join>
411   - <replace_vars>N</replace_vars>
412   - <parameter>
413   - <field>
414   - <name>spy</name>
415   - <type>Integer</type>
416   - </field>
417   - </parameter>
418   - <cluster_schema/>
419   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
420   - <xloc>491</xloc>
421   - <yloc>60</yloc>
422   - <draw>Y</draw>
423   - </GUI>
424   - </step>
425   -
426   - <step>
427   - <name>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</name>
428   - <type>SelectValues</type>
429   - <description/>
430   - <distribute>Y</distribute>
431   - <custom_distribution/>
432   - <copies>1</copies>
433   - <partitioning>
434   - <method>none</method>
435   - <schema_name/>
436   - </partitioning>
437   - <fields> <field> <name>xlmc</name>
438   - <rename>&#x7ebf;&#x8def;</rename>
439   - <length>-2</length>
440   - <precision>-2</precision>
441   - </field> <field> <name>dbbm</name>
442   - <rename>&#x642d;&#x73ed;&#x7f16;&#x7801;</rename>
443   - <length>-2</length>
444   - <precision>-2</precision>
445   - </field> <field> <name>jcode</name>
446   - <rename>&#x9a7e;&#x9a76;&#x5458;&#x5de5;&#x53f7;</rename>
447   - <length>-2</length>
448   - <precision>-2</precision>
449   - </field> <field> <name>jname</name>
450   - <rename>&#x9a7e;&#x9a76;&#x5458;</rename>
451   - <length>-2</length>
452   - <precision>-2</precision>
453   - </field> <field> <name>scode</name>
454   - <rename>&#x552e;&#x7968;&#x5458;&#x5de5;&#x53f7;</rename>
455   - <length>-2</length>
456   - <precision>-2</precision>
457   - </field> <field> <name>sname</name>
458   - <rename>&#x552e;&#x7968;&#x5458;</rename>
459   - <length>-2</length>
460   - <precision>-2</precision>
461   - </field> <select_unspecified>N</select_unspecified>
462   - </fields> <cluster_schema/>
463   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
464   - <xloc>492</xloc>
465   - <yloc>164</yloc>
466   - <draw>Y</draw>
467   - </GUI>
468   - </step>
469   -
470   - <step>
471   - <name>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</name>
472   - <type>SortRows</type>
473   - <description/>
474   - <distribute>Y</distribute>
475   - <custom_distribution/>
476   - <copies>1</copies>
477   - <partitioning>
478   - <method>none</method>
479   - <schema_name/>
480   - </partitioning>
481   - <directory>&#x25;&#x25;java.io.tmpdir&#x25;&#x25;</directory>
482   - <prefix>out</prefix>
483   - <sort_size>1000000</sort_size>
484   - <free_memory/>
485   - <compress>N</compress>
486   - <compress_variable/>
487   - <unique_rows>N</unique_rows>
488   - <fields>
489   - <field>
490   - <name>&#x7ebf;&#x8def;</name>
491   - <ascending>Y</ascending>
492   - <case_sensitive>N</case_sensitive>
493   - <presorted>N</presorted>
494   - </field>
495   - <field>
496   - <name>&#x642d;&#x73ed;&#x7f16;&#x7801;</name>
497   - <ascending>Y</ascending>
498   - <case_sensitive>N</case_sensitive>
499   - <presorted>N</presorted>
500   - </field>
501   - </fields>
502   - <cluster_schema/>
503   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
504   - <xloc>692</xloc>
505   - <yloc>164</yloc>
506   - <draw>Y</draw>
507   - </GUI>
508   - </step>
509   -
510   - <step>
511   - <name>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</name>
512   - <type>DBLookup</type>
513   - <description/>
514   - <distribute>Y</distribute>
515   - <custom_distribution/>
516   - <copies>1</copies>
517   - <partitioning>
518   - <method>none</method>
519   - <schema_name/>
520   - </partitioning>
521   - <connection>bus_control_variable</connection>
522   - <cache>Y</cache>
523   - <cache_load_all>Y</cache_load_all>
524   - <cache_size>0</cache_size>
525   - <lookup>
526   - <schema/>
527   - <table>bsth_c_line</table>
528   - <orderby/>
529   - <fail_on_multiple>N</fail_on_multiple>
530   - <eat_row_on_failure>N</eat_row_on_failure>
531   - <key>
532   - <name>xl</name>
533   - <field>id</field>
534   - <condition>&#x3d;</condition>
535   - <name2/>
536   - </key>
537   - <value>
538   - <name>name</name>
539   - <rename>xlmc</rename>
540   - <default/>
541   - <type>String</type>
542   - </value>
543   - </lookup>
544   - <cluster_schema/>
545   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
546   - <xloc>227</xloc>
547   - <yloc>59</yloc>
548   - <draw>Y</draw>
549   - </GUI>
550   - </step>
551   -
552   - <step>
553   - <name>&#x9a7e;&#x9a76;&#x5458;&#x67e5;&#x8be2;</name>
554   - <type>DBJoin</type>
555   - <description/>
556   - <distribute>Y</distribute>
557   - <custom_distribution/>
558   - <copies>1</copies>
559   - <partitioning>
560   - <method>none</method>
561   - <schema_name/>
562   - </partitioning>
563   - <connection>bus_control_variable</connection>
564   - <rowlimit>1</rowlimit>
565   - <sql>select job_code as jcode, personnel_name as jname from bsth_c_personnel&#xa;where id &#x3d; &#x3f;</sql>
566   - <outer_join>Y</outer_join>
567   - <replace_vars>N</replace_vars>
568   - <parameter>
569   - <field>
570   - <name>jsy</name>
571   - <type>Integer</type>
572   - </field>
573   - </parameter>
574   - <cluster_schema/>
575   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
576   - <xloc>366</xloc>
577   - <yloc>60</yloc>
578   - <draw>Y</draw>
579   - </GUI>
580   - </step>
581   -
582   - <step_error_handling>
583   - </step_error_handling>
584   - <slave-step-copy-partition-distribution>
585   -</slave-step-copy-partition-distribution>
586   - <slave_transformation>N</slave_transformation>
587   -
588   -</transformation>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<transformation>
  3 + <info>
  4 + <name>&#x4eba;&#x5458;&#x914d;&#x7f6e;&#x4fe1;&#x606f;&#x5bfc;&#x51fa;</name>
  5 + <description/>
  6 + <extended_description/>
  7 + <trans_version/>
  8 + <trans_type>Normal</trans_type>
  9 + <trans_status>0</trans_status>
  10 + <directory>&#x2f;</directory>
  11 + <parameters>
  12 + <parameter>
  13 + <name>filepath</name>
  14 + <default_value/>
  15 + <description>excel&#x6587;&#x4ef6;&#x8def;&#x5f84;</description>
  16 + </parameter>
  17 + <parameter>
  18 + <name>xlid</name>
  19 + <default_value/>
  20 + <description>&#x7ebf;&#x8def;id</description>
  21 + </parameter>
  22 + </parameters>
  23 + <log>
  24 +<trans-log-table><connection/>
  25 +<schema/>
  26 +<table/>
  27 +<size_limit_lines/>
  28 +<interval/>
  29 +<timeout_days/>
  30 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STATUS</id><enabled>Y</enabled><name>STATUS</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name><subject/></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name><subject/></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name><subject/></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name><subject/></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name><subject/></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name><subject/></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>STARTDATE</id><enabled>Y</enabled><name>STARTDATE</name></field><field><id>ENDDATE</id><enabled>Y</enabled><name>ENDDATE</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>DEPDATE</id><enabled>Y</enabled><name>DEPDATE</name></field><field><id>REPLAYDATE</id><enabled>Y</enabled><name>REPLAYDATE</name></field><field><id>LOG_FIELD</id><enabled>Y</enabled><name>LOG_FIELD</name></field><field><id>EXECUTING_SERVER</id><enabled>N</enabled><name>EXECUTING_SERVER</name></field><field><id>EXECUTING_USER</id><enabled>N</enabled><name>EXECUTING_USER</name></field><field><id>CLIENT</id><enabled>N</enabled><name>CLIENT</name></field></trans-log-table>
  31 +<perf-log-table><connection/>
  32 +<schema/>
  33 +<table/>
  34 +<interval/>
  35 +<timeout_days/>
  36 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>SEQ_NR</id><enabled>Y</enabled><name>SEQ_NR</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>INPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>INPUT_BUFFER_ROWS</name></field><field><id>OUTPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>OUTPUT_BUFFER_ROWS</name></field></perf-log-table>
  37 +<channel-log-table><connection/>
  38 +<schema/>
  39 +<table/>
  40 +<timeout_days/>
  41 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>LOGGING_OBJECT_TYPE</id><enabled>Y</enabled><name>LOGGING_OBJECT_TYPE</name></field><field><id>OBJECT_NAME</id><enabled>Y</enabled><name>OBJECT_NAME</name></field><field><id>OBJECT_COPY</id><enabled>Y</enabled><name>OBJECT_COPY</name></field><field><id>REPOSITORY_DIRECTORY</id><enabled>Y</enabled><name>REPOSITORY_DIRECTORY</name></field><field><id>FILENAME</id><enabled>Y</enabled><name>FILENAME</name></field><field><id>OBJECT_ID</id><enabled>Y</enabled><name>OBJECT_ID</name></field><field><id>OBJECT_REVISION</id><enabled>Y</enabled><name>OBJECT_REVISION</name></field><field><id>PARENT_CHANNEL_ID</id><enabled>Y</enabled><name>PARENT_CHANNEL_ID</name></field><field><id>ROOT_CHANNEL_ID</id><enabled>Y</enabled><name>ROOT_CHANNEL_ID</name></field></channel-log-table>
  42 +<step-log-table><connection/>
  43 +<schema/>
  44 +<table/>
  45 +<timeout_days/>
  46 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>LOG_FIELD</id><enabled>N</enabled><name>LOG_FIELD</name></field></step-log-table>
  47 +<metrics-log-table><connection/>
  48 +<schema/>
  49 +<table/>
  50 +<timeout_days/>
  51 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>METRICS_DATE</id><enabled>Y</enabled><name>METRICS_DATE</name></field><field><id>METRICS_CODE</id><enabled>Y</enabled><name>METRICS_CODE</name></field><field><id>METRICS_DESCRIPTION</id><enabled>Y</enabled><name>METRICS_DESCRIPTION</name></field><field><id>METRICS_SUBJECT</id><enabled>Y</enabled><name>METRICS_SUBJECT</name></field><field><id>METRICS_TYPE</id><enabled>Y</enabled><name>METRICS_TYPE</name></field><field><id>METRICS_VALUE</id><enabled>Y</enabled><name>METRICS_VALUE</name></field></metrics-log-table>
  52 + </log>
  53 + <maxdate>
  54 + <connection/>
  55 + <table/>
  56 + <field/>
  57 + <offset>0.0</offset>
  58 + <maxdiff>0.0</maxdiff>
  59 + </maxdate>
  60 + <size_rowset>10000</size_rowset>
  61 + <sleep_time_empty>50</sleep_time_empty>
  62 + <sleep_time_full>50</sleep_time_full>
  63 + <unique_connections>N</unique_connections>
  64 + <feedback_shown>Y</feedback_shown>
  65 + <feedback_size>50000</feedback_size>
  66 + <using_thread_priorities>Y</using_thread_priorities>
  67 + <shared_objects_file/>
  68 + <capture_step_performance>N</capture_step_performance>
  69 + <step_performance_capturing_delay>1000</step_performance_capturing_delay>
  70 + <step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
  71 + <dependencies>
  72 + </dependencies>
  73 + <partitionschemas>
  74 + </partitionschemas>
  75 + <slaveservers>
  76 + </slaveservers>
  77 + <clusterschemas>
  78 + </clusterschemas>
  79 + <created_user>-</created_user>
  80 + <created_date>2017&#x2f;01&#x2f;11 15&#x3a;36&#x3a;10.101</created_date>
  81 + <modified_user>-</modified_user>
  82 + <modified_date>2017&#x2f;01&#x2f;11 15&#x3a;36&#x3a;10.101</modified_date>
  83 + <key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA&#x3d;</key_for_session_key>
  84 + <is_key_private>N</is_key_private>
  85 + </info>
  86 + <notepads>
  87 + <notepad>
  88 + <note>&#x8fd9;&#x91cc;&#x6709;&#x4e9b;&#x95ee;&#x9898;&#xa;&#x5728;window2012&#x7684;&#x73af;&#x5883;&#x4e0b;&#xff0c;&#xa;MySql&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x4e2d;&#x5982;&#x679c;&#x8fd4;&#x56de;&#x4e2d;&#x6587;&#x5185;&#x5bb9;&#x7684;&#x5b57;&#x6bb5;&#xff0c;&#x8fd9;&#x4e2a;&#x5185;&#x5bb9;&#x4e71;&#x7801;&#xa;&#x89e3;&#x51b3;&#x529e;&#x6cd5;&#xff0c;&#x5c31;&#x662f;&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x5168;&#x90e8;&#x7f13;&#x5b58;&#xff0c;&#x5c31;&#x4e0d;&#x4e71;&#x7801;&#xa;linux&#x73af;&#x5883;&#x4e0b;&#x6ca1;&#x95ee;&#x9898;</note>
  89 + <xloc>66</xloc>
  90 + <yloc>151</yloc>
  91 + <width>333</width>
  92 + <heigth>90</heigth>
  93 + <fontname>YaHei Consolas Hybrid</fontname>
  94 + <fontsize>12</fontsize>
  95 + <fontbold>N</fontbold>
  96 + <fontitalic>N</fontitalic>
  97 + <fontcolorred>0</fontcolorred>
  98 + <fontcolorgreen>0</fontcolorgreen>
  99 + <fontcolorblue>0</fontcolorblue>
  100 + <backgroundcolorred>255</backgroundcolorred>
  101 + <backgroundcolorgreen>205</backgroundcolorgreen>
  102 + <backgroundcolorblue>112</backgroundcolorblue>
  103 + <bordercolorred>100</bordercolorred>
  104 + <bordercolorgreen>100</bordercolorgreen>
  105 + <bordercolorblue>100</bordercolorblue>
  106 + <drawshadow>Y</drawshadow>
  107 + </notepad>
  108 + </notepads>
  109 + <connection>
  110 + <name>bus_control_variable</name>
  111 + <server>&#x24;&#x7b;v_db_ip&#x7d;</server>
  112 + <type>MYSQL</type>
  113 + <access>Native</access>
  114 + <database>&#x24;&#x7b;v_db_dname&#x7d;</database>
  115 + <port>3306</port>
  116 + <username>&#x24;&#x7b;v_db_uname&#x7d;</username>
  117 + <password>&#x24;&#x7b;v_db_pwd&#x7d;</password>
  118 + <servername/>
  119 + <data_tablespace/>
  120 + <index_tablespace/>
  121 + <attributes>
  122 + <attribute><code>EXTRA_OPTION_MYSQL.characterEncoding</code><attribute>utf8</attribute></attribute>
  123 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  124 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  125 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  126 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  127 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  128 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  129 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  130 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  131 + <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
  132 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  133 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  134 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  135 + </attributes>
  136 + </connection>
  137 + <connection>
  138 + <name>bus_control_&#x516c;&#x53f8;_201</name>
  139 + <server>localhost</server>
  140 + <type>MYSQL</type>
  141 + <access>Native</access>
  142 + <database>control</database>
  143 + <port>3306</port>
  144 + <username>root</username>
  145 + <password>Encrypted </password>
  146 + <servername/>
  147 + <data_tablespace/>
  148 + <index_tablespace/>
  149 + <attributes>
  150 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  151 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  152 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  153 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  154 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  155 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  156 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  157 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  158 + <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
  159 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  160 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  161 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  162 + </attributes>
  163 + </connection>
  164 + <connection>
  165 + <name>bus_control_&#x672c;&#x673a;</name>
  166 + <server>localhost</server>
  167 + <type>MYSQL</type>
  168 + <access>Native</access>
  169 + <database>control</database>
  170 + <port>3306</port>
  171 + <username>root</username>
  172 + <password>Encrypted </password>
  173 + <servername/>
  174 + <data_tablespace/>
  175 + <index_tablespace/>
  176 + <attributes>
  177 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  178 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  179 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  180 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  181 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  182 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  183 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  184 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  185 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  186 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  187 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  188 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  189 + </attributes>
  190 + </connection>
  191 + <connection>
  192 + <name>xlab_mysql_youle</name>
  193 + <server>101.231.124.8</server>
  194 + <type>MYSQL</type>
  195 + <access>Native</access>
  196 + <database>xlab_youle</database>
  197 + <port>45687</port>
  198 + <username>xlab-youle</username>
  199 + <password>Encrypted 2be98afc86aa78a88aa1be369d187a3df</password>
  200 + <servername/>
  201 + <data_tablespace/>
  202 + <index_tablespace/>
  203 + <attributes>
  204 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  205 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  206 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  207 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  208 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  209 + <attribute><code>PORT_NUMBER</code><attribute>45687</attribute></attribute>
  210 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  211 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  212 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  213 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
  214 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
  215 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  216 + </attributes>
  217 + </connection>
  218 + <connection>
  219 + <name>xlab_mysql_youle&#xff08;&#x672c;&#x673a;&#xff09;</name>
  220 + <server>localhost</server>
  221 + <type>MYSQL</type>
  222 + <access>Native</access>
  223 + <database>xlab_youle</database>
  224 + <port>3306</port>
  225 + <username>root</username>
  226 + <password>Encrypted </password>
  227 + <servername/>
  228 + <data_tablespace/>
  229 + <index_tablespace/>
  230 + <attributes>
  231 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  232 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  233 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  234 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  235 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  236 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  237 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  238 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  239 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  240 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
  241 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
  242 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  243 + </attributes>
  244 + </connection>
  245 + <connection>
  246 + <name>xlab_youle</name>
  247 + <server/>
  248 + <type>MYSQL</type>
  249 + <access>JNDI</access>
  250 + <database>xlab_youle</database>
  251 + <port>1521</port>
  252 + <username/>
  253 + <password>Encrypted </password>
  254 + <servername/>
  255 + <data_tablespace/>
  256 + <index_tablespace/>
  257 + <attributes>
  258 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  259 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  260 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  261 + <attribute><code>PORT_NUMBER</code><attribute>1521</attribute></attribute>
  262 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  263 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  264 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  265 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  266 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  267 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  268 + </attributes>
  269 + </connection>
  270 + <order>
  271 + <hop> <from>&#x4eba;&#x5458;&#x914d;&#x7f6e;&#xff08;&#x6ca1;&#x6709;&#x4f5c;&#x5e9f;&#xff09;</from><to>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
  272 + <hop> <from>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</from><to>&#x9a7e;&#x9a76;&#x5458;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
  273 + <hop> <from>&#x9a7e;&#x9a76;&#x5458;&#x67e5;&#x8be2;</from><to>&#x552e;&#x7968;&#x5458;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
  274 + <hop> <from>&#x552e;&#x7968;&#x5458;&#x67e5;&#x8be2;</from><to>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</to><enabled>Y</enabled> </hop>
  275 + <hop> <from>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</from><to>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>
  276 + <hop> <from>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</from><to>Excel&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>
  277 + </order>
  278 + <step>
  279 + <name>Excel&#x8f93;&#x51fa;</name>
  280 + <type>ExcelOutput</type>
  281 + <description/>
  282 + <distribute>Y</distribute>
  283 + <custom_distribution/>
  284 + <copies>1</copies>
  285 + <partitioning>
  286 + <method>none</method>
  287 + <schema_name/>
  288 + </partitioning>
  289 + <header>Y</header>
  290 + <footer>N</footer>
  291 + <encoding/>
  292 + <append>N</append>
  293 + <add_to_result_filenames>Y</add_to_result_filenames>
  294 + <file>
  295 + <name>&#x24;&#x7b;filepath&#x7d;</name>
  296 + <extention/>
  297 + <do_not_open_newfile_init>N</do_not_open_newfile_init>
  298 + <create_parent_folder>N</create_parent_folder>
  299 + <split>N</split>
  300 + <add_date>N</add_date>
  301 + <add_time>N</add_time>
  302 + <SpecifyFormat>N</SpecifyFormat>
  303 + <date_time_format>yyyyMMddHHmmss</date_time_format>
  304 + <sheetname>&#x5de5;&#x4f5c;&#x8868;1</sheetname>
  305 + <autosizecolums>N</autosizecolums>
  306 + <nullisblank>N</nullisblank>
  307 + <protect_sheet>N</protect_sheet>
  308 + <password>Encrypted </password>
  309 + <splitevery>0</splitevery>
  310 + <usetempfiles>N</usetempfiles>
  311 + <tempdirectory/>
  312 + </file>
  313 + <template>
  314 + <enabled>N</enabled>
  315 + <append>N</append>
  316 + <filename>template.xls</filename>
  317 + </template>
  318 + <fields>
  319 + <field>
  320 + <name>&#x7ebf;&#x8def;</name>
  321 + <type>String</type>
  322 + <format/>
  323 + </field>
  324 + <field>
  325 + <name>&#x642d;&#x73ed;&#x7f16;&#x7801;</name>
  326 + <type>String</type>
  327 + <format/>
  328 + </field>
  329 + <field>
  330 + <name>&#x9a7e;&#x9a76;&#x5458;&#x5de5;&#x53f7;</name>
  331 + <type>String</type>
  332 + <format/>
  333 + </field>
  334 + <field>
  335 + <name>&#x9a7e;&#x9a76;&#x5458;</name>
  336 + <type>String</type>
  337 + <format/>
  338 + </field>
  339 + <field>
  340 + <name>&#x552e;&#x7968;&#x5458;&#x5de5;&#x53f7;</name>
  341 + <type>String</type>
  342 + <format/>
  343 + </field>
  344 + <field>
  345 + <name>&#x552e;&#x7968;&#x5458;</name>
  346 + <type>String</type>
  347 + <format/>
  348 + </field>
  349 + </fields>
  350 + <custom>
  351 + <header_font_name>arial</header_font_name>
  352 + <header_font_size>10</header_font_size>
  353 + <header_font_bold>N</header_font_bold>
  354 + <header_font_italic>N</header_font_italic>
  355 + <header_font_underline>no</header_font_underline>
  356 + <header_font_orientation>horizontal</header_font_orientation>
  357 + <header_font_color>black</header_font_color>
  358 + <header_background_color>none</header_background_color>
  359 + <header_row_height>255</header_row_height>
  360 + <header_alignment>left</header_alignment>
  361 + <header_image/>
  362 + <row_font_name>arial</row_font_name>
  363 + <row_font_size>10</row_font_size>
  364 + <row_font_color>black</row_font_color>
  365 + <row_background_color>none</row_background_color>
  366 + </custom>
  367 + <cluster_schema/>
  368 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  369 + <xloc>696</xloc>
  370 + <yloc>257</yloc>
  371 + <draw>Y</draw>
  372 + </GUI>
  373 + </step>
  374 +
  375 + <step>
  376 + <name>&#x4eba;&#x5458;&#x914d;&#x7f6e;&#xff08;&#x6ca1;&#x6709;&#x4f5c;&#x5e9f;&#xff09;</name>
  377 + <type>TableInput</type>
  378 + <description/>
  379 + <distribute>Y</distribute>
  380 + <custom_distribution/>
  381 + <copies>1</copies>
  382 + <partitioning>
  383 + <method>none</method>
  384 + <schema_name/>
  385 + </partitioning>
  386 + <connection>bus_control_variable</connection>
  387 + <sql>select &#x2a; from bsth_c_s_ecinfo where is_cancel &#x3d; 0 and xl &#x3d; &#x24;&#x7b;xlid&#x7d;</sql>
  388 + <limit>0</limit>
  389 + <lookup/>
  390 + <execute_each_row>N</execute_each_row>
  391 + <variables_active>Y</variables_active>
  392 + <lazy_conversion_active>N</lazy_conversion_active>
  393 + <cluster_schema/>
  394 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  395 + <xloc>90</xloc>
  396 + <yloc>59</yloc>
  397 + <draw>Y</draw>
  398 + </GUI>
  399 + </step>
  400 +
  401 + <step>
  402 + <name>&#x552e;&#x7968;&#x5458;&#x67e5;&#x8be2;</name>
  403 + <type>DBJoin</type>
  404 + <description/>
  405 + <distribute>Y</distribute>
  406 + <custom_distribution/>
  407 + <copies>1</copies>
  408 + <partitioning>
  409 + <method>none</method>
  410 + <schema_name/>
  411 + </partitioning>
  412 + <connection>bus_control_variable</connection>
  413 + <rowlimit>1</rowlimit>
  414 + <sql>select job_code as scode, personnel_name as sname from bsth_c_personnel&#xa;where id &#x3d; &#x3f;</sql>
  415 + <outer_join>Y</outer_join>
  416 + <replace_vars>N</replace_vars>
  417 + <parameter>
  418 + <field>
  419 + <name>spy</name>
  420 + <type>Integer</type>
  421 + </field>
  422 + </parameter>
  423 + <cluster_schema/>
  424 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  425 + <xloc>491</xloc>
  426 + <yloc>60</yloc>
  427 + <draw>Y</draw>
  428 + </GUI>
  429 + </step>
  430 +
  431 + <step>
  432 + <name>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</name>
  433 + <type>SelectValues</type>
  434 + <description/>
  435 + <distribute>Y</distribute>
  436 + <custom_distribution/>
  437 + <copies>1</copies>
  438 + <partitioning>
  439 + <method>none</method>
  440 + <schema_name/>
  441 + </partitioning>
  442 + <fields> <field> <name>xlmc</name>
  443 + <rename>&#x7ebf;&#x8def;</rename>
  444 + <length>-2</length>
  445 + <precision>-2</precision>
  446 + </field> <field> <name>dbbm</name>
  447 + <rename>&#x642d;&#x73ed;&#x7f16;&#x7801;</rename>
  448 + <length>-2</length>
  449 + <precision>-2</precision>
  450 + </field> <field> <name>jcode</name>
  451 + <rename>&#x9a7e;&#x9a76;&#x5458;&#x5de5;&#x53f7;</rename>
  452 + <length>-2</length>
  453 + <precision>-2</precision>
  454 + </field> <field> <name>jname</name>
  455 + <rename>&#x9a7e;&#x9a76;&#x5458;</rename>
  456 + <length>-2</length>
  457 + <precision>-2</precision>
  458 + </field> <field> <name>scode</name>
  459 + <rename>&#x552e;&#x7968;&#x5458;&#x5de5;&#x53f7;</rename>
  460 + <length>-2</length>
  461 + <precision>-2</precision>
  462 + </field> <field> <name>sname</name>
  463 + <rename>&#x552e;&#x7968;&#x5458;</rename>
  464 + <length>-2</length>
  465 + <precision>-2</precision>
  466 + </field> <select_unspecified>N</select_unspecified>
  467 + </fields> <cluster_schema/>
  468 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  469 + <xloc>492</xloc>
  470 + <yloc>164</yloc>
  471 + <draw>Y</draw>
  472 + </GUI>
  473 + </step>
  474 +
  475 + <step>
  476 + <name>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</name>
  477 + <type>SortRows</type>
  478 + <description/>
  479 + <distribute>Y</distribute>
  480 + <custom_distribution/>
  481 + <copies>1</copies>
  482 + <partitioning>
  483 + <method>none</method>
  484 + <schema_name/>
  485 + </partitioning>
  486 + <directory>&#x25;&#x25;java.io.tmpdir&#x25;&#x25;</directory>
  487 + <prefix>out</prefix>
  488 + <sort_size>1000000</sort_size>
  489 + <free_memory/>
  490 + <compress>N</compress>
  491 + <compress_variable/>
  492 + <unique_rows>N</unique_rows>
  493 + <fields>
  494 + <field>
  495 + <name>&#x7ebf;&#x8def;</name>
  496 + <ascending>Y</ascending>
  497 + <case_sensitive>N</case_sensitive>
  498 + <presorted>N</presorted>
  499 + </field>
  500 + <field>
  501 + <name>&#x642d;&#x73ed;&#x7f16;&#x7801;</name>
  502 + <ascending>Y</ascending>
  503 + <case_sensitive>N</case_sensitive>
  504 + <presorted>N</presorted>
  505 + </field>
  506 + </fields>
  507 + <cluster_schema/>
  508 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  509 + <xloc>692</xloc>
  510 + <yloc>164</yloc>
  511 + <draw>Y</draw>
  512 + </GUI>
  513 + </step>
  514 +
  515 + <step>
  516 + <name>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</name>
  517 + <type>DBLookup</type>
  518 + <description/>
  519 + <distribute>Y</distribute>
  520 + <custom_distribution/>
  521 + <copies>1</copies>
  522 + <partitioning>
  523 + <method>none</method>
  524 + <schema_name/>
  525 + </partitioning>
  526 + <connection>bus_control_variable</connection>
  527 + <cache>Y</cache>
  528 + <cache_load_all>Y</cache_load_all>
  529 + <cache_size>0</cache_size>
  530 + <lookup>
  531 + <schema/>
  532 + <table>bsth_c_line</table>
  533 + <orderby/>
  534 + <fail_on_multiple>N</fail_on_multiple>
  535 + <eat_row_on_failure>N</eat_row_on_failure>
  536 + <key>
  537 + <name>xl</name>
  538 + <field>id</field>
  539 + <condition>&#x3d;</condition>
  540 + <name2/>
  541 + </key>
  542 + <value>
  543 + <name>name</name>
  544 + <rename>xlmc</rename>
  545 + <default/>
  546 + <type>String</type>
  547 + </value>
  548 + </lookup>
  549 + <cluster_schema/>
  550 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  551 + <xloc>227</xloc>
  552 + <yloc>59</yloc>
  553 + <draw>Y</draw>
  554 + </GUI>
  555 + </step>
  556 +
  557 + <step>
  558 + <name>&#x9a7e;&#x9a76;&#x5458;&#x67e5;&#x8be2;</name>
  559 + <type>DBJoin</type>
  560 + <description/>
  561 + <distribute>Y</distribute>
  562 + <custom_distribution/>
  563 + <copies>1</copies>
  564 + <partitioning>
  565 + <method>none</method>
  566 + <schema_name/>
  567 + </partitioning>
  568 + <connection>bus_control_variable</connection>
  569 + <rowlimit>1</rowlimit>
  570 + <sql>select job_code as jcode, personnel_name as jname from bsth_c_personnel&#xa;where id &#x3d; &#x3f;</sql>
  571 + <outer_join>Y</outer_join>
  572 + <replace_vars>N</replace_vars>
  573 + <parameter>
  574 + <field>
  575 + <name>jsy</name>
  576 + <type>Integer</type>
  577 + </field>
  578 + </parameter>
  579 + <cluster_schema/>
  580 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  581 + <xloc>366</xloc>
  582 + <yloc>60</yloc>
  583 + <draw>Y</draw>
  584 + </GUI>
  585 + </step>
  586 +
  587 + <step_error_handling>
  588 + </step_error_handling>
  589 + <slave-step-copy-partition-distribution>
  590 +</slave-step-copy-partition-distribution>
  591 + <slave_transformation>N</slave_transformation>
  592 +
  593 +</transformation>
... ...
src/main/resources/datatools/ktrs/guideboardDataOutput.ktr
1   -<?xml version="1.0" encoding="UTF-8"?>
2   -<transformation>
3   - <info>
4   - <name>&#x8def;&#x724c;&#x4fe1;&#x606f;&#x5bfc;&#x51fa;</name>
5   - <description/>
6   - <extended_description/>
7   - <trans_version/>
8   - <trans_type>Normal</trans_type>
9   - <trans_status>0</trans_status>
10   - <directory>&#x2f;</directory>
11   - <parameters>
12   - <parameter>
13   - <name>filepath</name>
14   - <default_value/>
15   - <description>excel&#x6587;&#x4ef6;&#x8def;&#x5f84;</description>
16   - </parameter>
17   - </parameters>
18   - <log>
19   -<trans-log-table><connection/>
20   -<schema/>
21   -<table/>
22   -<size_limit_lines/>
23   -<interval/>
24   -<timeout_days/>
25   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STATUS</id><enabled>Y</enabled><name>STATUS</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name><subject/></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name><subject/></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name><subject/></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name><subject/></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name><subject/></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name><subject/></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>STARTDATE</id><enabled>Y</enabled><name>STARTDATE</name></field><field><id>ENDDATE</id><enabled>Y</enabled><name>ENDDATE</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>DEPDATE</id><enabled>Y</enabled><name>DEPDATE</name></field><field><id>REPLAYDATE</id><enabled>Y</enabled><name>REPLAYDATE</name></field><field><id>LOG_FIELD</id><enabled>Y</enabled><name>LOG_FIELD</name></field><field><id>EXECUTING_SERVER</id><enabled>N</enabled><name>EXECUTING_SERVER</name></field><field><id>EXECUTING_USER</id><enabled>N</enabled><name>EXECUTING_USER</name></field><field><id>CLIENT</id><enabled>N</enabled><name>CLIENT</name></field></trans-log-table>
26   -<perf-log-table><connection/>
27   -<schema/>
28   -<table/>
29   -<interval/>
30   -<timeout_days/>
31   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>SEQ_NR</id><enabled>Y</enabled><name>SEQ_NR</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>INPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>INPUT_BUFFER_ROWS</name></field><field><id>OUTPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>OUTPUT_BUFFER_ROWS</name></field></perf-log-table>
32   -<channel-log-table><connection/>
33   -<schema/>
34   -<table/>
35   -<timeout_days/>
36   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>LOGGING_OBJECT_TYPE</id><enabled>Y</enabled><name>LOGGING_OBJECT_TYPE</name></field><field><id>OBJECT_NAME</id><enabled>Y</enabled><name>OBJECT_NAME</name></field><field><id>OBJECT_COPY</id><enabled>Y</enabled><name>OBJECT_COPY</name></field><field><id>REPOSITORY_DIRECTORY</id><enabled>Y</enabled><name>REPOSITORY_DIRECTORY</name></field><field><id>FILENAME</id><enabled>Y</enabled><name>FILENAME</name></field><field><id>OBJECT_ID</id><enabled>Y</enabled><name>OBJECT_ID</name></field><field><id>OBJECT_REVISION</id><enabled>Y</enabled><name>OBJECT_REVISION</name></field><field><id>PARENT_CHANNEL_ID</id><enabled>Y</enabled><name>PARENT_CHANNEL_ID</name></field><field><id>ROOT_CHANNEL_ID</id><enabled>Y</enabled><name>ROOT_CHANNEL_ID</name></field></channel-log-table>
37   -<step-log-table><connection/>
38   -<schema/>
39   -<table/>
40   -<timeout_days/>
41   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>LOG_FIELD</id><enabled>N</enabled><name>LOG_FIELD</name></field></step-log-table>
42   -<metrics-log-table><connection/>
43   -<schema/>
44   -<table/>
45   -<timeout_days/>
46   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>METRICS_DATE</id><enabled>Y</enabled><name>METRICS_DATE</name></field><field><id>METRICS_CODE</id><enabled>Y</enabled><name>METRICS_CODE</name></field><field><id>METRICS_DESCRIPTION</id><enabled>Y</enabled><name>METRICS_DESCRIPTION</name></field><field><id>METRICS_SUBJECT</id><enabled>Y</enabled><name>METRICS_SUBJECT</name></field><field><id>METRICS_TYPE</id><enabled>Y</enabled><name>METRICS_TYPE</name></field><field><id>METRICS_VALUE</id><enabled>Y</enabled><name>METRICS_VALUE</name></field></metrics-log-table>
47   - </log>
48   - <maxdate>
49   - <connection/>
50   - <table/>
51   - <field/>
52   - <offset>0.0</offset>
53   - <maxdiff>0.0</maxdiff>
54   - </maxdate>
55   - <size_rowset>10000</size_rowset>
56   - <sleep_time_empty>50</sleep_time_empty>
57   - <sleep_time_full>50</sleep_time_full>
58   - <unique_connections>N</unique_connections>
59   - <feedback_shown>Y</feedback_shown>
60   - <feedback_size>50000</feedback_size>
61   - <using_thread_priorities>Y</using_thread_priorities>
62   - <shared_objects_file/>
63   - <capture_step_performance>N</capture_step_performance>
64   - <step_performance_capturing_delay>1000</step_performance_capturing_delay>
65   - <step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
66   - <dependencies>
67   - </dependencies>
68   - <partitionschemas>
69   - </partitionschemas>
70   - <slaveservers>
71   - </slaveservers>
72   - <clusterschemas>
73   - </clusterschemas>
74   - <created_user>-</created_user>
75   - <created_date>2017&#x2f;02&#x2f;06 11&#x3a;05&#x3a;17.781</created_date>
76   - <modified_user>-</modified_user>
77   - <modified_date>2017&#x2f;02&#x2f;06 11&#x3a;05&#x3a;17.781</modified_date>
78   - <key_for_session_key/>
79   - <is_key_private>N</is_key_private>
80   - </info>
81   - <notepads>
82   - </notepads>
83   - <connection>
84   - <name>bus_control_variable</name>
85   - <server>&#x24;&#x7b;v_db_ip&#x7d;</server>
86   - <type>MYSQL</type>
87   - <access>Native</access>
88   - <database>&#x24;&#x7b;v_db_dname&#x7d;</database>
89   - <port>3306</port>
90   - <username>&#x24;&#x7b;v_db_uname&#x7d;</username>
91   - <password>&#x24;&#x7b;v_db_pwd&#x7d;</password>
92   - <servername/>
93   - <data_tablespace/>
94   - <index_tablespace/>
95   - <attributes>
96   - <attribute><code>EXTRA_OPTION_MYSQL.characterEncoding</code><attribute>utf8</attribute></attribute>
97   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
98   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
99   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
100   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
101   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
102   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
103   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
104   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
105   - <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
106   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
107   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
108   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
109   - </attributes>
110   - </connection>
111   - <connection>
112   - <name>bus_control_&#x516c;&#x53f8;_201</name>
113   - <server>localhost</server>
114   - <type>MYSQL</type>
115   - <access>Native</access>
116   - <database>control</database>
117   - <port>3306</port>
118   - <username>root</username>
119   - <password>Encrypted </password>
120   - <servername/>
121   - <data_tablespace/>
122   - <index_tablespace/>
123   - <attributes>
124   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
125   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
126   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
127   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
128   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
129   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
130   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
131   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
132   - <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
133   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
134   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
135   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
136   - </attributes>
137   - </connection>
138   - <connection>
139   - <name>bus_control_&#x672c;&#x673a;</name>
140   - <server>localhost</server>
141   - <type>MYSQL</type>
142   - <access>Native</access>
143   - <database>control</database>
144   - <port>3306</port>
145   - <username>root</username>
146   - <password>Encrypted </password>
147   - <servername/>
148   - <data_tablespace/>
149   - <index_tablespace/>
150   - <attributes>
151   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
152   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
153   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
154   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
155   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
156   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
157   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
158   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
159   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
160   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
161   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
162   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
163   - </attributes>
164   - </connection>
165   - <connection>
166   - <name>xlab_mysql_youle</name>
167   - <server>101.231.124.8</server>
168   - <type>MYSQL</type>
169   - <access>Native</access>
170   - <database>xlab_youle</database>
171   - <port>45687</port>
172   - <username>xlab-youle</username>
173   - <password>Encrypted 2be98afc86aa78a88aa1be369d187a3df</password>
174   - <servername/>
175   - <data_tablespace/>
176   - <index_tablespace/>
177   - <attributes>
178   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
179   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
180   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
181   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
182   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
183   - <attribute><code>PORT_NUMBER</code><attribute>45687</attribute></attribute>
184   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
185   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
186   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
187   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
188   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
189   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
190   - </attributes>
191   - </connection>
192   - <connection>
193   - <name>xlab_mysql_youle&#xff08;&#x672c;&#x673a;&#xff09;</name>
194   - <server>localhost</server>
195   - <type>MYSQL</type>
196   - <access>Native</access>
197   - <database>xlab_youle</database>
198   - <port>3306</port>
199   - <username>root</username>
200   - <password>Encrypted </password>
201   - <servername/>
202   - <data_tablespace/>
203   - <index_tablespace/>
204   - <attributes>
205   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
206   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
207   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
208   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
209   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
210   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
211   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
212   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
213   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
214   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
215   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
216   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
217   - </attributes>
218   - </connection>
219   - <connection>
220   - <name>xlab_youle</name>
221   - <server/>
222   - <type>MYSQL</type>
223   - <access>JNDI</access>
224   - <database>xlab_youle</database>
225   - <port>1521</port>
226   - <username/>
227   - <password>Encrypted </password>
228   - <servername/>
229   - <data_tablespace/>
230   - <index_tablespace/>
231   - <attributes>
232   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
233   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
234   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
235   - <attribute><code>PORT_NUMBER</code><attribute>1521</attribute></attribute>
236   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
237   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
238   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
239   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
240   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
241   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
242   - </attributes>
243   - </connection>
244   - <order>
245   - <hop> <from>&#x8def;&#x724c;&#x6570;&#x636e;&#xff08;&#x6ca1;&#x6709;&#x4f5c;&#x5e9f;&#xff09;</from><to>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
246   - <hop> <from>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</from><to>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>
247   - <hop> <from>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</from><to>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</to><enabled>Y</enabled> </hop>
248   - <hop> <from>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</from><to>Excel&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>
249   - </order>
250   - <step>
251   - <name>&#x8def;&#x724c;&#x6570;&#x636e;&#xff08;&#x6ca1;&#x6709;&#x4f5c;&#x5e9f;&#xff09;</name>
252   - <type>TableInput</type>
253   - <description/>
254   - <distribute>Y</distribute>
255   - <custom_distribution/>
256   - <copies>1</copies>
257   - <partitioning>
258   - <method>none</method>
259   - <schema_name/>
260   - </partitioning>
261   - <connection>bus_control_variable</connection>
262   - <sql>select &#x2a; from bsth_c_s_gbi&#xa;where is_cancel &#x3d; 0</sql>
263   - <limit>0</limit>
264   - <lookup/>
265   - <execute_each_row>N</execute_each_row>
266   - <variables_active>N</variables_active>
267   - <lazy_conversion_active>N</lazy_conversion_active>
268   - <cluster_schema/>
269   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
270   - <xloc>134</xloc>
271   - <yloc>92</yloc>
272   - <draw>Y</draw>
273   - </GUI>
274   - </step>
275   -
276   - <step>
277   - <name>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</name>
278   - <type>DBLookup</type>
279   - <description/>
280   - <distribute>Y</distribute>
281   - <custom_distribution/>
282   - <copies>1</copies>
283   - <partitioning>
284   - <method>none</method>
285   - <schema_name/>
286   - </partitioning>
287   - <connection>bus_control_variable</connection>
288   - <cache>Y</cache>
289   - <cache_load_all>Y</cache_load_all>
290   - <cache_size>0</cache_size>
291   - <lookup>
292   - <schema/>
293   - <table>bsth_c_line</table>
294   - <orderby/>
295   - <fail_on_multiple>N</fail_on_multiple>
296   - <eat_row_on_failure>N</eat_row_on_failure>
297   - <key>
298   - <name>xl</name>
299   - <field>id</field>
300   - <condition>&#x3d;</condition>
301   - <name2/>
302   - </key>
303   - <value>
304   - <name>name</name>
305   - <rename>xlmc</rename>
306   - <default/>
307   - <type>String</type>
308   - </value>
309   - </lookup>
310   - <cluster_schema/>
311   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
312   - <xloc>262</xloc>
313   - <yloc>92</yloc>
314   - <draw>Y</draw>
315   - </GUI>
316   - </step>
317   -
318   - <step>
319   - <name>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</name>
320   - <type>SortRows</type>
321   - <description/>
322   - <distribute>Y</distribute>
323   - <custom_distribution/>
324   - <copies>1</copies>
325   - <partitioning>
326   - <method>none</method>
327   - <schema_name/>
328   - </partitioning>
329   - <directory>&#x25;&#x25;java.io.tmpdir&#x25;&#x25;</directory>
330   - <prefix>out</prefix>
331   - <sort_size>1000000</sort_size>
332   - <free_memory/>
333   - <compress>N</compress>
334   - <compress_variable/>
335   - <unique_rows>N</unique_rows>
336   - <fields>
337   - <field>
338   - <name>xl</name>
339   - <ascending>Y</ascending>
340   - <case_sensitive>N</case_sensitive>
341   - <presorted>N</presorted>
342   - </field>
343   - <field>
344   - <name>lp_no</name>
345   - <ascending>Y</ascending>
346   - <case_sensitive>N</case_sensitive>
347   - <presorted>N</presorted>
348   - </field>
349   - <field>
350   - <name>is_cancel</name>
351   - <ascending>N</ascending>
352   - <case_sensitive>N</case_sensitive>
353   - <presorted>N</presorted>
354   - </field>
355   - </fields>
356   - <cluster_schema/>
357   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
358   - <xloc>384</xloc>
359   - <yloc>91</yloc>
360   - <draw>Y</draw>
361   - </GUI>
362   - </step>
363   -
364   - <step>
365   - <name>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</name>
366   - <type>SelectValues</type>
367   - <description/>
368   - <distribute>Y</distribute>
369   - <custom_distribution/>
370   - <copies>1</copies>
371   - <partitioning>
372   - <method>none</method>
373   - <schema_name/>
374   - </partitioning>
375   - <fields> <select_unspecified>N</select_unspecified>
376   - <meta> <name>xlmc</name>
377   - <rename>&#x7ebf;&#x8def;</rename>
378   - <type>None</type>
379   - <length>-2</length>
380   - <precision>-2</precision>
381   - <conversion_mask/>
382   - <date_format_lenient>false</date_format_lenient>
383   - <date_format_locale/>
384   - <date_format_timezone/>
385   - <lenient_string_to_number>false</lenient_string_to_number>
386   - <encoding/>
387   - <decimal_symbol/>
388   - <grouping_symbol/>
389   - <currency_symbol/>
390   - <storage_type/>
391   - </meta> <meta> <name>lp_no</name>
392   - <rename>&#x8def;&#x724c;&#x7f16;&#x53f7;</rename>
393   - <type>String</type>
394   - <length>-2</length>
395   - <precision>-2</precision>
396   - <conversion_mask>&#x23;</conversion_mask>
397   - <date_format_lenient>false</date_format_lenient>
398   - <date_format_locale/>
399   - <date_format_timezone/>
400   - <lenient_string_to_number>false</lenient_string_to_number>
401   - <encoding/>
402   - <decimal_symbol/>
403   - <grouping_symbol/>
404   - <currency_symbol/>
405   - <storage_type/>
406   - </meta> <meta> <name>lp_name</name>
407   - <rename>&#x8def;&#x724c;&#x540d;&#x79f0;</rename>
408   - <type>None</type>
409   - <length>-2</length>
410   - <precision>-2</precision>
411   - <conversion_mask/>
412   - <date_format_lenient>false</date_format_lenient>
413   - <date_format_locale/>
414   - <date_format_timezone/>
415   - <lenient_string_to_number>false</lenient_string_to_number>
416   - <encoding/>
417   - <decimal_symbol/>
418   - <grouping_symbol/>
419   - <currency_symbol/>
420   - <storage_type/>
421   - </meta> <meta> <name>lp_type</name>
422   - <rename>&#x8def;&#x724c;&#x7c7b;&#x578b;</rename>
423   - <type>None</type>
424   - <length>-2</length>
425   - <precision>-2</precision>
426   - <conversion_mask/>
427   - <date_format_lenient>false</date_format_lenient>
428   - <date_format_locale/>
429   - <date_format_timezone/>
430   - <lenient_string_to_number>false</lenient_string_to_number>
431   - <encoding/>
432   - <decimal_symbol/>
433   - <grouping_symbol/>
434   - <currency_symbol/>
435   - <storage_type/>
436   - </meta> </fields> <cluster_schema/>
437   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
438   - <xloc>507</xloc>
439   - <yloc>91</yloc>
440   - <draw>Y</draw>
441   - </GUI>
442   - </step>
443   -
444   - <step>
445   - <name>Excel&#x8f93;&#x51fa;</name>
446   - <type>ExcelOutput</type>
447   - <description/>
448   - <distribute>Y</distribute>
449   - <custom_distribution/>
450   - <copies>1</copies>
451   - <partitioning>
452   - <method>none</method>
453   - <schema_name/>
454   - </partitioning>
455   - <header>Y</header>
456   - <footer>N</footer>
457   - <encoding/>
458   - <append>N</append>
459   - <add_to_result_filenames>Y</add_to_result_filenames>
460   - <file>
461   - <name>&#x24;&#x7b;filepath&#x7d;</name>
462   - <extention/>
463   - <do_not_open_newfile_init>N</do_not_open_newfile_init>
464   - <create_parent_folder>N</create_parent_folder>
465   - <split>N</split>
466   - <add_date>N</add_date>
467   - <add_time>N</add_time>
468   - <SpecifyFormat>N</SpecifyFormat>
469   - <date_time_format>yyyyMMddHHmmss</date_time_format>
470   - <sheetname>&#x5de5;&#x4f5c;&#x8868;1</sheetname>
471   - <autosizecolums>N</autosizecolums>
472   - <nullisblank>N</nullisblank>
473   - <protect_sheet>N</protect_sheet>
474   - <password>Encrypted </password>
475   - <splitevery>0</splitevery>
476   - <usetempfiles>N</usetempfiles>
477   - <tempdirectory/>
478   - </file>
479   - <template>
480   - <enabled>N</enabled>
481   - <append>N</append>
482   - <filename>template.xls</filename>
483   - </template>
484   - <fields>
485   - <field>
486   - <name>&#x7ebf;&#x8def;</name>
487   - <type>String</type>
488   - <format/>
489   - </field>
490   - <field>
491   - <name>&#x8def;&#x724c;&#x7f16;&#x53f7;</name>
492   - <type>String</type>
493   - <format/>
494   - </field>
495   - <field>
496   - <name>&#x8def;&#x724c;&#x540d;&#x79f0;</name>
497   - <type>String</type>
498   - <format/>
499   - </field>
500   - <field>
501   - <name>&#x8def;&#x724c;&#x7c7b;&#x578b;</name>
502   - <type>String</type>
503   - <format/>
504   - </field>
505   - </fields>
506   - <custom>
507   - <header_font_name>arial</header_font_name>
508   - <header_font_size>10</header_font_size>
509   - <header_font_bold>N</header_font_bold>
510   - <header_font_italic>N</header_font_italic>
511   - <header_font_underline>no</header_font_underline>
512   - <header_font_orientation>horizontal</header_font_orientation>
513   - <header_font_color>black</header_font_color>
514   - <header_background_color>none</header_background_color>
515   - <header_row_height>255</header_row_height>
516   - <header_alignment>left</header_alignment>
517   - <header_image/>
518   - <row_font_name>arial</row_font_name>
519   - <row_font_size>10</row_font_size>
520   - <row_font_color>black</row_font_color>
521   - <row_background_color>none</row_background_color>
522   - </custom>
523   - <cluster_schema/>
524   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
525   - <xloc>644</xloc>
526   - <yloc>92</yloc>
527   - <draw>Y</draw>
528   - </GUI>
529   - </step>
530   -
531   - <step_error_handling>
532   - </step_error_handling>
533   - <slave-step-copy-partition-distribution>
534   -</slave-step-copy-partition-distribution>
535   - <slave_transformation>N</slave_transformation>
536   -
537   -</transformation>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<transformation>
  3 + <info>
  4 + <name>&#x8def;&#x724c;&#x4fe1;&#x606f;&#x5bfc;&#x51fa;</name>
  5 + <description/>
  6 + <extended_description/>
  7 + <trans_version/>
  8 + <trans_type>Normal</trans_type>
  9 + <trans_status>0</trans_status>
  10 + <directory>&#x2f;</directory>
  11 + <parameters>
  12 + <parameter>
  13 + <name>filepath</name>
  14 + <default_value/>
  15 + <description>excel&#x6587;&#x4ef6;&#x8def;&#x5f84;</description>
  16 + </parameter>
  17 + <parameter>
  18 + <name>xlid</name>
  19 + <default_value/>
  20 + <description>&#x7ebf;&#x8def;id</description>
  21 + </parameter>
  22 + </parameters>
  23 + <log>
  24 +<trans-log-table><connection/>
  25 +<schema/>
  26 +<table/>
  27 +<size_limit_lines/>
  28 +<interval/>
  29 +<timeout_days/>
  30 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STATUS</id><enabled>Y</enabled><name>STATUS</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name><subject/></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name><subject/></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name><subject/></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name><subject/></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name><subject/></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name><subject/></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>STARTDATE</id><enabled>Y</enabled><name>STARTDATE</name></field><field><id>ENDDATE</id><enabled>Y</enabled><name>ENDDATE</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>DEPDATE</id><enabled>Y</enabled><name>DEPDATE</name></field><field><id>REPLAYDATE</id><enabled>Y</enabled><name>REPLAYDATE</name></field><field><id>LOG_FIELD</id><enabled>Y</enabled><name>LOG_FIELD</name></field><field><id>EXECUTING_SERVER</id><enabled>N</enabled><name>EXECUTING_SERVER</name></field><field><id>EXECUTING_USER</id><enabled>N</enabled><name>EXECUTING_USER</name></field><field><id>CLIENT</id><enabled>N</enabled><name>CLIENT</name></field></trans-log-table>
  31 +<perf-log-table><connection/>
  32 +<schema/>
  33 +<table/>
  34 +<interval/>
  35 +<timeout_days/>
  36 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>SEQ_NR</id><enabled>Y</enabled><name>SEQ_NR</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>INPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>INPUT_BUFFER_ROWS</name></field><field><id>OUTPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>OUTPUT_BUFFER_ROWS</name></field></perf-log-table>
  37 +<channel-log-table><connection/>
  38 +<schema/>
  39 +<table/>
  40 +<timeout_days/>
  41 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>LOGGING_OBJECT_TYPE</id><enabled>Y</enabled><name>LOGGING_OBJECT_TYPE</name></field><field><id>OBJECT_NAME</id><enabled>Y</enabled><name>OBJECT_NAME</name></field><field><id>OBJECT_COPY</id><enabled>Y</enabled><name>OBJECT_COPY</name></field><field><id>REPOSITORY_DIRECTORY</id><enabled>Y</enabled><name>REPOSITORY_DIRECTORY</name></field><field><id>FILENAME</id><enabled>Y</enabled><name>FILENAME</name></field><field><id>OBJECT_ID</id><enabled>Y</enabled><name>OBJECT_ID</name></field><field><id>OBJECT_REVISION</id><enabled>Y</enabled><name>OBJECT_REVISION</name></field><field><id>PARENT_CHANNEL_ID</id><enabled>Y</enabled><name>PARENT_CHANNEL_ID</name></field><field><id>ROOT_CHANNEL_ID</id><enabled>Y</enabled><name>ROOT_CHANNEL_ID</name></field></channel-log-table>
  42 +<step-log-table><connection/>
  43 +<schema/>
  44 +<table/>
  45 +<timeout_days/>
  46 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>LOG_FIELD</id><enabled>N</enabled><name>LOG_FIELD</name></field></step-log-table>
  47 +<metrics-log-table><connection/>
  48 +<schema/>
  49 +<table/>
  50 +<timeout_days/>
  51 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>METRICS_DATE</id><enabled>Y</enabled><name>METRICS_DATE</name></field><field><id>METRICS_CODE</id><enabled>Y</enabled><name>METRICS_CODE</name></field><field><id>METRICS_DESCRIPTION</id><enabled>Y</enabled><name>METRICS_DESCRIPTION</name></field><field><id>METRICS_SUBJECT</id><enabled>Y</enabled><name>METRICS_SUBJECT</name></field><field><id>METRICS_TYPE</id><enabled>Y</enabled><name>METRICS_TYPE</name></field><field><id>METRICS_VALUE</id><enabled>Y</enabled><name>METRICS_VALUE</name></field></metrics-log-table>
  52 + </log>
  53 + <maxdate>
  54 + <connection/>
  55 + <table/>
  56 + <field/>
  57 + <offset>0.0</offset>
  58 + <maxdiff>0.0</maxdiff>
  59 + </maxdate>
  60 + <size_rowset>10000</size_rowset>
  61 + <sleep_time_empty>50</sleep_time_empty>
  62 + <sleep_time_full>50</sleep_time_full>
  63 + <unique_connections>N</unique_connections>
  64 + <feedback_shown>Y</feedback_shown>
  65 + <feedback_size>50000</feedback_size>
  66 + <using_thread_priorities>Y</using_thread_priorities>
  67 + <shared_objects_file/>
  68 + <capture_step_performance>N</capture_step_performance>
  69 + <step_performance_capturing_delay>1000</step_performance_capturing_delay>
  70 + <step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
  71 + <dependencies>
  72 + </dependencies>
  73 + <partitionschemas>
  74 + </partitionschemas>
  75 + <slaveservers>
  76 + </slaveservers>
  77 + <clusterschemas>
  78 + </clusterschemas>
  79 + <created_user>-</created_user>
  80 + <created_date>2017&#x2f;02&#x2f;06 11&#x3a;05&#x3a;17.781</created_date>
  81 + <modified_user>-</modified_user>
  82 + <modified_date>2017&#x2f;02&#x2f;06 11&#x3a;05&#x3a;17.781</modified_date>
  83 + <key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA&#x3d;</key_for_session_key>
  84 + <is_key_private>N</is_key_private>
  85 + </info>
  86 + <notepads>
  87 + </notepads>
  88 + <connection>
  89 + <name>bus_control_variable</name>
  90 + <server>&#x24;&#x7b;v_db_ip&#x7d;</server>
  91 + <type>MYSQL</type>
  92 + <access>Native</access>
  93 + <database>&#x24;&#x7b;v_db_dname&#x7d;</database>
  94 + <port>3306</port>
  95 + <username>&#x24;&#x7b;v_db_uname&#x7d;</username>
  96 + <password>&#x24;&#x7b;v_db_pwd&#x7d;</password>
  97 + <servername/>
  98 + <data_tablespace/>
  99 + <index_tablespace/>
  100 + <attributes>
  101 + <attribute><code>EXTRA_OPTION_MYSQL.characterEncoding</code><attribute>utf8</attribute></attribute>
  102 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  103 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  104 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  105 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  106 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  107 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  108 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  109 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  110 + <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
  111 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  112 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  113 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  114 + </attributes>
  115 + </connection>
  116 + <connection>
  117 + <name>bus_control_&#x516c;&#x53f8;_201</name>
  118 + <server>localhost</server>
  119 + <type>MYSQL</type>
  120 + <access>Native</access>
  121 + <database>control</database>
  122 + <port>3306</port>
  123 + <username>root</username>
  124 + <password>Encrypted </password>
  125 + <servername/>
  126 + <data_tablespace/>
  127 + <index_tablespace/>
  128 + <attributes>
  129 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  130 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  131 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  132 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  133 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  134 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  135 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  136 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  137 + <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
  138 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  139 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  140 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  141 + </attributes>
  142 + </connection>
  143 + <connection>
  144 + <name>bus_control_&#x672c;&#x673a;</name>
  145 + <server>localhost</server>
  146 + <type>MYSQL</type>
  147 + <access>Native</access>
  148 + <database>control</database>
  149 + <port>3306</port>
  150 + <username>root</username>
  151 + <password>Encrypted </password>
  152 + <servername/>
  153 + <data_tablespace/>
  154 + <index_tablespace/>
  155 + <attributes>
  156 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  157 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  158 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  159 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  160 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  161 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  162 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  163 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  164 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  165 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  166 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  167 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  168 + </attributes>
  169 + </connection>
  170 + <connection>
  171 + <name>xlab_mysql_youle</name>
  172 + <server>101.231.124.8</server>
  173 + <type>MYSQL</type>
  174 + <access>Native</access>
  175 + <database>xlab_youle</database>
  176 + <port>45687</port>
  177 + <username>xlab-youle</username>
  178 + <password>Encrypted 2be98afc86aa78a88aa1be369d187a3df</password>
  179 + <servername/>
  180 + <data_tablespace/>
  181 + <index_tablespace/>
  182 + <attributes>
  183 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  184 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  185 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  186 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  187 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  188 + <attribute><code>PORT_NUMBER</code><attribute>45687</attribute></attribute>
  189 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  190 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  191 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  192 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
  193 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
  194 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  195 + </attributes>
  196 + </connection>
  197 + <connection>
  198 + <name>xlab_mysql_youle&#xff08;&#x672c;&#x673a;&#xff09;</name>
  199 + <server>localhost</server>
  200 + <type>MYSQL</type>
  201 + <access>Native</access>
  202 + <database>xlab_youle</database>
  203 + <port>3306</port>
  204 + <username>root</username>
  205 + <password>Encrypted </password>
  206 + <servername/>
  207 + <data_tablespace/>
  208 + <index_tablespace/>
  209 + <attributes>
  210 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  211 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  212 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  213 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  214 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  215 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  216 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  217 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  218 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  219 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
  220 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
  221 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  222 + </attributes>
  223 + </connection>
  224 + <connection>
  225 + <name>xlab_youle</name>
  226 + <server/>
  227 + <type>MYSQL</type>
  228 + <access>JNDI</access>
  229 + <database>xlab_youle</database>
  230 + <port>1521</port>
  231 + <username/>
  232 + <password>Encrypted </password>
  233 + <servername/>
  234 + <data_tablespace/>
  235 + <index_tablespace/>
  236 + <attributes>
  237 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  238 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  239 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  240 + <attribute><code>PORT_NUMBER</code><attribute>1521</attribute></attribute>
  241 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  242 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  243 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  244 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  245 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  246 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  247 + </attributes>
  248 + </connection>
  249 + <order>
  250 + <hop> <from>&#x8def;&#x724c;&#x6570;&#x636e;&#xff08;&#x6ca1;&#x6709;&#x4f5c;&#x5e9f;&#xff09;</from><to>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
  251 + <hop> <from>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</from><to>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>
  252 + <hop> <from>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</from><to>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</to><enabled>Y</enabled> </hop>
  253 + <hop> <from>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</from><to>Excel&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>
  254 + </order>
  255 + <step>
  256 + <name>Excel&#x8f93;&#x51fa;</name>
  257 + <type>ExcelOutput</type>
  258 + <description/>
  259 + <distribute>Y</distribute>
  260 + <custom_distribution/>
  261 + <copies>1</copies>
  262 + <partitioning>
  263 + <method>none</method>
  264 + <schema_name/>
  265 + </partitioning>
  266 + <header>Y</header>
  267 + <footer>N</footer>
  268 + <encoding/>
  269 + <append>N</append>
  270 + <add_to_result_filenames>Y</add_to_result_filenames>
  271 + <file>
  272 + <name>&#x24;&#x7b;filepath&#x7d;</name>
  273 + <extention/>
  274 + <do_not_open_newfile_init>N</do_not_open_newfile_init>
  275 + <create_parent_folder>N</create_parent_folder>
  276 + <split>N</split>
  277 + <add_date>N</add_date>
  278 + <add_time>N</add_time>
  279 + <SpecifyFormat>N</SpecifyFormat>
  280 + <date_time_format>yyyyMMddHHmmss</date_time_format>
  281 + <sheetname>&#x5de5;&#x4f5c;&#x8868;1</sheetname>
  282 + <autosizecolums>N</autosizecolums>
  283 + <nullisblank>N</nullisblank>
  284 + <protect_sheet>N</protect_sheet>
  285 + <password>Encrypted </password>
  286 + <splitevery>0</splitevery>
  287 + <usetempfiles>N</usetempfiles>
  288 + <tempdirectory/>
  289 + </file>
  290 + <template>
  291 + <enabled>N</enabled>
  292 + <append>N</append>
  293 + <filename>template.xls</filename>
  294 + </template>
  295 + <fields>
  296 + <field>
  297 + <name>&#x7ebf;&#x8def;</name>
  298 + <type>String</type>
  299 + <format/>
  300 + </field>
  301 + <field>
  302 + <name>&#x8def;&#x724c;&#x7f16;&#x53f7;</name>
  303 + <type>String</type>
  304 + <format/>
  305 + </field>
  306 + <field>
  307 + <name>&#x8def;&#x724c;&#x540d;&#x79f0;</name>
  308 + <type>String</type>
  309 + <format/>
  310 + </field>
  311 + <field>
  312 + <name>&#x8def;&#x724c;&#x7c7b;&#x578b;</name>
  313 + <type>String</type>
  314 + <format/>
  315 + </field>
  316 + </fields>
  317 + <custom>
  318 + <header_font_name>arial</header_font_name>
  319 + <header_font_size>10</header_font_size>
  320 + <header_font_bold>N</header_font_bold>
  321 + <header_font_italic>N</header_font_italic>
  322 + <header_font_underline>no</header_font_underline>
  323 + <header_font_orientation>horizontal</header_font_orientation>
  324 + <header_font_color>black</header_font_color>
  325 + <header_background_color>none</header_background_color>
  326 + <header_row_height>255</header_row_height>
  327 + <header_alignment>left</header_alignment>
  328 + <header_image/>
  329 + <row_font_name>arial</row_font_name>
  330 + <row_font_size>10</row_font_size>
  331 + <row_font_color>black</row_font_color>
  332 + <row_background_color>none</row_background_color>
  333 + </custom>
  334 + <cluster_schema/>
  335 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  336 + <xloc>644</xloc>
  337 + <yloc>92</yloc>
  338 + <draw>Y</draw>
  339 + </GUI>
  340 + </step>
  341 +
  342 + <step>
  343 + <name>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</name>
  344 + <type>SelectValues</type>
  345 + <description/>
  346 + <distribute>Y</distribute>
  347 + <custom_distribution/>
  348 + <copies>1</copies>
  349 + <partitioning>
  350 + <method>none</method>
  351 + <schema_name/>
  352 + </partitioning>
  353 + <fields> <select_unspecified>N</select_unspecified>
  354 + <meta> <name>xlmc</name>
  355 + <rename>&#x7ebf;&#x8def;</rename>
  356 + <type>None</type>
  357 + <length>-2</length>
  358 + <precision>-2</precision>
  359 + <conversion_mask/>
  360 + <date_format_lenient>false</date_format_lenient>
  361 + <date_format_locale/>
  362 + <date_format_timezone/>
  363 + <lenient_string_to_number>false</lenient_string_to_number>
  364 + <encoding/>
  365 + <decimal_symbol/>
  366 + <grouping_symbol/>
  367 + <currency_symbol/>
  368 + <storage_type/>
  369 + </meta> <meta> <name>lp_no</name>
  370 + <rename>&#x8def;&#x724c;&#x7f16;&#x53f7;</rename>
  371 + <type>String</type>
  372 + <length>-2</length>
  373 + <precision>-2</precision>
  374 + <conversion_mask>&#x23;</conversion_mask>
  375 + <date_format_lenient>false</date_format_lenient>
  376 + <date_format_locale/>
  377 + <date_format_timezone/>
  378 + <lenient_string_to_number>false</lenient_string_to_number>
  379 + <encoding/>
  380 + <decimal_symbol/>
  381 + <grouping_symbol/>
  382 + <currency_symbol/>
  383 + <storage_type/>
  384 + </meta> <meta> <name>lp_name</name>
  385 + <rename>&#x8def;&#x724c;&#x540d;&#x79f0;</rename>
  386 + <type>None</type>
  387 + <length>-2</length>
  388 + <precision>-2</precision>
  389 + <conversion_mask/>
  390 + <date_format_lenient>false</date_format_lenient>
  391 + <date_format_locale/>
  392 + <date_format_timezone/>
  393 + <lenient_string_to_number>false</lenient_string_to_number>
  394 + <encoding/>
  395 + <decimal_symbol/>
  396 + <grouping_symbol/>
  397 + <currency_symbol/>
  398 + <storage_type/>
  399 + </meta> <meta> <name>lp_type</name>
  400 + <rename>&#x8def;&#x724c;&#x7c7b;&#x578b;</rename>
  401 + <type>None</type>
  402 + <length>-2</length>
  403 + <precision>-2</precision>
  404 + <conversion_mask/>
  405 + <date_format_lenient>false</date_format_lenient>
  406 + <date_format_locale/>
  407 + <date_format_timezone/>
  408 + <lenient_string_to_number>false</lenient_string_to_number>
  409 + <encoding/>
  410 + <decimal_symbol/>
  411 + <grouping_symbol/>
  412 + <currency_symbol/>
  413 + <storage_type/>
  414 + </meta> </fields> <cluster_schema/>
  415 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  416 + <xloc>507</xloc>
  417 + <yloc>91</yloc>
  418 + <draw>Y</draw>
  419 + </GUI>
  420 + </step>
  421 +
  422 + <step>
  423 + <name>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</name>
  424 + <type>SortRows</type>
  425 + <description/>
  426 + <distribute>Y</distribute>
  427 + <custom_distribution/>
  428 + <copies>1</copies>
  429 + <partitioning>
  430 + <method>none</method>
  431 + <schema_name/>
  432 + </partitioning>
  433 + <directory>&#x25;&#x25;java.io.tmpdir&#x25;&#x25;</directory>
  434 + <prefix>out</prefix>
  435 + <sort_size>1000000</sort_size>
  436 + <free_memory/>
  437 + <compress>N</compress>
  438 + <compress_variable/>
  439 + <unique_rows>N</unique_rows>
  440 + <fields>
  441 + <field>
  442 + <name>xl</name>
  443 + <ascending>Y</ascending>
  444 + <case_sensitive>N</case_sensitive>
  445 + <presorted>N</presorted>
  446 + </field>
  447 + <field>
  448 + <name>lp_no</name>
  449 + <ascending>Y</ascending>
  450 + <case_sensitive>N</case_sensitive>
  451 + <presorted>N</presorted>
  452 + </field>
  453 + <field>
  454 + <name>is_cancel</name>
  455 + <ascending>N</ascending>
  456 + <case_sensitive>N</case_sensitive>
  457 + <presorted>N</presorted>
  458 + </field>
  459 + </fields>
  460 + <cluster_schema/>
  461 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  462 + <xloc>384</xloc>
  463 + <yloc>91</yloc>
  464 + <draw>Y</draw>
  465 + </GUI>
  466 + </step>
  467 +
  468 + <step>
  469 + <name>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</name>
  470 + <type>DBLookup</type>
  471 + <description/>
  472 + <distribute>Y</distribute>
  473 + <custom_distribution/>
  474 + <copies>1</copies>
  475 + <partitioning>
  476 + <method>none</method>
  477 + <schema_name/>
  478 + </partitioning>
  479 + <connection>bus_control_variable</connection>
  480 + <cache>Y</cache>
  481 + <cache_load_all>Y</cache_load_all>
  482 + <cache_size>0</cache_size>
  483 + <lookup>
  484 + <schema/>
  485 + <table>bsth_c_line</table>
  486 + <orderby/>
  487 + <fail_on_multiple>N</fail_on_multiple>
  488 + <eat_row_on_failure>N</eat_row_on_failure>
  489 + <key>
  490 + <name>xl</name>
  491 + <field>id</field>
  492 + <condition>&#x3d;</condition>
  493 + <name2/>
  494 + </key>
  495 + <value>
  496 + <name>name</name>
  497 + <rename>xlmc</rename>
  498 + <default/>
  499 + <type>String</type>
  500 + </value>
  501 + </lookup>
  502 + <cluster_schema/>
  503 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  504 + <xloc>262</xloc>
  505 + <yloc>92</yloc>
  506 + <draw>Y</draw>
  507 + </GUI>
  508 + </step>
  509 +
  510 + <step>
  511 + <name>&#x8def;&#x724c;&#x6570;&#x636e;&#xff08;&#x6ca1;&#x6709;&#x4f5c;&#x5e9f;&#xff09;</name>
  512 + <type>TableInput</type>
  513 + <description/>
  514 + <distribute>Y</distribute>
  515 + <custom_distribution/>
  516 + <copies>1</copies>
  517 + <partitioning>
  518 + <method>none</method>
  519 + <schema_name/>
  520 + </partitioning>
  521 + <connection>bus_control_variable</connection>
  522 + <sql>select &#x2a; from bsth_c_s_gbi&#xa;where is_cancel &#x3d; 0 and xl &#x3d; &#x24;&#x7b;xlid&#x7d;</sql>
  523 + <limit>0</limit>
  524 + <lookup/>
  525 + <execute_each_row>N</execute_each_row>
  526 + <variables_active>Y</variables_active>
  527 + <lazy_conversion_active>N</lazy_conversion_active>
  528 + <cluster_schema/>
  529 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  530 + <xloc>134</xloc>
  531 + <yloc>92</yloc>
  532 + <draw>Y</draw>
  533 + </GUI>
  534 + </step>
  535 +
  536 + <step_error_handling>
  537 + </step_error_handling>
  538 + <slave-step-copy-partition-distribution>
  539 +</slave-step-copy-partition-distribution>
  540 + <slave_transformation>N</slave_transformation>
  541 +
  542 +</transformation>
... ...
src/main/resources/datatools/ktrs/scheduleRuleDataOutput.ktr
1   -<?xml version="1.0" encoding="UTF-8"?>
2   -<transformation>
3   - <info>
4   - <name>&#x6392;&#x73ed;&#x89c4;&#x5219;&#x4fe1;&#x606f;&#x5bfc;&#x51fa;</name>
5   - <description/>
6   - <extended_description/>
7   - <trans_version/>
8   - <trans_type>Normal</trans_type>
9   - <trans_status>0</trans_status>
10   - <directory>&#x2f;</directory>
11   - <parameters>
12   - <parameter>
13   - <name>filepath</name>
14   - <default_value/>
15   - <description>excel&#x6587;&#x4ef6;&#x8def;&#x5f84;</description>
16   - </parameter>
17   - </parameters>
18   - <log>
19   -<trans-log-table><connection/>
20   -<schema/>
21   -<table/>
22   -<size_limit_lines/>
23   -<interval/>
24   -<timeout_days/>
25   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STATUS</id><enabled>Y</enabled><name>STATUS</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name><subject/></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name><subject/></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name><subject/></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name><subject/></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name><subject/></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name><subject/></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>STARTDATE</id><enabled>Y</enabled><name>STARTDATE</name></field><field><id>ENDDATE</id><enabled>Y</enabled><name>ENDDATE</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>DEPDATE</id><enabled>Y</enabled><name>DEPDATE</name></field><field><id>REPLAYDATE</id><enabled>Y</enabled><name>REPLAYDATE</name></field><field><id>LOG_FIELD</id><enabled>Y</enabled><name>LOG_FIELD</name></field><field><id>EXECUTING_SERVER</id><enabled>N</enabled><name>EXECUTING_SERVER</name></field><field><id>EXECUTING_USER</id><enabled>N</enabled><name>EXECUTING_USER</name></field><field><id>CLIENT</id><enabled>N</enabled><name>CLIENT</name></field></trans-log-table>
26   -<perf-log-table><connection/>
27   -<schema/>
28   -<table/>
29   -<interval/>
30   -<timeout_days/>
31   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>SEQ_NR</id><enabled>Y</enabled><name>SEQ_NR</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>INPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>INPUT_BUFFER_ROWS</name></field><field><id>OUTPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>OUTPUT_BUFFER_ROWS</name></field></perf-log-table>
32   -<channel-log-table><connection/>
33   -<schema/>
34   -<table/>
35   -<timeout_days/>
36   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>LOGGING_OBJECT_TYPE</id><enabled>Y</enabled><name>LOGGING_OBJECT_TYPE</name></field><field><id>OBJECT_NAME</id><enabled>Y</enabled><name>OBJECT_NAME</name></field><field><id>OBJECT_COPY</id><enabled>Y</enabled><name>OBJECT_COPY</name></field><field><id>REPOSITORY_DIRECTORY</id><enabled>Y</enabled><name>REPOSITORY_DIRECTORY</name></field><field><id>FILENAME</id><enabled>Y</enabled><name>FILENAME</name></field><field><id>OBJECT_ID</id><enabled>Y</enabled><name>OBJECT_ID</name></field><field><id>OBJECT_REVISION</id><enabled>Y</enabled><name>OBJECT_REVISION</name></field><field><id>PARENT_CHANNEL_ID</id><enabled>Y</enabled><name>PARENT_CHANNEL_ID</name></field><field><id>ROOT_CHANNEL_ID</id><enabled>Y</enabled><name>ROOT_CHANNEL_ID</name></field></channel-log-table>
37   -<step-log-table><connection/>
38   -<schema/>
39   -<table/>
40   -<timeout_days/>
41   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>LOG_FIELD</id><enabled>N</enabled><name>LOG_FIELD</name></field></step-log-table>
42   -<metrics-log-table><connection/>
43   -<schema/>
44   -<table/>
45   -<timeout_days/>
46   -<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>METRICS_DATE</id><enabled>Y</enabled><name>METRICS_DATE</name></field><field><id>METRICS_CODE</id><enabled>Y</enabled><name>METRICS_CODE</name></field><field><id>METRICS_DESCRIPTION</id><enabled>Y</enabled><name>METRICS_DESCRIPTION</name></field><field><id>METRICS_SUBJECT</id><enabled>Y</enabled><name>METRICS_SUBJECT</name></field><field><id>METRICS_TYPE</id><enabled>Y</enabled><name>METRICS_TYPE</name></field><field><id>METRICS_VALUE</id><enabled>Y</enabled><name>METRICS_VALUE</name></field></metrics-log-table>
47   - </log>
48   - <maxdate>
49   - <connection/>
50   - <table/>
51   - <field/>
52   - <offset>0.0</offset>
53   - <maxdiff>0.0</maxdiff>
54   - </maxdate>
55   - <size_rowset>10000</size_rowset>
56   - <sleep_time_empty>50</sleep_time_empty>
57   - <sleep_time_full>50</sleep_time_full>
58   - <unique_connections>N</unique_connections>
59   - <feedback_shown>Y</feedback_shown>
60   - <feedback_size>50000</feedback_size>
61   - <using_thread_priorities>Y</using_thread_priorities>
62   - <shared_objects_file/>
63   - <capture_step_performance>N</capture_step_performance>
64   - <step_performance_capturing_delay>1000</step_performance_capturing_delay>
65   - <step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
66   - <dependencies>
67   - </dependencies>
68   - <partitionschemas>
69   - </partitionschemas>
70   - <slaveservers>
71   - </slaveservers>
72   - <clusterschemas>
73   - </clusterschemas>
74   - <created_user>-</created_user>
75   - <created_date>2017&#x2f;01&#x2f;09 13&#x3a;35&#x3a;19.384</created_date>
76   - <modified_user>-</modified_user>
77   - <modified_date>2017&#x2f;01&#x2f;09 13&#x3a;35&#x3a;19.384</modified_date>
78   - <key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA&#x3d;</key_for_session_key>
79   - <is_key_private>N</is_key_private>
80   - </info>
81   - <notepads>
82   - <notepad>
83   - <note>&#x8fd9;&#x91cc;&#x6709;&#x4e9b;&#x95ee;&#x9898;&#xa;&#x5728;window2012&#x7684;&#x73af;&#x5883;&#x4e0b;&#xff0c;&#xa;MySql&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x4e2d;&#x5982;&#x679c;&#x8fd4;&#x56de;&#x4e2d;&#x6587;&#x5185;&#x5bb9;&#x7684;&#x5b57;&#x6bb5;&#xff0c;&#x8fd9;&#x4e2a;&#x5185;&#x5bb9;&#x4e71;&#x7801;&#xa;&#x89e3;&#x51b3;&#x529e;&#x6cd5;&#xff0c;&#x5c31;&#x662f;&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x5168;&#x90e8;&#x7f13;&#x5b58;&#xff0c;&#x5c31;&#x4e0d;&#x4e71;&#x7801;&#xa;linux&#x73af;&#x5883;&#x4e0b;&#x6ca1;&#x95ee;&#x9898;</note>
84   - <xloc>118</xloc>
85   - <yloc>158</yloc>
86   - <width>333</width>
87   - <heigth>90</heigth>
88   - <fontname>YaHei Consolas Hybrid</fontname>
89   - <fontsize>12</fontsize>
90   - <fontbold>N</fontbold>
91   - <fontitalic>N</fontitalic>
92   - <fontcolorred>0</fontcolorred>
93   - <fontcolorgreen>0</fontcolorgreen>
94   - <fontcolorblue>0</fontcolorblue>
95   - <backgroundcolorred>255</backgroundcolorred>
96   - <backgroundcolorgreen>205</backgroundcolorgreen>
97   - <backgroundcolorblue>112</backgroundcolorblue>
98   - <bordercolorred>100</bordercolorred>
99   - <bordercolorgreen>100</bordercolorgreen>
100   - <bordercolorblue>100</bordercolorblue>
101   - <drawshadow>Y</drawshadow>
102   - </notepad>
103   - </notepads>
104   - <connection>
105   - <name>bus_control_variable</name>
106   - <server>&#x24;&#x7b;v_db_ip&#x7d;</server>
107   - <type>MYSQL</type>
108   - <access>Native</access>
109   - <database>&#x24;&#x7b;v_db_dname&#x7d;</database>
110   - <port>3306</port>
111   - <username>&#x24;&#x7b;v_db_uname&#x7d;</username>
112   - <password>&#x24;&#x7b;v_db_pwd&#x7d;</password>
113   - <servername/>
114   - <data_tablespace/>
115   - <index_tablespace/>
116   - <attributes>
117   - <attribute><code>EXTRA_OPTION_MYSQL.characterEncoding</code><attribute>utf8</attribute></attribute>
118   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
119   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
120   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
121   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
122   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
123   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
124   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
125   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
126   - <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
127   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
128   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
129   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
130   - </attributes>
131   - </connection>
132   - <connection>
133   - <name>bus_control_&#x516c;&#x53f8;_201</name>
134   - <server>localhost</server>
135   - <type>MYSQL</type>
136   - <access>Native</access>
137   - <database>control</database>
138   - <port>3306</port>
139   - <username>root</username>
140   - <password>Encrypted </password>
141   - <servername/>
142   - <data_tablespace/>
143   - <index_tablespace/>
144   - <attributes>
145   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
146   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
147   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
148   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
149   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
150   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
151   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
152   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
153   - <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
154   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
155   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
156   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
157   - </attributes>
158   - </connection>
159   - <connection>
160   - <name>bus_control_&#x672c;&#x673a;</name>
161   - <server>localhost</server>
162   - <type>MYSQL</type>
163   - <access>Native</access>
164   - <database>control</database>
165   - <port>3306</port>
166   - <username>root</username>
167   - <password>Encrypted </password>
168   - <servername/>
169   - <data_tablespace/>
170   - <index_tablespace/>
171   - <attributes>
172   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
173   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
174   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
175   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
176   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
177   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
178   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
179   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
180   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
181   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
182   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
183   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
184   - </attributes>
185   - </connection>
186   - <connection>
187   - <name>xlab_mysql_youle</name>
188   - <server>101.231.124.8</server>
189   - <type>MYSQL</type>
190   - <access>Native</access>
191   - <database>xlab_youle</database>
192   - <port>45687</port>
193   - <username>xlab-youle</username>
194   - <password>Encrypted 2be98afc86aa78a88aa1be369d187a3df</password>
195   - <servername/>
196   - <data_tablespace/>
197   - <index_tablespace/>
198   - <attributes>
199   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
200   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
201   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
202   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
203   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
204   - <attribute><code>PORT_NUMBER</code><attribute>45687</attribute></attribute>
205   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
206   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
207   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
208   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
209   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
210   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
211   - </attributes>
212   - </connection>
213   - <connection>
214   - <name>xlab_mysql_youle&#xff08;&#x672c;&#x673a;&#xff09;</name>
215   - <server>localhost</server>
216   - <type>MYSQL</type>
217   - <access>Native</access>
218   - <database>xlab_youle</database>
219   - <port>3306</port>
220   - <username>root</username>
221   - <password>Encrypted </password>
222   - <servername/>
223   - <data_tablespace/>
224   - <index_tablespace/>
225   - <attributes>
226   - <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
227   - <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
228   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
229   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
230   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
231   - <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
232   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
233   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
234   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
235   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
236   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
237   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
238   - </attributes>
239   - </connection>
240   - <connection>
241   - <name>xlab_youle</name>
242   - <server/>
243   - <type>MYSQL</type>
244   - <access>JNDI</access>
245   - <database>xlab_youle</database>
246   - <port>1521</port>
247   - <username/>
248   - <password>Encrypted </password>
249   - <servername/>
250   - <data_tablespace/>
251   - <index_tablespace/>
252   - <attributes>
253   - <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
254   - <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
255   - <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
256   - <attribute><code>PORT_NUMBER</code><attribute>1521</attribute></attribute>
257   - <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
258   - <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
259   - <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
260   - <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
261   - <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
262   - <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
263   - </attributes>
264   - </connection>
265   - <order>
266   - <hop> <from>&#x6392;&#x7248;&#x89c4;&#x5219;</from><to>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
267   - <hop> <from>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</from><to>&#x8f66;&#x8f86;&#x914d;&#x7f6e;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
268   - <hop> <from>&#x8f66;&#x8f86;&#x914d;&#x7f6e;&#x67e5;&#x8be2;</from><to>&#x8f66;&#x8f86;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
269   - <hop> <from>&#x8f66;&#x8f86;&#x67e5;&#x8be2;</from><to>&#x683c;&#x5f0f;&#x5316;&#x65e5;&#x671f;</to><enabled>Y</enabled> </hop>
270   - <hop> <from>&#x683c;&#x5f0f;&#x5316;&#x65e5;&#x671f;</from><to>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>
271   - <hop> <from>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</from><to>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</to><enabled>Y</enabled> </hop>
272   - <hop> <from>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</from><to>Excel&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>
273   - </order>
274   - <step>
275   - <name>Excel&#x8f93;&#x51fa;</name>
276   - <type>ExcelOutput</type>
277   - <description/>
278   - <distribute>Y</distribute>
279   - <custom_distribution/>
280   - <copies>1</copies>
281   - <partitioning>
282   - <method>none</method>
283   - <schema_name/>
284   - </partitioning>
285   - <header>Y</header>
286   - <footer>N</footer>
287   - <encoding/>
288   - <append>N</append>
289   - <add_to_result_filenames>Y</add_to_result_filenames>
290   - <file>
291   - <name>&#x24;&#x7b;filepath&#x7d;</name>
292   - <extention/>
293   - <do_not_open_newfile_init>N</do_not_open_newfile_init>
294   - <create_parent_folder>N</create_parent_folder>
295   - <split>N</split>
296   - <add_date>N</add_date>
297   - <add_time>N</add_time>
298   - <SpecifyFormat>N</SpecifyFormat>
299   - <date_time_format>yyyyMMddHHmmss</date_time_format>
300   - <sheetname>&#x5de5;&#x4f5c;&#x8868;1</sheetname>
301   - <autosizecolums>N</autosizecolums>
302   - <nullisblank>N</nullisblank>
303   - <protect_sheet>N</protect_sheet>
304   - <password>Encrypted </password>
305   - <splitevery>0</splitevery>
306   - <usetempfiles>N</usetempfiles>
307   - <tempdirectory/>
308   - </file>
309   - <template>
310   - <enabled>N</enabled>
311   - <append>N</append>
312   - <filename>template.xls</filename>
313   - </template>
314   - <fields>
315   - <field>
316   - <name>&#x7ebf;&#x8def;</name>
317   - <type>String</type>
318   - <format/>
319   - </field>
320   - <field>
321   - <name>&#x5185;&#x90e8;&#x7f16;&#x7801;</name>
322   - <type>String</type>
323   - <format/>
324   - </field>
325   - <field>
326   - <name>&#x542f;&#x7528;&#x65e5;&#x671f;</name>
327   - <type>String</type>
328   - <format/>
329   - </field>
330   - <field>
331   - <name>&#x8d77;&#x59cb;&#x8def;&#x724c;</name>
332   - <type>String</type>
333   - <format/>
334   - </field>
335   - <field>
336   - <name>&#x8def;&#x724c;&#x8303;&#x56f4;</name>
337   - <type>String</type>
338   - <format/>
339   - </field>
340   - <field>
341   - <name>&#x8d77;&#x59cb;&#x4eba;&#x5458;</name>
342   - <type>String</type>
343   - <format/>
344   - </field>
345   - <field>
346   - <name>&#x4eba;&#x5458;&#x8303;&#x56f4;</name>
347   - <type>String</type>
348   - <format/>
349   - </field>
350   - <field>
351   - <name>&#x7ffb;&#x73ed;&#x683c;&#x5f0f;</name>
352   - <type>String</type>
353   - <format/>
354   - </field>
355   - </fields>
356   - <custom>
357   - <header_font_name>arial</header_font_name>
358   - <header_font_size>10</header_font_size>
359   - <header_font_bold>N</header_font_bold>
360   - <header_font_italic>N</header_font_italic>
361   - <header_font_underline>no</header_font_underline>
362   - <header_font_orientation>horizontal</header_font_orientation>
363   - <header_font_color>black</header_font_color>
364   - <header_background_color>none</header_background_color>
365   - <header_row_height>255</header_row_height>
366   - <header_alignment>left</header_alignment>
367   - <header_image/>
368   - <row_font_name>arial</row_font_name>
369   - <row_font_size>10</row_font_size>
370   - <row_font_color>black</row_font_color>
371   - <row_background_color>none</row_background_color>
372   - </custom>
373   - <cluster_schema/>
374   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
375   - <xloc>707</xloc>
376   - <yloc>348</yloc>
377   - <draw>Y</draw>
378   - </GUI>
379   - </step>
380   -
381   - <step>
382   - <name>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</name>
383   - <type>SelectValues</type>
384   - <description/>
385   - <distribute>Y</distribute>
386   - <custom_distribution/>
387   - <copies>1</copies>
388   - <partitioning>
389   - <method>none</method>
390   - <schema_name/>
391   - </partitioning>
392   - <fields> <field> <name>xlmc</name>
393   - <rename>&#x7ebf;&#x8def;</rename>
394   - <length>-2</length>
395   - <precision>-2</precision>
396   - </field> <field> <name>zbh</name>
397   - <rename>&#x5185;&#x90e8;&#x7f16;&#x7801;</rename>
398   - <length>-2</length>
399   - <precision>-2</precision>
400   - </field> <field> <name>qyrq</name>
401   - <rename>&#x542f;&#x7528;&#x65e5;&#x671f;</rename>
402   - <length>-2</length>
403   - <precision>-2</precision>
404   - </field> <field> <name>lp_start</name>
405   - <rename>&#x8d77;&#x59cb;&#x8def;&#x724c;</rename>
406   - <length>-2</length>
407   - <precision>-2</precision>
408   - </field> <field> <name>lp_names</name>
409   - <rename>&#x8def;&#x724c;&#x8303;&#x56f4;</rename>
410   - <length>-2</length>
411   - <precision>-2</precision>
412   - </field> <field> <name>ry_start</name>
413   - <rename>&#x8d77;&#x59cb;&#x4eba;&#x5458;</rename>
414   - <length>-2</length>
415   - <precision>-2</precision>
416   - </field> <field> <name>ry_dbbms</name>
417   - <rename>&#x4eba;&#x5458;&#x8303;&#x56f4;</rename>
418   - <length>-2</length>
419   - <precision>-2</precision>
420   - </field> <field> <name>fbgs</name>
421   - <rename>&#x7ffb;&#x73ed;&#x683c;&#x5f0f;</rename>
422   - <length>-2</length>
423   - <precision>-2</precision>
424   - </field> <select_unspecified>N</select_unspecified>
425   - </fields> <cluster_schema/>
426   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
427   - <xloc>705</xloc>
428   - <yloc>270</yloc>
429   - <draw>Y</draw>
430   - </GUI>
431   - </step>
432   -
433   - <step>
434   - <name>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</name>
435   - <type>SortRows</type>
436   - <description/>
437   - <distribute>Y</distribute>
438   - <custom_distribution/>
439   - <copies>1</copies>
440   - <partitioning>
441   - <method>none</method>
442   - <schema_name/>
443   - </partitioning>
444   - <directory>&#x25;&#x25;java.io.tmpdir&#x25;&#x25;</directory>
445   - <prefix>out</prefix>
446   - <sort_size>1000000</sort_size>
447   - <free_memory/>
448   - <compress>N</compress>
449   - <compress_variable/>
450   - <unique_rows>N</unique_rows>
451   - <fields>
452   - <field>
453   - <name>xlmc</name>
454   - <ascending>Y</ascending>
455   - <case_sensitive>N</case_sensitive>
456   - <presorted>N</presorted>
457   - </field>
458   - <field>
459   - <name>zbh</name>
460   - <ascending>Y</ascending>
461   - <case_sensitive>N</case_sensitive>
462   - <presorted>N</presorted>
463   - </field>
464   - <field>
465   - <name>qyrq</name>
466   - <ascending>Y</ascending>
467   - <case_sensitive>N</case_sensitive>
468   - <presorted>N</presorted>
469   - </field>
470   - <field>
471   - <name>lp_names</name>
472   - <ascending>Y</ascending>
473   - <case_sensitive>N</case_sensitive>
474   - <presorted>N</presorted>
475   - </field>
476   - <field>
477   - <name>ry_dbbms</name>
478   - <ascending>Y</ascending>
479   - <case_sensitive>N</case_sensitive>
480   - <presorted>N</presorted>
481   - </field>
482   - </fields>
483   - <cluster_schema/>
484   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
485   - <xloc>705</xloc>
486   - <yloc>177</yloc>
487   - <draw>Y</draw>
488   - </GUI>
489   - </step>
490   -
491   - <step>
492   - <name>&#x6392;&#x7248;&#x89c4;&#x5219;</name>
493   - <type>TableInput</type>
494   - <description/>
495   - <distribute>Y</distribute>
496   - <custom_distribution/>
497   - <copies>1</copies>
498   - <partitioning>
499   - <method>none</method>
500   - <schema_name/>
501   - </partitioning>
502   - <connection>bus_control_variable</connection>
503   - <sql>SELECT &#x2a; FROM bsth_c_s_sr1_flat</sql>
504   - <limit>0</limit>
505   - <lookup/>
506   - <execute_each_row>N</execute_each_row>
507   - <variables_active>N</variables_active>
508   - <lazy_conversion_active>N</lazy_conversion_active>
509   - <cluster_schema/>
510   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
511   - <xloc>129</xloc>
512   - <yloc>65</yloc>
513   - <draw>Y</draw>
514   - </GUI>
515   - </step>
516   -
517   - <step>
518   - <name>&#x683c;&#x5f0f;&#x5316;&#x65e5;&#x671f;</name>
519   - <type>SelectValues</type>
520   - <description/>
521   - <distribute>Y</distribute>
522   - <custom_distribution/>
523   - <copies>1</copies>
524   - <partitioning>
525   - <method>none</method>
526   - <schema_name/>
527   - </partitioning>
528   - <fields> <select_unspecified>N</select_unspecified>
529   - <meta> <name>qyrq</name>
530   - <rename>qyrq</rename>
531   - <type>String</type>
532   - <length>-2</length>
533   - <precision>-2</precision>
534   - <conversion_mask>yyyy-MM-dd</conversion_mask>
535   - <date_format_lenient>false</date_format_lenient>
536   - <date_format_locale/>
537   - <date_format_timezone/>
538   - <lenient_string_to_number>false</lenient_string_to_number>
539   - <encoding/>
540   - <decimal_symbol/>
541   - <grouping_symbol/>
542   - <currency_symbol/>
543   - <storage_type/>
544   - </meta> <meta> <name>lp_start</name>
545   - <rename>lp_start</rename>
546   - <type>String</type>
547   - <length>-2</length>
548   - <precision>-2</precision>
549   - <conversion_mask/>
550   - <date_format_lenient>false</date_format_lenient>
551   - <date_format_locale/>
552   - <date_format_timezone/>
553   - <lenient_string_to_number>false</lenient_string_to_number>
554   - <encoding/>
555   - <decimal_symbol/>
556   - <grouping_symbol/>
557   - <currency_symbol/>
558   - <storage_type/>
559   - </meta> <meta> <name>ry_start</name>
560   - <rename>ry_start</rename>
561   - <type>String</type>
562   - <length>-2</length>
563   - <precision>-2</precision>
564   - <conversion_mask>&#x23;</conversion_mask>
565   - <date_format_lenient>false</date_format_lenient>
566   - <date_format_locale/>
567   - <date_format_timezone/>
568   - <lenient_string_to_number>false</lenient_string_to_number>
569   - <encoding/>
570   - <decimal_symbol/>
571   - <grouping_symbol/>
572   - <currency_symbol/>
573   - <storage_type/>
574   - </meta> </fields> <cluster_schema/>
575   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
576   - <xloc>705</xloc>
577   - <yloc>65</yloc>
578   - <draw>Y</draw>
579   - </GUI>
580   - </step>
581   -
582   - <step>
583   - <name>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</name>
584   - <type>DBLookup</type>
585   - <description/>
586   - <distribute>Y</distribute>
587   - <custom_distribution/>
588   - <copies>1</copies>
589   - <partitioning>
590   - <method>none</method>
591   - <schema_name/>
592   - </partitioning>
593   - <connection>bus_control_variable</connection>
594   - <cache>Y</cache>
595   - <cache_load_all>Y</cache_load_all>
596   - <cache_size>0</cache_size>
597   - <lookup>
598   - <schema/>
599   - <table>bsth_c_line</table>
600   - <orderby/>
601   - <fail_on_multiple>N</fail_on_multiple>
602   - <eat_row_on_failure>N</eat_row_on_failure>
603   - <key>
604   - <name>xl</name>
605   - <field>id</field>
606   - <condition>&#x3d;</condition>
607   - <name2/>
608   - </key>
609   - <value>
610   - <name>name</name>
611   - <rename>xlmc</rename>
612   - <default/>
613   - <type>String</type>
614   - </value>
615   - </lookup>
616   - <cluster_schema/>
617   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
618   - <xloc>329</xloc>
619   - <yloc>65</yloc>
620   - <draw>Y</draw>
621   - </GUI>
622   - </step>
623   -
624   - <step>
625   - <name>&#x8f66;&#x8f86;&#x67e5;&#x8be2;</name>
626   - <type>DBLookup</type>
627   - <description/>
628   - <distribute>Y</distribute>
629   - <custom_distribution/>
630   - <copies>1</copies>
631   - <partitioning>
632   - <method>none</method>
633   - <schema_name/>
634   - </partitioning>
635   - <connection>bus_control_variable</connection>
636   - <cache>N</cache>
637   - <cache_load_all>N</cache_load_all>
638   - <cache_size>0</cache_size>
639   - <lookup>
640   - <schema/>
641   - <table>bsth_c_cars</table>
642   - <orderby/>
643   - <fail_on_multiple>N</fail_on_multiple>
644   - <eat_row_on_failure>N</eat_row_on_failure>
645   - <key>
646   - <name>clid</name>
647   - <field>id</field>
648   - <condition>&#x3d;</condition>
649   - <name2/>
650   - </key>
651   - <value>
652   - <name>inside_code</name>
653   - <rename>zbh</rename>
654   - <default/>
655   - <type>String</type>
656   - </value>
657   - </lookup>
658   - <cluster_schema/>
659   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
660   - <xloc>600</xloc>
661   - <yloc>64</yloc>
662   - <draw>Y</draw>
663   - </GUI>
664   - </step>
665   -
666   - <step>
667   - <name>&#x8f66;&#x8f86;&#x914d;&#x7f6e;&#x67e5;&#x8be2;</name>
668   - <type>DBLookup</type>
669   - <description/>
670   - <distribute>Y</distribute>
671   - <custom_distribution/>
672   - <copies>1</copies>
673   - <partitioning>
674   - <method>none</method>
675   - <schema_name/>
676   - </partitioning>
677   - <connection>bus_control_variable</connection>
678   - <cache>N</cache>
679   - <cache_load_all>N</cache_load_all>
680   - <cache_size>0</cache_size>
681   - <lookup>
682   - <schema/>
683   - <table>bsth_c_s_ccinfo</table>
684   - <orderby/>
685   - <fail_on_multiple>N</fail_on_multiple>
686   - <eat_row_on_failure>N</eat_row_on_failure>
687   - <key>
688   - <name>car_config_info</name>
689   - <field>id</field>
690   - <condition>&#x3d;</condition>
691   - <name2/>
692   - </key>
693   - <value>
694   - <name>cl</name>
695   - <rename>clid</rename>
696   - <default/>
697   - <type>Integer</type>
698   - </value>
699   - </lookup>
700   - <cluster_schema/>
701   - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
702   - <xloc>471</xloc>
703   - <yloc>64</yloc>
704   - <draw>Y</draw>
705   - </GUI>
706   - </step>
707   -
708   - <step_error_handling>
709   - </step_error_handling>
710   - <slave-step-copy-partition-distribution>
711   -</slave-step-copy-partition-distribution>
712   - <slave_transformation>N</slave_transformation>
713   -
714   -</transformation>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<transformation>
  3 + <info>
  4 + <name>&#x6392;&#x73ed;&#x89c4;&#x5219;&#x4fe1;&#x606f;&#x5bfc;&#x51fa;</name>
  5 + <description/>
  6 + <extended_description/>
  7 + <trans_version/>
  8 + <trans_type>Normal</trans_type>
  9 + <trans_status>0</trans_status>
  10 + <directory>&#x2f;</directory>
  11 + <parameters>
  12 + <parameter>
  13 + <name>filepath</name>
  14 + <default_value>&#x2f;Users&#x2f;xu&#x2f;resource&#x2f;project_code&#x2f;runtime_temp&#x2f;bsth_control_u_d_files&#x2f;test.xls</default_value>
  15 + <description>excel&#x6587;&#x4ef6;&#x8def;&#x5f84;</description>
  16 + </parameter>
  17 + <parameter>
  18 + <name>templatepath</name>
  19 + <default_value>&#x2f;Users&#x2f;xu&#x2f;resource&#x2f;project_code&#x2f;runtime_temp&#x2f;bsth_control_u_d_files&#x2f;template</default_value>
  20 + <description>&#x6a21;&#x7248;&#x6587;&#x4ef6;&#x8def;&#x5f84;</description>
  21 + </parameter>
  22 + <parameter>
  23 + <name>xlid</name>
  24 + <default_value>115</default_value>
  25 + <description>&#x7ebf;&#x8def;id</description>
  26 + </parameter>
  27 + </parameters>
  28 + <log>
  29 +<trans-log-table><connection/>
  30 +<schema/>
  31 +<table/>
  32 +<size_limit_lines/>
  33 +<interval/>
  34 +<timeout_days/>
  35 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STATUS</id><enabled>Y</enabled><name>STATUS</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name><subject/></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name><subject/></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name><subject/></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name><subject/></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name><subject/></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name><subject/></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>STARTDATE</id><enabled>Y</enabled><name>STARTDATE</name></field><field><id>ENDDATE</id><enabled>Y</enabled><name>ENDDATE</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>DEPDATE</id><enabled>Y</enabled><name>DEPDATE</name></field><field><id>REPLAYDATE</id><enabled>Y</enabled><name>REPLAYDATE</name></field><field><id>LOG_FIELD</id><enabled>Y</enabled><name>LOG_FIELD</name></field><field><id>EXECUTING_SERVER</id><enabled>N</enabled><name>EXECUTING_SERVER</name></field><field><id>EXECUTING_USER</id><enabled>N</enabled><name>EXECUTING_USER</name></field><field><id>CLIENT</id><enabled>N</enabled><name>CLIENT</name></field></trans-log-table>
  36 +<perf-log-table><connection/>
  37 +<schema/>
  38 +<table/>
  39 +<interval/>
  40 +<timeout_days/>
  41 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>SEQ_NR</id><enabled>Y</enabled><name>SEQ_NR</name></field><field><id>LOGDATE</id><enabled>Y</enabled><name>LOGDATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>INPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>INPUT_BUFFER_ROWS</name></field><field><id>OUTPUT_BUFFER_ROWS</id><enabled>Y</enabled><name>OUTPUT_BUFFER_ROWS</name></field></perf-log-table>
  42 +<channel-log-table><connection/>
  43 +<schema/>
  44 +<table/>
  45 +<timeout_days/>
  46 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>LOGGING_OBJECT_TYPE</id><enabled>Y</enabled><name>LOGGING_OBJECT_TYPE</name></field><field><id>OBJECT_NAME</id><enabled>Y</enabled><name>OBJECT_NAME</name></field><field><id>OBJECT_COPY</id><enabled>Y</enabled><name>OBJECT_COPY</name></field><field><id>REPOSITORY_DIRECTORY</id><enabled>Y</enabled><name>REPOSITORY_DIRECTORY</name></field><field><id>FILENAME</id><enabled>Y</enabled><name>FILENAME</name></field><field><id>OBJECT_ID</id><enabled>Y</enabled><name>OBJECT_ID</name></field><field><id>OBJECT_REVISION</id><enabled>Y</enabled><name>OBJECT_REVISION</name></field><field><id>PARENT_CHANNEL_ID</id><enabled>Y</enabled><name>PARENT_CHANNEL_ID</name></field><field><id>ROOT_CHANNEL_ID</id><enabled>Y</enabled><name>ROOT_CHANNEL_ID</name></field></channel-log-table>
  47 +<step-log-table><connection/>
  48 +<schema/>
  49 +<table/>
  50 +<timeout_days/>
  51 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>TRANSNAME</id><enabled>Y</enabled><name>TRANSNAME</name></field><field><id>STEPNAME</id><enabled>Y</enabled><name>STEPNAME</name></field><field><id>STEP_COPY</id><enabled>Y</enabled><name>STEP_COPY</name></field><field><id>LINES_READ</id><enabled>Y</enabled><name>LINES_READ</name></field><field><id>LINES_WRITTEN</id><enabled>Y</enabled><name>LINES_WRITTEN</name></field><field><id>LINES_UPDATED</id><enabled>Y</enabled><name>LINES_UPDATED</name></field><field><id>LINES_INPUT</id><enabled>Y</enabled><name>LINES_INPUT</name></field><field><id>LINES_OUTPUT</id><enabled>Y</enabled><name>LINES_OUTPUT</name></field><field><id>LINES_REJECTED</id><enabled>Y</enabled><name>LINES_REJECTED</name></field><field><id>ERRORS</id><enabled>Y</enabled><name>ERRORS</name></field><field><id>LOG_FIELD</id><enabled>N</enabled><name>LOG_FIELD</name></field></step-log-table>
  52 +<metrics-log-table><connection/>
  53 +<schema/>
  54 +<table/>
  55 +<timeout_days/>
  56 +<field><id>ID_BATCH</id><enabled>Y</enabled><name>ID_BATCH</name></field><field><id>CHANNEL_ID</id><enabled>Y</enabled><name>CHANNEL_ID</name></field><field><id>LOG_DATE</id><enabled>Y</enabled><name>LOG_DATE</name></field><field><id>METRICS_DATE</id><enabled>Y</enabled><name>METRICS_DATE</name></field><field><id>METRICS_CODE</id><enabled>Y</enabled><name>METRICS_CODE</name></field><field><id>METRICS_DESCRIPTION</id><enabled>Y</enabled><name>METRICS_DESCRIPTION</name></field><field><id>METRICS_SUBJECT</id><enabled>Y</enabled><name>METRICS_SUBJECT</name></field><field><id>METRICS_TYPE</id><enabled>Y</enabled><name>METRICS_TYPE</name></field><field><id>METRICS_VALUE</id><enabled>Y</enabled><name>METRICS_VALUE</name></field></metrics-log-table>
  57 + </log>
  58 + <maxdate>
  59 + <connection/>
  60 + <table/>
  61 + <field/>
  62 + <offset>0.0</offset>
  63 + <maxdiff>0.0</maxdiff>
  64 + </maxdate>
  65 + <size_rowset>10000</size_rowset>
  66 + <sleep_time_empty>50</sleep_time_empty>
  67 + <sleep_time_full>50</sleep_time_full>
  68 + <unique_connections>N</unique_connections>
  69 + <feedback_shown>Y</feedback_shown>
  70 + <feedback_size>50000</feedback_size>
  71 + <using_thread_priorities>Y</using_thread_priorities>
  72 + <shared_objects_file/>
  73 + <capture_step_performance>N</capture_step_performance>
  74 + <step_performance_capturing_delay>1000</step_performance_capturing_delay>
  75 + <step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
  76 + <dependencies>
  77 + </dependencies>
  78 + <partitionschemas>
  79 + </partitionschemas>
  80 + <slaveservers>
  81 + </slaveservers>
  82 + <clusterschemas>
  83 + </clusterschemas>
  84 + <created_user>-</created_user>
  85 + <created_date>2017&#x2f;01&#x2f;09 13&#x3a;35&#x3a;19.384</created_date>
  86 + <modified_user>-</modified_user>
  87 + <modified_date>2017&#x2f;01&#x2f;09 13&#x3a;35&#x3a;19.384</modified_date>
  88 + <key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA&#x3d;</key_for_session_key>
  89 + <is_key_private>N</is_key_private>
  90 + </info>
  91 + <notepads>
  92 + <notepad>
  93 + <note>&#x8fd9;&#x91cc;&#x6709;&#x4e9b;&#x95ee;&#x9898;&#xa;&#x5728;window2012&#x7684;&#x73af;&#x5883;&#x4e0b;&#xff0c;&#xa;MySql&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x4e2d;&#x5982;&#x679c;&#x8fd4;&#x56de;&#x4e2d;&#x6587;&#x5185;&#x5bb9;&#x7684;&#x5b57;&#x6bb5;&#xff0c;&#x8fd9;&#x4e2a;&#x5185;&#x5bb9;&#x4e71;&#x7801;&#xa;&#x89e3;&#x51b3;&#x529e;&#x6cd5;&#xff0c;&#x5c31;&#x662f;&#x6570;&#x636e;&#x5e93;&#x67e5;&#x8be2;&#x5168;&#x90e8;&#x7f13;&#x5b58;&#xff0c;&#x5c31;&#x4e0d;&#x4e71;&#x7801;&#xa;linux&#x73af;&#x5883;&#x4e0b;&#x6ca1;&#x95ee;&#x9898;</note>
  94 + <xloc>118</xloc>
  95 + <yloc>158</yloc>
  96 + <width>333</width>
  97 + <heigth>90</heigth>
  98 + <fontname>YaHei Consolas Hybrid</fontname>
  99 + <fontsize>12</fontsize>
  100 + <fontbold>N</fontbold>
  101 + <fontitalic>N</fontitalic>
  102 + <fontcolorred>0</fontcolorred>
  103 + <fontcolorgreen>0</fontcolorgreen>
  104 + <fontcolorblue>0</fontcolorblue>
  105 + <backgroundcolorred>255</backgroundcolorred>
  106 + <backgroundcolorgreen>205</backgroundcolorgreen>
  107 + <backgroundcolorblue>112</backgroundcolorblue>
  108 + <bordercolorred>100</bordercolorred>
  109 + <bordercolorgreen>100</bordercolorgreen>
  110 + <bordercolorblue>100</bordercolorblue>
  111 + <drawshadow>Y</drawshadow>
  112 + </notepad>
  113 + <notepad>
  114 + <note>&#x4f7f;&#x7528;&#x6a21;&#x7248;&#x4f1a;&#x62a5;&#x9519;&#xff0c;&#xa;PDI-5031&#xa;</note>
  115 + <xloc>806</xloc>
  116 + <yloc>315</yloc>
  117 + <width>106</width>
  118 + <heigth>58</heigth>
  119 + <fontname>YaHei Consolas Hybrid</fontname>
  120 + <fontsize>12</fontsize>
  121 + <fontbold>N</fontbold>
  122 + <fontitalic>N</fontitalic>
  123 + <fontcolorred>0</fontcolorred>
  124 + <fontcolorgreen>0</fontcolorgreen>
  125 + <fontcolorblue>0</fontcolorblue>
  126 + <backgroundcolorred>255</backgroundcolorred>
  127 + <backgroundcolorgreen>205</backgroundcolorgreen>
  128 + <backgroundcolorblue>112</backgroundcolorblue>
  129 + <bordercolorred>100</bordercolorred>
  130 + <bordercolorgreen>100</bordercolorgreen>
  131 + <bordercolorblue>100</bordercolorblue>
  132 + <drawshadow>Y</drawshadow>
  133 + </notepad>
  134 + </notepads>
  135 + <connection>
  136 + <name>bus_control_variable</name>
  137 + <server>&#x24;&#x7b;v_db_ip&#x7d;</server>
  138 + <type>MYSQL</type>
  139 + <access>Native</access>
  140 + <database>&#x24;&#x7b;v_db_dname&#x7d;</database>
  141 + <port>3306</port>
  142 + <username>&#x24;&#x7b;v_db_uname&#x7d;</username>
  143 + <password>&#x24;&#x7b;v_db_pwd&#x7d;</password>
  144 + <servername/>
  145 + <data_tablespace/>
  146 + <index_tablespace/>
  147 + <attributes>
  148 + <attribute><code>EXTRA_OPTION_MYSQL.characterEncoding</code><attribute>utf8</attribute></attribute>
  149 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  150 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  151 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  152 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  153 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  154 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  155 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  156 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  157 + <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
  158 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  159 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  160 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  161 + </attributes>
  162 + </connection>
  163 + <connection>
  164 + <name>bus_control_&#x516c;&#x53f8;_201</name>
  165 + <server>localhost</server>
  166 + <type>MYSQL</type>
  167 + <access>Native</access>
  168 + <database>control</database>
  169 + <port>3306</port>
  170 + <username>root</username>
  171 + <password>Encrypted </password>
  172 + <servername/>
  173 + <data_tablespace/>
  174 + <index_tablespace/>
  175 + <attributes>
  176 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  177 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  178 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  179 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  180 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  181 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  182 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  183 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  184 + <attribute><code>STREAM_RESULTS</code><attribute>N</attribute></attribute>
  185 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  186 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  187 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  188 + </attributes>
  189 + </connection>
  190 + <connection>
  191 + <name>bus_control_&#x672c;&#x673a;</name>
  192 + <server>localhost</server>
  193 + <type>MYSQL</type>
  194 + <access>Native</access>
  195 + <database>control</database>
  196 + <port>3306</port>
  197 + <username>root</username>
  198 + <password>Encrypted </password>
  199 + <servername/>
  200 + <data_tablespace/>
  201 + <index_tablespace/>
  202 + <attributes>
  203 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  204 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  205 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  206 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  207 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  208 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  209 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  210 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  211 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  212 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  213 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  214 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  215 + </attributes>
  216 + </connection>
  217 + <connection>
  218 + <name>xlab_mysql_youle</name>
  219 + <server>101.231.124.8</server>
  220 + <type>MYSQL</type>
  221 + <access>Native</access>
  222 + <database>xlab_youle</database>
  223 + <port>45687</port>
  224 + <username>xlab-youle</username>
  225 + <password>Encrypted 2be98afc86aa78a88aa1be369d187a3df</password>
  226 + <servername/>
  227 + <data_tablespace/>
  228 + <index_tablespace/>
  229 + <attributes>
  230 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  231 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  232 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  233 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  234 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  235 + <attribute><code>PORT_NUMBER</code><attribute>45687</attribute></attribute>
  236 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  237 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  238 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  239 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
  240 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
  241 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  242 + </attributes>
  243 + </connection>
  244 + <connection>
  245 + <name>xlab_mysql_youle&#xff08;&#x672c;&#x673a;&#xff09;</name>
  246 + <server>localhost</server>
  247 + <type>MYSQL</type>
  248 + <access>Native</access>
  249 + <database>xlab_youle</database>
  250 + <port>3306</port>
  251 + <username>root</username>
  252 + <password>Encrypted </password>
  253 + <servername/>
  254 + <data_tablespace/>
  255 + <index_tablespace/>
  256 + <attributes>
  257 + <attribute><code>EXTRA_OPTION_MYSQL.defaultFetchSize</code><attribute>500</attribute></attribute>
  258 + <attribute><code>EXTRA_OPTION_MYSQL.useCursorFetch</code><attribute>true</attribute></attribute>
  259 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  260 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  261 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  262 + <attribute><code>PORT_NUMBER</code><attribute>3306</attribute></attribute>
  263 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  264 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  265 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  266 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>N</attribute></attribute>
  267 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>N</attribute></attribute>
  268 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  269 + </attributes>
  270 + </connection>
  271 + <connection>
  272 + <name>xlab_youle</name>
  273 + <server/>
  274 + <type>MYSQL</type>
  275 + <access>JNDI</access>
  276 + <database>xlab_youle</database>
  277 + <port>1521</port>
  278 + <username/>
  279 + <password>Encrypted </password>
  280 + <servername/>
  281 + <data_tablespace/>
  282 + <index_tablespace/>
  283 + <attributes>
  284 + <attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
  285 + <attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
  286 + <attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
  287 + <attribute><code>PORT_NUMBER</code><attribute>1521</attribute></attribute>
  288 + <attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
  289 + <attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
  290 + <attribute><code>STREAM_RESULTS</code><attribute>Y</attribute></attribute>
  291 + <attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
  292 + <attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
  293 + <attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
  294 + </attributes>
  295 + </connection>
  296 + <order>
  297 + <hop> <from>&#x6392;&#x7248;&#x89c4;&#x5219;</from><to>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
  298 + <hop> <from>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</from><to>&#x8f66;&#x8f86;&#x914d;&#x7f6e;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
  299 + <hop> <from>&#x8f66;&#x8f86;&#x914d;&#x7f6e;&#x67e5;&#x8be2;</from><to>&#x8f66;&#x8f86;&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
  300 + <hop> <from>&#x8f66;&#x8f86;&#x67e5;&#x8be2;</from><to>&#x683c;&#x5f0f;&#x5316;&#x65e5;&#x671f;</to><enabled>Y</enabled> </hop>
  301 + <hop> <from>&#x683c;&#x5f0f;&#x5316;&#x65e5;&#x671f;</from><to>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>
  302 + <hop> <from>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</from><to>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</to><enabled>Y</enabled> </hop>
  303 + <hop> <from>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</from><to>Excel&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>
  304 + </order>
  305 + <step>
  306 + <name>Excel&#x8f93;&#x51fa;</name>
  307 + <type>ExcelOutput</type>
  308 + <description/>
  309 + <distribute>Y</distribute>
  310 + <custom_distribution/>
  311 + <copies>1</copies>
  312 + <partitioning>
  313 + <method>none</method>
  314 + <schema_name/>
  315 + </partitioning>
  316 + <header>Y</header>
  317 + <footer>N</footer>
  318 + <encoding/>
  319 + <append>N</append>
  320 + <add_to_result_filenames>Y</add_to_result_filenames>
  321 + <file>
  322 + <name>&#x24;&#x7b;filepath&#x7d;</name>
  323 + <extention/>
  324 + <do_not_open_newfile_init>Y</do_not_open_newfile_init>
  325 + <create_parent_folder>N</create_parent_folder>
  326 + <split>N</split>
  327 + <add_date>N</add_date>
  328 + <add_time>N</add_time>
  329 + <SpecifyFormat>N</SpecifyFormat>
  330 + <date_time_format>yyyyMMddHHmmss</date_time_format>
  331 + <sheetname>&#x5de5;&#x4f5c;&#x8868;1</sheetname>
  332 + <autosizecolums>N</autosizecolums>
  333 + <nullisblank>N</nullisblank>
  334 + <protect_sheet>N</protect_sheet>
  335 + <password>Encrypted </password>
  336 + <splitevery>0</splitevery>
  337 + <usetempfiles>N</usetempfiles>
  338 + <tempdirectory/>
  339 + </file>
  340 + <template>
  341 + <enabled>N</enabled>
  342 + <append>N</append>
  343 + <filename>&#x24;&#x7b;templatepath&#x7d;&#x2f;t1.xls</filename>
  344 + </template>
  345 + <fields>
  346 + <field>
  347 + <name>&#x7ebf;&#x8def;</name>
  348 + <type>String</type>
  349 + <format/>
  350 + </field>
  351 + <field>
  352 + <name>&#x5185;&#x90e8;&#x7f16;&#x7801;</name>
  353 + <type>String</type>
  354 + <format/>
  355 + </field>
  356 + <field>
  357 + <name>&#x542f;&#x7528;&#x65e5;&#x671f;</name>
  358 + <type>String</type>
  359 + <format/>
  360 + </field>
  361 + <field>
  362 + <name>&#x8d77;&#x59cb;&#x8def;&#x724c;</name>
  363 + <type>String</type>
  364 + <format/>
  365 + </field>
  366 + <field>
  367 + <name>&#x8def;&#x724c;&#x8303;&#x56f4;</name>
  368 + <type>String</type>
  369 + <format/>
  370 + </field>
  371 + <field>
  372 + <name>&#x8d77;&#x59cb;&#x4eba;&#x5458;</name>
  373 + <type>String</type>
  374 + <format/>
  375 + </field>
  376 + <field>
  377 + <name>&#x4eba;&#x5458;&#x8303;&#x56f4;</name>
  378 + <type>String</type>
  379 + <format/>
  380 + </field>
  381 + <field>
  382 + <name>&#x7ffb;&#x73ed;&#x683c;&#x5f0f;</name>
  383 + <type>String</type>
  384 + <format/>
  385 + </field>
  386 + </fields>
  387 + <custom>
  388 + <header_font_name>arial</header_font_name>
  389 + <header_font_size>10</header_font_size>
  390 + <header_font_bold>N</header_font_bold>
  391 + <header_font_italic>N</header_font_italic>
  392 + <header_font_underline>no</header_font_underline>
  393 + <header_font_orientation>horizontal</header_font_orientation>
  394 + <header_font_color>black</header_font_color>
  395 + <header_background_color>none</header_background_color>
  396 + <header_row_height>255</header_row_height>
  397 + <header_alignment>left</header_alignment>
  398 + <header_image/>
  399 + <row_font_name>arial</row_font_name>
  400 + <row_font_size>10</row_font_size>
  401 + <row_font_color>black</row_font_color>
  402 + <row_background_color>none</row_background_color>
  403 + </custom>
  404 + <cluster_schema/>
  405 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  406 + <xloc>707</xloc>
  407 + <yloc>348</yloc>
  408 + <draw>Y</draw>
  409 + </GUI>
  410 + </step>
  411 +
  412 + <step>
  413 + <name>&#x5b57;&#x6bb5;&#x9009;&#x62e9;</name>
  414 + <type>SelectValues</type>
  415 + <description/>
  416 + <distribute>Y</distribute>
  417 + <custom_distribution/>
  418 + <copies>1</copies>
  419 + <partitioning>
  420 + <method>none</method>
  421 + <schema_name/>
  422 + </partitioning>
  423 + <fields> <field> <name>xlmc</name>
  424 + <rename>&#x7ebf;&#x8def;</rename>
  425 + <length>-2</length>
  426 + <precision>-2</precision>
  427 + </field> <field> <name>zbh</name>
  428 + <rename>&#x5185;&#x90e8;&#x7f16;&#x7801;</rename>
  429 + <length>-2</length>
  430 + <precision>-2</precision>
  431 + </field> <field> <name>qyrq</name>
  432 + <rename>&#x542f;&#x7528;&#x65e5;&#x671f;</rename>
  433 + <length>-2</length>
  434 + <precision>-2</precision>
  435 + </field> <field> <name>lp_start</name>
  436 + <rename>&#x8d77;&#x59cb;&#x8def;&#x724c;</rename>
  437 + <length>-2</length>
  438 + <precision>-2</precision>
  439 + </field> <field> <name>lp_names</name>
  440 + <rename>&#x8def;&#x724c;&#x8303;&#x56f4;</rename>
  441 + <length>-2</length>
  442 + <precision>-2</precision>
  443 + </field> <field> <name>ry_start</name>
  444 + <rename>&#x8d77;&#x59cb;&#x4eba;&#x5458;</rename>
  445 + <length>-2</length>
  446 + <precision>-2</precision>
  447 + </field> <field> <name>ry_dbbms</name>
  448 + <rename>&#x4eba;&#x5458;&#x8303;&#x56f4;</rename>
  449 + <length>-2</length>
  450 + <precision>-2</precision>
  451 + </field> <field> <name>fbgs</name>
  452 + <rename>&#x7ffb;&#x73ed;&#x683c;&#x5f0f;</rename>
  453 + <length>-2</length>
  454 + <precision>-2</precision>
  455 + </field> <select_unspecified>N</select_unspecified>
  456 + </fields> <cluster_schema/>
  457 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  458 + <xloc>705</xloc>
  459 + <yloc>270</yloc>
  460 + <draw>Y</draw>
  461 + </GUI>
  462 + </step>
  463 +
  464 + <step>
  465 + <name>&#x6392;&#x5e8f;&#x8bb0;&#x5f55;</name>
  466 + <type>SortRows</type>
  467 + <description/>
  468 + <distribute>Y</distribute>
  469 + <custom_distribution/>
  470 + <copies>1</copies>
  471 + <partitioning>
  472 + <method>none</method>
  473 + <schema_name/>
  474 + </partitioning>
  475 + <directory>&#x25;&#x25;java.io.tmpdir&#x25;&#x25;</directory>
  476 + <prefix>out</prefix>
  477 + <sort_size>1000000</sort_size>
  478 + <free_memory/>
  479 + <compress>N</compress>
  480 + <compress_variable/>
  481 + <unique_rows>N</unique_rows>
  482 + <fields>
  483 + <field>
  484 + <name>xlmc</name>
  485 + <ascending>Y</ascending>
  486 + <case_sensitive>N</case_sensitive>
  487 + <presorted>N</presorted>
  488 + </field>
  489 + <field>
  490 + <name>zbh</name>
  491 + <ascending>Y</ascending>
  492 + <case_sensitive>N</case_sensitive>
  493 + <presorted>N</presorted>
  494 + </field>
  495 + <field>
  496 + <name>qyrq</name>
  497 + <ascending>Y</ascending>
  498 + <case_sensitive>N</case_sensitive>
  499 + <presorted>N</presorted>
  500 + </field>
  501 + <field>
  502 + <name>lp_names</name>
  503 + <ascending>Y</ascending>
  504 + <case_sensitive>N</case_sensitive>
  505 + <presorted>N</presorted>
  506 + </field>
  507 + <field>
  508 + <name>ry_dbbms</name>
  509 + <ascending>Y</ascending>
  510 + <case_sensitive>N</case_sensitive>
  511 + <presorted>N</presorted>
  512 + </field>
  513 + </fields>
  514 + <cluster_schema/>
  515 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  516 + <xloc>705</xloc>
  517 + <yloc>177</yloc>
  518 + <draw>Y</draw>
  519 + </GUI>
  520 + </step>
  521 +
  522 + <step>
  523 + <name>&#x6392;&#x7248;&#x89c4;&#x5219;</name>
  524 + <type>TableInput</type>
  525 + <description/>
  526 + <distribute>Y</distribute>
  527 + <custom_distribution/>
  528 + <copies>1</copies>
  529 + <partitioning>
  530 + <method>none</method>
  531 + <schema_name/>
  532 + </partitioning>
  533 + <connection>bus_control_variable</connection>
  534 + <sql>SELECT &#x2a; FROM bsth_c_s_sr1_flat&#xa;where xl &#x3d; &#x24;&#x7b;xlid&#x7d;</sql>
  535 + <limit>0</limit>
  536 + <lookup/>
  537 + <execute_each_row>N</execute_each_row>
  538 + <variables_active>Y</variables_active>
  539 + <lazy_conversion_active>N</lazy_conversion_active>
  540 + <cluster_schema/>
  541 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  542 + <xloc>129</xloc>
  543 + <yloc>65</yloc>
  544 + <draw>Y</draw>
  545 + </GUI>
  546 + </step>
  547 +
  548 + <step>
  549 + <name>&#x683c;&#x5f0f;&#x5316;&#x65e5;&#x671f;</name>
  550 + <type>SelectValues</type>
  551 + <description/>
  552 + <distribute>Y</distribute>
  553 + <custom_distribution/>
  554 + <copies>1</copies>
  555 + <partitioning>
  556 + <method>none</method>
  557 + <schema_name/>
  558 + </partitioning>
  559 + <fields> <select_unspecified>N</select_unspecified>
  560 + <meta> <name>qyrq</name>
  561 + <rename>qyrq</rename>
  562 + <type>String</type>
  563 + <length>-2</length>
  564 + <precision>-2</precision>
  565 + <conversion_mask>yyyy-MM-dd</conversion_mask>
  566 + <date_format_lenient>false</date_format_lenient>
  567 + <date_format_locale/>
  568 + <date_format_timezone/>
  569 + <lenient_string_to_number>false</lenient_string_to_number>
  570 + <encoding/>
  571 + <decimal_symbol/>
  572 + <grouping_symbol/>
  573 + <currency_symbol/>
  574 + <storage_type/>
  575 + </meta> <meta> <name>lp_start</name>
  576 + <rename>lp_start</rename>
  577 + <type>String</type>
  578 + <length>-2</length>
  579 + <precision>-2</precision>
  580 + <conversion_mask/>
  581 + <date_format_lenient>false</date_format_lenient>
  582 + <date_format_locale/>
  583 + <date_format_timezone/>
  584 + <lenient_string_to_number>false</lenient_string_to_number>
  585 + <encoding/>
  586 + <decimal_symbol/>
  587 + <grouping_symbol/>
  588 + <currency_symbol/>
  589 + <storage_type/>
  590 + </meta> <meta> <name>ry_start</name>
  591 + <rename>ry_start</rename>
  592 + <type>String</type>
  593 + <length>-2</length>
  594 + <precision>-2</precision>
  595 + <conversion_mask>&#x23;</conversion_mask>
  596 + <date_format_lenient>false</date_format_lenient>
  597 + <date_format_locale/>
  598 + <date_format_timezone/>
  599 + <lenient_string_to_number>false</lenient_string_to_number>
  600 + <encoding/>
  601 + <decimal_symbol/>
  602 + <grouping_symbol/>
  603 + <currency_symbol/>
  604 + <storage_type/>
  605 + </meta> </fields> <cluster_schema/>
  606 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  607 + <xloc>705</xloc>
  608 + <yloc>65</yloc>
  609 + <draw>Y</draw>
  610 + </GUI>
  611 + </step>
  612 +
  613 + <step>
  614 + <name>&#x7ebf;&#x8def;&#x67e5;&#x8be2;</name>
  615 + <type>DBLookup</type>
  616 + <description/>
  617 + <distribute>Y</distribute>
  618 + <custom_distribution/>
  619 + <copies>1</copies>
  620 + <partitioning>
  621 + <method>none</method>
  622 + <schema_name/>
  623 + </partitioning>
  624 + <connection>bus_control_variable</connection>
  625 + <cache>Y</cache>
  626 + <cache_load_all>Y</cache_load_all>
  627 + <cache_size>0</cache_size>
  628 + <lookup>
  629 + <schema/>
  630 + <table>bsth_c_line</table>
  631 + <orderby/>
  632 + <fail_on_multiple>N</fail_on_multiple>
  633 + <eat_row_on_failure>N</eat_row_on_failure>
  634 + <key>
  635 + <name>xl</name>
  636 + <field>id</field>
  637 + <condition>&#x3d;</condition>
  638 + <name2/>
  639 + </key>
  640 + <value>
  641 + <name>name</name>
  642 + <rename>xlmc</rename>
  643 + <default/>
  644 + <type>String</type>
  645 + </value>
  646 + </lookup>
  647 + <cluster_schema/>
  648 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  649 + <xloc>329</xloc>
  650 + <yloc>65</yloc>
  651 + <draw>Y</draw>
  652 + </GUI>
  653 + </step>
  654 +
  655 + <step>
  656 + <name>&#x8f66;&#x8f86;&#x67e5;&#x8be2;</name>
  657 + <type>DBLookup</type>
  658 + <description/>
  659 + <distribute>Y</distribute>
  660 + <custom_distribution/>
  661 + <copies>1</copies>
  662 + <partitioning>
  663 + <method>none</method>
  664 + <schema_name/>
  665 + </partitioning>
  666 + <connection>bus_control_variable</connection>
  667 + <cache>N</cache>
  668 + <cache_load_all>N</cache_load_all>
  669 + <cache_size>0</cache_size>
  670 + <lookup>
  671 + <schema/>
  672 + <table>bsth_c_cars</table>
  673 + <orderby/>
  674 + <fail_on_multiple>N</fail_on_multiple>
  675 + <eat_row_on_failure>N</eat_row_on_failure>
  676 + <key>
  677 + <name>clid</name>
  678 + <field>id</field>
  679 + <condition>&#x3d;</condition>
  680 + <name2/>
  681 + </key>
  682 + <value>
  683 + <name>inside_code</name>
  684 + <rename>zbh</rename>
  685 + <default/>
  686 + <type>String</type>
  687 + </value>
  688 + </lookup>
  689 + <cluster_schema/>
  690 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  691 + <xloc>600</xloc>
  692 + <yloc>64</yloc>
  693 + <draw>Y</draw>
  694 + </GUI>
  695 + </step>
  696 +
  697 + <step>
  698 + <name>&#x8f66;&#x8f86;&#x914d;&#x7f6e;&#x67e5;&#x8be2;</name>
  699 + <type>DBLookup</type>
  700 + <description/>
  701 + <distribute>Y</distribute>
  702 + <custom_distribution/>
  703 + <copies>1</copies>
  704 + <partitioning>
  705 + <method>none</method>
  706 + <schema_name/>
  707 + </partitioning>
  708 + <connection>bus_control_variable</connection>
  709 + <cache>N</cache>
  710 + <cache_load_all>N</cache_load_all>
  711 + <cache_size>0</cache_size>
  712 + <lookup>
  713 + <schema/>
  714 + <table>bsth_c_s_ccinfo</table>
  715 + <orderby/>
  716 + <fail_on_multiple>N</fail_on_multiple>
  717 + <eat_row_on_failure>N</eat_row_on_failure>
  718 + <key>
  719 + <name>car_config_info</name>
  720 + <field>id</field>
  721 + <condition>&#x3d;</condition>
  722 + <name2/>
  723 + </key>
  724 + <value>
  725 + <name>cl</name>
  726 + <rename>clid</rename>
  727 + <default/>
  728 + <type>Integer</type>
  729 + </value>
  730 + </lookup>
  731 + <cluster_schema/>
  732 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  733 + <xloc>471</xloc>
  734 + <yloc>64</yloc>
  735 + <draw>Y</draw>
  736 + </GUI>
  737 + </step>
  738 +
  739 + <step_error_handling>
  740 + </step_error_handling>
  741 + <slave-step-copy-partition-distribution>
  742 +</slave-step-copy-partition-distribution>
  743 + <slave_transformation>N</slave_transformation>
  744 +
  745 +</transformation>
... ...
src/main/resources/static/pages/electricity/jdl/list.html
... ... @@ -117,7 +117,7 @@
117 117 });
118 118  
119 119 //提交
120   - $('tr.filter .filter-submit').on('click', function () {
  120 + $('tr.filter .filter-submit').on('click', function () {
121 121 var gsbm = $('#gsbm').val();
122 122 var fgsbm = $('#fgsbm').val();
123 123 if ($("#rq").val() == "" || $("#rq").val() ==null){
... ...
src/main/resources/static/pages/electricity/jdl/upload.html
... ... @@ -79,6 +79,8 @@
79 79 layer.close(j);
80 80 alert(data.result);
81 81 // alert("文件导入成功");
  82 + $('#uploadFile').modal('hide');
  83 + $('tr.filter .filter-submit').click();
82 84 },
83 85 error : function(data, status, e) {
84 86 layer.close(j);
... ... @@ -88,7 +90,7 @@
88 90 });
89 91  
90 92 $('#downLoad').on('click', function(){
91   - window.open("/downloadFile/download?fileName=import_Jdl");
  93 + window.open("/downloadFile/downloadModel?fileName=import_Jdl");
92 94 });
93 95  
94 96 function getCurrSelNode(){
... ...
src/main/resources/static/pages/electricity/list/list.html
... ... @@ -261,11 +261,11 @@ onkeyup=&quot;this.value=this.value.replace(/[^(\d||/.)]/g,&#39;&#39;).replace(&#39;.&#39;,&#39;$#$&#39;).rep
261 261 //var id = 15;
262 262 //$('.in_carpark_jzcd[data-id='+id+']', '#dl_oil_list')
263 263  
264   - $("#checkYl").on('click', function () {
  264 + $("#checkDl").on('click', function () {
265 265 if ($("#rq").val() != "") {
266 266 var params=getParamsList();
267 267 var i = layer.load(2);
268   - $get('/ylb/checkYl', params, function () {
  268 + $get('/dlb/checkDl', params, function () {
269 269 layer.close(i);
270 270 jsDoQuery(params, true);
271 271 });
... ... @@ -537,6 +537,7 @@ onkeyup=&quot;this.value=this.value.replace(/[^(\d||/.)]/g,&#39;&#39;).replace(&#39;.&#39;,&#39;$#$&#39;).rep
537 537 }
538 538 $('#ylbListFgsdmId').html(options);
539 539 initXl();
  540 + initCl();
540 541 }
541 542 /*
542 543 * 获取数据 p: 要提交的参数, pagination: 是否重新分页
... ... @@ -750,7 +751,8 @@ onkeyup=&quot;this.value=this.value.replace(/[^(\d||/.)]/g,&#39;&#39;).replace(&#39;.&#39;,&#39;$#$&#39;).rep
750 751 // var gsbm=$('#ylbListGsdmId').val(),
751 752 // var fgsbm=$('#ylbListFgsdmId').val(),
752 753 // var xlbm=$('#xlbm').val();
753   -
  754 + $("#xlbm").on("change",initCl);
  755 + function initCl(){
754 756 $('#nbbm').select2({
755 757 placeholder: '搜索车辆...',
756 758 ajax: {
... ... @@ -795,6 +797,7 @@ onkeyup=&quot;this.value=this.value.replace(/[^(\d||/.)]/g,&#39;&#39;).replace(&#39;.&#39;,&#39;$#$&#39;).rep
795 797 }
796 798 }
797 799 });
  800 + }
798 801 // }
799 802  
800 803  
... ... @@ -803,8 +806,8 @@ onkeyup=&quot;this.value=this.value.replace(/[^(\d||/.)]/g,&#39;&#39;).replace(&#39;.&#39;,&#39;$#$&#39;).rep
803 806 $("#export").on("click", function () {
804 807 if ($("#rq").val() != "") {
805 808 var params=getParamsList();
806   - $post('/ylb/listExport', params, function (result) {
807   - window.open("/downloadFile/download?fileName="+$("#rq").val()+"进出场存油量" );
  809 + $post('/dlb/listExport', params, function (result) {
  810 + window.open("/downloadFile/download?fileName="+$("#rq").val()+"进出场存电量" );
808 811 });
809 812 } else {
810 813 layer.msg('请选择日期.');
... ...
src/main/resources/static/pages/forms/export/import_Jdl.xls 0 → 100644
No preview for this file type
src/main/resources/static/pages/forms/mould/listDl.xls 0 → 100644
No preview for this file type
src/main/resources/static/pages/forms/statement/jobSummary.html
... ... @@ -72,7 +72,7 @@
72 72 </thead>
73 73 <tbody>
74 74  
75   - </tbody>
  75 + </tbody >
76 76 <tr>
77 77 <td>内容</td>
78 78 <td>路牌</td>
... ... @@ -277,7 +277,6 @@
277 277 initPinYinSelect2('#line',data,'');
278 278  
279 279 }) */
280   -
281 280 $("#query").on("click",function(){
282 281 var line=$("#line").val();;
283 282 var lineName=$(".select2-selection__rendered").html();
... ... @@ -302,7 +301,6 @@
302 301 })
303 302  
304 303 $get('/report/jobHzxx',{line:line,date:date},function(result){
305   - console.log(result)
306 304 $("#jhbc").html(result.jhbc);
307 305 $("#sjbc").html(result.sjbc)
308 306 $("#jhgl").html(result.jhgl);
... ...
src/main/resources/static/pages/oil/list_ph.html
... ... @@ -570,6 +570,7 @@ onkeyup=&quot;this.value=this.value.replace(/[^(\d||/.)]/g,&#39;&#39;).replace(&#39;.&#39;,&#39;$#$&#39;).rep
570 570 }
571 571 $('#ylbListFgsdmId').html(options);
572 572 initXl();
  573 + initCl();
573 574 }
574 575 /*
575 576 * 获取数据 p: 要提交的参数, pagination: 是否重新分页
... ... @@ -783,51 +784,55 @@ onkeyup=&quot;this.value=this.value.replace(/[^(\d||/.)]/g,&#39;&#39;).replace(&#39;.&#39;,&#39;$#$&#39;).rep
783 784 // var gsbm=$('#ylbListGsdmId').val(),
784 785 // var fgsbm=$('#ylbListFgsdmId').val(),
785 786 // var xlbm=$('#xlbm').val();
  787 +
  788 + $("#xlbm").on("change",initCl);
  789 + function initCl(){
  790 + $('#nbbm').select2({
  791 + placeholder: '搜索车辆...',
  792 + ajax: {
  793 + url: '/report/carList',
  794 + dataType: 'json',
  795 + delay: 150,
  796 + data: function (params) {
  797 + return {nbbm: params.term,
  798 + gsbm:$('#ylbListGsdmId').val(),
  799 + fgsbm:$('#ylbListFgsdmId').val(),
  800 + xlbm:$('#xlbm').val()};
  801 + },
  802 + processResults: function (data) {
  803 + return {
  804 + results: data
  805 + };
  806 + },
  807 + cache: true
  808 + },
  809 + templateResult: function (repo) {
  810 + if (repo.loading) return repo.text;
  811 + var h = '<span>' + repo.text + '</span>';
  812 + h += (repo.lineName ? '&nbsp;<span class="select2-desc">' + repo.lineName + '</span>' : '');
  813 + return h;
  814 + },
  815 + escapeMarkup: function (markup) {
  816 + return markup;
  817 + },
  818 + minimumInputLength: 1,
  819 + templateSelection: function (repo) {
  820 + return repo.text;
  821 + },
  822 + language: {
  823 + noResults: function () {
  824 + return '<span style="color:red;font-size: 12px;">没有搜索到车辆!</span>';
  825 + },
  826 + inputTooShort: function (e) {
  827 + return '<span style="color:gray;font-size: 12px;"><i class="fa fa-search"></i> 输入自编号搜索车辆</span>';
  828 + },
  829 + searching: function () {
  830 + return '<span style="color:gray;font-size: 12px;"> 正在搜索车辆...</span>';
  831 + }
  832 + }
  833 + });
786 834  
787   - $('#nbbm').select2({
788   - placeholder: '搜索车辆...',
789   - ajax: {
790   - url: '/report/carList',
791   - dataType: 'json',
792   - delay: 150,
793   - data: function (params) {
794   - return {nbbm: params.term,
795   - gsbm:$('#ylbListGsdmId').val(),
796   - fgsbm:$('#ylbListFgsdmId').val(),
797   - xlbm:$('#xlbm').val()};
798   - },
799   - processResults: function (data) {
800   - return {
801   - results: data
802   - };
803   - },
804   - cache: true
805   - },
806   - templateResult: function (repo) {
807   - if (repo.loading) return repo.text;
808   - var h = '<span>' + repo.text + '</span>';
809   - h += (repo.lineName ? '&nbsp;<span class="select2-desc">' + repo.lineName + '</span>' : '');
810   - return h;
811   - },
812   - escapeMarkup: function (markup) {
813   - return markup;
814   - },
815   - minimumInputLength: 1,
816   - templateSelection: function (repo) {
817   - return repo.text;
818   - },
819   - language: {
820   - noResults: function () {
821   - return '<span style="color:red;font-size: 12px;">没有搜索到车辆!</span>';
822   - },
823   - inputTooShort: function (e) {
824   - return '<span style="color:gray;font-size: 12px;"><i class="fa fa-search"></i> 输入自编号搜索车辆</span>';
825   - },
826   - searching: function () {
827   - return '<span style="color:gray;font-size: 12px;"> 正在搜索车辆...</span>';
828   - }
829   - }
830   - });
  835 + }
831 836 // }
832 837  
833 838  
... ...
src/main/resources/static/pages/permission/user/controlAllot.html
... ... @@ -35,7 +35,7 @@
35 35 <div style="border: 1px solid #cccbcb;height: 190px;position: relative;">
36 36 <span style="display: block;margin: 10px;color: grey;">已分配的线路</span>
37 37  
38   - <div class="line-list" style="height: 110px;">
  38 + <div class="line-list" style="height: 110px;overflow: auto;padding: 9px;">
39 39 </div>
40 40  
41 41 <div style="padding-left: 8px;">
... ...
src/main/resources/static/pages/scheduleApp/module/core/busConfig/module.js
... ... @@ -66,7 +66,15 @@ angular.module(&#39;ScheduleApp&#39;).factory(
66 66 * @returns {*|Function|promise|n}
67 67 */
68 68 dataExport: function() {
69   - return service.dataTools.dataExport().$promise;
  69 + // 判定是否选择了线路
  70 + if (currentSearchCondition['xl.id_eq']) {
  71 + return service.dataTools.dataExport(
  72 + {xlid: currentSearchCondition['xl.id_eq']}
  73 + ).$promise;
  74 + } else {
  75 + alert("请选择线路!");
  76 + return null;
  77 + }
70 78 }
71 79  
72 80 };
... ... @@ -118,14 +126,16 @@ angular.module(&#39;ScheduleApp&#39;).controller(
118 126  
119 127 // 导出excel
120 128 self.exportData = function() {
121   - busConfigService.dataExport().then(
122   - function(result) {
123   - fileDownload.downloadFile(result.data, "application/octet-stream", "车辆配置信息.xls");
124   - },
125   - function(result) {
126   - console.log("exportData failed:" + result);
127   - }
128   - );
  129 + if (busConfigService.dataExport()) {
  130 + busConfigService.dataExport().then(
  131 + function(result) {
  132 + fileDownload.downloadFile(result.data, "application/octet-stream", "车辆配置信息.xls");
  133 + },
  134 + function(result) {
  135 + console.log("exportData failed:" + result);
  136 + }
  137 + );
  138 + }
129 139 };
130 140 }
131 141 ]
... ...
src/main/resources/static/pages/scheduleApp/module/core/employeeConfig/module.js
... ... @@ -66,7 +66,15 @@ angular.module(&#39;ScheduleApp&#39;).factory(
66 66 * @returns {*|Function|promise|n}
67 67 */
68 68 dataExport: function() {
69   - return service.dataTools.dataExport().$promise;
  69 + // 判定是否选择了线路
  70 + if (currentSearchCondition['xl.id_eq']) {
  71 + return service.dataTools.dataExport(
  72 + {xlid: currentSearchCondition['xl.id_eq']}
  73 + ).$promise;
  74 + } else {
  75 + alert("请选择线路!");
  76 + return null;
  77 + }
70 78 }
71 79  
72 80 };
... ... @@ -119,14 +127,16 @@ angular.module(&#39;ScheduleApp&#39;).controller(
119 127  
120 128 // 导出excel
121 129 self.exportData = function() {
122   - service.dataExport().then(
123   - function(result) {
124   - fileDownload.downloadFile(result.data, "application/octet-stream", "人员配置信息.xls");
125   - },
126   - function(result) {
127   - console.log("exportData failed:" + result);
128   - }
129   - );
  130 + if (service.dataExport()) {
  131 + service.dataExport().then(
  132 + function(result) {
  133 + fileDownload.downloadFile(result.data, "application/octet-stream", "人员配置信息.xls");
  134 + },
  135 + function(result) {
  136 + console.log("exportData failed:" + result);
  137 + }
  138 + );
  139 + }
130 140 };
131 141 }
132 142 ]
... ...
src/main/resources/static/pages/scheduleApp/module/core/guideboardManage/module.js
... ... @@ -71,7 +71,15 @@ angular.module(&#39;ScheduleApp&#39;).factory(
71 71 * @returns {*|Function|promise|n}
72 72 */
73 73 dataExport: function() {
74   - return service.dataTools.dataExport().$promise;
  74 + // 判定是否选择了线路
  75 + if (currentSearchCondition['xl.id_eq']) {
  76 + return service.dataTools.dataExport(
  77 + {xlid: currentSearchCondition['xl.id_eq']}
  78 + ).$promise;
  79 + } else {
  80 + alert("请选择线路!");
  81 + return null;
  82 + }
75 83 }
76 84 };
77 85 }
... ... @@ -123,14 +131,16 @@ angular.module(&#39;ScheduleApp&#39;).controller(
123 131  
124 132 // 导出excel
125 133 self.exportData = function() {
126   - service.dataExport().then(
127   - function(result) {
128   - fileDownload.downloadFile(result.data, "application/octet-stream", "路牌信息.xls");
129   - },
130   - function(result) {
131   - console.log("exportData failed:" + result);
132   - }
133   - );
  134 + if (service.dataExport()) {
  135 + service.dataExport().then(
  136 + function(result) {
  137 + fileDownload.downloadFile(result.data, "application/octet-stream", "路牌信息.xls");
  138 + },
  139 + function(result) {
  140 + console.log("exportData failed:" + result);
  141 + }
  142 + );
  143 + }
134 144 };
135 145  
136 146 }]);
... ...
src/main/resources/static/pages/scheduleApp/module/core/scheduleRuleManage/module.js
... ... @@ -62,7 +62,15 @@ angular.module(&#39;ScheduleApp&#39;).factory(
62 62 * @returns {*|Function|promise|n}
63 63 */
64 64 dataExport: function() {
65   - return service.dataTools.dataExport().$promise;
  65 + // 判定是否选择了线路
  66 + if (currentSearchCondition['xl.id_eq']) {
  67 + return service.dataTools.dataExport(
  68 + {xlid: currentSearchCondition['xl.id_eq']}
  69 + ).$promise;
  70 + } else {
  71 + alert("请选择线路!");
  72 + return null;
  73 + }
66 74 }
67 75  
68 76 };
... ... @@ -116,14 +124,16 @@ angular.module(&#39;ScheduleApp&#39;).controller(
116 124  
117 125 // 导出excel
118 126 self.exportData = function() {
119   - service.dataExport().then(
120   - function(result) {
121   - fileDownload.downloadFile(result.data, "application/octet-stream", "排版规则信息.xls");
122   - },
123   - function(result) {
124   - console.log("exportData failed:" + result);
125   - }
126   - );
  127 + if (service.dataExport()) {
  128 + service.dataExport().then(
  129 + function(result) {
  130 + fileDownload.downloadFile(result.data, "application/octet-stream", "排版规则信息.xls");
  131 + },
  132 + function(result) {
  133 + console.log("exportData failed:" + result);
  134 + }
  135 + );
  136 + }
127 137 };
128 138  
129 139 }
... ...
src/main/resources/static/pages/scheduleApp/module/core/ttInfoManage/detailedit/edit-mulselect.html
... ... @@ -42,7 +42,7 @@
42 42 <div class="form-group has-success has-feedback">
43 43 <label class="col-md-2 control-label">方向:</label>
44 44 <div class="col-md-3">
45   - <sa-Radiogroup model="ctrl.xldir" dicgroup="LineTrend" name="xlDir"></sa-Radiogroup>
  45 + <sa-Radiogroup model="ctrl.xldir" dicgroup="LineTrend2" name="xlDir"></sa-Radiogroup>
46 46 </div>
47 47 </div>
48 48  
... ... @@ -54,6 +54,7 @@
54 54 ng-pattern="ctrl.time_regex"
55 55 />
56 56 </div>
  57 + <span>00:00</span>
57 58 <!-- 隐藏块,显示验证信息 -->
58 59 <div class="alert alert-danger well-sm" ng-show="myForm.starttime.$error.pattern">
59 60 时间格式错误,应该是格式hh:mm,如:06:39
... ... @@ -68,11 +69,18 @@
68 69 ng-pattern="ctrl.time_regex"
69 70 />
70 71 </div>
  72 + <span>00:00</span>
71 73 <!-- 隐藏块,显示验证信息 -->
72 74 <div class="alert alert-danger well-sm" ng-show="myForm.endtime.$error.pattern">
73 75 时间格式错误,应该是格式hh:mm,如:06:39
74 76 </div>
75 77 </div>
  78 + <div class="form-group has-success has-feedback">
  79 + <label class="col-md-2 control-label">是否包含进出场:</label>
  80 + <div class="col-md-3">
  81 + <sa-Radiogroup model="ctrl.isInOut" dicgroup="truefalseType" name="isInOut"></sa-Radiogroup>
  82 + </div>
  83 + </div>
76 84  
77 85 </div>
78 86  
... ...
src/main/resources/static/pages/scheduleApp/module/core/ttInfoManage/detailedit/timeTableDetailManage_old.js
... ... @@ -75,7 +75,7 @@ angular.module(&#39;ScheduleApp&#39;).factory(
75 75 }
76 76 }
77 77 };
78   - editInfo.detailInfos[i][j].where = function(xldir, startTime_h_m, endTime_h_m) { // where方法
  78 + editInfo.detailInfos[i][j].where = function(xldir, startTime_h_m, endTime_h_m, isInOut) { // where方法
79 79 var fcsj_m_h = [];
80 80 fcsj_m_h[0] = parseInt(this.fcsj.split(":")[0]);
81 81 fcsj_m_h[1] = parseInt(this.fcsj.split(":")[1]);
... ... @@ -87,7 +87,39 @@ angular.module(&#39;ScheduleApp&#39;).factory(
87 87 var s_temp_date = new Date(2000, 1, 1);
88 88 var e_temp_date = new Date(2000, 1, 1);
89 89  
90   - if (xldir) {
  90 + if (xldir == 2) { // 上下行
  91 + // 判定是否要进出场班次
  92 + if (isInOut == false && (this.bc_type == "in" || this.bc_type == "out")) {
  93 + return false;
  94 + }
  95 +
  96 + if (startTime_h_m) {
  97 + if (endTime_h_m) {
  98 + s_temp_date.setHours(startTime_h_m[0]);
  99 + s_temp_date.setMinutes(startTime_h_m[1]);
  100 + e_temp_date.setHours(endTime_h_m[0]);
  101 + e_temp_date.setMinutes(endTime_h_m[1]);
  102 + return fcsj >= s_temp_date && fcsj <= e_temp_date;
  103 + } else {
  104 + s_temp_date.setHours(startTime_h_m[0]);
  105 + s_temp_date.setMinutes(startTime_h_m[1]);
  106 + return fcsj >= s_temp_date;
  107 + }
  108 + } else {
  109 + if (endTime_h_m) {
  110 + e_temp_date.setHours(endTime_h_m[0]);
  111 + e_temp_date.setMinutes(endTime_h_m[1]);
  112 + return fcsj <= e_temp_date;
  113 + } else {
  114 + return false;
  115 + }
  116 + }
  117 + } else {
  118 + // 判定是否要进出场班次
  119 + if (isInOut == false && (this.bc_type == "in" || this.bc_type == "out")) {
  120 + return false;
  121 + }
  122 +
91 123 if (xldir == this.xldir) {
92 124 if (startTime_h_m) {
93 125 if (endTime_h_m) {
... ... @@ -113,28 +145,6 @@ angular.module(&#39;ScheduleApp&#39;).factory(
113 145 } else {
114 146 return false;
115 147 }
116   - } else {
117   - if (startTime_h_m) {
118   - if (endTime_h_m) {
119   - s_temp_date.setHours(startTime_h_m[0]);
120   - s_temp_date.setMinutes(startTime_h_m[1]);
121   - e_temp_date.setHours(endTime_h_m[0]);
122   - e_temp_date.setMinutes(endTime_h_m[1]);
123   - return fcsj >= s_temp_date && fcsj <= e_temp_date;
124   - } else {
125   - s_temp_date.setHours(startTime_h_m[0]);
126   - s_temp_date.setMinutes(startTime_h_m[1]);
127   - return fcsj >= s_temp_date;
128   - }
129   - } else {
130   - if (endTime_h_m) {
131   - e_temp_date.setHours(endTime_h_m[0]);
132   - e_temp_date.setMinutes(endTime_h_m[1]);
133   - return fcsj <= e_temp_date;
134   - } else {
135   - return false;
136   - }
137   - }
138 148 }
139 149  
140 150 };
... ... @@ -657,9 +667,10 @@ angular.module(&#39;ScheduleApp&#39;).controller(
657 667  
658 668 self.title1 = self.xlname + "(" + self.ttname + ")" + "时刻表明细信息";
659 669  
660   - self.xldir = undefined; // 线路上下行
  670 + self.xldir = 2; // 线路上下行
661 671 self.starttime = undefined; // 开始时间
662 672 self.endtime = undefined; // 结束时间
  673 + self.isInOut = false; // 不包含进出场
663 674  
664 675 // 时间正则表达式(格式hh:mm,如:06:39)
665 676 self.time_regex = /^([01]?[0-9]|2[0-3]):[0-5][0-9]$/;
... ... @@ -692,7 +703,7 @@ angular.module(&#39;ScheduleApp&#39;).controller(
692 703 for (var i = 0; i < ds.length; i++) {
693 704 for (var j = 0; j < ds[i].length; j++) {
694 705 if (ds[i][j].ttdid && ds[i][j].fcsj) {
695   - ds[i][j].sel = ds[i][j].where(self.xldir, startTime_h_m, endtime_h_m);
  706 + ds[i][j].sel = ds[i][j].where(self.xldir, startTime_h_m, endtime_h_m, self.isInOut);
696 707 }
697 708 }
698 709 }
... ...
src/main/resources/static/real_control_v2/css/main.css
... ... @@ -899,4 +899,28 @@ option.oil_station_opt{
899 899  
900 900 #oil_station-modal .uk-modal .uk-form.fv-form{
901 901 margin-bottom: 0 !important;
  902 +}
  903 +
  904 +#gb_wait_modal .uk-modal-spinner{
  905 + top: 25px;
  906 + -webkit-transform: translate(-50%,0);
  907 + transform: translate(-50%,0);
  908 +}
  909 +
  910 +#gb_wait_modal .wait-modal-text{
  911 + text-align: center;
  912 + margin-top: 35px;
  913 + font-size: 15px;
  914 + color: #635e5e;
  915 +}
  916 +
  917 +.park-and-station-wrap{
  918 + margin-top: 9px;
  919 + border: 1px solid #3dce69;
  920 + width: 470px;
  921 + padding: 12px;
  922 + border-radius: 5px;
  923 +}
  924 +.park-and-station-wrap select{
  925 + width: auto !important;
902 926 }
903 927 \ No newline at end of file
... ...
src/main/resources/static/real_control_v2/fragments/north/nav/line_config/buffer_config.html
... ... @@ -34,7 +34,7 @@
34 34 <i class="uk-icon-pencil edit-icon"></i>
35 35 </div>
36 36 </form>
37   - <a style="font-size: 80%;">编辑电子围栏</a>
  37 + <!--<a style="font-size: 80%;">编辑电子围栏</a>-->
38 38 </div>
39 39 </div>
40 40  
... ... @@ -43,14 +43,14 @@
43 43 <a class="uk-link-reset">应急停靠</a>
44 44 </h2>
45 45 <div>
46   - <form class="uk-form">
  46 + <form class="uk-form" name="yjtkForm">
47 47 <table>
48 48 <tr>
49 49 <td colspan="2" style="padding-left: 30px;">
50 50 是否启用
51 51 <select class="z-depth-input" name="enableYjtk">
52   - <option>禁用</option>
53   - <option>启用</option>
  52 + <option value="0" >禁用</option>
  53 + <option value="1" {{if enableYjtk}}selected{{/if}}>启用</option>
54 54 </select>
55 55 </td>
56 56 </tr>
... ... @@ -113,12 +113,61 @@
113 113 }
114 114 });
115 115  
116   - //应急停靠
  116 + //启禁用应急停靠
117 117 $('[name=enableYjtk]', wrap).on('change', function () {
118   -
  118 + if($(this).val() == '1'){
  119 + enableYjtkForm();
  120 + }
  121 + else
  122 + disabledYjtkForm();
  123 + });
  124 + //参数改变
  125 + $('form[name=yjtkForm] input', wrap).on('blur', function () {
  126 + var field = $(this).attr('name');
  127 + var val = $(this).val();
  128 + if (conf[field] != val) {
  129 + var data = $('form[name=yjtkForm]', wrap).serializeJSON();
  130 + data.lineCode = conf.line.lineCode;
  131 + gb_common.$post('/lineConfig/yjtkSet', data, function (rs) {
  132 + conf = rs.conf;
  133 + notify_succ('调整应急停靠参数');
  134 + });
  135 + }
119 136 });
120 137 });
121 138  
  139 + function enableYjtkForm() {
  140 + var f = $('form[name=yjtkForm]', wrap);
  141 + $('input', f).removeAttr('disabled');
  142 + //开始时间
  143 + if($('[name=yjtkStart]',f).val() == '')
  144 + $('[name=yjtkStart]',f).val('00:00');
  145 + if($('[name=yjtkEnd]',f).val() == '')
  146 + $('[name=yjtkEnd]',f).val('23:59');
  147 +
  148 + var data = f.serializeJSON();
  149 + data.lineCode = conf.line.lineCode;
  150 + gb_common.$post('/lineConfig/yjtkSet', data, function (rs) {
  151 + conf = rs.conf;
  152 + notify_succ('启用应急停靠');
  153 + });
  154 + }
  155 +
  156 + function disabledYjtkForm() {
  157 + var f = $('form[name=yjtkForm]', wrap);
  158 + $('input', f).attr('disabled', 'disabled');
  159 + //恢复val
  160 + $('[name=yjtkStart]',f).val(conf.yjtkStart);
  161 + $('[name=yjtkEnd]',f).val(conf.yjtkEnd);
  162 + $('[name=upStopMinute]',f).val(conf.upStopMinute);
  163 + $('[name=downStopMinute]',f).val(conf.downStopMinute);
  164 +
  165 + var data = {enableYjtk: 0, lineCode: conf.line.lineCode};
  166 + gb_common.$post('/lineConfig/yjtkSet', data, function (rs) {
  167 + conf = rs.conf;
  168 + notify_succ('禁用应急停靠');
  169 + });
  170 + }
122 171 })();
123 172 </script>
124 173 </div>
125 174 \ No newline at end of file
... ...
src/main/resources/static/real_control_v2/fragments/north/nav/line_config/line_config.html
... ... @@ -11,10 +11,6 @@
11 11 <div id="buffer_config_panel"></div>
12 12 </div>
13 13 </div>
14   -
15   - <div style="position: absolute;top: 10px;left: 40%;padding: 10px;color: #fe4242;background: #f2f2f2;box-shadow: 3px 1px 4px 0 rgba(0, 0, 0, 0.2), 1px 0px 5px 0 rgba(0, 0, 0, 0.19);font-size: 16px;">
16   - 功能调试中,当前页面暂不可用!!!
17   - </div>
18 14 </div>
19 15  
20 16  
... ... @@ -26,10 +22,9 @@
26 22 <li><a data-href="#schedule_reload_time_panel" >班次更新时间</a></li>
27 23 <li><a data-href="#out_time_type_panel" >出场时间类型</a></li>
28 24 <li><a data-href="#in_park_source_panel" >原线路回场</a></li>
29   - <li><a>到站缓冲区设置</a></li>
30   - <li><a>应急停靠</a></li>
31   - <li><a>社会加油站</a></li>
32   - <li><a class="disabled">漂移判定</a></li>
  25 + <li><a data-href="#buffer_inOut_diff_panel">到站缓冲区设置</a></li>
  26 + <li><a data-href="#emergency_stop_panel">应急停靠</a></li>
  27 + <li><a class="disabled">社会加油站</a></li>
33 28 <li><a class="disabled">到离站预测</a></li>
34 29 <li><a class="disabled">挂牌时刻表</a></li>
35 30 </ul>
... ... @@ -42,27 +37,6 @@
42 37 var modal = '#nav-line_config-modal',
43 38 lineConfig, activeCode;
44 39  
45   - $(modal).on('init', function (e, data) {
46   - e.stopPropagation();
47   - var htmlStr = template('nav-line_config-modal-tree-temp', {array: gb_data_basic.activeLines});
48   - $('.line-config-tree .uk-accordion', modal).html(htmlStr);
49   -
50   - if(data.activeCode){
51   -
52   - }
53   - else{
54   - //没有指定线路,默认展开第一条
55   - var $first = $('.uk-accordion-title:eq(0)', modal);
56   - activeCode = $first.data('id');
57   - load();
58   -
59   - setTimeout(function () {
60   - //选中第一条线路
61   - $first.trigger('click');
62   - }, 400);
63   - }
64   - });
65   -
66 40 /**
67 41 * 手风琴拨动
68 42 */
... ... @@ -73,6 +47,31 @@
73 47 }
74 48 });
75 49  
  50 + $(modal).on('init', function (e, data) {
  51 + e.stopPropagation();
  52 + var htmlStr = template('nav-line_config-modal-tree-temp', {array: gb_data_basic.activeLines});
  53 + $('.line-config-tree .uk-accordion', modal).html(htmlStr);
  54 +
  55 + if(data.activeCode)
  56 + activeCode = data.activeCode;
  57 + else{
  58 + //展开tab激活的线路
  59 + var $activeTab = $('#main-tab-content>li.line_schedule.uk-active');
  60 + if($activeTab.length > 0)
  61 + activeCode = $activeTab.data('id');
  62 + else{
  63 + //展开第一个
  64 + var $first = $('.uk-accordion-title:eq(0)', modal);
  65 + activeCode = $first.data('id');
  66 + }
  67 + }
  68 +
  69 + setTimeout(function () {
  70 + $('.uk-accordion-title[data-id='+activeCode+']', modal).trigger('click');
  71 + }, 500);
  72 + });
  73 +
  74 +
76 75 var load = function () {
77 76 //获取线路配置信息
78 77 $.get('/lineConfig/getByLineCode', {lineCode: activeCode}, function (conf) {
... ...
src/main/resources/static/real_control_v2/fragments/north/nav/line_config/line_config_entity.html
... ... @@ -23,9 +23,9 @@
23 23 <small><i class="uk-icon-question-circle"></i> 所有发车时间小于该时间的班次都默认跨过24点,手动调整的实发实达均应用此规则。</small>
24 24 </li>
25 25 </ul>
26   - <a class="uk-button uk-button-mini">删除实际排班</a>
27   - <a class="uk-button uk-button-mini">重新加载实际排班</a>
28   - <a class="uk-button uk-button-mini">加载历史GPS恢复到离站</a>
  26 + <button class="uk-button uk-button-mini" id="clearRealScheduleBtn">删除实际排班</button>
  27 + <button class="uk-button uk-button-mini" id="reLoadRealScheduleBtn">重新加载实际排班</button>
  28 + <button class="uk-button uk-button-mini" disabled>加载历史GPS恢复到离站</button>
29 29 </div>
30 30 </div>
31 31 <div id="out_time_type_panel">
... ... @@ -40,6 +40,8 @@
40 40 <option {{if outConfig==2}}selected{{/if}} value=2>出站既出场</option>
41 41 </select>
42 42 时间作为进出场班次的实际时间
  43 + <div class="park-and-station-wrap">
  44 + </div>
43 45 <ul class="uk-list">
44 46 <li>
45 47 <small>1、【GPS出场】 使用GPS信号捕获出场时间</small>
... ... @@ -48,7 +50,7 @@
48 50 <small>2、【请求出场】 驾驶员请求出场,调度员同意后,取请求时间作为出场时间。如无请求出场,则捕获GPS时间。</small>
49 51 </li>
50 52 <li>
51   - <small>3、【出站既出场】 忽略出场班次,以头班车的发车时间作为出场时间,场既是站或停车场与起点站距离很近时推荐此项。</small>
  53 + <small>3、【出站既出场】 忽略出场班次,以头班车的发车时间作为出场时间。</small>
52 54 </li>
53 55 </ul>
54 56 </div>
... ... @@ -76,14 +78,79 @@
76 78 </div>
77 79 </div>
78 80 </script>
  81 +
  82 + <script id="park-and-station-temp" type="text/html">
  83 + 场
  84 + <select class="z-depth-input">
  85 + {{each parks as p i}}
  86 + <option value="{{p.code}}" {{if p.code==conf.twinsPark}}selected{{/if}}>{{p.name}}</option>
  87 + {{/each}}
  88 + </select>
  89 + 既是站
  90 + <select class="z-depth-input">
  91 + {{each routes as r i}}
  92 + <option value="{{r.stationCode}}" {{if r.stationCode==conf.twinsStation}}selected{{/if}}>{{r.stationName}}
  93 + </option>
  94 + {{/each}}
  95 + </select>
  96 + </script>
79 97 <script>
80 98 (function () {
81 99  
82   - var wrap = '#line_config_entity_wrap', conf;
  100 + var wrap = '#line_config_entity_wrap', conf, parks, upStationRoutes;
  101 +
  102 + /**
  103 + * 删除实际排班
  104 + */
  105 + var clearRealSchedule = function (e) {
  106 + e.stopPropagation();
  107 + var lineCode = conf.line.lineCode;
  108 + var htmlStr = '<h4 style="color: red;">你确定要删除【' + conf.line.name + '】今日的实际排班?</h4><h5 style="margin-top: 15px;">今日的实际排班会被删除</h5><h5 style="margin-top: 15px;">人车、路牌、待发等相关班次调整信息会被删除。</h5><h5 style="margin-top: 15px;">调度指令和期间与设备的通讯记录被保留</h5><h5 style="margin-top: 15px;">后台日志中的人工操作痕迹被保留</h5>';
  109 + alt_confirm(htmlStr, function () {
  110 + show_wait_modal('正在清除数据...');
  111 + gb_common.$post('/realSchedule/deleteRealSchedule', {lineCode: lineCode}, function () {
  112 + //刷新班次表格
  113 + gb_schedule_table.reLoadAndRefresh(lineCode);
  114 + hide_wait_modal();
  115 + notify_succ('删除班次成功!!!');
  116 + });
  117 + }, '确认删除' + conf.line.name + '的实际排班', true);
  118 +
  119 + return false;
  120 + };
  121 +
  122 + /**
  123 + * 重新载入实际排班
  124 + */
  125 + var reLoadRealSchedule = function (e) {
  126 + e.stopPropagation();
  127 + var lineCode = conf.line.lineCode;
  128 + show_wait_modal('正在重载数据...');
  129 + gb_common.$post('/realSchedule/reLoadRealSchedule', {lineCode: lineCode}, function () {
  130 + //刷新班次表格
  131 + gb_schedule_table.reLoadAndRefresh(lineCode);
  132 + hide_wait_modal();
  133 + notify_succ('重新载入班次成功');
  134 + });
  135 + return false;
  136 + };
83 137  
84 138 $(wrap).on('init', function (e, data) {
85 139 e.stopPropagation();
86 140 conf = data.lineConfig;
  141 + //停车场
  142 + $.get('/basic/parks', function (rs) {
  143 + parks = [];
  144 + for (var code in rs) {
  145 + parks.push({code: code, name: rs[code]});
  146 + }
  147 + renderPSDom();
  148 + });
  149 + //上行站点路由
  150 + upStationRoutes = gb_common.groupBy(gb_data_basic.stationRoutes(conf.line.lineCode).sort(function (a, b) {
  151 + return a.stationRouteCode - b.stationRouteCode;
  152 + }), 'directions')[0];
  153 +
87 154 var htmlStr = template('line_config_entity_form-temp', conf);
88 155 $('form', wrap).html(htmlStr);
89 156  
... ... @@ -93,56 +160,82 @@
93 160 //出场时间类型
94 161 $('select[name=outParkTypeSelect]', wrap).on('change', updateOutParkType);
95 162 //原线路回场
96   - $('select[name=inParkForSourceSelect]', wrap).on('change', enableInParkForSource)
  163 + $('select[name=inParkForSourceSelect]', wrap).on('change', enableInParkForSource);
  164 + //删除班次
  165 + $('#clearRealScheduleBtn', wrap).on('click', clearRealSchedule);
  166 + //重新载入实际排班
  167 + $('#reLoadRealScheduleBtn', wrap).on('click', reLoadRealSchedule);
97 168 });
98 169  
99 170 //更新排班时间
100 171 var startOptFlag;
  172 +
101 173 function updateStartTime() {
102   - if (startOptFlag || $(this).val()==conf.startOpt)
  174 + if (startOptFlag || $(this).val() == conf.startOpt)
103 175 return;
104 176 startOptFlag = true;
105 177 var that = this;
106 178 setTimeout(function () {
107 179 var timeStr = $(that).val();
108   - gb_common.$post('/lineConfig/editTime', {lineCode: conf.line.lineCode, time: timeStr}, function (rs) {
  180 + gb_common.$post('/lineConfig/editTime', {
  181 + lineCode: conf.line.lineCode,
  182 + time: timeStr
  183 + }, function (rs) {
109 184 notify_succ('班次更新时间调整为 ' + timeStr);
110 185 conf.startOpt = rs.time;
111 186 });
112 187 startOptFlag = false;
113   - }, 500);
  188 + }, 300);
114 189 }
115 190  
116   - var outParkFlag;
117 191 function updateOutParkType() {
118   - if (outParkFlag)
119   - return;
120   - outParkFlag = true;
121   - var that = this;
122   - setTimeout(function () {
123   - var type = $(that).val();
124   - gb_common.$post('/lineConfig/editOutTimeType', {lineCode: conf.line.lineCode, type: type}, function () {
125   - notify_succ('调整出场时间类型成功!');
126   - conf.outConfig = type;
127   - });
128   - outParkFlag = false;
129   - }, 500);
  192 + var type = $(this).val();
  193 + var lineCode = conf.line.lineCode;
  194 +
  195 + var data = {lineCode: lineCode, type: type, parkCode: '', stationCode: ''};
  196 + //出站既是出场
  197 + if (type == 2) {
  198 + //默认关联 线路标准停车场
  199 + data.parkCode = gb_data_basic.getLineInformation(lineCode).carPark;
  200 + //和上行起点站
  201 + data.stationCode = upStationRoutes[0].stationCode;
  202 + }
  203 + gb_common.$post('/lineConfig/editOutTimeType', data, function (rs) {
  204 + notify_succ('调整出场时间类型成功!');
  205 + conf = rs.conf;
  206 +
  207 + //渲染场站关联dom
  208 + renderPSDom();
  209 + });
130 210 }
131 211  
132   - var inParkSourceFlag;
133 212 function enableInParkForSource() {
134   - if(inParkSourceFlag)
135   - return;
136   - inParkSourceFlag = true;
137   - var that = this;
138   - setTimeout(function () {
139   - var enable = $(that).val();
140   - gb_common.$post('/lineConfig/enableInParkForSource', {lineCode: conf.line.lineCode, enable: enable}, function () {
141   - notify_succ((enable==1?'启用':'禁用') + '原线路回场');
142   - conf.inParkForSource = enable;
  213 + var enable = $(this).val();
  214 + gb_common.$post('/lineConfig/enableInParkForSource', {
  215 + lineCode: conf.line.lineCode,
  216 + enable: enable
  217 + }, function () {
  218 + notify_succ((enable == 1 ? '启用' : '禁用') + '原线路回场');
  219 + conf.inParkForSource = enable;
  220 + });
  221 + }
  222 +
  223 + /**
  224 + * 渲染场既是站dom
  225 + */
  226 + function renderPSDom() {
  227 + var htmlStr = '',
  228 + $panel = $('.park-and-station-wrap', wrap);
  229 + if (conf['outConfig'] == 2) {
  230 + htmlStr = template('park-and-station-temp', {
  231 + parks: parks,
  232 + conf: conf,
  233 + routes: [upStationRoutes[0], upStationRoutes[upStationRoutes.length - 1]]
143 234 });
144   - inParkSourceFlag = false;
145   - }, 500);
  235 + $panel.html(htmlStr).show();
  236 + }
  237 + else
  238 + $panel.html('').hide();
146 239 }
147 240 })();
148 241 </script>
... ...
src/main/resources/static/real_control_v2/js/common.js
... ... @@ -91,8 +91,11 @@ var gb_common = (function () {
91 91 return;
92 92 }
93 93  
94   - if (status == 'ERROR')
  94 + if (status == 'ERROR'){
95 95 UIkit.modal.alert(errorHead + (json.msg ? json.msg : '未知异常'), {labels: {Ok: '确定'}});
  96 + //关闭wait窗口
  97 + hide_wait_modal();
  98 + }
96 99 else
97 100 handle && handle(json);
98 101 }
... ... @@ -102,6 +105,8 @@ var gb_common = (function () {
102 105 successHandle(JSON.parse(xhr.responseText), succ);
103 106 } else if (ts == 'error') {
104 107 UIkit.modal.alert(errorHead + xhr.responseText, {labels: {Ok: '确定'}});
  108 + //关闭wait窗口
  109 + hide_wait_modal();
105 110 }
106 111 }
107 112  
... ...
src/main/resources/static/real_control_v2/js/line_schedule/sch_table.js
... ... @@ -152,6 +152,8 @@ var gb_schedule_table = (function () {
152 152 }
153 153  
154 154 //重新渲染表格
  155 + reRenderTable(sch.xlBm);
  156 + /*//重新渲染表格
155 157 var data = gb_common.get_vals(line2Schedule[sch.xlBm]).sort(schedule_sort),
156 158 dirData = gb_common.groupBy(data, 'xlDir'),
157 159 tabCont = $('li.line_schedule[data-id=' + sch.xlBm + ']');
... ... @@ -171,11 +173,72 @@ var gb_schedule_table = (function () {
171 173 //计算应发未发
172 174 calc_yfwf_num(sch.xlBm);
173 175 //重新固定表头
174   - gb_ct_table.fixedHead($('.line_schedule .ct_table_wrap'));
  176 + gb_ct_table.fixedHead($('.line_schedule .ct_table_wrap'));*/
175 177 //定位到新添加的班次
176 178 scroToDl(sch);
177 179 };
178 180  
  181 + /**
  182 + * 重新渲染表格
  183 + */
  184 + var reRenderTable = function (lineCode) {
  185 + var data = gb_common.get_vals(line2Schedule[lineCode]).sort(schedule_sort),
  186 + dirData = gb_common.groupBy(data, 'xlDir'),
  187 + tabCont = $('li.line_schedule[data-id=' + lineCode + ']'),
  188 + htmlStr;
  189 +
  190 + if($.isEmptyObject(dirData)){
  191 + $('.schedule-wrap .card-panel', tabCont).html('');
  192 + }
  193 + else {
  194 + for (var upDown in dirData) {
  195 + htmlStr = temps['line-schedule-table-temp']({
  196 + dir: upDown,
  197 + line: gb_data_basic.codeToLine[lineCode],
  198 + list: dirData[upDown]
  199 + });
  200 + $('.schedule-wrap .card-panel:eq(' + upDown + ')', tabCont).html(htmlStr);
  201 + }
  202 + //图例相关
  203 + gb_sch_legend.init(tabCont);
  204 + //标记末班
  205 + markerLastByLine(lineCode);
  206 + //计算应发未发
  207 + calc_yfwf_num(lineCode);
  208 + //重新固定表头
  209 + gb_ct_table.fixedHead($('.line_schedule .ct_table_wrap'));
  210 + }
  211 + };
  212 +
  213 +
  214 + /**
  215 + * 重新从服务器加载数据,并刷新表格
  216 + * @param lineCode
  217 + */
  218 + var reLoadAndRefresh = function (lineCode) {
  219 + $.get('/realSchedule/lines', {
  220 + lines: lineCode + ','
  221 + }, function (rs) {
  222 + if(!rs || $.isEmptyObject(rs)){
  223 + line2Schedule[lineCode] = {};
  224 + }
  225 + else{
  226 + //排序
  227 + rs[lineCode].sort(schedule_sort);
  228 + line2Schedule[lineCode] = {};
  229 + //calc shift
  230 + $.each(rs[lineCode], function () {
  231 + calc_sch_real_shift(this);
  232 + line2Schedule[lineCode][this.id] = this;
  233 + });
  234 + }
  235 + //计算应发未发
  236 + calc_yfwf_num(lineCode);
  237 + //重新渲染
  238 + reRenderTable(lineCode);
  239 + });
  240 + };
  241 +
179 242 //删除一个班次
180 243 var deheteSchedule = function (sch) {
181 244 sch = line2Schedule[sch.xlBm][sch.id];
... ... @@ -494,6 +557,7 @@ var gb_schedule_table = (function () {
494 557 reset_drag_active_all: reset_drag_active_all,
495 558 getDl: getDl,
496 559 getNextSch: getNextSch,
497   - addRemarks: addRemarks
  560 + addRemarks: addRemarks,
  561 + reLoadAndRefresh: reLoadAndRefresh
498 562 };
499 563 })();
... ...
src/main/resources/static/real_control_v2/js/main.js
... ... @@ -62,7 +62,6 @@ var gb_main_ep = new EventProxy(),
62 62 });
63 63  
64 64  
65   -
66 65 $(document).on('click', '.ct-bottom-drawer-close', function () {
67 66 $(this).parents('.ct-bottom-drawer').removeClass('open');
68 67 });
... ... @@ -106,7 +105,7 @@ var notify_err = function (t) {
106 105 });
107 106 };
108 107  
109   -var alt_confirm = function (content, succ, okBtn) {
  108 +var alt_confirm = function (content, succ, okBtn, noCenter) {
110 109 var modalEl = UIkit.modal.confirm(content, function () {
111 110 succ && succ();
112 111 modalEl.hide();
... ... @@ -115,10 +114,31 @@ var alt_confirm = function (content, succ, okBtn) {
115 114 Ok: okBtn,
116 115 Cancel: '取消'
117 116 }
118   - , center: true
  117 + , center: !noCenter
119 118 });
120 119 };
121 120  
  121 +var show_wait_modal = function (text) {
  122 + var modalHtml =
  123 + '<div class="uk-modal" id="gb_wait_modal">' +
  124 + ' <div class="uk-modal-dialog">' +
  125 + ' <div class="uk-modal-spinner"></div>' +
  126 + ' <div class="wait-modal-text">' + text + '</div>' +
  127 + ' </div>' +
  128 + '</div>';
  129 +
  130 + $(document.body).append(modalHtml);
  131 + return UIkit.modal('#gb_wait_modal', {
  132 + bgclose: false,
  133 + modal: false
  134 + }).show();
  135 +};
  136 +
  137 +var hide_wait_modal = function () {
  138 + UIkit.modal('#gb_wait_modal').hide();
  139 +};
  140 +
  141 +
122 142 var isArray = function (obj) {
123 143 return Object.prototype.toString.call(obj) === '[object Array]';
124 144 };
... ...
src/main/resources/static/real_control_v2/js/modal_extend.js
... ... @@ -7,6 +7,10 @@ $(document).on(&#39;hide.uk.modal&#39;, &#39;.uk-modal&#39;, function () {
7 7 $(document).on('show.uk.modal', '.uk-modal', function () {
8 8 if($('.uk-modal-dialog', this).hasClass('uk-modal-dialog-blank'))
9 9 return;
  10 +
  11 + //临时放过g'ji轨迹回放
  12 + if($(this).attr('id')=='map-playback-modal')
  13 + return;
10 14 //计算居中位置
11 15 var win = $('body');
12 16 var Y = (win.width() - $('.uk-modal-dialog', this).width()) / 2 - 10;
... ...
src/main/resources/static/real_control_v2/mapmonitor/css/real.css
... ... @@ -643,4 +643,10 @@ input[type=checkbox].disabled{
643 643 .uk-button.play-btn[data-type=pause]{
644 644 color: #ff3c3c;
645 645 border: 1px solid #ff3c3c;
  646 +}
  647 +
  648 +#map-playback2-modal .z-depth-viewport{
  649 + padding-top: 15px;
  650 + border-right: 1px solid #d8d7d7;
  651 + box-shadow: 3px 1px 8px 0 rgba(0, 0, 0, 0.12), 1px 0px 8px 0 rgba(0, 0, 0, 0.12);
646 652 }
647 653 \ No newline at end of file
... ...
src/main/resources/static/real_control_v2/mapmonitor/fragments/playback/main.html
1 1 <div class="uk-modal ct-form-modal" id="map-playback-modal">
2   - <div class="uk-modal-dialog" >
  2 + <div class="uk-modal-dialog" style="position: relative !important;margin: 50px auto !important;left: 0px !important;top: 0px !important;">
3 3 <a href="" class="uk-modal-close uk-close"></a>
4 4 <h1>轨迹回放</h1>
5 5 <div class="pb_modal_body"></div>
... ... @@ -22,7 +22,7 @@
22 22 $(this).css('min-width', '1280px');
23 23 });
24 24 $('.pb_modal_body', modal).load('/real_control_v2/mapmonitor/fragments/playback/run.html', function () {
25   - $('#playback_run_body', modal).trigger('init', data);
  25 + $('#playback_run_body', modal).trigger('init', data);
26 26 });
27 27 });
28 28 })();
... ...
src/main/resources/static/real_control_v2/mapmonitor/fragments/playback_v2/main.html 0 → 100644
  1 +<div class="uk-modal" id="map-playback2-modal">
  2 + <div class="uk-modal-dialog uk-modal-dialog-blank">
  3 + <button class="uk-modal-close uk-close" type="button"></button>
  4 + <div class="uk-grid uk-flex-middle" data-uk-grid-margin>
  5 + <div class="uk-width-medium-1-10 uk-height-viewport z-depth-viewport" >
  6 + </div>
  7 + <div class="uk-width-medium-2-10 uk-height-viewport z-depth-viewport">
  8 + </div>
  9 + <div class="uk-width-medium-7-10 uk-height-viewport">
  10 + </div>
  11 + </div>
  12 + </div>
  13 + <script>
  14 + (function () {
  15 + var modal = '#map-playback2-modal';
  16 + })();
  17 + </script>
  18 +</div>
... ...