как использовать оператор IN в oracle apex classic report - PullRequest
0 голосов
/ 14 ноября 2018

я хочу использовать в операторе в oracle apex classic report для сортировки подробных данных, а также множественных подробных данных.так как я могу сделать это с помощью SQL-запроса?Пожалуйста, помогите мне.

SELECT fr_st_invoiceno,
      sales_type,
      cust_id,
      sia_id,
      coll_amount,
      remarks,
      cash_bank,
      bank_name,
      check_no,
      update_id,
      updatedate,
      slno,
      invoice_type,
      trcode,
      send_voucher_no,
      send_voucher_no_depot
FROM dis_invoice_tk_collection
WHERE position = 1
      AND   fromstore_id =:p157_depot
      AND   send_voucher_no IN (:p157_send_voucher_no)

Спасибо и наилучшие пожелания.Моршед.

Ответы [ 2 ]

0 голосов
/ 26 ноября 2018
AND   instr(','||:p157_send_voucher_no||',', ','||send_voucher_no||',') > 0
0 голосов
/ 20 ноября 2018

Вы должны разбить значения через запятую на строки, например

and send_voucher in
  (select regexp_substr(:P157_SEND_VOUCHER_NO, '[^,]+', 1, level)
   from dual
   connect by level <= regexp_count(:P157_SEND_VOUCHER_NO, ',') + 1
  )

, предполагая, что P157_SEND_VOUCHER_NO выглядит как 10,20,30.

Не забудьте поместить элемент P157_SEND_VOUCHER_NO всвойство "элементы страницы для отправки".

...