|
- SAP Smartforms can be used for creating and maintaining forms for mass printing in SAP Systems The output medium for Smartforms support printer fax email or the Internet by using the generated XML outputampnbsp According to SAP you need neither have any programming knowledge nor use a Script language to adapt standard forms However basic ABAP programming skills are required only in special cases for example to call a function module you created or for complex and extensive conditionsampnbsp 1 Create a new smartforms Transaction code SMARTFORMS Create new smartforms call ZSMART2 Define looping process for internal tableampnbsp ampnbspampnbspampnbspampnbspam Pages and windows ampbullampnbspFirst Page ampgt Header Window Cursor at First Page then click Edit ampgt Node ampgt CreateHere you can specify your title and page numbering ampampSFSYPAGEampamp Page 1 of ampampSFSYFORMPAGESZ40ampamp Total Pageampnbsp ampbullampnbspMain windows ampgt TABLE ampgt DATA ampbullampnbspIn the Loop section tick Internal table and fill in ampbullampnbspITAB1 table in ABAP SMARTFORM calling function INTO ITAB23 Define table in smartforms ampnbspampnbspampnbspampnbspam Global settings ampnbspampnbspampnbspampnbspam Form interface ampnbspampnbspampnbspampnbspam Variable nameampnbspampnbspampnbsp Type assignmentampnbspampnbsp Reference type ampnbspampnbspampnbspampnbspam ITAB1ampnbspampnbspampnbspampn TYPEampnbspampnbspampnbspampnb Table Structure ampnbspampnbspampnbspampnbspam Global definitions ampnbspampnbspampnbspampnbspam Variable nameampnbspampnbspampnbsp Type assignmentampnbspampnbsp Reference type ampnbspampnbspampnbspampnbspam ITAB2ampnbspampnbspampnbspampn TYPEampnbspampnbspampnbspampnb Table Structureampnbsp 4 To display the data in the formampnbsp ampnbspampnbspampnbsp Make used of the Table Painter and declare the Line Type in Tabstrips Table ampnbspampnbspampnbspampnbsp egampnbsp HDGEN for printing header details ampnbspampnbspampnbspampnbspam ITGENampnbsp for printing data detailsampnbsp ampnbspampnbspampnbspampnbsp You have to specify the Line Type in your Text elements in the Tabstrips Output options ampnbspampnbspampnbspampnbspam Tick the New Line and specify the Line Type for outputting the data ampnbspampnbspampnbspampnbspam Declare your output fields in Text elementsampnbsp ampnbspampnbspampnbspampnbspam Tabstrips Output Options ampnbspampnbspampnbspampnbspam For different fonts use this Style IDWTCERTSTYLE ampnbspampnbspampnbspampnbspam For Quantity or Amout you can used this variable ampampGSITABAMOUNT122ampamp 5 Calling SMARTFORMS from your ABAP programampnbsp REPORT ZSMARTFORMampnbsp Calling SMARTFORMS from your ABAP program Collecting all the table data in your program and pass once to SMARTFORMS SMARTFORMS Declare your table type in Global Settings ampgt Form Interface Global Definintions ampgt Global Data Main Window ampgt Table ampgt DATA Written by ampnbsp SAP Hints and Tips on Configuration and ABAP4 Programming ampnbspampnbspampnbspampnbspam httpsapr3tripodcom ampnbsp TABLES MKPFampnbsp DATA FMNAME TYPE RS38LFNAMampnbsp DATA BEGIN OF INTMKPF OCCURS 0 ampnbspampnbspampnbspampnbspam INCLUDE STRUCTURE MKPF DATA END OF INTMKPFampnbsp SELECTOPTIONS SMBLNR FOR MKPFMBLNR MEMORY ID 001ampnbsp SELECT FROM MKPF WHERE MBLNR IN SMBLNR ampnbspampnbsp MOVECORRESPONDING MKPF TO INTMKPF ampnbspampnbsp APPEND INTMKPFampnbsp ENDSELECTampnbsp At the end of your program Passing data to SMARTFORMSampnbsp call function SSFFUNCTIONMODULENAME ampnbsp exporting ampnbspampnbspampnbsp formnameampnbspampnbspampnbspa ZSMARTFORM ampnbspampnbsp VARIANTampnbspampnbspampnbspam ampnbspampnbsp DIRECTCALLampnbspampnbspampnbs ampnbsp IMPORTING ampnbspampnbspampnbsp FMNAMEampnbspampnbspampnbspamp FMNAME ampnbsp EXCEPTIONS ampnbspampnbspampnbsp NOFORMampnbspampnbspampnbspamp 1 ampnbspampnbspampnbsp NOFUNCTIONMODULEampnbspampnbsp 2 ampnbspampnbspampnbsp OTHERSampnbspampnbspampnbspamp 3ampnbsp if sysubrc ampltampgt 0 ampnbspampnbsp WRITE ERROR 1 MESSAGE ID SYMSGID TYPE SYMSGTY NUMBER SYMSGNO ampnbspampnbspampnbspampnbspam WITH SYMSGV1 SYMSGV2 SYMSGV3 SYMSGV4 endifampnbsp call function FMNAME EXPORTING ampnbspampnbsp ARCHIVEINDEXampnbspampnbspampn ampnbspampnbsp ARCHIVEINDEXTABampnbspampnbspa ampnbspampnbsp ARCHIVEPARAMETERSampnbspampnbs ampnbspampnbsp CONTROLPARAMETERSampnbspampnbs ampnbspampnbsp MAILAPPLOBJampnbspampnbspampnb ampnbspampnbsp MAILRECIPIENTampnbspampnbspamp ampnbspampnbsp MAILSENDERampnbspampnbspampnbs ampnbspampnbsp OUTPUTOPTIONSampnbspampnbspamp ampnbspampnbsp USERSETTINGSampnbspampnbspampn X IMPORTING ampnbspampnbsp DOCUMENTOUTPUTINFOampnbspampnb ampnbspampnbsp JOBOUTPUTINFOampnbspampnbspamp ampnbspampnbsp JOBOUTPUTOPTIONSampnbspampnbsp ampnbsp TABLES ampnbspampnbspampnbsp GSMKPFampnbspampnbspampnbspamp INTMKPF ampnbsp EXCEPTIONS ampnbspampnbspampnbsp FORMATTINGERRORampnbspampnbspa 1 ampnbspampnbspampnbsp INTERNALERRORampnbspampnbspamp 2 ampnbspampnbspampnbsp SENDERRORampnbspampnbspampnbsp 3 ampnbspampnbspampnbsp USERCANCELEDampnbspampnbspampn 4 ampnbspampnbspampnbsp OTHERSampnbspampnbspampnbspamp 5ampnbsp if sysubrc ampltampgt 0 ampnbspampnbsp MESSAGE ID SYMSGID TYPE SYMSGTY NUMBER SYMSGNO ampnbspampnbspampnbspampnbspam WITH SYMSGV1 SYMSGV2 SYMSGV3 SYMSGV4 endif Additional Fonts for your SMARTFORMSampnbsp You can create additional fonts and style with transaction SMARTSTYLES This can then be define in the paragraph and character formats which you can then be assign to texts and fields in the Smart Formampnbsp The character formats includes effects such as superscript subscript barcode and font attributesampnbsp |