cancel
Showing results for 
Search instead for 
Did you mean: 

smartform print not visible for single vbeln bt visible for multiple vbeln

former_member202079
Participant
0 Kudos

HI.. all,

iam passing single vbeln from driver program bt print preview is not coming..bt in case of multiple vbeln its coming fine..pls help..

my code is.

SELECTION-SCREEN : BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.

SELECT-OPTIONS : S_VBELN FOR vbak-VBELN OBLIGATORY. " MATCHCODE OBJECT ORDE.

SELECTION-SCREEN : END OF BLOCK B1.

SELECT VBELN FROM vbak INTO TABLE IT_VBRP

WHERE VBELN IN S_VBELN.

CLEAR CONTROL_PARAMETERS.

CLEAR OUTPUT_OPTIONS.

LOOP AT IT_VBRP.

P_VBELN = IT_VBRP-VBELN.

CONTROL_PARAMETERS-NO_OPEN = 'X'.

CONTROL_PARAMETERS-NO_CLOSE = 'X'.

AT FIRST.

CONTROL_PARAMETERS-NO_OPEN = SPACE.

CONTROL_PARAMETERS-NO_CLOSE = 'X'.

ENDAT.

*======> block AT LAST has to be before PERFORM

AT LAST.

CONTROL_PARAMETERS-NO_OPEN = 'X'.

CONTROL_PARAMETERS-NO_CLOSE = SPACE.

ENDAT.

CONTROL_PARAMETERS-NO_DIALOG = 'X'.

CONTROL_PARAMETERS-PREVIEW = 'X'.

CALL FUNCTION LF_FM_NAME

EXPORTING

  • ARCHIVE_INDEX =

  • ARCHIVE_INDEX_TAB =

  • ARCHIVE_PARAMETERS =

CONTROL_PARAMETERS = CONTROL_PARAMETERS

  • MAIL_APPL_OBJ =

  • MAIL_RECIPIENT =

  • MAIL_SENDER =

OUTPUT_OPTIONS = OUTPUT_OPTIONS

USER_SETTINGS = ' '

S_VBELN = P_VBELN

IMPORTING

  • DOCUMENT_OUTPUT_INFO =

JOB_OUTPUT_INFO = JOB_OUTPUT_INFO

  • JOB_OUTPUT_OPTIONS =

EXCEPTIONS

FORMATTING_ERROR = 1

INTERNAL_ERROR = 2

SEND_ERROR = 3

USER_CANCELED = 4

OTHERS = 5

.

IF SY-SUBRC <> 0.

MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDLOOP.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

Can you pls paste your code correctally, Pls check in marked line.. I am not getting what you are trying to pass in the function module.

CALL FUNCTION LF_FM_NAME
EXPORTING
* ARCHIVE_INDEX =
* ARCHIVE_INDEX_TAB =
* ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS = CONTROL_PARAMETERS
* MAIL_APPL_OBJ =
* MAIL_RECIPIENT =
* MAIL_SENDER =
OUTPUT_OPTIONS = OUTPUT_OPTIONS
USER_SETTINGS = ' X'   --- > Pls keep X over there
S_VBELN = P_VBELN  ------ > *Pls tell me why are you passing this (and where)*
IMPORTING
* DOCUMENT_OUTPUT_INFO =
*JOB_OUTPUT_INFO = JOB_OUTPUT_INFO --- > u can comment this if u are not using

* JOB_OUTPUT_OPTIONS =
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5
.
IF SY-SUBRC 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

I suggest you to bebug the follow of the program... seems that your internal table is not geeting populated.

Regards,

Lokesh.

Edited by: Lokesh Tarey on Apr 27, 2010 8:26 AM

former_member202079
Participant
0 Kudos

this is all about my driver program.

&----


*& Report ZEN_PACKREP01

*&

&----


*&

*&

&----


REPORT ZEN_PACKREP03 NO STANDARD PAGE HEADING.

TABLES : ZPACKHDR, TSP01.

DATA : BEGIN OF IT_CHLN OCCURS 0,

ZJOB_CHLN LIKE ZPACKHDR-ZJOB_CHLN,

END OF IT_CHLN.

DATA: LF_FM_NAME TYPE RS38L_FNAM.

DATA : LF_FORMNAME TYPE TDSFNAME.

SELECTION-SCREEN : BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.

SELECT-OPTIONS : JOB_CHLN FOR ZPACKHDR-ZJOB_CHLN OBLIGATORY. " MATCHCODE OBJECT ORDE.

SELECTION-SCREEN : END OF BLOCK B1.

START-OF-SELECTION.

SELECT distinct ZJOB_CHLN FROM ZPACKHDR INTO table IT_CHLN WHERE ZJOB_CHLN IN JOB_CHLN.

LF_FORMNAME = 'ZEN_LAYOUT_PACK2'.

PERFORM F_CALL_SMART_FORM USING LF_FORMNAME.

END-OF-SELECTION.

&----


*& Form f_call_smart_form

&----


FORM F_CALL_SMART_FORM USING P_LF_FORMNAME.

DATA : P_CHLN LIKE ZPACKHDR-ZJOB_CHLN.

DATA : CONTROL_PARAMETERS TYPE SSFCTRLOP,

OUTPUT_OPTIONS TYPE SSFCOMPOP,

ITCPP TYPE ITCPP.

DATA : TA_SPOOL TYPE TSFSPOOLID ,

WA_SPOOL TYPE RSPOID ,

JOB_OUTPUT_INFO TYPE SSFCRESCL,

DOC_OUTPUT_INFO TYPE SSFCRESPD,

JOB_OUTPUT_OPTIONS TYPE SSFCRESOP.

CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'

EXPORTING

FORMNAME = LF_FORMNAME

IMPORTING

FM_NAME = LF_FM_NAME

EXCEPTIONS

NO_FORM = 1

NO_FUNCTION_MODULE = 2

OTHERS = 3.

IF SY-SUBRC <> 0.

MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

SELECT distinct ZJOB_CHLN FROM ZPACKHDR INTO TABLE IT_CHLN

WHERE ZJOB_CHLN IN JOB_CHLN.

CLEAR CONTROL_PARAMETERS.

CLEAR OUTPUT_OPTIONS.

LOOP AT IT_CHLN.

P_CHLN = IT_CHLN-ZJOB_CHLN.

  • IF SY-TABIX = 1.

  • OUTPUT_OPTIONS-TDNEWID = 'X'.

*ELSE.

  • OUTPUT_OPTIONS-TDNEWID = ' '.

*ENDIF.

CONTROL_PARAMETERS-NO_OPEN = 'X'.

CONTROL_PARAMETERS-NO_CLOSE = 'X'.

at first.

control_parameters-no_open = 'space'.

control_parameters-no_close = 'x'.

endat.

**======> block AT LAST has to be before PERFORM

at last.

control_parameters-no_open = 'X'.

control_parameters-no_close = 'space'.

endat.

CONTROL_PARAMETERS-NO_DIALOG = 'X'.

CONTROL_PARAMETERS-PREVIEW = 'X'.

CALL FUNCTION LF_FM_NAME

EXPORTING

  • ARCHIVE_INDEX =

  • ARCHIVE_INDEX_TAB =

  • ARCHIVE_PARAMETERS =

CONTROL_PARAMETERS = CONTROL_PARAMETERS

  • MAIL_APPL_OBJ =

  • MAIL_RECIPIENT =

  • MAIL_SENDER =

OUTPUT_OPTIONS = OUTPUT_OPTIONS

USER_SETTINGS = ''

JOB_CHLN = P_CHLN

IMPORTING

  • DOCUMENT_OUTPUT_INFO =

JOB_OUTPUT_INFO = JOB_OUTPUT_INFO

  • JOB_OUTPUT_OPTIONS =

EXCEPTIONS

FORMATTING_ERROR = 1

INTERNAL_ERROR = 2

SEND_ERROR = 3

USER_CANCELED = 4

OTHERS = 5

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDLOOP.

CALL FUNCTION 'ABAP4_COMMIT_WORK'.

TA_SPOOL = JOB_OUTPUT_INFO-SPOOLIDS .

READ TABLE TA_SPOOL INTO WA_SPOOL INDEX 1.

ITCPP-TDSPOOLID = WA_SPOOL .

ENDFORM. "F_CALL_SMART_FORM

Former Member
0 Kudos

Dear,

It is not clear again.

Whenevre u need to post any code, First paste the code after coping it from SE38.

Paste on SCN. and select all code, click on one of option < > (Code).. so it will look like code.. Pls do this...

`Lokesh

Edited by: Lokesh Tarey on Apr 27, 2010 8:50 AM

Edited by: Lokesh Tarey on Apr 27, 2010 8:51 AM

former_member202079
Participant
0 Kudos
*&---------------------------------------------------------------------*
*& Report  ZEN_PACKREP01
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZEN_PACKREP03 NO STANDARD PAGE HEADING.


TABLES : ZPACKHDR, TSP01.


DATA : BEGIN OF IT_CHLN OCCURS 0,
        ZJOB_CHLN LIKE ZPACKHDR-ZJOB_CHLN,
        END OF IT_CHLN.


DATA: LF_FM_NAME TYPE RS38L_FNAM.
DATA : LF_FORMNAME TYPE TDSFNAME.

SELECTION-SCREEN : BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS   : JOB_CHLN FOR ZPACKHDR-ZJOB_CHLN OBLIGATORY. " no intervals no-extension.  " MATCHCODE OBJECT ORDE.
SELECTION-SCREEN : END OF BLOCK B1.



START-OF-SELECTION.

  SELECT distinct ZJOB_CHLN FROM ZPACKHDR INTO table IT_CHLN WHERE ZJOB_CHLN IN JOB_CHLN.

  LF_FORMNAME =  'ZEN_LAYOUT_PACK2'.


  PERFORM F_CALL_SMART_FORM USING LF_FORMNAME.


END-OF-SELECTION.

*&--------------------------------------------------------------------*
*&      Form  f_call_smart_form
*&--------------------------------------------------------------------*
FORM F_CALL_SMART_FORM USING P_LF_FORMNAME.

  DATA : P_CHLN LIKE ZPACKHDR-ZJOB_CHLN.

  DATA : CONTROL_PARAMETERS TYPE SSFCTRLOP,
         OUTPUT_OPTIONS   TYPE SSFCOMPOP,
         ITCPP TYPE ITCPP.

  DATA : TA_SPOOL TYPE TSFSPOOLID ,
         WA_SPOOL TYPE RSPOID ,
         JOB_OUTPUT_INFO TYPE SSFCRESCL,
         DOC_OUTPUT_INFO      TYPE   SSFCRESPD,
         JOB_OUTPUT_OPTIONS   TYPE   SSFCRESOP.




  CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
    EXPORTING
      FORMNAME           = LF_FORMNAME
    IMPORTING
      FM_NAME            = LF_FM_NAME
    EXCEPTIONS
      NO_FORM            = 1
      NO_FUNCTION_MODULE = 2
      OTHERS             = 3.
  IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.

  SELECT distinct ZJOB_CHLN FROM ZPACKHDR INTO TABLE IT_CHLN
   WHERE ZJOB_CHLN IN JOB_CHLN.

  CLEAR CONTROL_PARAMETERS.
  CLEAR OUTPUT_OPTIONS.

  LOOP AT IT_CHLN.

    P_CHLN = IT_CHLN-ZJOB_CHLN.

*    IF SY-TABIX = 1.
*      OUTPUT_OPTIONS-TDNEWID  = 'X'.
*    ELSE.
*      OUTPUT_OPTIONS-TDNEWID  = ' '.
*    ENDIF.


   CONTROL_PARAMETERS-NO_OPEN = 'X'.
    CONTROL_PARAMETERS-NO_CLOSE = 'X'.

  at first.
    control_parameters-no_open = 'space'.
    control_parameters-no_close = 'x'.
  endat.

*======> block AT LAST has to be before PERFORM
  at last.
    control_parameters-no_open = 'X'.
    control_parameters-no_close = 'space'.
    endat.
**

    CONTROL_PARAMETERS-NO_DIALOG = 'X'.
    CONTROL_PARAMETERS-PREVIEW = 'X'.

    CALL FUNCTION LF_FM_NAME
      EXPORTING
*   ARCHIVE_INDEX              =
*   ARCHIVE_INDEX_TAB          =
*   ARCHIVE_PARAMETERS         =
    CONTROL_PARAMETERS      =   CONTROL_PARAMETERS
*   MAIL_APPL_OBJ              =
*   MAIL_RECIPIENT             =
*   MAIL_SENDER                =
       OUTPUT_OPTIONS             = OUTPUT_OPTIONS
       USER_SETTINGS              = ''
        JOB_CHLN                   = P_CHLN
     IMPORTING
*   DOCUMENT_OUTPUT_INFO       =
       JOB_OUTPUT_INFO            = JOB_OUTPUT_INFO
*   JOB_OUTPUT_OPTIONS         =
     EXCEPTIONS
       FORMATTING_ERROR           = 1
       INTERNAL_ERROR             = 2
       SEND_ERROR                 = 3
       USER_CANCELED              = 4
       OTHERS                     = 5
              .
    IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.



  ENDLOOP.

  CALL FUNCTION 'ABAP4_COMMIT_WORK'.


  TA_SPOOL = JOB_OUTPUT_INFO-SPOOLIDS .
  READ TABLE TA_SPOOL INTO WA_SPOOL INDEX 1.
  ITCPP-TDSPOOLID = WA_SPOOL .




ENDFORM.                    "F_CALL_SMART_FORM

Answers (0)