Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];

Вниз

Отображение длинных текстов в DBGrid   Найти похожие ветки 

 
s_t_d   (2006-06-15 10:37) [0]

Уважаемые мастера, пожалуйста посоветуйте, как быть.
База MS SQL (получена из вне). Одно поле в некоторой таблице объявлено varchar 600. При отображении в DBGrid значения не показываются, а в ячейках стоит "MEMO". С полями меньшей длины, например varchar 50, такого не происходит и в DBGrid все отображается нормально. Что почитать, куду "бежать"?


 
Sergey13 ©   (2006-06-15 10:39) [1]

Поставь рядом с гридом Мемо-контрол и читай там. В гридину можно впихнуть урезанное до разумных пределов поле.


 
s_t_d   (2006-06-15 10:46) [2]

[1] Спасибо, но ведь для формирования запроса я исп. Query и следовательно результирующий набор данных там. Как же в этой связке исп. предложенный Вами Мемо-контрол? Или я чего-то не понимаю?
Пожалуйста проясните, если не трудно.


 
Ega23 ©   (2006-06-15 10:52) [3]


> Уважаемые мастера, пожалуйста посоветуйте, как быть.
> База MS SQL (получена из вне). Одно поле в некоторой таблице
> объявлено varchar 600. При отображении в DBGrid значения
> не показываются, а в ячейках стоит "MEMO". С полями меньшей
> длины, например varchar 50, такого не происходит и в DBGrid
> все отображается нормально. Что почитать, куду "бежать"?
>


Всё, что больше varchar(255) воспринимается как BLOB. Поэтому или меняй размерность поля, или - Sergey13 ©   (15.06.06 10:39) [1]


 
Sergey13 ©   (2006-06-15 10:55) [4]

2[2] s_t_d   (15.06.06 10:46)
Если делать по умному, то в запросе надо запрашивать (помимо остальных нужных) только урезанное поле (как - не знаю для МССКЛ), а все поле вытаскивать по отдельному запросу юзера (типа трафик экономим).
Если делать по быстрому, то можно запросить сразу все поля. Добавить вычисляемое поле на подстроку длинного. Его в грид, само поле в Мемо-контрол.


 
s_t_d   (2006-06-15 10:56) [5]

[3] Менять размерность затруднительно - база не наша, а поступает из вне.
Что характерно, ни одной записи более 100 символов там нет.


 
Sergey13 ©   (2006-06-15 10:57) [6]

2[5] s_t_d   (15.06.06 10:56)
Если так, то делай вариант "по быстрому". 8-)


 
Desdechado ©   (2006-06-15 11:02) [7]

> я исп. Query и следовательно результирующий набор данных там.
> Как же в этой связке исп. предложенный Вами Мемо-контрол?
DBMemo знаешь?


 
MsGuns ©   (2006-06-15 17:27) [8]

Я делаю так:
Для "длинных" колонок есть фича "Открыть окно просмотра" (через экшн, повешенный на пункт пупапменю грида или кнопку панели управления - экшн подымается или опускается в зависимости от тэга TField.Tag, выставленный в 1 в дизайне для "широких" полей). Если юзер ее кликает, то создается форма окно с единственным объектом в нем - TMemo Align := alClient. Форма создается как fsStayOnTop, т.е. она все время наверху и можно ее как переместить в удобное место экрана (например, чтобы открыть интересующую часть грида), так и изменить размеры до удобных. В тэг соответствующей колонки грида записываю указатель на форму. Если юзер форму-мемо прикрывает, то тэг обнуляется.
По событиям датасета AfterScroll/Open делается в цикле просмотр тэгов всех колонок грида и если тэг содержит указатель на форму, в находящейся на ней единственный TControl (то самое мемо) записываю содержимое поля, на которое ссылается колонка грида.
Результат таков: грид "листается" и синхронно с ним меняются данные в формах-полях, кол-во которых зависит от числа "широких" полей и желания пользователя.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.04 c
15-1153583478
Nic
2006-07-22 19:51
2006.08.20
Мой первый проект под заказ


15-1153604106
Германн
2006-07-23 01:35
2006.08.20
Скушно!


1-1152186760
Oleon
2006-07-06 15:52
2006.08.20
Компонент: панель с кнопками открытых MDI окон.


2-1154595222
GEM
2006-08-03 12:53
2006.08.20
Не могу написать запросы. Нужна помощь


2-1154328696
learner
2006-07-31 10:51
2006.08.20
Быстрый поиск узла в TreeView





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский