Хорошо, после некоторой дополнительной настройки я обнаружил, по-моему, основную проблему.
Ошибка в этом случае двоякая. Частично это была моя ошибка (я не проверял, чтобы Peoplesoft искажал кавычки, которые я вытащил из Word), и отчасти это было из-за того, как Query Manager интерпретирует некоторые виды функций (некоторые вещи нужно заключить в оператор Case When чтобы его правильно оценили).
Сначала часть "Моя ошибка":
Каждый раз, когда я вставлял в свой список тестовых кодов NIGP, я делал это из файла, который хранил в Microsoft Word.
Имеет, вероятно, удобную функцию "заменять прямые кавычки умными кавычками". Peoplesoft сходит с ума, когда представляет «умную цитату», и отображает их в виде перевернутых вопросительных знаков (вероятно, есть технический термин, я его не знаю).
Поэтому, когда я проверял предложения (например, исправлял порядок кавычек / запятых, предложенный @Rene Nyffenegger и @WayneH), я начинал с базового тестового запроса, добавлял выражения и проверял его, сохраняя его как отдельный запрос. Если бы они не работали, я бы вернулся к базовому запросу. Таким образом, я мог бы повторять изменения и сохранять потенциальные тесты как разные версии.
Моя ошибка заключалась в том, что я не сохранял разные версии, не оставлял приложение и не возвращался обратно. Когда вы сохраняете запрос, покидаете страницу, идете куда-то еще в Peoplesoft, а затем снова открываете Query Manager, он действительно показывает вам что он делает преобразование символов. Вы не сможете увидеть это, если не сделаете этого. Хотя Query Manager делает это. Поэтому он бросал персонажа, которого менеджер запросов не мог бы распознать, но не показывал мне персонажа, которого он не узнает
Недавно я получил новый рабочий компьютер и теперь отключил автозамену Smart Quotes для будущего использования.
Во-вторых, «Менеджер запросов»: часть:
В версии этого, которую я получил, я использовал обертывание функции "IN" внутри оператора Case. Я обнаружил, что многие функции SQL, когда используются «простые» (как я определил бы их путем простого вставки копий со страниц определений Oracle и заполнения соответствующих переменных), обычно вызывают изжогу из PS / Query (Query Manager). , Но если вы поместите их в оператор CASE ... WHEN ... END, который оценивает результат функции, а затем создадите критерий, который выбирает на основе определенных значений этого результата, функция будет работать и правильно отображать результат.
Так, например, настройте это выражение (как в примере из @ qyb2zm302). Я использую коды, отличные от того, что был в моем исходном примере, но они работают одинаково (все они пятизначные, символьные коды, состоящие из трех цифр, тире, а затем двух цифр)
Case when E.CATEGORY_CD IN
('375-15', '375-30', '375-54', '375-60', '380-30','938-63')
then 'true'
else 'false'
end
А затем установить критерий:
AND
Case when E.CATEGORY_CD IN
('375-15', '375-30', '375-54', '375-60', '380-30','938-63')
then 'true'
else 'false'
end
= 'true'
Он будет выполнен до конца и вернет все строки, имеющие этот код категории.
Если вы не хотите этого делать, вы можете сделать это, как в методе @ qyb2zm302. Единственный недостаток этого в Query Manager - это то, что вам нужно вводить их в отдельные строки в «Списке», и если вы можно копировать-вставлять только 25 одновременно.
Оборачивая его в Case Statement, вы можете вставить его непосредственно в Expression, что намного лучше для больших списков.
Решения:
Выше приведен код, с которым я работал. Ради упрощения это немного упрощает, но это работает.
В списке работает через встроенную опцию диспетчера запросов, пока вы вручную заполняете список
D.CATEGORY_CD = '005-00' ИЛИ работает до тех пор, пока вы включаете его в описание дела
D.CATEGORY_CD IN ('015-00', '015-06', '015-10', '615-07') работает до тех пор, пока вы его оборачиваете в Изложение дела
Peoplesoft ненавидит умные цитаты. Ничто из вышеперечисленного не сработает, если вы копируете кавычки непосредственно из Word, но вы не увидите его, если не сохраните, не выйдете и не вернетесьтот же запрос в режиме редактирования
Форматирование важно. Все вышеперечисленное требует правильного форматирования запятой / цитаты, как указали Рене и Уэйн.Значение: ('xxx-xx', 'xxx-01', 'xxx-02') и т. Д.
Спасибо всем, кто помогал в этом!Я не думаю, что у меня была такая сложная работа по любому вопросу, но я думаю, что это часть процесса обучения.Поскольку все опубликованные ответы являются правильными и правильными (или, по крайней мере, частью более крупного «правильного»), я собираюсь отметить их все.