powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Обойти ограничение в 8000 символов
16 сообщений из 16, страница 1 из 1
Обойти ограничение в 8000 символов
    #39802286
-SWAN-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Подскажите советом.
Как обойти ограничение на 'ResponseText' в 8000(varchar) (или как вариант в 4000 в nvarchar)?
Есть код, им я отправляю xml и должен по идее получить в ответ PDF-файл (проблема в том что размер возвращаемого файла около 50000 символов) и он странным образом обрезается (например до 84 символов)

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
declare @str varchar(8000)
set @str='xml_request=<?xml version="1.0" encoding="UTF-8" ?>
<OrdersPrint Date="2018-08-10" Account="z9GRRu7FxmO53CQ9cFfI6qiy32wpfTkd" Secure="w24JTCv4MnAcuRTx0oHjHLDtyt3I6IBq" OrderCount="1" CopyCount="1">
    <Order DispatchNumber="1105049242"/>
</OrdersPrint>'
         
DECLARE @url varchar(300)  
DECLARE @win int 
DECLARE @hr  int 
declare @test nvarchar (4000)

SET @url = 'https://integration.edu.cdek.ru/orders_print.php'

EXEC @hr=sp_OACreate 'MSXML2.ServerXMLHTTP',@win OUT 
EXEC @hr=sp_OAMethod @win, 'Open',null,'POST',@url,'false'
EXEC @hr=sp_OAMethod @win,'setRequestHeader',NULL, 'Content-type', 'application/x-www-form-urlencoded; charset=UTF-8'
EXEC @hr=sp_OAMethod @win,'Send',NULL,@str
EXEC @hr=sp_OAGetProperty @win,'ResponseText', @test output
select len(@test), @test
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802295
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-SWAN-
Код: sql
1.
declare @str varchar(8000)


Так ?
Код: sql
1.
declare @str varchar(max)
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802299
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-SWAN-,

авторapplication/x-www-form-urlencoded

должен по идее получить в ответ PDF-файл
авторContent-type:application/pdf
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802301
-SWAN-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Valery_B, нет, проблема в

declare @test nvarchar (4000)

в неё выгружаются данные
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802304
-SWAN-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaPaK-SWAN-,

авторapplication/x-www-form-urlencoded

должен по идее получить в ответ PDF-файл
авторContent-type:application/pdf

нет, при таком варианте ошибка отправляемого XML (ругается)
Код: sql
1.
<?xml version="1.0" encoding="UTF-8"?><response ErrorCode="ERR_XML_EMPTY" Msg="Значение переменной $_POST[xml_request] пустое" />
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802306
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-SWAN-TaPaK-SWAN-,

пропущено...


должен по идее получить в ответ PDF-файл
пропущено...


нет, при таком варианте ошибка отправляемого XML (ругается)
Код: sql
1.
<?xml version="1.0" encoding="UTF-8"?><response ErrorCode="ERR_XML_EMPTY" Msg="Значение переменной $_POST[xml_request] пустое" />


Так заполняйте правильно Значение переменной $_POST[xml_request]
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802307
-SWAN-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может быть есть какой-нибудь совсем другой подход? как получить файл (в моем случае PDF) из интернета?
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802311
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-SWAN-Может быть есть какой-нибудь совсем другой подход? как получить файл (в моем случае PDF) из интернета?
Сотни способов без использования SQL сервера
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802315
-SWAN-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaPaK-SWAN-Может быть есть какой-нибудь совсем другой подход? как получить файл (в моем случае PDF) из интернета?
Сотни способов без использования SQL сервера

мне хотя бы один примерчик, например в VBA (Access)
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802322
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-SWAN-TaPaKпропущено...

Сотни способов без использования SQL сервера

мне хотя бы один примерчик, например в VBA (Access)
google -> vba get file from internet
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802324
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-SWAN-,

Код: sql
1.
2.
3.
4.
5.
declare @t table (s nvarchar(max));
insert into @t
 EXEC @hr=sp_OAGetProperty @win,'ResponseText'

select len(s), s from @t
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802336
-SWAN-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
invm-SWAN-,

Код: sql
1.
2.
3.
4.
5.
declare @t table (s nvarchar(max));
insert into @t
 EXEC @hr=sp_OAGetProperty @win,'ResponseText'

select len(s), s from @t



нет, увы, так тоже обрезает до 84-х символов. Спасибо.
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802337
-SWAN-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaPaK-SWAN-пропущено...


мне хотя бы один примерчик, например в VBA (Access)
google -> vba get file from internet

Но у меня нет файла (нет ссылки на него)
Я могу его получить только в ответ на мой XML запрос.
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802358
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-SWAN-нет, увы, так тоже обрезает до 84-х символов.Это был ответ на-SWAN-Как обойти ограничение на 'ResponseText' в 8000(varchar)
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802383
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я, наверное, опять банален... но!

PDF это binary.

Поэтому тредстартер сам себе злобный буратино.
...
Рейтинг: 0 / 0
Обойти ограничение в 8000 символов
    #39802581
-SWAN-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
aleks222Я, наверное, опять банален... но!

PDF это binary.

Поэтому тредстартер сам себе злобный буратино.

)))
Всем спасибо за советы!
Получилось сделать это в клиенте (Access VBA)
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Обойти ограничение в 8000 символов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]