04.04.2008, 15:57 | #1 |
Участник
|
Нужно напечатать содержание текстовой переменной в отчете (вывести на просмотр). Вроде бы обычное действие, но если длина переменной больше, чем 404 символа, то Навижен падает по майкрософтовской ошибке. Как с этим бороться, кроме как разбить строку на 2 маленькие?
|
|
04.04.2008, 18:18 | #2 |
Участник
|
Цитата:
NewString := COPYSTR(String, Position [, Length]) Разбить строку можно так Код: Str1:= COPYSTR(String, 1, 300); Str2:= COPYSTR(String, 301); |
|
04.04.2008, 23:06 | #3 |
Участник
|
В мануалах по Навижен написано, что текстовая переменная может иметь длину 1024 символа. Это вообще нормально, что на печать выводится только 404?
|
|
07.04.2008, 10:35 | #4 |
Участник
|
Цитата:
P.S. Кстати, где написано, что 1024? Из хелпа (кстати, насколько я помню - это один из официальных источников): - TEXT - Use this simple data type to denote a text string. The string can be from 1 to 250 characters in length. The length of a text variable equals the number of characters in the string. An empty text string has a length of zero (0). - CODE - Use this simple data type to denote a special type of string that the system converts to uppercase and removes any trailing or leading characters. A code variable can be from 1 to 250 characters in length. The length of a code variable equals the number of characters in the text, without leading or trailing spaces. - CHAR - Use this simple data type to store a single character as a value in the range 0 to 255.... - SQL Server Data Types: Every available Microsoft Dynamics NAV data type is mapped to an appropriate SQL Server data type in the tables of the SQL Server Option for Microsoft Dynamics NAV. The following table shows which SQL Server data type is used for the corresponding Microsoft Dynamics NAV data type: Microsoft Dynamics NAV Data Type // SQL Server Data Type : Integer // INTEGER Option // INTEGER Code(n) // VARCHAR(n), INTEGER, SQL_VARIANT Text(n) // VARCHAR(n) Decimal // DECIMAL(38,20) Date // DATETIME Time // DATETIME Boolean // TINYINT Binary(n) // VARBINARY(n) BLOB // IMAGE DateFormula // VARCHAR(32) TableFilter // VARBINARY(252) BigInteger // BIGINT Duration // BIGINT DateTime // DATETIME GUID // UNIQUEIDENTIFIER RecordID // VARBINARY(n) Each of the SQL Server data types is created as NOT NULL except the IMAGE type, which allows NULL. There are other SQL Server data types than those listed in the previous table. You can use and modify these from within Microsoft Dynamics NAV when you have created or altered SQL Server tables or views outside Microsoft Dynamics NAV. |
|
07.04.2008, 12:40 | #5 |
Участник
|
Длинна текстового поля - не более 250 байт, а вот переменной текстовой - 1024.
|
|
07.04.2008, 17:51 | #6 |
Участник
|
|
|
08.04.2008, 09:48 | #7 |
Участник
|
|
|
08.04.2008, 10:44 | #8 |
Участник
|
А Вы молодец, внимательно читаете доку (мне стыдно наверное должно быть, но сам не читал - програмить начал от нечего делать и по хелпу).
Вот на лицо два источника от одной компании, в которых разниться инфа!!! В данном случае это все "Fundamental Data Types", но! при создании поля типа ТЕХТ максимальная длина 250, а когда переменная - 1024. При этом понятие Тип данных и Переменная НИГДЕ в обоих источниках не упоминается. |
|
08.04.2008, 11:39 | #9 |
Участник
|
Цитата:
Ву а ля - у нас текстовове поле в 1000 байт |
|
09.04.2008, 11:33 | #10 |
Участник
|
А при печати это тоже можно обойти? Почему-то именно на 405-м символе все падает. Мне нужно чтобы длинный текст печатался подряд, то есть без разрывов, поэтому разбивание на 2 переменные не подходит
|
|
09.04.2008, 12:00 | #11 |
Участник
|
|
|
09.04.2008, 17:37 | #12 |
Участник
|
|
|