строка длинная из-за нее идет смещение!!! ПОМОГИТЕ ПЛИЗ!!!!

Tamila86
Дата: 04.05.2011 09:53:25
Как сделать, если строка длинная от этого идет смещение других данных....
как на рис. показано (Причина ост. 3)-берется из справочника, из-за длины строки идет смещение, в справочнике самая максимальная строка (96 символов)

Данные формируются в MsSQL, затем в Delphi вызываются хранимки, из полученные данные записываться в TdxMemData, после выводятся в отчет.
Данные должны смотреться вот так:

первая строка - (первого №) правильно, и (второго №) - к нему относиться (Причина ост.3 - ИММУНОЛОГИЧЕСКАЯ НЕЭФФЕКТИВНОСТЬ)

вторая строка (второго №), должна быть (Дата начала 3 = 05.04.2011) -> (Дата остановки 3=20.04.2011) -> (Причина остановки = Отсутствие лекарств) -> (Дата 4=03.04.2011) -> (4 результат =600) -> (Дата 5 =04.04.2011) -> (5 результат=3256). - Должны переноситься на новую строку

третья строка (второго №), должна быть (Дата начала 3 = 01.05.2011) -> (Дата остановки 3= null) -> (Причина остановки = '') -> (Дата 4=02.05.2011) -> (4 результат =9000) -> (Дата 5 =03.04.2011) -> (5 результат=9810). - Должны переноситься на новую строку

Помогите кто сможет!!!!
чччД
Дата: 04.05.2011 09:57:58
Tamila86, ну а чем конкретно ты это "неправильное" формируешь?
Evgen2010
Дата: 04.05.2011 10:02:04
Tamila86
Как сделать, если строка длинная от этого идет смещение других данных....

Так быть недолжно, если только сами чего-то не напартачили.
К TdxMemData грид цепляли? Там отображается то же самое?
Возможно, вы как-то "неправильно" данные в TdxMemData сгружаете.
Anatoly Podgoretsky
Дата: 04.05.2011 10:02:35
Не надо все даты в одну строку, нужно только по одной и никаких смещений не будет
Evgen2010
Дата: 04.05.2011 10:04:37
Anatoly Podgoretsky
Не надо все даты в одну строку, нужно только по одной и никаких смещений не будет

А почему бы и нет, если относятся к одному объекту? Главное группировать правильно.
Tamila86
Дата: 04.05.2011 10:08:09
чччД,

вот как должно быть
ПОМОГИТЕ!!!!
Tamila86
Дата: 04.05.2011 10:09:35
Evgen2010,

загружаю типа так
                t_date_ART:=t_date_ART+dmMain.spTemp.FieldByName('Date_nach_ART').AsString+#13#10;
                t_Date_ART_okon:=t_Date_ART_okon+dmMain.spTemp.FieldByName('Date_ok_ART').AsString+#13#10;
                t_prich_ost_ART:=t_prich_ost_ART+dmMain.spTemp.FieldByName('prich_ART').AsString+#13#10;
Tamila86
Дата: 04.05.2011 10:10:46
Anatoly Podgoretsky,

Да у меня записывается все в одну строку
Tamila86
Дата: 04.05.2011 10:13:01
Записываю все в одну строку

      while not dmMain.spTemp.Eof do
              begin
                t_date_ART:=t_date_ART+dmMain.spTemp.FieldByName('Date_nach_ART').AsString+#13#10;
                t_Date_ART_okon:=t_Date_ART_okon+dmMain.spTemp.FieldByName('Date_ok_ART').AsString+#13#10;
                t_prich_ost_ART:=t_prich_ost_ART+dmMain.spTemp.FieldByName('prich_ART').AsString+#13#10;

                dmMain.spTemp.Next;
               end;

а потом просто в TdxMemData кидаю
            mdHuman_infoDate_ART.AsString:=t_date_ART;
            mdHuman_infoDate_ART_okon.AsString:=t_Date_ART_okon;
            mdHuman_infoprich_ost_ART.AsString:=t_prich_ost_ART;
Anatoly Podgoretsky
Дата: 04.05.2011 10:14:34
Evgen2010
Anatoly Podgoretsky
Не надо все даты в одну строку, нужно только по одной и никаких смещений не будет

А почему бы и нет, если относятся к одному объекту? Главное группировать правильно.

Ну тогда не стоит обижаться на вертикальное смещение.