2013-09-24 11 views
5

के साथ एक्सएमएल फ़ाइल की आवश्यकता है मुझे एक्सेस से एक्सएमएल फाइल बनाने की जरूरत है। यह एक संबंधपरक नोड प्रकार प्रारूप होना चाहिए।निर्यात से नेस्टेड एक्सएमएल फ़ाइल निर्यात करें। नोड्स

उदाहरण के लिए: मदों के लिए

<Item> 
    <description></description> 
    <colors> 
     <blue> 
     <green> 
    </colors> 
</item> 

डेटा किसी तालिका में है। रंग दूसरे में हैं। मेरे पास संदर्भ आईडी हैं इसलिए मैं उनसे जुड़ सकता हूं।

यह कैसे किया जा सकता है। मैंने पूरी तरह से देखा है और एक टेबल को निर्यात करने का तरीका देखा है, लेकिन नेस्टेड प्रकार की फ़ाइल नहीं।

उत्तर

1

नीचे डेटा का क्वेरी करने के लिए उपयोग किए जाने वाले नमूने का एक नमूना है और फिर परिणाम को एक फ्लैट फ़ाइल में निर्यात करें। मैंने इसे कुछ हद तक अनुकूलित किया है जो आपको चाहिए।

On Error GoTo Err_My_Click 
Dim rs As DAO.Recordset 
Set rs = CurrentDb.OpenRecordset("SELECT * FROM MyTable", dbOpenDynaset) 

If (rs.RecordCount <> 0) Then 
    rs.MoveFirst 

    Open "C:\Export\XML__MyFile.xml" For Output As #1 

    Do While rs.EOF = False 
    TempExportCount = TempExportCount + 1 

    Print #1, "<Item>" 
    Print #1, " <description>" & rs.Fields("[Description]").value & "</description>" 
    Print #1, "</Item>" 

    rs.MoveNext 
    Loop 
End If 

Exit_My_Click: 
    On Error Resume Next 
    rs.Close 
    Set rs = Nothing 
    Close 1# 
    Exit Sub 
Err_My_Click: 
    If (Err.Number = 76) Then 
    MsgBox ("The program could not save the txt file." & vbNewLine & vbNewLine & _ 
      "Make sure you have the following folder created: C:\Export\") 
    Else 
    MsgBox (Err.Description) 
    End If 
    Resume Exit_My_Click 
1

एक SELECT क्वेरी जो रंग की मेज के साथ अपने आइटम तालिका में शामिल होने के संदर्भ आईडी का उपयोग किया गया।

एक बार जब आपके पास कोई प्रश्न हो जो जानकारी सही ढंग से एकत्र करता है, तो एक्सेस यूजर इंटरफेस से एक्सएमएल में अपना डेटा निर्यात करें।

Export query to XML

हैं कि आप XML आप चाहते हैं देता है, आप निर्यात आपरेशन VBA से Application.ExportXML Method का उपयोग कर स्वचालित कर सकते हैं। ध्यान दें कि विधि XML को ट्विक करने के लिए कई विकल्प प्रदान करती है। लेकिन निर्यात इस के रूप में सरल हो सकता है ...

Application.ExportXML acExportQuery, "YourQuery", _ 
    "C:\SomeFolder\YourQuery.xml" 
+0

[कोड] टेस्ट मद ब्लू टेस्ट मद ग्रीन टेस्ट मद ब्लू [/ कोड] – macecase

1

मैं के बारे में पाँच मिनट में एक 3 लाख लाइन नेस्ट एक्सएमएल उत्पादन से जुड़ी का उपयोग करें।

दो प्रमुख आइटम,

1) वीबी का एक सरल टुकड़ा,

Public Function Export_ListingData() 

    Dim objOtherTbls As AdditionalData 

    On Error GoTo ErrorHandle 
    Set objOtherTbls = Application.CreateAdditionalData 
    objOtherTbls.Add "ro_address" 
    objOtherTbls.Add "ro_buildingDetails" 
    objOtherTbls.Add "ro_businessDetails" 
    objOtherTbls.Add "ro_businessExtras" 
    objOtherTbls.Add "ro_businessExtrasAccounts" 
    objOtherTbls.Add "ro_businessExtrasAccom" 
    objOtherTbls.Add "ro_businessExtrasAccom2" 

    Application.ExportXML ObjectType:=acExportTable, _ 
       DataSource:="ro_business", _ 
       DataTarget:="C:\Users\Steve\Documents\Conversions\ListData.xml", _ 
       AdditionalData:=objOtherTbls 
Exit_Here: 
     MsgBox "Export_ListingData completed" 
     Exit Function 
ErrorHandle: 
     MsgBox Err.Number & ": " & Err.Description 
     Resume Exit_Here 
End Function 

2) का उपयोग करते हुए संबंध प्रबंधक में तालिकाओं को लिंक प्राथमिक से विदेशी कुंजी को मिलती हैं।

यदि उनके कोई रिश्ते नहीं हैं तो कोड अनुक्रमिक xml फ़ाइल उत्पन्न करेगा, यदि प्राथमिक कुंजी के बीच संबंध हैं तो आपको 31532 त्रुटि मिलेगी और डेटा निर्यात विफल हो जाएगा।

+0

कृपया एक ही जवाब शब्दशः कई प्रश्नों के पोस्ट नहीं करें। यदि प्रश्न वास्तव में वही हैं, तो उन्हें डुप्लिकेट के रूप में बंद करने के लिए ध्वज। –

संबंधित मुद्दे