0
특정 위치에 노드를 추가해야합니다. 아래 예를 확인하십시오.QTP에서 XML의 특정 위치에 노드를 추가해야합니다.
<root>
<ASNHeader>
<ASNStart>text</ASNStart>
<ASNprop>text_prop</ASNprop>
<ASNDetail>
<ASNAprvr>Mr.X</ASNAprvr>
<ASNAprvrDt>20Mar</ASNAprvrDT>
<ASNAprvrSub>XXX</ASNAprvrsUB>
</ASNDetail>
<ASNSHIP>XYZ</ASNSHIP>
<ASNSRDC>XYZ123</ASNSRDC>
</ASNHeader>
</root>
여기에 내가 "ASNDetail"태그를 복사 "ASNDetail을"기존의 후 "ASNSHIP"태그 앞에 붙여 있습니다. 나는 사용자가 지정한 횟수에 따라 붙여 넣기를 복사해야합니다. 참고 : QTP에서이 작업을 수행해야하며 MSXML2.DomDocument를 XML 파서로 사용하고 있습니다. 누구나 방법을 제안 할 수 있습니까? AppendChild는 "ASNSRDC"태그 뒤에 그것을 복사하지만 나는 이런 식으로 싶지 않습니다. "ASNHeader"는 "루트"의 하위 항목입니다. ASNDetail은 "root \ ASNHeader"의 하위입니다. 나는이 글에서 코드를 적절하게 포맷하지 않는다. 친절하게 조정하십시오.
는
..하지만 코드 내일 아침에 게시 too..would QTP 근무 (가의 JScript, C 번호에 대해서만 작동 것이라고 생각) .. – user2197743
해결 방법 : 설정 XMLDOM = CreateObject를 ("MSXML2.DOMDocument") xmldom.Load ("C : \ 샘플 \의 test.xml의") '코드 태그 설정 ndClnDtl = xmldom.selectSingleNode을 cpoy하는 ("/ 루트 /ASNHeader/ASNDetail").cloneNode(true) '필요한 위치 경찰에 XML 태그 설정 specNode에서 = xmldom.selectSingleNode ("/ 루트/ASNHeader/ASNSHIP") 는 'Rtnode은 위치에 부모가 설정 Rtnode = xmldom.selectSingleNode ("/ 루트/ASNHeader") Rtnode을 언급 한 것입니다. insertBefore ndClnDtl, specNode xmldom.Save ("C : \ Sample \ test.xml") – user2197743