FrmSubContractDP.xml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <queryMap desc = "锻造炉计划委外管理">
  3. <query id = "FrmSubContractDP.doQueryPlnZyM" desc = "查询锻造炉计划">
  4. SELECT
  5. T.HEAT_PLAN_NO,
  6. T.GX_PRO_SEQ,
  7. T.ZY_BATCH_ID,
  8. CASE
  9. WHEN T.STOVE_NO IS NULL THEN
  10. (SELECT O.STOVE_NO
  11. FROM PLN_STEELFOR_ORD O
  12. WHERE O.FURNACENO || '/' || O.SEQUENCENO = T.UPPER_HEATPLAN_ID)
  13. ELSE
  14. T.STOVE_NO
  15. END STOVE_NO,
  16. CASE
  17. WHEN T.JUDGE_STOVE_NO IS NULL THEN
  18. (SELECT O.JUDGE_STOVE_NO
  19. FROM PLN_STEELFOR_ORD O
  20. WHERE O.FURNACENO || '/' || O.SEQUENCENO = T.UPPER_HEATPLAN_ID)
  21. ELSE
  22. T.JUDGE_STOVE_NO
  23. END JUDGE_STOVE_NO,
  24. CASE
  25. WHEN T.FLAG_STOVE_NO IS NULL THEN
  26. (SELECT O.FLAG_STOVE_NO
  27. FROM PLN_STEELFOR_ORD O
  28. WHERE O.FURNACENO || '/' || O.SEQUENCENO = T.UPPER_HEATPLAN_ID)
  29. ELSE
  30. T.FLAG_STOVE_NO
  31. END FLAG_STOVE_NO,
  32. T.UPPER_HEATPLAN_ID,
  33. DECODE(T.PLANSTATUS,'00','计划准备','10','计划下发','20','计划生产中','30','计划生产完成','40','计划关闭')PLANSTATUS,
  34. T.NODE_ESTATUS,
  35. T.UPPER_PROCESS_CODE,
  36. T.NEXT_PROCESS_CODE,
  37. DECODE(T.ISENDGX,'0','否','1','是')ISENDGX,
  38. T.IF_MATCH_ODD,
  39. T.IF_DO_HEAT_PLAN,
  40. T.PRO_PLAN_ID,
  41. T.GX_PLAN_NO,
  42. T.CCM_PRO_PLAN_ID,
  43. T.CCM_GX_PLAN_NO,
  44. T.GOWHERE_CODE,
  45. T.GOWHERE_NAME,
  46. T.PLINE_CODE,
  47. T.PLINE_NAME,
  48. T.CASTINGTYPE,
  49. T.GRADECODE,
  50. T.GRADENAME,
  51. T.STEELCODE,
  52. T.STEELNAME,
  53. T.WLID_IN,
  54. T.WLDESC_IN,
  55. T.OUTWL_ID,
  56. T.OUTWL_DESC,
  57. T.PROD_STANDARD,
  58. T.OUTPUT_STANDARD,
  59. T.DIAMETER_IN,
  60. T.LENGTH_IN,
  61. T.WT_ONE_IN,
  62. T.LEN_GP_SINGLE,
  63. T.WT_GP_SINGLE,
  64. T.PLN_INSINGLE_NUM,
  65. T.PLN_INSINGLE_WT,
  66. T.CUT_NUM_GP,
  67. T.PLN_INDOUBLE_NUM,
  68. T.PLN_INDOUBLE_WT,
  69. T.DIAMETER_OUT,
  70. T.LENGTH_OUT,
  71. T.OUT_WT_ONE,
  72. T.PLN_OUTSINGLE_NUM,
  73. T.PLN_OUTSINGLE_W,
  74. T.CUT_NUM_OUT,
  75. T.PLN_OUTDOUBLE_NUM,
  76. T.PLN_OUTDOUBLE_W,
  77. T.LEN_CUTHEAD,
  78. T.LEN_CUTEND,
  79. T.ORDER_SOURCE,
  80. T.ORD_LN_DLY_PK,
  81. T.ORDER_NO,
  82. T.ORDER_SEQ,
  83. T.DELIVERY_NO,
  84. T.REQ_BL_ID,
  85. T.IF_EXPORT,
  86. T.PRIORITY,
  87. T.PRIORITY_MEMO,
  88. T.PRO_MONTH,
  89. T.IF_MONITOR,
  90. T.PRDCR_NO,
  91. T.MONITOR_POINT,
  92. T.BOM,
  93. T.INDEX_SEQ,
  94. T.WHOLE_BACKLOG,
  95. T.WHOLE_BACKLOG_DESC,
  96. T.CIC,
  97. T.PIC,
  98. T.SIC,
  99. T.DIC,
  100. T.CRAFT_FILE_NO,
  101. T.CRAFT_FILE_MAN,
  102. T.CRAFT_SEQ,
  103. T.SEC_CRAFT_FILE_NO,
  104. T.STATION_ROAD,
  105. T.PRO_DAY,
  106. T.BAL_YEAR_MONTH,
  107. T.CREATE_NAME,
  108. TO_CHAR(T.CREATE_TIME, 'YYYY-MM-DD HH24:MI:SS') CREATE_TIME,
  109. T.UPDATE_NAME,
  110. TO_CHAR(T.UPDATE_TIME, 'YYYY-MM-DD HH24:MI:SS') UPDATE_TIME,
  111. T.DOWNMAN,
  112. TO_CHAR(T.DOWNTIME, 'YYYY-MM-DD HH24:MI:SS') DOWNTIME,
  113. DECODE(T.SUBCONTRACT_FLAG,'0','未委外','1','已委外')SUBCONTRACT_FLAG,
  114. T.LEN_GP_SINGLE_OUT
  115. FROM PLN_ZY_DZ_M T
  116. WHERE 1 = 1
  117. </query>
  118. <query id = "FrmSubContractDP.doQueryPlnZyC" desc = "查询锻造计划从信息">
  119. SELECT
  120. T.HEAT_PLAN_NO,
  121. T.HEAT_PLAN_SQE,
  122. T.JUGDE_APPLY_CODE,
  123. T.ZY_BATCH_ID,
  124. T.STOVE_NO,
  125. T.JUDGE_STOVE_NO,
  126. T.PRO_PLAN_ID,
  127. T.GX_PLAN_NO,
  128. T.PLINE_CODE,
  129. T.PLINE_NAME,
  130. T.DIAMETER,
  131. T.LEN_GP_SINGLE,
  132. T.WT_GP_SINGLE,
  133. T.CUT_NUM_GP,
  134. T.LENGTH_M,
  135. T.WEIGHT_M,
  136. T.PLAN_INDOUBLE_NUM,
  137. T.PLAN_INDOUBLE_WT,
  138. T.REAL_INDOUBLE_NUM,
  139. T.REAL_INDOUBLE_WT,
  140. T.FLAG_STOVE_NO
  141. FROM PLN_ZY_DZ_C T
  142. WHERE 1=1
  143. </query>
  144. <query id = "FrmSubContractDP.doQueryEntrust" desc = "查询委托信息">
  145. SELECT
  146. T.SUBCONTRACT_NO,
  147. T.SUBCONTRACT_NO_SEQ,
  148. DECODE(T.SUBCONTRACT_TYPE,'1','内部委托','2','外部委托')SUBCONTRACT_TYPE,
  149. T.HEAT_PLAN_NO,
  150. T.STOVE_NO,
  151. T.JUDGE_STOVE_NO,
  152. T.PRO_PLAN_ID,
  153. T.GX_PLAN_NO,
  154. T.PLINE_CODE,
  155. T.PLINE_NAME,
  156. T.SOURE_CODE,
  157. T.SOURE_NAME,
  158. T.GRADECODE,
  159. T.GRADENAME,
  160. T.DIAMETER_IN,
  161. T.LEN_SINGLE_IN,
  162. T.INNUM_CUT,
  163. T.LENGTH_IN,
  164. T.DIAMETER_OUT,
  165. T.SUBCONTRACT_NUM,
  166. T.SUBCONTRACT_WT,
  167. T.SUBCONTRACT_USER,
  168. T.SUBCONTRACT_SHIFT,
  169. T.SUBCONTRACT_GROUP,
  170. TO_CHAR(T.SUBCONTRACT_TIME, 'YYYY-MM-DD HH24:MI:SS') SUBCONTRACT_TIME,
  171. T.SP_USER,
  172. T.SP_NOTE,
  173. TO_CHAR(T.SP_TIME, 'YYYY-MM-DD HH24:MI:SS') SP_TIME,
  174. DECODE(T.SUBCONTRACT_LOG,'00','未审核','10','审核通过','20','审核不通过','30','委托实绩已回报')SUBCONTRACT_LOG,
  175. T.SUBCONTRACT_PLINE_CODE,
  176. T.SUBCONTRACT_PLINE_NAME,
  177. T.SUBCONTRACT_NOTE,
  178. T.HB_FP_NUM,
  179. T.HB_FP_WT,
  180. T.BAL_YEAR_MONTH,
  181. T.OUTWL_ID,
  182. T.OUTWL_DESC,
  183. T.OUT_WT_ONE,
  184. T.WLID_IN,
  185. T.WLDESC_IN,
  186. T.LEN_GP_SINGLE_OUT
  187. FROM FRG_ENTRUSTED_BILL T
  188. WHERE 1 = 1
  189. </query>
  190. <query id = "FrmSubContractDP.selectPlnZyDzM" desc = "查询主计划">
  191. SELECT * FROM PLN_ZY_DZ_M T WHERE T.HEAT_PLAN_NO = '#HEAT_PLAN_NO#'
  192. </query>
  193. <query id = "FrmSubContractDP.doQuerySubContractNo" desc = "查询委托单号">
  194. SELECT ? || TO_CHAR(SYSDATE, 'YYYYMMDD') ||
  195. LPAD(NVL(MAX(SUBSTR(T.SUBCONTRACT_NO, 13,4)), 0) + 1, 4, 0) SUBCONTRACT_NO
  196. FROM FRG_ENTRUSTED_BILL T
  197. WHERE TRUNC(T.SUBCONTRACT_TIME) = TRUNC(SYSDATE)
  198. </query>
  199. <query id = "FrmSubContractDP.subContract" desc = "插入委托表">
  200. INSERT INTO FRG_ENTRUSTED_BILL(
  201. SUBCONTRACT_NO,
  202. SUBCONTRACT_NO_SEQ,
  203. SUBCONTRACT_TYPE,
  204. HEAT_PLAN_NO,
  205. STOVE_NO,
  206. JUDGE_STOVE_NO,
  207. PRO_PLAN_ID,
  208. GX_PLAN_NO,
  209. PLINE_CODE,
  210. PLINE_NAME,
  211. GRADECODE,
  212. GRADENAME,
  213. DIAMETER_IN,
  214. LEN_SINGLE_IN,
  215. INNUM_CUT,
  216. LENGTH_IN,
  217. DIAMETER_OUT,
  218. SUBCONTRACT_NUM,
  219. SUBCONTRACT_WT,
  220. SUBCONTRACT_USER,
  221. SUBCONTRACT_TIME,
  222. SUBCONTRACT_LOG,
  223. BAL_YEAR_MONTH,
  224. OUTWL_ID,
  225. OUTWL_DESC,
  226. WLID_IN,
  227. WLDESC_IN,
  228. OUT_WT_ONE,
  229. LEN_GP_SINGLE_OUT)
  230. VALUES(
  231. '#SUBCONTRACT_NO#',
  232. '#SUBCONTRACT_NO_SEQ#',
  233. '#SUBCONTRACT_TYPE#',
  234. '#HEAT_PLAN_NO#',
  235. '#STOVE_NO#',
  236. '#JUDGE_STOVE_NO#',
  237. '#PRO_PLAN_ID#',
  238. '#GX_PLAN_NO#',
  239. '#PLINE_CODE#',
  240. '#PLINE_NAME#',
  241. '#GRADECODE#',
  242. '#GRADENAME#',
  243. '#DIAMETER_IN#',
  244. '#LEN_SINGLE_IN#',
  245. '#INNUM_CUT#',
  246. '#LENGTH_IN#',
  247. '#DIAMETER_OUT#',
  248. '#SUBCONTRACT_NUM#',
  249. '#SUBCONTRACT_WT#',
  250. '#SUBCONTRACT_USER#',
  251. TO_DATE('#SUBCONTRACT_TIME#','YYYY-MM-DD HH24:MI:SS'),
  252. '#SUBCONTRACT_LOG#',
  253. '#BAL_YEAR_MONTH#',
  254. '#OUTWL_ID#',
  255. '#OUTWL_DESC#',
  256. '#WLID_IN#',
  257. '#WLDESC_IN#',
  258. '#OUT_WT_ONE#',
  259. '#LEN_GP_SINGLE_OUT#')
  260. </query>
  261. <query id = "FrmSubContractDP.updatePlnZyDzMsubFlag" desc = "修改主计划委外标识">
  262. UPDATE PLN_ZY_DZ_M T
  263. SET T.SUBCONTRACT_FLAG = '1'
  264. WHERE
  265. T.HEAT_PLAN_NO = '#HEAT_PLAN_NO#'
  266. </query>
  267. <query id = "FrmSubContractDP.updatePlnDzMFlag" desc = "修改主计划标识">
  268. UPDATE PLN_ZY_DZ_M T
  269. SET T.SUBCONTRACT_FLAG = '0'
  270. WHERE
  271. T.HEAT_PLAN_NO = '#HEAT_PLAN_NO#'
  272. </query>
  273. <query id = "FrmSubContractDP.selectEntrustLog" desc = "查询委托单状态">
  274. SELECT * FROM FRG_ENTRUSTED_BILL T WHERE T.SUBCONTRACT_NO = '#SUBCONTRACT_NO#' AND T.SUBCONTRACT_NO_SEQ = '#SUBCONTRACT_NO_SEQ#'
  275. </query>
  276. <query id = "FrmSubContractDP.cancelSubContract" desc = "撤销委外加工">
  277. DELETE FROM FRG_ENTRUSTED_BILL T WHERE T.SUBCONTRACT_NO = '#SUBCONTRACT_NO#' AND T.SUBCONTRACT_NO_SEQ = '#SUBCONTRACT_NO_SEQ#'
  278. </query>
  279. <query id = "FrmSubContractDP.selectMatCount" desc = "查询库存支数">
  280. SELECT COUNT(1) ACOUNT
  281. FROM MAT_GP_M T, YDM_GP_BUTTRESS S
  282. WHERE T.MAT_NO = S.MAT_NO
  283. AND NVL(T.STOVE_NO,'/') = NVL('#STOVE_NO#','/')
  284. AND T.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  285. AND T.JUGDE_APPLY_CODE = '#JUGDE_APPLY_CODE#'
  286. AND T.OUTSOURCING_FLAG = '0'
  287. AND T.HANGING_FLAG = '1'
  288. </query>
  289. <query id = "FrmSubContractDP.doQueryWgt" desc = "查询对应支数重量">
  290. <![CDATA[
  291. SELECT NVL(SUM(T1.ACT_WEIGHT),0)
  292. FROM (SELECT T.ACT_WEIGHT
  293. FROM MAT_GP_M T
  294. WHERE T.STOVE_NO = '#STOVE_NO#'
  295. AND T.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  296. AND T.JUGDE_APPLY_CODE = '#JUGDE_APPLY_CODE#'
  297. ORDER BY T.MAT_NO DESC) T1
  298. WHERE ROWNUM <= #REAL_INDOUBLE_NUM#
  299. ]]>
  300. </query>
  301. <query id = "FrmSubContractDP.updateMatOutSource" desc = "回写实际上料支吨\锁定库存支">
  302. <![CDATA[
  303. DECLARE
  304. DOUBLE_WGT MAT_GP_M.ACT_WEIGHT%TYPE := NULL;
  305. BEGIN
  306. FOR MYROW IN (SELECT *
  307. FROM (SELECT T.MAT_NO, T.ACT_WEIGHT
  308. FROM MAT_GP_M T
  309. WHERE T.STOVE_NO = '#STOVE_NO#'
  310. AND T.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  311. AND T.JUGDE_APPLY_CODE = '#JUGDE_APPLY_CODE#'
  312. AND T.OUTSOURCING_FLAG = '0'
  313. ORDER BY T.MAT_NO DESC)
  314. WHERE ROWNUM <= #REAL_INDOUBLE_NUM#) LOOP
  315. UPDATE MAT_GP_M T
  316. SET T.OUTSOURCING_DOC = '#OUTSOURCING_DOC#',
  317. T.OUTSOURCING_FLAG = '1'
  318. WHERE T.MAT_NO = MYROW.MAT_NO;
  319. DOUBLE_WGT := TO_NUMBER(NVL(DOUBLE_WGT,'0')) + TO_NUMBER(NVL(MYROW.ACT_WEIGHT,0));
  320. END LOOP;
  321. UPDATE PLN_ZY_DZ_C T
  322. SET T.REAL_INDOUBLE_NUM = '#REAL_INDOUBLE_NUM#',
  323. T.REAL_INDOUBLE_WT = DOUBLE_WGT
  324. WHERE T.HEAT_PLAN_NO = '#HEAT_PLAN_NO#';
  325. UPDATE MAT_GP_M T
  326. SET T.HANGING_FLAG = '0'
  327. WHERE T.STOVE_NO = '#STOVE_NO#'
  328. AND T.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  329. AND T.JUGDE_APPLY_CODE = '#JUGDE_APPLY_CODE#'
  330. AND T.OUTSOURCING_FLAG = '0'
  331. AND T.HANGING_FLAG = '1';
  332. END;
  333. ]]>
  334. </query>
  335. <query id = "FrmSubContractDP.updateMatGpFlag" desc = "撤销委外释放状态">
  336. DECLARE
  337. BEGIN
  338. UPDATE PLN_ZY_DZ_C T
  339. SET T.REAL_INDOUBLE_NUM = '', T.REAL_INDOUBLE_WT = ''
  340. WHERE T.HEAT_PLAN_NO = '#HEAT_PLAN_NO#';
  341. UPDATE MAT_GP_M T
  342. SET
  343. T.OUTSOURCING_DOC = '',
  344. T.OUTSOURCING_FLAG = '0'
  345. WHERE T.STOVE_NO = '#STOVE_NO#'
  346. AND T.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  347. AND T.OUTSOURCING_DOC = '#SUBCONTRACT_NO#'||'#SUBCONTRACT_NO_SEQ#';
  348. UPDATE MAT_GP_M T
  349. SET T.HANGING_FLAG = '1'
  350. WHERE T.STOVE_NO = '#STOVE_NO#'
  351. AND T.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
  352. AND T.HANGING_FLAG = '0';
  353. END;
  354. </query>
  355. </queryMap>