Я работаю над проектом для клиента, где я создал представление SQL и задание SQL для извлечения данных из их БД для стороннего поставщика. Данные должны быть экспортированы в виде XML-документа. Сторонний поставщик попросил, чтобы XML-файл не содержал простого текста.
При тестировании я настроил это на своей локальной машине, и все работает нормально.
На клиентском сервере я могу запросить представление, и оно вернет данные. Я могу запустить оператор sql для запроса представления, и он возвращает данные в желаемом формате XML. Однако при выполнении задания SQL результирующие данные отображаются в непригодной для использования строке.
Задание SQL выполняется как (CmdExex), а текст задания SQL:
sqlcmd.exe -S <servername> -U <login name> -P <password> -d <databasename>
-i <sql query /input location> -o <file output location and name>.xml
-y 8000 -h -1
Задание запускается и запрашивает представление sql, вызывая этот оператор:
SET NOCOUNT ON
SELECT * FROM dbo.<ViewName>
FOR XML PATH ('INCIDENT');
Результаты должны выглядеть следующим образом:
<INCIDENT>
<YearOf>18</YearOf>
<IncdNo>xxx</Incdno>
И они делают это на моей локальной машине при запуске этого задания.
Однако на сайте заказчика результаты выглядят так: (усечено для места)
0x7575087590075E0075300759007575007550075E0057500757506590065006100720075F006600757506759006E0063006750075E006F0075750C7530061006C006C0057500790070006500753006F0067500650075750C7530061006C006C005750079007000