cancel
Showing results for 
Search instead for 
Did you mean: 

Output Control Conversion between SAPScript and Smartforms

Former Member
0 Kudos

I know there are structure ITCPO for SAPScript and SSFCTRLOP/SSFCOMPOP for Smartform output conrol. I am desgin the smartform to replace standard Sapscript form for carton label, in standard program all communction type datas are for scriptform as below, so I just want to know how can I convert it from ITCPO into SSFCTRLOP/SSFCOMPOP for smartform since the printout running background?!

___________________________________________________

MOVE-CORRESPONDING NAST TO LVS_SNAST.

MOVE SY-REPID TO LVF_PROGRAM.

CALL FUNCTION 'CONVERT_COMM_TYPE_DATA'

EXPORTING

PI_COMM_TYPE = LVS_COMM_TYPE

PI_COMM_VALUES = LVS_COMM_VALUES

PI_SCREEN = US_SCREEN

  • PI_NEWID =

PI_COUNTRY = US_COUNTRY

PI_REPID = LVF_PROGRAM

PI_SNAST = LVS_SNAST

IMPORTING

PE_ITCPO = LVS_ITCPO

PE_DEVICE = LVF_DEVICE

PE_MAIL_RECIPIENT = LVS_RECIPIENT

PE_MAIL_SENDER = LVS_SENDER

EXCEPTIONS

COMM_TYPE_NOT_SUPPORTED = 1

RECIPIENT_CREATION_FAILED = 2

SENDER_CREATION_FAILED = 3

OTHERS = 4.

IF SY-SUBRC <> 0.

RETCODE = SY-SUBRC.

SYST-MSGTY = 'E'.

PERFORM PROTOCOL_UPDATE.

ENDIF.

check retcode eq 0.

  • if there is no communication type

IF LVS_COMM_TYPE IS INITIAL.

  • set device

CASE NAST-NACHA.

WHEN '1'.

LVF_DEVICE = 'PRINTER'.

WHEN '2'.

LVF_DEVICE = 'TELEFAX'.

LVS_ITCPO-TDTELENUM = NAST-TELFX.

IF NAST-TLAND IS INITIAL.

LVS_ITCPO-TDTELELAND = US_COUNTRY.

ELSE.

LVS_ITCPO-TDTELELAND = NAST-TLAND.

ENDIF.

LVS_ITCPO-TDSENDDATE = NAST-VSDAT.

LVS_ITCPO-TDSENDTIME = NAST-VSURA.

LVS_ITCPO-TDFAXUSER = NAST-USNAM.

WHEN '3'.

LVF_DEVICE = 'TELETEX'.

LVS_ITCPO-TDTELENUM = NAST-TELTX.

IF NAST-TLAND IS INITIAL.

LVS_ITCPO-TDTELELAND = US_COUNTRY.

ELSE.

LVS_ITCPO-TDTELELAND = NAST-TLAND.

ENDIF.

LVS_ITCPO-TDSENDDATE = NAST-VSDAT.

LVS_ITCPO-TDSENDTIME = NAST-VSURA.

WHEN '4'.

LVF_DEVICE = 'TELEX'.

LVS_ITCPO-TDTELENUM = NAST-TELX1.

IF NAST-TLAND IS INITIAL.

LVS_ITCPO-TDTELELAND = US_COUNTRY.

ELSE.

LVS_ITCPO-TDTELELAND = NAST-TLAND.

ENDIF.

LVS_ITCPO-TDSENDDATE = NAST-VSDAT.

LVS_ITCPO-TDSENDTIME = NAST-VSURA.

WHEN OTHERS.

LVF_DEVICE = 'PRINTER'.

ENDCASE.

ENDIF.

  • fill structure itcpo

ITCPO = LVS_ITCPO.

  • insert note 508569 {

  • OTF-Output, wenn Browser-Druck

if nast-sort1 = 'EBPP'.

lvs_itcpo-tdgetotf = 'X'.

endif.

  • } end note 508569

_____________________________________________

Any suggestion would be appreciated!

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

I've fixed it