|
v7: получаемая строка превысит допустимые размеры, как побороть? |
☑ |
0
pvase
20.01.12
✎
15:19
|
Если в строке идет подряд больше 499 символов (без переноса строк "РазделительСтрок"), то такой текст в окно сообщений вывести нельзя. Попытался его показать через объект "Текст" ошибка та же: "Одна из строк исходного текста превышает допустимые размеры".
Как можно обойти это ограничение и увидеть текст? (Это текст запроса на SQL, надо отловить где в нем ошибка).
|
|
1
Sh1ko
20.01.12
✎
15:21
|
показывай кусками, в чем проблема?
|
|
2
aleks-id
20.01.12
✎
15:21
|
запиши в файл
|
|
3
Mikeware
20.01.12
✎
15:23
|
Процедура глПоказатьТекстЗапроса(ТекстЗапроса, Заголовок) Экспорт
Текст=СоздатьОбъект("Текст");
Текст.ДобавитьСтроку(ТекстЗапроса);
Текст.Показать(Заголовок);
КонецПроцедуры
|
|
4
pvase
20.01.12
✎
15:25
|
(1) Как вариант, думал может проще есть, а так придеться каждые 499 символов вставлять перенос.
(2) Тоже выход.
(3) Так и делал:
СтрРез = "";
Для Н = 1 По 500 Цикл
СтрРез = СтрРез + "A";
КонецЦикла;
//Сообщить(СтрРез);
ТекстРез = СоздатьОбъект("Текст");
ТекстРез.ДобавитьСтроку(СтрРез);
ТекстРез.Показать("");
А в ответ ошибка.
|
|
5
pvase
20.01.12
✎
15:27
|
Как вариант, можно еще через RichText показать используя ActiveX на форме.
|
|
6
Zypse
20.01.12
✎
15:29
|
Можно попробовать через V7Plus(Объект V7TextFile)
|
|
7
andrewks
20.01.12
✎
15:29
|
(6) и чем он лучше, чем Текст?
|
|
8
Zypse
20.01.12
✎
15:40
|
(7) Работает с более длинными строками. Какими сейчас уже не помню.
|
|
9
Mikeware
20.01.12
✎
15:45
|
(4) я тебе привел функцию прям из рабочей базы...
|
|
10
pvase
20.01.12
✎
15:49
|
(9) У меня пример из (4) Выдает ошибку при вызове метода Показать. Похоже что ограничение тоже самое.
|
|
11
Ковычки
20.01.12
✎
15:53
|
ВвестиСтроку(ДлинющаяСтрока,,0,1);
|
|
12
Ковычки
20.01.12
✎
15:55
|
Форма.Строка.Заголовок(ДлинющаяСтрока);
|
|
13
pvase
20.01.12
✎
16:04
|
(11) "ВвестиСтроку" вполне подходит. Спасибо.
|
|
14
Torquader
21.01.12
✎
22:13
|
i=TempDir()+"МойФайл.txt";
o=CreateObject("Scripting.FileSystemObject");
f=o.CreateTextFile(i,-1,0);
f.Write(Строка);
f.Close();
RunApplication("NOTEPAD.EXE "+i);
|
|