1
|
--Khai báo biến @id, @title để lưu nội dung đọc
|
2
|
DECLARE @p_ATTACH_ID VARCHAR(15),
|
3
|
@p_REF_ID NVARCHAR(15),
|
4
|
@p_REF_MASTER VARCHAR(15)
|
5
|
|
6
|
|
7
|
DECLARE cursorProduct CURSOR FOR -- khai báo con trỏ cursorProduct
|
8
|
SELECT ATTACH_ID, REF_ID, REF_MASTER
|
9
|
FROM CM_ATTACH_FILE
|
10
|
WHERE REF_ID IN (SELECT CONTRACT_ID FROM TR_CONTRACT)
|
11
|
AND REF_ID NOT IN (SELECT REQ_ID FROM TR_REQUEST_DOC_FILE)-- dữ liệu trỏ tới
|
12
|
|
13
|
OPEN cursorProduct -- Mở con trỏ
|
14
|
|
15
|
FETCH NEXT FROM cursorProduct -- Đọc dòng đầu tiên
|
16
|
INTO @p_ATTACH_ID, @p_REF_ID, @p_REF_MASTER
|
17
|
|
18
|
WHILE @@FETCH_STATUS = 0 --vòng lặp WHILE khi đọc Cursor thành công
|
19
|
BEGIN
|
20
|
|
21
|
DECLARE @l_REQFile_ID VARCHAR(15)
|
22
|
EXEC SYS_CodeMasters_Gen 'TR_REQUEST_DOC_FILE', @l_REQFile_ID out
|
23
|
|
24
|
INSERT INTO dbo.TR_REQUEST_DOC_FILE
|
25
|
(
|
26
|
[TR_REQUEST_DOC_FILE_ID],
|
27
|
[ATTACH_ID]
|
28
|
,[IS_VIEW]
|
29
|
,[REQ_ID]
|
30
|
,[NOTES]
|
31
|
)
|
32
|
VALUES
|
33
|
(
|
34
|
@l_REQFile_ID,
|
35
|
@p_ATTACH_ID
|
36
|
,0
|
37
|
,@p_REF_ID
|
38
|
,NULL
|
39
|
)
|
40
|
|
41
|
|
42
|
FETCH NEXT FROM cursorProduct -- Đọc dòng tiếp
|
43
|
INTO @p_ATTACH_ID, @p_REF_ID, @p_REF_MASTER
|
44
|
END
|
45
|
|
46
|
CLOSE cursorProduct -- Đóng Cursor
|
47
|
DEALLOCATE cursorProduct -- Giải phóng tài nguyên
|
48
|
|
49
|
|
50
|
|
51
|
UPDATE CM_ATTACH_FILE
|
52
|
SET REF_MASTER = REF_ID,
|
53
|
REF_ID = A.TR_REQUEST_DOC_FILE_ID
|
54
|
FROM TR_REQUEST_DOC_FILE A
|
55
|
INNER JOIN CM_ATTACH_FILE B ON A.ATTACH_ID = B.ATTACH_ID
|
56
|
WHERE A.REQ_ID IN (SELECT REQ_ID FROM TR_REQUEST_DOC)
|