<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Function FORMULA_BUILDER in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114423#M442382</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, guys a solve the problem. Thanks all.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;[]'s,&lt;/P&gt;&lt;P&gt;Ander.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Following the solution.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ztesteander.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS: gblfb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: constants TYPE gblfb_constants_struct OCCURS 1&lt;/P&gt;&lt;P&gt;      WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: set_operands TYPE gblfb_operands_struct OCCURS 0&lt;/P&gt;&lt;P&gt;      WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA formula TYPE gblfb_formula WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: operator_table TYPE gblfb_operators_table WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;constants-text = 'Constantes'.&lt;/P&gt;&lt;P&gt;constants-callback = 'GET_CONSTANT'.&lt;/P&gt;&lt;P&gt;constants-token = 'CONST'.&lt;/P&gt;&lt;P&gt;constants-left_delim  = ''''.&lt;/P&gt;&lt;P&gt;constants-right_delim = ''''.&lt;/P&gt;&lt;P&gt;APPEND constants.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;constants-text = 'Comentário'.&lt;/P&gt;&lt;P&gt;constants-callback = 'GET_COMMENT'.&lt;/P&gt;&lt;P&gt;constants-token = '$COMMENT'.&lt;/P&gt;&lt;P&gt;constants-left_delim  = '"'.&lt;/P&gt;&lt;P&gt;constants-right_delim = '"'.&lt;/P&gt;&lt;P&gt;APPEND constants.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR set_operands.&lt;/P&gt;&lt;P&gt;set_operands-key       = 'TABLES'.&lt;/P&gt;&lt;P&gt;set_operands-text      = 'Cpos.tabelas'.&lt;/P&gt;&lt;P&gt;set_operands-callback  = 'ZANDER'.  "Function ZANDER&lt;/P&gt;&lt;P&gt;set_operands-list_text = 'Estrutura'.&lt;/P&gt;&lt;P&gt;APPEND  set_operands.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;operator_table-token = 'PLUS'.&lt;/P&gt;&lt;P&gt;operator_table-text = '+'.     APPEND operator_table.&lt;/P&gt;&lt;P&gt;operator_table-token = 'MINUS'.&lt;/P&gt;&lt;P&gt;operator_table-text = '-'.     APPEND operator_table.&lt;/P&gt;&lt;P&gt;operator_table-token = 'MULTIPLY'.&lt;/P&gt;&lt;P&gt;operator_table-text = '*'.     APPEND operator_table.&lt;/P&gt;&lt;P&gt;operator_table-token = 'DIVIDE'.&lt;/P&gt;&lt;P&gt;operator_table-text = '/'.     APPEND operator_table.&lt;/P&gt;&lt;P&gt;operator_table-token = 'BRACKETL'.&lt;/P&gt;&lt;P&gt;operator_table-text = '('.     APPEND operator_table.&lt;/P&gt;&lt;P&gt;operator_table-token = 'BRACKETR'.&lt;/P&gt;&lt;P&gt;operator_table-text = ')'.     APPEND operator_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'FORMULA_BUILDER'&lt;/P&gt;&lt;P&gt;     EXPORTING&lt;/P&gt;&lt;P&gt;          iface_title        = 'Teste'&lt;/P&gt;&lt;P&gt;          read_only          = ''&lt;/P&gt;&lt;P&gt;          cb_save            = 'G_FB_SAVE'&lt;/P&gt;&lt;P&gt;          cb_validate        = 'GB_VALIDATE_ELEMENT'&lt;/P&gt;&lt;P&gt;          syntax             = 'ZANDER'    "Program ZANDER, ZANDERI, ZANDERC&lt;/P&gt;&lt;P&gt;          PFSTAT             = 'BASIC'     "Status copy o program SAPLGBL8&lt;/P&gt;&lt;P&gt;          PFSTAT_PROG        = 'ZTESTEANDER'&lt;/P&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;P&gt;          iface_constants    = constants&lt;/P&gt;&lt;P&gt;          iface_operators    = operator_table&lt;/P&gt;&lt;P&gt;          iface_operands     = set_operands&lt;/P&gt;&lt;P&gt;          iface_formula      = formula&lt;/P&gt;&lt;P&gt;     EXCEPTIONS&lt;/P&gt;&lt;P&gt;          cancelled          = 1&lt;/P&gt;&lt;P&gt;          error_in_operands  = 2&lt;/P&gt;&lt;P&gt;          error_in_operators = 3&lt;/P&gt;&lt;P&gt;          error_in_syntax    = 4&lt;/P&gt;&lt;P&gt;          error_in_constants = 5&lt;/P&gt;&lt;P&gt;          OTHERS             = 6.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT formula.&lt;/P&gt;&lt;P&gt;  WRITE: / formula.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------------" /&gt;&lt;P&gt;REPORT zander. "only for call on parameter syntax&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------------" /&gt;&lt;P&gt;REPORT zanderc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE lgbl8k02.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS gblfb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DEFINE rule1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform &amp;amp;1 tables formula using pos length&lt;/P&gt;&lt;P&gt;                            changing  pos1 coref.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  check ( pos1 &amp;lt;&amp;gt; 0 ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if ( pos1 &amp;gt; 0 ).&lt;/P&gt;&lt;P&gt;    newpos = pos1.&lt;/P&gt;&lt;P&gt;    exit.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;END-OF-DEFINITION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;begin_rules s.&lt;/P&gt;&lt;P&gt;rule1 valida.&lt;/P&gt;&lt;P&gt;end_rules.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM valida                                                   *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Valida Fórmula entrada                                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM valida TABLES formula TYPE gblfb_formula USING pos length&lt;/P&gt;&lt;P&gt;                                           CHANGING newpos coref.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;   formula_result TYPE  string                ,&lt;/P&gt;&lt;P&gt;   t_var          LIKE  rpoc_variable OCCURS 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: newpos, formula_result.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT formula.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONCATENATE formula_result formula-value INTO formula_result.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'POC_FORMULA_CHECK'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            formula          = formula_result&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            var_table        = t_var&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            error_in_formula = 1&lt;/P&gt;&lt;P&gt;            OTHERS           = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    newpos = -1.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------------" /&gt;&lt;P&gt;REPORT zanderi.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE lgbl8k02.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS gblfb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DEFINE rule1.&lt;/P&gt;&lt;P&gt;  check ( pos1 &amp;lt;&amp;gt; 0 ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if ( pos1 &amp;gt; 0 ).&lt;/P&gt;&lt;P&gt;    newpos = pos1.&lt;/P&gt;&lt;P&gt;    exit.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;END-OF-DEFINITION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;begin_rules s.&lt;/P&gt;&lt;P&gt;rule1 .&lt;/P&gt;&lt;P&gt;end_rules.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------------" /&gt;&lt;P&gt;FUNCTION zander.&lt;/P&gt;&lt;P&gt;*"----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;STRONG&gt;"&lt;/STRONG&gt;"Interface local:&lt;/P&gt;&lt;P&gt;*"  IMPORTING&lt;/P&gt;&lt;P&gt;*"     VALUE(KEY) TYPE  C&lt;/P&gt;&lt;P&gt;*"     VALUE(CLS_ATTR) TYPE  GB001_CLASS_ATTR_TYP OPTIONAL&lt;/P&gt;&lt;P&gt;*"  TABLES&lt;/P&gt;&lt;P&gt;*"      OPERANDS_TABLE TYPE  GBLFB_OPERANDS_TABLE_INTERN&lt;/P&gt;&lt;P&gt;*"----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF exits_lst OCCURS 50.&lt;/P&gt;&lt;P&gt;          INCLUDE STRUCTURE gble.&lt;/P&gt;&lt;P&gt;  DATA: END OF exits_lst.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:  l_1 TYPE i,&lt;/P&gt;&lt;P&gt;         l_subrc  LIKE syst-subrc,&lt;/P&gt;&lt;P&gt;         dummy_exit LIKE gble-name,&lt;/P&gt;&lt;P&gt;         poolname LIKE sy-repid,&lt;/P&gt;&lt;P&gt;         error_desc(105) TYPE c,&lt;/P&gt;&lt;P&gt;         l_mtab LIKE gb01-bcltab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF table_lst OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: name LIKE gb01-bcltab.&lt;/P&gt;&lt;P&gt;  DATA: END OF   table_lst.&lt;/P&gt;&lt;P&gt;  DATA: l_dd02v TYPE dd02v,&lt;/P&gt;&lt;P&gt;        g_class_attr TYPE gb001_class_attr_typ.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: d_int LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;        d_bool TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: b_true     LIKE d_bool  VALUE 'T',   "  true,&lt;/P&gt;&lt;P&gt;        b_false    LIKE b_true  VALUE 'F'.   "  false&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;    t_z4a18 TYPE STANDARD TABLE OF z4a18 WITH DEFAULT KEY&lt;/P&gt;&lt;P&gt;                                         WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;clear operands_table. refresh operands_table.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CASE key.&lt;/P&gt;&lt;P&gt;    WHEN 'TABLES'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT * INTO TABLE t_z4a18&lt;/P&gt;&lt;P&gt;       FROM z4a18&lt;/P&gt;&lt;P&gt;       WHERE tpform = 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT t_z4a18.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CALL FUNCTION 'TB_FIELD_GET_INFO'&lt;/P&gt;&lt;P&gt;             EXPORTING&lt;/P&gt;&lt;P&gt;                  fieldname   = t_z4a18-nmcmp&lt;/P&gt;&lt;P&gt;                  tabname     = t_z4a18-nmtab&lt;/P&gt;&lt;P&gt;             IMPORTING&lt;/P&gt;&lt;P&gt;                  text_middle = operands_table-description&lt;/P&gt;&lt;P&gt;             EXCEPTIONS&lt;/P&gt;&lt;P&gt;                  not_found   = 1&lt;/P&gt;&lt;P&gt;                  OTHERS      = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CONCATENATE t_z4a18-nmtab '-' t_z4a18-nmcmp&lt;/P&gt;&lt;P&gt;                                     INTO operands_table-tech_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        operands_table-token     = 'FIELD_TAB'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        APPEND operands_table.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDFUNCTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 17 Apr 2007 11:40:41 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-04-17T11:40:41Z</dc:date>
    <item>
      <title>Function FORMULA_BUILDER</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114417#M442376</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Someone now to use this function. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please I need Help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Ander.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Apr 2007 12:49:48 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114417#M442376</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-16T12:49:48Z</dc:date>
    </item>
    <item>
      <title>Re: Function FORMULA_BUILDER</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114418#M442377</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;U&gt;&lt;/U&gt;&lt;EM&gt;&amp;lt;b&amp;gt;Use&amp;lt;/b&amp;gt;&lt;/EM&gt;&lt;BR /&gt;&lt;BR /&gt;You can use the Formula Builder to implement methods for Business Add-Ins without writing a single line of ABAP code. The methods are implemented by means of socalled formulas. &lt;BR /&gt;&lt;BR /&gt;This type of implementation does not require you to have programming knowledge. However, the functions it offers are more restricted than if you implement a method by writing ABAP code. If the range of functions provided by the Formula Builder is not sufficient, you can change the implementation type of the method at any time.&lt;BR /&gt;&lt;BR /&gt;&lt;U&gt;&lt;/U&gt;&lt;EM&gt;&amp;lt;b&amp;gt;Features&amp;lt;/b&amp;gt;&lt;/EM&gt;&lt;BR /&gt;&lt;BR /&gt;A formula can consist of the following steps:&lt;BR /&gt;&lt;BR /&gt;&lt;U&gt;&lt;/U&gt;&lt;EM&gt;&amp;lt;b&amp;gt;Condition&amp;lt;/b&amp;gt;&lt;/EM&gt;&lt;BR /&gt;&lt;BR /&gt;You define a Boolean formula expression whose result can be true or false. This formula expression is a logical condition based on the importing and changing parameters of the method. Depending on whether the condition is true or false, the system triggers different steps. If you do not specify a dependent step for one of these two possibilities, the system continues with the next superior step.&lt;BR /&gt;&lt;BR /&gt;&lt;U&gt;&lt;/U&gt;&lt;EM&gt;&amp;lt;b&amp;gt;Substitution&amp;lt;/b&amp;gt;&lt;/EM&gt;&lt;BR /&gt;&lt;BR /&gt;The system replaces the value of a specific parameter with another value which you define as a constant value or by means of a mathematic formula. Substitution is only possible if the method contains changing, exporting or returning parameters.&lt;BR /&gt;&lt;BR /&gt;&lt;U&gt;&lt;/U&gt;&lt;EM&gt;&amp;lt;b&amp;gt;Message&amp;lt;/b&amp;gt;&lt;/EM&gt;&lt;BR /&gt;&lt;BR /&gt;The system issues a message. All messages issued are collected in a log table. You define the message variables as constant values or by means of mathematic formulas. The system can only issue a message if you created a log table during method definition.&lt;BR /&gt;&lt;BR /&gt;&lt;U&gt;&lt;/U&gt;&lt;EM&gt;&amp;lt;b&amp;gt;Exception&amp;lt;/b&amp;gt;&lt;/EM&gt;&lt;BR /&gt;&lt;BR /&gt;The system exits the method. No further steps are executed, and the application program continues in accordance with the exception defined. You can additionally display a message whose variables you define as constant values or by means of mathematic formulas. An exception can only be triggered if the method contains exceptions.&lt;BR /&gt;&lt;BR /&gt;A formula editor is available which you can use to enter formula expressions. After starting the formula editor, you can display information on how to use it by choosing the pushbutton next to the status display (traffic light).&lt;BR /&gt;&lt;BR /&gt;&lt;U&gt;&lt;/U&gt;&lt;EM&gt;&amp;lt;b&amp;gt;Activities&amp;lt;/b&amp;gt;&lt;/EM&gt;&lt;BR /&gt;&lt;BR /&gt;You implement the method using the BAdI Builder. For information on this topic, see Implementing Business Add-Ins. To implement a method as a formula, choose the Formula implementation type on the Interface tab. Double-clicking the method name takes to to the Formula Builder: BadI Implementation screen.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;You can change the implementation type of the method on the Interface tab. You can implement a method both using a formula and using ABAP code. At the runtime of the application program, the system executes the implementation type currently chosen. &lt;BR /&gt;&lt;BR /&gt;You create the necessary steps in the left section of the screen. To do this, choose and then select the appropriate step type from the dropdown list. Using the other icons available or the context menu (which you can call by clicking the right mouse button), you then determine the arrangement and the descriptions of the steps. You can also copy steps to use them as templates for other steps, or you can delete individual steps. &lt;BR /&gt;&lt;BR /&gt;To specify the parameters for the individual steps, double-click the corresponding entry in the left section of the screen. You then enter the data required in the right section of the screen. &lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;U&gt;&lt;/U&gt;&lt;EM&gt;&amp;lt;b&amp;gt;The formula builder has two modes&amp;lt;/b&amp;gt;&lt;/EM&gt;: Standard and expert mode. In the standard mode, you can only enter the formulas using the pushbuttons and by double clicking on functions and fields. In the expert mode, however, you can enter formulas directly. You can also toggle between the tow modes when entering a formula.&lt;BR /&gt;&lt;BR /&gt;The company code field (0COMP_CODE) is not included in your data target or InfoSource. However you can determine the company code from the first four character spaces of the cost center (0COSTCENTER).&lt;BR /&gt;&lt;BR /&gt;You create the following formula for this purpose:&lt;BR /&gt;&lt;BR /&gt;SUBSTRING( cost center, '0' , '4')&lt;BR /&gt;&lt;BR /&gt;Syntax: &lt;BR /&gt;&lt;BR /&gt;SUBSTRING( String, Offset , Länge )&lt;BR /&gt;&lt;BR /&gt;&lt;U&gt;&lt;/U&gt;&lt;EM&gt;&amp;lt;b&amp;gt;Step-by-Step Procedure in Standard mode:&amp;lt;/b&amp;gt;&lt;/EM&gt;&amp;lt;/u&amp;gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the transformation library, on the right hand side under Show Me, choose the category Strings. From the list, select the Substring function by double-clicking on it. The syntax of the formula is displayed in the formula window: SUBSTRING( , , ) &lt;/P&gt;&lt;P&gt;The cursor automatically appears over the first parameter that needs to be specified.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;From the list on the left-hand side of the screen, choose the Cost Center field by double-clicking on it. &lt;/P&gt;&lt;P&gt;Place the cursor where you want to enter the next parameter. &lt;/P&gt;&lt;P&gt;Enter the number 0 using the Constant button (for the Offset parameter). The commas are added automatically. &lt;/P&gt;&lt;P&gt;Place the cursor where you want to enter the next parameter. &lt;/P&gt;&lt;P&gt;Enter the number 4 using the Constant button (for the Length parameter). &lt;/P&gt;&lt;P&gt;Choose Back. The formula is now checked and saved if it is correct. You receive a message if errors occurred during the check, and the system highlights the erroneous element in color. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;navjot&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward if helpfull&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: &lt;/P&gt;&lt;P&gt;        navjot sharma&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Apr 2007 12:57:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114418#M442377</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-16T12:57:37Z</dc:date>
    </item>
    <item>
      <title>Re: Function FORMULA_BUILDER</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114419#M442378</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Navjot, but my question is if someone there are used the function module 'FORMULA_BUILDER'. Because I try to use.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ander.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Apr 2007 13:57:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114419#M442378</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-16T13:57:22Z</dc:date>
    </item>
    <item>
      <title>Re: Function FORMULA_BUILDER</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114420#M442379</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;chk the FM  G_FB_CALL_BUILDER   where the FM FORMULA_BUILDER was used&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Apr 2007 13:59:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114420#M442379</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-16T13:59:59Z</dc:date>
    </item>
    <item>
      <title>Re: Function FORMULA_BUILDER</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114421#M442380</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi mate&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read the following blog this tell us how to use the function builder&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;hope this will help&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;a href="/people/community.user/blog/2006/10/27/how-to-reuse-formula-builder-of-fi-validation-substitution-and-rules:///people/community.user/blog/2006/10/27/how-to-reuse-formula-builder-of-fi-validation-substitution-and-rules&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;navjot&lt;/P&gt;&lt;P&gt;feel free to revert back&lt;/P&gt;&lt;P&gt;reward points for all helpfull answer&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Apr 2007 14:00:58 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114421#M442380</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-16T14:00:58Z</dc:date>
    </item>
    <item>
      <title>Re: Function FORMULA_BUILDER</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114422#M442381</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have been see that, but I don´t now if I can change the tables and when a save the formula entered, generate a error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks again and I will continue try,&lt;/P&gt;&lt;P&gt;Ander.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Apr 2007 14:20:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114422#M442381</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-16T14:20:17Z</dc:date>
    </item>
    <item>
      <title>Re: Function FORMULA_BUILDER</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114423#M442382</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, guys a solve the problem. Thanks all.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;[]'s,&lt;/P&gt;&lt;P&gt;Ander.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Following the solution.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ztesteander.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS: gblfb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: constants TYPE gblfb_constants_struct OCCURS 1&lt;/P&gt;&lt;P&gt;      WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: set_operands TYPE gblfb_operands_struct OCCURS 0&lt;/P&gt;&lt;P&gt;      WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA formula TYPE gblfb_formula WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: operator_table TYPE gblfb_operators_table WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;constants-text = 'Constantes'.&lt;/P&gt;&lt;P&gt;constants-callback = 'GET_CONSTANT'.&lt;/P&gt;&lt;P&gt;constants-token = 'CONST'.&lt;/P&gt;&lt;P&gt;constants-left_delim  = ''''.&lt;/P&gt;&lt;P&gt;constants-right_delim = ''''.&lt;/P&gt;&lt;P&gt;APPEND constants.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;constants-text = 'Comentário'.&lt;/P&gt;&lt;P&gt;constants-callback = 'GET_COMMENT'.&lt;/P&gt;&lt;P&gt;constants-token = '$COMMENT'.&lt;/P&gt;&lt;P&gt;constants-left_delim  = '"'.&lt;/P&gt;&lt;P&gt;constants-right_delim = '"'.&lt;/P&gt;&lt;P&gt;APPEND constants.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR set_operands.&lt;/P&gt;&lt;P&gt;set_operands-key       = 'TABLES'.&lt;/P&gt;&lt;P&gt;set_operands-text      = 'Cpos.tabelas'.&lt;/P&gt;&lt;P&gt;set_operands-callback  = 'ZANDER'.  "Function ZANDER&lt;/P&gt;&lt;P&gt;set_operands-list_text = 'Estrutura'.&lt;/P&gt;&lt;P&gt;APPEND  set_operands.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;operator_table-token = 'PLUS'.&lt;/P&gt;&lt;P&gt;operator_table-text = '+'.     APPEND operator_table.&lt;/P&gt;&lt;P&gt;operator_table-token = 'MINUS'.&lt;/P&gt;&lt;P&gt;operator_table-text = '-'.     APPEND operator_table.&lt;/P&gt;&lt;P&gt;operator_table-token = 'MULTIPLY'.&lt;/P&gt;&lt;P&gt;operator_table-text = '*'.     APPEND operator_table.&lt;/P&gt;&lt;P&gt;operator_table-token = 'DIVIDE'.&lt;/P&gt;&lt;P&gt;operator_table-text = '/'.     APPEND operator_table.&lt;/P&gt;&lt;P&gt;operator_table-token = 'BRACKETL'.&lt;/P&gt;&lt;P&gt;operator_table-text = '('.     APPEND operator_table.&lt;/P&gt;&lt;P&gt;operator_table-token = 'BRACKETR'.&lt;/P&gt;&lt;P&gt;operator_table-text = ')'.     APPEND operator_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'FORMULA_BUILDER'&lt;/P&gt;&lt;P&gt;     EXPORTING&lt;/P&gt;&lt;P&gt;          iface_title        = 'Teste'&lt;/P&gt;&lt;P&gt;          read_only          = ''&lt;/P&gt;&lt;P&gt;          cb_save            = 'G_FB_SAVE'&lt;/P&gt;&lt;P&gt;          cb_validate        = 'GB_VALIDATE_ELEMENT'&lt;/P&gt;&lt;P&gt;          syntax             = 'ZANDER'    "Program ZANDER, ZANDERI, ZANDERC&lt;/P&gt;&lt;P&gt;          PFSTAT             = 'BASIC'     "Status copy o program SAPLGBL8&lt;/P&gt;&lt;P&gt;          PFSTAT_PROG        = 'ZTESTEANDER'&lt;/P&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;P&gt;          iface_constants    = constants&lt;/P&gt;&lt;P&gt;          iface_operators    = operator_table&lt;/P&gt;&lt;P&gt;          iface_operands     = set_operands&lt;/P&gt;&lt;P&gt;          iface_formula      = formula&lt;/P&gt;&lt;P&gt;     EXCEPTIONS&lt;/P&gt;&lt;P&gt;          cancelled          = 1&lt;/P&gt;&lt;P&gt;          error_in_operands  = 2&lt;/P&gt;&lt;P&gt;          error_in_operators = 3&lt;/P&gt;&lt;P&gt;          error_in_syntax    = 4&lt;/P&gt;&lt;P&gt;          error_in_constants = 5&lt;/P&gt;&lt;P&gt;          OTHERS             = 6.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT formula.&lt;/P&gt;&lt;P&gt;  WRITE: / formula.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------------" /&gt;&lt;P&gt;REPORT zander. "only for call on parameter syntax&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------------" /&gt;&lt;P&gt;REPORT zanderc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE lgbl8k02.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS gblfb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DEFINE rule1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform &amp;amp;1 tables formula using pos length&lt;/P&gt;&lt;P&gt;                            changing  pos1 coref.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  check ( pos1 &amp;lt;&amp;gt; 0 ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if ( pos1 &amp;gt; 0 ).&lt;/P&gt;&lt;P&gt;    newpos = pos1.&lt;/P&gt;&lt;P&gt;    exit.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;END-OF-DEFINITION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;begin_rules s.&lt;/P&gt;&lt;P&gt;rule1 valida.&lt;/P&gt;&lt;P&gt;end_rules.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM valida                                                   *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Valida Fórmula entrada                                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM valida TABLES formula TYPE gblfb_formula USING pos length&lt;/P&gt;&lt;P&gt;                                           CHANGING newpos coref.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;   formula_result TYPE  string                ,&lt;/P&gt;&lt;P&gt;   t_var          LIKE  rpoc_variable OCCURS 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: newpos, formula_result.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT formula.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONCATENATE formula_result formula-value INTO formula_result.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'POC_FORMULA_CHECK'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            formula          = formula_result&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            var_table        = t_var&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            error_in_formula = 1&lt;/P&gt;&lt;P&gt;            OTHERS           = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    newpos = -1.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------------" /&gt;&lt;P&gt;REPORT zanderi.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE lgbl8k02.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS gblfb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DEFINE rule1.&lt;/P&gt;&lt;P&gt;  check ( pos1 &amp;lt;&amp;gt; 0 ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if ( pos1 &amp;gt; 0 ).&lt;/P&gt;&lt;P&gt;    newpos = pos1.&lt;/P&gt;&lt;P&gt;    exit.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;END-OF-DEFINITION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;begin_rules s.&lt;/P&gt;&lt;P&gt;rule1 .&lt;/P&gt;&lt;P&gt;end_rules.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------------" /&gt;&lt;P&gt;FUNCTION zander.&lt;/P&gt;&lt;P&gt;*"----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;STRONG&gt;"&lt;/STRONG&gt;"Interface local:&lt;/P&gt;&lt;P&gt;*"  IMPORTING&lt;/P&gt;&lt;P&gt;*"     VALUE(KEY) TYPE  C&lt;/P&gt;&lt;P&gt;*"     VALUE(CLS_ATTR) TYPE  GB001_CLASS_ATTR_TYP OPTIONAL&lt;/P&gt;&lt;P&gt;*"  TABLES&lt;/P&gt;&lt;P&gt;*"      OPERANDS_TABLE TYPE  GBLFB_OPERANDS_TABLE_INTERN&lt;/P&gt;&lt;P&gt;*"----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF exits_lst OCCURS 50.&lt;/P&gt;&lt;P&gt;          INCLUDE STRUCTURE gble.&lt;/P&gt;&lt;P&gt;  DATA: END OF exits_lst.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:  l_1 TYPE i,&lt;/P&gt;&lt;P&gt;         l_subrc  LIKE syst-subrc,&lt;/P&gt;&lt;P&gt;         dummy_exit LIKE gble-name,&lt;/P&gt;&lt;P&gt;         poolname LIKE sy-repid,&lt;/P&gt;&lt;P&gt;         error_desc(105) TYPE c,&lt;/P&gt;&lt;P&gt;         l_mtab LIKE gb01-bcltab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF table_lst OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: name LIKE gb01-bcltab.&lt;/P&gt;&lt;P&gt;  DATA: END OF   table_lst.&lt;/P&gt;&lt;P&gt;  DATA: l_dd02v TYPE dd02v,&lt;/P&gt;&lt;P&gt;        g_class_attr TYPE gb001_class_attr_typ.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: d_int LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;        d_bool TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: b_true     LIKE d_bool  VALUE 'T',   "  true,&lt;/P&gt;&lt;P&gt;        b_false    LIKE b_true  VALUE 'F'.   "  false&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;    t_z4a18 TYPE STANDARD TABLE OF z4a18 WITH DEFAULT KEY&lt;/P&gt;&lt;P&gt;                                         WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;clear operands_table. refresh operands_table.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CASE key.&lt;/P&gt;&lt;P&gt;    WHEN 'TABLES'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT * INTO TABLE t_z4a18&lt;/P&gt;&lt;P&gt;       FROM z4a18&lt;/P&gt;&lt;P&gt;       WHERE tpform = 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT t_z4a18.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CALL FUNCTION 'TB_FIELD_GET_INFO'&lt;/P&gt;&lt;P&gt;             EXPORTING&lt;/P&gt;&lt;P&gt;                  fieldname   = t_z4a18-nmcmp&lt;/P&gt;&lt;P&gt;                  tabname     = t_z4a18-nmtab&lt;/P&gt;&lt;P&gt;             IMPORTING&lt;/P&gt;&lt;P&gt;                  text_middle = operands_table-description&lt;/P&gt;&lt;P&gt;             EXCEPTIONS&lt;/P&gt;&lt;P&gt;                  not_found   = 1&lt;/P&gt;&lt;P&gt;                  OTHERS      = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CONCATENATE t_z4a18-nmtab '-' t_z4a18-nmcmp&lt;/P&gt;&lt;P&gt;                                     INTO operands_table-tech_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        operands_table-token     = 'FIELD_TAB'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        APPEND operands_table.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDFUNCTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Apr 2007 11:40:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-formula-builder/m-p/2114423#M442382</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-17T11:40:41Z</dc:date>
    </item>
  </channel>
</rss>

