:: Visual Foxpro, Foxpro for DOS
MSXML.DOMDocument
dafni_2004

Сообщений: 89
Дата регистрации: 17.11.2005
есть XML структурой
<p:fact>
<ps:snils>111111111</ps:snils>
</p:fact>
<p:fact>
<ps:snils>111111111</ps:snils>
</p:fact>
...

пытаюсь MS XML Parser
**************************************************
loXML = CREATEOBJECT("MSXML.DOMDocument")
loXML.ASYNC=.F.
loXML.load('.\XML\'+gaDatabase(ncount,1))
IF loXML.parseError.errorCode = 0
ELSE
?loXML.parseError.reason
ENDIF


loXMLNodes=loXML.getElementsByTagName("p:fact")
For i = 0 TO (loXMLNodes.length -1)

а вот дальше не понял как получить snils для всех всех элементов заданного типа "p:fact"
Ratings: 0 negative/0 positive
Re: MSXML.DOMDocument
Penner

Сообщений: 4102
Откуда: Muenster
Дата регистрации: 26.04.2002
Поиск: MSXML.DOMDocument


------------------
Никогда не откладывайте на завтра, то, о чем можно забыть навсегда
Ratings: 0 negative/0 positive
Re: MSXML.DOMDocument
dafni_2004

Сообщений: 89
Дата регистрации: 17.11.2005
проблеме не совсем точно описана
структура
<p:elements>
<p:fact>
<f:ID>ffc067f7-e491-4f9b-88d9-baf4c9fe3922</f:ID>
<f:OSZCode>4001.000002</f:OSZCode>
<f:MSZ_receiver>
<ps:SNILS>1.......779</ps:SNILS>
<c:FamilyName>А.......</c:FamilyName>
<c:FirstName>М......</c:FirstName>
<c:Patronymic>Се.....</c:Patronymic>
<ps:Gender>Female</ps:Gender>
<ps:BirthDate>1983-03-08</ps:BirthDate>
<ps:BirthPlace>ПЕНЗИНСКАЯ ОБЛАСТЬ, БЕССОНОВСКИЙ, ГРАБОВО</ps:BirthPlace>
<ps:PhoneNumber>........</ps:PhoneNumber>
<ps:Citizenship>643</ps:Citizenship>
<ps:IdentityDoc>
<b4:PassportRF>
<b4:Series>----</b4:Series>
<b4:Number>------</b4:Number>
<b4:IssueDate>2003-04-01</b4:IssueDate>
<b4:Issuer>КОРАБЛИНСКИМ РОВД РЯЗАНСКОЙ ОБЛАСТИ</b4:Issuer>
</b4:PassportRF>
</ps:IdentityDoc>
<ps:Address>
<ps:PermanentResidence>
<b4:OKSMCode>643</b4:OKSMCode>
<b4:PostIndex>0000000</b4:PostIndex>
<b4:Region>Рязанская область</b4:Region>
<b4istrict>.........</b4istrict>
<b4:City>д.......</b4:City>
<b4:Street>ул ......</b4:Street>
<b4:House>3</b4:House>
</ps:PermanentResidence>
</ps:Address>
</f:MSZ_receiver>
<f:LMSZID>1e4b22df-bb35-4e86-bb9a-d8e0e708cf2e</f:LMSZID>
<f:categoryID>720a6922-78a0-4778-8276-a93e9d2c467f</f:categoryID>
<f:decision_date>2019-01-18</f:decision_date>
<f:dateStart>2019-01-10</f:dateStart>
<f:dateFinish>2019-04-09</f:dateFinish>
<f:needsCriteria>
<f:usingSign>true</f:usingSign>
<f:criteria>Адм. регл. преи»</f:criteria>
</f:needsCriteria><f:assignment_info>
<f:monetary_form>
<f:amount>1500,00</f:amount>
</f:monetary_form>
</p:fact>

тэги некоторые не обязательные - и могут не быть в следующей записи
Ratings: 0 negative/0 positive
Re: MSXML.DOMDocument
dafni_2004

Сообщений: 89
Дата регистрации: 17.11.2005
сделал пока так
For i = 0 TO (loXMLNodes.length -1)

loNodes = loXMLNodes.nextNode
m(1)=proba1("f:ID")
........

FUNCTION PROBA1
PARAMETERS username, nomst
txt=[]
loXMLNodes2=loNodes.getElementsByTagName(username)
IF (loXMLNodes2.length )=>1
loNodes2 = loXMLNodes2.nextNode
txt=loNodes2.childNodes(nomst).text
ENDIF
RETURN txt
Ratings: 0 negative/0 positive
Re: MSXML.DOMDocument
Igor Korolyov
Автор

Сообщений: 34580
Дата регистрации: 28.05.2002
loNodes = loxml.selectNodes("//ps:SNILS")
FOR EACH loNode IN loNodes
? loNode.text
ENDFOR


------------------
WBR, Igor
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 26 (Гостей: 26)

© 2000-2024 Fox Club 
Яндекс.Метрика