add two internal tables _ scn

5
Getting Started Newsletters Store Products Services & Support About SCN Downloads Industries Training & Education Partnership Developer Center Lines of Business University Alliances Events & Webinars Innovation Log On Join Us Hi, Guest Search the Community Activity Communications Actions Browse Tweet 0 6 Replies Latest reply: Feb 15, 2008 8:33 AM by Ramachandra Kamath 2370 Views Topics: abap Average User Rating (0 ratings) add two internal tables This question is Assumed Answered. hi how can we merge two internal table in a single internal table. please give me the syntax. phanidhar yarlagadda Feb 15, 2008 8:17 AM Re: add two internal tables Hi, There are many ways one way is loop at itab1. read table itab2 with key field1 = itab1field1. if sysubrc eq 0. movecorresponding itab1 to iatb3. movecorresponding itab2 to itab3. append itab3. clear itab3. endif. endloop. Regards, Nagaraj Like (0) nagaraj kumar nishtala Feb 15, 2008 8:22 AM (in response to phanidhar yarlagadda) Re: add two internal tables try one among following : 1) you can use this: append lines of itab1 to it_final. append lines of itab2 to it_final. .... 2) loop at itab1. movecorresponding itab1 to it_final. "For same field name purpose it_finalfield1 = itab1field2. "For different field name purpose append it_final. endloop. Tushar Mundlik Feb 15, 2008 8:24 AM (in response to phanidhar yarlagadda)

Upload: zlatil

Post on 29-Sep-2015

221 views

Category:

Documents


6 download

DESCRIPTION

SAP JOIN internal table

TRANSCRIPT

  • 4/15/2015 addtwointernaltables|SCN

    http://scn.sap.com/thread/743644 1/5

    GettingStarted Newsletters Store

    Products Services&Support AboutSCN Downloads

    Industries Training&Education Partnership DeveloperCenter

    LinesofBusiness UniversityAlliances Events&Webinars Innovation

    LogOn JoinUsHi,Guest SearchtheCommunity

    Activity Communications Actions

    Browse

    Tweet0

    6Replies Latestreply:Feb15,20088:33AMbyRamachandraKamath

    2370Views Topics:abap

    AverageUserRating

    (0ratings)

    addtwointernaltablesThisquestionisAssumedAnswered.

    hihowcanwemergetwointernaltableinasingleinternaltable.pleasegivemethesyntax.

    phanidharyarlagadda Feb15,20088:17AM

    Re:addtwointernaltables

    Hi,Therearemanywaysonewayisloopatitab1.readtableitab2withkeyfield1=itab1field1.ifsysubrceq0.movecorrespondingitab1toiatb3.movecorrespondingitab2toitab3.appenditab3.clearitab3.endif.endloop.Regards,Nagaraj

    Like(0)

    nagarajkumarnishtala Feb15,20088:22AM (inresponsetophanidharyarlagadda)

    Re:addtwointernaltables

    tryoneamongfollowing:1)youcanusethis:appendlinesofitab1toit_final.appendlinesofitab2toit_final.....2)loopatitab1.movecorrespondingitab1toit_final."Forsamefieldnamepurposeit_finalfield1=itab1field2."Fordifferentfieldnamepurposeappendit_final.endloop.

    TusharMundlik Feb15,20088:24AM (inresponsetophanidharyarlagadda)

  • 4/15/2015 addtwointernaltables|SCN

    http://scn.sap.com/thread/743644 2/5

    loopatitab2.movecorrespondingitab2toit_final."Forsamefieldnamepurposeit_finalfield2=itab2field2."Fordifferentfieldnamepurposeappendit_final.endloop.3)datadeclarationpartTABLES:mara,marc,mard.**********TYPESTYPES:BEGINOFt_mara,matnrTYPEmatnr,"MaterialNumbermtartTYPEmtart,"MaterialTypemeinsTYPEmeins,"BasicUnitOfmeasureENDOFt_mara.TYPES:BEGINOFt_marc,matnrTYPEmatnr,"MaterialNumberwerksTYPEwerks_d,"PlantENDOFt_marc.TYPES:BEGINOFt_mard,matnrTYPEmatnr,werksTYPEwerks_d,lgortTYPElgort_d,ENDOFt_mard.TYPES:BEGINOFt_tab,matnrTYPEmatnr,mtartTYPEmtart,meinsTYPEmeins,werksTYPEwerks_d,lgortTYPElgort_d,ENDOFt_tab.**********WORKAREADATA:wa_maraTYPEt_mara,wa_marcTYPEt_marc,wa_mardtypet_mard,wa_tabTYPEt_tab,e_matnrTYPEmatnr,wa_matnrTYPEmatnr.DATA:i_fieldcatTYPEslis_t_fieldcat_alv.DATA:d_field(40),d_value(40),AMBER(20).**********INTERNALTABLESDATA:it_maraTYPESTANDARDTABLEOFt_mara,it_marcTYPESTANDARDTABLEOFt_marc,it_mardTYPESTANDARDTABLEOFt_mard,it_tabTYPESTANDARDTABLEOFt_tab.DataSelectionPart*selectdatafrommaratableSELECTmatnrmtartmeinsFROMmaraINTOTABLEit_maraWHEREmatnrINs_matnr.*selectdatafrommarctableSELECTmatnrwerksFROMmarcINTOTABLEit_marcFORALLENTRIESINit_maraWHEREmatnr=it_maramatnr.**********************************************************THISBLOCKMOVESTHEFIELDSFROMDIFFERENT*TABLES(mara,marc)INTOAFINALTABLEIT_TAB**********************************************************LOOPATit_marcINTOwa_marc.READTABLEit_maraINTOwa_maraWITHKEYmatnr=wa_marcmatnrBINARYSEARCH.IFsysubrc=0.wa_tabmatnr=wa_maramatnr.wa_tabmtart=wa_maramtart.

  • 4/15/2015 addtwointernaltables|SCN

    http://scn.sap.com/thread/743644 3/5

    wa_tabmeins=wa_marameins.ENDIF.wa_tabwerks=wa_marcwerks.APPENDwa_tabTOit_tab.ENDLOOP.

    Like(0)

    Re:addtwointernaltables

    ifboththeinternaltableshavesamestructureyoucanaddusingappendlinesofitab1toitab2."goodperformance

    Like(0)

    JayRaj Feb15,20088:26AM (inresponsetophanidharyarlagadda)

    Re:addtwointernaltables

    hiphanidarcheckthecodethismayhelpsinclarifyingyourdoubtTABLES:MARA,MAKT.SELECTOPTIONS:SO_MATNRFORMARAMATNR.DATA:BEGINOFIT_MARAOCCURS0,MATNRLIKEMARAMATNR,MTARTLIKEMARAMTART,ENDOFIT_MARA,BEGINOFIT_MAKTOCCURS0,MATNRLIKEMARAMATNR,MAKTXLIKEMAKTMAKTX,ENDOFIT_MAKT,BEGINOFJTABOCCURS0,MATNRLIKEMARAMATNR,MTARTLIKEMARAMTART,MAKTXLIKEMAKTMAKTX,ENDOFJTAB.STARTOFSELECTION.SELECTMATNRMTARTFROMMARAINTOTABLEIT_MARAWHEREMATNRINSO_MATNR.SELECTMATNRMAKTXFROMMAKTINTOTABLEIT_MAKTWHEREMATNRINSO_MATNRANDSPRAS='E'.LOOPATIT_MARA.MOVEIT_MARAMATNRTOJTABMATNR.MOVEIT_MARAMTARTTOJTABMTART.APPENDJTAB.ENDLOOP.CLEARIT_MARA.SORTJTABBYMATNR.SORTIT_MAKTBYMATNR.LOOPATIT_MAKT.READTABLEJTABWITHKEYMATNR=IT_MAKTMATNR.IFSYSUBRCEQ0.JTABMAKTX=IT_MAKTMAKTX.MODIFYJTABINDEXSYTABIX.ENDIF.ENDLOOP.

    sachinsampras Feb15,20088:30AM (inresponsetophanidharyarlagadda)

  • 4/15/2015 addtwointernaltables|SCN

    http://scn.sap.com/thread/743644 4/5

    LOOPATJTAB.WRITE:/JTABMATNR,JTABMTART,JTABMAKTX.ENDLOOP.Regardssachin

    Like(0)

    Re:addtwointernaltables

    Whilemergingtheremustbekeyfieldexistingthetwointernaltables.

    eitherucancreateanewinternaltableanddumpthedataofthetwoitabstoit.orucanmodifytheprimarytable(itab1)fromthesecondarytable(itab2)

    1)itab1hasfieldmatnrmtart2)itab2hasfieldmatnrwerks

    loopatitab1.readtableitab2withkeymatnr=itab1matnr.checksysubrc=0.itab3matnr=itab1matnr.itab3mtart=itab1mtart.itab3werks=itab2werks.appenditab3.endloop.

    itcanbedonealsolikethis.

    putafieldwerksinitab1andmodifyit.

    loopatitab1.readtableitab2withkeymatnr=itab1matnr.checksysubrc=0.itab1werks=itab1werks.modifyitab1transportingwerks.appenditab3.endloop.

    theabovestatementscanbeusedifursurethattheinnerjoinconditionexistsinthetables.

    iftheitab2hasmorethanoneentriesforthematnrinitab1(ex:morethanonewerksforamatnr).

    Thenusethis.

    loopatitab1.Loopatitab2wherematnr=itab1matnr.itab3matnr=itab1matnr.itab3mtart=itab1mtart.itab3werks=itab2werks.appenditab3.endloop.endloop.

    rewardifusefull:)

    Like(0)

    KesavadasThekkillath Feb15,20088:31AM (inresponsetophanidharyarlagadda)

  • 4/15/2015 addtwointernaltables|SCN

    http://scn.sap.com/thread/743644 5/5

    FollowSCNSiteIndex ContactUs SAPHelpPortalPrivacy TermsofUse LegalDisclosure Copyright

    Tweet0

    Re:addtwointernaltables

    HiSimpleUseappendinesofitab1toitab2.

    Like(0)

    RamachandraKamath Feb15,20088:33AM (inresponsetophanidharyarlagadda)