Topic: Данные в отчет из разных не связанных таблиц.

Добрый день.
Возможно ли вывести в один отчет данные из разных (несвязанных) между собой таблиц.

В пример привожу рабочий блок кнопки по которой формируется отчет и вытаскиваются поля 4-х связанных таблиц.

procedure FrmSch_OnShow (Sender: TObject; Action: string);
begin
   idPrint := frmSch.TableGrid1.dbItemID;
frmAddSch1.Button3.dbSQL :=    'select distinct b.Kod, c.name, a.inv_nom, a.ser_nom, d.otdel, a.kab  '+
                                    ' from print a '+
                                    ' join departament b on a.id_departament=b.id '+
                                    ' join mod_print c on a.id_mod_print=c.id '+
                                    ' join otd d on a.id_otd=d.id '+
                                    ' where a.id = '+ inttostr (idprint);   
end;

Подскажите, как в отчет к вышеперечисленным полям добавить поля связанных таблиц по другой переменной, а именно:
Заполненная глобальная переменная idUser

frmAddSch1.Button3.dbSQL :=    'select distinct b.org, b.adres, a.login, a.FIO '+
                                    ' from users a '+
                                    ' join org b on a.id_org=b.id '+
                                    ' where a.id = '+ inttostr (idUser);   
end;

В итоге мы должны увидеть в построителе отчета:
Kod, name, inv_nom, ser_nom, otdel, kab, org, adres, login, FIO

Re: Данные в отчет из разных не связанных таблиц.

Приветствую.


А как в итоге должен выглядеть отчет?

Dmitry.

Re: Данные в отчет из разных не связанных таблиц.

Единая Печатная форма

Код - "вставка 1-й join"
Имя принтера - "вставка 1-й join"
Инв.номер- "вставка 1-й join"
Серийный номер- "вставка 1-й join"
отдел- "вставка 1-й join"
кабинет- "вставка 1-й join"
обслуж.организация- "вставка 2-й join"
адрес- "вставка 2-й join"
УЗ инженера- "вставка 2-й join"
ФИО инженера- "вставка 2-й join"

Re: Данные в отчет из разных не связанных таблиц.

Если таблицы между собой никак не связаны, не ясно по какому принципу объеденять данные в одну строку?

Dmitry.

Re: Данные в отчет из разных не связанных таблиц.

DriveSoft wrote:

Если таблицы между собой никак не связаны, не ясно по какому принципу объеденять данные в одну строку?

https://c.radikal.ru/c26/1906/e9/d78c2374d9fa.jpg
Есть единственная связь через
iddepartament

Re: Данные в отчет из разных не связанных таблиц.

Но в данном случае всеравно нельзя вывести данные из этих двух  таблиц в одну строку,


например мы вывели данные поля в строку:
Kod, name, inv_nom, ser_nom, otdel, kab


затем нам необходимы вывести в эту же строку поля: org, adres, login, FIO


но проблема в том, что может быть несколько пользователей, которые принадлежат одному и тому же департаменту, и данные какого именно пользователя выводить в эту строку?


Поэтому отчет скорей всего должен выглядеть по другому, например так
http://myvisualdatabase.com/forum/viewtopic.php?id=1664


только вместо имени человека у вас будет название департамента, а там где емейлы и телефонные номера, будут пользователи и принтеры соотвественно.

Dmitry.

7 (edited by Andrei 2019-07-04 10:30:16)

Re: Данные в отчет из разных не связанных таблиц.

Залетела шальная мысль в голову.
Для вывода в отчет ФИО добавить в таблицу print вычисляемое поле FIO_temp.
Создать рабочий запрос вычисляемого поля для рабочего кода (SELECT FIO FROM users WHERE id =' + IntToStr(iduser)) 
Возможно ли это сделать?