Скрытые параметры для выпадающих списков с использованием tlist/SQL

Чтобы дать вам некоторое представление о данном вопросе, я создал отчет для информационной системы учащегося, который извлекает журналы учащегося на основе выбираемых критериев из набора раскрывающихся списков на html-странице. Выпадающие списки заполняются с помощью tlist/sql. В текущем отчете только 3 раскрывающихся списка:

Дата начала, дата окончания и спортивные журналы. Вот код для выпадающего списка Спорт:

SELECT DISTINCT log.logtypeid,
CASE WHEN log.subtype is null THEN ' ' ELSE log.subtype END subID, 
lt.Name logtype, 
CASE WHEN to_char(st.ValueT) is null THEN ' - NONE' ELSE ' - ' || to_char(st.ValueT) END subtype
FROM log
INNER JOIN gen lt ON log.logtypeid = lt.id
LEFT OUTER JOIN gen st ON st.Name = to_char(lt.ID)
AND st.value = log.subtype
AND st.Cat = 'subtype'
WHERE lt.Cat = 'logtype'
AND log.logtypeid = '3935'
ORDER BY subtype

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

Sports - Baseball
Sports - Bowling
Sports - Boys Basketball
Sports - Boys Golf
Sports - Dance
Sports - Diving

Спорт представляет собой logtypeid 3935. Бейсбол - это подтип 101, боулинг - это подтип 102 и т. Д.

Чтобы отчет извлекал данные в соответствии с планом, необходимо извлечь два дополнительных подтипа, но, к сожалению, они содержат другой logtypeid, 626. Поэтому, если у идентификатора студента 1 есть 3935(logtypeid), 101(подтип), он должен также потяните его 626(logtypeid) 29(подтип) и 626(logtypeid) 43(подтип), если он / она имеет их.

Data Example:

STUDENTID       LOGTYPEID       SUBTYPE
  6382             626             27
  6382             626             41
  6382             626             38
  6382             626             43
  6382             626             29
  6382            3935            109
  6382            3935            117
  6383             626             43
  6383             626             30
  6383             626             43
  6383             626             25
  6383             626             43
  6383             626             14
  6383            3935            117
  6400             626             38
  6401             626             28
  6401             626             36
  6401            3935            110
  6402              15              3
  6405            3935            101
  6405            3935            115
  6405             626             29
  6405             626             43

поэтому, чтобы упростить (я надеюсь), все 3935 должны отображаться в выпадающем меню "Спорт" с соответствующими подтипами. Любой студент, который соответствует выбранным критериям (может выбрать только один вид спорта за один раз), в отчете также должен быть указан logtypeid 626, подтип 29 и logtypeid 626 подтип 43. Я перепробовал все, что мог придумать. Я считаю, что ответ может падать между CASE WHEN, но я не уверен в синтаксисе. Любая помощь или предложения будут с благодарностью. Заранее спасибо.

0 ответов

Другие вопросы по тегам