Перейти к содержимому


Две подчиненных таблицы


Сообщений в теме: 9

#1 dimichspb

    Активный участник

  • Пользователи
  • PipPipPip
  • 55 сообщений

Отправлено 27 Март 2011 - 16:23

Добрый день!


Подскажите, пожалуйста, как сделать следующее.

Есть основная Таблица1, к ней две подчиненные Подчиненная1, Подчиненная2

В таблице Подчиненная2 есть поле Поле21 - это связь с таблицей Подчиненная1.

Задача состоит в том, чтобы при добавлении записи в таблицу Подчиненная2, в Поле21 был список только тех записей таблицы Подчиненная1, которые относятся к данной записи основной Таблицы1. Сейчас выпадает полный список записей.

Понятно, что нужно использовать фильтр, где в качестве значения будет запрос SQL, но не получается.


С уважением,
Дмитрий

#2 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 28 Март 2011 - 08:56

http://clientbase.ru...?showtopic=2528

#3 dimichspb

    Активный участник

  • Пользователи
  • PipPipPip
  • 55 сообщений

Отправлено 28 Март 2011 - 16:57

Просмотр сообщенияРазработчик (28.3.2011, 8:56) писал:

Спасибо, конечно, я видел эту тему, но, как уже писалось выше, не получается. Напишите, пожалуйста, запрос, который необходимо указать в поле фильтра, с правильным синтаксисом.

С уважением,
Дмитрий

#4 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 28 Март 2011 - 17:02

Просмотр сообщенияdimichspb (28.3.2011, 17:57) писал:

Спасибо, конечно, я видел эту тему, но, как уже писалось выше, не получается
А я Вам и не смогу сказать больше, чем то что уже писал в той теме.

#5 dimichspb

    Активный участник

  • Пользователи
  • PipPipPip
  • 55 сообщений

Отправлено 28 Март 2011 - 17:20

Просмотр сообщенияРазработчик (28.3.2011, 17:02) писал:

А я Вам и не смогу сказать больше, чем то что уже писал в той теме.

Помогите тогда, пожалуйста, разобраться.

`Запрос`='(select f716 from cb_data62 where id={current})'

где 'Запрос' - поле связи в таблице Подчиненная1 с основной Таблицей1.
f716 - поле Номер в Таблице1
cb_data62 - Таблица1

вот в этом виде в список попадает почему-то последняя запись из Подчиненной1, а нужно чтобы был список записей в Подчиненной1 относящихся к данной записи в основной Таблице1.


С уважением,
Дмитрий

#6 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 28 Март 2011 - 17:36

Честно говоря я вообще не очень понял что тут к чему. Вы можете расписать как Вы составляли данное условие и что должен возвращать запрос '(select f716 from cb_data62 where id={current})' ? В частности абсолютно непонятно почему поле id, которое не имеет тип "пользователь", вдруг сравнивается с текущим пользователем: "id={current}"

#7 dimichspb

    Активный участник

  • Пользователи
  • PipPipPip
  • 55 сообщений

Отправлено 28 Март 2011 - 17:54

Просмотр сообщенияРазработчик (28.3.2011, 17:36) писал:

Честно говоря я вообще не очень понял что тут к чему. Вы можете расписать как Вы составляли данное условие и что должен возвращать запрос '(select f716 from cb_data62 where id={current})' ? В частности абсолютно непонятно почему поле id, которое не имеет тип "пользователь", вдруг сравнивается с текущим пользователем: "id={current}"


согласен. я хочу чтобы этот запрос возвратил поле Номер (f716) из таблицы cb_data62, текущей записи основной таблицы. чтобы использовать это значение в фильтре первой подчиненной таблицы. этот фильтр используется при отображении записей связанного поля второй подчиненной таблицы.

С уважением,
Дмитрий

#8 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 28 Март 2011 - 18:04

Просмотр сообщенияdimichspb (28.3.2011, 18:54) писал:

я хочу чтобы этот запрос возвратил поле Номер (f716) из таблицы cb_data62, текущей записи основной таблицы. чтобы использовать это значение в фильтре первой подчиненной таблицы
Это все понятно, меня интересует конкретно логика запроса. Вы же его надеюсь не просто "от балды" составляли? Просто я например не вижу как в данном случае можно составить фильтр для новой записи (в той теме я писал что это в общем случае невозможно, а подходящий запрос составил и выложил сам клиент).

#9 dimichspb

    Активный участник

  • Пользователи
  • PipPipPip
  • 55 сообщений

Отправлено 28 Март 2011 - 18:23

Просмотр сообщенияРазработчик (28.3.2011, 18:04) писал:

Это все понятно, меня интересует конкретно логика запроса. Вы же его надеюсь не просто "от балды" составляли? Просто я например не вижу как в данном случае можно составить фильтр для новой записи (в той теме я писал что это в общем случае невозможно, а подходящий запрос составил и выложил сам клиент).


Я думал, что {current} это ID текущей записи таблицы. Забыл что это пользователь.
Есть ли какая-то переменная, в которой хранится ID текущей записи основной таблицы?


С уважением,
Дмитрий

#10 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 28 Март 2011 - 18:29

Нет, такой переменной нет.





Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных