Как прочитать XML файл?
- HAF
- Автор темы
- Не в сети
- COM_KUNENA_SAMPLEDATA_RANK1
Меньше
Больше
- Сообщений: 3
- Спасибо получено: 3
17 дек 2013 16:13 #1
от HAF
COM_KUNENA_MESSAGE_CREATED_NEW
Доброе время суток!
Подскажите как вытащить содержимое файла, например
<?xml version="1.0" encoding="windows-1251"?><TransferData><UIN>905166444</UIN></TransferData>
мой код - переменные объявлены
DEF TEMP-TABLE tt-data XML-NODE-NAME "TransferData"
FIELD mUIN AS CHAR XML-NODE-NAME "UIN" .
lReturn = TEMP-TABLE tt-data:READ-XML("FILE",iParam,"EMPTY",?,?,?,?).
vErr = "".
IF lReturn = FALSE THEN vErr = "INVALID_XML".
message vErr view-as alert-box.
IF vErr = "" THEN DO:
FIND FIRST tt-data NO-LOCK NO-ERROR.
if avail(tt-data) then message tt-data.mUIN view-as alert-box.
END.
Запись во временную таблицу не происходит. Если же хмл файл такой
<?xml version="1.0" encoding="windows-1251"?><DefaultInput xmlns:xsi="www.w3.org/2001/XMLSchema-instance">905166444
Если добавлен тег <DefaultInput>, то все хорошо. Но у меня этого тега нет.
Подскажите как вытащить содержимое файла, например
<?xml version="1.0" encoding="windows-1251"?><TransferData><UIN>905166444</UIN></TransferData>
мой код - переменные объявлены
DEF TEMP-TABLE tt-data XML-NODE-NAME "TransferData"
FIELD mUIN AS CHAR XML-NODE-NAME "UIN" .
lReturn = TEMP-TABLE tt-data:READ-XML("FILE",iParam,"EMPTY",?,?,?,?).
vErr = "".
IF lReturn = FALSE THEN vErr = "INVALID_XML".
message vErr view-as alert-box.
IF vErr = "" THEN DO:
FIND FIRST tt-data NO-LOCK NO-ERROR.
if avail(tt-data) then message tt-data.mUIN view-as alert-box.
END.
Запись во временную таблицу не происходит. Если же хмл файл такой
<?xml version="1.0" encoding="windows-1251"?><DefaultInput xmlns:xsi="www.w3.org/2001/XMLSchema-instance">
Если добавлен тег <DefaultInput>, то все хорошо. Но у меня этого тега нет.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- alex_sar
- Посетитель
18 дек 2013 15:25 - 18 дек 2013 15:25 #2
от alex_sar
COM_KUNENA_MESSAGE_REPLIED_NEW
DEF VAR vUIN AS CHAR NO-UNDO.
DEF VAR hDoc AS HANDLE NO-UNDO.
DEF VAR hRoot AS HANDLE NO-UNDO.
DEF VAR hField AS HANDLE NO-UNDO.
DEF VAR hText AS HANDLE NO-UNDO.
CREATE X-DOCUMENT hDoc.
CREATE X-NODEREF hRoot.
CREATE X-NODEREF hField.
CREATE X-NODEREF hText.
hDoc:LOAD("FILE","1.xml", FALSE).
hDoc:GET-DOCUMENT-ELEMENT(hRoot).
hRoot:GET-CHILD(hField, 2).
hField:GET-CHILD(hText,1).
vUIN = hText:NODE-VALUE.
MESSAGE vUIN VIEW-AS ALERT-BOX.
DEF VAR hDoc AS HANDLE NO-UNDO.
DEF VAR hRoot AS HANDLE NO-UNDO.
DEF VAR hField AS HANDLE NO-UNDO.
DEF VAR hText AS HANDLE NO-UNDO.
CREATE X-DOCUMENT hDoc.
CREATE X-NODEREF hRoot.
CREATE X-NODEREF hField.
CREATE X-NODEREF hText.
hDoc:LOAD("FILE","1.xml", FALSE).
hDoc:GET-DOCUMENT-ELEMENT(hRoot).
hRoot:GET-CHILD(hField, 2).
hField:GET-CHILD(hText,1).
vUIN = hText:NODE-VALUE.
MESSAGE vUIN VIEW-AS ALERT-BOX.
Last edit: 18 дек 2013 15:25 by alex_sar.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- alex_sar
- Посетитель
18 дек 2013 16:09 #3
от alex_sar
COM_KUNENA_MESSAGE_REPLIED_NEW
<?xml version="1.0" encoding="windows-1251"?>
<TransferData>
<UIN>12365689</UIN>
</TransferData>
<TransferData>
<UIN>12365689</UIN>
</TransferData>
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- HAF
- Автор темы
- Не в сети
- COM_KUNENA_SAMPLEDATA_RANK1
Меньше
Больше
- Сообщений: 3
- Спасибо получено: 3
18 дек 2013 16:12 #4
от HAF
COM_KUNENA_MESSAGE_REPLIED_NEW
В развернутом виде получилось.
Спасибо сказали: alex_sar
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- HAF
- Автор темы
- Не в сети
- COM_KUNENA_SAMPLEDATA_RANK1
Меньше
Больше
- Сообщений: 3
- Спасибо получено: 3
18 дек 2013 17:30 #5
от HAF
COM_KUNENA_MESSAGE_REPLIED_NEW
<?xml version="1.0" encoding="WINDOWS-1251"?><QuickPayABS><Report><ReqSendTransferList><TransferData><UIN>905166444</UIN></TransferData></ReqSendTransferList></Report></QuickPayABS>
А если несколько вложений? Не понимаю, если в строчку при данном xml NUM-CHILDREN = 1, а если не в 1 строку то 3.
А если несколько вложений? Не понимаю, если в строчку при данном xml NUM-CHILDREN = 1, а если не в 1 строку то 3.
Спасибо сказали: alex_sar
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- SergeiBIS
- Не в сети
- COM_KUNENA_SAMPLEDATA_RANK3
Меньше
Больше
- Сообщений: 54
- Спасибо получено: 56
11 фев 2014 09:57 #6
от SergeiBIS
COM_KUNENA_MESSAGE_REPLIED_NEW
Нужно прочитать XML переменной структуры?
Спасибо сказали: alex_sar
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- shumamura
- Не в сети
- COM_KUNENA_SAMPLEDATA_RANK3
Меньше
Больше
- Сообщений: 52
- Спасибо получено: 51
10 апр 2014 15:15 #7
от shumamura
COM_KUNENA_MESSAGE_REPLIED_NEW
делаю процедуру которая читает данные из xml-файла, которая содержит данные для налолжения на счетах клиентов арестов. при этом не могу понять как реализовать так, чтобы автоматом на счетах встали блокировки из файла. нахожу клиента из файла а куда дальше копнуть пока не вникаю...
Спасибо сказали: alex_sar
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- alex_sar
- Посетитель
11 апр 2014 15:33 #8
от alex_sar
COM_KUNENA_MESSAGE_REPLIED_NEW
Не совсем понял Ваш вопрос. Какие данные у Вас есть, что Вы хотите сделать?
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- shumamura
- Не в сети
- COM_KUNENA_SAMPLEDATA_RANK3
Меньше
Больше
- Сообщений: 52
- Спасибо получено: 51
12 апр 2014 07:27 #9
от shumamura
COM_KUNENA_MESSAGE_REPLIED_NEW
к примеру файл содержит фио,адрес места жительства, сумма и еще какие-то данные. надо найти этого человека и если он есть в базе, то поставить блокировку на его счете на сумму, указанную в файле.
Спасибо сказали: alex_sar
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- shumamura
- Не в сети
- COM_KUNENA_SAMPLEDATA_RANK3
Меньше
Больше
- Сообщений: 52
- Спасибо получено: 51
14 апр 2014 16:14 #10
от shumamura
COM_KUNENA_MESSAGE_REPLIED_NEW
а что если при такой блокировке просто добавлять запись в таблицу BlockObject с присвоением соотвествующих реквизитов?
Спасибо сказали: alex_sar
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Время создания страницы: 0.219 секунд