1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
| CREATE PROCEDURE tp_File_WriteFile
(
@FileID int, -- File id reference
@Text nvarchar(4000), -- Text to write
@NewLine int = 1
)
AS
BEGIN
SET NOCOUNT ON
DECLARE @OLEResult int
-- Write the text in the file
IF @NewLine = 1
BEGIN
EXECUTE @OLEResult = sp_OAMethod @FileID, 'WriteLine', Null, @Text
END
ELSE
BEGIN
EXECUTE @OLEResult = sp_OAMethod @FileID, 'Write', Null, @Text
END
IF @OLEResult <> 0 RETURN -1
END
GO
CREATE PROCEDURE tp_File_OpenFile
(
@FileName nvarchar(250), -- Name of the file to create
@FS int OUTPUT, -- File system object reference
@FileID int OUTPUT -- File id reference
)
AS
BEGIN
SET NOCOUNT ON
DECLARE @OLEResult int
-- Create scripting object
EXECUTE @OLEResult = sp_OACreate 'Scripting.FileSystemObject', @FS OUT
IF @OLEResult <> 0 RETURN -1
--Ouvre le fichier (2 = ForWriting, 8 = ForAppending)
EXECUTE @OLEResult = sp_OAMethod @FS, 'OpenTextFile', @FileID OUT,
@FileName, 2, 1
IF @OLEResult <> 0 RETURN -1
END
GO
CREATE PROCEDURE tp_File_CloseFile
(
@FS int, -- File system object reference
@FileID int -- File id reference
)
AS
BEGIN
SET NOCOUNT ON
DECLARE @OLEResult int
-- Close file
EXECUTE @OLEResult = sp_OADestroy @FileID
EXECUTE @OLEResult = sp_OADestroy @FS
END
GO |
Partager