|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Delphi 7 + MS SQL Server
Программа: Регистратура в поликлиннике.
БД MS-SQL: Таблица_1 - Пациенты, Таблица_2 - Врачи, Таблица_3 - Талоны. Возможно таблица_4 для справки по времени. Вопрос: Как организовать таблицу для справки? (зелёная зона на схеме) |
#2
|
|||
|
|||
Код:
//Выбрали Смену выбрали дату procedure TCT.DTPChange(Sender: TObject); var myDate : TDateTime; mY, mM, mD, D : word; begin //Оперделили чётность даты myDate :=DTP.DateTime; DecodeDate (MyDate, mY, mM, mD); IF odd(mD) THEN D := 0 ELSE D :=1; //Проверяем работу врача IF D=0 THEN IF CB.ItemIndex = 0 THEN //Если Дата_Чётная и Смена первая, Lab1.Caption := 'Утро' //То работа утром ELSE Lab1.Caption := 'Вечер' //Иначе вечером ELSE IF CB.ItemIndex = 0 THEN //Если Дата_Нечётная и Смена первая, Lab1.Caption := 'Вечер' //То работа Вечером ELSE Lab1.Caption := 'Утро'; //Иначе утром end; Как сделать условия я разобрался. Главный вопрос как добавить записи c "индексом один/два" из таблицы SQL Server в ComboBox? |
#3
|
||||
|
||||
може все-таки DBLookupComboBox ?
Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
|
#4
|
|||
|
|||
Цитата:
Где он находится? |
#5
|
||||
|
||||
там ----------------->
Я за здоровый экстрим! Спасибо за "спасибо") |
Этот пользователь сказал Спасибо Mrak за это полезное сообщение: | ||
darkghostnt (16.11.2013)
|
#6
|
|||
|
|||
Осталось оформить отчёт, остальное всё сделал.
Отчёт делал через QuickReport, но он выводит все строки из таблицы. Как сделать, чтобы: Выбрал нужную строку нажал печать, и вышла на печать только эта строка, оформленная в QuickReport? |
#7
|
||||
|
||||
Цитата:
Либо же обрабатывай событие BeforePrint в котором устанавливай параметр PrintBand в False если очередную запись не нужно выводить на печать. |
#8
|
|||
|
|||
Цитата:
QReport привязан на ADOQuery в котором прописано в SQL: SELECT * FROM T. В Кнопке на "Просмотр печати" прописано просто Код:
procedure Tf_TAL.Button1Click(Sender: TObject); begin f_print.QuickRep1.PreviewModal; end; end. в данный момент выводит все записи (картика) |
#9
|
||||
|
||||
Цитата:
Допустим DBGrid привязан к ADOQuery1, а QReport привязан к ADOQuery2. Пользователь выбирает нужную ему запись в ADOQuery1 (посредством DBGrid) и нажимает кнопку Button1 для формирования отчёта, в которой делаем примерно так: Код:
procedure Tf_TAL.Button1Click(Sender: TObject); begin ADOQuery2.Close; ADOQuery2.SQL.Text := 'SELECT * FROM T WHERE id='+ADOQuery1.FieldByName('id').AsString; ADOQuery2.Open; f_print.QuickRep1.PreviewModal; end; |
Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
darkghostnt (17.11.2013)
|
#10
|
|||
|
|||
Подскажите пожалуйста как настроить Print Preview?
Он при запуске открывается на полный экран и делает страницу по ширине, а она у меня 7х11см. |