Commit 88ead47f3670b1d582078e4e36e2c7afcb818e8f

Authored by 潘钊
2 parents d4ed3f18 b6c9f81e

Merge branch 'minhang' of http://222.66.0.204:8090/panzhaov5/bsth_control into minhang

src/main/java/com/bsth/controller/schedule/core/SchedulePlanController.java
1 package com.bsth.controller.schedule.core; 1 package com.bsth.controller.schedule.core;
2 2
3 -import com.bsth.common.Constants;  
4 import com.bsth.common.ResponseCode; 3 import com.bsth.common.ResponseCode;
5 import com.bsth.controller.schedule.BController; 4 import com.bsth.controller.schedule.BController;
6 import com.bsth.entity.schedule.SchedulePlan; 5 import com.bsth.entity.schedule.SchedulePlan;
7 -import com.bsth.entity.sys.CompanyAuthority;  
8 -import com.bsth.entity.sys.SysUser;  
9 import com.bsth.service.schedule.SchedulePlanService; 6 import com.bsth.service.schedule.SchedulePlanService;
10 -import com.bsth.service.sys.SysUserService;  
11 import org.springframework.beans.factory.annotation.Autowired; 7 import org.springframework.beans.factory.annotation.Autowired;
12 -import org.springframework.web.bind.annotation.*; 8 +import org.springframework.web.bind.annotation.PathVariable;
  9 +import org.springframework.web.bind.annotation.RequestMapping;
  10 +import org.springframework.web.bind.annotation.RequestMethod;
  11 +import org.springframework.web.bind.annotation.RestController;
13 12
14 -import javax.servlet.http.HttpSession;  
15 import java.util.Date; 13 import java.util.Date;
16 import java.util.HashMap; 14 import java.util.HashMap;
17 -import java.util.List;  
18 import java.util.Map; 15 import java.util.Map;
19 16
20 /** 17 /**
@@ -25,33 +22,6 @@ import java.util.Map; @@ -25,33 +22,6 @@ import java.util.Map;
25 public class SchedulePlanController extends BController<SchedulePlan, Long> { 22 public class SchedulePlanController extends BController<SchedulePlan, Long> {
26 @Autowired 23 @Autowired
27 private SchedulePlanService schedulePlanService; 24 private SchedulePlanService schedulePlanService;
28 - @Autowired  
29 - private SysUserService sysUserService;  
30 -  
31 - @Override  
32 - public Map<String, Object> save(@RequestBody SchedulePlan schedulePlan, HttpSession httpSession) {  
33 - // 用户信息  
34 - String userName = String.valueOf(httpSession.getAttribute(Constants.SESSION_USERNAME));  
35 - SysUser sysUser = sysUserService.findByUserName(userName);  
36 -  
37 - Date cdate = new Date();  
38 - schedulePlan.setCreateBy(sysUser);  
39 - schedulePlan.setCreateDate(cdate);  
40 - schedulePlan.setUpdateBy(sysUser);  
41 - schedulePlan.setUpdateDate(cdate);  
42 -  
43 - // 如果多个公司,选第一个,以后改成页面控制  
44 - List<CompanyAuthority> cmyAuths = (List<CompanyAuthority>) httpSession.getAttribute(Constants.COMPANY_AUTHORITYS);  
45 - if (cmyAuths == null || cmyAuths.size() == 0)  
46 - schedulePlanService.save(schedulePlan, new CompanyAuthority());  
47 - else  
48 - schedulePlanService.save(schedulePlan, cmyAuths.get(0));  
49 -  
50 - Map<String, Object> rtn = new HashMap<>();  
51 - rtn.put("status", ResponseCode.SUCCESS);  
52 - rtn.put("data", new Object());  
53 - return rtn;  
54 - }  
55 25
56 /** 26 /**
57 * 获取明天的一歌排班计划。 27 * 获取明天的一歌排班计划。
src/main/java/com/bsth/repository/schedule/SchedulePlanInfoRepository.java
@@ -27,27 +27,29 @@ public interface SchedulePlanInfoRepository extends BaseRepository&lt;SchedulePlanI @@ -27,27 +27,29 @@ public interface SchedulePlanInfoRepository extends BaseRepository&lt;SchedulePlanI
27 Long deleteByXlAndScheduleDateGreaterThanEqualAndScheduleDateLessThanEqual(Integer xlid, Date startDate, Date endDate); 27 Long deleteByXlAndScheduleDateGreaterThanEqualAndScheduleDateLessThanEqual(Integer xlid, Date startDate, Date endDate);
28 28
29 @Query(value = " select " + 29 @Query(value = " select " +
30 - "xl as xlId, " +  
31 - "xl_name as xlName, " +  
32 - "schedule_date as scheduleDate, " +  
33 - "lp_name as lpName, " +  
34 - "cl as clId, " +  
35 - "cl_zbh as clZbh, " +  
36 - "group_concat(fcsj) ccsj, " +  
37 - "group_concat(bc_type) bctype, " +  
38 - "group_concat(distinct j) jsyId, " +  
39 - "group_concat(distinct j_gh) jsyGh, " +  
40 - "group_concat(distinct j_name) jsyName, " +  
41 - "group_concat(distinct s) spyId, " +  
42 - "group_concat(distinct s_gh) spyGh, " +  
43 - "group_concat(distinct s_name) spyName, " +  
44 - "max(create_date) as createDate, " +  
45 - "group_concat(fcno) fcno " +  
46 - "from bsth_c_s_sp_info " +  
47 - "where xl = ?1 and " +  
48 - "schedule_date = ?2 " +  
49 - "group by xl_name, schedule_date, lp, lp_name, cl, cl_zbh " +  
50 - "order by xl_name, schedule_date, lp ", nativeQuery = true) 30 + "info.xl as xlId, " +
  31 + "info.xl_name as xlName, " +
  32 + "info.schedule_date as scheduleDate, " +
  33 + "info.lp_name as lpName, " +
  34 + "info.cl as clId, " +
  35 + "info.cl_zbh as clZbh, " +
  36 + "group_concat(info.fcsj) ccsj, " +
  37 + "group_concat(info.bc_type) bctype, " +
  38 + "group_concat(distinct info.j) jsyId, " +
  39 + "group_concat(distinct info.j_gh) jsyGh, " +
  40 + "group_concat(distinct info.j_name) jsyName, " +
  41 + "group_concat(distinct info.s) spyId, " +
  42 + "group_concat(distinct info.s_gh) spyGh, " +
  43 + "group_concat(distinct info.s_name) spyName, " +
  44 + "group_concat(info.fcno) fcno, " +
  45 + "max(info.update_date) as updateDate, " +
  46 + "max(user.name) as updateUserName, " +
  47 + "max(info.tt_info_name) as ttInfoName " +
  48 + "from bsth_c_s_sp_info info left join bsth_c_sys_user user on info.update_by = user.id " +
  49 + "where info.xl = ?1 and " +
  50 + "info.schedule_date = ?2 " +
  51 + "group by info.xl_name, info.schedule_date, info.lp, info.lp_name, info.cl, info.cl_zbh " +
  52 + "order by info.xl_name, info.schedule_date, info.lp ", nativeQuery = true)
51 List<Object[]> findGroupInfo(Integer xlid, Date scheduleDate); 53 List<Object[]> findGroupInfo(Integer xlid, Date scheduleDate);
52 54
53 @Modifying 55 @Modifying
src/main/java/com/bsth/service/schedule/SchedulePlanInfoService.java
@@ -115,8 +115,12 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -115,8 +115,12 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
115 /** 售票员1姓名 */ 115 /** 售票员1姓名 */
116 private String spy2Name; 116 private String spy2Name;
117 117
118 - /** 创建时间 */  
119 - private Date createDate; 118 + /** 修改时间 */
  119 + private Date updateDate;
  120 + /** 修改人名 */
  121 + private String updateByName;
  122 + /** 时刻表名字 */
  123 + private String ttInfoName;
120 124
121 /** 出场班次1发车的顺序号 */ 125 /** 出场班次1发车的顺序号 */
122 private Integer fcno1; 126 private Integer fcno1;
@@ -141,7 +145,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -141,7 +145,7 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
141 // 出场时间,出场班次,如果有多个,需要分开 145 // 出场时间,出场班次,如果有多个,需要分开
142 Object ccsj = datas[6]; 146 Object ccsj = datas[6];
143 Object bctype = datas[7]; 147 Object bctype = datas[7];
144 - Object fcno = datas[15]; 148 + Object fcno = datas[14];
145 149
146 if (ccsj != null) { 150 if (ccsj != null) {
147 String[] ccsj_array = ((String) ccsj).split(","); 151 String[] ccsj_array = ((String) ccsj).split(",");
@@ -238,12 +242,32 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -238,12 +242,32 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
238 this.spy1Name = String.valueOf(spyName_array[0]); 242 this.spy1Name = String.valueOf(spyName_array[0]);
239 } 243 }
240 } 244 }
241 - // 创建时间  
242 - this.createDate = new DateTime(datas[14]).toDate(); 245 + // 修改时间
  246 + this.updateDate = new DateTime(datas[15]).toDate();
  247 + // 修改人
  248 + this.updateByName = String.valueOf(datas[16]);
  249 + // 时刻表名字
  250 + this.ttInfoName = String.valueOf(datas[17]);
243 251
244 // TODO:可能还有其他字段 252 // TODO:可能还有其他字段
245 } 253 }
246 254
  255 + public Date getUpdateDate() {
  256 + return updateDate;
  257 + }
  258 +
  259 + public void setUpdateDate(Date updateDate) {
  260 + this.updateDate = updateDate;
  261 + }
  262 +
  263 + public String getUpdateByName() {
  264 + return updateByName;
  265 + }
  266 +
  267 + public void setUpdateByName(String updateByName) {
  268 + this.updateByName = updateByName;
  269 + }
  270 +
247 public String getXlName() { 271 public String getXlName() {
248 return xlName; 272 return xlName;
249 } 273 }
@@ -396,14 +420,6 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -396,14 +420,6 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
396 this.spy2Name = spy2Name; 420 this.spy2Name = spy2Name;
397 } 421 }
398 422
399 - public Date getCreateDate() {  
400 - return createDate;  
401 - }  
402 -  
403 - public void setCreateDate(Date createDate) {  
404 - this.createDate = createDate;  
405 - }  
406 -  
407 public Integer getXlId() { 423 public Integer getXlId() {
408 return xlId; 424 return xlId;
409 } 425 }
@@ -427,5 +443,13 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L @@ -427,5 +443,13 @@ public interface SchedulePlanInfoService extends BaseService&lt;SchedulePlanInfo, L
427 public void setFcno2(Integer fcno2) { 443 public void setFcno2(Integer fcno2) {
428 this.fcno2 = fcno2; 444 this.fcno2 = fcno2;
429 } 445 }
  446 +
  447 + public String getTtInfoName() {
  448 + return ttInfoName;
  449 + }
  450 +
  451 + public void setTtInfoName(String ttInfoName) {
  452 + this.ttInfoName = ttInfoName;
  453 + }
430 } 454 }
431 } 455 }
src/main/java/com/bsth/service/schedule/SchedulePlanService.java
1 package com.bsth.service.schedule; 1 package com.bsth.service.schedule;
2 2
3 import com.bsth.entity.schedule.SchedulePlan; 3 import com.bsth.entity.schedule.SchedulePlan;
4 -import com.bsth.entity.sys.CompanyAuthority;  
5 import com.bsth.service.schedule.rules.ttinfo2.Result; 4 import com.bsth.service.schedule.rules.ttinfo2.Result;
6 5
7 import java.util.Date; 6 import java.util.Date;
@@ -11,7 +10,7 @@ import java.util.Date; @@ -11,7 +10,7 @@ import java.util.Date;
11 */ 10 */
12 public interface SchedulePlanService extends BService<SchedulePlan, Long> { 11 public interface SchedulePlanService extends BService<SchedulePlan, Long> {
13 12
14 - SchedulePlan save(SchedulePlan schedulePlan, CompanyAuthority companyAuthority); 13 + SchedulePlan save(SchedulePlan schedulePlan);
15 14
16 /** 15 /**
17 * 获取有明日排班的计划。 16 * 获取有明日排班的计划。
src/main/java/com/bsth/service/schedule/impl/SchedulePlanServiceImpl.java
1 package com.bsth.service.schedule.impl; 1 package com.bsth.service.schedule.impl;
2 2
  3 +import com.bsth.entity.Business;
3 import com.bsth.entity.Line; 4 import com.bsth.entity.Line;
4 import com.bsth.entity.schedule.*; 5 import com.bsth.entity.schedule.*;
5 import com.bsth.entity.schedule.rule.ScheduleRule1Flat; 6 import com.bsth.entity.schedule.rule.ScheduleRule1Flat;
6 -import com.bsth.entity.sys.CompanyAuthority;  
7 import com.bsth.repository.schedule.SchedulePlanInfoRepository; 7 import com.bsth.repository.schedule.SchedulePlanInfoRepository;
8 import com.bsth.repository.schedule.SchedulePlanRepository; 8 import com.bsth.repository.schedule.SchedulePlanRepository;
  9 +import com.bsth.service.BusinessService;
9 import com.bsth.service.LineService; 10 import com.bsth.service.LineService;
10 import com.bsth.service.schedule.SchedulePlanService; 11 import com.bsth.service.schedule.SchedulePlanService;
11 import com.bsth.service.schedule.TTInfoDetailService; 12 import com.bsth.service.schedule.TTInfoDetailService;
@@ -51,12 +52,14 @@ public class SchedulePlanServiceImpl extends BServiceImpl&lt;SchedulePlan, Long&gt; im @@ -51,12 +52,14 @@ public class SchedulePlanServiceImpl extends BServiceImpl&lt;SchedulePlan, Long&gt; im
51 private TTInfoService ttInfoService; 52 private TTInfoService ttInfoService;
52 @Autowired 53 @Autowired
53 private TTInfoDetailService ttInfoDetailService; 54 private TTInfoDetailService ttInfoDetailService;
  55 + @Autowired
  56 + private BusinessService businessService;
54 57
55 /** 日志记录器 */ 58 /** 日志记录器 */
56 private Logger logger = LoggerFactory.getLogger(SchedulePlanServiceImpl.class); 59 private Logger logger = LoggerFactory.getLogger(SchedulePlanServiceImpl.class);
57 60
58 @Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.READ_COMMITTED) 61 @Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.READ_COMMITTED)
59 - public SchedulePlan save(SchedulePlan schedulePlan, CompanyAuthority companyAuthority) { 62 + public SchedulePlan save(SchedulePlan schedulePlan) {
60 // 1-1、查找线路具体信息 63 // 1-1、查找线路具体信息
61 Line xl = strategy.getLine(schedulePlan.getXl().getId()); 64 Line xl = strategy.getLine(schedulePlan.getXl().getId());
62 // 1-2、查出指定线路的所有规则 65 // 1-2、查出指定线路的所有规则
@@ -149,11 +152,46 @@ public class SchedulePlanServiceImpl extends BServiceImpl&lt;SchedulePlan, Long&gt; im @@ -149,11 +152,46 @@ public class SchedulePlanServiceImpl extends BServiceImpl&lt;SchedulePlan, Long&gt; im
149 employeeConfigInfoList, 152 employeeConfigInfoList,
150 schedulePlan); 153 schedulePlan);
151 154
152 - // 公司,分公司编码  
153 - schedulePlanInfo.setGsBm(companyAuthority.getCompanyCode());  
154 - schedulePlanInfo.setGsName(companyAuthority.getCompanyName());  
155 - schedulePlanInfo.setFgsBm(companyAuthority.getSubCompanyCode());  
156 - schedulePlanInfo.setFgsName(companyAuthority.getSubCompanyName()); 155 + // 获取公司,分公司信息
  156 + String gsbm = xl.getCompany();
  157 + String fgsbm = xl.getBrancheCompany();
  158 + Business gs = null;
  159 + Business fgs = null;
  160 +
  161 + Map<String, Object> param = new HashMap<>();
  162 +
  163 + if (StringUtils.isNotEmpty(gsbm)) {
  164 + param.clear();
  165 + param.put("businessCode_eq", gsbm);
  166 + Iterator<Business> businessIterator = businessService.list(param).iterator();
  167 + if (businessIterator.hasNext()) {
  168 + gs = businessIterator.next();
  169 + }
  170 + }
  171 + if (StringUtils.isNotEmpty(gsbm) && StringUtils.isNotEmpty(fgsbm)) {
  172 + param.clear();;
  173 + param.put("upCode_eq", gsbm);
  174 + param.put("businessCode_eq", fgsbm);
  175 + Iterator<Business> businessIterator = businessService.list(param).iterator();
  176 + if (businessIterator.hasNext()) {
  177 + fgs = businessIterator.next();
  178 + }
  179 + }
  180 +
  181 + if (gs != null) {
  182 + schedulePlanInfo.setGsBm(gs.getBusinessCode());
  183 + schedulePlanInfo.setGsName(gs.getBusinessName());
  184 + }
  185 + if (fgs != null) {
  186 + schedulePlanInfo.setFgsBm(fgs.getBusinessCode());
  187 + schedulePlanInfo.setFgsName(fgs.getBusinessName());
  188 + }
  189 +
  190 + // 操作人,操作时间
  191 + schedulePlanInfo.setCreateBy(schedulePlan.getCreateBy());
  192 + schedulePlanInfo.setCreateDate(schedulePlan.getCreateDate());
  193 + schedulePlanInfo.setUpdateBy(schedulePlan.getUpdateBy());
  194 + schedulePlanInfo.setUpdateDate(schedulePlan.getUpdateDate());
157 195
158 schedulePlanInfos.add(schedulePlanInfo); 196 schedulePlanInfos.add(schedulePlanInfo);
159 ttInfoMap.put(ttInfoDetail.getTtinfo().getId(), ttInfoDetail.getTtinfo().getName()); 197 ttInfoMap.put(ttInfoDetail.getTtinfo().getId(), ttInfoDetail.getTtinfo().getName());
src/main/resources/datatools/ktrs/employeesConfigDataInput.ktr
1 -<?xml version="1.0" encoding="UTF-8"?>  
2 -<transformation>  
3 - <info>  
4 - <name>&#x4eba;&#x5458;&#x914d;&#x7f6e;&#x4fe1;&#x606f;&#x5bfc;&#x5165;</name>  
5 - <description>&#x4eba;&#x5458;&#x914d;&#x7f6e;&#x4fe1;&#x606f;&#x5bfc;&#x5165;</description>  
6 - <extended_description>&#x4eba;&#x5458;&#x914d;&#x7f6e;&#x4fe1;&#x606f;</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>erroroutputdir</name>  
14 - <default_value/>  
15 - <description>ktr step&#x914d;&#x7f6e;&#x7684;&#x9519;&#x8bef;&#x8f93;&#x51fa;&#x76ee;&#x5f55;</description>  
16 - </parameter>  
17 - <parameter>  
18 - <name>filepath</name>  
19 - <default_value/>  
20 - <description>&#x5f85;&#x5904;&#x7406;&#x5bfc;&#x5165;&#x7684;excel&#x6587;&#x4ef6;</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>2016&#x2f;06&#x2f;29 15&#x3a;12&#x3a;27.273</created_date>  
81 - <modified_user>-</modified_user>  
82 - <modified_date>2016&#x2f;06&#x2f;29 15&#x3a;12&#x3a;27.273</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>101</xloc>  
90 - <yloc>264</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>&#x63d2;&#x5165;&#x2f;&#x66f4;&#x65b0;bsth_c_s_ecinfo</from><to>&#x9519;&#x8bef;&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>  
272 - <hop> <from>&#x83b7;&#x53d6;&#x53d8;&#x91cf;</from><to>&#x539f;&#x59cb;&#x7cfb;&#x7edf;&#x5bfc;&#x51fa;&#x7684;Excel&#x8f93;&#x5165;</to><enabled>Y</enabled> </hop>  
273 - <hop> <from>&#x539f;&#x59cb;&#x7cfb;&#x7edf;&#x5bfc;&#x51fa;&#x7684;Excel&#x8f93;&#x5165;</from><to>&#x542f;&#x7528;&#x88ab;&#x6570;&#x636e;flag</to><enabled>Y</enabled> </hop>  
274 - <hop> <from>&#x542f;&#x7528;&#x88ab;&#x6570;&#x636e;flag</from><to>&#x7ebf;&#x8def;id&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>  
275 - <hop> <from>&#x7ebf;&#x8def;id&#x67e5;&#x8be2;</from><to>&#x8fc7;&#x6ee4;&#x7ebf;&#x8def;id&#x4e3a;&#x7a7a;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>  
276 - <hop> <from>&#x8fc7;&#x6ee4;&#x7ebf;&#x8def;id&#x4e3a;&#x7a7a;&#x8bb0;&#x5f55;</from><to>&#x9a7e;&#x9a76;&#x5458;id&#x67e5;&#x627e;</to><enabled>Y</enabled> </hop>  
277 - <hop> <from>&#x9a7e;&#x9a76;&#x5458;id&#x67e5;&#x627e;</from><to>&#x8fc7;&#x6ee4;&#x9a7e;&#x9a76;&#x5458;id&#x4e3a;&#x7a7a;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>  
278 - <hop> <from>&#x8fc7;&#x6ee4;&#x9a7e;&#x9a76;&#x5458;id&#x4e3a;&#x7a7a;&#x8bb0;&#x5f55;</from><to>&#x552e;&#x7968;&#x5458;id&#x67e5;&#x627e;</to><enabled>Y</enabled> </hop>  
279 - <hop> <from>&#x552e;&#x7968;&#x5458;id&#x67e5;&#x627e;</from><to>&#x63d2;&#x5165;&#x2f;&#x66f4;&#x65b0;bsth_c_s_ecinfo</to><enabled>Y</enabled> </hop>  
280 - </order>  
281 - <step>  
282 - <name>&#x539f;&#x59cb;&#x7cfb;&#x7edf;&#x5bfc;&#x51fa;&#x7684;Excel&#x8f93;&#x5165;</name>  
283 - <type>ExcelInput</type>  
284 - <description/>  
285 - <distribute>Y</distribute>  
286 - <custom_distribution/>  
287 - <copies>1</copies>  
288 - <partitioning>  
289 - <method>none</method>  
290 - <schema_name/>  
291 - </partitioning>  
292 - <header>Y</header>  
293 - <noempty>Y</noempty>  
294 - <stoponempty>N</stoponempty>  
295 - <filefield/>  
296 - <sheetfield/>  
297 - <sheetrownumfield/>  
298 - <rownumfield/>  
299 - <sheetfield/>  
300 - <filefield/>  
301 - <limit>0</limit>  
302 - <encoding/>  
303 - <add_to_result_filenames>Y</add_to_result_filenames>  
304 - <accept_filenames>Y</accept_filenames>  
305 - <accept_field>filepath_</accept_field>  
306 - <accept_stepname>&#x83b7;&#x53d6;&#x53d8;&#x91cf;</accept_stepname>  
307 - <file>  
308 - <name/>  
309 - <filemask/>  
310 - <exclude_filemask/>  
311 - <file_required>N</file_required>  
312 - <include_subfolders>N</include_subfolders>  
313 - </file>  
314 - <fields>  
315 - <field>  
316 - <name>&#x7ebf;&#x8def;</name>  
317 - <type>String</type>  
318 - <length>-1</length>  
319 - <precision>-1</precision>  
320 - <trim_type>none</trim_type>  
321 - <repeat>N</repeat>  
322 - <format/>  
323 - <currency/>  
324 - <decimal/>  
325 - <group/>  
326 - </field>  
327 - <field>  
328 - <name>&#x642d;&#x73ed;&#x7f16;&#x7801;</name>  
329 - <type>String</type>  
330 - <length>-1</length>  
331 - <precision>-1</precision>  
332 - <trim_type>none</trim_type>  
333 - <repeat>N</repeat>  
334 - <format>&#x23;</format>  
335 - <currency/>  
336 - <decimal/>  
337 - <group/>  
338 - </field>  
339 - <field>  
340 - <name>&#x9a7e;&#x9a76;&#x5458;&#x5de5;&#x53f7;</name>  
341 - <type>String</type>  
342 - <length>-1</length>  
343 - <precision>-1</precision>  
344 - <trim_type>none</trim_type>  
345 - <repeat>N</repeat>  
346 - <format>&#x23;</format>  
347 - <currency/>  
348 - <decimal/>  
349 - <group/>  
350 - </field>  
351 - <field>  
352 - <name>&#x9a7e;&#x9a76;&#x5458;</name>  
353 - <type>String</type>  
354 - <length>-1</length>  
355 - <precision>-1</precision>  
356 - <trim_type>none</trim_type>  
357 - <repeat>N</repeat>  
358 - <format/>  
359 - <currency/>  
360 - <decimal/>  
361 - <group/>  
362 - </field>  
363 - <field>  
364 - <name>&#x552e;&#x7968;&#x5458;&#x5de5;&#x53f7;</name>  
365 - <type>String</type>  
366 - <length>-1</length>  
367 - <precision>-1</precision>  
368 - <trim_type>none</trim_type>  
369 - <repeat>N</repeat>  
370 - <format>&#x23;</format>  
371 - <currency/>  
372 - <decimal/>  
373 - <group/>  
374 - </field>  
375 - <field>  
376 - <name>&#x552e;&#x7968;&#x5458;</name>  
377 - <type>String</type>  
378 - <length>-1</length>  
379 - <precision>-1</precision>  
380 - <trim_type>none</trim_type>  
381 - <repeat>N</repeat>  
382 - <format/>  
383 - <currency/>  
384 - <decimal/>  
385 - <group/>  
386 - </field>  
387 - </fields>  
388 - <sheets>  
389 - <sheet>  
390 - <name>&#x5de5;&#x4f5c;&#x8868;1</name>  
391 - <startrow>0</startrow>  
392 - <startcol>0</startcol>  
393 - </sheet>  
394 - </sheets>  
395 - <strict_types>N</strict_types>  
396 - <error_ignored>N</error_ignored>  
397 - <error_line_skipped>N</error_line_skipped>  
398 - <bad_line_files_destination_directory/>  
399 - <bad_line_files_extension>warning</bad_line_files_extension>  
400 - <error_line_files_destination_directory/>  
401 - <error_line_files_extension>error</error_line_files_extension>  
402 - <line_number_files_destination_directory/>  
403 - <line_number_files_extension>line</line_number_files_extension>  
404 - <shortFileFieldName/>  
405 - <pathFieldName/>  
406 - <hiddenFieldName/>  
407 - <lastModificationTimeFieldName/>  
408 - <uriNameFieldName/>  
409 - <rootUriNameFieldName/>  
410 - <extensionFieldName/>  
411 - <sizeFieldName/>  
412 - <spreadsheet_type>JXL</spreadsheet_type>  
413 - <cluster_schema/>  
414 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
415 - <xloc>93</xloc>  
416 - <yloc>51</yloc>  
417 - <draw>Y</draw>  
418 - </GUI>  
419 - </step>  
420 -  
421 - <step>  
422 - <name>&#x542f;&#x7528;&#x88ab;&#x6570;&#x636e;flag</name>  
423 - <type>Constant</type>  
424 - <description/>  
425 - <distribute>Y</distribute>  
426 - <custom_distribution/>  
427 - <copies>1</copies>  
428 - <partitioning>  
429 - <method>none</method>  
430 - <schema_name/>  
431 - </partitioning>  
432 - <fields>  
433 - <field>  
434 - <name>isCancel</name>  
435 - <type>Integer</type>  
436 - <format/>  
437 - <currency/>  
438 - <decimal/>  
439 - <group/>  
440 - <nullif>0</nullif>  
441 - <length>-1</length>  
442 - <precision>-1</precision>  
443 - <set_empty_string>N</set_empty_string>  
444 - </field>  
445 - </fields>  
446 - <cluster_schema/>  
447 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
448 - <xloc>225</xloc>  
449 - <yloc>53</yloc>  
450 - <draw>Y</draw>  
451 - </GUI>  
452 - </step>  
453 -  
454 - <step>  
455 - <name>&#x552e;&#x7968;&#x5458;id&#x67e5;&#x627e;</name>  
456 - <type>DBJoin</type>  
457 - <description/>  
458 - <distribute>Y</distribute>  
459 - <custom_distribution/>  
460 - <copies>1</copies>  
461 - <partitioning>  
462 - <method>none</method>  
463 - <schema_name/>  
464 - </partitioning>  
465 - <connection>bus_control_variable</connection>  
466 - <rowlimit>1</rowlimit>  
467 - <sql>select id as sid from bsth_c_personnel&#xa;where job_code &#x3d; &#x3f; and personnel_name &#x3d; &#x3f;</sql>  
468 - <outer_join>Y</outer_join>  
469 - <replace_vars>N</replace_vars>  
470 - <parameter>  
471 - <field>  
472 - <name>&#x552e;&#x7968;&#x5458;&#x5de5;&#x53f7;</name>  
473 - <type>String</type>  
474 - </field>  
475 - <field>  
476 - <name>&#x552e;&#x7968;&#x5458;</name>  
477 - <type>String</type>  
478 - </field>  
479 - </parameter>  
480 - <cluster_schema/>  
481 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
482 - <xloc>673</xloc>  
483 - <yloc>47</yloc>  
484 - <draw>Y</draw>  
485 - </GUI>  
486 - </step>  
487 -  
488 - <step>  
489 - <name>&#x63d2;&#x5165;&#x2f;&#x66f4;&#x65b0;bsth_c_s_ecinfo</name>  
490 - <type>InsertUpdate</type>  
491 - <description/>  
492 - <distribute>Y</distribute>  
493 - <custom_distribution/>  
494 - <copies>1</copies>  
495 - <partitioning>  
496 - <method>none</method>  
497 - <schema_name/>  
498 - </partitioning>  
499 - <connection>bus_control_variable</connection>  
500 - <commit>100</commit>  
501 - <update_bypassed>N</update_bypassed>  
502 - <lookup>  
503 - <schema/>  
504 - <table>bsth_c_s_ecinfo</table>  
505 - <key>  
506 - <name>xlid</name>  
507 - <field>xl</field>  
508 - <condition>&#x3d;</condition>  
509 - <name2/>  
510 - </key>  
511 - <key>  
512 - <name>&#x642d;&#x73ed;&#x7f16;&#x7801;</name>  
513 - <field>dbbm</field>  
514 - <condition>&#x3d;</condition>  
515 - <name2/>  
516 - </key>  
517 - <key>  
518 - <name>isCancel</name>  
519 - <field>is_cancel</field>  
520 - <condition>&#x3d;</condition>  
521 - <name2/>  
522 - </key>  
523 - <value>  
524 - <name>xl</name>  
525 - <rename>xlid</rename>  
526 - <update>N</update>  
527 - </value>  
528 - <value>  
529 - <name>dbbm</name>  
530 - <rename>&#x642d;&#x73ed;&#x7f16;&#x7801;</rename>  
531 - <update>N</update>  
532 - </value>  
533 - <value>  
534 - <name>jsy</name>  
535 - <rename>jid</rename>  
536 - <update>N</update>  
537 - </value>  
538 - <value>  
539 - <name>spy</name>  
540 - <rename>sid</rename>  
541 - <update>N</update>  
542 - </value>  
543 - <value>  
544 - <name>is_cancel</name>  
545 - <rename>isCancel</rename>  
546 - <update>N</update>  
547 - </value>  
548 - </lookup>  
549 - <cluster_schema/>  
550 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
551 - <xloc>676</xloc>  
552 - <yloc>200</yloc>  
553 - <draw>Y</draw>  
554 - </GUI>  
555 - </step>  
556 -  
557 - <step>  
558 - <name>&#x7ebf;&#x8def;id&#x67e5;&#x8be2;</name>  
559 - <type>DBLookup</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 - <cache>Y</cache>  
570 - <cache_load_all>Y</cache_load_all>  
571 - <cache_size>0</cache_size>  
572 - <lookup>  
573 - <schema/>  
574 - <table>bsth_c_line</table>  
575 - <orderby/>  
576 - <fail_on_multiple>N</fail_on_multiple>  
577 - <eat_row_on_failure>N</eat_row_on_failure>  
578 - <key>  
579 - <name>&#x7ebf;&#x8def;</name>  
580 - <field>name</field>  
581 - <condition>&#x3d;</condition>  
582 - <name2/>  
583 - </key>  
584 - <key>  
585 - <name>isCancel</name>  
586 - <field>destroy</field>  
587 - <condition>&#x3d;</condition>  
588 - <name2/>  
589 - </key>  
590 - <value>  
591 - <name>id</name>  
592 - <rename>xlid</rename>  
593 - <default/>  
594 - <type>Integer</type>  
595 - </value>  
596 - </lookup>  
597 - <cluster_schema/>  
598 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
599 - <xloc>397</xloc>  
600 - <yloc>144</yloc>  
601 - <draw>Y</draw>  
602 - </GUI>  
603 - </step>  
604 -  
605 - <step>  
606 - <name>&#x83b7;&#x53d6;&#x53d8;&#x91cf;</name>  
607 - <type>GetVariable</type>  
608 - <description/>  
609 - <distribute>Y</distribute>  
610 - <custom_distribution/>  
611 - <copies>1</copies>  
612 - <partitioning>  
613 - <method>none</method>  
614 - <schema_name/>  
615 - </partitioning>  
616 - <fields>  
617 - <field>  
618 - <name>filepath_</name>  
619 - <variable>&#x24;&#x7b;filepath&#x7d;</variable>  
620 - <type>String</type>  
621 - <format/>  
622 - <currency/>  
623 - <decimal/>  
624 - <group/>  
625 - <length>-1</length>  
626 - <precision>-1</precision>  
627 - <trim_type>none</trim_type>  
628 - </field>  
629 - <field>  
630 - <name>erroroutputdir_</name>  
631 - <variable>&#x24;&#x7b;erroroutputdir&#x7d;</variable>  
632 - <type>String</type>  
633 - <format/>  
634 - <currency/>  
635 - <decimal/>  
636 - <group/>  
637 - <length>-1</length>  
638 - <precision>-1</precision>  
639 - <trim_type>none</trim_type>  
640 - </field>  
641 - </fields>  
642 - <cluster_schema/>  
643 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
644 - <xloc>94</xloc>  
645 - <yloc>178</yloc>  
646 - <draw>Y</draw>  
647 - </GUI>  
648 - </step>  
649 -  
650 - <step>  
651 - <name>&#x8fc7;&#x6ee4;&#x7ebf;&#x8def;id&#x4e3a;&#x7a7a;&#x8bb0;&#x5f55;</name>  
652 - <type>FilterRows</type>  
653 - <description/>  
654 - <distribute>Y</distribute>  
655 - <custom_distribution/>  
656 - <copies>1</copies>  
657 - <partitioning>  
658 - <method>none</method>  
659 - <schema_name/>  
660 - </partitioning>  
661 -<send_true_to/>  
662 -<send_false_to/>  
663 - <compare>  
664 -<condition>  
665 - <negated>N</negated>  
666 - <leftvalue>xlid</leftvalue>  
667 - <function>IS NOT NULL</function>  
668 - <rightvalue/>  
669 - </condition>  
670 - </compare>  
671 - <cluster_schema/>  
672 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
673 - <xloc>395</xloc>  
674 - <yloc>49</yloc>  
675 - <draw>Y</draw>  
676 - </GUI>  
677 - </step>  
678 -  
679 - <step>  
680 - <name>&#x8fc7;&#x6ee4;&#x9a7e;&#x9a76;&#x5458;id&#x4e3a;&#x7a7a;&#x8bb0;&#x5f55;</name>  
681 - <type>FilterRows</type>  
682 - <description/>  
683 - <distribute>Y</distribute>  
684 - <custom_distribution/>  
685 - <copies>1</copies>  
686 - <partitioning>  
687 - <method>none</method>  
688 - <schema_name/>  
689 - </partitioning>  
690 -<send_true_to>&#x552e;&#x7968;&#x5458;id&#x67e5;&#x627e;</send_true_to>  
691 -<send_false_to/>  
692 - <compare>  
693 -<condition>  
694 - <negated>N</negated>  
695 - <leftvalue>jid</leftvalue>  
696 - <function>IS NOT NULL</function>  
697 - <rightvalue/>  
698 - </condition>  
699 - </compare>  
700 - <cluster_schema/>  
701 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
702 - <xloc>538</xloc>  
703 - <yloc>47</yloc>  
704 - <draw>Y</draw>  
705 - </GUI>  
706 - </step>  
707 -  
708 - <step>  
709 - <name>&#x9519;&#x8bef;&#x8f93;&#x51fa;</name>  
710 - <type>ExcelOutput</type>  
711 - <description/>  
712 - <distribute>Y</distribute>  
713 - <custom_distribution/>  
714 - <copies>1</copies>  
715 - <partitioning>  
716 - <method>none</method>  
717 - <schema_name/>  
718 - </partitioning>  
719 - <header>Y</header>  
720 - <footer>N</footer>  
721 - <encoding>UTF-8</encoding>  
722 - <append>N</append>  
723 - <add_to_result_filenames>Y</add_to_result_filenames>  
724 - <file>  
725 - <name>&#x24;&#x7b;erroroutputdir&#x7d;&#x2f;&#x4eba;&#x5458;&#x914d;&#x7f6e;_&#x9519;&#x8bef;</name>  
726 - <extention>xls</extention>  
727 - <do_not_open_newfile_init>N</do_not_open_newfile_init>  
728 - <create_parent_folder>N</create_parent_folder>  
729 - <split>N</split>  
730 - <add_date>N</add_date>  
731 - <add_time>N</add_time>  
732 - <SpecifyFormat>N</SpecifyFormat>  
733 - <date_time_format/>  
734 - <sheetname>Sheet1</sheetname>  
735 - <autosizecolums>N</autosizecolums>  
736 - <nullisblank>N</nullisblank>  
737 - <protect_sheet>N</protect_sheet>  
738 - <password>Encrypted </password>  
739 - <splitevery>0</splitevery>  
740 - <usetempfiles>N</usetempfiles>  
741 - <tempdirectory/>  
742 - </file>  
743 - <template>  
744 - <enabled>N</enabled>  
745 - <append>N</append>  
746 - <filename>template.xls</filename>  
747 - </template>  
748 - <fields>  
749 - <field>  
750 - <name>&#x7ebf;&#x8def;</name>  
751 - <type>String</type>  
752 - <format/>  
753 - </field>  
754 - <field>  
755 - <name>&#x642d;&#x73ed;&#x7f16;&#x7801;</name>  
756 - <type>String</type>  
757 - <format/>  
758 - </field>  
759 - <field>  
760 - <name>&#x9a7e;&#x9a76;&#x5458;&#x5de5;&#x53f7;</name>  
761 - <type>String</type>  
762 - <format/>  
763 - </field>  
764 - <field>  
765 - <name>&#x9a7e;&#x9a76;&#x5458;</name>  
766 - <type>String</type>  
767 - <format/>  
768 - </field>  
769 - <field>  
770 - <name>&#x552e;&#x7968;&#x5458;&#x5de5;&#x53f7;</name>  
771 - <type>String</type>  
772 - <format/>  
773 - </field>  
774 - <field>  
775 - <name>&#x552e;&#x7968;&#x5458;</name>  
776 - <type>String</type>  
777 - <format/>  
778 - </field>  
779 - <field>  
780 - <name>isCancel</name>  
781 - <type>Integer</type>  
782 - <format/>  
783 - </field>  
784 - <field>  
785 - <name>xlid</name>  
786 - <type>Integer</type>  
787 - <format/>  
788 - </field>  
789 - <field>  
790 - <name>jid</name>  
791 - <type>Integer</type>  
792 - <format/>  
793 - </field>  
794 - <field>  
795 - <name>sid</name>  
796 - <type>Integer</type>  
797 - <format/>  
798 - </field>  
799 - <field>  
800 - <name>error_count</name>  
801 - <type>Integer</type>  
802 - <format/>  
803 - </field>  
804 - <field>  
805 - <name>error_desc</name>  
806 - <type>String</type>  
807 - <format/>  
808 - </field>  
809 - <field>  
810 - <name>error_column1</name>  
811 - <type>String</type>  
812 - <format/>  
813 - </field>  
814 - <field>  
815 - <name>error_column2</name>  
816 - <type>String</type>  
817 - <format/>  
818 - </field>  
819 - </fields>  
820 - <custom>  
821 - <header_font_name>arial</header_font_name>  
822 - <header_font_size>10</header_font_size>  
823 - <header_font_bold>N</header_font_bold>  
824 - <header_font_italic>N</header_font_italic>  
825 - <header_font_underline>no</header_font_underline>  
826 - <header_font_orientation>horizontal</header_font_orientation>  
827 - <header_font_color>black</header_font_color>  
828 - <header_background_color>none</header_background_color>  
829 - <header_row_height>255</header_row_height>  
830 - <header_alignment>left</header_alignment>  
831 - <header_image/>  
832 - <row_font_name>arial</row_font_name>  
833 - <row_font_size>10</row_font_size>  
834 - <row_font_color>black</row_font_color>  
835 - <row_background_color>none</row_background_color>  
836 - </custom>  
837 - <cluster_schema/>  
838 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
839 - <xloc>676</xloc>  
840 - <yloc>323</yloc>  
841 - <draw>Y</draw>  
842 - </GUI>  
843 - </step>  
844 -  
845 - <step>  
846 - <name>&#x9a7e;&#x9a76;&#x5458;id&#x67e5;&#x627e;</name>  
847 - <type>DBJoin</type>  
848 - <description/>  
849 - <distribute>Y</distribute>  
850 - <custom_distribution/>  
851 - <copies>1</copies>  
852 - <partitioning>  
853 - <method>none</method>  
854 - <schema_name/>  
855 - </partitioning>  
856 - <connection>bus_control_variable</connection>  
857 - <rowlimit>1</rowlimit>  
858 - <sql>select id as jid from bsth_c_personnel&#xa;where job_code &#x3d; &#x3f; and personnel_name &#x3d; &#x3f;</sql>  
859 - <outer_join>Y</outer_join>  
860 - <replace_vars>N</replace_vars>  
861 - <parameter>  
862 - <field>  
863 - <name>&#x9a7e;&#x9a76;&#x5458;&#x5de5;&#x53f7;</name>  
864 - <type>String</type>  
865 - </field>  
866 - <field>  
867 - <name>&#x9a7e;&#x9a76;&#x5458;</name>  
868 - <type>String</type>  
869 - </field>  
870 - </parameter>  
871 - <cluster_schema/>  
872 - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>  
873 - <xloc>537</xloc>  
874 - <yloc>143</yloc>  
875 - <draw>Y</draw>  
876 - </GUI>  
877 - </step>  
878 -  
879 - <step_error_handling>  
880 - <error>  
881 - <source_step>&#x63d2;&#x5165;&#x2f;&#x66f4;&#x65b0;bsth_c_s_ecinfo</source_step>  
882 - <target_step>&#x9519;&#x8bef;&#x8f93;&#x51fa;</target_step>  
883 - <is_enabled>Y</is_enabled>  
884 - <nr_valuename>error_count</nr_valuename>  
885 - <descriptions_valuename>error_desc</descriptions_valuename>  
886 - <fields_valuename>error_column1</fields_valuename>  
887 - <codes_valuename>error_column2</codes_valuename>  
888 - <max_errors/>  
889 - <max_pct_errors/>  
890 - <min_pct_rows/>  
891 - </error>  
892 - </step_error_handling>  
893 - <slave-step-copy-partition-distribution>  
894 -</slave-step-copy-partition-distribution>  
895 - <slave_transformation>N</slave_transformation>  
896 -  
897 -</transformation> 1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<transformation>
  3 + <info>
  4 + <name>&#x4eba;&#x5458;&#x914d;&#x7f6e;&#x4fe1;&#x606f;&#x5bfc;&#x5165;</name>
  5 + <description>&#x4eba;&#x5458;&#x914d;&#x7f6e;&#x4fe1;&#x606f;&#x5bfc;&#x5165;</description>
  6 + <extended_description>&#x4eba;&#x5458;&#x914d;&#x7f6e;&#x4fe1;&#x606f;</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>erroroutputdir</name>
  14 + <default_value/>
  15 + <description>ktr step&#x914d;&#x7f6e;&#x7684;&#x9519;&#x8bef;&#x8f93;&#x51fa;&#x76ee;&#x5f55;</description>
  16 + </parameter>
  17 + <parameter>
  18 + <name>filepath</name>
  19 + <default_value/>
  20 + <description>&#x5f85;&#x5904;&#x7406;&#x5bfc;&#x5165;&#x7684;excel&#x6587;&#x4ef6;</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>2016&#x2f;06&#x2f;29 15&#x3a;12&#x3a;27.273</created_date>
  81 + <modified_user>-</modified_user>
  82 + <modified_date>2016&#x2f;06&#x2f;29 15&#x3a;12&#x3a;27.273</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>101</xloc>
  90 + <yloc>264</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>&#x63d2;&#x5165;&#x2f;&#x66f4;&#x65b0;bsth_c_s_ecinfo</from><to>&#x9519;&#x8bef;&#x8f93;&#x51fa;</to><enabled>Y</enabled> </hop>
  272 + <hop> <from>&#x83b7;&#x53d6;&#x53d8;&#x91cf;</from><to>&#x539f;&#x59cb;&#x7cfb;&#x7edf;&#x5bfc;&#x51fa;&#x7684;Excel&#x8f93;&#x5165;</to><enabled>Y</enabled> </hop>
  273 + <hop> <from>&#x539f;&#x59cb;&#x7cfb;&#x7edf;&#x5bfc;&#x51fa;&#x7684;Excel&#x8f93;&#x5165;</from><to>&#x542f;&#x7528;&#x88ab;&#x6570;&#x636e;flag</to><enabled>Y</enabled> </hop>
  274 + <hop> <from>&#x542f;&#x7528;&#x88ab;&#x6570;&#x636e;flag</from><to>&#x7ebf;&#x8def;id&#x67e5;&#x8be2;</to><enabled>Y</enabled> </hop>
  275 + <hop> <from>&#x7ebf;&#x8def;id&#x67e5;&#x8be2;</from><to>&#x8fc7;&#x6ee4;&#x7ebf;&#x8def;id&#x4e3a;&#x7a7a;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>
  276 + <hop> <from>&#x9a7e;&#x9a76;&#x5458;id&#x67e5;&#x627e;</from><to>&#x8fc7;&#x6ee4;&#x9a7e;&#x9a76;&#x5458;id&#x4e3a;&#x7a7a;&#x8bb0;&#x5f55;</to><enabled>Y</enabled> </hop>
  277 + <hop> <from>&#x8fc7;&#x6ee4;&#x9a7e;&#x9a76;&#x5458;id&#x4e3a;&#x7a7a;&#x8bb0;&#x5f55;</from><to>&#x552e;&#x7968;&#x5458;id&#x67e5;&#x627e;</to><enabled>Y</enabled> </hop>
  278 + <hop> <from>&#x552e;&#x7968;&#x5458;id&#x67e5;&#x627e;</from><to>&#x63d2;&#x5165;&#x2f;&#x66f4;&#x65b0;bsth_c_s_ecinfo</to><enabled>Y</enabled> </hop>
  279 + <hop> <from>&#x8fc7;&#x6ee4;&#x7ebf;&#x8def;id&#x4e3a;&#x7a7a;&#x8bb0;&#x5f55;</from><to>&#x5de5;&#x53f7;&#x6570;&#x636e;&#x5904;&#x7406;</to><enabled>Y</enabled> </hop>
  280 + <hop> <from>&#x5de5;&#x53f7;&#x6570;&#x636e;&#x5904;&#x7406;</from><to>&#x9a7e;&#x9a76;&#x5458;id&#x67e5;&#x627e;</to><enabled>Y</enabled> </hop>
  281 + </order>
  282 + <step>
  283 + <name>&#x539f;&#x59cb;&#x7cfb;&#x7edf;&#x5bfc;&#x51fa;&#x7684;Excel&#x8f93;&#x5165;</name>
  284 + <type>ExcelInput</type>
  285 + <description/>
  286 + <distribute>Y</distribute>
  287 + <custom_distribution/>
  288 + <copies>1</copies>
  289 + <partitioning>
  290 + <method>none</method>
  291 + <schema_name/>
  292 + </partitioning>
  293 + <header>Y</header>
  294 + <noempty>Y</noempty>
  295 + <stoponempty>N</stoponempty>
  296 + <filefield/>
  297 + <sheetfield/>
  298 + <sheetrownumfield/>
  299 + <rownumfield/>
  300 + <sheetfield/>
  301 + <filefield/>
  302 + <limit>0</limit>
  303 + <encoding/>
  304 + <add_to_result_filenames>Y</add_to_result_filenames>
  305 + <accept_filenames>Y</accept_filenames>
  306 + <accept_field>filepath_</accept_field>
  307 + <accept_stepname>&#x83b7;&#x53d6;&#x53d8;&#x91cf;</accept_stepname>
  308 + <file>
  309 + <name/>
  310 + <filemask/>
  311 + <exclude_filemask/>
  312 + <file_required>N</file_required>
  313 + <include_subfolders>N</include_subfolders>
  314 + </file>
  315 + <fields>
  316 + <field>
  317 + <name>&#x7ebf;&#x8def;</name>
  318 + <type>String</type>
  319 + <length>-1</length>
  320 + <precision>-1</precision>
  321 + <trim_type>none</trim_type>
  322 + <repeat>N</repeat>
  323 + <format/>
  324 + <currency/>
  325 + <decimal/>
  326 + <group/>
  327 + </field>
  328 + <field>
  329 + <name>&#x642d;&#x73ed;&#x7f16;&#x7801;</name>
  330 + <type>String</type>
  331 + <length>-1</length>
  332 + <precision>-1</precision>
  333 + <trim_type>none</trim_type>
  334 + <repeat>N</repeat>
  335 + <format>&#x23;</format>
  336 + <currency/>
  337 + <decimal/>
  338 + <group/>
  339 + </field>
  340 + <field>
  341 + <name>&#x9a7e;&#x9a76;&#x5458;&#x5de5;&#x53f7;</name>
  342 + <type>String</type>
  343 + <length>-1</length>
  344 + <precision>-1</precision>
  345 + <trim_type>none</trim_type>
  346 + <repeat>N</repeat>
  347 + <format>&#x23;</format>
  348 + <currency/>
  349 + <decimal/>
  350 + <group/>
  351 + </field>
  352 + <field>
  353 + <name>&#x9a7e;&#x9a76;&#x5458;</name>
  354 + <type>String</type>
  355 + <length>-1</length>
  356 + <precision>-1</precision>
  357 + <trim_type>none</trim_type>
  358 + <repeat>N</repeat>
  359 + <format/>
  360 + <currency/>
  361 + <decimal/>
  362 + <group/>
  363 + </field>
  364 + <field>
  365 + <name>&#x552e;&#x7968;&#x5458;&#x5de5;&#x53f7;</name>
  366 + <type>String</type>
  367 + <length>-1</length>
  368 + <precision>-1</precision>
  369 + <trim_type>none</trim_type>
  370 + <repeat>N</repeat>
  371 + <format>&#x23;</format>
  372 + <currency/>
  373 + <decimal/>
  374 + <group/>
  375 + </field>
  376 + <field>
  377 + <name>&#x552e;&#x7968;&#x5458;</name>
  378 + <type>String</type>
  379 + <length>-1</length>
  380 + <precision>-1</precision>
  381 + <trim_type>none</trim_type>
  382 + <repeat>N</repeat>
  383 + <format/>
  384 + <currency/>
  385 + <decimal/>
  386 + <group/>
  387 + </field>
  388 + </fields>
  389 + <sheets>
  390 + <sheet>
  391 + <name>&#x5de5;&#x4f5c;&#x8868;1</name>
  392 + <startrow>0</startrow>
  393 + <startcol>0</startcol>
  394 + </sheet>
  395 + </sheets>
  396 + <strict_types>N</strict_types>
  397 + <error_ignored>N</error_ignored>
  398 + <error_line_skipped>N</error_line_skipped>
  399 + <bad_line_files_destination_directory/>
  400 + <bad_line_files_extension>warning</bad_line_files_extension>
  401 + <error_line_files_destination_directory/>
  402 + <error_line_files_extension>error</error_line_files_extension>
  403 + <line_number_files_destination_directory/>
  404 + <line_number_files_extension>line</line_number_files_extension>
  405 + <shortFileFieldName/>
  406 + <pathFieldName/>
  407 + <hiddenFieldName/>
  408 + <lastModificationTimeFieldName/>
  409 + <uriNameFieldName/>
  410 + <rootUriNameFieldName/>
  411 + <extensionFieldName/>
  412 + <sizeFieldName/>
  413 + <spreadsheet_type>JXL</spreadsheet_type>
  414 + <cluster_schema/>
  415 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  416 + <xloc>93</xloc>
  417 + <yloc>51</yloc>
  418 + <draw>Y</draw>
  419 + </GUI>
  420 + </step>
  421 +
  422 + <step>
  423 + <name>&#x542f;&#x7528;&#x88ab;&#x6570;&#x636e;flag</name>
  424 + <type>Constant</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 + <fields>
  434 + <field>
  435 + <name>isCancel</name>
  436 + <type>Integer</type>
  437 + <format/>
  438 + <currency/>
  439 + <decimal/>
  440 + <group/>
  441 + <nullif>0</nullif>
  442 + <length>-1</length>
  443 + <precision>-1</precision>
  444 + <set_empty_string>N</set_empty_string>
  445 + </field>
  446 + </fields>
  447 + <cluster_schema/>
  448 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  449 + <xloc>225</xloc>
  450 + <yloc>53</yloc>
  451 + <draw>Y</draw>
  452 + </GUI>
  453 + </step>
  454 +
  455 + <step>
  456 + <name>&#x552e;&#x7968;&#x5458;id&#x67e5;&#x627e;</name>
  457 + <type>DBJoin</type>
  458 + <description/>
  459 + <distribute>Y</distribute>
  460 + <custom_distribution/>
  461 + <copies>1</copies>
  462 + <partitioning>
  463 + <method>none</method>
  464 + <schema_name/>
  465 + </partitioning>
  466 + <connection>bus_control_variable</connection>
  467 + <rowlimit>1</rowlimit>
  468 + <sql>select id as sid from bsth_c_personnel&#xa;where job_code like &#x3f; and personnel_name &#x3d; &#x3f;</sql>
  469 + <outer_join>Y</outer_join>
  470 + <replace_vars>N</replace_vars>
  471 + <parameter>
  472 + <field>
  473 + <name>sgh_temp</name>
  474 + <type>String</type>
  475 + </field>
  476 + <field>
  477 + <name>&#x552e;&#x7968;&#x5458;</name>
  478 + <type>String</type>
  479 + </field>
  480 + </parameter>
  481 + <cluster_schema/>
  482 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  483 + <xloc>830</xloc>
  484 + <yloc>45</yloc>
  485 + <draw>Y</draw>
  486 + </GUI>
  487 + </step>
  488 +
  489 + <step>
  490 + <name>&#x63d2;&#x5165;&#x2f;&#x66f4;&#x65b0;bsth_c_s_ecinfo</name>
  491 + <type>InsertUpdate</type>
  492 + <description/>
  493 + <distribute>Y</distribute>
  494 + <custom_distribution/>
  495 + <copies>1</copies>
  496 + <partitioning>
  497 + <method>none</method>
  498 + <schema_name/>
  499 + </partitioning>
  500 + <connection>bus_control_variable</connection>
  501 + <commit>100</commit>
  502 + <update_bypassed>N</update_bypassed>
  503 + <lookup>
  504 + <schema/>
  505 + <table>bsth_c_s_ecinfo</table>
  506 + <key>
  507 + <name>xlid</name>
  508 + <field>xl</field>
  509 + <condition>&#x3d;</condition>
  510 + <name2/>
  511 + </key>
  512 + <key>
  513 + <name>&#x642d;&#x73ed;&#x7f16;&#x7801;</name>
  514 + <field>dbbm</field>
  515 + <condition>&#x3d;</condition>
  516 + <name2/>
  517 + </key>
  518 + <key>
  519 + <name>isCancel</name>
  520 + <field>is_cancel</field>
  521 + <condition>&#x3d;</condition>
  522 + <name2/>
  523 + </key>
  524 + <value>
  525 + <name>xl</name>
  526 + <rename>xlid</rename>
  527 + <update>N</update>
  528 + </value>
  529 + <value>
  530 + <name>dbbm</name>
  531 + <rename>&#x642d;&#x73ed;&#x7f16;&#x7801;</rename>
  532 + <update>N</update>
  533 + </value>
  534 + <value>
  535 + <name>jsy</name>
  536 + <rename>jid</rename>
  537 + <update>N</update>
  538 + </value>
  539 + <value>
  540 + <name>spy</name>
  541 + <rename>sid</rename>
  542 + <update>N</update>
  543 + </value>
  544 + <value>
  545 + <name>is_cancel</name>
  546 + <rename>isCancel</rename>
  547 + <update>N</update>
  548 + </value>
  549 + </lookup>
  550 + <cluster_schema/>
  551 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  552 + <xloc>833</xloc>
  553 + <yloc>198</yloc>
  554 + <draw>Y</draw>
  555 + </GUI>
  556 + </step>
  557 +
  558 + <step>
  559 + <name>&#x7ebf;&#x8def;id&#x67e5;&#x8be2;</name>
  560 + <type>DBLookup</type>
  561 + <description/>
  562 + <distribute>Y</distribute>
  563 + <custom_distribution/>
  564 + <copies>1</copies>
  565 + <partitioning>
  566 + <method>none</method>
  567 + <schema_name/>
  568 + </partitioning>
  569 + <connection>bus_control_variable</connection>
  570 + <cache>Y</cache>
  571 + <cache_load_all>Y</cache_load_all>
  572 + <cache_size>0</cache_size>
  573 + <lookup>
  574 + <schema/>
  575 + <table>bsth_c_line</table>
  576 + <orderby/>
  577 + <fail_on_multiple>N</fail_on_multiple>
  578 + <eat_row_on_failure>N</eat_row_on_failure>
  579 + <key>
  580 + <name>&#x7ebf;&#x8def;</name>
  581 + <field>name</field>
  582 + <condition>&#x3d;</condition>
  583 + <name2/>
  584 + </key>
  585 + <key>
  586 + <name>isCancel</name>
  587 + <field>destroy</field>
  588 + <condition>&#x3d;</condition>
  589 + <name2/>
  590 + </key>
  591 + <value>
  592 + <name>id</name>
  593 + <rename>xlid</rename>
  594 + <default/>
  595 + <type>Integer</type>
  596 + </value>
  597 + </lookup>
  598 + <cluster_schema/>
  599 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  600 + <xloc>397</xloc>
  601 + <yloc>144</yloc>
  602 + <draw>Y</draw>
  603 + </GUI>
  604 + </step>
  605 +
  606 + <step>
  607 + <name>&#x83b7;&#x53d6;&#x53d8;&#x91cf;</name>
  608 + <type>GetVariable</type>
  609 + <description/>
  610 + <distribute>Y</distribute>
  611 + <custom_distribution/>
  612 + <copies>1</copies>
  613 + <partitioning>
  614 + <method>none</method>
  615 + <schema_name/>
  616 + </partitioning>
  617 + <fields>
  618 + <field>
  619 + <name>filepath_</name>
  620 + <variable>&#x24;&#x7b;filepath&#x7d;</variable>
  621 + <type>String</type>
  622 + <format/>
  623 + <currency/>
  624 + <decimal/>
  625 + <group/>
  626 + <length>-1</length>
  627 + <precision>-1</precision>
  628 + <trim_type>none</trim_type>
  629 + </field>
  630 + <field>
  631 + <name>erroroutputdir_</name>
  632 + <variable>&#x24;&#x7b;erroroutputdir&#x7d;</variable>
  633 + <type>String</type>
  634 + <format/>
  635 + <currency/>
  636 + <decimal/>
  637 + <group/>
  638 + <length>-1</length>
  639 + <precision>-1</precision>
  640 + <trim_type>none</trim_type>
  641 + </field>
  642 + </fields>
  643 + <cluster_schema/>
  644 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  645 + <xloc>94</xloc>
  646 + <yloc>178</yloc>
  647 + <draw>Y</draw>
  648 + </GUI>
  649 + </step>
  650 +
  651 + <step>
  652 + <name>&#x8fc7;&#x6ee4;&#x7ebf;&#x8def;id&#x4e3a;&#x7a7a;&#x8bb0;&#x5f55;</name>
  653 + <type>FilterRows</type>
  654 + <description/>
  655 + <distribute>Y</distribute>
  656 + <custom_distribution/>
  657 + <copies>1</copies>
  658 + <partitioning>
  659 + <method>none</method>
  660 + <schema_name/>
  661 + </partitioning>
  662 +<send_true_to/>
  663 +<send_false_to/>
  664 + <compare>
  665 +<condition>
  666 + <negated>N</negated>
  667 + <leftvalue>xlid</leftvalue>
  668 + <function>IS NOT NULL</function>
  669 + <rightvalue/>
  670 + </condition>
  671 + </compare>
  672 + <cluster_schema/>
  673 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  674 + <xloc>395</xloc>
  675 + <yloc>49</yloc>
  676 + <draw>Y</draw>
  677 + </GUI>
  678 + </step>
  679 +
  680 + <step>
  681 + <name>&#x8fc7;&#x6ee4;&#x9a7e;&#x9a76;&#x5458;id&#x4e3a;&#x7a7a;&#x8bb0;&#x5f55;</name>
  682 + <type>FilterRows</type>
  683 + <description/>
  684 + <distribute>Y</distribute>
  685 + <custom_distribution/>
  686 + <copies>1</copies>
  687 + <partitioning>
  688 + <method>none</method>
  689 + <schema_name/>
  690 + </partitioning>
  691 +<send_true_to>&#x552e;&#x7968;&#x5458;id&#x67e5;&#x627e;</send_true_to>
  692 +<send_false_to/>
  693 + <compare>
  694 +<condition>
  695 + <negated>N</negated>
  696 + <leftvalue>jid</leftvalue>
  697 + <function>IS NOT NULL</function>
  698 + <rightvalue/>
  699 + </condition>
  700 + </compare>
  701 + <cluster_schema/>
  702 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  703 + <xloc>695</xloc>
  704 + <yloc>45</yloc>
  705 + <draw>Y</draw>
  706 + </GUI>
  707 + </step>
  708 +
  709 + <step>
  710 + <name>&#x9519;&#x8bef;&#x8f93;&#x51fa;</name>
  711 + <type>ExcelOutput</type>
  712 + <description/>
  713 + <distribute>Y</distribute>
  714 + <custom_distribution/>
  715 + <copies>1</copies>
  716 + <partitioning>
  717 + <method>none</method>
  718 + <schema_name/>
  719 + </partitioning>
  720 + <header>Y</header>
  721 + <footer>N</footer>
  722 + <encoding>UTF-8</encoding>
  723 + <append>N</append>
  724 + <add_to_result_filenames>Y</add_to_result_filenames>
  725 + <file>
  726 + <name>&#x24;&#x7b;erroroutputdir&#x7d;&#x2f;&#x4eba;&#x5458;&#x914d;&#x7f6e;_&#x9519;&#x8bef;</name>
  727 + <extention>xls</extention>
  728 + <do_not_open_newfile_init>N</do_not_open_newfile_init>
  729 + <create_parent_folder>N</create_parent_folder>
  730 + <split>N</split>
  731 + <add_date>N</add_date>
  732 + <add_time>N</add_time>
  733 + <SpecifyFormat>N</SpecifyFormat>
  734 + <date_time_format/>
  735 + <sheetname>Sheet1</sheetname>
  736 + <autosizecolums>N</autosizecolums>
  737 + <nullisblank>N</nullisblank>
  738 + <protect_sheet>N</protect_sheet>
  739 + <password>Encrypted </password>
  740 + <splitevery>0</splitevery>
  741 + <usetempfiles>N</usetempfiles>
  742 + <tempdirectory/>
  743 + </file>
  744 + <template>
  745 + <enabled>N</enabled>
  746 + <append>N</append>
  747 + <filename>template.xls</filename>
  748 + </template>
  749 + <fields>
  750 + <field>
  751 + <name>&#x7ebf;&#x8def;</name>
  752 + <type>String</type>
  753 + <format/>
  754 + </field>
  755 + <field>
  756 + <name>&#x642d;&#x73ed;&#x7f16;&#x7801;</name>
  757 + <type>String</type>
  758 + <format/>
  759 + </field>
  760 + <field>
  761 + <name>&#x9a7e;&#x9a76;&#x5458;&#x5de5;&#x53f7;</name>
  762 + <type>String</type>
  763 + <format/>
  764 + </field>
  765 + <field>
  766 + <name>&#x9a7e;&#x9a76;&#x5458;</name>
  767 + <type>String</type>
  768 + <format/>
  769 + </field>
  770 + <field>
  771 + <name>&#x552e;&#x7968;&#x5458;&#x5de5;&#x53f7;</name>
  772 + <type>String</type>
  773 + <format/>
  774 + </field>
  775 + <field>
  776 + <name>&#x552e;&#x7968;&#x5458;</name>
  777 + <type>String</type>
  778 + <format/>
  779 + </field>
  780 + <field>
  781 + <name>isCancel</name>
  782 + <type>Integer</type>
  783 + <format/>
  784 + </field>
  785 + <field>
  786 + <name>xlid</name>
  787 + <type>Integer</type>
  788 + <format/>
  789 + </field>
  790 + <field>
  791 + <name>jid</name>
  792 + <type>Integer</type>
  793 + <format/>
  794 + </field>
  795 + <field>
  796 + <name>sid</name>
  797 + <type>Integer</type>
  798 + <format/>
  799 + </field>
  800 + <field>
  801 + <name>error_count</name>
  802 + <type>Integer</type>
  803 + <format/>
  804 + </field>
  805 + <field>
  806 + <name>error_desc</name>
  807 + <type>String</type>
  808 + <format/>
  809 + </field>
  810 + <field>
  811 + <name>error_column1</name>
  812 + <type>String</type>
  813 + <format/>
  814 + </field>
  815 + <field>
  816 + <name>error_column2</name>
  817 + <type>String</type>
  818 + <format/>
  819 + </field>
  820 + </fields>
  821 + <custom>
  822 + <header_font_name>arial</header_font_name>
  823 + <header_font_size>10</header_font_size>
  824 + <header_font_bold>N</header_font_bold>
  825 + <header_font_italic>N</header_font_italic>
  826 + <header_font_underline>no</header_font_underline>
  827 + <header_font_orientation>horizontal</header_font_orientation>
  828 + <header_font_color>black</header_font_color>
  829 + <header_background_color>none</header_background_color>
  830 + <header_row_height>255</header_row_height>
  831 + <header_alignment>left</header_alignment>
  832 + <header_image/>
  833 + <row_font_name>arial</row_font_name>
  834 + <row_font_size>10</row_font_size>
  835 + <row_font_color>black</row_font_color>
  836 + <row_background_color>none</row_background_color>
  837 + </custom>
  838 + <cluster_schema/>
  839 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  840 + <xloc>833</xloc>
  841 + <yloc>321</yloc>
  842 + <draw>Y</draw>
  843 + </GUI>
  844 + </step>
  845 +
  846 + <step>
  847 + <name>&#x9a7e;&#x9a76;&#x5458;id&#x67e5;&#x627e;</name>
  848 + <type>DBJoin</type>
  849 + <description/>
  850 + <distribute>Y</distribute>
  851 + <custom_distribution/>
  852 + <copies>1</copies>
  853 + <partitioning>
  854 + <method>none</method>
  855 + <schema_name/>
  856 + </partitioning>
  857 + <connection>bus_control_variable</connection>
  858 + <rowlimit>1</rowlimit>
  859 + <sql>select id as jid from bsth_c_personnel&#xa;where job_code like &#x3f; and personnel_name &#x3d; &#x3f;</sql>
  860 + <outer_join>Y</outer_join>
  861 + <replace_vars>N</replace_vars>
  862 + <parameter>
  863 + <field>
  864 + <name>jgh_temp</name>
  865 + <type>String</type>
  866 + </field>
  867 + <field>
  868 + <name>&#x9a7e;&#x9a76;&#x5458;</name>
  869 + <type>String</type>
  870 + </field>
  871 + </parameter>
  872 + <cluster_schema/>
  873 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  874 + <xloc>694</xloc>
  875 + <yloc>141</yloc>
  876 + <draw>Y</draw>
  877 + </GUI>
  878 + </step>
  879 +
  880 + <step>
  881 + <name>&#x5de5;&#x53f7;&#x6570;&#x636e;&#x5904;&#x7406;</name>
  882 + <type>ScriptValueMod</type>
  883 + <description/>
  884 + <distribute>Y</distribute>
  885 + <custom_distribution/>
  886 + <copies>1</copies>
  887 + <partitioning>
  888 + <method>none</method>
  889 + <schema_name/>
  890 + </partitioning>
  891 + <compatible>N</compatible>
  892 + <optimizationLevel>9</optimizationLevel>
  893 + <jsScripts> <jsScript> <jsScript_type>0</jsScript_type>
  894 + <jsScript_name>Script 1</jsScript_name>
  895 + <jsScript_script>&#x2f;&#x2f; &#x56e0;&#x4e3a;&#x6570;&#x636e;&#x5e93;&#x4e2d;&#x7684;&#x6570;&#x636e;&#x5de5;&#x53f7;&#x53ef;&#x80fd;&#x5e26;suffix&#xff0c;&#x5982;55-12345678&#xa;&#x2f;&#x2f; &#x6240;&#x4ee5;&#x4e4b;&#x540e;&#x7684;&#x5339;&#x914d;&#x4f7f;&#x7528;like&#xff0c;&#x5219;&#x5143;&#x6570;&#x636e;&#x9700;&#x8981;&#x52a0;&#x4e0a;&#x25; &#x25;&#x7b26;&#x53f7;&#xa;&#xa;var jgh_temp&#x3b;&#xa;var sgh_temp&#x3b;&#xa;&#xa;if &#x28;&#x9a7e;&#x9a76;&#x5458;&#x5de5;&#x53f7;&#x29; &#x7b;&#xa; jgh_temp &#x3d; &#x27;&#x25;&#x27; &#x2b; &#x9a7e;&#x9a76;&#x5458;&#x5de5;&#x53f7; &#x2b; &#x27;&#x25;&#x27;&#x3b;&#xa;&#x7d; else &#x7b;&#xa; jgh_temp &#x3d; &#x9a7e;&#x9a76;&#x5458;&#x5de5;&#x53f7;&#x3b;&#xa;&#x7d;&#xa;&#xa;if &#x28;&#x552e;&#x7968;&#x5458;&#x5de5;&#x53f7;&#x29; &#x7b;&#xa; sgh_temp &#x3d; &#x27;&#x25;&#x27; &#x2b; &#x552e;&#x7968;&#x5458;&#x5de5;&#x53f7; &#x2b; &#x27;&#x25;&#x27;&#x3b;&#xa;&#x7d; else &#x7b;&#xa; sgh_temp &#x3d; &#x552e;&#x7968;&#x5458;&#x5de5;&#x53f7;&#x3b;&#xa;&#x7d;</jsScript_script>
  896 + </jsScript> </jsScripts> <fields> <field> <name>jgh_temp</name>
  897 + <rename>jgh_temp</rename>
  898 + <type>String</type>
  899 + <length>-1</length>
  900 + <precision>-1</precision>
  901 + <replace>N</replace>
  902 + </field> <field> <name>sgh_temp</name>
  903 + <rename>sgh_temp</rename>
  904 + <type>String</type>
  905 + <length>-1</length>
  906 + <precision>-1</precision>
  907 + <replace>N</replace>
  908 + </field> </fields> <cluster_schema/>
  909 + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
  910 + <xloc>548</xloc>
  911 + <yloc>47</yloc>
  912 + <draw>Y</draw>
  913 + </GUI>
  914 + </step>
  915 +
  916 + <step_error_handling>
  917 + <error>
  918 + <source_step>&#x63d2;&#x5165;&#x2f;&#x66f4;&#x65b0;bsth_c_s_ecinfo</source_step>
  919 + <target_step>&#x9519;&#x8bef;&#x8f93;&#x51fa;</target_step>
  920 + <is_enabled>Y</is_enabled>
  921 + <nr_valuename>error_count</nr_valuename>
  922 + <descriptions_valuename>error_desc</descriptions_valuename>
  923 + <fields_valuename>error_column1</fields_valuename>
  924 + <codes_valuename>error_column2</codes_valuename>
  925 + <max_errors/>
  926 + <max_pct_errors/>
  927 + <min_pct_rows/>
  928 + </error>
  929 + </step_error_handling>
  930 + <slave-step-copy-partition-distribution>
  931 +</slave-step-copy-partition-distribution>
  932 + <slave_transformation>N</slave_transformation>
  933 +
  934 +</transformation>
src/main/resources/logback.xml
@@ -9,8 +9,7 @@ @@ -9,8 +9,7 @@
9 9
10 <layout class="ch.qos.logback.classic.PatternLayout"> 10 <layout class="ch.qos.logback.classic.PatternLayout">
11 <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符 --> 11 <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符 -->
12 - <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] [%file:%line] %-5level  
13 - -%msg%n 12 + <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] [%file:%line] %-5level-%msg%n
14 </pattern> 13 </pattern>
15 </layout> 14 </layout>
16 </appender> 15 </appender>
@@ -32,8 +31,7 @@ @@ -32,8 +31,7 @@
32 31
33 <layout class="ch.qos.logback.classic.PatternLayout"> 32 <layout class="ch.qos.logback.classic.PatternLayout">
34 <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符 --> 33 <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符 -->
35 - <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] [%file:%line] %-5level  
36 - -%msg%n 34 + <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] [%file:%line] %-5level-%msg%n
37 </pattern> 35 </pattern>
38 </layout> 36 </layout>
39 </appender> 37 </appender>
src/main/resources/static/pages/scheduleApp/module/core/schedulePlanManage/info/list_info.html
@@ -5,16 +5,18 @@ @@ -5,16 +5,18 @@
5 <thead> 5 <thead>
6 <tr role="row" class="heading"> 6 <tr role="row" class="heading">
7 <th style="width: 50px;">序号</th> 7 <th style="width: 50px;">序号</th>
8 - <th style="width: 100px;">线路</th> 8 + <th style="width: 80px;">线路</th>
9 <th style="width: 150px;">日期</th> 9 <th style="width: 150px;">日期</th>
10 - <th style="width: 60px;">路牌</th>  
11 - <th style="width: 150px;">车辆</th>  
12 - <th style="width: 150px;">驾驶员(工号)</th>  
13 - <th style="width: 150px;">售票员(工号)</th> 10 + <th style="width: 50px;">路牌</th>
  11 + <th style="width: 120px;">车辆</th>
  12 + <th style="width: 120px;">驾驶员(工号)</th>
  13 + <th style="width: 120px;">售票员(工号)</th>
14 <th style="width: 80px;">班次类型</th> 14 <th style="width: 80px;">班次类型</th>
15 <th style="width: 80px;">上下行</th> 15 <th style="width: 80px;">上下行</th>
16 <th style="width: 80px;">发车时间</th> 16 <th style="width: 80px;">发车时间</th>
17 <th style="width: 100%">时刻表</th> 17 <th style="width: 100%">时刻表</th>
  18 + <th style="width: 90px;">修改人</th>
  19 + <th style="width: 90px;">修改时间</th>
18 20
19 <!-- TODO:还有其他的 --> 21 <!-- TODO:还有其他的 -->
20 22
@@ -44,6 +46,8 @@ @@ -44,6 +46,8 @@
44 <td></td> 46 <td></td>
45 <td></td> 47 <td></td>
46 <td></td> 48 <td></td>
  49 + <td></td>
  50 + <td></td>
47 51
48 </tr> 52 </tr>
49 </thead> 53 </thead>
@@ -82,7 +86,13 @@ @@ -82,7 +86,13 @@
82 <span ng-bind="info.fcsj"></span> 86 <span ng-bind="info.fcsj"></span>
83 </td> 87 </td>
84 <td> 88 <td>
85 - <abbr title="{{info.ttInfoName}}"><span>{{info.ttInfoName}}</span></abbr> 89 + <span ng-bind="info.ttInfoName"></span>
  90 + </td>
  91 + <td>
  92 + <span ng-bind="info.updateBy.name"></span>
  93 + </td>
  94 + <td>
  95 + <span ng-bind="info.updateDate | date: 'yyyy-MM-dd'"></span>
86 </td> 96 </td>
87 97
88 </tr> 98 </tr>
src/main/resources/static/pages/scheduleApp/module/core/schedulePlanManage/report/list_report.html
@@ -19,8 +19,9 @@ @@ -19,8 +19,9 @@
19 <th style="width: 100px;">驾2</th> 19 <th style="width: 100px;">驾2</th>
20 <th style="width: 100px;">售工2</th> 20 <th style="width: 100px;">售工2</th>
21 <th style="width: 100px;">售2</th> 21 <th style="width: 100px;">售2</th>
22 - <th style="width: 150px;">排班时间</th>  
23 <th>时刻表</th> 22 <th>时刻表</th>
  23 + <th style="width: 150px;">修改时间</th>
  24 + <th style="width: 100px;">修改人</th>
24 </tr> 25 </tr>
25 <tr role="row" class="filter"> 26 <tr role="row" class="filter">
26 <td></td> 27 <td></td>
@@ -62,6 +63,7 @@ @@ -62,6 +63,7 @@
62 <td></td> 63 <td></td>
63 <td></td> 64 <td></td>
64 <td></td> 65 <td></td>
  66 + <td></td>
65 </tr> 67 </tr>
66 </thead> 68 </thead>
67 <tbody> 69 <tbody>
@@ -134,11 +136,15 @@ @@ -134,11 +136,15 @@
134 </a> 136 </a>
135 </td> 137 </td>
136 <td> 138 <td>
137 - <span ng-bind="info.createDate | date: 'yyyy-MM-dd HH:mm:ss'"></span> 139 + <span ng-bind="info.ttInfoName"></span>
  140 + </td>
  141 + <td>
  142 + <span ng-bind="info.updateDate | date: 'yyyy-MM-dd HH:mm:ss'"></span>
138 </td> 143 </td>
139 <td> 144 <td>
140 - <span ng-bind="info.ttinfoName"></span> 145 + <span ng-bind="info.updateByName"></span>
141 </td> 146 </td>
  147 +
142 </tr> 148 </tr>
143 </tbody> 149 </tbody>
144 </table> 150 </table>