2016-06-10 31 views
0

在這方面,我相對較新,但想深入研究。如何在SAP BODS(業務對象數據服務)中將日誌文件的內容(使用日誌文件位置)提取(讀取)到目標表中

我需要在日誌文件中查找一串文本。

當文本的該字符串被發現,我想後,立即獲得下一個4行文字,看我下面的例子:

實例找到的文本字符串 第一行後發現串 第二次發現後線串 第三行發現串 第四行發現後串後

任何幫助或任何替代或任何腳本給出將不勝感激,我只是想獲取日誌Fi的內容進入我的目標表。

感謝 CHIRAG

編輯:

我的代碼是:

'strFileName = "D:\write123.xls" 
'Set objExcel = CreateObject("Excel.Application") 
'objExcel.Visible = True 
'Set objWorkbook = objExcel.Workbooks.Add() 
'objWorkbook.SaveAs(strFileName) 
'objExcel.Quit 
Set objFileToRead = CreateObject("Scripting.FileSystemObject").OpenTextFile("D:\mic.txt",1) 
strFileText = objFileToRead.ReadAll() 
objFileToRead.Close 
Set objFSO = CreateObject("Scripting.FileSystemObject") 
Set objFileToWrite = objFSO.OpenTextFile("D:\write123.xlsx", 2) 
objFileToWrite.Write strFileText 
objFileToWrite.Close 
+0

嗨,你已經嘗試了什麼? [so]不是代碼編寫服務,但我們很樂意爲您解決已編寫代碼中的問題提供幫助。請閱讀[問]並提供[mcve] – Dave

+0

您好我的代碼是:'strFileName =「D:\ write123.xls」 'Set objExcel = CreateObject(「Excel.Application」) 'objExcel.Visible = True '設置objWorkbook = objExcel.Workbooks.Add() 'objWorkbook.SaveAs(strFileName) ' objExcel.Quit 集objFileToRead =的CreateObject( 「Scripting.FileSystemObject的」)的OpenTextFile( 「d:\ mic.txt」, 1) strFileText = objFileToRead.ReadAll() objFileToRead.Close 設置objFSO =的CreateObject( 「Scripting.FileSystemObject的」) 集的ob jFileToWrite =「objFSO.OpenTextFile(」D:\ write123.xlsx「,2) objFileToWrite.Write strFileText objFileToWrite.Close – Chirag

+0

它說」找不到文件「,我試圖將文件放在每個路徑中。但仍然沒有得到。您可以請幫助,以便我可以將日誌文件的內容寫入Excel文件。 – Chirag

回答

0
Dim objFSO : Set objFSO = CreateObject("Scripting.FileSystemObject") 
dim objFileToRead : Set objFileToRead = objFSO.OpenTextFile("D:\mic.txt",1) 
dim myArray(0) 
While Not objFileToRead.AtEndOfStream 
    strLine = objFileToRead.ReadLine 
    myArray(UBound(myArray)) = strLine 
    reDim Preserve myArray(UBound(myArray)+1) 
Wend 
objFileToRead.Close 
Dim objExcelApp : Set objExcelApp = CreateObject("Excel.Application") 
dim myExcel : Set myExcel = objExcel.Workbooks.Add() 
With myExcel.Worksheets(1) 
    For myLoop = 0 to UBound(myArray) 
     .Range("A" & myLoop).Value = myArray(myLoop) 
    Next 
End With 
myExcel.SaveAs Filename:="D:\write123.xlsx" 
myExcel.Close 
objExcel.Quit 
Set objExcel = Nothing 
Set objFileToRead = Nothing 
Set objFSO = Nothing 

這段代碼的作用是讀取日誌文件到一個數組中的全部內容;創建Excel和工作簿的實例;對於日誌條目數組中的每一行,將其輸入到「A」列;在退出Excel之前保存並關閉工作簿。讓我知道你是否需要更多解釋這裏發生的事情?