![]() |
#10 |
Участник
|
Цитата:
(theBat это умеет, outlook скорее всего тоже). Но зачем вам вообще заморачиваться с почтой ? Почта тут - лишнее звено, из за которого будут одни проблемы при эксплуатации. Не надежно все это. На мой взгляд такой способ - извращение. Не лучше ли из Аксапты, напрямую, запрашивать некий web сервис, который по заданному адресу будет возвращать xml пакет с данными, необходимыми для импорта в Аксапту ? (Эту функцию можно будет затем запускать в Аксапте в режиме пакетной обработки с любой периодичностью) Вот пример, который импортирует данные о курсах валют с сайта ЦБ (http://www.cbr.ru/scripts/XML_daily.asp) - все очень просто X++: void run() { com xml; XMLNodeList nodelist; XMLElement xmlNodeLine; int i; Currency currency; CurrencyCode currencyCode; ExchRates exchRates; InteropPermission dllPermission = new InteropPermission(InteropKind::ComInterop); ; dllPermission.assert(); try { xml = new COM('Microsoft.Xmldom'); xml.async(False); xml.validateOnParse(False); xml.load(strfmt("http://www.cbr.ru/scripts/XML_daily.asp")); nodelist = xml.getElementsByTagName("Valute"); for (i = 0; i < nodelist.length(); i ++) { xmlNodeLine = nodelist.item(i); currencyCode = valueFromXMLNode(types::String, xmlNodeLine.getElementsByTagName('CharCode').item(0)).value('value'); currency = currency::find(currencyCode); if (currency.RecId != 0) { exchRates = exchRates::find(currencyCode); if (exchRates.RecId == 0) { exchRates.CurrencyCode = currencyCode; exchRates.FromDate = systemDateGet(); exchRates.ExchRate = valueFromXMLNode(types::Real, xmlNodeLine.getElementsByTagName('Value').item(0)).value('value') / valueFromXMLNode(types::Real, xmlNodeLine.getElementsByTagName('Nominal').item(0)).value('value') * 100; if (exchRates.validateWrite()) { exchRates.insert(); info (strFmt('Введен курс валюты %1 со значением %2 на дату %3', exchRates.CurrencyCode, exchRates.ExchRate, exchRates.FromDate)); } } } } } catch (Exception::Error) { error(chi_GetTimeStamp() + "Процедура импорта валютных курсов завершилась неудачей"); } } Это всего лишь один из примеров реализации. Есть возможность передавать через web сервисы и "закрытые" данные, и данные по параметрическим запросам... Обратитесь к поставщикам вашего xml файла. Создать web сервис, который будет выдавать xml - дело 5 минут для грамотного NET программиста, например... |
|