簡體   English   中英

如何為記錄導出和格式化 XML?

[英]How to export and format an XML for records?

我正在使用 VBA 代碼將每個記錄從特定查詢導出到單個 XML 文件。
每個 XML 文件將具有來自 MS Access 查詢的“一個”記錄,並且每個 XML 文件的保存目標對於查詢中找到的每條記錄 output 都不同。
在查詢中,有一個值將具有詳細路徑,記錄應保存在何處。 因此,循環將能夠根據讀取的每條記錄將每個 XML 文件保存到目的地。

我有我的“臨時”XML 導出。 (出於本示例的目的,我已將每個值的數據替換為“valueName_here”,但在每個值上,這些值會有所不同。):

'溫度' xml output:

<?xml version="1.0" encoding="UTF-8"?>
<dataroot xmlns:od="urn:schemas-microsoft-com:officedata">
<qryWMC0302a>
<WMCID>18</WMCID>
<ID>176068</ID>
<Title>Title_here</Title>
<TitleSupp>TitleSupp_Here</TitleSupp>
<Date>Date_Here</Date>
<Cast>leadPerformer_here|leadPerformer_here|leadPerformer_here|leadPerformer_here|etc|</Director>
<Overview>Overview_Here</Overview>
<Tagline>Tagline_Here</Tagline>
<Duration>duration_here</Duration>
<StudioID>StudioID_ID</StudioID>
<DataProviderID>DataProviderID_here</DataProviderID>
<MPAARatingID>MPAARatingID_Here</MPAARatingID>
<Rating>Rating_Here</Rating>
<ProviderRating>ProviderRating_Here</ProviderRating>
<MasterTableID>MasterTableID_Here</MasterTableID>
<Studio>studio_here</Studio>
<DataProvider>DataProvider_Here</DataProvider>
<MPAARating>MPAARating_Here</MPAARating>
<PathID01>PathID01_Here</PathID01>
<PathID02>PathID02_Here</PathID02>
<Path03>Path03_Here</Path03>
<Path>Path</Path>
<Pth01LkUp>Pth01LkUp_Here</Pth01LkUp>
<Pth02LkUp>00\Pth02LkUp_Here</Pth02LkUp>
<XMLID>XMLID_Here</XMLID>
<MovieVideo_TS>MovieVideo_TS_here</MovieVideo_TS>
<XMLsmallCoverParams>Path\To\File\Here</XMLsmallCoverParams>
<XMLlargeCoverParams>Path\To\File\Here</XMLlargeCoverParams>
<Folder>Path\To\File\Here</Folder>
<FolderL>Path\To\File\Here</FolderL>
<Chk>Chk_here</Chk>
</qryWMC0302a>
</dataroot>

目標是使最終的 xml 文件看起來像這樣:

<?xml version="1.0" encoding="UTF-8"?>
<METADATA xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <NeedsAttribution>true</NeedsAttribution>
  <DvdId>
  </DvdId>
  <MDR-DVD>
    <MetadataExpires>Expiration_Date_And_Time_Here</MetadataExpires>
    <Version>Verion_Number_Here</Version>
    <leadPerformer>leadPerformer_here|leadPerformer_here|leadPerformer_here|leadPerformer_here|etc|</leadPerformer>
    <director>director_Here | director_Here, etc</director>
    <dvdTitle>dvdTitle_here</dvdTitle>
    <MPAARating>MPAARating_Here</MPAARating>
    <dataProvider>dataProvider_here</dataProvider>
    <releaseDate>releaseDate_here</releaseDate>
    <duration>duration_here</duration>
    <genre>genre_here|genre_here|etc</genre>
    <XMLsmallCoverParams>Path\To\File\Here</XMLsmallCoverParams>
    <XMLlargeCoverParams>Path\To\File\Here</XMLlargeCoverParams>
    <studio>studio_here</studio>
    <title>
      <titleNum>Number_Here</titleNum>
      <titleTitle>titleTitle_here</titleTitle>
      <synopsis>Details of the record-film will be here.</synopsis>
      <leadPerformer>leadPerformer_here|leadPerformer_here|leadPerformer_here|leadPerformer_here|etc|</leadPerformer>
      <director>director_Here | director_Here, etc</director>
      <providerRating>providerRating_here</providerRating>
      <studio>studio_here</studio>
      <MPAARating>MPAARating_Here</MPAARating>
      <communityRating>communityRating_here</communityRating>
    </title>
  </MDR-DVD>
</METADATA>

在'temp' xml output 中,有一些在'final' xml 文件中不需要的附加值; 但是,VBA中需要一些“附加”值,以了解Z0F635D0E0F3874FFFF3874FFF8B581C132E6C76C7A7Z FINS FINS FILS FILS FILS FILS FILS FILS FILS FILS FINSLY'Z0135D6335DDNEF的Z0F635D0EFF3874FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC01335DNENEN''名稱xml 文件將被導出到(每個“最終”xml 文件將被導出到不同的位置\路徑)

我試圖將答案調整到一個工作 xsl(XSLT 樣式表),它將我的“臨時”xml 文件中的所需元素復制到格式正確的“最終”xml 文件中,如此處發布的示例所示。
我找到的最接近的: 如何使用 Access VBA 導出到帶有各種記錄標題的 XML? .

如何發布 xsl 模板以從“臨時”xml output 獲取輸入並復制到“最終”xml 文件?

我遵循了以下鏈接中的信息:

可在以下鏈接中找到該文檔: https://support.ptc.com/help/wnc/r11.2.0.0/en/index.html#page/Windchill_Help_Center/WCCG_BusLogicCust_WorkPackage_XMLTrnsfmSample.ZFC35FDC70D5FC69D269883A8

在該鏈接上,詳細描述了 go 從“臨時”文件到“最終”文件所需的每個字段

干杯!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM