вторник, 26 октября 2010 г.

Расчет формул в программе

CALL FUNCTION 'EVAL_FORMULA'
EXPORTING
formula = -var_factor
program = c_cprog
routine = 'GET_VALUES'
IMPORTING
value = l_result
EXCEPTIONS
OTHERS = 1.

*&---------------------------------------------------------------------*
*& Form GET_VALUES
*&---------------------------------------------------------------------*
* Значения для формулы
*----------------------------------------------------------------------*
* -->PARM Имя переменной
* -->WERT Ее значение
* -->SUBRC Код возврата
*----------------------------------------------------------------------*
FORM get_values USING name CHANGING value subrc.
FIELD-SYMBOLS:
TYPE ANY
.
value = 0.
subrc = 0.
ASSIGN COMPONENT name OF STRUCTURE ls_line TO .
IF sy-subrc EQ 0.
TRY.
MOVE TO value.
CATCH cx_root.
subrc = 1.
ENDTRY.
ELSE.
subrc = 1.
ENDIF.

ENDFORM. "GET_VALUES
*&---------------------------------------------------------------------*
*& Form CHECK_VALUES
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->VAR Имя переменной
* -->SUBRC Код возврата
*----------------------------------------------------------------------*
FORM check_values USING name CHANGING subrc.
FIELD-SYMBOLS:
TYPE ANY
.

subrc = 0.
ASSIGN COMPONENT name OF STRUCTURE ls_line TO .
IF sy-subrc NE 0.
subrc = 1.
ENDIF.

ENDFORM. "CHECK_VALUES
**********************************************************************

Комментариев нет: