1、Documentedby:SeaZhang#of66Documentedby:SeaZhangSAPBasis系列文档SAPIDoc应用介绍及示例2010-04-10目录基本概念ALE4EDI4IDoc4交换4IDoc的特性5端口(Port)6RFC目的地6PartnerProfile6配置IDOC应用示例6环境介绍6操作步骤7第一步为Client创建逻辑系统7第二步为Client指派逻辑系统8第三步创建RFC连接10第四步右!发送端仓JDistributionModel13第五步检查发送端端口配置.17第六步修改发送端PartnerProfile18第
2、七步向目的端发布DistributionModel19第八步在口的端生腳artnerprofile21第九步检査接收端端口号.23第十步调整接收端PartnerProfile23测试26第一步在发送方创建物料.26第二步发送物料主数据.28IDOC进级30数据过滤30第_步设定过滤31第二步重新分发Distributionmodel35第三步测试35段及字段过滤37第一步创建白定义消息类型.37第二步创建物料及发送.39第三步修改Partnerprofile40第四步分发Distributionmodel.42第五步修改口的端Partnerprofile45第六步测
3、试46数据转换49第_步创建信息类型.49第二步创建规则52第三步修改规则52第四步指派规则与消息类型的对应关系.53第五步修改PartnerProfile53第六步修改Distributionmodel.54第七步在fl的端生成PartnerProfile55第八步调整目的端Partnerprofile55第九步测试57自动同步59第一步激活ChangePointer59第二步激活消息类型的thangepointer60第三步指定消息类型触发Changepointer的条件61第四步测试62总述664of66Documentedby:SeaZhang5
4、of66Documentedby:SeaZhang基本概念ALEALE(ApplicationLinkandEnabling)是SAP专门为SAP与SAP之间所设计的整合中间件。ALE从SAP3.0版本开始就作为SAP整个应用体系的一部分,为分布式数据交换提供了可靠安全的通讯机制。ALE的设计,原本作为两个SAP流程之间的一种消息传递服务,使SAP与SAP的业务流程之间数据能够有效的交换,为两个独立的SAP系统提供整合服务。不过随着应用的发展,ALE接口机制也成为了其它非SAP系统的标准整合方式。EDIEDI(ElectronicDocumentInt
5、erchange,电子数据交换)其实就是采用标准格式的电子数据,用于在通讯网络中在业务伙伴间交换业务文档所用。你可以这样理解EDI,就是大家都按相同的排列放置数据到一个数据文档中,并按相同的排列解析此文档以得到所需的内容。EDI又被叫做无纸化交换。IDocIDoc(IntermediateDocument,中转文档)是SAP提供的系统整合专用的数据/消息格式,它通过ALE方式来进行交换,而SAP就是IDoc提供了EDI的支持,你也可以把IDoc认为是EDI的一个实现。交换EDI的交换有两个流程:外发(Outboundprocess或简称OP)接收(Inboundpr
6、ocess或简称IP)SAP也是完全遵循着EDI的这两个流程,并做了相应的实现。在外发过程中:1.应用文档被创建2.IDoc生成3.IDoc从SAP传送到操作系统4.IDoc被转换成EDI标准格式7of66Documentedby:SeaZhang#of66Documentedby:SeaZhang5.EDI文件被传送到业务伙伴处(所以业务伙伴可以没有SAP,因为EDI是个标准)6.EDI子系统将传送的状态回报给SAP在接收过程中:1.EDI文档被接收2.EDI文档被转换成IDoc3.IDoc传送到SAP层4.应用文档在SAP中创建5.应用文档现在
7、可供浏览了IDoc的特性每个IDoc都被分派了唯一的号码,用于跟踪及其后参考所用IDoc包含多个段(segment),而段内包含有多个字段IDoc包含有三种类型的记录:一条控制记录,一个或多个数据记录,一个或多个状态记录端口(Port)端口用于外发流程,它判断EDI子系统程序名称、IDoc文件传送到操作系统的目录,IDoc文件名和RFC0的地RFC目的地川丁定义到远程系统通讯连接的特性以及需要调用何种功能PartnerProfilePartnerProfile指定在外发过程中所用的各类组件(业务伙伴号、IDoc类型、信息类型、端口、处理码等),通讯方式(异步或同步)以及当错误时通知
9、09我选择了800作为发送方,而810作为接收方。我将从至U810中。操作步骤第一步为Client创建逻辑系统T-code:SALEStructure>ABOilDocInterface/ApplicationLinkEnabling(ALE):BasicSettingsIDocAdministrationInboundSOAPforIDoc:RegisterSer/icePerformAutomaticVorkrlowCustomizingActivateeentreceerInkage;orIDocmboundLogica
11、DefineLogicalSystemChangeViewuLogicalSystemsn:O乡|NewiQ&啖>O凰OLogicalSystemsI.Log.SyscemflameEJfill0071(3ADSystemclient710AII_00_800AH/TMSystemclient800AINlAutoIDNode1AIN2AutoIDNode2|AIN800AutoIDNode2.1client800AIN.800NB1AutoIDNodeclient800NB1APOC
15、Client800JlDES-ALE:CentralFISyst"1City.IIIFrankfurtDeutschlandLastChangedByLogicalsystem1IDSCLNT800DateStdcurrencyEUR1ClientroleiCustomizingChangesandTransportsforChent-SpeaficObjectsChang邹withoutautomaticrecordinc(Automaticrecordingofchangesr)NochangesallowedlI将逻
16、辑系统指派给这个Client,保存同样的为810指派了逻辑系统,保存并返回第三步创建RFC连接UULLUieIDocInterface/ApplicationLmkEnabling(ALE)BasicSettingsCreateRFCConnections昌為uetermnekhcDestinationsforMethodCalls園FunctionModuleforGeneratingFilenames國ModellingandImplementingBusinessProcessesSystemMonitoringCommuni
17、cation->CreateRFCConnection或T-code:SM59團回回画回RFCConnmuionsCJR/2ConnectionsLJHTTPConnectionstoExternalServerHTTPConnectionstoABAPSystem选定ABAPConnections,点创建r一:23GH|l_CcTy.InternalConnecrrans16of66Documentedby:SeaZhangTargetHostISystemNumberSy/etoDatabasea
18、sAdministrationTecnmcalSettingsLogon&SwcuntyMDMP&Uni3CQSpwcDODgnsTargetSystemSettings输入名称及描述(名称最好跟你的逻辑系统名称一致,以便丁自动生成partnerprofile),由于是相同的Instance,所以在TargetHost这部分我不需要填。如果是不同的Instance,这里需要填上对端机器的机器名或IP,以及SAP系统号117of66Documentedby:SeaZhangTechnicalSettings/Logon&
21、%19of66Documentedby:SeaZhang#of66Documentedby:SeaZhangRFCDestmaOonIDSCLIIT800ConnectionType3ABAPConnectionDescriptionDescripoon#of66Documentedby:SeaZhang20of66Documentedby:SeaZhang我在800创建了相应的用户,叫sendusero第四步在发送端创建DistributionModelT-code:BD64厲園闫dSystemViewAddBAPDispl
25、ayDCreatemodelviewDAddBAPIAddmessagetypeDstrtoutionModelDE3KABABDIZD1GDescrrion/technca-nameDE3-KA.BABusnessobject3SDH3ID3M13>>ID3溜DSDasi-erdaiarcCoiriector歸ECJ>xRPMDH3->D3DSDMASTERECC->XRPMGbbaTradeSer/ces起Hi--oBW/SEMKID3(HR)toDEJ(eRecruitment)S
27、t;DEJID3-DWID3-DSZFICOTORPMHQ4TOXRPMHRTORPMIDES-GDSVARKOfiF2MDMDE14OMDM55MEREPMM-SUS.MMSUSTRAIIIPLMXXXEBPTOR3SMBOIIESMIUS_PDR23of66Documentedby:SeaZhangID3xmimasterMYDEMO选择新建的ModelView,点AddmessagetypeAddMessageType1x1Molvie/v7MYDEMO|IIISenderflDSCLNT800ReceiverIDSCLNT810Messa
31、typealreadyexistsPortSysteaIDSCLNT810PortP800_810withRFCdestinationIDS_810alreadyexists.OutbParametersSysteaIDSCLNT810OutboundparametersformessagetypeNATIASMATMAS05alreadOutboundparametersformessagetypeSYNCHSYNCHRONsuccess生成成功,返回第五步检查发送端端口配置Tcode:WE2127of66Documentedby
34、800DMMasterDataManagemOMOCLT1T800r4ftLTCCAPartnerRoteMessageTypeMessagevanantMe&sageFuncu.TestE3matmasTSYHCH4Outboundparmtrs.展开PartnerTypeLS,找到与逻辑系统同名的Partner,双击信息类型29of66Documentedby:SeaZhangPartnerprofiles:Outboundparametersj%Partnerllo.IDSCLNT81UForclient810Partn.Typ
39、IHRTORPMIeVlibIDES_GDSVAR_KONF_2MDMDEMOMDM55MEREPMNSUSMMSUSTRAIFJPLMXXXEBP_TO_R3SMBOMESMIIlUSPDRID3MYDEMOIDSOJIT800IDSCUiT810MATMAS.MaterialmasterMofiltersetEdit>ModelView->Distribute34of66Documentedby:SeaZhang匚1URIA=6=19ivyiuup匸rsr_ri 41、Help刁<1GeneratePaitnerProfiles匕里ChangePartnerProfilenViewVAftermodeldisplayDCreatemod选定传输过來的DistributionModel,Environment>GeneratePartnerProfilesModelViewfMYDEMO|PartnerSystemilDSCLNT800OCheckRun37of66Documentedby:SeaZhang#of66Documentedby:SeaZhangDefault 43、rtnertypealreadyexists-SystemIDSCLHT810SystetIDSCLNT810asapartnertypealreadyexistsSystemIDSCLNT800PortA000000012withRFCdestinationIDSCLNT800hasPort#of66Documentedby:SeaZhang#of66Documentedby:SeaZhangOutb>Parameters#of66Documentedby:SeaZhang#of66Documentedby: 44、SeaZhangSysteaIDSCLNT800OutboundparametersforMessagetypeSYNCHSYNCHRON#of66Documentedby:SeaZhang#of66Documentedby:SeaZhangInb>ParametersSysteaIDSCLNT800InboundparametersformessagetypeMATMASalreadyexist,38of66Documentedby:SeaZhang39of66Documentedby:SeaZhang创建成功 45、第九步检査接收端端口号Tcode:WE21PortsDescnption口Ports曰TransactionalRFA000000002SalessystemA000000003ProductionsystemA000000004CentralsystemA000000006ID3IDESSENDER802A000000007ID3IDESREC801A000000008ID3IDES800A000000009ID3-AMA000000010Q30CUIT002A000000011PorttoICARO_IZYIA000000014ILi 46、nktodent800.CORELSCOREEJFdeDescripoonVersionOlDocrec.typesSAPRelease3.0/3.1(IDocrecordtypesSAPRelease4.xRFCdeswattonIDSCUIT800A000000014Linktoclient800已经自动建立了端口,使用的是此前建立的连接第十步调整接收端PartnerProfileTcode:WE2040of66Documentedby:SeaZhang41of66Documentedby:SeaZhangiftnerDe 47、scriptionPartnerPre一5_PartnerTypeBBankPartnerTypeBFBenefitsproviderPartnerTypeGFBusinessPartner口PartnerTypeKICustomerPartnerTypeLIVendor<3PartnerTypeLS:Logo:systemID3cbent80QForclient800Forclient810PRODUCTIONPartnerNo.IDSCLNT800Forefient8001Partn.TypeLSLogicalsystem1Pos:processing:permittedagentClassificationT恥Mony|Ty.USUser1AgentRECUSER1RECUSERLdng.ENE叩hsh1Productivesystem(cbentQ30CLIIT002SALESQ30CUJT002Saessystem(dent810)T90CUIT090IDESALECentralsystemPartnerTypeUSUser(first1