Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Строка >255 символов. Какой тип использовать? / 18 сообщений из 18, страница 1 из 1
09.06.2003, 16:03
    #32179713
kitty
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
Вы не подскажешь какой тип строковой переменной использовать (в Delphi), чтобы переменная могла вместить больше 255 символов?
Спасибо.
...
Рейтинг: 0 / 0
09.06.2003, 16:11
    #32179722
eNose
Участник
[не активирован]
[не одобрен]
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
String
...
Рейтинг: 0 / 0
09.06.2003, 16:25
    #32179733
Ден
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
2eNose
А в Delphi длина строки (тип String) вроде 255символов (во всяком случае раньше так было)?
...
Рейтинг: 0 / 0
09.06.2003, 16:27
    #32179736
JibSkeart
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
Это было раньше
сейчас вроде бы 32000
ну в хелпе вобщем об этом написанно
...
Рейтинг: 0 / 0
09.06.2003, 16:31
    #32179739
eNose
Участник
[не активирован]
[не одобрен]
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
String = AnsiString (по дефолту: {$H+}) - длина теоретически не ограничена.
...
Рейтинг: 0 / 0
10.06.2003, 08:02
    #32180102
kitty
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
Я пробовала и string, и ansistring, и widestring тип присваивать - во всех трех случаях выдает еррор типа:
[Error] MAIN.PAS(298): String literals may have at most 255 elements

Среда разработки - Delphi 7.
...
Рейтинг: 0 / 0
10.06.2003, 08:27
    #32180113
pkarklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
Показала бы кусок кода. А так могу предположить, что присваиваеш переменной строковый литерал, а его длинна действительно ограничена 255 символами.
...
Рейтинг: 0 / 0
10.06.2003, 08:42
    #32180119
kitty
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
var scripttext:string;
....
scripttext :='select s.tab_numb,s.famname,s.name,s.otche,p.podrazd,d.dolgn,o.oblast,r.rajon,s.city,s.street,s.house,s.phone from spr_sotr s,spr_oblast o,spr_rajon r,spr_podrazd p,spr_dolgn d where s.rajon=r.kod and r.oblast=o.oblast and s.dolgn=d.kod and d.podrazd=p.kod';


Затем переменная scripttext используется как значение входного праметра в процедуре:
CreateMDIChild(item.Name+'_',item.caption, scripttext);


Описание данной процедуры:
procedure TMainForm.CreateMDIChild(const Name_: string; const caption_:string; var script:string);
var
Child: TMDIChild;
I,a,b: Integer;
begin
{ create a new MDI child window }
a:=0;
for I := MDIChildCount-1 downto 0 do
if MDIChildren .name=name_ then a:=a+1;
if a>0 then showmessage('Такой справочник уже открыт');
if a=0 then
begin
Child := TMDIChild.Create(Application);
Child.name := Name_;
Child.Caption := caption_;
Child.pFIBDataset1.selectSQL.clear;
Child.pFIBDataset1.selectSQL.text:=script;
Child.pFIBDataset1.updateSQL.text:=script;
Child.pFIBDataset1.refreshSQL.text:=script;
Child.pFIBDataset1.open;
for i:=0 to child.DBGridEh1.Columns.Count-1 do
child.dbgrideh1.Columns.title.caption:=var_massiv;
b:=0;
for i:=0 to child.DBGridEh1.Columns.Count-1 do
b:=b+ child.DBGridEh1.Columns.items.Width;
child.ClientWidth:=b+30;
end;
end;

Я так поняла что литерал у меня "длинный".
Но если я ввожу еще 2 переменных s1 и s2, первой присваиваю первую часть строки, второй - вторую, а затем
scripttext:=s1+s2, то прикомпиляции ошибки не выдает, но при попытке открытия соответствующей дочерней формы выдается ошибка типа
numeric overflow or string truncation.
Вот так.
...
Рейтинг: 0 / 0
10.06.2003, 08:50
    #32180125
pkarklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
А зачем так все гиморно делать. Создай базовую форму справочника, напиши в ней всю нужную обработку, а для каждого справочника породи свою форму от базовой и поправь свойства DataSetов на соответствующие инструкции. И проверку на существование дочерней MDI формы ты класно делаешь. В цикле проверяй класс формы, и если такой класс найден, то выводи эту форму на верх и вываливайся из цикла.
...
Рейтинг: 0 / 0
10.06.2003, 09:12
    #32180138
StarWind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
может конечно вопрос глупый, но это не база ругается?
...
Рейтинг: 0 / 0
10.06.2003, 12:22
    #32180385
tygra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
Ругается конечно БД или компонент - selectSQL.text почему то ограничен 255 длиной. Или что-то еще.
Причем тут Delphi? Ни при чем.

Надо бы протрассировать и найти, где именно ругается.

И способ создания формы и запросов конечно какой-то странный.
...
Рейтинг: 0 / 0
10.06.2003, 15:26
    #32180645
Serge_S
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
Проверь, что бы в свойствах проекта стояла отметка об испоьзовании длинных строк. (Huge strings кажется)
...
Рейтинг: 0 / 0
10.06.2003, 15:30
    #32180650
kitty
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
И способ создания формы и запросов конечно какой-то странный.
Какой программист, такая и форма :)

А как Вы делаете?
...
Рейтинг: 0 / 0
10.06.2003, 15:34
    #32180653
kitty
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
Установлено huge strings
...
Рейтинг: 0 / 0
10.06.2003, 16:41
    #32180699
Hammer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
Надо так
....
Child.pFIBDataset1.selectSQL.clear;
Child.pFIBDataset1.selectSQL.Add( script );
Child.pFIBDataset1.updateSQL.Add( script );
Child.pFIBDataset1.refreshSQL.Add( script );
....
...
Рейтинг: 0 / 0
10.06.2003, 16:57
    #32180711
Hammer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
Извини описался.
Надо так
....
Child.pFIBDataset1.select.SQL.clear;
Child.pFIBDataset1.select.SQL.Add( script );
Child.pFIBDataset1.update.SQL.Add( script );
Child.pFIBDataset1.refresh.SQL.Add( script );
....
...
Рейтинг: 0 / 0
10.06.2003, 16:58
    #32180713
kitty
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
Спасибо, что помогали!
Дело знаетет в чем оказалось?
В самом запросе я "сгрешила".
вместо r.oblast=o.kod :)
написала r.oblast=o.oblast :(
Спасибо!
...
Рейтинг: 0 / 0
10.06.2003, 17:01
    #32180717
kitty
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Строка >255 символов. Какой тип использовать?
В первом случае правильно : Child.pFIBDataset1.selectSQL.Add( script );
слитно свойство selectSQL
Спасибо :)
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Строка >255 символов. Какой тип использовать? / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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