2016-01-08 2 views
0

У меня есть необходимость в SAPScript, чтобы обрезать строку справа. Кажется, что функция не выполняет эту функцию. & myfield + 3 & только триммеры слева.В sapscript, как мне обрезать/смещать справа от строки?

Есть ли способ обрезать справа? Может ли смещение принять отрицательное значение?

ответ

0

Моя конечная цель состояла в том, чтобы взять число, такое как количество; 12,43 и преобразующее что: 001243.

  • 6 символов длиной
  • проложенных слева с нулями
  • без специальных символов (десятичных или Без_разделитель)

В конце концов я должен был сначала определить поле и сделать intial форматирования чисел:

/:DEFINE &myfield& = &qtyfield(.2CT)& 

выше

  • устанавливает число до 2 знаков после запятой (.2)
  • пространства compreession (С)
  • удаляет разделитель тысяч (T)

Затем я вызов функции в пределах нашей обычной печати для делать особый характер зачистка как таковые:

/:PERFORM get_unformatted_value IN PROGRAM zbc_rle_ean128_label 
/:USING &myfield& 
/:CHANGING &myfield& 
/:ENDPERFORM 

Тогда я могу сделать окончательный вывод, как, например:

/ &myfield(K6RF0)& 

которых:

  • Игнорирует любые преобразования (K)
  • устанавливает выход длину до 6 и вправо выравнивает ее (6R)
  • и оставил площадку с нулями (F0)

Это похоже на работу. Надеюсь, это поможет кому-то!