Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.08.2009, 12:04   #1
Droid
Форумчанин
 
Аватар для Droid
 
Регистрация: 24.04.2008
Сообщений: 440
Счастье Вывод таблицы не выделяя строку

У меня есть таблица пациентов ---> Безымянный.jpg, при нажании на вкладку "общие сведения" у меня в мемо должна заносится информация общая по "учету" и соответственно этому учету ООД (общественно опасные действия). Таблица учта ----->Безымянный1.jpg, на ней показаны строки, НО для "Консультативного учета", не может быть ООД, а может быть только для "Диспансерного учета, при 1 группе вот криншот ---->Безымянный2.jpg".
И мне нужно вывести в мемо информацию по ООД, НО по учету выводит все нормально, причем для выделеного пациента Безымянный.jpg.

Код тут пробовал но чет у меня не получается... Он выводит ООД, если первой записью стоит Диспансерный, а если конссультативый то пусто ((((
Там еще есть таблица DU - диспансерный учет которая связывает таблицу Учета и ООД, но она роли мне кажется не играет.
Код:
procedure TDM.N20Click(Sender: TObject);
var
uch,uchf,odd,oddf: integer;
pac_o: System.text;
s: string[255];
vuch,vodd:string;
begin

with f_obhie do
  begin
    Memo3.Clear;
    Memo4.Clear;
  end;
with DM.ADOQ_U do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT * FROM vid_ucheta vu LEFT OUTER JOIN pacient pt ON vu.id_pacienta=pt.id_pacienta');
    SQL.Add('LEFT OUTER JOIN dispanserniy_uchet du ON vu.id_vid_ucheta=du.id_vid_ucheta LEFT OUTER JOIN gruppa g ON');
    SQL.Add('g.id_gruppi=du.id_gruppi LEFT OUTER JOIN prichina_snyatiya_s_ucheta pssu ON pssu.id_prichini=vu.id_prichini');
    SQL.Add('WHERE vu.id_pacienta=:idos');
    Parameters.ParamByName('idos').Value:=DM.ADOQ_PACid_pacienta.Value;
    Open;
  end;
with DM.ADOQ_DU do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT * FROM dispanserniy_uchet du INNER JOIN vid_ucheta vu ON du.id_vid_ucheta=vu.id_vid_ucheta WHERE du.id_vid_ucheta=:idvu');
    Parameters.ParamByName('idvu').Value:=DM.ADOQ_Uid_vid_ucheta.Value;
    Open;
  end;
with DM.ADOQ_OOD do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT * FROM odd LEFT OUTER JOIN vid_ucheta vu ON odd.id_vid_ucheta=vu.id_vid_ucheta WHERE odd.id_vid_ucheta=:idvuood');
    Parameters.ParamByName('idvuood').Value:=DM.ADOQ_DUid_vid_ucheta.Value;
    Open;
  end;
//вывод самого учета
f_obhie.Memo3.Lines.Add('************************');
f_obhie.Memo3.Lines.Append('УЧЕТ');
f_obhie.Memo3.Lines.Add('************************');
dm.ADOQ_U.First;
for uch:=1 to dm.ADOQ_U.RecordCount do
  begin
       for uchf:=0 to 6 do
           begin
              f_obhie.memo3.Lines.Add(inttostr(uch)+') '+dm.ADOQ_U.Fields[uchf].DisplayName+'   '+dm.ADOQ_U.Fields[uchf].AsString);
              vuch:=f_obhie.Memo3.Text;
           end;
       dm.ADOQ_U.Next;
        //вывод ООД по учету
       dm.ADOQ_OOD.First;
       if dm.ADOQ_Unazvanie.Value='1 группа' then
          begin
              for odd:=1 to dm.ADOQ_OOD.RecordCount do
                  begin
                      for oddf:=0 to 1 do
                          begin
                              f_obhie.Memo4.Lines.Add(inttostr(odd)+') '+dm.ADOQ_OOD.Fields[oddf].DisplayName+'   '+dm.ADOQ_OOD.Fields[oddf].AsString);
                              vodd:=f_obhie.Memo4.Text;
                          end;
                      dm.ADOQ_OOD.Next;
                  end;
          end;
  end;
    AssignFile(pac_o, 'Пациенты\'+dm.ADOQ_PACfamiliya.Value+' '+dm.ADOQ_PACimya.Value+' '+dm.ADOQ_PACotchestvo.Value+'.txt');
    Rewrite(pac_o);
    Writeln(vuch,vodd);
    CloseFile(pac_o);
    F_obhie.ShowModal;
end;
1 старый программист, лучше новых 2-х
Droid вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод пар из таблицы mysql Алежа PHP 2 26.05.2009 22:18
Задача на вывод таблицы в файл Babun Общие вопросы C/C++ 4 24.05.2009 20:08
Как выводить таблицы в строку по ширине Svetix HTML и CSS 2 30.04.2009 14:52
Вставка поля в новую строку таблицы другого документа!!!! Окоча Юра Microsoft Office Word 6 06.03.2009 10:07
вывод таблицы умножения Soule Паскаль, Turbo Pascal, PascalABC.NET 3 12.10.2007 11:26