Petr,спасибо, все работает. Почему-то я код вставил в свой проект и не заработало.
2 2020-03-17 10:41:10
Re: Объединение трех таблиц (4 replies, posted in Russian)
Так я пробовал, запрос не работает, выдает ошибку.
3 2020-03-17 06:33:37
Topic: Объединение трех таблиц (4 replies, posted in Russian)
Подскажите пожалуйста, застрял на ровном месте
Есть структура базы данных в виде таблиц:
Прибор учета (PU) - содержит поле номер прибора учета, ID таблицы тип прибора учета). Прибор учета с номером это уникальное значение.
Тип прибора учета (TipP) - содержит тип прибора учета, ID таблицы
Характеристики прибора учета (XarPU) Характеристики прибора учета
Изначально задумка такая.
1. Заполняются типы приборов учета с определенными характеристиками ( в таблице тип прибора учета содержаться ID таблицы характеристики прибора учета)
2. Добавляется прибор учета - выбирается тип прибора учета из ранее добавленных в базу и добавляется номер (в таблице прибор учета содержиться ID таблицы тип прибора учета)
На этом этапе все работает.
Цель: вывести общую таблицу всех добавленных в базу приборов учета со всеми характеристиками, т.е. все заполненные в базу приборы учета с номером.
В приложенном тестовом проекте работает как обычный поиск, так и поиск SQL запросом. Вывести данные с таблицы прибор учета и тип прибора учета проблем нет.
Не могу никак сообразить как вывести все данные с трех таблиц SQL запросом (таблица прибор учета и характеристики не связаны), или, как вариант, выводить данные по характеристикам прибора в таблице2 рядом (поиск по таблице 2 не работает)
4 2020-03-12 15:15:29
Re: Дерево (5 replies, posted in Russian)
Записи создаютсяч как обычно, чере справочник.
Поставил галочки в указанных строках. Теперь при добавлении записи через TreeView появляются плюсики.
Т.е., в случае с TreeView записи надо вносить только через саму форму TreeView, через справочник не получится?
5 2020-03-12 14:12:06
Re: Дерево (5 replies, posted in Russian)
Извините, не тот файл приложил. Перезалил
6 2020-03-12 07:22:37
Topic: Дерево (5 replies, posted in Russian)
Подскажите, почему в tree view не появляется структура и плюсики для раскрытия? Вроде все сделал как в примере, данные появляются, но сплошняком.
8 2019-11-05 08:53:07
Topic: Несколько вопросов (5 replies, posted in Russian)
Приветствую!
Потихоньку разбираюсь в программе, создал тестовый проект и чтобы не плодить ошибки решил попросить помощи, что-то я запутался в структуре.
В справочник добавляю потребителей (у потребителя может быть множество объектов)
Добавляю объект через форму "объект потребителя", где выбираю потребителя.
На главной форме отображаются все объекты потребителя.
Текущая цель - реализовать удобный ввод данных.
Возникли следующие вопросы.
1. При выборе объекта потребителя на главной форме я попадаю на форму "объект потребителя", там я сделал кнопку "карточка потребителя"
В карточке потребителя есть таблица "объекты", где отображаются все объекты потребителя. Добавить, или редактировать объекты из этой формы не получается (только удалить). Возможно ли с карточки потребителя открыть любой выбранный объект?
2. Как реализовать следующее. У объекта может смениться потребитель. Поменять потребителя на форме "объект потребителя" не проблема, но как это реализовать, чтобы об этом была запись где-нибудь? Создать новую форму для смены потребителя?
Проект прилагаю.
9 2019-10-30 05:04:45
Re: К дате прибавить год (3 replies, posted in Russian)
k245 Спасибо!
Почему-то в наборе функций у меня такой нет. Это с программы скриншот? У совсем по другому.
10 2019-10-29 12:07:36
Topic: К дате прибавить год (3 replies, posted in Russian)
procedure si_DateTimePicker1_OnChange (Sender: string);
var
i,m,y : integer;
c : real;
DD, MM, YY, YYNow: word;
begin
// проверяем корректность ввода количества дней
try
i := StrToInt(si.Edit5.Text); // межповерочный интервал
c := i/12*365 // преобразуем месяци в дни
except
i := 0; // если например в Edit5 ввели текст, то возникла ошибка преобразования в число
end;
si.DateTimePicker2.Date := si.DateTimePicker1.Date + c; // прибавляем i дней
DecodeDate(si.DateTimePicker2.DateTime, YY, MM, DD); // декодируем дату поверки
si.Edit6.Text := (IntToStr(MM)); // извлекаем месяц
si.Edit8.Text := (IntToStr(YY)); // извлекаем год
m := StrToInt (si.Edit6.Text);
y := StrToInt (si.Edit8.Text);
if (m >=1) and (m <=3) then si.Edit7.Text := '1'; // определяем квартал
if (m >=4) and (m <=6) then si.Edit7.Text := '2';
if (m >=7) and (m <=9) then si.Edit7.Text := '3' ;
if (m >=10) and (m <=12) then si.Edit7.Text := '4';
end;
Нашел такой скрипт, считает дату следующей поверки приборов и записывает год и квартал поверки. Очень удобно, но межповерочный интервал у автора считается в днях (месяцы преобразует в дни). Мне же надо чтобы прибавлялись не дни, а месяцы, или годы. Если подредактировать этот скрипт, то это можно сделать, но так как в году не всегда 365 дней, то данные получаются некорректные.
11 2019-10-24 12:40:11
Re: Образцы проектов (42 replies, posted in Russian)
Есть ли примеры больших проектов со скриптами и запросами? Приходится шарить по форуму в поисках обрывков решений и примеров. Понятно, что это могут быть уже какие-то коммерческие проекты, но может быть кто-то для пробы пера что-то делал.
12 2019-08-19 12:26:25
Re: Финальная версия 5.5 (2 replies, posted in Russian)
Постоянно вылазит ошибка No such table.
Создаешь проект, таблицы и связи, закрываешь, открываешь и все, в существующих таблицах ничего поменять нельзя - No such table, новые таблицы добавить можно.