FrmBaseInfoMerge.xml 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <queryMap desc = "合并检验单管理">
  3. <query id = "FrmBaseInfoMerge.doQueryBaseInfo" desc = "查询检验单">
  4. SELECT DISTINCT
  5. T.CHECK_NO,
  6. LOT_NO,
  7. STOVE_NO,
  8. HEAT_NO,
  9. STEEL_GRADE,
  10. STEEL_NO,
  11. PRODUCT_STD,
  12. CONTRACT_NO,
  13. CHECK_COUNT,
  14. DIMATER,
  15. HEIGHT,
  16. DIMATER || '*' || HEIGHT SPEC_NAME,
  17. CRAFT_FILE_NO,
  18. CRAFT_PATH,
  19. PRODUCT_NAME,
  20. BUCKLE_TYPE,
  21. PROCESS_STATUS,
  22. DECODE(ISPRODUCER, '0', '否', '1', '是') AS ISPRODUCER,
  23. SPEC_REQ,
  24. IS_RUSH,
  25. RUSH_NAME,
  26. RUSH_TIME,
  27. CONSIGN_DEPT,
  28. CONSIGN_NAME,
  29. CONSIGN_TIME,
  30. GET_NAME,
  31. GET_TIME,
  32. CONSIGNDEPT_SEND_NAME,
  33. CONSIGNDEPT_SEND_TIME,
  34. JG_RECEIVE_NAME,
  35. JG_RECEIVE_TIME,
  36. T.FLAG,
  37. DECODE(T.FLAG, '0', '委托单位未下发', '1', '委托单位已下发', '2', '加工已确认') AS FLAG_DESC,
  38. T.SAMPLE_REMARK,
  39. T.REMARK,
  40. T.MERGER_NO,
  41. MAX(S.MERG_NAME)MERG_NAME,
  42. MAX(S.MERG_TIME)MERG_TIME
  43. FROM PIPE_CHECKCONSIGN_BASEINFO T, PIPE_CHECKCONSIGN_DETAIL S
  44. WHERE T.CHECK_NO = S.CHECK_NO
  45. AND T.PROCESS_CODE = 'F'
  46. AND T.CHECK_COUNT = '0'
  47. AND S.RATE = '408603'
  48. AND S.SSC_CONDITION = '409902'
  49. </query>
  50. <query id = "FrmBaseInfoMerge.doQueryBaseInfoDetial" desc = "查询检验批SSC">
  51. SELECT T.CHECK_NO,
  52. LOT_NO,
  53. STOVE_NO,
  54. HEAT_NO,
  55. STEEL_GRADE,
  56. STEEL_NO,
  57. PRODUCT_STD,
  58. CONTRACT_NO,
  59. CHECK_COUNT,
  60. DIMATER,
  61. HEIGHT,
  62. DIMATER || '*' || HEIGHT SPEC_NAME,
  63. CRAFT_FILE_NO,
  64. CRAFT_PATH,
  65. PRODUCT_NAME,
  66. BUCKLE_TYPE,
  67. PROCESS_STATUS,
  68. DECODE(ISPRODUCER, '0', '否', '1', '是') AS ISPRODUCER,
  69. SPEC_REQ,
  70. IS_RUSH,
  71. RUSH_NAME,
  72. RUSH_TIME,
  73. CONSIGN_DEPT,
  74. CONSIGN_NAME,
  75. CONSIGN_TIME,
  76. MAX(T.SAMPLE_REMARK)SAMPLE_REMARK,
  77. MAX(T.REMARK)REMARK,
  78. S.BATCH_NO,
  79. MAX(S.MERG_NAME)MERG_NAME,
  80. MAX(S.MERG_TIME)MERG_TIME
  81. FROM PIPE_CHECKCONSIGN_BASEINFO T, PIPE_CHECKCONSIGN_DETAIL S
  82. WHERE T.CHECK_NO = S.CHECK_NO
  83. AND T.PROCESS_CODE = 'F'
  84. AND T.CHECK_COUNT = '0'
  85. AND S.RATE = '408602'
  86. AND S.SSC_CONDITION = '409902'
  87. </query>
  88. <query id = "FrmBaseInfoMerge.selectDetialFlag" desc = "查询是否硬度值都已报出并判定">
  89. SELECT COUNT(1) ACOUNT
  90. FROM QCM_ZC_CHECKCONSIGN_DETAIL T
  91. WHERE T.CHECK_NO = '#CHECK_NO#'
  92. AND T.VALIDFLAG = '1'
  93. AND T.NK_RESULT IS NULL
  94. </query>
  95. <query id = "FrmBaseInfoMerge.selectDetialFlag1" desc = "查询是否硬度值都已报出">
  96. SELECT COUNT(1) ACOUNT
  97. FROM QCM_ZC_CHECKCONSIGN T
  98. WHERE T.JUDGE_RESULT_CODE IS NULL
  99. AND T.CHECK_NO = '#CHECK_NO#'
  100. AND T.JUDGE_STOVE_NO = '#HEAT_NO#'
  101. AND T.BATCH_NO = '#BATCH_NO#'
  102. </query>
  103. <query id = "FrmBaseInfoMerge.selectQcmBcPhy" desc = "查询是否存在不合取复样的">
  104. SELECT COUNT(1) ACOUNT
  105. FROM QCM_ZC_CHECKCONSIGN T
  106. WHERE T.CHECK_NO = '#CHECK_NO#'
  107. AND T.APPLY_RESAMPLE = '1'
  108. </query>
  109. <!--SELECT COUNT(1)ACOUNT
  110. FROM QCM_ZC_CHECKCONSIGN T, QCM_BC_PHYJUDGE S, QCM_BC_PHYRESULT S1
  111. WHERE T.CHECK_NO = S.SAMPLE_ID
  112. AND T.JUDGE_STOVE_NO = S.JUDGE_STOVE_NO
  113. AND T.BATCH_NO = S.BATCH_NO
  114. AND S.PHY_JUDGE_ID = S1.PHY_RESULT_ID
  115. AND S.JUDGE_SEQ = S1.PHY_RESULT_SEQ
  116. AND S.VALIDFLAG = '1'
  117. AND T.CHECK_NO = '#CHECK_NO#'
  118. AND (T.RESAMPLE = '1' OR S1.NK_TOL_QUALIFIED = '0')
  119. -->
  120. <query id = "FrmBaseInfoMerge.selectQcmBcPhySSC" desc = "查询是否存在不合取复样的">
  121. SELECT NVL(COUNT(1), 0) ACOUNT
  122. FROM QCM_ZC_CHECKCONSIGN T
  123. WHERE T.CHECK_NO = '#CHECK_NO#'
  124. AND T.JUDGE_RESULT_CODE = '40740704'
  125. AND T.RESAMPLE = '1'
  126. AND T.JUDGE_STOVE_NO = '#HEAT_NO#'
  127. AND T.BATCH_NO = '#BATCH_NO#'
  128. </query>
  129. <query id = "FrmBaseInfoMerge.selectBatchNoPhy" desc = "查询合格向下批号">
  130. <![CDATA[
  131. SELECT T.BATCH_NO
  132. FROM QCM_ZC_CHECKCONSIGN_DETAIL T
  133. WHERE (T.CHECK_NO = '#CHECK_NO#' OR T.CHECK_NO like '%#CHECK_NO#')
  134. AND T.VALIDFLAG = '1'
  135. AND T.NK_RESULT = '1'
  136. AND T.PHY_CODE_MAX <> 'HX'
  137. AND T.PHY_CODE_MAX <> 'ONH'
  138. AND T.JF_RESULT = '1'
  139. GROUP BY T.BATCH_NO
  140. ]]>
  141. </query>
  142. <query id = "FrmBaseInfoMerge.selectBatchNoPhySSC" desc = "查询该批下是否存在SSC试验">
  143. SELECT NVL(COUNT(1),0)ACOUNT
  144. FROM PIPE_CHECKCONSIGN_DETAIL T
  145. WHERE T.CHECK_NO like '%#CHECK_NO#'
  146. --T.CHECK_NO = '#CHECK_NO#'
  147. AND T.BATCH_NO = ?
  148. AND T.PHY_CODE_MAX IN('C0030','C0031','C0032','C0033','C0133')
  149. </query>
  150. <query id = "FrmBaseInfoMerge.selectLsMaxCode" desc = "查询单号下检验的哪种硬度">
  151. SELECT T.PHY_CODE_MAX
  152. FROM PIPE_CHECKCONSIGN_DETAIL T
  153. WHERE T.CHECK_NO like '%#CHECK_NO#'
  154. --T.CHECK_NO = '#CHECK_NO#'
  155. AND T.PHY_CODE_MAX IN('C0107','C0103','C0100','C0004')
  156. GROUP BY T.PHY_CODE_MAX
  157. </query>
  158. <query id = "FrmBaseInfoMerge.selectLsMaxCode1" desc = "查询单号下检验的哪种硬度">
  159. SELECT T.PHY_CODE_MAX
  160. FROM PIPE_CHECKCONSIGN_DETAIL T
  161. WHERE T.CHECK_NO = '#CHECK_NO#'
  162. AND T.BATCH_NO = '#BATCH_NO#'
  163. AND T.PHY_CODE_MAX IN('C0107','C0103','C0100','C0004')
  164. GROUP BY T.PHY_CODE_MAX
  165. </query>
  166. <query id = "FrmBaseInfoMerge.selectLsValue" desc = "查询洛氏硬度下所有值">
  167. SELECT *
  168. FROM (SELECT CHECK_NO, SAMPLE_NO, BATCH_NO, SUM(VALUE1) VALUE1
  169. FROM (SELECT T.*,
  170. RANK() OVER(ORDER BY VALUE1 DESC) RK,
  171. RANK() OVER(PARTITION BY SAMPLE_NO ORDER BY ROWNUM) RK2
  172. FROM (SELECT T.CHECK_NO,
  173. T.SAMPLE_NO,
  174. T.BATCH_NO,
  175. TO_NUMBER(NVL(VALUE1, 0)) VALUE1
  176. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  177. WHERE 1 = 1 #STR# #STRBATCH_NO#
  178. UNION ALL
  179. SELECT T.CHECK_NO,
  180. T.SAMPLE_NO,
  181. T.BATCH_NO,
  182. TO_NUMBER(NVL(VALUE2, 0)) VALUE1
  183. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  184. WHERE 1 = 1 #STR# #STRBATCH_NO#
  185. UNION ALL
  186. SELECT T.CHECK_NO,
  187. T.SAMPLE_NO,
  188. T.BATCH_NO,
  189. TO_NUMBER(NVL(VALUE3, 0)) VALUE1
  190. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  191. WHERE 1 = 1 #STR# #STRBATCH_NO#
  192. UNION ALL
  193. SELECT T.CHECK_NO,
  194. T.SAMPLE_NO,
  195. T.BATCH_NO,
  196. TO_NUMBER(NVL(VALUE4, 0)) VALUE1
  197. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  198. WHERE 1 = 1 #STR# #STRBATCH_NO#
  199. ORDER BY SAMPLE_NO, VALUE1 DESC) T)
  200. WHERE RK = 1
  201. OR RK2 = 2
  202. GROUP BY CHECK_NO, SAMPLE_NO, BATCH_NO
  203. ORDER BY VALUE1 DESC)
  204. WHERE ROWNUM = 1
  205. </query>
  206. <query id = "FrmBaseInfoMerge.selectLsValue3" desc = "查询洛氏硬度下所有值">
  207. <![CDATA[
  208. SELECT *
  209. FROM (SELECT CHECK_NO, SAMPLE_NO, BATCH_NO, SUM(VALUE1) VALUE1
  210. FROM (SELECT T.*,
  211. RANK() OVER(ORDER BY VALUE1 DESC) RK,
  212. RANK() OVER(PARTITION BY SAMPLE_NO ORDER BY ROWNUM) RK2
  213. FROM (SELECT T.CHECK_NO,
  214. T.SAMPLE_NO,
  215. T.BATCH_NO,
  216. TO_NUMBER(NVL(VALUE1, 0)) VALUE1
  217. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  218. WHERE 1 = 1 #STR# #STRBATCH_NO# #strSSC1#
  219. UNION ALL
  220. SELECT T.CHECK_NO,
  221. T.SAMPLE_NO,
  222. T.BATCH_NO,
  223. TO_NUMBER(NVL(VALUE2, 0)) VALUE1
  224. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  225. WHERE 1 = 1 #STR# #STRBATCH_NO# #strSSC1#
  226. UNION ALL
  227. SELECT T.CHECK_NO,
  228. T.SAMPLE_NO,
  229. T.BATCH_NO,
  230. TO_NUMBER(NVL(VALUE3, 0)) VALUE1
  231. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  232. WHERE 1 = 1 #STR# #STRBATCH_NO# #strSSC1#
  233. UNION ALL
  234. SELECT T.CHECK_NO,
  235. T.SAMPLE_NO,
  236. T.BATCH_NO,
  237. TO_NUMBER(NVL(VALUE4, 0)) VALUE1
  238. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  239. WHERE 1 = 1 #STR# #STRBATCH_NO# #strSSC1#
  240. ORDER BY SAMPLE_NO, VALUE1 DESC) T)
  241. WHERE RK = 1
  242. OR RK2 = 2
  243. GROUP BY CHECK_NO, SAMPLE_NO, BATCH_NO
  244. ORDER BY VALUE1 DESC)
  245. WHERE ROWNUM <= 1
  246. UNION ALL
  247. SELECT *
  248. FROM (SELECT CHECK_NO, SAMPLE_NO, BATCH_NO, SUM(VALUE1) VALUE1
  249. FROM (SELECT T.*,
  250. RANK() OVER(ORDER BY VALUE1 DESC) RK,
  251. RANK() OVER(PARTITION BY SAMPLE_NO ORDER BY ROWNUM) RK2
  252. FROM (SELECT T.CHECK_NO,
  253. T.SAMPLE_NO,
  254. T.BATCH_NO,
  255. TO_NUMBER(NVL(VALUE1, 0)) VALUE1
  256. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  257. WHERE 1 = 1 #STR# #STRBATCH_NO# #strSSC2#
  258. UNION ALL
  259. SELECT T.CHECK_NO,
  260. T.SAMPLE_NO,
  261. T.BATCH_NO,
  262. TO_NUMBER(NVL(VALUE2, 0)) VALUE1
  263. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  264. WHERE 1 = 1 #STR# #STRBATCH_NO# #strSSC2#
  265. UNION ALL
  266. SELECT T.CHECK_NO,
  267. T.SAMPLE_NO,
  268. T.BATCH_NO,
  269. TO_NUMBER(NVL(VALUE3, 0)) VALUE1
  270. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  271. WHERE 1 = 1 #STR# #STRBATCH_NO# #strSSC2#
  272. UNION ALL
  273. SELECT T.CHECK_NO,
  274. T.SAMPLE_NO,
  275. T.BATCH_NO,
  276. TO_NUMBER(NVL(VALUE4, 0)) VALUE1
  277. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  278. WHERE 1 = 1 #STR# #STRBATCH_NO# #strSSC2#
  279. ORDER BY SAMPLE_NO, VALUE1 DESC) T)
  280. WHERE RK = 1
  281. OR RK2 = 2
  282. GROUP BY CHECK_NO, SAMPLE_NO, BATCH_NO
  283. ORDER BY VALUE1 DESC)
  284. WHERE ROWNUM <= 1
  285. UNION ALL
  286. SELECT *
  287. FROM (SELECT CHECK_NO, SAMPLE_NO, BATCH_NO, SUM(VALUE1) VALUE1
  288. FROM (SELECT T.*,
  289. RANK() OVER(ORDER BY VALUE1 DESC) RK,
  290. RANK() OVER(PARTITION BY SAMPLE_NO ORDER BY ROWNUM) RK2
  291. FROM (SELECT T.CHECK_NO,
  292. T.SAMPLE_NO,
  293. T.BATCH_NO,
  294. TO_NUMBER(NVL(VALUE1, 0)) VALUE1
  295. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  296. WHERE 1 = 1 #STR# #STRBATCH_NO# #strSSC3#
  297. UNION ALL
  298. SELECT T.CHECK_NO,
  299. T.SAMPLE_NO,
  300. T.BATCH_NO,
  301. TO_NUMBER(NVL(VALUE2, 0)) VALUE1
  302. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  303. WHERE 1 = 1 #STR# #STRBATCH_NO# #strSSC3#
  304. UNION ALL
  305. SELECT T.CHECK_NO,
  306. T.SAMPLE_NO,
  307. T.BATCH_NO,
  308. TO_NUMBER(NVL(VALUE3, 0)) VALUE1
  309. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  310. WHERE 1 = 1 #STR# #STRBATCH_NO# #strSSC3#
  311. UNION ALL
  312. SELECT T.CHECK_NO,
  313. T.SAMPLE_NO,
  314. T.BATCH_NO,
  315. TO_NUMBER(NVL(VALUE4, 0)) VALUE1
  316. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  317. WHERE 1 = 1 #STR# #STRBATCH_NO# #strSSC3#
  318. ORDER BY SAMPLE_NO, VALUE1 DESC) T)
  319. WHERE RK = 1
  320. OR RK2 = 2
  321. GROUP BY CHECK_NO, SAMPLE_NO, BATCH_NO
  322. ORDER BY VALUE1 DESC)
  323. WHERE ROWNUM <= 1
  324. ]]>
  325. </query>
  326. <query id = "FrmBaseInfoMerge.UpdateDetial" desc = "推送SSC试验">
  327. UPDATE PIPE_CHECKCONSIGN_DETAIL T
  328. SET T.VALIDFLAG = '0',
  329. T.MERG_TIME = SYSDATE,
  330. T.MERG_NAME = '#MERG_NAME#'
  331. WHERE T.CHECK_NO LIKE '%#CHECK_NO#'
  332. --T.CHECK_NO = '#CHECK_NO#'
  333. AND T.SAMPLE_NO = '#SAMPLE_NO#'
  334. AND T.PHY_CODE_MAX IN('C0030','C0033','C0133','C0150')
  335. AND T.VALIDFLAG = '1'
  336. </query>
  337. <query id = "FrmBaseInfoMerge.UpdateQcmDetial" desc = "修改产销标识">
  338. UPDATE QCM_ZC_CHECKCONSIGN_DETAIL T
  339. SET T.VALIDFLAG = '1'
  340. WHERE T.CHECK_NO LIKE '%#CHECK_NO#'
  341. --T.CHECK_NO = '#CHECK_NO#'
  342. AND T.SAMPLE_NO = '#SAMPLE_NO#'
  343. AND T.PHY_CODE_MAX IN ('C0030','C0133','C0033','C0150')
  344. AND T.VALIDFLAG = '0'
  345. </query>
  346. <query id = "FrmBaseInfoMerge.getMergNo" desc = "生成合并单号">
  347. SELECT ? ||
  348. LPAD(NVL(MAX(SUBSTR(T.MERGER_NO, 7)), 0) + 1,3,0) MERGER_NO
  349. FROM PIPE_CHECKCONSIGN_BASEINFO T
  350. WHERE T.HEAT_NO = ?
  351. AND T.PROCESS_CODE = ?
  352. </query>
  353. <query id= "FrmBaseInfoMerge.UpdateBaseinfoMergeNo" desc = "修改委托合并单号">
  354. UPDATE PIPE_CHECKCONSIGN_BASEINFO T SET T.MERGER_NO = '#MERGER_NO#' WHERE T.CHECK_NO like '%#CHECK_NO#'
  355. </query>
  356. <query id = "FrmBaseInfoMerge.selectDetialSScFlag" desc = "查询并单SSC状态">
  357. SELECT T.FLAG
  358. FROM PIPE_CHECKCONSIGN_DETAIL T
  359. WHERE T.CHECK_NO = '#CHECK_NO#'
  360. AND T.SSC_CONDITION = '409902'
  361. </query>
  362. <query id = "FrmBaseInfoMerge.UpdateDetialSscValueFlag" desc = "修改有效标识">
  363. DECLARE
  364. BEGIN
  365. UPDATE PIPE_CHECKCONSIGN_DETAIL T
  366. SET T.VALIDFLAG = '1', T.MERG_NAME = '', T.MERG_TIME = ''
  367. WHERE T.CHECK_NO = '#CHECK_NO#'
  368. AND T.SSC_CONDITION = '409902'
  369. AND T.VALIDFLAG = '0';
  370. UPDATE PIPE_CHECKCONSIGN_DETAIL T
  371. SET T.VALIDFLAG = '1', T.MERG_NAME = '', T.MERG_TIME = ''
  372. WHERE T.CHECK_NO = 'F'||'#CHECK_NO#'
  373. AND T.SSC_CONDITION = '409902'
  374. AND T.VALIDFLAG = '0';
  375. UPDATE PIPE_CHECKCONSIGN_BASEINFO T
  376. SET T.MERGER_NO = ''
  377. WHERE T.CHECK_NO = '#CHECK_NO#';
  378. END;
  379. </query>
  380. <query id= "FrmBaseInfoMerge.UpdateQcmDetialValueFlag" desc = "产销二层置无效">
  381. UPDATE QCM_ZC_CHECKCONSIGN_DETAIL T
  382. SET T.VALIDFLAG = '0'
  383. WHERE T.CHECK_NO = '#CHECK_NO#'
  384. --AND T.SAMPLE_NO = '#SAMPLE_NO#'
  385. AND T.VALIDFLAG = '1'
  386. AND T.PHY_CODE_MAX IN('C0030','C0031','C0032','C0033','C0133','C0147','C0150')
  387. AND T.NK_RESULT IS NULL
  388. </query>
  389. <query id = "FrmBaseInfoMerge.doQueryQcmDetail" descc = "查询理化性能数据">
  390. SELECT
  391. T.CHECK_NO,
  392. T.BATCH_NO,
  393. T.SAMPLE_NO,
  394. T.PHY_CODE_MAX,
  395. T.PHY_NAME_MAX,
  396. T.RATE,
  397. T.DESC_RATE,
  398. DECODE(T.NK_RESULT,'0','内控不合','1','内控合格','内控未判')NK_RESULT,
  399. DECODE(T.JF_RESULT,'0','交付不合','1','交付合格','交付未判')JF_RESULT
  400. FROM QCM_ZC_CHECKCONSIGN_DETAIL T
  401. WHERE T.CHECK_NO = ?
  402. AND T.VALIDFLAG = '1'
  403. AND T.PHY_CODE_MAX NOT IN('HX','ONH')
  404. </query>
  405. <query id = "FrmBaseInfoMerge.selectSampleNo1" desc = "查询该检验单1/3处试样号">
  406. <![CDATA[
  407. SELECT SAMPLE_NO
  408. FROM (SELECT T.SAMPLE_NO, RANK() OVER(ORDER BY SAMPLE_NO) RK
  409. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  410. WHERE T.PHY_CODE_MAX IN ('C0030', 'C0033', 'C0133', 'C0150') #STR#
  411. #STRBATCH_NO#
  412. ORDER BY T.SAMPLE_NO)
  413. WHERE RK =
  414. CEIL((SELECT COUNT(1)
  415. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  416. WHERE T.PHY_CODE_MAX IN ('C0030', 'C0033', 'C0133', 'C0150')
  417. #STR# #STRBATCH_NO#) / 3)
  418. ]]>
  419. </query>
  420. <query id = "FrmBaseInfoMerge.selectSampleNo2" desc = "查询该检验单2/3处试样号">
  421. <![CDATA[
  422. SELECT SAMPLE_NO
  423. FROM (SELECT T.SAMPLE_NO, RANK() OVER(ORDER BY SAMPLE_NO) RK
  424. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  425. WHERE T.PHY_CODE_MAX IN ('C0030', 'C0033', 'C0133', 'C0150') #STR#
  426. #STRBATCH_NO#
  427. ORDER BY T.SAMPLE_NO)
  428. WHERE RK =
  429. CEIL(2*(SELECT COUNT(1)
  430. FROM PIPE_CHECKCONSIGN_PHYDETAIL T
  431. WHERE T.PHY_CODE_MAX IN ('C0030', 'C0033', 'C0133', 'C0150')
  432. #STR# #STRBATCH_NO#) / 3)
  433. ]]>
  434. </query>
  435. <query id = "FrmBaseInfoMerge.selectSampleNoNew" desc = "查询该检验单所有试样号">
  436. <![CDATA[
  437. SELECT *
  438. FROM PIPE_CHECKCONSIGN_DETAIL T where T.PHY_CODE_MAX IN ('C0030', 'C0033', 'C0133', 'C0150') #STR#
  439. #STRBATCH_NO#
  440. --ORDER BY SAMPLE_NO
  441. union
  442. SELECT *
  443. FROM PIPE_CHECKCONSIGN_DETAIL T where T.PHY_CODE_MAX IN ('C0030', 'C0033', 'C0133', 'C0150') #STR1#
  444. #STRBATCH_NO#
  445. ]]>
  446. </query>
  447. <query id = "FrmBaseInfoMerge.selectSampleNo1New" desc = "查询该检验单1/3处试样号">
  448. <![CDATA[
  449. WITH total_rows AS (
  450. SELECT COUNT(*) AS total,FLOOR(COUNT(*) / 3) AS base_group_size,MOD(COUNT(*), 3) AS remainder FROM PIPE_CHECKCONSIGN_DETAIL T where T.PHY_CODE_MAX IN ('C0030', 'C0033', 'C0133', 'C0150') #STR#
  451. #STRBATCH_NO#
  452. ),
  453. group_bounds AS (
  454. SELECT
  455. total,
  456. FLOOR(total / 3) AS base_group_size,
  457. MOD(total, 3) AS remainder,
  458. CASE
  459. WHEN MOD(total, 3) = 0 THEN FLOOR(total / 3)
  460. WHEN MOD(total, 3) = 1 THEN FLOOR(total / 3)
  461. ELSE FLOOR(total / 3) + 1
  462. END AS group1_end
  463. FROM total_rows
  464. )
  465. SELECT *
  466. FROM PIPE_CHECKCONSIGN_DETAIL T where T.PHY_CODE_MAX IN ('C0030', 'C0033', 'C0133', 'C0150') #STR#
  467. #STRBATCH_NO#
  468. AND ROWNUM <= (SELECT group1_end FROM group_bounds)
  469. ORDER BY SAMPLE_NO
  470. ]]>
  471. </query>
  472. <query id = "FrmBaseInfoMerge.selectSampleNo2New" desc = "查询该检验单2/3处试样号">
  473. <![CDATA[
  474. WITH total_rows AS (
  475. SELECT COUNT(*) AS total,FLOOR(COUNT(*) / 3) AS base_group_size,MOD(COUNT(*), 3) AS remainder FROM PIPE_CHECKCONSIGN_DETAIL T where T.PHY_CODE_MAX IN ('C0030', 'C0033', 'C0133', 'C0150') #STR#
  476. #STRBATCH_NO#
  477. ),
  478. group_bounds AS (
  479. SELECT
  480. total,
  481. FLOOR(total / 3) AS base_group_size,
  482. MOD(total, 3) AS remainder,
  483. CASE
  484. WHEN MOD(total, 3) = 0 THEN FLOOR(total / 3)
  485. WHEN MOD(total, 3) = 1 THEN FLOOR(total / 3)
  486. ELSE FLOOR(total / 3) + 1
  487. END AS group1_end
  488. FROM total_rows
  489. )
  490. SELECT *
  491. FROM (select t.*,ROWNUM RN from PIPE_CHECKCONSIGN_DETAIL t where T.PHY_CODE_MAX IN ('C0030', 'C0033', 'C0133', 'C0150') #STR#
  492. #STRBATCH_NO#)
  493. where RN > (select group1_end from group_bounds) and RN <= (select group1_end from group_bounds)*2
  494. ]]>
  495. </query>
  496. <query id = "FrmBaseInfoMerge.selectSampleNo3New" desc = "查询该检验单2/3处试样号">
  497. <![CDATA[
  498. WITH total_rows AS (
  499. SELECT COUNT(*) AS total,FLOOR(COUNT(*) / 3) AS base_group_size,MOD(COUNT(*), 3) AS remainder FROM PIPE_CHECKCONSIGN_DETAIL T where T.PHY_CODE_MAX IN ('C0030', 'C0033', 'C0133', 'C0150') #STR#
  500. #STRBATCH_NO#
  501. ),
  502. group_bounds AS (
  503. SELECT
  504. total,
  505. FLOOR(total / 3) AS base_group_size,
  506. MOD(total, 3) AS remainder,
  507. CASE
  508. WHEN MOD(total, 3) = 0 THEN FLOOR(total / 3)
  509. WHEN MOD(total, 3) = 1 THEN FLOOR(total / 3)
  510. ELSE FLOOR(total / 3) + 1
  511. END AS group1_end
  512. FROM total_rows
  513. )
  514. SELECT *
  515. FROM (select t.*,ROWNUM RN from PIPE_CHECKCONSIGN_DETAIL t where T.PHY_CODE_MAX IN ('C0030', 'C0033', 'C0133', 'C0150') #STR#
  516. #STRBATCH_NO#)
  517. where RN > (select group1_end from group_bounds)*2
  518. ]]>
  519. </query>
  520. <query id = "FrmBaseInfoMerge.selectMaxValue" desc = "查询最大值">
  521. <![CDATA[
  522. select max(CHECK_NO) CHECK_NO, SAMPLE_NO, max(BATCH_NO) BATCH_NO, AVERAGE_VALUE,max(PHYDETAIL_ID) PHYDETAIL_ID
  523. from pipe_checkconsign_phydetail
  524. where average_value = (select max(to_number(average_value))
  525. from pipe_checkconsign_phydetail
  526. where 1=1 #STR# #STRBT#
  527. and phy_code not in ('P0298',
  528. 'P0398',
  529. 'P0399',
  530. 'P0400',
  531. 'P0514',
  532. 'P0515',
  533. 'P0516')
  534. #STRSMP# and PHYDETAIL_ID NOT IN ('xxx' #STRVALUE# )
  535. )
  536. #STR# #STRBT#
  537. and phy_code not in
  538. ('P0298', 'P0398', 'P0399', 'P0400', 'P0514', 'P0515', 'P0516')
  539. #STRSMP#
  540. and PHYDETAIL_ID NOT IN ('xxx' #STRVALUE# ) group by AVERAGE_VALUE,sample_no
  541. UNION
  542. select max(CHECK_NO) CHECK_NO, SAMPLE_NO, max(BATCH_NO) BATCH_NO, AVERAGE_VALUE,max(PHYDETAIL_ID) PHYDETAIL_ID
  543. from pipe_checkconsign_phydetail
  544. where average_value = (select max(to_number(average_value))
  545. from pipe_checkconsign_phydetail
  546. where 1=1 #STR# #STRBT#
  547. and phy_code not in ('P0298',
  548. 'P0398',
  549. 'P0399',
  550. 'P0400',
  551. 'P0514',
  552. 'P0515',
  553. 'P0516')
  554. #STRSMP# and PHYDETAIL_ID NOT IN ('xxx' #STRVALUE# )
  555. )
  556. #STR# #STRBT#
  557. and phy_code not in
  558. ('P0298', 'P0398', 'P0399', 'P0400', 'P0514', 'P0515', 'P0516')
  559. #STRSMP#
  560. and PHYDETAIL_ID NOT IN ('xxx' #STRVALUE# ) group by AVERAGE_VALUE,sample_no
  561. ]]>
  562. </query>
  563. </queryMap>