FrmStuffMoveOut.xml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <queryMap desc = "倒库出库">
  3. <query id = "FrmStuffMoveOut.doQuery" desc = "查询库存实绩">
  4. <![CDATA[
  5. SELECT
  6. max(TO_CHAR(T.INSTOCK_TIME, 'YYYY-MM-DD HH24:MI:SS')) INSTOCK_TIME,
  7. T.MEMO,
  8. --(SELECT C.BASENAME FROM COM_BASE_INFO C WHERE C.BASECODE = T.PRODUCT_FLAG) PRODUCT_FLAG,
  9. --(SELECT D.BASENAME FROM COM_BASE_INFO D WHERE D.BASECODE = T.MAT_STATUS)MAT_STATUS,
  10. T.PRODUCT_FLAG,
  11. T.MAT_STATUS,
  12. T.STOVE_NO,
  13. T.JUDGE_STOVE_NO,
  14. T.BATCH_NO,
  15. T.GROUD_NO,
  16. T.CAST_NO,
  17. T.CCMID,
  18. T.SAMPLE_FLAG,
  19. T.CUTTING_FLAG,
  20. T.CUTTING_NUM,
  21. T.MATERIAL_NO,
  22. T.MATERIAL_NAME,
  23. T.PRODUCCODE,
  24. T.PRODUCNAME,
  25. T.JUDGE_GRADECODE,
  26. T.JUDGE_GRADENAME,
  27. T.JUDGE_STD_CODE,
  28. T.JUDGE_STD_NAME,
  29. T.PRO_ORDER_NO,
  30. T.PRO_ORDER_ID,
  31. T.PLINE_CODE,
  32. T.PLINE_NAME,
  33. T.ACT_DIMATER,
  34. T.ACT_LEN,
  35. T.ACT_LEN_MIN,
  36. T.ACT_LEN_MAX,
  37. T.ACT_FIX_NUM,
  38. T.ACT_FIX_LEN,
  39. sum(T.ACT_COUNT)ACT_COUNT,
  40. sum(T.ACT_WEIGHT)ACT_WEIGHT,
  41. T.BELONG_CODE,
  42. T.BELONG_NAME,
  43. (SELECT C.STORAGE_NAME FROM YDM_BS_STORAGE C WHERE C.STORAGE_NO = S.STORAGE_NO)STORAGE_NAME,
  44. S.STORAGE_NO
  45. FROM MAT_GP_M T,YDM_GP_BUTTRESS S
  46. --LEFT JOIN ydm_bs_storage T1 ON S.STORAGE_NO=T1.STORAGE_NO
  47. WHERE T.MAT_NO = S.MAT_NO
  48. AND T.MAT_STATUS<>'80150302'
  49. AND T.JUDGE_STOVE_NO || '&' LIKE ('%' || ? || '%')
  50. ]]>
  51. </query>
  52. <query id = "FrmStuffMoveOut.doQueryOutList" desc = " 查询出库实绩">
  53. <![CDATA[
  54. SELECT
  55. OUTSTOCK_PLAN_NO,
  56. OUTSTOCK_DOC,
  57. OUTSTOCK_TYPE_CODE,
  58. OUTSTOCK_TYPE_NAME,
  59. VEHICLE_NO,
  60. (SELECT C.BASENAME FROM COM_BASE_INFO C WHERE C.BASECODE = PRODUCT_FLAG) PRODUCT_FLAG,
  61. (SELECT D.BASENAME FROM COM_BASE_INFO D WHERE D.BASECODE = MAT_STATUS)MAT_STATUS,
  62. STOVE_NO,
  63. FLAG_STOVE_NO,
  64. JUDGE_STOVE_NO,
  65. BATCH_NO,
  66. CAST_NO,
  67. CCMID,
  68. SAMPLE_FLAG,
  69. CUTTING_FLAG,
  70. CUTTING_NUM,
  71. MATERIAL_NO,
  72. MATERIAL_NAME,
  73. PRODUCCODE,
  74. PRODUCNAME,
  75. JUDGE_GRADECODE,
  76. JUDGE_GRADENAME,
  77. JUDGE_STD_CODE,
  78. JUDGE_STD_NAME,
  79. ACT_DIMATER,
  80. ACT_LEN,
  81. ACT_LEN_MIN,
  82. ACT_LEN_MAX,
  83. ACT_FIX_NUM,
  84. ACT_FIX_LEN,
  85. ACT_COUNT,
  86. ACT_WEIGHT,
  87. PLINE_CODE,
  88. PLINE_NAME,
  89. PRO_ORDER_NO,
  90. PRO_ORDER_ID,
  91. BELONG_CODE,
  92. BELONG_NAME,
  93. (SELECT C.STORAGE_NAME FROM YDM_BS_STORAGE C WHERE C.STORAGE_NO = STORAGE_NO)STORAGE_NO,
  94. (SELECT C.STORAGE_NAME FROM YDM_BS_STORAGE C WHERE C.STORAGE_NO = TAR_STORAGE_NO)TAR_STORAGE_NO,
  95. DECODE(TAR_REC_FLAG,'0','未接收','1','已接收')TAR_REC_FLAG,
  96. max(TO_CHAR(OUTSTOCK_TIME, 'YYYY-MM-DD HH24:MI:SS')) OUTSTOCK_TIME,
  97. MEMO,
  98. CREATE_NAME
  99. FROM YMD_GP_OUTLIST
  100. WHERE JUDGE_STOVE_NO || '&' LIKE ('%' || ? || '%')
  101. AND OUTSTOCK_TYPE_CODE = '800803'
  102. ]]>
  103. </query>
  104. <query id = "FrmStuffMoveOut.doAddData" desc = "插入出库表">
  105. <![CDATA[
  106. DECLARE
  107. V_OUTSTOCK_DOC YMD_GP_OUTLIST.OUTSTOCK_DOC%TYPE := NULL; --出库单号
  108. V_OUTSTOCK_SQE YMD_GP_OUTLIST.OUTSTOCK_SQE%TYPE := NULL; --出库流水
  109. V_MEMO COM_BASE_INFO.MEMO%TYPE := NULL;
  110. V_BASENAME COM_BASE_INFO.BASENAME%TYPE :=NULL;
  111. V_OCOUNT NUMBER := 1;
  112. V_TIME YMD_GP_OUTLIST.CREATE_TIME%TYPE := SYSDATE;
  113. V_BATHYEAR MAT_ZC_M.BAL_YEAR_MONTH%TYPE := TO_CHAR(SYSDATE, 'YYYYMM');
  114. BEGIN
  115. --生成出库单号
  116. SELECT MEMO,BASENAME INTO V_MEMO,V_BASENAME FROM COM_BASE_INFO WHERE BASECODE = ?;
  117. SELECT V_MEMO || TO_CHAR(SYSDATE, 'YYMMDD') ||
  118. LPAD(NVL(MAX(SUBSTR(OUTSTOCK_DOC, 9)), 0) + 1, 5, 0) OUTSTOCK_DOC
  119. INTO V_OUTSTOCK_DOC
  120. FROM YMD_GP_OUTLIST T
  121. WHERE T.OUTSTOCK_TYPE_CODE = ?
  122. AND TO_CHAR(T.CREATE_TIME, 'YYYY-MM-DD') =
  123. TO_CHAR(SYSDATE, 'YYYY-MM-DD');
  124. FOR MYROW IN (SELECT T.*,
  125. S.STORAGE_NO,
  126. S.LOCATION_NO,
  127. S.STORAGE_ATTR,
  128. S.STORAGE_ATTR_NAME,
  129. S.STORAGE_TYPE_NO,
  130. S.STORAGE_TYPE_NAME
  131. FROM MAT_GP_M T, YDM_GP_BUTTRESS S
  132. WHERE T.MAT_NO = S.MAT_NO
  133. AND NVL(T.STOVE_NO,'/') = NVL(?,'/')
  134. AND T.JUDGE_STOVE_NO = ?
  135. AND T.BATCH_NO = ?
  136. AND T.GROUD_NO = ?
  137. AND T.PRODUCT_FLAG = ?
  138. AND T.MAT_STATUS = ?
  139. AND NVL(S.STORAGE_NO,'/') = NVL(?,'/')
  140. AND ROWNUM < ?
  141. ORDER BY T.MAT_NO DESC) LOOP
  142. V_OUTSTOCK_SQE := V_OUTSTOCK_DOC || LPAD(V_OCOUNT, 4, 0);
  143. INSERT INTO YMD_GP_OUTLIST(
  144. OUTSTOCK_SQE,
  145. OUTSTOCK_PLAN_NO,
  146. OUTSTOCK_DOC,
  147. OUTSTOCK_TYPE_CODE,
  148. OUTSTOCK_TYPE_NAME,
  149. VEHICLE_NO,
  150. MAT_NO,
  151. MAT_SQE_NO,
  152. PRODUCT_FLAG,
  153. MAT_STATUS,
  154. STOVE_NO,
  155. FLAG_STOVE_NO,
  156. LOT_NO,
  157. JUDGE_STOVE_NO,
  158. BATCH_NO,
  159. CAST_NO,
  160. CCMID,
  161. SAMPLE_FLAG,
  162. CUTTING_FLAG,
  163. CUTTING_NUM,
  164. MATERIAL_NO,
  165. MATERIAL_NAME,
  166. PRODUCCODE,
  167. PRODUCNAME,
  168. JUDGE_GRADECODE,
  169. JUDGE_GRADENAME,
  170. JUDGE_STD_CODE,
  171. JUDGE_STD_NAME,
  172. ACT_DIMATER,
  173. ACT_HEIGHT,
  174. ACT_LEN,
  175. ACT_LEN_MIN,
  176. ACT_LEN_MAX,
  177. ACT_FIX_NUM,
  178. ACT_FIX_LEN,
  179. ACT_COUNT,
  180. ACT_WEIGHT,
  181. ACT_THEORY_WEIGHT,
  182. PLINE_CODE,
  183. PLINE_NAME,
  184. PRO_ORDER_NO,
  185. PRO_ORDER_ID,
  186. BELONG_CODE,
  187. BELONG_NAME,
  188. STORAGE_NO,
  189. LOCATION_NO,
  190. DEPARTMENT_CODE,
  191. DEPARTMENT_DESC,
  192. MANAGEMENT_NO,
  193. MANAGEMENT_NAME,
  194. TAR_STORAGE_NO,
  195. TAR_LOCATION_NO,
  196. TAR_DEPARTMENT_CODE,
  197. TAR_DEPARTMENT_DESC,
  198. TAR_MANAGEMENT_NO,
  199. TAR_MANAGEMENT_NAME,
  200. TAR_REC_FLAG,
  201. BAL_YEAR_MONTH,
  202. OUTSTOCK_TIME,
  203. OUT_BC,
  204. OUT_BZ,
  205. STORAGE_ATTR,
  206. STORAGE_ATTR_NAME,
  207. STORAGE_TYPE_NO,
  208. STORAGE_TYPE_NAME,
  209. MEMO,
  210. CREATE_NAME,
  211. CREATE_TIME,
  212. GROUD_NO,
  213. ICCAR_NO)
  214. VALUES(
  215. V_OUTSTOCK_SQE,
  216. '',
  217. V_OUTSTOCK_DOC,
  218. ?,
  219. V_BASENAME,
  220. ?,
  221. MYROW.MAT_NO,
  222. MYROW.MAT_SQE_NO,
  223. MYROW.PRODUCT_FLAG,
  224. MYROW.MAT_STATUS,
  225. MYROW.STOVE_NO,
  226. MYROW.FLAG_STOVE_NO,
  227. MYROW.LOT_NO,
  228. MYROW.JUDGE_STOVE_NO,
  229. MYROW.BATCH_NO,
  230. MYROW.CAST_NO,
  231. MYROW.CCMID,
  232. MYROW.SAMPLE_FLAG,
  233. MYROW.CUTTING_FLAG,
  234. MYROW.CUTTING_NUM,
  235. MYROW.MATERIAL_NO,
  236. MYROW.MATERIAL_NAME,
  237. MYROW.PRODUCCODE,
  238. MYROW.PRODUCNAME,
  239. MYROW.JUDGE_GRADECODE,
  240. MYROW.JUDGE_GRADENAME,
  241. MYROW.JUDGE_STD_CODE,
  242. MYROW.JUDGE_STD_NAME,
  243. MYROW.ACT_DIMATER,
  244. MYROW.ACT_HEIGHT,
  245. MYROW.ACT_LEN,
  246. MYROW.ACT_LEN_MIN,
  247. MYROW.ACT_LEN_MAX,
  248. MYROW.ACT_FIX_NUM,
  249. MYROW.ACT_FIX_LEN,
  250. MYROW.ACT_COUNT,
  251. MYROW.ACT_WEIGHT,
  252. MYROW.ACT_THEORY_WEIGHT,
  253. MYROW.PLINE_CODE,
  254. MYROW.PLINE_NAME,
  255. MYROW.PRO_ORDER_NO,
  256. MYROW.PRO_ORDER_ID,
  257. MYROW.BELONG_CODE,
  258. MYROW.BELONG_NAME,
  259. MYROW.STORAGE_NO,
  260. MYROW.LOCATION_NO,
  261. ?,
  262. ?,
  263. ?,
  264. ?,
  265. ?,
  266. ?,
  267. '',
  268. '',
  269. '',
  270. '',
  271. '0',
  272. V_BATHYEAR,
  273. V_TIME,
  274. '1',
  275. '1',
  276. MYROW.STORAGE_ATTR,
  277. MYROW.STORAGE_ATTR_NAME,
  278. MYROW.STORAGE_TYPE_NO,
  279. MYROW.STORAGE_TYPE_NAME,
  280. MYROW.MEMO,
  281. ?,
  282. V_TIME,
  283. MYROW.GROUD_NO,
  284. ?);
  285. DELETE YDM_GP_BUTTRESS T WHERE T.MAT_NO = MYROW.MAT_NO;
  286. V_OCOUNT := V_OCOUNT + 1;
  287. END LOOP;
  288. END;
  289. ]]>
  290. </query>
  291. <query id = "FrmStuffMoveOut.selectMatData" desc = "查询库存信息是否存在">
  292. SELECT COUNT(1) ACOUNT
  293. FROM MAT_GP_M T, YDM_GP_BUTTRESS S
  294. WHERE T.MAT_NO = S.MAT_NO
  295. AND NVL(T.STOVE_NO,'/') = NVL(?,'/')
  296. AND T.JUDGE_STOVE_NO = ?
  297. AND NVL(T.BATCH_NO,'/') = NVL(?,'/')
  298. AND T.GROUD_NO = ?
  299. AND T.PRODUCT_FLAG = ?
  300. AND T.MAT_STATUS = ?
  301. AND NVL(S.STORAGE_NO,'/') = NVL(?,'/')
  302. </query>
  303. <query id = "FrmStuffMoveOut.SelectOutListData" desc = "倒库记录是否被接收">
  304. SELECT COUNT(1) ACOUNT
  305. FROM YMD_GP_OUTLIST T
  306. WHERE T.TAR_REC_FLAG = '1'
  307. AND T.STOVE_NO = ?
  308. AND T.JUDGE_STOVE_NO = ?
  309. AND T.BATCH_NO = ?
  310. AND T.GROUD_NO = ?
  311. </query>
  312. <query id = "FrmStuffMoveOut.deleteOutListData" desc= "撤销倒库记录">
  313. <![CDATA[
  314. DECLARE
  315. V_TIME YMD_GP_OUTLIST.CREATE_TIME%TYPE := SYSDATE;
  316. BEGIN
  317. FOR MYROW IN (SELECT T.*
  318. FROM ymd_gp_outlist t
  319. WHERE T.STOVE_NO = ?
  320. AND T.JUDGE_STOVE_NO = ?
  321. AND T.BATCH_NO = ?
  322. AND T.GROUD_NO = ?
  323. ORDER BY T.MAT_NO DESC) LOOP
  324. INSERT INTO YDM_GP_BUTTRESS(
  325. GROUD_NO,
  326. MAT_NO,
  327. STOVE_NO,
  328. FLAG_STOVE_NO,
  329. LOT_NO,
  330. JUDGE_STOVE_NO,
  331. BATCH_NO,
  332. STORAGE_NO,
  333. LOCATION_NO,
  334. LARY_NO,
  335. LOC_NO,
  336. STORAGE_ATTR,
  337. STORAGE_ATTR_NAME,
  338. STORAGE_TYPE_NO,
  339. STORAGE_TYPE_NAME,
  340. DEPARTMENT_CODE,
  341. DEPARTMENT_DESC,
  342. MANAGEMENT_NO,
  343. MANAGEMENT_NAME,
  344. MEMO,
  345. CREATE_NAME,
  346. CREATE_TIME
  347. )
  348. VALUES(
  349. myrow.groud_no,
  350. myrow.mat_no,
  351. myrow.stove_no,
  352. myrow.flag_stove_no,
  353. myrow.lot_no,
  354. myrow.judge_stove_no,
  355. myrow.batch_no,
  356. myrow.storage_no,
  357. myrow.location_no,
  358. '',
  359. '',
  360. myrow.storage_attr,
  361. myrow.storage_attr_name,
  362. myrow.storage_type_no,
  363. myrow.storage_type_name,
  364. ?,
  365. ?,
  366. ?,
  367. ?,
  368. myrow.memo,
  369. ?,
  370. V_TIME
  371. );
  372. DELETE ymd_gp_outlist T WHERE t.Outstock_Sqe = MYROW.Outstock_Sqe;
  373. END LOOP;
  374. END;
  375. ]]>
  376. </query>
  377. <query id = "FrmStuffMoveOut.doQueryDoc" desc = "生成单号">
  378. SELECT 'OC' || TO_CHAR(SYSDATE, 'YYMMDD') ||
  379. LPAD(NVL(MAX(SUBSTR(OUTSTOCK_DOC, 9)), 0) + 1, 5, 0) OUTSTOCK_DOC
  380. FROM YMD_GP_OUTLIST T
  381. WHERE T.OUTSTOCK_TYPE_CODE = ?
  382. AND TO_CHAR(T.CREATE_TIME, 'YYYY-MM-DD') =
  383. TO_CHAR(SYSDATE, 'YYYY-MM-DD')
  384. </query>
  385. </queryMap>