Embed Size (px)
Transcript of Intercopmany Idoc
Inter-Company Billing - Automatic Posting To Vendor Account (SAP-EDI)
Automatic posting to vendor account is done by EDI. In our case where both companiesare proccessed in the same system (& client), it is sufficient to create Idoc.This proccess requires several steps:1. Creating a Customer to represent the receiving Company.2. Creating a Vendor to represent the supplying company.3. Creating a Port4. Maintain an Output Type5. Creating a Logical Address6. Creating a Partner Profile for both Customer & Vendor7. The relevant MM customizing is maintained.8. The relevant FI customizing is maintained.
1. Creating a Customer to represent the receiving Company.The customer has already been created (XD01) for the purpose of Intercompanyprocessing and entered in the approperiate transction in customizing (Sales andDistribution Billing Intercompany Billing Define Internal Customer Number BySales Organization).
Note: The cutomer has been created in the supplying company code.The organizational data in this case is:Supplying Company Code: 1180Supplying Plant: 1180Supplying Sales Organization: 1180Supplying Distribution Channel: 01Supplying Division: 00Receiving Company Code: 3100Customer representing the receiving Company Code: P3100
2. Creating a Vendor to represent the supplying company.The Vendor is created with the standard transaction (XK01).Note: The Vendor is created in the receiving Company Code. The organizational data inthis case is the same as above.
Vendor representing the supplying Company Code: P1180NOTE: There is NO need to connect vendor to customer in the control screen.
3. Creating a PortTools Business Communication IDoc Basis Idoc Port Definition (T. Code WE21)Maintain Transactional RFC: (Choose Transactional RFC and press the create icon).A dialog box will open asking whether you want the system to generate an automaticname or whether you wish to use your own name.
Port name: Automatically generatedVersion: 4.xRFC destination: PLD (This was defined by the basis people).
4. Maintain output type Output Type RD04 - Invoice Receipt MM is a special function, responsible for the execution of the Idoc and will be entered in the Partner Profile later on.
Output type RD04 is maintained: Img: Sales and Distribution -> Basic functions -> Output control -> Output Determination -> Output Determination Using the Condition Technique -> Maintain Output Determination for Billing Documents Maintain Output Types (T. Code V/40).
Sales and Distribution -> Basic Functions -> Output Control -> Output Determination Output Determination Using the Condition Technique -> Maintain Output Determinationfor Billing Documents.
Assign Output Types To Partner Functions
Maintain Output Determination Procedure
Assign Output Determination Procedures
Master DataMaintain output Master DataLogistics -> Sales and Distribution -> Master Data -> Output -> (T. Code VV31)
5. Create Logical AddressImg: Sales and Distribution -> Billing Intercompany Billing -> Automatic Posting ToVendor Account (SAP-EDI) -> Assign vendor. (T. Code WEL1)
Logical address 1180P3100 is made of the supplying Company Code (1180) and thereceiving Customer (P3100).
Note: If the receiving Customer is a numeric number you must add zeros between theCompany code and Customer number so the Logical Address will be 14 digits.E.g if the customer number was 3100, than the logical address would have been11800000003100 as can be seen in the second line.(In our case the customer is an alpha numeric number so the second line was not necessary. It was created just for this documentation and was not saved)
The Logical address is completed when the receiving Company Code and the Vendor areentered in the detail screen.
It is also necessary to activate the account assignment.
IMG: Sales and Distribution -> Billing Intercompany Billing -> Automatic Posting ToVendor Account (SAP-EDI) -> Activate account assignment.
6. Creating a Partner Profile for both Customer & VendorTools Business Communication -> IDoc Basis -> Idoc -> Partner Profile (T. CodeWE20)
Customer:Put cursor on Partner type KU and press create.Enter typ, Agent & Lang,SAVE
Press in outbound paratrs. Section, to maintain detail screens The following screen will appear.
Enter the following data in the appropriate fields:Partn.funct. BPMessage type INVOICMessage Code FIReceiving port A000000001Basic Type INVOIC01
Press enter and the screen will change to the following: Enter PacketSize 1
Go to the Message Control tab press and enter the data as specified in the followingscreen.
You can repeat the process for cases where invoice verification is done against purchaseorder. in this case enter MM in message code field.
As you can see the only difference between the FI & MM invoice is in the message codeand output type.NOTE: You cannot use output type RD04 again therefore you must copy it incustomizing to another output type (in this case RD00)
VendorFollow the same procedures but maintain the inbound parameter Screen as follows:
7. FI CUSTOMIZINGFinancial Accounting Accounts Receivable and Accounts Payable BusinessTransactions -> Incoming Invoices/Credit Memos -> EDI -> Enter Program Parametersfor EDI Incoming Invoice (T. Code OBCE)
Make sure to maintain posting types, tax code and invoice doc.type. Use KR when not using purchase order & RE when using purchase order.
Assign Company Code for EDI Incoming Invoice
By leaving the field CoCD blank, all company codes are available.Assign G/L Accounts for EDI Procedures (T. Code OBCB)
P1180 = Vendor 3100 = Company Code of receiving company (of customer)
NOTE:G/L account should not be connected to CO. Assign Tax Codes for EDI Procedures (T.Code OBCD) It is necessary to match the output tax from the sales order to the input tax. Tax type = Output Tax Tx = Input Tax
Accounting -> Financial Accounting -> General Ledger -> Master Records -> IndividualProcessing -> Centrally (T.Code FS00)
G/L account no. = account number that was entered in transaction OBCB (page 24)Tax category must allow for input tax.
Make sure manual posting is allowed for the G/L account. (Create/Bank/Interestscreen).
TEXTIn many cases the G/L account has been configured so that text is mandatory. This couldbe either Header Text or Item Text.Header TextNo special configuration is necessary. Just enter text in the Header note. You may usethe following access sequence.
Item TextIt is necessary to implement a userexit in order to fill the item text field. Detailedinstructions are found in note 39503
8. MM Customizing:Make sure the Unit of Measures ISO Codes are configured correctly.General Settings Check units of measurement (T. Code CUNI)
Optional MM Customizing:NOTE: This is only necessary for logistics invoice verification.Materials Management Logistics Invoice Verification EDI Enter ProgramParameters
MonitoringThere are several transaction that allow you to monitor the IDoc. First you need to knowthe IDoc number. You can see the IDoc number in the processing log in the Headeroutput screen in the billing document.
You can use transaction WE02 or WE05. Enter the IDoc number in the selection screen. If you have an error in the IDoc, you could analyze it with transaction WE19
What is ALE?Application Link Enabling (ALE) is a set of business processes and tools that allow applications on different computer systems to be linked. This can be done between different SAP systems as well as between SAP and non-SAP systems. In a single SAP system different applications are integrated via a single database (e.g. finance, sales, production, human resources). However, many companies do not have just one integrated system but a distributed environment with different applications running on different systems. To run the whole business in such an environment, the distributed applications have to be linked. This can be done through Application Link Enabling (ALE). ALE provides distributed business processes that can be used to link the applications on different platforms. There are some ALE business processes delivered in the standard SAP system. Furthermore, there are tools that can be used to change the existing ALE business processes or to implement new distributed business processes. Besides the business processes, there are special ALE services that are required to set up and control a distributed environment. These services include a distribution model, business object synchronization, and tools for monitoring or error handling. ALE is a major part of SAP's Business Framework Architecture. Besides the basis middleware, that provides the communication between components, and the interfaces (BAPIs), ALE business processes and ALE services enable the cooperation of the single components within the framework. That makes ALE the glue of the Business Framework. What are the benefits of ALE?With ALE, companies get the opportunity to improve business performance and to solve organizational or technical issues by: Increasing Flexibility: Through distribution you can decentralize your business, enabling local units to operate independently from each other. This flexibility enables the local units to return better business results than in a centralized environment. They have the necessary flexibility to optimize business processes in different organizational units and can ensure that information systems can handle the speed of change in rapidly expanding markets. Distribution allows a high level of freedom, provided that this level of freedom has been clearly defined. On the other hand, some companies, that already have a distributed organization with different computer systems in the local units, have the opportunity to link their units through ALE business processes. This enables them for example to provide a 'one face to the customer' approach. Another area that can benefit through ALE are virtual organizations (partnerships between independent companies, joint ventures and mergers and acquisitions). Of course, in many cases an integrated solution based on a single system is not possible at all. Some applications used by a company cannot run on the same computer system. This includes legacy systems or complementary software. It may also be possible that a company uses different SAP industry solutions or specific country solutions, which do not run on the same SAP System. If these applications run on different systems, they cannot be linked by a central database but have to use a special integration mechanism like ALE. In this way, ALE also links SAP Core Systems to other SAP components like CRM, Business Information Warehouse or APO. Reducing Costs: Besides the benefits of having an improved flexibility in setting up the whole business processes, ALE may also reduce costs, in particular costs of upgrading. If the whole business is run on one integrated system you have to upgrade the whole system, even if only one part of your company (e.g. human resources) requires an update. So the entire company is affected by the upgrade project and all users have to be trained for the new release. Within a distributed environment with release independent interfaces, like those provided by ALE, you can focus the upgrade project on that part of the company that has to be upgraded. The other parts of the company are not involved and need no training. This can save a lot of money. Furthermore, existing investments are protected. Another cost factor for distribution might be communication costs. For an overseas connection, it can be more expensive to provide online access to one central system (T1) than to connect distributed systems to each other (64K line). Increasing Security and High Availablity: There might also be some technical reasons for distributed systems. If some parts of the business have special requirements for security of data access (e.g. human resources), this can be set up much safer on a standalone system, which is, however, linked to other parts of the company through distributed business processes. A similar example is high availability. High availability is usually required by the operations part of the company (production, logistics), but not by other areas (e.g. financials, human resources). In a distributed environment high availability can be set up for specific parts of the environment instead of for the whole business. This can also reduce costs. In a distributed environment, you can not decrease the overall workload of the systems but you can separate the user workloads on different systems. Through this scalability you can improve performance. Another benefit of distributed systems is that if a technical failure occurs on one system, all other systems continue to operate. Only a small part of the business is disrupted by the error. On one central system such an error would disrupt the entire business. When should ALE be used?Besides the benefits of ALE there are also reasons not to distribute: The functional scope in a distributed environment is restricted. Not all functionality that is available in an integrated SAP system can be used with distributed systems in the standard yet. Although ALE provides tools to create new ALE business processes or to enhance existing business processes, this does involve additional expenditure. Each company needs some organizational standards and data harmonization. In a distributed environment, less standards are required than on a single integrated system. However, in a distributed environment the maintenance of the standards and the data harmonization is more difficult than on a single system. The administration of decentralized systems is more expensive. Support and service costs for hardware and software in decentralized systems are higher than these costs in a single centralized system. ALE should be used in a company if the benefits of ALE for this company outweigh the reasons against distribution. For this you always need to carry out a company specific investigation, in which you also should consider the culture of the company. ALE is good for some companies, but not for all. What is the relationship between ALE and Middleware?There are many such messages, the most common of these include a customer sending a purchase order message to a vendor, or a vendor sending an invoice message to a customer. Classic EDI is mainly restricted on the exchange of transactional data, no master data or configuration data. In most cases, EDI replaces the transfer of paper copies of these documents. Via the messages ALE business processes can be implemented between business partners. The EDI messages also use the ALE services. For the communication between different types of systems special EDI messages are defined as standards for inter company communication. There are many standards for these messages - in the United States, the ANSI X.12 standard is the most prevalent, in Europe, the UN/EDIFACT standard is used. For sending EDI messages the information has to be converted into an EDI standard. With SAP systems this is done by EDI subsystems. This conversion is the only difference between EDI messages and other messages used in ALE business processes. The processing of these messages on the SAP System is the same as the processing of other ALE messages. Which ALE business processes are available?ALE business processes are integrated business processes that run across distributed systems. This can be two different SAP systems, links between SAP and non-SAP systems, SAP and Web-servers (Internet Application Components) or SAP and desktop applications. The links between the systems may be loosely (asynchronous) or tightly (synchronous) coupled. These business processes are release-independent and can run between different release levels of the systems. Many SAP applications offer ALE distribution processes, for example Master Data Replication, Accounting, Logistics and Human Resources. When should synchronous or asynchronous links be used?When distributed applications are linked by ALE business processes, the question often arises as to how tight the link should be. Synchronous and asynchronous links have both advantages and disadvantages: Synchronous links have the advantage that the sub-process on the server can return values to the sub-process on the client that has started the link. Problems with synchronous links occur if the communication line or the server is temporarily not available. If this happens, the sub-process on the client can not be finished (otherwise there would be data inconsistencies). (Example: There is a logistics system and a financial system. Every stock movement in logistics has to be posted in the general ledger of the financial system. If the link between logistics and finance is synchronous, no stock movement can be recorded in the logistics system if the communication line to the financial system is down.) Because of this, synchronous links are usually used if the client only wants to get some data from the server and the sub-processes on the server do not have to write any data to the database. With asynchronous links the sub-process on the client can be finished even if the communication line or the server is not available. In this case the message is stored in the database and the communication can be done later. The disadvantage of asynchronous links is that the sub-process on the server can not return information to the calling sub-process on the client. A special way for sending information back to the client is required. In addition, a special error handling mechanism is required to handle errors on the receiving side. Asynchronous links are used if a synchronous link is not applicable. For the problems with sending return information to the client and with error handling there is some support from the ALE services. Why does SAP use ALE instead of database replication or distributed databases?Database replication is another possibility for doing business object synchronization. However, there are some major disadvantages with database replication. At the moment database replication is database dependent and release-dependent within one database. This makes database replication impossible for the use with non-SAP systems and even for the replication between SAP systems, you have to make sure that all systems are running on the same SAP release and the same database release of a single database vendor. Furthermore, with database replication you cannot do things like field conversions or version changes. ALE does not have these shortcomings because it offers application driven data replication independent of the underlying database. Another technology, distributed databases, is no alternative for ALE at the moment, either. There are some good results of distributed databases available, but the performance is far from sufficient for using it with larger applications like SAP. How can I serialize IDoc processing?There are various procedures for processing IDocs in a serialized way, that is to process them or transfer them to the application in a certain sequence. Depending on your respective requirements, one of the methods proposed in note 752194 may be suitable for the required purpose.
ALE IDOCCheat sheetPosted by sapmm on April 16, 2009Here is the complete list of all the transaction codes you need to know for ALE & IDOCS. keep it handy, always useful Main Transaction CodesMain MenusWEDI EDI Related ActivitiesBALE ALE Related ActivitiesSWLD Workflow Related ActivitiesSALE ALE ConfigurationNACE Message Control ConfigurationIDOC DefinitionSE11 Data DictionaryWE30 IDoc type editorWE31 Segment editorBD53 Reduction of IDoc typesWE60 Documentation for IDoc typesWE61 Documentation for IDoc record typesIDOC MonitoringWE02 IDoc displayWE05 IDoc ListsWE06 Active IDoc monitoringWE07 IDoc statisticsConfiguration(ALE and EDI)BD54 Maintain logical systemsBD64 Maintain distribution modelBD71 Distribute Customer ModelBD82 Generate partner profilesFILE Logical File PathsPFTC Task DefinitionPPOC Maintain Organization StructureSM59 Maintain RFC DestinationsSWE2 Event LinkageSWU3 Basic Workflow SettingsWE20 Partner profilesWE21 Port definitionRun Time WorkflowSO01 SAP InboxSWEL Event LogSWI1 Workflow LogSWI2 Work Item AnalysisSWI5 Workload AnalysisMessage ControlNACE Condition Record MaintenanceVOK2 SD Message Control ComponentsVOK3 Purchasing message Control ComponentsVOFM View Message RequirementsV/86 Condition Table Field CatalogWE15 IDoc test: Outbound from MCTestingWE19 Test toolWE12 IDoc test: Inb. Procg of Outb. FileWE16 IDoc test: Inbound FileWE17 IDoc test: Inbound status reportReprocessing IDOCSBD87 Process inbound IDocsBD88 Process outbound IDocsSystem MonitoringSM12 Locked EntriesSM13 Update MonitoringSM21 System Log DisplaySM58 Transactional RFC LogSM66 Debug Async Update TasksST22 Dump AnalysisOther Relevant Transaction CodesAL05 Monitor current workloadAL11 Display SAP DirectoriesAL18 Local File System MonitorAL19 Remote File System MonitorAL21 ABAP Program analysisALO1 Data Relationship BrowserANA_VAR Table Analysis: Analysis VariantsBA10 Subsystem Config.BA11 Channel Definition for TransceiverBD10 Send MaterialBD100 IDoc display object channel viewBD101 Consistency checkBD102 Outbound registryBD103 Inbound registryBD104 maintain tbd53BD105 maintain tbd54BD11 Fetch MaterialBD12 Send customerBD13 Open customerBD14 Send vendorBD15 Open vendorBD16 Send Cost CenterBD17 Get Cost CenterBD18 Send General Ledger AccountBD19 Get General Ledger AccountBD20 IDoc passed to applicationBD21 Select change pointerBD22 Delete change pointersBD23 Delete serialization dataBD24 Send Cost ElementsBD25 Send Activity TypeBD26 Get Activity TypeBD27 Send cost center activity pricesBD28 Send obj/cost element control dataBD30 Distribute material object listBD31 Distribute document object listBD32 Distribute plant allocations(matBOM)BD40 Read change pointer for groupBD41 Dispatch IDocs for groupBD42 Check IDocs for groupBD43 Post IDocs for groupBD44 Assign message types to ser. groupBD47 Dependencies between methodsBD48 Dependency method messageBD50 Activ. change pointer for mess.typeBD51 Maintain function modules (inbound)BD52 Activ.change pointer per chng.doc.itBD53 Reduction of IDoc typesBD55 Maintain IDoc conversionBD56 Maintain IDoc segment filteringBD57 Maintain link and serialization ty.BD58 Convert Org. unitsBD59 Allocation object type -> IDoc typeBD60 Additional data for message typeBD61 Activate change pointerBD62 Define segment conversion ruleBD63 Transport ALE tables to message typeBD65 Maintain IDoc type required fieldsBD66 IDoc type field -> change doc.fieldBD67 Maintain input methodsBD68 Maintain listsBD69 Assign message type to IDocBD70 Adjust number rangesBD72 Activate eventsBD73 Reposting of IDocs (ALE)BD75 Convert IDoc statusBD76 Model upload/download monitoringBD77 Distribution of control dataBD78 Monitoring control data distributionBD79 Maintain IDoc conversion rulesBD80 Conversion pre-production/productionBD81 Filter objects parameter filteringBD83 Send IDocs after an ALE errorBD84 Post IDocs after ALE errorBD85 Consistency check for transferBD86 Consistency check for salesBD89 Control data model. initial screenBD90 Start DA-OUBD91 Send characteristicBD92 Send classBD93 Send classificationBD94 OA file transferBD95 Specify ALE object typesBD96 filter objects of receiver determin.BD97 Assign RFC dest. to logical systemsBD98 ALE consistency check activeBD99 Message type dependenciesBDA1 Call RSARFCEXBDA4 Specify ALE object typesBDA5 Distribute documentsBDBG Generate ALE interface (BAPI)BDBP Hierarchy maintenance of BAPI param.BDBS Generate coding for mappingBDCP Number range maintenance: ALE_CPBDLS Mapping Logical System NamesBDM2 Monitoring: IDocs with receiverBDM5 Consistency checkBDM6 Monitor: Check input workflowBDM7 ALE Audit: statistical analysesBDM8 ALE Audit: Sending the confirmationsBDM9 Reorganizing the audit databaseBDMC Upload info structuresBDR1 Display application log for recoveryBDR2 Reorganization of recovery dataBDRC ALE: Determine recovery objectsBDRL ALE: Process recovery objectsOE2C Process Code InboundOYE0 EDI: Maintain Port Def. arfcOYE3 Display EDI PortsOYE4 Display ALE PortsOYED Maintain Port DefinitionsOE3C System Process CodeOE1C Process Code (OutB)OYEL Display EDP21 (InB Partner Profile)OYEX Create EDP21 (InB Partner Profile Overview)OYEH Display EDP12 (Msg Control)OYER Create EDP12 (Msg Control Overview)OYEI Display EDP13 (OutB Partner Profile)OYEU Create EDP13 (OutB Partner Profile overview)OYSM Number Range Port DefinitionOYSN Number Range For IDOCSOYSO Number Range IDOC TypesWE08 EDI: File Processing Status (EDFI2)WE09 IDoc lists enhancedWE10 IDoc lists enhancedWE14 IDoc test: Outb. from IDocWE30 IDoc type editorWE32 View editorWE33 Value tables for IDoc documentationWE40 System process codesWE41 Process codes, outboundWE42 Process codes, inboundWE43 Funct.module: Status record displayWE44 Partner Types and selection reportsWE45 Forward (inbound) (V3, EDILOGADR)WE46 IDoc administrationWE47 Status MaintenanceWE48 Inbound process codes: TextsWE49 Inbound process codes: Change textsWE50 System process codes: TextsWE51 System process codes: Change textsWE52 Outbound process codes: TextsWE53 Outbound process codes: Change textsWE54 FMs for changing file namesWE55 FMs for path namesWE56 Status process codesWE57 Messages and application objectsWE58 Status process codes: TextsWE59 Change status process codesWE62 Documentation for segmentsWE63 Parser for IDoc types and rec.typesWE70 Conversion: Basic typesWE71 Conversion: ExtensionsWE72 Conversion: IDoc typesWE73 Conversion: Logical messagesWE80 IDoc types: OverviewWE81 Logical message typesWE82 Assignment IDoc type MessageWE83 Extensions: Overview (EDCIM)WE84 Assignment of IDoc and appl. fieldsWECP Display CPIC interface status (R/2)WEL0 Forward (inbound) (EDILOGADR)WEL1 EDI: Interface Invoice for EDILOGADRWENA Messages on basis of changesWorkFlow ConfigurationOOAW & SWLV Subordinate And Peer DefinitionPFAC Standard RolesPO13 Maintain SubstitutesSWO1 Business Object BuilderIf you like this post, you may as well like these too: 1. How to Populate extended IDOC File segments? Once you extend the IDOC, it is an enhancemnet of the standard IDOC. Write some coding in the USER-EXIT for each outbound/inbound message. Go to CMOD and search for 2. Archieving IDOC Nice article from a guy in Infosys showing the clear steps on archeiving IDOC. Here is the link to sdn. Download the Archieving IDOC(PDF File) from sapdb. 3. IDOC Creation (Step by Step) This Idoc Creation Procedure (Step by step Guide) will teach you with all the instructions on creation of Inbound and Outbound IDOC with screen shots for better understanding. 4. ALE Configuration To develop and configure a new custom ALE scenario, comprises 5 steps: 1. Design and develop the custom IDoc with it s segments and a new message type 2. 5. Learn ALE Implementation and IDOC creation in Simple Steps Here is a nice little article giving you simple steps as to how to Implement ALE and to create IDOC. ALE Implementation Guide and IDOC Creation Thanks to Menon