AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 20.02.2015, 14:23   #1  
Kristelka is offline
Kristelka
Участник
 
2 / 10 (1) +
Регистрация: 20.02.2015
Добрый день.

Есть задача переноса XML-данных из Navision 2009 в 1С. Web-сервис поднят на 1С. Не знаю как сделать экспорт из Nav. Подскажите пожалуйста, что лучше использовать в этом случае? И если можно, конкретные примеры.

Спасибо.
Старый 23.02.2015, 14:23   #2  
zuzka is offline
zuzka
Участник
Аватар для zuzka
 
131 / 10 (1) +
Регистрация: 29.07.2013
из NAV в XML складывайте в папку, и пусть 1С из нее загребает.
__________________
Как только вы проиграете, все ваши прошлые победы забудут.
Старый 05.03.2015, 17:45   #3  
Kristelka is offline
Kristelka
Участник
 
2 / 10 (1) +
Регистрация: 20.02.2015
Добрый день.

Имелось ввиду что-то вроде этого :

IF ISCLEAR(XMLHTTP) THEN
CREATE(XMLHTTP);
MyFile.CREATE('C:\Users\Desktop\folder\79CompanyInfo.xml');
MyFile.TEXTMODE(TRUE);
MyFile.WRITEMODE(TRUE);
XMLHTTP.Open('POST', 'http://127.0.0.1/web/ws/ObmenXML.1cws', TRUE);
//XMLHTTP.Open('GET', 'http://localhost/web/ws/ObmenXML.1cws?wsdl'); //Импорт в Нав
XMLHTTP.SetRequestHeader('Content-type', 'text/xml');
XMLHTTP.Send(XML_DOM);
XMLHTTP.WaitForResponse(1000);
IF XMLHTTP.Status <> 200 THEN
MESSAGE('Http Error ' + ' ' + FORMAT(XMLHTTP.Status) + ': ' + XMLHTTP.StatusText);
MyFile.CREATEOUTSTREAM(MyFileStream);
MyRespStream := XMLHTTP.ResponseStream;
WHILE (NOT MyRespStream.EOS) DO BEGIN
MyRespStream.READTEXT(MyText);
MyFileStream.WRITETEXT(MyText);
IF MyText <> '' THEN MyFileStream.WRITETEXT;
END;
MyFile.CLOSE;

Где XMLHTTP - 'Microsoft WinHTTP Services, version 5.1'.WinHttpRequest
XML_DOM - 'Microsoft XML, v6.0'.DOMDocument60

При запуске ругается на XML_DOM, "неизвестный код ошибки".

Может тип XML_DOM не тот?

И ещё вопрос с загрузкой данных в XML_DOM. Когда пишу

XML_DOM.load(Текст),

то выдаёт ошибку "Не создан экземпляр этой переменной автоматизации".
Старый 09.04.2015, 20:17   #4  
dmites is offline
dmites
Участник
Аватар для dmites
 
221 / 14 (1) ++
Регистрация: 10.08.2005
Сначала генерим xml

Name DataType Subtype Length
Document Automation 'Microsoft XML, v3.0'.DOMDocument30
xmlElement Automation 'Microsoft XML, v3.0'.IXMLDOMElement

IF NOT ISCLEAR(Document) THEN
EXIT;

IF NOT CREATE(Document,TRUE) THEN
ERROR('Не могу создать xml ');

Document.async(FALSE);
xmlInstruction := Document.createProcessingInstruction('xml', 'version=''1.0'' encoding=''UTF-8''');
xmlElement := Document.createElement('ROOT_ELEMENT');
Document.appendChild(xmlElement);
Document.insertBefore(xmlInstruction, xmlElement);
далее наполнение xml.....


Потом отправляем его на url, способный его "переварить"


Name DataType Subtype Length
XMLHTTP Automation 'Microsoft XML, v3.0'.XMLHTTP


SendFile2Url(VAR auDoc : Automation "'Microsoft XML, v3.0'.DOMDocument";pUrl : Text[200]) Result : Text[300]

IF NOT ISCLEAR(XMLHTTP) THEN
CLEAR(XMLHTTP);

CREATE(XMLHTTP);


XMLHTTP.open('POST',pUrl, FALSE);
XMLHTTP.setRequestHeader('Content-Type: ', 'application/x-www-form-urlencoded');

XMLHTTP.send(auDoc);


IF XMLHTTP.status<>200 THEN
EXIT(STRSUBSTNO('Result %1: %2',XMLHTTP.status,COPYSTR(XMLHTTP.statusText,1,250)));
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 22:47.