![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Программа: Регистратура в поликлиннике.
БД 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 ?
|
|
#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см. |