Courtesy of an original on SDN https://forums.sdn.sap.com/message.jspa?messageID= 5070357 here is the snippet: The below is the code return in Smartforms for getting serial numbers, you have to also remember that serial numbers come from the DELIVERY documents. DATA: MSERNP LIKE MARC-SERNP, MDLVNO LIKE LIPS-VBELN, MDLVITM LIKE LIPS-POSNR, MSONO LIKE VBAP-VBELN, MSOITM LIKE VBAP-POSNR, MCNTR TYPE I, MLEN TYPE I, MCOMMA(1) TYPE C. DATA: BEGIN OF I_SER01 OCCURS 0, SERNR LIKE OBJK-SERNR, END OF I_SER01. READ TABLE IS_BIL_INVOICE-IT_REFORD INTO GS_IT_REFORD WITH KEY BIL_NUMBER = GS_IT_GEN-BIL_NUMBER ITM_NUMBER = GS_IT_GEN-ITM_NUMBER. MSONO = GS_IT_REFORD-ORDER_NUMB. MSOITM = GS_IT_REFORD-ITM_NUMBER_ORD. MSERNP = MDLVNO = MDLVITM = ''. MSRNO0 = MSRNO1 = MSRNO2 = MSRNO3 = ''. SELECT SINGLE MARC~SERNP LIPS~VBELN LIPS~POSNR INTO (MSERNP, MDLVNO, MDLVITM) FROM MARC JOIN LIPS ON LIPS~MATNR = MARC~MATNR AND LIPS~WERKS = MARC~WERKS WHERE LIPS~VGBEL = MSONO AND LIPS~VGPOS = MSOITM. IF NOT MSERNP IS INITIAL. SELECT OBJK~SERNR INTO CORRESPONDING FIELDS OF TABLE I_SER01 FROM SER01 JOIN OBJK ON OBJK~OBKNR = SER01~OBKNR WHERE SER01~LIEF_NR = MDLVNO AND SER01~POSNR = MDLVITM. SORT I_SER01 BY SERNR. MCNTR = 1. MSRNO0 = MSRNO1 = MSRNO2 = MSRNO3 = ''. LOOP AT I_SER01. IF I_SER01-SERNR(1) = '0'. IF I_SER01-SERNR CA 'ABCDEFGHIJKLMNOPRSTUVWXYZabcdefghijklmnopqrstuvwxy z-/#,.'. ENDIF. IF SY-FDPOS = 0 OR SY-FDPOS = 18. PACK I_SER01-SERNR TO I_SER01-SERNR. ENDIF. CONDENSE I_SER01-SERNR. ENDIF. IF MCNTR = 1. IF NOT MSRNO1 IS INITIAL AND NOT MSRNO0 IS INITIAL. MCOMMA = ', '. ELSE. MCOMMA = ''. MSRNO1 = ''. ENDIF. CONCATENATE MSRNO1 MCOMMA I_SER01-SERNR INTO MSRNO0. MLEN = STRLEN( MSRNO0 ). IF MLEN < 255. CONCATENATE MSRNO1 MCOMMA I_SER01-SERNR INTO MSRNO1. ELSE. MCNTR = 2. MSRNO0 = ''. ENDIF. ENDIF. IF MCNTR = 2. IF NOT MSRNO2 IS INITIAL AND NOT MSRNO0 IS INITIAL. MCOMMA = ', '. ELSE. MCOMMA = ''. ENDIF. CONCATENATE MSRNO2 MCOMMA I_SER01-SERNR INTO MSRNO0. MLEN = STRLEN( MSRNO0 ). IF MLEN < 255. CONCATENATE MSRNO2 MCOMMA I_SER01-SERNR INTO MSRNO2. ELSE. MCNTR = 3. ENDIF. ENDIF. IF MCNTR = 3. IF NOT MSRNO3 IS INITIAL AND NOT MSRNO0 IS INITIAL. MCOMMA = ','. ELSE. MCOMMA = ''. ENDIF. CONCATENATE MSRNO3 MCOMMA I_SER01-SERNR INTO MSRNO0. MLEN = STRLEN( MSRNO0 ). IF MLEN <= 255. CONCATENATE MSRNO3 MCOMMA I_SER01-SERNR INTO MSRNO3. ELSE. MCNTR = 4. MSRNO0 = ''. ENDIF. ENDIF. ENDLOOP. ENDIF.
| | | ---------------Original Message--------------- From: Adriano Lopez Sent: Wednesday, August 24, 2011 8:27 PM Subject: How to find serial number of material for invoice? Hello experts, We need serial number or batch number to be printed in the invoices. How can we pull the information for the smart forms about such information? Logic regarding the tables and fields will be a great help. Thank you in advance. | | __.____._ Copyright © 2011 Toolbox.com and message author. Toolbox.com 4343 N. Scottsdale Road Suite 280, Scottsdale, AZ 85251 | | Popular White Papers In the Spotlight _.____.__ |