2013-09-03 1 views
1

Я хотел бы проверить жестко заданные значения в (много) форматах Smartforms и SAPScript.Как найти литералы в исходном коде Smartforms и в SAPScripts (или отчеты, если другие не могут быть выполнены)

Я нашел способ прочитать исходный код обоих из них, но мне кажется, что мне придется проходить много разбора, прежде чем я получу что-нибудь надежное.

Я столкнулся с функциональным модулем GET_LITERAL, но это, похоже, не очень помогает мне, поскольку я должен указать смещение значения, если я правильно понял, что делает функция в первую очередь.

Я также нашел RS_LITERAL_LIST но это также не делает то, что я ожидаю.

Я также попытался найти отчеты и методы, но не нашел ничего, что могло бы помочь.

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

В любом случае, любые подсказки были бы полезны и оценены.

[EDIT] Забыл упомянуть, версия моей системы 4.6C

+0

Вы ищете литералы в программе, или просто специфические жестко закодированные значения? – Esti

ответ

1

Если у вас есть достаточно свежая версия ABAP, вы можете использовать регулярные выражения.

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

String functions count, find, and match

+0

Благодарим вас за ответ, к сожалению, моя система довольно древняя ... 4.6C, и у меня нет механизма регулярных выражений. Однако идея могла быть очень хорошей. –