27de4a2dc82081be2a8e10cf9e4c40a55f002eff.svn-base 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527
  1. package xin.glue.ui.G.G04;
  2. import java.math.BigDecimal;
  3. import java.sql.CallableStatement;
  4. import java.sql.SQLException;
  5. import org.apache.commons.lang.StringUtils;
  6. import xin.glue.ui.common.component.PosSiteLog;
  7. import com.posdata.glue.PosException;
  8. import com.posdata.glue.biz.activity.PosActivity;
  9. import com.posdata.glue.biz.constants.PosBizControlConstants;
  10. import com.posdata.glue.biz.control.PosBizControlIF;
  11. import com.posdata.glue.biz.control.PosBizProvider;
  12. import com.posdata.glue.context.PosContext;
  13. import com.posdata.glue.dao.vo.PosParameter;
  14. import com.posdata.glue.dao.vo.PosRow;
  15. import com.posdata.glue.dao.vo.PosRowSet;
  16. import com.posdata.glue.msg.PosMESMessageImpl;
  17. import com.posdata.glue.msg.PosMessage;
  18. /*
  19. * 中厚板移送实绩登录与查询,从我方仓库取出板坯,发货到中厚板仓库
  20. * 这里涉及到多个表,所以自己写一个类
  21. * @author tangliang
  22. * @date 2008.11.05
  23. */
  24. public class SavePltBlabNo extends PosActivity {
  25. public String runActivity(PosContext context) {
  26. // 从页面获取数据供插入和更新使用
  27. // 获得所选择的行数
  28. String[] status = (String[]) context.get("rowStuts");
  29. String[] hcrClf = (String[]) context.get("HCR_CLF");
  30. // 车辆号
  31. String[] PLT_TRS_CAR_NO = (String[]) context.get("PLT_TRS_CAR_NO");
  32. // 移送货单_前半部分_日期
  33. String[] PLT_TRS_INVOICE_NO = (String[]) context
  34. .get("PLT_TRS_INVOICE_NO");
  35. // 移送货单_后半部分_编号,移送货单需要把两个数据拼起来做为一个整体插入数据库
  36. String[] PLT_TRS_INVOICE_NO_MANUAL = (String[]) context
  37. .get("PLT_TRS_INVOICE_NO_MANUAL");
  38. // 目的地,前台手工录入的
  39. String[] PLT_PLANT_ARRV_LOC = (String[]) context.get("PLT_PLANT_ARRV_LOC");
  40. // 班次
  41. String[] PLT_TRS_WKSHIFT = (String[]) context.get("PLT_TRS_WKSHIFT");
  42. // 组
  43. String[] PLT_TRS_WKGROUP = (String[]) context.get("PLT_TRS_WKGROUP");
  44. // 登录人
  45. String[] PLT_TRS_EMP_ID = (String[]) context.get("PLT_TRS_EMP_ID");
  46. String[] PLT_TRS_EMP_NM = (String[]) context.get("PLT_TRS_EMP_NM");
  47. // 板坯号SLAB_NO
  48. String[] SLAB_NO = (String[]) context.get("SLAB_NO");
  49. // 移送时间PLT_TRS_DTIME
  50. String[] PLT_TRS_DTIME = (String[]) context.get("PLT_TRS_DTIME");
  51. // 选择项,如果选择响为Y的才让它更新数据库。在前台只要是点击过选择按钮的数据都会发到后台来
  52. String[] CHK = (String[]) context.get("CHK");
  53. // 从前台获取的,移送货单的值,这里的值肯定是存在的取的是选择项的
  54. String[] CUR_LOAD_LOC = (String[]) context.get("CUR_LOAD_LOC");
  55. // 炉次号
  56. String[] CHARGE_NO = (String[]) context.get("CHARGE_NO");
  57. // 外观等级
  58. String[] EXTSHAPE_GRD = (String[]) context.get("EXTSHAPE_GRD");
  59. // 成分等级
  60. String[] SLAB_INGR_DEC_GRD = (String[]) context
  61. .get("SLAB_INGR_DEC_GRD");
  62. // 瑕疵代码1
  63. String[] CRK_CD1 = (String[]) context.get("CRK_CD1");
  64. // 瑕疵代码2
  65. String[] CRK_CD2 = (String[]) context.get("CRK_CD2");
  66. // 瑕疵代码3
  67. String[] CRK_CD3 = (String[]) context.get("CRK_CD3");
  68. // 瑕疵代码4
  69. String[] CRK_CD4 = (String[]) context.get("CRK_CD4");
  70. // 合同号码
  71. String[] ORD_NO = (String[]) context.get("L2_SCH_NO");
  72. // 钢码
  73. String[] STL_GRD = (String[]) context.get("STL_GRD");
  74. // 板坯厚度
  75. String[] SLAB_THK = (String[]) context.get("SLAB_THK");
  76. // 板坯宽度
  77. String[] SLAB_WTH = (String[]) context.get("SLAB_WTH");
  78. // 板坯长度
  79. String[] SLAB_LEN = (String[]) context.get("SLAB_LEN");
  80. // 板坯重量
  81. String[] SLAB_WGT = (String[]) context.get("SLAB_WGT");
  82. //称重重量
  83. String[] WEIGHT_WGT = (String[])context.get("WEIGHT_WGT");
  84. String CC_DEVNO = "";
  85. CallableStatement cstm = null;
  86. // 该炉次所对应的中厚板厂的板坯号
  87. String[] dsnSlabNo = new String[SLAB_NO.length];
  88. PosParameter param = null;
  89. PosRow rnm = null;
  90. for (int i = 0; i < SLAB_NO.length; i++) {
  91. param = new PosParameter();
  92. param.setWhereClauseParameter(0, SLAB_NO[i]);
  93. PosRowSet rowSet = getDao("mesdao").find(
  94. "UIG040090_DSN_SLAB_NO.select", param);
  95. if (rowSet.hasNext()) {
  96. rnm = rowSet.next();
  97. dsnSlabNo[i] = (String) rnm.getAttribute("DSN_SLAB_NO");
  98. }
  99. }
  100. // 炉次对应的成份信息
  101. BigDecimal C = null;
  102. BigDecimal SI = null;
  103. BigDecimal MN = null;
  104. BigDecimal P = null;
  105. BigDecimal S = null;
  106. BigDecimal NI = null;
  107. BigDecimal CR = null;
  108. BigDecimal CU = null;
  109. BigDecimal TI = null;
  110. BigDecimal V = null;
  111. BigDecimal MO = null;
  112. BigDecimal B = null;
  113. BigDecimal W = null;
  114. BigDecimal AL = null;
  115. BigDecimal ALS = null;
  116. BigDecimal ALT = null;
  117. BigDecimal ZN = null;
  118. BigDecimal PB = null;
  119. BigDecimal SN = null;
  120. BigDecimal CA = null;
  121. BigDecimal LA = null;
  122. BigDecimal SB = null;
  123. BigDecimal CE = null;
  124. BigDecimal SE = null;
  125. BigDecimal MG = null;
  126. BigDecimal NB = null;
  127. BigDecimal O = null;
  128. BigDecimal N = null;
  129. BigDecimal H = null;
  130. BigDecimal FE = null;
  131. BigDecimal AS = null;
  132. BigDecimal XTZ = null;
  133. BigDecimal CD = null;
  134. BigDecimal CS = null;
  135. BigDecimal ZR = null;
  136. BigDecimal PSR = null;
  137. BigDecimal L2AS = null;
  138. BigDecimal BI = null;
  139. // 这里必须取选中的记录才有意义,所以选择项必须为Y
  140. // 这里在后台不好处理,所以放在前台,如果选中的项为空就给予提示不准许提交。还是默认取第一个
  141. // 在插入发送到中厚板的表时需要判断移送货单号是否存在,如果存在的话要给出提示。让插入失败
  142. String sql = "select TRS_INVOICE_NO from tbg04_slab_transf where STAT_CD = '0' AND TRS_INVOICE_NO = ? and SLAB_NO = ? ";
  143. // 把现在的货单号为条件放入查询语句中,如果可以查出结果说明货单号存在,如果查不出结果说明可以插入
  144. PosParameter param2 = new PosParameter();
  145. // 如果行数不为空
  146. if (status != null) {
  147. // 循环取出每一行的内容
  148. // 更新表TBG02_SLAB_COMM
  149. for (int i = 0; i < status.length; i++) {
  150. param2 = new PosParameter();
  151. param2.setWhereClauseParameter(0, PLT_TRS_INVOICE_NO[i]
  152. + PLT_TRS_INVOICE_NO_MANUAL[i]);
  153. param2.setWhereClauseParameter(1, SLAB_NO[i]);
  154. PosRowSet rows = getDao("mesdao").findByQueryStatement(sql,
  155. param2);
  156. if (rows.hasNext()) {
  157. context.put("MESSAGES", " 移送货单号已经存在! ");
  158. return PosBizControlConstants.SUCCESS;
  159. }
  160. // 在后台判断,如果选择标识为Y的才可以进行相关的数据库操作
  161. if (CHK[i].equals("Y")) {
  162. // 取出需要发送中厚板的成分信息
  163. PosParameter param3 = new PosParameter();
  164. param3.setWhereClauseParameter(0,CHARGE_NO[i]);
  165. PosRowSet chemRows = getDao("mesdao").find(
  166. "UIG040090_05.select", param3);
  167. if(chemRows.hasNext()){
  168. PosRow chemRow = chemRows.next();
  169. CC_DEVNO = (String)chemRow.getAttribute("CC_DEVNO");
  170. }
  171. param3 = new PosParameter();
  172. param3.setWhereClauseParameter(0, CHARGE_NO[i]);
  173. // 成分数据对象为
  174. chemRows = getDao("mesdao").find(
  175. "UIG040090_03.select", param3);
  176. PosRow chemRow = null;
  177. // 如果炉次不存在成分的情况
  178. if (chemRows.hasNext()) {
  179. chemRow = chemRows.next();
  180. // 获取具体的成分信息
  181. C = (BigDecimal) chemRow.getAttribute("C");
  182. MN = (BigDecimal) chemRow.getAttribute("MN");
  183. S = (BigDecimal) chemRow.getAttribute("S");
  184. P = (BigDecimal) chemRow.getAttribute("P");
  185. SI = (BigDecimal) chemRow.getAttribute("SI");
  186. CR = (BigDecimal) chemRow.getAttribute("CR");
  187. NI = (BigDecimal) chemRow.getAttribute("NI");
  188. CU = (BigDecimal) chemRow.getAttribute("CU");
  189. MO = (BigDecimal) chemRow.getAttribute("MO");
  190. V = (BigDecimal) chemRow.getAttribute("V");
  191. TI = (BigDecimal) chemRow.getAttribute("TI");
  192. ALS = (BigDecimal) chemRow.getAttribute("ALS");
  193. ALT = (BigDecimal) chemRow.getAttribute("ALT");
  194. NB = (BigDecimal) chemRow.getAttribute("NB");
  195. AL = (BigDecimal) chemRow.getAttribute("AL");
  196. N = (BigDecimal) chemRow.getAttribute("N");
  197. AS = (BigDecimal) chemRow.getAttribute("AS");
  198. SN = (BigDecimal) chemRow.getAttribute("SN");
  199. CA = (BigDecimal) chemRow.getAttribute("CA");
  200. B = (BigDecimal) chemRow.getAttribute("B");
  201. PB = (BigDecimal) chemRow.getAttribute("PB");
  202. ZN = (BigDecimal) chemRow.getAttribute("ZN");
  203. XTZ = (BigDecimal) chemRow.getAttribute("XTZ");
  204. LA = (BigDecimal) chemRow.getAttribute("LA");
  205. SB = (BigDecimal) chemRow.getAttribute("SB");
  206. SE = (BigDecimal) chemRow.getAttribute("SE");
  207. MG = (BigDecimal) chemRow.getAttribute("MG");
  208. CD = (BigDecimal) chemRow.getAttribute("CD");
  209. O = (BigDecimal) chemRow.getAttribute("O");
  210. H = (BigDecimal) chemRow.getAttribute("H");
  211. FE = (BigDecimal) chemRow.getAttribute("FE");
  212. CS = (BigDecimal) chemRow.getAttribute("CS");
  213. ZR = (BigDecimal) chemRow.getAttribute("ZR");
  214. PSR = (BigDecimal) chemRow.getAttribute("PSR");
  215. W = (BigDecimal) chemRow.getAttribute("W");
  216. L2AS = (BigDecimal) chemRow.getAttribute("L2AS");
  217. BI = (BigDecimal) chemRow.getAttribute("BI");
  218. /*配重自动审核*/
  219. try
  220. {
  221. cstm = this.getDao("mesdao").getCallableStatement("WEIGHT_CHECK.CAL");
  222. cstm.setString(1, SLAB_NO[i]);
  223. cstm.registerOutParameter(2, java.sql.Types.VARCHAR);
  224. cstm.execute();
  225. String err = cstm.getString(2);
  226. }catch(Exception ex){
  227. ex.printStackTrace();
  228. }
  229. finally{
  230. if(cstm != null){
  231. try{
  232. cstm.close();
  233. }catch(Exception e)
  234. {
  235. e.printStackTrace();
  236. }
  237. }
  238. }
  239. param2 = new PosParameter();
  240. param2.setWhereClauseParameter(0, SLAB_NO[i]);
  241. PosRowSet SlabRows = getDao("mesdao").findByQueryStatement("SELECT NVL(WEIGHT_WGT*1000,0) WEIGHT_WGT FROM TBG02_SLAB_COMM T WHERE T.SLAB_NO = ?",param2);
  242. if (SlabRows.hasNext()) {
  243. PosRow slabRow = SlabRows.next();
  244. WEIGHT_WGT[i] = ((BigDecimal)slabRow.getAttribute("WEIGHT_WGT")).intValue() + "";
  245. }
  246. // 同时还需要把记录插入到发送中厚版工厂的表
  247. PosParameter param1 = new PosParameter();
  248. param1.setValueParamter(0, PLT_TRS_INVOICE_NO[i]
  249. + PLT_TRS_INVOICE_NO_MANUAL[i]);
  250. param1.setValueParamter(1, PLT_TRS_CAR_NO[i]);
  251. param1.setValueParamter(2, SLAB_NO[i]);
  252. // param1.setValueParamter(3, PLT_TRS_DTIME[i]);
  253. param1.setValueParamter(3, PLT_PLANT_ARRV_LOC[i]);
  254. param1.setValueParamter(4, CHARGE_NO[i]);
  255. param1.setValueParamter(5, ORD_NO[i]);
  256. param1.setValueParamter(6, STL_GRD[i]);
  257. param1.setValueParamter(7, SLAB_THK[i]);
  258. param1.setValueParamter(8, SLAB_WTH[i]);
  259. param1.setValueParamter(9, SLAB_LEN[i]);
  260. if(StringUtils.isBlank(WEIGHT_WGT[i]) || "0".equals(WEIGHT_WGT[i]) || WEIGHT_WGT[i] == null){
  261. param1.setValueParamter(10, SLAB_WGT[i]);
  262. }else{
  263. param1.setValueParamter(10, WEIGHT_WGT[i]);
  264. }
  265. param1.setValueParamter(11, SLAB_INGR_DEC_GRD[i]);
  266. param1.setValueParamter(12, EXTSHAPE_GRD[i]);
  267. // 瑕疵代码是把编号和内容一起传过来的,这里分别截取相应的位置
  268. param1.setValueParamter(13,
  269. CRK_CD1[i].length() == 0 ? "" : CRK_CD1[i]
  270. .substring(0, 2));
  271. param1.setValueParamter(14,
  272. CRK_CD1[i].length() == 0 ? "" : CRK_CD1[i]
  273. .substring(2, CRK_CD1[i].length()));
  274. param1.setValueParamter(15,
  275. CRK_CD2[i].length() == 0 ? "" : CRK_CD2[i]
  276. .substring(0, 2));
  277. param1.setValueParamter(16,
  278. CRK_CD2[i].length() == 0 ? "" : CRK_CD2[i]
  279. .substring(2, CRK_CD2[i].length()));
  280. param1.setValueParamter(17,
  281. CRK_CD3[i].length() == 0 ? "" : CRK_CD3[i]
  282. .substring(0, 2));
  283. param1.setValueParamter(18,
  284. CRK_CD3[i].length() == 0 ? "" : CRK_CD3[i]
  285. .substring(2, CRK_CD3[i].length()));
  286. param1.setValueParamter(19,
  287. CRK_CD4[i].length() == 0 ? "" : CRK_CD4[i]
  288. .substring(0, 2));
  289. param1.setValueParamter(20,
  290. CRK_CD4[i].length() == 0 ? "" : CRK_CD4[i]
  291. .substring(2, CRK_CD4[i].length()));
  292. param1.setValueParamter(21, C);
  293. param1.setValueParamter(22, MN);
  294. param1.setValueParamter(23, S);
  295. param1.setValueParamter(24, P);
  296. param1.setValueParamter(25, SI);
  297. param1.setValueParamter(26, CR);
  298. param1.setValueParamter(27, NI);
  299. param1.setValueParamter(28, CU);
  300. param1.setValueParamter(29, MO);
  301. param1.setValueParamter(30, V);
  302. param1.setValueParamter(31, TI);
  303. param1.setValueParamter(32, ALS);
  304. param1.setValueParamter(33, ALT);
  305. param1.setValueParamter(34, NB);
  306. param1.setValueParamter(35, AL);
  307. param1.setValueParamter(36, N);
  308. param1.setValueParamter(37, AS);
  309. param1.setValueParamter(38, SN);
  310. param1.setValueParamter(39, CA);
  311. param1.setValueParamter(40, B);
  312. param1.setValueParamter(41, PB);
  313. param1.setValueParamter(42, ZN);
  314. param1.setValueParamter(43, XTZ);
  315. param1.setValueParamter(44, LA);
  316. param1.setValueParamter(45, SB);
  317. param1.setValueParamter(46, SE);
  318. param1.setValueParamter(47, MG);
  319. param1.setValueParamter(48, CD);
  320. param1.setValueParamter(49, O);
  321. param1.setValueParamter(50, H);
  322. param1.setValueParamter(51, FE);
  323. param1.setValueParamter(52, CS);
  324. param1.setValueParamter(53, ZR);
  325. param1.setValueParamter(54, PSR);
  326. param1.setValueParamter(55, W);
  327. param1.setValueParamter(56, hcrClf[i]);
  328. param1.setValueParamter(57, dsnSlabNo[i]);
  329. param1.setValueParamter(58, L2AS);
  330. param1.setValueParamter(59, BI);
  331. param1.setValueParamter(60, CC_DEVNO);
  332. getDao("mesdao").insert("UIG040090_01.insert", param1);
  333. // 打印日志
  334. PosSiteLog.writeLog(context, getDao("mesdao"),
  335. "UIG040090_01.insert", param1
  336. .getValueParameters());
  337. // 更新表TBG02_SLAB_COMM,这里不传入板坯瑕疵信息。板坯公共表的瑕疵信息字段可能在别的地方使用。
  338. PosParameter param0 = new PosParameter();
  339. param0.setWhereClauseParameter(0, PLT_TRS_CAR_NO[i]);
  340. param0.setWhereClauseParameter(1, PLT_TRS_INVOICE_NO[i] + PLT_TRS_INVOICE_NO_MANUAL[i]);
  341. param0.setWhereClauseParameter(2,PLT_PLANT_ARRV_LOC[i]);
  342. param0.setWhereClauseParameter(3, PLT_TRS_WKSHIFT[i]);
  343. param0.setWhereClauseParameter(4, PLT_TRS_WKGROUP[i]);
  344. param0.setWhereClauseParameter(5, PLT_TRS_EMP_ID[i]);
  345. param0.setWhereClauseParameter(6, SLAB_NO[i]);
  346. // 从维护的公共表查出数据,供更新页面使用
  347. getDao("mesdao").update("UIG040090_02.update", param0);
  348. param0 = new PosParameter();
  349. param0.setWhereClauseParameter(0, SLAB_NO[i]);
  350. getDao("mesdao").update("UIG040090_SLAB_YARD.update",
  351. param0);
  352. /*
  353. * try { cstm =
  354. * getDao("mesdao").getCallableStatement("UIG040090_01.CALL"
  355. * ); cstm.setString(1, SLAB_NO[i]);
  356. * cstm.registerOutParameter(2,
  357. * java.sql.Types.VARBINARY); //cstm.execute();
  358. * }catch(Exception ex) { ex.printStackTrace(); }
  359. * finally { if(cstm != null) { try { cstm.close(); }
  360. * catch(Exception e) { e.printStackTrace(); } } }
  361. *
  362. * BigDecimal SlabWgt = new BigDecimal(SLAB_WGT[i]);
  363. *
  364. *
  365. * //SendProg_NIE012070(SLAB_NO[i],"","","","","RGF","RGB"
  366. * ,"TM",SlabWgt); //SendProg_NIE012080();
  367. */
  368. // 打印日志
  369. PosSiteLog.writeLog(context, getDao("mesdao"),
  370. "UIG040090_01.update", param0
  371. .getValueParameters());
  372. /*财务数据上抛*/
  373. try{
  374. cstm = this.getDao("mesdao").getCallableStatement("UPLOAD_DATA.CAL");
  375. cstm.setString(1, SLAB_NO[i]);
  376. cstm.setString(2, "55A");
  377. cstm.setString(3, "N");
  378. cstm.setString(4, "板坯移送中厚板");
  379. cstm.setString(5, StringUtils.isBlank(PLT_TRS_EMP_NM[0])?"3qAdmin00":PLT_TRS_EMP_NM[0]);
  380. cstm.registerOutParameter(6, java.sql.Types.VARCHAR);
  381. cstm.execute();
  382. String err = cstm.getString(6);
  383. if(!org.apache.commons.lang.StringUtils.isBlank(cstm.getString(6))){
  384. context.put("MESSAGES","数据上传失败:" + err);
  385. }
  386. }catch (Exception e) {
  387. // TODO: handle exception
  388. }finally{
  389. if (cstm != null){
  390. try{
  391. cstm.close();
  392. }
  393. catch (SQLException e){
  394. logger.logWarn(e.getMessage(), e);
  395. }
  396. }
  397. }
  398. } else {
  399. logger.logDebug("UIG040090,查询tbb02_work_ingr表,炉次没有相应的成分信息!");
  400. String vtemp = " 缺少炉次成份信息 !";
  401. context.put("MESSAGES", vtemp);
  402. }
  403. }
  404. }
  405. }
  406. return PosBizControlConstants.SUCCESS;
  407. }
  408. public PosContext SendProg_NIE012070(String MatNo, String sOrdNo,
  409. String sOrdSeq, String sBefOrdNo, String sBefOrdSeq,
  410. String sProgCd, String BefProcCd, String sKind, BigDecimal nwgt) {
  411. PosContext context = new PosContext();
  412. PosMessage message = new PosMESMessageImpl();
  413. String TcId = "NIE012070";
  414. message.setTCID(TcId);
  415. message.setObject("MSG_ID", TcId);
  416. message.setObject("BEF_ORD_NO", sBefOrdNo);
  417. message.setObject("BEF_ORD_SEQ", sBefOrdSeq);
  418. message.setObject("ORD_NO", sOrdNo);
  419. message.setObject("ORD_SEQ", sOrdSeq);
  420. message.setObject("BEF_PROG_CD", BefProcCd);
  421. message.setObject("PROG_CD", sProgCd);
  422. message.setObject("MAT_TYPE", sKind);
  423. message.setObject("MAT_NO", MatNo);
  424. message.setObject("WGT", nwgt);
  425. message.setObject("PGMID", "UIG040090");
  426. message.setObject("REG_ID", "UIG040090");
  427. message.setTCID(TcId);
  428. context.setMessage(message);
  429. // this.processComponent(PosConstants.CREATE_MESSAGE, context);
  430. // String transactionCode = context.getMessage().getTC();
  431. String SERVICE_POSTFIX = "-service";
  432. context
  433. .put(PosBizControlConstants.SERVICE_NAME, TcId
  434. + SERVICE_POSTFIX);
  435. // context.setMessage(message);
  436. PosBizControlIF controller = PosBizProvider.getController();
  437. controller.doSubController(context, false);
  438. return null;
  439. }
  440. public String SendProg_NIE012080() {
  441. PosContext context = new PosContext();
  442. PosMessage message = new PosMESMessageImpl();
  443. String TcId = "NIE012080";
  444. message.setTCID(TcId);
  445. message.setObject("MSG_ID", TcId);
  446. message.setObject("AA", null);
  447. context.setMessage(message);
  448. message.setTCID(TcId);
  449. String SERVICE_POSTFIX = "-service";
  450. context
  451. .put(PosBizControlConstants.SERVICE_NAME, TcId
  452. + SERVICE_POSTFIX);
  453. PosBizProvider.getController().doSubController(context, false);
  454. String SERVICE_ERR_MSG = (String) context.get("SERVICE_ERR_MSG");
  455. logger.logInfo("PosSaveSlabCutting SendProg_NIE012080 SERVICE_ERR_MSG:"
  456. + SERVICE_ERR_MSG);
  457. if (SERVICE_ERR_MSG != null) {
  458. throw new PosException(SERVICE_ERR_MSG);
  459. }
  460. return null;
  461. }
  462. }