PipSawFast.xml 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <queryMap desc="快速分切操作">
  3. <query id="PipSawFast.Addsawdeatail" desc="插入sawdeatail">
  4. INSERT INTO MIL_SAW_RESULT_DEATIL(
  5. ROW_NO,
  6. LOT_NO,
  7. STOVE_NO,
  8. JUDGE_STOVE_NO,
  9. PLINE_CODE,
  10. SAW_NO,
  11. SAW_NO_N,
  12. ROW_COUNT,
  13. ORDER_LENGTH,
  14. CUT_HEAD_LENGTH,
  15. CUT_TRAIL_LENGTH,
  16. CUT_HEAD_LENGTH_TOTAL,
  17. CUT_TRAIL_LENGTH_TOTAL,
  18. COL_MODE,
  19. COL_TIME,
  20. COL_USER,
  21. COL_SHIFT,
  22. COL_GROUP,
  23. SAW_FLAG)
  24. VALUES(
  25. '#ROW_NO#',
  26. '#LOT_NO#',
  27. '#STOVE_NO#',
  28. '#JUDGE_STOVE_NO#',
  29. '#PLINE_CODE#',
  30. '#SAW_NO#',
  31. '#SAW_NO_N#',
  32. '#ROW_COUNT#',
  33. '#ORDER_LENGTH#',
  34. '#CUT_HEAD_LENGTH#',
  35. '#CUT_TRAIL_LENGTH#',
  36. '#CUT_HEAD_LENGTH_TOTAL#',
  37. '#CUT_TRAIL_LENGTH_TOTAL#',
  38. '#COL_MODE#',
  39. SYSDATE,
  40. '#COL_USER#',
  41. '#COL_SHIFT#',
  42. '#COL_GROUP#',
  43. '#SAW_FLAG#')
  44. </query>
  45. <query id="PipSawFast.UpdateSawRack" desc="更新管号队列">
  46. UPDATE MIL_SAW_RACK
  47. SET
  48. ROW_NO = '#ROW_NO#',
  49. ORDER_LENGTH = '#ORDER_LENGTH#',
  50. CUT_HEAD_LENGTH = '#CUT_HEAD_LENGTH#',
  51. CUT_TRAIL_LENGTH = '#CUT_TRAIL_LENGTH#',
  52. SAW_NO = '#SAW_NO#',
  53. SAW_NO_N = '#SAW_NO_N#'
  54. WHERE
  55. 1=1
  56. AND JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  57. AND Row_No is null
  58. AND STATUS='0'
  59. AND ROWNUM between '1' AND '#ROW_COUNT#'
  60. </query>
  61. <query id = "PipSawFast.SelectsawdeatailNEW" desc = "查询是否已切头">
  62. SELECT COUNT(1) ACOUNT
  63. FROM MIL_SAW_RESULT_DEATIL T
  64. WHERE T.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  65. AND NVL(T.PRO_PLAN_ID,'/') = NVL('#PRO_PLAN_ID#','/')
  66. AND NVL(T.GX_PLAN_NO,'/') = NVL('#GX_PLAN_NO#','/')
  67. </query>
  68. <query id = "PipSawFast.UpdatesawdeatailNEW" desc = "修改切头长度">
  69. UPDATE MIL_SAW_RESULT_DEATIL T
  70. SET T.CUT_HEAD_LENGTH = '#CUT_HEAD_LENGTH#',
  71. T.CUT_HEAD_LENGTH_TOTAL = '#CUT_HEAD_LENGTH_TOTAL#',
  72. T.CUT_SPEED = '#CUT_SPEED#',
  73. T.CUT_THICKNESS = '#CUT_THICKNESS#'
  74. WHERE T.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  75. AND NVL(T.PRO_PLAN_ID,'/') = NVL('#PRO_PLAN_ID#','/')
  76. AND NVL(T.GX_PLAN_NO,'/') = NVL('#GX_PLAN_NO#','/')
  77. AND T.PLINE_CODE = '#PLINE_CODE#'
  78. </query>
  79. <query id="PipSawFast.AddsawdeatailNEW" desc="添加分切明细">
  80. INSERT INTO MIL_SAW_RESULT_DEATIL
  81. (ROW_NO,
  82. LOT_NO,
  83. STOVE_NO,
  84. JUDGE_STOVE_NO,
  85. PLINE_CODE,
  86. SAW_NO,
  87. SAW_NO_N,
  88. ROW_COUNT,
  89. CUT_HEAD_LENGTH,
  90. CUT_HEAD_LENGTH_TOTAL,
  91. COL_MODE,
  92. COL_TIME,
  93. COL_USER,
  94. COL_SHIFT,
  95. COL_GROUP,
  96. SAW_FLAG,
  97. PRO_PLAN_ID,
  98. GX_PLAN_NO,
  99. CUT_SPEED,
  100. CUT_THICKNESS)
  101. VALUES
  102. ('#ROW_NO#',
  103. '#LOT_NO#',
  104. '#STOVE_NO#',
  105. '#JUDGE_STOVE_NO#',
  106. '#PLINE_CODE#',
  107. '#SAW_NO#',
  108. '#SAW_NO_N#',
  109. '#ROW_COUNT#',
  110. '#CUT_HEAD_LENGTH#',
  111. '#CUT_HEAD_LENGTH_TOTAL#',
  112. '#COL_MODE#',
  113. SYSDATE,
  114. '#COL_USER#',
  115. '#COL_SHIFT#',
  116. '#COL_GROUP#',
  117. '#SAW_FLAG#',
  118. '#PRO_PLAN_ID#',
  119. '#GX_PLAN_NO#',
  120. '#CUT_SPEED#',
  121. '#CUT_THICKNESS#')
  122. </query>
  123. <query id="PipSawFast.UpdateSawRackNEW" desc="修改分切管号队列">
  124. UPDATE MIL_SAW_RACK
  125. SET ROW_NO = '#ROW_NO#',
  126. CUT_HEAD_LENGTH = '#CUT_HEAD_LENGTH#',
  127. SAW_NO = '#SAW_NO#',
  128. SAW_NO_N = '#SAW_NO_N#'
  129. WHERE 1 = 1
  130. AND JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  131. AND NVL(PRO_PLAN_ID,'/') = NVL('#PRO_PLAN_ID#','/')
  132. AND NVL(GX_PLAN_NO,'/') = NVL('#GX_PLAN_NO#','/')
  133. AND Row_No is null
  134. AND STATUS = '0'
  135. AND ROWNUM between '1' AND '#ROW_COUNT#'
  136. </query>
  137. <query id="PipSawFast.UpdateSawRackNEW1" desc="修改分切管号队列">
  138. UPDATE MIL_SAW_RACK T
  139. SET --ROW_NO = '#ROW_NO#',
  140. CUT_HEAD_LENGTH = '#CUT_HEAD_LENGTH#',
  141. SAW_NO = '#SAW_NO#',
  142. SAW_NO_N = '#SAW_NO_N#'
  143. WHERE 1 = 1
  144. AND JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  145. AND NVL(T.PRO_PLAN_ID,'/') = NVL('#PRO_PLAN_ID#','/')
  146. AND NVL(T.GX_PLAN_NO,'/') = NVL('#GX_PLAN_NO#','/')
  147. AND Row_No is not null
  148. AND STATUS = '0'
  149. --AND ROWNUM between '1' AND '#ROW_COUNT#'
  150. AND ROW_NO = '#ROW_NO#'
  151. </query>
  152. <query id="PipSawFast.AddsawdeatailNEWBACK" desc="明细回退">
  153. DELETE FROM MIL_SAW_RESULT_DEATIL t
  154. WHERE 1 = 1
  155. AND t.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  156. AND NVL(T.PRO_PLAN_ID,'/') = NVL('#PRO_PLAN_ID#','/')
  157. AND NVL(T.GX_PLAN_NO,'/') = NVL('#GX_PLAN_NO#','/')
  158. AND t.SAW_FLAG = '1'
  159. </query>
  160. <query id="PipSawFast.UpdateSawRackNEWBACK" desc="管号队列回退">
  161. UPDATE MIL_SAW_RACK
  162. SET ROW_NO = '', CUT_HEAD_LENGTH = '', SAW_NO = '', SAW_NO_N = ''
  163. WHERE 1 = 1
  164. AND JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  165. AND NVL(PRO_PLAN_ID,'/') = NVL('#PRO_PLAN_ID#','/')
  166. AND NVL(GX_PLAN_NO,'/') = NVL('#GX_PLAN_NO#','/')
  167. AND Row_No is not null
  168. AND STATUS = '0'
  169. </query>
  170. <query id="PipSawFast.UpdatesawdeatailOrder" desc="更新明细定尺长">
  171. UPDATE MIL_SAW_RESULT_DEATIL t
  172. SET t.Order_Length = '#ORDER_LENGTH#'
  173. WHERE 1 = 1
  174. AND JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  175. AND NVL(PRO_PLAN_ID,'/') = NVL('#PRO_PLAN_ID#','/')
  176. AND NVL(GX_PLAN_NO,'/') = NVL('#GX_PLAN_NO#','/')
  177. </query>
  178. <query id="PipSawFast.UpdateSawRackOrder" desc="更新管号队列定尺长">
  179. UPDATE MIL_SAW_RACK t
  180. SET t.Order_Length = '#ORDER_LENGTH#',
  181. t.LAST_ORDER_LENGTH = '#ORDER_LENGTH#'
  182. WHERE 1 = 1
  183. AND t.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  184. AND NVL(T.PRO_PLAN_ID,'/') = NVL('#PRO_PLAN_ID#','/')
  185. AND NVL(T.GX_PLAN_NO,'/') = NVL('#GX_PLAN_NO#','/')
  186. AND Row_No is not null
  187. AND STATUS = '0'
  188. </query>
  189. <query id="PipSawFast.UpdatesawdeatailTail" desc="更新明细尾长">
  190. UPDATE MIL_SAW_RESULT_DEATIL t
  191. SET t.CUT_TRAIL_LENGTH = '#CUT_TRAIL_LENGTH#',
  192. t.CUT_TRAIL_LENGTH_TOTAL = #CUT_TRAIL_LENGTH# * ROW_COUNT / 1000
  193. WHERE 1 = 1
  194. AND JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  195. AND NVL(PRO_PLAN_ID,'/') = NVL('#PRO_PLAN_ID#','/')
  196. AND NVL(GX_PLAN_NO,'/') = NVL('#GX_PLAN_NO#','/')
  197. </query>
  198. <query id="PipSawFast.UpdateSawRackTail" desc="更新管号队列尾长">
  199. UPDATE MIL_SAW_RACK t
  200. SET t.CUT_TRAIL_LENGTH = '#CUT_TRAIL_LENGTH#'
  201. WHERE 1 = 1
  202. AND t.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  203. AND NVL(T.PRO_PLAN_ID,'/') = NVL('#PRO_PLAN_ID#','/')
  204. AND NVL(T.GX_PLAN_NO,'/') = NVL('#GX_PLAN_NO#','/')
  205. AND Row_No is not null
  206. AND STATUS = '0'
  207. </query>
  208. <query id = "updatePortOrderLength.selectPipSize" desc = "查询计划规格">
  209. <![CDATA[
  210. SELECT T.CONTROL_THICKP,
  211. NVL(S.AIMOUTDIAMETER, 0) AIMOUTDIAMETER,
  212. T.VARIETIES,
  213. CASE
  214. WHEN INSTR(T.PIPE_SIZE, '*', -1, 1) > 0 THEN
  215. SUBSTR(T.PIPE_SIZE, 0, INSTR(T.PIPE_SIZE, '*', -1, 1) - 1)
  216. ELSE
  217. SUBSTR(T.PIPE_SIZE, 0, INSTR(T.PIPE_SIZE, 'x', -1, 1) - 1)
  218. END OUTDIAMETER
  219. FROM MIL_PLAN T
  220. LEFT JOIN PLN_ORDER_ZG_S S
  221. ON SUBSTR(T.ORD_LN_DLY_PK, 0, length(T.ORD_LN_DLY_PK) - 3) =
  222. S.ORD_LN_DLY_PK
  223. WHERE T.JUDGE_STOVE_NO = ?
  224. AND T.PRO_PLAN_ID || '&' LIKE '%' || ? || '%'
  225. AND T.GX_PLAN_NO || '&' LIKE '%' || ? || '%'
  226. AND ROWNUM = 1
  227. ]]>
  228. </query>
  229. <query id = "updatePortOrderLength.selectPipSize2" desc = "查询计划规格">
  230. <![CDATA[
  231. SELECT T1.AIMOUTDIAMETER, T1.AIMWALLTHICK
  232. FROM MIL_PLAN T, PLN_ZY_ZG_M T1
  233. WHERE T.ID = T1.HEAT_PLAN_NO(+)
  234. AND T.JUDGE_STOVE_NO = ?
  235. AND T.PRO_PLAN_ID || '&' LIKE '%' || ? || '%'
  236. AND T.GX_PLAN_NO || '&' LIKE '%' || ? || '%'
  237. AND ROWNUM = 1
  238. ]]>
  239. </query>
  240. <query id = "updatePortOrderLength.updateLen" desc = "写进程表长度、重量">
  241. <![CDATA[
  242. UPDATE PORT_MIL_BATCH_SAMPLE_RESULT T
  243. SET T.ORDER_LENGTH = ?,
  244. T.ACT_THEORY_WEIGHT = DECODE(ROUND(TO_NUMBER(?) * TO_NUMBER(?) / 1000,
  245. 3),
  246. '0',
  247. T.INPUT_WEIGHT,
  248. '',
  249. T.INPUT_WEIGHT,
  250. ROUND(TO_NUMBER(?) * TO_NUMBER(?) / 1000,
  251. 3))
  252. WHERE T.JUDGE_STOVE_NO = ?
  253. AND T.PRO_PLAN_ID || '&' LIKE '%' || ? || '%'
  254. AND T.GX_PLAN_NO || '&' LIKE '%' || ? || '%'
  255. ]]>
  256. </query>
  257. <!-- DECLARE
  258. BEGIN
  259. FOR MYROW IN (SELECT T3.SEQ, T3.M_MAT_NO, T.ORDER_LENGTH
  260. FROM (SELECT ROWNUM SEQ, M_MAT_NO
  261. FROM (SELECT T.M_MAT_NO
  262. FROM PORT_MIL_BATCH_SAMPLE_RESULT T
  263. WHERE T.JUDGE_STOVE_NO = ?
  264. AND T.STATUS = '0'
  265. GROUP BY T.M_MAT_NO
  266. ORDER BY T.M_MAT_NO ASC)) T3,
  267. MIL_SAW_RACK T
  268. WHERE T.JUDGE_STOVE_NO = ?
  269. AND T.ORDER_LENGTH IS NOT NULL
  270. AND T.SEQ = T3.SEQ) LOOP
  271. UPDATE PORT_MIL_BATCH_SAMPLE_RESULT T
  272. SET T.ORDER_LENGTH = MYROW.ORDER_LENGTH,
  273. T.ACT_THEORY_WEIGHT = ROUND(TO_NUMBER(?) * TO_NUMBER(MYROW.ORDER_LENGTH)/1000,3) WHERE T.JUDGE_STOVE_NO = ? AND T.M_MAT_NO = MYROW.M_MAT_NO;
  274. END LOOP;
  275. END; -->
  276. <query id ="PipSawFast.doQuerySlabCount" desc = "查询锯切前剔除支数">
  277. <![CDATA[
  278. SELECT SUM(ACOUNT) ACOUNT
  279. FROM (SELECT COUNT(1) ACOUNT
  280. FROM MIL_SLAB_SCRAP_SEQ T
  281. WHERE T.JUDGE_STOVE_NO = ?
  282. AND T.PRO_PLAN_ID || '&' LIKE '%' || ? || '%'
  283. AND T.GX_PLAN_NO || '&' LIKE '%' || ? || '%'
  284. AND T.PROCESS_NO < 7
  285. AND T.PROCESS_NO <> 0
  286. UNION ALL
  287. SELECT SUM(T2.DB_NUM) ACOUNT
  288. FROM MIL_SLAB_SCRAP_SEQ T, MIL_FEED_RACK T2
  289. WHERE T.JUDGE_STOVE_NO = T2.JUDGE_STOVE_NO
  290. AND T.MAT_NO = T2.MAT_NO
  291. AND T.JUDGE_STOVE_NO = ?
  292. AND T.PROCESS_NO = 0
  293. AND T.PRO_PLAN_ID || '&' LIKE '%' || ? || '%'
  294. AND T.GX_PLAN_NO || '&' LIKE '%' || ? || '%')
  295. ]]>
  296. </query>
  297. </queryMap>