SAP 가치에 따른 처리 및 도움 요청에 대한 처리

첫째, Screen Flow 논리와 그 사용에 대해 아무것도 모르는 경우 SAP Dialog Program에 대한 튜토리얼을 확인해보시기 바랍니다.

이제 POH와 POV에 대해 자세히 살펴보겠습니다.

도움말 요청(POH) 프로세스: F1 도움말

  • F1을 누를 때마다 지정된 데이터 요소에 대한 POH 이벤트가 실행됩니다.
  • 화면의 프로세스 로직에 PROCESS ON HELP-REQUEST 이벤트가 존재하지 않으면 ABAP Dictionary의 필드 설명서가 기준으로 사용되어 표시됩니다. 종료되지 않더라도 도움말은 표시되지 않습니다.
  • 필드 도움말 문서를 표시하려면 POH 이벤트에 다음 화면 흐름 논리를 코딩해야 합니다.
PROCESS ON HELP-REQUEST
FIELD <f> [MODULE <mod>] WITH <num>
  • 필드에 대한 화면별 데이터 요소 문서가 있는 경우 , 번호를 지정하여 표시할 수 있습니다. .
  • 수 리터럴이거나 변수일 수 있습니다. 해당 ABAP 프로그램에서 변수를 선언하고 채워야 합니다.
  • FIELD 문은 화면 필드의 내용을 전송하지 않습니다. PROCESS ON HELP-REQUEST 이벤트의 ABAP 프로그램에. 도움말 문서만 표시됩니다. 그게 다야.

모듈 ABAP 프로그램에서 일반 PAI 모듈처럼 정의됩니다. 모듈의 처리 논리는 해당 필드에 대한 적절한 도움말이 표시되도록 해야 합니다. 텍스트 필드가 있는 추가 화면을 호출하는 대신 다음 함수 모듈 중 하나를 사용하여 적절한 도움말을 표시해야 합니다. SAP스크립트 문서

HELP_OBJECT_SHOW_FOR_FIELD

  • 이 기능 모듈은 ABAP 사전의 모든 구조 또는 데이터베이스 테이블의 구성 요소에 대한 데이터 요소 문서를 표시합니다.
  • 구성요소 및 구조 또는 테이블의 이름을 가져오기 매개변수 FIELD 및 TABLE에 전달합니다.

HELP_OBJECT_SHOW

  • 이 기능 모듈을 사용하여 다음을 표시합니다. SAP스크립트 문서.
  • 문서 클래스(예: 일반 텍스트의 경우 TX, 데이터 요소 문서의 경우 DE)와 문서 이름을 가져오기 매개변수 DOKCLASS 및 DOKNAME에 전달해야 합니다.
  • 기술적인 이유로 TLINE 라인 유형의 빈 내부 테이블도 함수 모듈의 tables 매개변수에 전달해야 합니다.

가치 프로세스(POV): F4

  • 사용자가 가능한 항목(F4) 기능을 선택하면 시스템은 개발자가 저장한 경우 필드에 대해 가능한 입력 값(값, 확인 테이블, 일치 코드)을 표시합니다.
  • 사용자가 "가능한 항목"을 호출한 경우 PROCESS ON VALUE-REQUEST 이벤트가 항상 처리됩니다.
  • 화면의 필드에 가능한 값을 정의하려면 화면 흐름 논리의 POV 이벤트에서 다음을 정의해야 합니다.
PROCESS ON VALUE-REQUEST

FIELD field name MODULE module name
  • 가능한 값의 경우 위에 정의된 모듈 내에서 일반 기능 모듈을 사용해야 합니다. HELP_VALUES_GET_WITH_TABLE ABAP Dictionary에서 가능한 값을 가져옵니다.

입력 도움말에 사용할 수 있는 다른 기능도 있습니다:

F4IF_FIELD_VALUE_REQUEST

  • ABAP 사전의 입력 도움말을 동적으로 호출합니다.
  • ABAP 사전의 구조 또는 데이터베이스 테이블의 구성요소 이름을 가져오기 매개변수 TABNAME 및 FIELDNAME의 함수 모듈에 전달할 수 있습니다.
  • 기능 모듈은 ABAP 사전 이 구성 요소에 대한 도움말을 입력합니다. 관련된 화면 필드를 모두 읽습니다.
  • 가져오기 매개변수 DYNPPROG, DYNPNR 및 DYNPROFIELD를 지정하면 사용자 선택 사항이 화면의 해당 필드로 반환됩니다.
  • 테이블 매개변수 RETURN_TAB을 지정하면 선택 항목이 대신 테이블에 반환됩니다.
MODULE VALUE_CARRIER INPUT.

CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'

EXPORTING

TABNAME    = 'DEMOF4HELP'

FIELDNAME  = 'CARRIER1'

DYNPPROG   =  PROGNAME

DYNPNR  =  DYNNUM

DYNPROFIELD= 'CARRIER'.

ENDMODULE.

F4IF_INT_TABLE_VALUE_REQUEST

  • 이 기능 모듈은 사용자가 생성한 값 목록을 표시합니다. ABAP 프로그램.
  • 값 목록은 테이블 매개변수 VALUE_TAB로 함수 모듈에 전달됩니다.
  • 가져오기 매개변수 DYNPPROG, DYNPNR 및 DYNPROFIELD를 지정하면 사용자 선택 사항이 화면의 해당 필드로 반환됩니다.
  • 테이블 매개변수 RETURN_TAB을 지정하면 선택 항목이 대신 테이블에 반환됩니다.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING

RETFIELD         =  'CONNID'
DYNPPROG         =  PROGNAME
DYNPNR           =  DYNNUM
DYNPROFIELD      =  'CONNECTION'
VALUE_ORG        = 'S'
TABLES
VALUE_TAB        = VALUES_TAB.

이것이 POH와 POV의 전부입니다. 의심스러운 점이 있으면 의견을 남겨주세요.