SAP Function Modules

AFM_EDIT SAP Function module - Maintain SAPscript fonts: Edit an AFM file







AFM_EDIT is a standard SAP function module available within R/3 SAP systems depending on your version and release level. Below is the pattern details for this FM showing its interface including any import and export parameters, exceptions etc as well as any documentation contributions (Comments) specific to the object.

See here to view full function module documentation and code listing, simply by entering the name AFM_EDIT into the relevant SAP transaction such as SE37 or SE80.

Associated Function Group: STXF
Released Date: Not Released
Processing type: Normal fucntion module
Normal function module settings


Pattern for FM AFM_EDIT - AFM EDIT





CALL FUNCTION 'AFM_EDIT' "Maintain SAPscript fonts: Edit an AFM file
  EXPORTING
    bold =                      " tfo03-tdbold  Flag for bold type
*   display = SPACE             "               Case <> space, only display of the
    family =                    " tfo03-tdfamily  Font family
    height =                    " tfo03-tdfontsize  Font size
    italic =                    " tfo03-tditalic  Flag for italics
    printer =                   " tfo03-tdprinter  Printer destination
*   uselines = SPACE            "               If <> space table LINES is used
  TABLES
    lines =                     " afmln         Text table with AFM font metric da
  EXCEPTIONS
    SAVED_AFM = 1               "               The AFM file was saved by the user
    ERR_TOO_MANY_LINES = 2      "
    .  "  AFM_EDIT

ABAP code example for Function Module AFM_EDIT





The ABAP code below is a full code listing to execute function module AFM_EDIT including all data declarations. The code uses the latest in-line data DECLARATION SYNTAX but I have included an ABAP code snippet at the end to show how declarations would look using the original method of declaring data variables up front. This will allow you to compare and fully understand the new inline method. Please note some of the newer syntax such as the @DATA is not available until a later 4.70 service pack (SP8).

DATA:
it_lines  TYPE STANDARD TABLE OF AFMLN,"TABLES PARAM
wa_lines  LIKE LINE OF it_lines .


SELECT single TDBOLD
FROM TFO03
INTO @DATA(ld_bold).

DATA(ld_display) = 'some text here'.

SELECT single TDFAMILY
FROM TFO03
INTO @DATA(ld_family).


SELECT single TDFONTSIZE
FROM TFO03
INTO @DATA(ld_height).


SELECT single TDITALIC
FROM TFO03
INTO @DATA(ld_italic).


SELECT single TDPRINTER
FROM TFO03
INTO @DATA(ld_printer).

DATA(ld_uselines) = 'some text here'.

"populate fields of struture and append to itab
append wa_lines to it_lines. . CALL FUNCTION 'AFM_EDIT' EXPORTING bold = ld_bold * display = ld_display family = ld_family height = ld_height italic = ld_italic printer = ld_printer * uselines = ld_uselines TABLES lines = it_lines EXCEPTIONS SAVED_AFM = 1 ERR_TOO_MANY_LINES = 2 . " AFM_EDIT
IF SY-SUBRC EQ 0. "All OK ELSEIF SY-SUBRC EQ 1. "Exception "Add code for exception here ELSEIF SY-SUBRC EQ 2. "Exception "Add code for exception here ENDIF.







ABAP code to compare 7.40 inline data declaration with original syntax

The below ABAP code uses the older none in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. It may also be useful if you are using an older version of SAP as some of the newer syntax above, such as the @DATA is not available until 4.70 EHP 8.

DATA:
ld_bold  TYPE TFO03-TDBOLD ,
it_lines  TYPE STANDARD TABLE OF AFMLN ,
wa_lines  LIKE LINE OF it_lines,
ld_display  TYPE STRING ,
ld_family  TYPE TFO03-TDFAMILY ,
ld_height  TYPE TFO03-TDFONTSIZE ,
ld_italic  TYPE TFO03-TDITALIC ,
ld_printer  TYPE TFO03-TDPRINTER ,
ld_uselines  TYPE STRING .


SELECT single TDBOLD
FROM TFO03
INTO ld_bold.


"populate fields of struture and append to itab
append wa_lines to it_lines.
ld_display = 'some text here'.

SELECT single TDFAMILY
FROM TFO03
INTO ld_family.


SELECT single TDFONTSIZE
FROM TFO03
INTO ld_height.


SELECT single TDITALIC
FROM TFO03
INTO ld_italic.


SELECT single TDPRINTER
FROM TFO03
INTO ld_printer.

ld_uselines = 'some text here'.

Contribute (Add Comments)

Please help keep this info upto date and use the comments section below to add useful hints, tips and information specific to this SAP function. This will then be available for you and other users to easily find by simply searching on the object name AFM_EDIT or its description.