Installation order and dependencies of Essbase Products

Hi Experts,
I am soon to start a fresh EPM Installation on SUN SOLARIS SPARC. Just wanted to know the Installation order and dependencies on each services. The Instllation would be a Websphere based on 64 bit SUN SOL OS with 11.1.3.
the following are the essbase production which i have to Install.
Essbase Analytical services
Essbase Administration Services
Essbase Shared services
Application Provider services ( for Smart View ).
at present i am going thru the Read me Installation docs for all products, Would be great if you can give me a quick order of Installation so i can concentracte accordingly.
any quick reference DOC will also help
Cheers
MS

The installation order is not so important as the installer should install the components correctly, just install the products you want to on each machine.
When configuring you would configure shared services registry and shared services first.
It is worth reading through the install and config doc http://docs.oracle.com/cd/E12825_01/epm.111/epm_install_11114/launch.html
Installation sequence http://docs.oracle.com/cd/E12825_01/epm.111/epm_install_11114/ch03s01.html
"EPM System Installer enables you to install, configure, and deploy multiple products on a machine at one time. EPM System Installer installs components in the correct order, so you can select as many products as you want to install on a machine at one time"
Configuration Sequence - http://docs.oracle.com/cd/E12825_01/epm.111/epm_install_11114/ch04s03.html
Cheers
John
http://john-goodwin.blogspot.com/

Similar Messages

  • I operate a windows 8,  62 bit computer.  I have ordered and downloaded the following product for AU$129 Adobe Photoshop Elements 13 (Windows,English) on the understanding that it would convert PD files to word.  It is not doing so. Is this a wrong order?

    I operate a windows 8,  62 bit computer.  I have ordered and downloaded the following product for AU$129 Adobe Photoshop Elements 13 (Windows,English) on the understanding that it would convert PD files to word.  It is not doing so. Is this a wrong order?

    if you're trying to convert pdf files to word files, you want acrobat pro or acrobat standard, Buying guide | Adobe Acrobat XI Standard
    http://helpx.adobe.com/x-productkb/policy-pricing/return-cancel-or-change-order.html
    http://helpx.adobe.com/x-productkb/global/phone-support-orders.html

  • Installation order for Hyperion 11.1 products

    Can anyone please tell me what is the sequence of the installation for 11.1 products. We are moving out of 9.3.1 due to various patches and issues. Thanks in advance.

    Hi,
    The new EPM installer is meant to install products in the correct order (http://download.oracle.com/docs/cd/E12825_01/epm.111/epm_install/frameset.htm?ch02s02.html), I know there a few issues with the installer though.
    You can also mix and match some 11.1 and 9.3.1 products though I must admit I have not tried it yet.
    I would have a look at http://download.oracle.com/docs/cd/E12825_01/nav/portal_1.htm
    - Oracle Hyperion Enterprise Performance Management System Installation Start Here
    - Oracle Hyperion Enterprise Performance Management System Installation and Configuration Guide
    I would also have a look through some of the readmes for known issues and certainly do some testing on 11.1 before you switch over to it.
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • MRP Generated production orders greys out Sales Order and Customer fields

    Hi there,
    The MRP generated production orders greys out the Sales Order and Customer fields for some reasons. These fields are really important as they link the production order to the sales order and the customer's purchase order. Could the SAP team please fix this or advise alternative way of getting the sales order and customer info on production order? Thanks.

    Hello
    MRP only poulated this fields in case the material master has been set up with a strategy group hich is make to order (normally 20). Otherwise MRP summarizes all the requirements from different Customer orders and creates a production order
    Stephan

  • MAKE TO ORDER AND VARAINT CONFIGURATION

    Hi firends,
    What is the difference between MAKE TO ORDER and  VARAINT CONFIGURATION   PROCESS, in which scenarios we are using both topics. Can any one explain about steps for make to order and variant configuration. i need complete process.

    PLS REFER LIN BELOW
    Make-to-Order (MTO)
    Purpose
    The planning strategies explained in this section are designed for the production of a material for a specific individual sales order. In other words, you do not want to produce finished products until you receive a sales order. This means that make-to-order strategies always support a very close customer-vendor relationship, because your sales orders are closely linked to production.
    The same relationship exists between the sales order and production that exists in a make-to-order environment. Make-to-order is also used in the following environments.
    Production using variant configuration
    Assemble-to-order
    Prerequisites
    Choose a make-to-order strategy, if:
    The materials are segregated. In other words, they are uniquely assigned to specific sales orders.
    Costs must be tracked at sales order level and not on material level.
    Make-to-order strategies should always be combined with lot-size key EX (lot-for-lot. Rounding values should not be used. If you maintain rounding values, they have no effect due to the make-to-order properties of these strategies.
    Process Flow
    There are extensive options that enable you to procure components especially for specific sales order items.
    You may, however, want to use a different planning strategy to procure components without sales orders. This allows you to keep your replenishment lead time to a minimum. You can do this by:
    Planning on the basis of the finished product (see Planning Without Final Assembly (50) or Planning with a Planning Material (60))
    Planning at component level (see Strategies for Planning Components)
    Using consumption-based or Kanban-controlled components
    Customer stock can exist on any BOM level. See Stockkeeping at Different BOM Levels for more information.
    Because production is closely linked to sales orders, this results in a customer section in the stock/requirements list.
    Unplanned goods receipts (such as returns) cannot, as a rule, be used for other sales orders, even if they are in working order, unless they are adapted to meet a customer's needs.
    In the basic make-to-order strategy, Make-to-Order Production (20), no specific product structures are required. This means that it does not matter if the material has a BOM or not. The material can be produced in-house, or it can be procured externally. No planning is involved in this strategy.
    Planning Without Final Assembly (50) and Planning with a Planning Material (60) do require a specific product structure (i.e. a BOM, which means materials are always produced in-house). These planning strategies assume that you want to plan procurement (production or purchasing) of your components by planning the finished products. This means that you need to have a fairly stable demand for your finished products. If, however, you can plan more easily at component level than at finished product level, see Strategies for Planning Components.
    Make to order production
    1. Make to order production means that the materials (finished products) are not stored in the warehouse but produced especially for a particular sales order or a sales order item. An individual customer requirement is generated from the sales order item and transferred to materials planning (MM/PP). You can use materials planning to plan requirements. Once this has been done, production is carried out. After the product has been manufactured, you post it by goods receipt to sales orders stock specifically for this sales order item. As soon as the delivery is due, you can enter the delivery in SD and post goods issue which reduces the sales order stock and then a billing document can be entered.
    2. The item category in the sales document is found using the sale document type and the item category group from the material master found on the tab page sales org 2 i.e.
    a. sales document type – OR
    b. item category group – 0001
    c. item category - TAK
    3. MTO without assembly processing – the requirement quantity (planned independent requirements), delivery date and configuration specifications are transferred from the sales order to materials planning as an individual customer requirement. A planned order is generated using a planning run where the bills of material are exploded and dependant requirements (i.e. multi-level BOM) for the assemblies and components are generated. As soon as the production starts, a production order is created from the planned order. The system returns the confirmed quantity and delivery date from the production order to the sales order.
    4. MTO with assembly processing – in this case the individual components for the final product have already been produced. You only need to assemble the components according to the customer’s wishes. In this process, you only need a one level BOM and generation of dependent requirements is not necessary. In this case no planning run is generated and a production order is created directly from the sales order. The system returns the confirmed quantity and the delivery date from the production order to the schedule lines in the sales order. Any changes made to the confirmed schedule lines or the delivery date is immediately visible in the sales order and/or in the production order.
    5. After production department has finished making the material, goods receipt is posted in the sales order stock i.e. special stock which can only be used for a specific sales order. After posting goods issue for outbound delivery, the sales order stock is reduced accordingly.
    6. Make-to-order production is a process in which a product is individually manufactured for a particular customer. In contrast to mass production for an unspecified market where a material is manufactured many times, in make-to-order production a material is created only once though the same or a similar production process might be repeated at a later time.
    7. You can use make-to-order production: (a) For branches of industry or products where a small quantity of products with a large number of different characteristics are manufactured (b) When a product has to be assembled particularly for a sales order.
    8. Stock keeping is not usually carried out for products that are made to order. In companies using make-to-order production, the demand program only determines the production area, in which various variant types are produced. Depending on how you track the costs associated with make-to-order production, there are two ways to process make-to-order items during sales order processing.
    (a) Make to order using sales order
    (b) Make to order using project system (not relevant for SD application)
    9. for make to order production using the sales order, all costs and revenues involved for an order item are held collectively at that item. A particular rule is used that can be changed manually to transfer costs to profitability analysis.
    10. make to order production is largely a production planning configuration. It is also controlled by the requirements type, which is determined by three things
    the strategy group (MRP 3) in MMR
    the MRP group (MRP1) in MMR
    the item category and MRP type (MRP 1)
    11. Make-to-order production is controlled by the requirements type. The requirements type is determined on the basis of the MRP group (MRP1) and the strategy group (MRP3) in the material master record. In addition, a plant must be assigned for make-to-order items in the sales order.
    VARIENT CONFIGURATION
    Variant configuration is for manufacturing complex products in which customer determines the features of the product. Objective of variant configuration is to react quickly to customers' requirements.
    Here it needs not to create separate material for each variant of a product. When companies introduce variant configuration this often goes beyond a business process re-engineering project.
    1 Variant configuration offers an opportunity to restructure product structures for which then processes are defined. This has a direct impact to the core areas such as marketing and product data management.
    2 Advantages of VC
    · No need to Create separate material master for each variant combination.
    · Super BOM and Super Routing is enough for representing all possible Variants and Operations.
    · Able to react more flexible to customer demands.
    · Increase Information exchange between sales, engineering and production.
    3 What is Configurable Material?
    · A material with different features or characteristics and options is known as configurable material. Example: PC, Car.
    · Configurable materials are either created in a material type that allows the configuration (n the standard system, the material type KMAT) or they are given the indicator Configurable in the material master record.
    4 Master Data used for VC
    Following Objects are used as Master data for Variant configuration.
    1. Super BOM
    2. Super Routing
    3. Characteristic
    4. Class
    5. Object Dependencies
    6. Configuration Profile
    7. SD Condition records
    4.1 Super BOM
    Super BOM Contains all the components for producing configurable product. It contains both variant as well as non-variant parts required for producing configurable product.
    4.1.1 Super BOM configuration
    Super BOM can be created either one of the following methods.
    · Create BOM with class Item of 200-class type that contains all characteristic of a configurable material.
    · Create BOM with all possible materials as its components. Then assign /define dependencies to each component.
    The different between these two methods is
    · BOM with class item, no need to assign or define object dependencies. Instead of that each material is classified in material master itself using class 200.
    · For both cases all characteristics are assigned to class 300 which is again assigned to KMAT material in order to trigger configuration in configuration profile.
    4.1.2 Super BOM with Class Item
    Class items used to control the selection of variant parts in a BOM. Variant parts are classified in a class, and the class is entered in the BOM as a class item. When you configure the material, the class is replaced by a suitable variant part.
    4.1.3 Advantages of using Class Item in BOM
    · Only one item for the class is enough, instead of several items for the individual variant parts.
    · No need to create and assign selection conditions.
    · Able to classify additional objects in the class at any time, without having to change the BOM.
    4.1.4 Steps involved in super BOM with Class
    – Define all Characteristics and its Values assign it to Class with type 200.
    – Assign characteristic Values to materials by Classification material
    – Assign class 200 with material instead of assigning all BOM items.
    – Create and Assign class 300 (with same characteristics) with configurable product using configuration profile.
    4.1.5 Super BOM with Material Components
    This bill of material (BOM) of a configurable material contains all the components that are required to manufacture the material. The BOM contains components that are only used in specific variants (variant parts), as well as components that are used in all variants (non-variable parts).
    4.1.6 Steps involved in super BOM with Material Components
    – Define all Characteristics and its values assign it to Class with type 300.
    – Assign Class with configurable material in Configuration profile.
    – BOM is created with all variant and non-variant items.
    – Define interdependency between objects (Characteristic, BOM item, Routing Operation etc…) by using Object Dependencies.
    – Assign class 300 with configurable product using configuration profile.
    4.2 Super Routing
    A configurable routing describes the production process for all variants of a product. Instead of creating a routing for each variant of a product, you can create operations for one routing, or a "super" routing.
    It is possible to maintain Object dependencies for following in super routing:
    · Sequences
    · Operations/sub-operations
    · Production resource/tool assignments
    The routing is configured by system, when order is created for KMAT material.
    4.3 Characteristic
    Characteristic is used to define the features of a configurable material. To enable to use characteristics to configure a material, assign the material to a class of class type 300. The customer can choose from among different options for each characteristic.
    · Characteristics describe the properties of objects. The values of a characteristic specify these properties.
    · Value assignment to characteristic may be single value or multiple value with required entry or restrict able entry.
    · In characteristic it is also possible to use table name and its field name in order to change the Object quantity or values. I.e. BOM item quantity or Operation time, which is known as ‘reference characteristic’.
    · In Restriction screen allowed Class types are entered i.e. for what are the class this characteristic may used. In general for Variant configuration class 200 and 300 are used.
    · It is also possible to assign Dependency to characteristic values maintained in Characteristic.
    4.4 Variant Class
    · In Variant configuration, Class is used to hold the characteristics that describe about configurable material. Class type to determine which object types can be classified.
    · Class is used in variant configuration if the class has a class type that supports variant configuration. In Customizing for Classification, the Variant class type indicator must be set for the class type. In the standard system, this is class type 300.
    4.5 Dependencies
    · Dependencies restricts the combinations of options i.e. characteristic that are not allowed. It also select exactly the right BOM components and operations to produce a variant.
    · It also describe the interdependencies between characteristics and characteristic values
    · It control which components are selected from a bill of material (BOM) and which operations are selected from a task list
    · It also changes the values of fields in BOM items and operations during configuration.
    4.5.1 Global and Local Dependencies
    Global dependencies have the following properties:
    · They are independent of any object.
    · They are identified by a name that you assign, and are maintained and managed centrally.
    · If you change a global dependency, the change affects all the objects where the dependency is used
    Local dependencies have the following properties:
    · They are only available to the object for which you create them
    · You cannot use the central maintenance functions on these dependencies, and you cannot allocate them to other objects
    · They are identified by a number assigned by the system, not an external name
    Local dependencies are only used where certain dependency will not be needed elsewhere
    The differences between global and local dependencies are as follows:
    · Global dependencies are created centrally and can be assigned to several objects.
    · Local dependencies are created for one object and can only be used with this object
    4.5.2 Declarative and Procedural Dependency
    · In Declarative dependencies the result are explained logically
    · Declarative dependencies are easier to trace than procedural dependencies, because the point in time when the dependency is processed and the sequence in which the dependencies are processed are not relevant.
    · Example for Declarative dependency:
    - Constraint
    - Actions
    - Preconditions (provided that they contain no non-declarative expressions)
    - Selection conditions (provided that they contain no non-declarative expressions)
    · In Procedural Dependency result depends on the processing sequence and the point in time when the dependency is processed.
    - Procedures
    - Preconditions (only if they contain non-declarative expressions)
    - Selection conditions (only if they contain non-declarative expressions)
    4.5.3 Dependencies Types
    The SAP System supports the following types of dependencies:
    · Preconditions
    · Selection conditions
    · Procedures
    · Actions (obsolete)
    · Constraints
    4.5.4 Preconditions
    Preconditions can be allocated to the following objects:
    · A characteristic that you want to hide
    · A characteristic value that you want to hide
    Preconditions are used to hide characteristics and characteristic values that are not allowed and thereby ensure that the configuration of an object is consistent. In the precondition, it is also possible define the circumstances under which a characteristic or value is hidden.
    A precondition is fulfilled if the condition you enter is either true or not violated.
    4.5.5 Selection Conditions
    Selection conditions used to ensure that all the objects relevant to a variant are selected:
    · Selection conditions determine which variants require a specific component or operation
    · Selection conditions determine when it is mandatory to assign a value to a characteristic
    Selection conditions may allocate to the following objects:
    · Characteristics
    · BOM items
    · Operations in task lists
    · Sub-operations
    · Sequences of operations
    · Production resources/tools (PRTs)
    A selection condition is fulfilled if the condition in it is unambiguously true.
    4.5.6 Procedure
    Procedures can be assigned to the following objects:
    · The characteristic value that triggers the procedure
    · The characteristic that triggers the procedure
    · The configuration profile of the configurable object
    Procedure is used for following purposes.
    · A procedure is used to infer a value for a characteristic, you enter the variable $SELF before the characteristic.
    · Procedures can overwrite values that are set by other procedures.
    · Procedures are always used for pricing (see Variant Conditions).
    Processing Sequences of Procedure
    If an object has more than one procedure, a processing sequence is used to define the point when the procedure is processed.
    4.5.7 Action
    Actions are used to infer characteristic values. An action is processed as soon as the characteristic to which it is assigned has a value. It is not possible to overwrite the characteristic values that are set by an action.
    The following Objects can assign to action:
    · The characteristic value that triggers the action
    · The characteristic that triggers the action
    · The configuration profile of the configurable object
    · Configuration profile
    · BOM items – to change the quantity
    · Operations in task lists – to change the standard values
    Since Action is lead to serious system performance problems, it is replaced by Procedure and Constraint.
    4.5.8 Constraint
    This dependency type is mainly for intensively interactive configuration tasks and for configuration tasks in which you need to take into account the dependencies between the characteristics of several objects. The main purpose of a constraint is to monitor the consistency of a configuration.
    Constraints have the following distinguishing features:
    · Constraints are used to describe the dependencies between completely different objects and their characteristics.
    · Constraints are used to store information on which conditions must be fulfilled if the configuration is to be consistent.
    · Constraints are not directly allocated to individual objects. They are grouped together to form dependency nets and allocated to a configurable material in the configuration profile.
    · In constraints, you enter objects in their general form of expression, without using $SELF, $ROOT, or $PARENT to identify objects. As a rule, you refer to objects in constraints by entering the class to which the objects are allocated.
    · Constraints are declarative dependencies. The processing sequence of constraints and the point in time when constraints are processed is not relevant.
    · Constraints are not processed in a specific order. You cannot determine when a specific constraint is used.
    In any processing situation, a constraint is only processed once. If a value that is relevant to the constraint is changed, the constraint is triggered again.
    4.5.8.1 Structure of Constraints
    There are four sections in a constraint. Each part is identified by a keyword. A colon follows the keyword. Each section ends with a period.
    OBJECTS:
    In this section, you enter the objects that are relevant to the constraint. You must enter the relevant objects in all constraints. You can also define variables for objects or characteristics.
    CONDITION:
    The condition entered here must be fulfilled in order for the constraint to be used. You do not need to enter a condition in a constraint. You can leave out the keyword CONDITION: if required. However, if you enter the keyword you must enter a condition.
    RESTRICTIONS:
    In this section, you enter the relation that must exist between the objects and characteristics if the configuration is to be consistent. You must enter a restriction in a constraint.
    INFERENCES:
    In this section, you enter the characteristics for which characteristic values are to be inferred. The main purpose of constraints is to check the consistency of a configuration. Usually, values are only inferred if you make an entry in this section.
    For reasons of performance, only use constraints to infer values if it is really necessary. Constraints are grouped together to form dependency nets. The dependency net is allocated to a configurable material in the configuration profile.
    4.5.9 Dependency Net:
    Constraints are grouped together in dependency nets. For this reason, the variant configuration menu does not support a function for creating constraints directly. So that only constraints are defined within a dependency net.
    5 Configuration Profile
    The configuration profile for a material controls the configuration process in sales order. Configurable profile also used to define central settings for configuring the object. Using this profile it is possible to hide some of the characteristic value defined during characteristic creation. We can assign any number profile for a configurable material in which selection is based on either priority or manual selection during configuration.
    By defining a filter in the configuration profile, possible to determine the scope of the BOM items to improve system performance when exploding the BOM. The filter is active in high-level configuration, in result-oriented BOMs, and in SET processing.
    5.1 Filters in Configurable Profile
    Following objects can be used as filter:
    · Object type
    Class, material, document, text
    In the standard system, all object types are selected and therefore exploded in the configuration. Deselect the object types that you do not want to be displayed.
    · Item category, for example, stock or non-stock item
    All item categories in the configuration are exploded in the standard system. Remove the selection for the item categories you do not want to be displayed.
    · Item status
    You maintain the status of a BOM item in maintain BOM dependent on its usage.
    All items are displayed regardless of their item status in the standard system. However, only the items with this status are displayed when you select specific item statuses. Items are not displayed that do not have the selected status.
    · Sort string
    You can assign sort strings for BOM items in maintain BOM. You can restrict the display of the BOM items by using these sort strings.
    Only items that carry sort strings are checked and only those that match are displayed. Items that have no sort string are always displayed.
    5.2 Component availability in the configuration profile
    The availability check is just a snapshot, telling that whether the materials required are in stock at this moment. Several users can access the same material at once. This means that supply problems can sometimes be overlooked.
    Example: Only 2 pieces of a material are in stock, but the material is used in 3 BOMs. The availability check does not detect a supply problem. The availability check for all 3 BOMs shows 2 pieces in stock.
    5.3 Process Overview
    There are different processes for configurable materials in sales documents. These processes can be defined on the Configuration initial screen tab in the configuration profile, by choosing the Configuration parameter tab.
    The Process are described in the following scenarios:
    Planned/Production orders
    This processing type is used to describe variant products whose configurable materials are assembled using planned and production orders. The bill of material (BOM) can have single-level, multi-level, or no explosion.
    Sales Order (SET)
    This processing type is used to describe variant products that comprise salable configurable materials. These products are supplied together, but are not assembled in a production order. Only sales-relevant BOM items are exploded in the sales order.
    Order BOM.
    You use this processing type if you want to make customer-specific changes to the BOM of a material that you configure in the sales order. In the sales order, you assign values to the characteristics of the header material, but the BOM is not exploded in the sales order.
    6 Material Variant and Planning Material
    6.1 Material Variant
    · Material Variant is an material that can arises from individual Configuration of a configurable product and can be kept in stock
    · For variants that are required frequently, we can create material variants, which can be produced without a sales order and kept in stock. When a sales order is received, it is possible to check whether the variant required is in stock, so that it can deliver immediately.
    · For material variants, a separate material master record is created with a material type that is kept in stock.
    · Separate BOM and routing for a material variant, or you can link the material variant to the BOM and routing of the configurable material. The correct BOM items and operations are determined from the characteristic values assigned to the variant.
    6.2 Planning Material
    · Planning Material is a material, which contains all the non-variant parts.
    · By using planning material all non-variants are procured / produced before sales order.
    · It is also possible for Planing the Planning Materials without reference to any sales requirement.
    · Planning material is planned separately using strategy 65 and produced before sales order creation.
    7 Planing in VC
    The following strategies are used for planning configurable materials and its variant parts.
    Make to Order production of Variants
    – Make to Order for Material Variant. - 26
    – Planning Variants without final Assembly- 55
    – Planning Variants with planning Material - 65
    – Make to order with configurable material.- 25
    – Characteristic Planning with dependent requirement - 56 and
    – Assembly Processing with Characteristic Planning - 89
    8 Variant Configuration: (Object Diagram)
    9 Variant Pricing and Surcharges
    9.1 Sales BOM
    A bill of material (BOM) describes the different components that together create a product. A BOM for a bicycle, for example, consists of all the parts that make up the bicycle: the frame, the saddle, wheels, and so on.
    When you enter the material number of a bill of materials that is relevant for sales order processing, the system displays the material that describes the whole bill of materials as a main item. The individual components are displayed as lower-level items.
    There are two ways to process a bill of materials in Sales. Once you have entered a bill of material in a sales order, the system runs pricing, inventory control, and delivery processing at: Main item level if the material is assembled, or - Component level if the material is not assembled.
    9.2 Processing at Main Item Level (ERLA)
    If you want the system to carry out pricing, inventory control, and delivery processing at main item level, enter ERLA in the Item category group field of the Sales: sales org. 2 screen in the material master record of the finished product. This means that the components only function as text items and are not relevant for delivery.
    9.3 Processing at Component Level (LUMF)
    If you want the system to carry out pricing, inventory control, and delivery processing at the component level, enter LUMF in the Item category group field of the Sales: sales org. 2 screen in the material master record of the finished product. In this case, only the components are relevant for delivery. During processing the system automatically creates a delivery group. The latest delivery date among all the components becomes the delivery date for the entire delivery group.
    10 Configuration of VC
    10.1 Production Planning and Control
    10.1.1 Creating Material
    Use
    The purpose of this activity is to create the material masters for the materials required in this scenario.
    Procedure
    Access the activity using one of the following navigation options:
    SAP Menu Logistics ® Materials Management ® Material Master ® Material ® Create (General) ® Immediately
    Transaction Code MM01
    In Material Master of KMAT material following settings are maintained:
    · Configurable material indicator in Basic Data must set.
    · MRP type is PD.
    · Lot size – EX ( Lot for lot size)
    · Availability check – 02
    · Planning Strategy 25 is entered in MRP 3 screen view.
    · Item category group 0002 or 0004 is to be given in sales view.
    10.1.2 Creating Bill of Material
    Purpose:
    · The purpose of this activity is to create bills of material (BOMs) for the configurable material which is known as ‘super BOM’
    · Super BOM comprise all the variant as well as non-variant parts required for producing configurable material.
    Procedure
    1. Access the activity using one of the following navigation options:
    SAP Menu Logistics ® Production ® Master Data ® Bills of Material ® Bill of Material ® Material BOM ® Create
    Transaction Code CS01
    · The Create Material BOM: initial screen appears. On this screen, data that identifies the bill of material are maintained as well effectivity data.
    · In the Material field, the configurable material for which super BOM need to create is entered.
    · Plant and BOM usage is entered. In general BOM usage 1 for production and 3 is for Universal.
    · In Component screen list of variant and non-variant parts are entered along with that quantity is entered based on Base qty. of the configurable material.
    · It is also possible to enter a class as a BOM component with item category ‘class Item’. This class must hold all characteristics and also classified with each material.
    · Class type 200 and 300 can be used as a class item.
    Following Procedure is followed for assigning class with BOM as a class Item.
    · Enter the item category for class items in BOM.
    · Make entries in the fields that identify the class
    – Class types
    – Class
    · Enter the quantity.
    - Enter a unit of measure if appropriate.
    - The system determines the unit of measure from the additional data of the class.
    - If a unit of measure without a dimension is maintained in the additional data of the class, you cannot change this unit.
    10.1.3 Creating Characteristic
    Purpose:
    · Characteristic is created with possible values.
    · It is also possible to use table name and its field name in order to change the Object quantity or values. Ie BOM item quantity or Operation time. This is known as ‘Reference characteristic’.
    · For changing BOM quantity Characteristic is created with table name STOP-MENGE is used.
    · For Variant pricing purpose SDCOM-VKOND is used.
    · Characteristics allow describing and distinguishing between objects, such as length, color, or weight within the classification system.
    Procedure
    SAP Menu Logistic->Centralfunction->Environment->classification->Chracteristics
    Transaction Code CT04
    · From the classification menu, choose Characteristics.
    · Enter data on the initial screen.
    · In the Characteristic field, enter a name for new characteristic
    · Enter a change number if you want to create the characteristic using engineering change management.
    · To do this, choose processing type Create characteristic.
    · You can also copy the data of an existing characteristic. Use the pushbutton Create by copying. Enter the name of a characteristic you want to copy.
    · Confirm the entries.
    · On the Basic data tab page enter the most important control data for the characteristic.
    · You must maintain the basic data for all characteristics. All other screens are optional.
    · In the formatting data for value assignment, whether a characteristic is single-value, multiple-value, or retractable is defined. It is not possible change the value assignment indicator once it has set. It applies wherever the characteristic is used.
    · The data type of the characteristic determines which values can be entered for the characteristic. I can any one of the following
    - Characters
    - Numeric
    - Time format/Date format
    - Currency format and
    - User defined data type.
    · For numeric characteristic it need to maintain that whether interval values to a numeric characteristic, or only individual values need to be maintain in Basic Data screen itself.
    · Languages in which characteristic want to describe are entered.
    · Choose the tab page Values.
    · Enter values in the entry fields. Enter each value in a separate field.
    · The values must match the format that you defined on the Basic Data screen. You can enter up to the number of characters that you defined in the format.
    · If your characteristic is an alphanumeric characteristic, enter a language-dependent value description. You can enter up to 30 characters.
    · It is not possible to enter a language-dependent description for numeric values
    · It is also possible to define one value as a default value. This value then appears as a default in characteristic value assignment functions
    · Additional value indicator determines that whether values that are not defined as allowed values can be assigned to a characteristic
    · The following value check strategies are available in value maintenance screen.
    - Allowed Values:
    - Check Tables
    - Function module
    - Catalog character
    · Allowed values permits only values defined in characteristics maintenance are used to check a characteristic value
    · Check table permits only values entered in characteristics maintenance is used to check a value
    · Function module entered is used to check characteristic values.
    · Value catalog entered is used to check characteristic values
    · Documents, such as drawings or photographs, with characteristics can be linked in additional data screen. Before link a document to a characteristic, it must create a document info record in the document management system.
    · In this screen it also possible to restrict or hidden or displaying only allowed values to characteristic.
    · It is possible to that characteristic can be only assigned to particular class type by assigning type in restriction screen.
    · To change a characteristic selects the pushbutton Change in characteristics after entering the characteristic. To display the characteristic chooses the pushbutton Display.
    10.1.4 Creating Class:
    Purpose:
    · A class is used to hold the characteristics that describe a configurable material. By linking the class to the configurable material, you allow the material to be configured using the characteristics of the class.
    Procedure
    SAP Menu Logistic->Central function->Environment->classification->Class
    Transaction Code CL01
    · Class holds all characteristics describe configurable material.
    · Class with class type 300 is used in configuration profile.
    · On basic Data screen class description, its status is entered. Status determines:
    · whether a class can be maintained
    · whether objects can be allocated to a class
    · whether the class can be used for selecting objects
    · Class group is used to group together related classes and also for finding classes quickly via a matchcode.
    · ‘Same Classification ‘indicator determines whether system check for identical characteristic values. In this case, where several objects are assigned that have the same values for all characteristics to the same class. Depends upon indicator system give warning or error message or no message.
    · Keyword string is used for finding a class via matchcode.The description entered on the basic data screen serves as the first keyword
    · On characteristic screen list characteristic which has to attach with configurable material is entered.
    · Using document tab screen it is possible to assign documents related to configurable object.
    · On additional data screen whether or not this class can be used as a class component in bills of material. If it is yes then Unit of measure in which stocks of the material are managed. The system converts all the quantities you enter in other units of measure (alternative units of measure) to the base unit of measure and resulting item category which will replace this class item in BOM (i.e. Stock, Non-stock item etc…).
    10.1.5 Creating Dependency
    Purpose
    Dependency describes the interdependencies between characteristics and characteristic values and it controls which components to be selected from a bill of material (BOM) and which operations to be selected from a task list. It also changes the field values in BOM items and operations during configuration.
    Procedure
    SAP Menu Logistic->Central function->Variant Configuration->dependency->Single Dependency->Create Dependency
    Transaction Code CU01
    · From the variant configuration menu, choose Dependency -> Single dependency-> Create
    · In initial screen name of the dependency is entered. If dependency need to create for a specific date, enter a change number. It is also possible to create dependency by copying from existing dependency.
    · On basic data screen the following data are required to enter
    - A language-dependent description for the dependency
    - Also possible to enter descriptions in different languages by choosing Descriptions.
    - Long texts for the dependency, choose Extras -> Documentation.
    - In the standard R/3 System, the status ‘In preparation’ when a dependency is created first time. The status is set to ‘Released’ when the source code is syntactically correct.
    - Finally suitable dependency type is selected.
    · In Dependency editor the source code for the dependency is entered. Once the source code is syntactically correct, the source code is saved.
    · Now the status of the dependency is turns to ‘Released’. Save the Dependency and exit.
    10.1.6 Changing Bill of Material (Assign Dependencies)
    Purpose:
    By assigning dependencies to BOM components, it is possible to restrict the selection of irrelevant variant parts.i.e correct BOM components are get selected at result of configuration. It is also possible to change the component quantity depends upon characteristic value changed.
    Procedure
    1. Access the activity using one of the following navigation options:
    SAP Menu Logistics ® Production ® Master Data ® Bills of Material ® Bill of Material ® Material BOM ® Change
    Transaction Code CS02
    · Dependencies are assigned with respect to characteristic for each variant part.
    · Dependencies are created either locally within object or globally which can be assigned to any objects.
    · In BOM General Item overview screen choose the component in which dependency need to assign and choose menu path Extras -> Dependency -> assignment of dependency for assignment.
    · It also possible to enter dependency directly in BOM itself by choosing Extras -> Dependency -> dependency editor.
    10.1.7 Creating Configuration Profile
    Purpose
    · Configuration profile used for assigning configurable material with variant class (300) and also used to maintain some central settings.
    · It is possible to assign more than one configurable profile for one KMAT material.
    · The selection of profile depends upon either by priority or by manual selection.
    · It is also possible to assign dependencies to configurable profile.
    · Class with type 300, which hold the entire characteristics of KMAT material, are assigned to each profile
    Procedure:
    Access the activity using one of the following navigation options:
    SAP Menu Logistics ® Production ® Master Data ® Material Master ® Environment ® Configuration Profile ® Create
    Transaction Code CU41
    · From the Variant Configuration menu, choose Configuration profile->Create.
    · A dialog box will be displayed. The object name is entered. Confirm your entries.
    · On profile overview screen the following data need to be entered.
    · Profile name and the class type of classes used for configuration. In Customizing for the Classification System, the class type must be defined as a variant class type.
    · Choose Goto -> Class assignments or the ‘Class assignment ’ pushbutton to assign the object to a class.
    · In the classification screen, names of the classes are entered.
    · It is possible to restrict allowed characteristic values for the configurable object if required.
    · Release of profile is possible only if configurable object is assigned to a class. To go to the detail screen, where you define further settings, choose the Profile detail pushbutton or double-click on the profile.
    10.1.7.1 Optional Settings on the Profile Overview
    · Organizational Areas
    You can specify organizational areas for configuration. If you restrict a profile to specific organizational areas, you only see the characteristics that are relevant to your area when you configure the object.
    You can change how characteristics are displayed according to organizational area for your user on the value assignment screen.
    · Priority of Configuration Profiles
    You can create several configuration profiles for a configurable material. The profile with the lowest number has the highest priority.
    If you define several profiles for an object, you see a dialog box for selecting a profile when you start configuration. The profile with the highest priority is at the top of the list.
    The priority is also relevant if you use Application Link Enabling (ALE) or intermediate documents (IDocs) to run configuration, rather than dialog mode. In this case, the profile with the highest priority is selected for the object. Profiles that have no priority are at the top of the list, because they automatically have priority 0.
    10.1.7.2 Profile Detail
    · Configuration Profiles for Materials
    The configuration profile has several screens. Depending on what you enter for the BOM explosion and configuration process, fields are shown or hidden.
    The parameters you maintain for a material apply to the material as a header material in a BOM structure. You cannot define separate settings for use of a configurable material as an assembly in a BOM.
    - By choosing the Assignments pushbutton, you can assign dependencies to the configuration profile. You also see this pushbutton on the basic data tab, once at least one dependency is assigned.
    · Basic Data Tab
    - In the basic data, click on the profile overview data.
    - If configuration process need to starts with a Start logo, documents are assigned such, as a graphic showing the product you want to configure, to the variant class.
    - Configuration Initial Screen Tab
    · Configuration parameters
    - The parameters for BOM explosion and the configuration process in the sales order are specified here.
    - BOM application must be entered, if BOM explosion ‘None’ is selected rather than single and multi level explosion is selected.
    - By entering a level of detail for a multi-level configuration, system performance will be improved.
    - It is also possible to define a filter and set the indicator for an availability check on assemblies.
    10.1.8 Changing Configuration Profile: Add User Interface Settings
    Purpose
    Settings for the configuration editor in user interface.
    - An interface design is used to group characteristics together on the value assignment screen.
    - Here it also possible to define object-specific settings for functions in the configuration editor. These settings are defaults for configuration, and can be overwritten for your user in the configuration editor.
    - For all configuration parameters except BOM explosion ‘None’, manually select the screens for the configuration editor and define which screen configuration starts with. The start screen must be one of the allowed screens.
    - The indicator for the configuration browser independently of the other start screens can be selected, because the browser is an additional screen section.
    Configuration Profiles for Objects Other than Materials
    - Object-specific settings for displaying characteristics and characteristic values in the configuration editor can be defined. These settings are defaults for configuration, and can be overwritten for your user in the configuration editor.
    Procedure
    Access the activity using one of the following navigation options:
    SAP Menu Logistics ® Production ® Master Data ® Material Master ® Environment ® Configuration Profile ® Change
    Transaction Code CU42
    10.1.9 Configuration Simulation
    Purpose:
    · Configuration simulation is used to check the configuration model. In the configuration simulation, the whether or not Object structure is created correctly and dependencies are working fine is checked.
    · Simulation of Sales/Engineering
    - The configuration parameters in the configuration profile apply. Whether the configuration is simulated from the sales point of view or the engineering point of view is defined.
    - If select Sales & distribution is selected the configuration in a sales document will be simulated (sales order or quotation), so the BOM explosion depends on the settings in the configuration profile.
    - If Engineering is selected, the configuration in order BOM processing will be simulated. The configuration and BOM explosion depend on the configuration parameters in the same way as when maintaining an order BOM. For example, we cannot configure the header material, because the configuration is copied from the sales order.
    · Simulation of a Planned Order
    - On the characteristic value assignment screen, we can choose Planned order to display the components that are determined in material requirements planning (MRP) according to the characteristic values assigned. This is especially relevant to assemblies whose BOMs are exploded in MRP, not in Sales & distribution (for example, assemblies with the BOM explosion setting None in their configuration profile).
    Procedure:
    SAP R/3 menu Logistics ® Production ® Master Data ® Bills of Material ® Environment ® Variant Configuration ® Environment ® Configuration Simulation
    Transaction Code CU50
    · On the initial screen of the configuration simulation, select BOM to display the entire structure on the result screen.
    · If you have created more than one configuration profile for a material, you see a dialog box. Select a profile and choose Continue. If you want to call detailed information on the profile, choose Profile Detail or double-click on the profile.
    · To display the task list of an assembly on the result screen, select the assembly and choose View ® Objects ® Task list.
    · You see the operations or activities in the task list that was selected for the assembly during configuration.
    · Operations that have been changed by dependencies have an information icon next to them. You can display changes by choosing Information.
    · To return to the BOM explosion, choose View ® Objects ® BOM
    10.2 Sales and Distribution
    10.2.1 Creating Condition Records - VA00
    Purpose:
    The purpose of this activity is to create condition records for VA00.
    Procedure
    1. Access the activity using one of the following navigation options:
    SAP Menu Logistics ® Sales and Distribution ® Master Data ® Conditions ® Select Using Condition Type ® Create
    Transaction Code VK11
    · Create price for each value of the characteristics by select using condition type VA00.
    · Create the Price for the condition type that represents these types of the standard-delivered condition type for this functionality is “VA00.”
    · Condition type VA00 requires as key fields the sales Organization, distribution channel, and material number of the configurable.
    · Condition type PR00 used to maintain base price of the configurable material.
    · Using VA01it is also possible to maintain Surcharges and discounts.
    10.2.2 Condition records for Variant Price and Surcharges
    Purpose
    Condition records allow you to store and retrieve pricing data in the system. All the pricing elements of your daily business - the prices, discounts, and surcharges for freight and taxes - that you want to use for automatic pricing must be stored in the system as condition records. You can define as many condition records as you want for the different pricing elements for any validity period.
    You create condition records for all the pricing elements that the system takes into account during automatic pricing. During document processing, the system transfers data from the condition records and determines the amounts for individual pricing elements (prices, discounts and surcharges) and the final amount for the sales document
    Procedure
    10.2.2.1 Create a characteristic for the Pricing
    - Create Pricing characteristic like CAR_Pricing and go to additional data tab give SDCOM table name VKOND field name.
    SAP Menu Logistic->Centralfunction->Environment->classification->Chracteristics
    Transaction Code CT04
    10.2.2.2 Assign the characteristic to the class
    Assign given characteristics to class, In variant configuration, a class is used to hold the characteristics that describe a configurable material. By linking the class to the configurable material, it allows the material to be configured using the characteristics of the class. In the standard R/3 System, the class type for configurable material is 300.
    SAP Menu Logistic->Central function->Environment->classification->Class
    Transaction Code CL01
    10.2.2.3 Create a dependency that triggers the price
    A Dependency is a rule that defines how the different options and option values, represented by characteristics and characteristic values, relate to one another. To create a dependency, follow the menu path
    SAP Menu Logistic->Central_function->VariantConfiguration->dependency->Single Dependency->Create Dependency
    Transaction Code CU01
    10.2.2.4 Assign the dependency to the characteristic value that triggers the price
    For example eCar2002, the value “V8” refers to the engine selected by the customer. Therefore, the dependency must be linked to the value “V8” of the characteristic that represents the engine type. To do this, go to the master data record of the characteristic CAR_ENGINE
    SAP Menu Logistic->Centralfunction->Environment->classification->Chracteristics
    Transaction Code CT04
    Go to the “Values” tab. From there, select the“V8” entry and use the menu path Extras Object dependencies Assignments, which brings you to the screenshot to the right; if you have created a global dependency, you can link it to the characteristic value.2 Once the dependency has been assigned, the information on this screen, such as the description (“Engine price”), will default to the information entered when you created the characteristic.
    10.2.2.5 Create variant price
    Create price for each value of the characteristics using condition type (or transaction VK11). Create the Price for the condition type that represents these types of the standard-delivered condition type for this functionality is “VA00.” Condition type VA00 requires as key fields the sales Organization, distribution channel, and material number of the configurable.
    In the same way using condition type VA01 is also used to maintain prices for surcharges and discounts.
    10.2.2.6 Creating the output condition records for sales
    Output types are used to represent various forms of output in the SAP system. Examples of output types in Sales and Distribution processing are order confirmations, freight lists, and invoices. You use the output type to control how the output should be transmitted, for example whether an order confirmation should be sent via EDI, or be printed
    10.2.3 Creating Output Condition Records: Sales
    Purpose:
    Output types are used to represent various forms of output in the SAP system. Examples of output types in Sales and Distribution processing are order confirmations, freight lists, and invoices. You use the output type to control how the output should be transmitted, for example whether an order confirmation should be sent via EDI, or be printed
    Procedure
    1. Access the activity using one of the following navigation options:
    SAP Menu Logistics ® Sales and Distribution ® Master Data ® Output ® Sales Document ® Create
    Transaction Code VV11
    · Choose Edit >Key combination
    · Select the key combination for which condition records are to be created.
    · Choose Enter.
    · Enter the appropriate key for each condition record, according to the key combination you selected.
    · For transmission medium 1 (Print output) or 7, you can maintain the communication data. To do this, choose Communication.
    · Save the condition records.
    10.2.3.1 Creating Output Condition Records: Billing
    Purpose
    The purpose of this activity is to create output condition records for billing. Output types are used to represent various forms of output in the SAP system. Examples of output types in Sales and Distribution processing are order confirmations, freight lists, and invoices. You use the output type to control how the output should be transmitted, for example whether an order confirmation should be sent via EDI, or be printed
    Procedure
    1. Access the activity using one of the following navigation options:
    SAP Menu Logistics ® Sales and Distribution ® Master Data ® Output ® Billing Document ® Create
    Transaction Code VV31
    Enter an output type.
    · Choose Edit >Key combination
    · Select the key combination for which condition records are to be created.
    · Choose Enter.
    · Enter the appropriate key for each condition record, according to the key combination you selected.
    · For transmission medium 1 (Print output) or 7, you can maintain the communication data. To do this, choose Communication.
    · Save the condition records.
    10.2.4 Order BOM
    Purpose:
    Products that are made to order in plant engineering and construction and mechanical engineering are generally very complex and are specific to one customer. For this reason, you cannot define a BOM entirely in advance. Once you have created your sales order, you need to make manual changes to the BOM by creating an order BOM especially for the sales order, without changing the original BOM.
    The sales order, sales order item, and material number identify an order BOM. In variant configuration, you can work with 2 types of order BOM. The difference is in the way they are saved.
    Knowledge based order BOM
    The order BOM is saved as a copy of the super BOM with manual changes and dependencies.
    Result Oriented BOM
    The configuration result is saved as an order BOM, with manual changes but without dependencies.
    Procedure (For knowledge based BOM)
    SAP Menu Logistics ® Production Planning ® Master Data ® Bills of Material -> Order BOM Maintain (Multi-Level)Transaction Code CU51
    · The Create Order BOM: initial screen appears.
    · Enter the sales order number, the order item, the material number and the BOM usage
    · If you want to use material BOM, or an existing order BOM to copy from, go to step 4. If you want to create an order BOM without a reference, click and go to step 7
    · You cannot use a configurable BOM as a reference
    · Click on copy order BOM or Click on copy material BOM
    · The Copy material BOM or Copy order BOM dialog box appears
    · Enter the data required and click . The item overview appears, for the bill of material you are using as a reference.
    · Enter new items and alter items if necessary. Entering items in order BOMs is similar to entering items in material BOMs. However, you
    Create a Material - KMAT type with Item category (002)
    Create Characteristics in CT04 - Zbike, where in values mention the Color of the bile like Red, Blue etc
    Create another characteristics in CT04 - ZPrice, where directly go the additional data tab and maintain the table SDCOM and field VKOND (ABAP Dictionary it will ask for)
    Assign these two characteristics to a Class in CL01 – Zbike class (Type 300) in characteristics tab page.
    Then go to CU41 Configuration profile select the material and enter the description click on the class assignment ie assign Zbikclass.
    Now go back to CT04 - enter Zbike -go to values- select Red- go to extras - Other Dependencies - Select Procedure enter in front 10 write - $self.ZPrice='Red' and save
    Now go back go to extras - Other Dependencies - assignments and assign relationship ( by default it will come just save)
    Now select Blue- go to extras - Other Dependencies - Editor - Select Procedure enter in front of 10 write - $self. ZPrice='Blue' and save
    Now go back go to extras - Other Dependencies - assignments and assign relationship ( by default it will come just save)
    Now go to VK11 - Enter VA00 (Condition)(For Std RVA001 Pricing Procedure) - enter variant Red and Blue give the rates accordingly and create the sales order.

  • Report for open orders and amount of product confirmed

    Hi All,
    Can some one give me an idea on a report which shows open orders and also shows amount of product confirmed against these open orders?
    Thanks,
    Neelima.

    Hi Veni,
    Incomplete order are the order's in which some data is missing so that particular order can't be further processed, that is what you could check through "Incompletion Log". Whereas Open orders are the orders which are open for further processing viz. deliver billing(but open order is a complete order i.e. no data missing).
    Check this program:
    *& Report ZGM_OPENPO *
    REPORT ZGM_OPENPO NO STANDARD PAGE HEADING LINE-SIZE 132 LINE-COUNT 36(2).
    TABLES: t001w, "Plants/Branches
    ekko, "Purchasing Document Header
    ekpo, "Purchasing Document Item
    marc, "Plant Data for Material
    mara. "General Material Data
    DATA:
    BEGIN OF itab OCCURS 0,
    matnr LIKE marc-matnr,
    werks LIKE marc-werks,
    beskz LIKE marc-beskz,
    mmsta LIKE marc-mmsta,
    END OF itab.
    DATA: BEGIN OF iekpo OCCURS 0,
    ebeln LIKE ekpo-ebeln,
    menge LIKE ekpo-menge,
    aedat LIKE ekpo-aedat,
    wemng LIKE eket-wemng,
    END OF iekpo.
    DATA: BEGIN OF iekko OCCURS 0,
    ebeln LIKE ekko-ebeln,
    lifnr LIKE ekko-lifnr,
    bedat LIKE ekko-bedat,
    ekgrp LIKE ekko-ekgrp,
    END OF iekko.
    selection-screen:begin of block b1 with frame title text001.
    SELECT-OPTIONS werks FOR ekpo-werks OBLIGATORY.
    SELECT-OPTIONS matnr FOR ekpo-matnr.
    SELECT-OPTIONS beskz FOR marc-beskz.
    SELECT-OPTIONS bsart FOR ekko-bsart.
    selection-screen:end of block b1.
    INITIALIZATION.
    AT SELECTION-SCREEN ON werks. "Validate for werks
    SELECT SINGLE * FROM t001w WHERE werks IN werks.
    IF sy-subrc 0. MESSAGE e429(mo). ENDIF.
    AT SELECTION-SCREEN ON matnr.
    SELECT SINGLE * FROM mara WHERE matnr IN matnr.
    IF sy-subrc 0. MESSAGE e429(mo).ENDIF.
    START-OF-SELECTION.
    SELECT * FROM marc INTO CORRESPONDING FIELDS OF TABLE itab WHERE werks IN werks AND beskz IN beskz AND
    matnr IN matnr.
    SELECT ebeln FROM ekpo INTO CORRESPONDING FIELDS OF TABLE iekpo
    FOR ALL ENTRIES IN itab WHERE matnr = itab-matnr AND loekz EQ space.
    SELECT ebeln lifnr bedat ekgrp FROM ekko INTO CORRESPONDING FIELDS OF
    TABLE iekko
    FOR ALL ENTRIES IN iekpo WHERE ebeln = iekpo-ebeln AND bsart IN bsart.
    SELECT ebeln menge aedat FROM ekpo INTO CORRESPONDING FIELDS OF iekpo
    FOR ALL ENTRIES IN iekpo WHERE ebeln = iekpo-ebeln. MODIFY iekpo INDEX sy-dbcnt.
    ENDSELECT.
    SORT iekpo BY aedat.
    DELETE ADJACENT DUPLICATES FROM iekpo COMPARING ebeln.
    SELECT wemng FROM eket INTO CORRESPONDING FIELDS OF iekpo FOR ALL ENTRIES IN iekpo WHERE ebeln = iekpo-ebeln.
    MODIFY iekpo INDEX sy-dbcnt.
    ENDSELECT.
    END-OF-SELECTION.
    DATA : file_name TYPE string.
    file_name = 'c:\pay_det\open_po1.xls'.
    DATA : BEGIN OF it_join_fields OCCURS 0,
    field_name(20),
    END OF it_join_fields.
    CLEAR it_join_fields.
    it_join_fields-field_name = 'ebeln'.
    APPEND it_join_fields.
    CLEAR it_join_fields.
    it_join_fields-field_name = 'menge'.
    APPEND it_join_fields.
    CLEAR it_join_fields.
    it_join_fields-field_name = 'aedat'.
    APPEND it_join_fields.
    CLEAR it_join_fields.
    it_join_fields-field_name = 'wemng'.
    APPEND it_join_fields.
    CLEAR it_join_fields.
    CALL FUNCTION 'GUI_DOWNLOAD'
    EXPORTING
    BIN_FILESIZE =
    filename = file_name
    filetype = 'ASC'
    APPEND = 'X'
    write_field_separator = 'X'
    TABLES
    data_tab = iekpo
    FIELDNAMES = it_join_fields
    IF sy-subrc 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    LOOP AT iekpo.
    IF iekpo-menge NE iekpo-wemng.
    WRITE:/4 iekpo-ebeln,21 iekpo-menge ,46 iekpo-aedat, 56 iekpo-wemng.
    ENDIF.
    ENDLOOP.
    if sy-subrc 0. write / 'no data exist for this plant'. endif.
    TOP-OF-PAGE.
    uline 1(80).
    WRITE :/ sy-vline, 20 ' OPEN purchase ORDERs report' color 5,
    80 sy-vline.
    uline 1(80).
    WRITE:/ sy-vline , 4 'PURSCHASE ORDER' COLOR COL_HEADING,
    20 sy-vline, 21 'ORDER QUANTITY' COLOR COL_HEADING,
    45 sy-vline, 46 'item change' color col_heading, 55 sy-vline,
    56 'RECIEVED QUANTITY' COLOR COL_HEADING, 80 sy-vline.
    uline 1(80).
    END-OF-PAGE.
    WRITE :/ 'PAGE NUMBER' ,SY-PAGNO.
    Hope this helps you.
    Regards,
    Chandra Sekhar

  • IDOC for Creation of Production order and also adding components

    Hi ,
    I have a requirement like I get the data from a 3rd party system and using that i have to create production orders and also should be able to add more materials in COMPONENTS part of that Production order. I was looking for a BAPI which can handle this process.
    And also can any one help me by letting me know is there any Message type available for handling this process of Production order creation and Adding extyra components to it.
    I have a  message type LOIPRO (for Production Order) and associated function modle CLOI_MASTERIDOC_CREATE_LOIPRO for creation of master IDoc, but not sure can i handle the Components part in this.
    Please do send replies ASAP, its very urgent.
    Or else atleast suggest me the other ways of doing this .
    Also send me any BDC program if anyone has already developed for this.
    Thanks
    Kumar
    Edited by: Phani Kumar Peddagopu on Mar 19, 2008 6:56 PM

    Resolved .

  • Production order and planned order qty should not consider in MRP

    Dear All,
    i do not want to consider the previous month production order qty and plenned order qty (Nothing but WIP qty) in the current momth MRP, but the stock has to consider in MRP.
    Example,
    Before MRP,
    material : XYZ
    Stock : 1000
    Prod Qty : 500 for 02.04.2008
    PIR Qty : 2000 for 02.05.2008
    After MRP, the requirement should be as below said,
    material : XYZ
    Stock : 1000
    Prod Qty : 500 for 02.04.2008
    PIR Qty : 2000 for 02.05.2008
    Pld OrdQty : 1000 for 02.05.2008
    For the above requirement ,i have done settings in the availabilty check like , for include planned order and include production order are "DO NOT TAKE IN ACCOUNT".
    Even then also the planned order qty is generating for the "500" only.
    please give the solution for the above said requirement.
    thanx in advance
    Regards
    Srinivas

    hi
    MRP will always consider the prod order qty while doing nert req calculation.One thing u can do is TECo the prod orders and un MRP then it wont consider prod order qty.
    The Availability check will check whether the components r avalaible or not based on ur scope of check
    Reward points if useful
    Amit

  • Planned order and Production order Not appearing cm21 transaction code

    Hi
    I have created a planned order for a material through MRP run
    As soon as the planned order is created its available in the cm21 transaction code . But once i dispatch the planed orders , the planned orders can be seen only as a BAR in the upper right side of the screen .
    1.Can any body please let me know how i can view the details of this dispatched planned orders in the same way when the planned orders were un dispatched ?
    2.If i create a production order manually or convert a planned order to production order i cannot see these production orders in cm21 neither on cm22 , can any body please let me know what i have to do so that i can view these production orders as well in cm21 or cm22 transaction code.
    Thanks and regards
    Sankar N

    Hi Pradeep
    I have checked the generate capacity requirements and it worked ,Thank you
    Presently i can view only the work centre details in cm21 screen extreme left , how can i see the details of the orders that are dispatched at this work centre ,in the similar way we see in the order pool, bottom left of cm21 screen .
    Thanks
    Sankar

  • Open planned orders and production orders

    Hi friends,
    I have one issue with my client.
    Client has 1 lac materials in sap .Now he wants extract all materials open planned orders and open production orders with quantity and dates.
    Please tell me the process how i can extract the data from sap for above requirement.
    Thanks,
    Manoj

    Hi Manoj,
    For open planned order and production order select the respective box.
    But one suggestion. Try to convince client that this report will take a lot of time as you have mentioned 1 lac materials are there.
    You can exclude system status and get it with below screen as mentioned already.
    But my suggestion is to run the report at night when the system load is very less. Please create a background job one for planned order and another for production order. Then run it in midnight as per the customer requirement in background. You can automate the process by sending automatic mail to customer. Please refer the below link to trigger mail.
    Mail Trigger with TEXT file via JOB run
    Regards,
    Krishnendu.

  • Open production orders and outbound delivery after go-live

    Hello All,
    I tried to search answer for this question but could not find answer.
    Could anybody suggest, what to do with open production orders and outbound delivery after go-live when WM is activated. As, after go-live WM-PP interface will be activated and system should consume material from storage bin specified in control cycle and that will happen for newly created production order after go-live,but what about existing production orders how to update production supply area against work center in production order.
    Similarly with outbound delivery how to update WM status after go-live.
    Thanks in advance

    Thanks to both Jurgen and Sander
    Regarding production order yes, one way is to re-read PP master data in production orders, but is that the only way to handle this or do we have any other option?
    I was aware of re-read PP master data but it will real time consuming and also if it will problematic for already released or partially confirmed production orders.

  • Function module for calculating planned and actual cost of production order

    Hi ,
    Do we have any standard function module for calculating planned and actual cost for production order?
    i need to implement this in a Z-report.
    Thanks
    Srini

    Hi,
    try below function module
    CRMCO_GET_PLAN_ACTUAL_COSTS
    CO_IH_GET_PLANNED_COSTS_TOTAL
    Regards,
    Sankaran

  • How to bifurcate production order and purchase order

    hi all,
    is it possible to bifurcate all open production order and purchase order quantity of items.
    ex:i have one item like ffp001 it is showing 100 order quantity.but i want only open purchase quantity.i checked (item master data-->righ click--->Avail to promise) its showing open production and purchase quantity.so i need only open purchase quantity.
    Plz tell me the process of Bifurcation of open orders.
    thanks&Regards,
    P.Pratap

    Hi,
    By default there is no option , as a workaround you can use below method,
    Create 2 warehouse , for example Purchase , Production
    When ever you create purchase order use "Purchase" warehouse, Use production warehouse in production
    In the "Available to Promise" Report you have warehouse filter option.
    Using this filter you achieve can achieve your requirement.
    OR
    Right click "Filter Table"
    Document -> Start with-> PO
    Now you can see only PO
    Refer below image

  • BT Infinity Order and INstallation Delay

    Here is my sad story of BT Infinity order.  For four weeks now I do not have any internet at home due to this problem with BT.  Original meant ot be installed on mar 27, but still no update luck.
    BT Order History:
    * MARCH 13, 2014 – Today ordered BT Infinity 2 package over the phone.  BT has informed that package installation date is 27 March 2014.  A BT’s technician will visit on MARCH 27, 2014 anytime from 1-6 PM.  I let SKY know to stop my broadband by MARCH 27, 2014.  SKY has said it will close the broadband on MARCH 29, 2014 and the connection will stop within the next 10 days.
    * MARCH 27, 2014 – Took a day off from work as the technician would visit.  Unfortunately no visit from BT technician.  No message from BT to inform me about this.  Called BT after 6PM and was told that there was a problem with my line which would be sorted on APRIL 1, 2014.
    * APRIL 1, 2014- Received an SMS from BT stating that BT would get in touch with me on 03/04/2014 and requested not to call them as BT would be unable to provide any update before that date.
    * APRIL 3, 2014 – No contact from BT as stated on the last SMS. I called BT and was told that I would get an update from the Engineer team on APRIL 5, 2014.  SKY broadband connection is now gone.  BT landline is now connected.
    * APRIL 5, 2014-Called BT.  Still no update.  More promises of calling me back and keeping me updated.
    * APRIL 7, 2014 – Called BT, no new update.  Sent a complain email to BT. 
    * APRIL 8, 2014 – BT replied to my complain email stating “there is a few issues with my connection at the local exchange….Someone from the Order Team will be in touch with you today anytime, until 8pm, to discuss this further and make a new appointment for you.”  No one from the Order team called me on that day.
    * APRIL 10, 2014 – Replied to BT’s email reply querying about the order and me not being happy.  There was a call from BT today on my mobile, but I was at work and did not take the call.  I called BT help and was told that BT left an SMS with the note that there are further delays till 15/04/2014.  I have not received any SMS, only the call.  Replied back to BT stating that I am not happy with the service.
    * APRIL 15, 2014 – Called BT. No update.  However I have been told to check back tomorrow as the engineers will leave a note by 8pm today.
    * APRIL 16, 2014 – Called BT to check if any update is available.  BT told me to that next update is on APRIL 17, 2014.  Requested BT to SMS or email me with an update.  Another promise made by BT.
    * APRIL 17, 2014 – Called BT helpdesk, not very happy today. I was informed that my broadband order needs to be cancelled by BT for whatever reason and the system is showing the order’s status ‘pending cancellation’.  The helpdesk person promised that I would be updated by email or sms by 18/04/2014.
    * APRIL 18, 2014 – No update from BT.  Sent a replied to BT’s last email requesting an alternate broadband connection in BT’s cost till the local exchange issue is resolved.
    * APRIL 19, 2014 – Talked to BT helpdesk (Sohail).  He checked the engineering team’s log and found that a next review date of 28 April 2014 is set for this order.  He confirmed that the issue with the local exchange has been resolved.  My order is in a ‘pending cancellation’ process. Ideally cancelling an order should not take that long.  According to Sohail, these are the things going to happen now:
    -    On Apr 22 current order will be cancelled.
    -    On Apr 23 new order will be made by BT.
    -    On Apr 23 BT will update me with new information, possibly new appointment date.
    According to Sohail, in the best case scenario this should be done by the end of April.
    * APR 23 2014 – called BT helpdesk.  Also received an email and sms from BT that there would be an update on 28/04/2014!  My guess (and hope) that the message is related to the original order.  Ideally this order should now be cancelled by BT.  Called BT Helpdesk - according to helpdesk, I will be informed about my order on 28/04/2014 from a Level 2 department (Not sure what that means though).

    * APR 24 2014 - Posted it to BT's forum moderator via NeilO's profile. 
    Recieved a phone call from "Susan". She is now taking the ownership of the issue. She is going to find out what is happening with the order. She is expecting to get back to me by today in 2-3 hours time. Recieved email from Susuan. The order will now be cenclled on 25/04/2014. Susan will create a new order and will try to expedite it.
    APR 25 2014 - Recieved an email from Susan. The current order may get cancelled by today. However it will not happen before 4PM today. Susan will create a new order on 28/04/2014. A definite date will be given on that day.
    APR 28 2014 - Update from Susan. She is still waiting for the broadband Order Management team to close off the order so that new order can be issued.
    Another update from Susan - The Openreach suppliers have raised a Bridge case to close the current order. Their target fix time is 05/05/2014. replied to Susan stating I am not happy with the progress and asked for alternative adsl broadband connection until BT fixes the issue.

  • How to attempt production orders and get feedback by using IDocs

    Hi,
    I'm new new to SAP and R3 respectively mySAP. I need to know how to use IDocs (over file system) to attempt production orders to an extern application and how to get the feedback of the whole orders and single operations.
    I found the IDoc-base-type "PPCC2RECORDER01" to send production orders. Is that the right base type for production orders?
    (In consideration of compatibility and support me was recommend to avoid the old types OPERA2 and CONF21.)
    What IDoc-types do I need to get feedback about a production order and its operations?
    I hope someone is understanding my questions is able to help me. Please apologize my broken English.
    Thanks!
    Hannes

    PROGRAM....... ZRCCLORDPROC
    TITLE......... Production Odrer Idocs
    AUTHOR........ Aveek Ghose
    DATE WRITTEN.. 15/09/2006
    R/3 RELEASE... 4.6C
    =====================================================================*
    COPIED FROM... N/A
    DESCRIPTION...
    *& Creation of production order IDOCs to a given selection
    *& This program selects to an input given via the selection screen the *
    *& corresponding production orders from the database. Then the function
    *& module for creation of planned order idocs is called.               *
    *& In general this report is called from the report RCCLTRAN, but it   *
    *& can also be used for its own.                                       *
    =====================================================================*
    PROGRAM TYPE.. Outbound Interface
    DEV. CLASS.... ZPD1
    LOGICAL DB.... N/A
    =====================================================================*
    SCREENS....... N/A
    GUI TITLE..... N/A
    GUI STATUS.... N/A
    TRANSACTIONS.. N/A
    USER EXITS.... N/A
    =====================================================================*
    CHANGE HISTORY                                                       *
    Date       By        Correction Number & Brief Description     Release
    Tables / Structures
    REPORT  zrcclordproc
            NO STANDARD PAGE HEADING
            MESSAGE-ID ZCUST
            LINE-COUNT 65(0)
            LINE-SIZE 255.
    INCLUDE RCORDO01.                    " PBO-Modules                   *
    INCLUDE RCORDI01.                    " PAI-Modules                   *
    INCLUDE RCORDF01.                    " FORM-Routines                 *
    --> Global data
    TYPE-POOLS: cloi.
    include zprodata.        "Types / constants for Orderselection
    include zrcordtop.                      "Tables / Data for this report
    include zrcordtop1.
    include yrccl_constants.
    TABLES : jcds,
             tvarv,
             zzzz_xref_data.
    TYPES:  BEGIN OF ty_date,
              aufnr  TYPE aufnr,
              aedat  TYPE aufaedat,
              aezeit TYPE co_chg_time,
              erdat  TYPE auferfdat,
              erfzeit TYPE co_ins_time,
              loekz  TYPE aufloekz,
              indicator(1) TYPE c,
           END OF ty_date.
    DATA: is_enhancement type isu_ord_segments_determine.
    DATA: itab_date TYPE STANDARD TABLE OF ty_date
                         INITIAL SIZE 0 WITH HEADER LINE.
    DATA: f_objnr TYPE j_objnr.
    DATA: g_report_sub_head(72) TYPE c,          "Sub-Header hold area
          g_report_head(72)     TYPE c,          "Header hold area
          g_run_date(72)        TYPE c,          "Holds message for Run date
          g_run_time(72)        TYPE c.          "Holds message for Run time
    DATA:
    f_old_date TYPE datum,
    f_old_time TYPE uzeit,
    f_continue(1) TYPE c.
    END OF INSERTION DS001
    --> Überschrift für sonstige Einstellungen
    SELECTION-SCREEN SKIP 2.
    SELECTION-SCREEN BEGIN OF BLOCK miscellaneous WITH FRAME.
    SELECTION-SCREEN SKIP 1.
    SELECTION-SCREEN COMMENT 1(30) text-001. "#EC
    SELECTION-SCREEN SKIP 1.
    *>> Logical system comes from Report RCCLTRANS
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(30) text-002.
    SELECTION-SCREEN POSITION 35.
    PARAMETERS opt_sys LIKE tbdlst-logsys.
    SELECTION-SCREEN END OF LINE.
    *>> Messagetype comes from Report RCCLTRANS
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(30) text-003.
    SELECTION-SCREEN POSITION 35.
    PARAMETERS mestyp LIKE tbdme-mestyp.
    SELECTION-SCREEN END OF LINE.
    *>> Messagetype comes from Report RCCLTRANS
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(30) text-004.
    SELECTION-SCREEN POSITION 35.
    PARAMETERS:     p_date     TYPE sydatum.       "last run date
    SELECTION-SCREEN END OF LINE.
    *>> Messagetype comes from Report RCCLTRANS
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(30) text-005.
    SELECTION-SCREEN POSITION 35.
    PARAMETERS:     p_time     TYPE syuzeit.       "last run time
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END OF BLOCK MISCELLANEOUS.
    *MOD-006
    *>> Messagetype comes from Report RCCLTRANS
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(30) text-006.
    SELECTION-SCREEN POSITION 35.
    PARAMETERS: p_update   AS   CHECKBOX DEFAULT space.
    SELECTION-SCREEN END OF LINE.
    *MOD-006
    *MOD-006
    *>> Messagetype comes from Report RCCLTRANS
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(30) text-007.
    SELECTION-SCREEN POSITION 32.
    SELECT-OPTIONS: s_rundt FOR sy-datum NO-EXTENSION.
    SELECTION-SCREEN END OF LINE.
    *MOD-006
    *MOD-006
    *>> Messagetype comes from Report RCCLTRANS
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(30) text-008.
    SELECTION-SCREEN POSITION 32.
    SELECT-OPTIONS: s_runtm FOR sy-uzeit NO-EXTENSION.
    SELECTION-SCREEN END OF LINE.
    *MOD-006
    **MOD-006
    *SELECTION-SCREEN BEGIN OF LINE.
    *SELECTION-SCREEN COMMENT 3(30) text-009.
    *SELECTION-SCREEN POSITION 32.
    *SELECT-OPTIONS: s_emat FOR zzzz_xref_data-z_in_value.
    *SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END OF BLOCK miscellaneous.
    **MOD-006
    Write selected AUFPL numbers via ranges table to memory ?
    PARAMETERS:
      ordtomem TYPE cloi_x DEFAULT '' NO-DISPLAY.  "X: yes
    do not select from MARC, but use ranges tables directly.   MK 4.0C
    matnr_gl and werks_gl must have the same length.
    PARAMETERS: no_sel  TYPE c DEFAULT ' ' NO-DISPLAY.
    --> Normal selection parameters for ORD comes from the logical db
    *&   Event START-OF-SELECTION
    START-OF-SELECTION.
    --> Select the ORD according to the selected
        MRP controller, Material, work center and plant
    *MOD-006
    Validate the last run date & Time
    PERFORM validate_last_run_date_time.
    *MOD-006
    BEGIN OF INSERTION DS001
    get the entry of the last program run
    select single * for update from ycloidownlprot
                     where logsys = OPT_SYS and
                           downloadtype eq C_DOWNL_PROCESS_ORDERS.
    if YCLOIDOWNLPROT-IN_PROGRESS eq CLOI_TRUE.
    program is already running, do not allow to start again
       write : / text-004, YCLOIDOWNLPROT-USERNAME.
       exit.
    endif.
    YCLOIDOWNLPROT-MANDT        = SY-MANDT.
    YCLOIDOWNLPROT-LOGSYS       = OPT_SYS.
    YCLOIDOWNLPROT-START_DATE   = SY-DATUM.
    YCLOIDOWNLPROT-START_TIME   = SY-UZEIT.
    YCLOIDOWNLPROT-USERNAME     = SY-UNAME.
    YCLOIDOWNLPROT-DOWNLOADTYPE = C_DOWNL_PROCESS_ORDERS.
    YCLOIDOWNLPROT-IN_PROGRESS  = CLOI_TRUE.
    insert or update entry (dependant if entry already exists)
    MODIFY YCLOIDOWNLPROT.
    COMMIT WORK.
    CLEAR CREATED_MASTERIDOCS_PRO.
    EXPORT CREATED_MASTERIDOCS_PRO TO MEMORY ID 'YLOI001'.
    END OF INSERTION DS001
    BEGIN OF INSERTION DS001
    if not sscrfields-ucomm = 'ONLI'.   mk zu 4.0
      exit.
    endif.
    if s_dispo is initial and
        s_matnr is initial and
        s_arbpl is initial and
        s_werks is initial.
       exit.
    endif.
    Send only orders with type 40 - process orders
    p_autyp = '40'.
    END OF INSERTION DS001
    *>> Put the ranges tabs back into matwrk list if no selection (NO_SEL)
      IF no_sel = cloi_true.
        CLEAR t_matwrk_key. REFRESH t_matwrk_key.
        LOOP AT s_matnr.
          t_matwrk_key-matnr = s_matnr-low.
          READ TABLE s_werks  INDEX sy-tabix.
          t_matwrk_key-werks  = s_werks-low.
          APPEND t_matwrk_key.
        ENDLOOP.
        SORT t_matwrk_key BY matnr werks.
        DELETE ADJACENT DUPLICATES FROM t_matwrk_key.
    delete duplicate duplicates from ranges table. Therfore sort by LOW
    (HIGH is not used in this case).
        SORT s_matnr BY low.
        DELETE ADJACENT DUPLICATES FROM s_matnr.
        SORT s_werks BY low.
        DELETE ADJACENT DUPLICATES FROM s_werks.
      ENDIF.
    --> Determine which segments are selected in the message type
      PERFORM ord_segments_determine
        USING mestyp
        CHANGING afpo_x
                 jstk_x
                 afab_x
                 affl_x
                 afvo_x
                 kbed_x
                 jstv_x
                 resb_x
                 kbeu_x
                 afuv_x
                 is_enhancement
                 jstu_x.
    Export the flags to the memory, because the following subroutine
    must not have any parameters !!!
      EXPORT affl_x
             afvo_x
             kbed_x
             resb_x
             kbeu_x
             afuv_x
             TO MEMORY ID 'LOI03'.
    MK 19980326 enhanced selections on header/operation level
    get selection profile for log system from customizing if available
      SELECT SINGLE * FROM tcloi9 WHERE logsys = opt_sys.
    if entry exists for the logical system
      IF sy-subrc = 0.
    if an selection profile for the order is entered, use it for selection
        IF NOT tcloi9-ord_selid IS INITIAL.
          p_selid = tcloi9-ord_selid.
        ENDIF.
        IF NOT tcloi9-ord_opr_selid IS INITIAL AND
           NOT afvo_x IS INITIAL AND NOT affl_x IS INITIAL.
          ord_opr_selid = tcloi9-ord_opr_selid.
        ENDIF.
      ENDIF.
    initialize control key table for selections
      CALL FUNCTION 'CLOI_STEUS_GET'
           EXPORTING
                logsys_to_init         = opt_sys
           IMPORTING
                no_entry_for_logsys    = no_entry_for_logsys
           TABLES
                t_steus                = t_steus
           EXCEPTIONS
                logsys_not_initialized = 1
                OTHERS                 = 2.
    Write structure information into the memory
    perform fill_memory_selobj.
    -> import table with already sent orders
      IMPORT gt_aufnrdone FROM MEMORY ID 'LOIAUFNRTAB'.         "N599845
      SORT gt_aufnrdone BY low.                                 "N599845
    --> Read header information
    GET ioheader.
      Check if material/plant combination is selected MK 4.0C
      CLEAR check_flg.
      IF no_sel = cloi_true.
        READ TABLE t_matwrk_key
                   WITH  KEY matnr = ioheader-matnr
                             werks = ioheader-werks BINARY SEARCH.
        IF sy-subrc  <> 0.
          check_flg = cloi_true.
        ENDIF.
      ENDIF.
    -> check if order was already sent
      IF NOT gt_aufnrdone[] IS INITIAL.                         "N599845
        READ TABLE gt_aufnrdone WITH KEY                        "N599845
          low = ioheader-aufnr                                  "N599845
          TRANSPORTING NO FIELDS                                "N599845
          BINARY SEARCH.                                        "N599845
        IF sy-subrc = 0.                                        "N599845
        -> order already sent
          check_flg = cloi_true.                                "N599845
        ENDIF.                                                  "N599845
      ENDIF.                                                    "N599845
    leave GET routine if check_flg is set.
      CHECK check_flg IS INITIAL.
      CLEAR t_afpo. REFRESH t_afpo.
      CLEAR t_affl. REFRESH t_affl.
      MOVE-CORRESPONDING ioheader TO t_afko.
    GET ioheader LATE.
    BEGIN OF INSERTION DS001
    Check whether the process order has been changed since the last
    run of the program
    clear f_continue.
    if the CHANGED date is greater than the last run or initial
    IF IOHEADER-AEDAT  GT F_OLD_DATE OR
           ( ioheader-aedat  is initial and
             ioheader-aezeit is initial ).
    if the CHANGED date is initial check the creation date
       if ioheader-aedat is initial.
    if the creation date is greater than or equal to the date of the last
    run, if it is equal the creation time must be later or equal to the
    start time of the last run
         IF IOHEADER-ERDAT GT F_OLD_DATE OR
            ( IOHEADER-ERDAT EQ F_OLD_DATE AND
              IOHEADER-ERFZEIT GE F_OLD_TIME ).
           f_continue = 'X'.
         endif.
       else.
         f_continue = 'X'.
       endif.
    if the CHANGED dat is not initial check it against the last run
    ELSEIF IOHEADER-AEDAT  EQ F_OLD_DATE AND
            IOHEADER-AEZEIT GE F_OLD_TIME.
       f_continue ='X'.
    endif.
    Aenderung 295/99  Selektions-Aenderung vom 26. August 99
    Wenn Auftrag bereits techn. abgeschlossen ist, so darf kein IDOC
    erzeugt werden, wenn Auftrag zum löschen vorgemerkt wird.
    CONCATENATE 'OR' IOHEADER-AUFNR INTO F_OBJNR.
    SELECT SINGLE * FROM JEST
                     WHERE OBJNR = F_OBJNR
                     AND   STAT  = 'I0045'.
    IF JEST-INACT EQ SPACE AND SY-SUBRC EQ 0.
       SELECT * FROM JCDS WHERE OBJNR EQ F_OBJNR AND
                                STAT  EQ 'I0045' AND
                                INACT EQ SPACE.
    letzte Aenderung des Status TABG wird geprueft    Beg. WA 354/99
       ENDSELECT.
      IF ( F_OLD_DATE GT JCDS-UDATE OR                         " Beg JB_02
          ( F_OLD_DATE EQ JCDS-UDATE AND
           F_OLD_TIME GT JCDS-UTIME ) ) AND                    " End JB_02
          SY-SUBRC EQ 0.
         CLEAR F_CONTINUE.
       ENDIF.
    ENDIF.
    Ende 295/99
    check f_continue eq 'X'.
    END OF INSERTION DS001
      t_afko-t_afpo = t_afpo[].
      t_afko-t_jstk = t_jstk[].
      t_afko-t_affl = t_affl[].
      t_afko-t_afab = t_afab[].
      APPEND t_afko.
      IF jstk_x = cloi_x.
        t_objnr-objnr = ioheader-objnr.
        APPEND t_objnr.
      ENDIF.
    *---> Remember the orders that are already selected for the global
        selection parameters
      IF ordtomem = cloi_x.                "write order numbers to memory
        t_aufnr_range_done-sign = 'I'.
        t_aufnr_range_done-option = 'NE'.
        t_aufnr_range_done-low = ioheader-aufpl.
        APPEND t_aufnr_range_done.
      ENDIF.
    *---> Remember the orders internal/external keys for AFAB (relationship)
      IF afab_x = cloi_x.
        MOVE-CORRESPONDING ioheader TO t_aufpl_aufnr.
        APPEND t_aufpl_aufnr.
      ENDIF.
    check afpo_x = cloi_x.
    GET ioitem.
    BEGIN OF INSERTION DS001
    Check whether the process order has been changed since the last
    run of the program
    CLEAR F_CONTINUE.
    if the CHANGED date is greater than the last run or initial
    IF IOHEADER-AEDAT  GT F_OLD_DATE OR
           ( ioheader-aedat  is initial and
             ioheader-aezeit is initial ).
    if the CHANGED date is initial check the creation date
       if ioheader-aedat is initial.
    if the creation date is greater than or equal to the date of the last
    run, if it is equal the creation time must be later or equal to the
    start time of the last run
         IF IOHEADER-ERDAT GT F_OLD_DATE OR
            ( IOHEADER-ERDAT EQ F_OLD_DATE AND
              IOHEADER-ERFZEIT GE F_OLD_TIME ).
           f_continue = 'X'.
         endif.
       else.
         f_continue = 'X'.
       endif.
    if the CHANGED date is not initial check it against the last run
    ELSEIF IOHEADER-AEDAT  EQ F_OLD_DATE AND
            IOHEADER-AEZEIT GE F_OLD_TIME.
       f_continue ='X'.
    endif.
    Aenderung 295/99  Selektions-Aenderung vom 26. August 99
    Wenn Auftrag bereits techn. abgeschlossen ist, so darf kein IDOC
    erzeugt werden, wenn Auftrag zum löschen vorgemerkt wird.
    CONCATENATE 'OR' IOHEADER-AUFNR INTO F_OBJNR.
    SELECT SINGLE * FROM JEST
                     WHERE OBJNR = F_OBJNR
                     AND   STAT  = 'I0045'.
    IF JEST-INACT EQ SPACE AND SY-SUBRC EQ 0.
       SELECT * FROM JCDS WHERE OBJNR EQ F_OBJNR AND
                                STAT  EQ 'I0045' AND
                                INACT EQ SPACE.
    letzte Aenderung des Status TABG wird geprueft
       ENDSELECT.
      IF ( F_OLD_DATE GT JCDS-UDATE OR                         " Beg JB_02
          ( F_OLD_DATE EQ JCDS-UDATE AND
           F_OLD_TIME GT JCDS-UTIME ) ) AND                    " End JB_02
          SY-SUBRC EQ 0.
         CLEAR F_CONTINUE.
       ENDIF.
    ENDIF.
    Ende 295/99
    check f_continue eq 'X'.
    END OF INSERTION DS001
      IF afpo_x = cloi_x.
        MOVE-CORRESPONDING ioitem TO t_afpo.
        APPEND t_afpo.
      ENDIF.
    Put matnr and ltrmi in a help structure, which later goes to t_afpo
      IF ioitem-posnr = '0001'.
        MOVE-CORRESPONDING ioitem TO help_afpo.
        APPEND help_afpo.
    put PSP element (internal key) into order header. Unique for positions
        IF t_afko-pspel IS INITIAL.
          t_afko-pspel = ioitem-projn.
        ENDIF.
      ENDIF.
      CHECK affl_x = cloi_x.
    GET iosequen.
      CLEAR t_afvo. REFRESH t_afvo.
      MOVE-CORRESPONDING iosequen TO t_affl.
    GET iosequen LATE.
      t_affl-t_afvo = t_afvo[].
      APPEND t_affl.
      CHECK afvo_x = cloi_x.
    GET iooper.
      CLEAR t_kbed. REFRESH t_kbed.
      CLEAR t_afuv. REFRESH t_afuv.
      CLEAR t_resb. REFRESH t_resb.
      MOVE-CORRESPONDING iooper TO t_afvo.
      "Temporary storing of operation information if for a phase
      "the corresponding operation has is needed
      MOVE-CORRESPONDING iooper TO t_aufpl_aplzl_vornr.
      APPEND t_aufpl_aplzl_vornr.
    check, if selection profile (if exists) for the operation is ok
      IF NOT ord_opr_selid IS INITIAL.
        CALL FUNCTION 'STATUS_CHECK_BY_SELSCHEM'
             EXPORTING
                  objnr          = iooper-objnr
                  selid          = ord_opr_selid
             IMPORTING
                  fullfill       = status_ok
             EXCEPTIONS
                  no_stat_tab    = 1
                  no_stat_scheme = 2
                  OTHERS         = 3.
        IF sy-subrc <> 0.
          status_ok = cloi_x.
        ENDIF.
      ELSE.
        status_ok = cloi_x.
      ENDIF.
    check if control key (STEUS) should not be selected.
      control_key_ok = cloi_x.
      IF no_entry_for_logsys IS INITIAL.
        READ TABLE t_steus WITH KEY
             steus = iooper-steus BINARY SEARCH.
        IF sy-subrc <> 0.
          CLEAR control_key_ok.
        ENDIF.
      ENDIF.
      CHECK NOT status_ok IS INITIAL.
      CHECK NOT control_key_ok IS INITIAL.
    GET iooper LATE.
      t_afvo-t_kbed = t_kbed[].
      t_afvo-t_afuv = t_afuv[].
      t_afvo-t_resb = t_resb[].
      APPEND t_afvo.
      IF jstv_x = cloi_x.
        t_objnr-objnr = iooper-objnr.
        APPEND t_objnr.
      ENDIF.
      CHECK kbed_x = cloi_x.
    GET ioopcap.
      MOVE-CORRESPONDING ioopcap TO t_kbed.
      APPEND t_kbed.
      CHECK resb_x = cloi_x.
    GET ioopcomp.
    do not transfer RESB entries with deletion flag
      CHECK ioopcomp-xloek IS INITIAL.
      MOVE-CORRESPONDING ioopcomp TO t_resb.
      APPEND t_resb.
      CHECK afuv_x = cloi_x.
    GET iosoper.
      CLEAR t_kbeu. REFRESH t_kbeu.
      MOVE-CORRESPONDING iosoper TO t_afuv.
    check if control key (STEUS) should not be selected.
      control_key_ok = cloi_x.
      IF no_entry_for_logsys IS INITIAL.
        READ TABLE t_steus WITH KEY
             steus = iooper-steus BINARY SEARCH.
        IF sy-subrc <> 0.
          CLEAR control_key_ok.
        ENDIF.
      ENDIF.
      CHECK NOT control_key_ok IS INITIAL.
    GET iosoper LATE.
      t_afuv-t_kbeu = t_kbeu[].
      APPEND t_afuv.
      IF jstv_x = cloi_x.
        t_objnr-objnr = iosoper-objnr.
        APPEND t_objnr.
      ENDIF.
      CHECK kbeu_x = cloi_x.
    GET iosocap.
      MOVE-CORRESPONDING iosocap TO t_kbeu.
      APPEND t_kbeu.
    *&   Event END-OF-SELECTION
    END-OF-SELECTION.
    *MOD-006
      DATA: itab_matnr TYPE zzzz_xref_data OCCURS 0.
      DATA: l_wa_matnr TYPE zzzz_xref_data.
      DATA: l_wa_matnr_value TYPE zzzz_xref_data-z_in_value.
      DATA: l_wa_afko TYPE  cloi_afko_struct.
    SELECT *
      FROM zzzz_xref_data
    APPENDING TABLE itab_matnr
    WHERE trans_id = 'ZELCUSMATLOOKUP' AND
           ( z_in_value IN s_matnr OR
             z_out_value IN s_matnr ).
    IF sy-subrc = 0.
         LOOP AT ITAB_MATNR INTO L_WA_MATNR.
           L_WA_MATNR_VALUE = L_WA_MATNR-z_OUT_VALUE.
           S_MATNR-LOW = L_WA_MATNR_VALUE.
           S_MATNR-SIGN = 'I'.
           S_MATNR-OPTION = 'EQ'.
           APPEND S_MATNR.
         ENDLOOP.
       DELETE itab_matnr WHERE NOT in_value IN s_emat.
       SORT itab_matnr BY out_value.
    ENDIF.
    CLEAR: l_wa_matnr.
    **MOD-010
    Data which is not in the material lookup table but in the T_AFKO.
      LOOP AT t_afko INTO l_wa_afko.
       READ TABLE S_MATNR WITH KEY LOW = L_WA_AFKO-MATNR BINARY SEARCH.
        READ TABLE itab_matnr INTO l_wa_matnr
            WITH KEY z_out_value = l_wa_afko-matnr BINARY SEARCH.
        IF sy-subrc NE 0.
          l_wa_afko-rgekz = 'X'.
          MODIFY t_afko FROM l_wa_afko  TRANSPORTING rgekz.
        ENDIF.
       IF NOT P_DATE IS INITIAL.
         IF T_AFKO-GSTRP < p_date OR
                 ( T_AFKO-GSTRP = p_date AND
                   T_AFKO-GSUZP > p_time ).
           L_WA_AFKO-RGEKZ = 'X'.
           MODIFY T_AFKO FROM L_WA_AFKO  TRANSPORTING RGEKZ.
         ENDIF.
       ENDIF.
      ENDLOOP.
    Delete  Data which is not in the material lookup
    table but in the T_AFKO.
    DELETE t_afko WHERE rgekz = 'X'.
    *MOD-010
    *MOD-006
    BEGIN OF INSERTION DS001
      DATA: l_wa_itab_date TYPE ty_date.
    Check whether the process order has been changed since the last
    run of the program
      CLEAR f_continue.
      IF NOT t_afko IS INITIAL.
        SELECT aufnr aedat aezeit erdat erfzeit loekz
        INTO TABLE itab_date
        FROM aufk
        FOR ALL ENTRIES IN t_afko
        WHERE aufnr = t_afko-aufnr.
        IF sy-subrc = 0.
          IF NOT p_date IS INITIAL.
            CLEAR: itab_date.
    Check whether the process order has been changed since the last
    run of the program
            LOOP AT itab_date INTO l_wa_itab_date.
    if the CHANGED date is greater than the last run or initial
              IF l_wa_itab_date-aedat GT p_date OR
                    ( l_wa_itab_date-aedat  IS INITIAL AND
                      l_wa_itab_date-aezeit IS INITIAL ).
    if the CHANGED date is initial check the creation date
                IF l_wa_itab_date-aedat IS INITIAL.
    if the creation date is greater than or equal to the date of the last
    run, if it is equal the creation time must be later or equal to the
    start time of the last run
                  IF l_wa_itab_date-erdat GT p_date OR
                     ( l_wa_itab_date-erdat EQ p_date AND
                       l_wa_itab_date-erfzeit GE p_time ).
                    f_continue = 'X'.
                  ELSE.
                    l_wa_itab_date-indicator = 'X'.
                MODIFY itab_date FROM l_wa_itab_date TRANSPORTING indicator.
                  ENDIF.
                ELSE.
                  f_continue = 'X'.
                ENDIF.
    if the CHANGED dat is not initial check it against the last run
              ELSEIF l_wa_itab_date-aedat  EQ p_date AND
                     l_wa_itab_date-aezeit GE p_time.
                f_continue ='X'.
              ELSE.
                l_wa_itab_date-indicator = 'X'.
                MODIFY itab_date FROM l_wa_itab_date TRANSPORTING indicator.
              ENDIF.
            ENDLOOP.
    *MOD-006
      ELSE.
         CLEAR: ITAB_DATE.
         LOOP AT ITAB_DATE INTO L_WA_ITAB_DATE.
    if the CHANGED date is greater than the last run or initial
           IF L_WA_ITAB_DATE-AEDAT GT P_RUNDT OR
                 ( L_WA_ITAB_DATE-aedat  is initial and
                   L_WA_ITAB_DATE-aezeit is initial ).
    if the CHANGED date is initial check the creation date
             if l_wa_itab_date-aedat is initial.
    if the creation date is greater than or equal to the date of the last
    run, if it is equal the creation time must be later or equal to the
    start time of the last run
               IF L_WA_ITAB_DATE-ERDAT GT P_RUNDT OR
                  ( L_WA_ITAB_DATE-ERDAT EQ P_RUNDT AND
                    L_WA_ITAB_DATE-ERFZEIT GE S_RUNTM-LOW OR
                    L_WA_ITAB_DATE-ERFZEIT LE S_RUNTM-HIGH ).
                 f_continue = 'X'.
               else.
                 l_wa_itab_date-indicator = 'X'.
                 MODIFY ITAB_DATE FROM L_WA_ITAB_DATE
                                   TRANSPORTING INDICATOR.
               endif.
             else.
               f_continue = 'X'.
             endif.
    if the CHANGED dat is not initial check it against the last run
           ELSEIF L_WA_ITAB_DATE-AEDAT  EQ P_RUNDT AND
                  L_WA_ITAB_DATE-AEZEIT GE S_RUNTM-LOW.
             f_continue ='X'.
           ELSE.
             l_wa_itab_date-indicator = 'X'.
             MODIFY ITAB_DATE FROM L_WA_ITAB_DATE
                                TRANSPORTING INDICATOR.
           endif.
         ENDLOOP.
    *MOD-006
          ENDIF.
        ENDIF.
      ENDIF.
    DELETE ITAB_DATE WHERE INDICATOR = 'X'.
    *MOD-006
      CLEAR: itab_date.
      IF s_rundt-high IS INITIAL AND NOT s_rundt IS INITIAL.
        s_rundt-high = sy-datum.
      ENDIF.
      LOOP AT itab_date INTO l_wa_itab_date.
        IF NOT s_rundt IS INITIAL.
    if the CHANGED date is greater than the last run or initial
          IF    ( l_wa_itab_date-aedat  IS INITIAL AND
                  l_wa_itab_date-aezeit IS INITIAL ).
    if the CHANGED date is initial check the creation date
            IF l_wa_itab_date-aedat IS INITIAL.
    if the creation date is greater than or equal to the date of the last
    run, if it is equal the creation time must be later or equal to the
    start time of the last run
              IF ( l_wa_itab_date-erdat GT s_rundt-low AND
                 l_wa_itab_date-erfzeit GT s_runtm-low ) AND
                 ( l_wa_itab_date-erdat LT s_rundt-high AND
                 l_wa_itab_date-erfzeit LT s_runtm-high ).
                f_continue = 'X'.
              ELSE.
                l_wa_itab_date-indicator = 'X'.
                MODIFY itab_date FROM l_wa_itab_date
                                  TRANSPORTING indicator.
              ENDIF.
            ELSE.
              f_continue = 'X'.
            ENDIF.
    if the CHANGED dat is not initial check it against the last run
          ELSEIF ( l_wa_itab_date-aedat  GE s_rundt-low AND
                  l_wa_itab_date-aezeit  GE s_runtm-low ) AND
                 ( l_wa_itab_date-aedat  LE s_rundt-high AND
                 l_wa_itab_date-aezeit LE s_runtm-high ).
            f_continue ='X'.
          ELSE.
            l_wa_itab_date-indicator = 'X'.
            MODIFY itab_date FROM l_wa_itab_date
                               TRANSPORTING indicator.
          ENDIF.
        ENDIF.
      ENDLOOP.
    DELETE itab_date WHERE indicator = 'X'.
    *MOD-006
    **MOD-006
    LOOP AT t_afko INTO l_wa_afko.
       READ TABLE itab_date INTO l_wa_itab_date
                WITH KEY aufnr = l_wa_afko-aufnr BINARY SEARCH.
       IF sy-subrc NE 0.
         l_wa_afko-rgekz = 'X'.
         MODIFY t_afko FROM l_wa_afko  TRANSPORTING rgekz.
       ENDIF.
    ENDLOOP.
    DELETE t_afko WHERE rgekz = 'X'.
    **MOD-006
    -> initialize logical data base to reduce memory consumption
      PERFORM ldb_process_init(sapdbioc)
        CHANGING
          lv_subrc.
    --> add information to the order structure that is not
        selected via logical database:
        - if AFVO-entry is a phase (phflg) --> fill field for
          corresponding operation number (PVZNR)
          The internal node number (aplzl) of the corresponding operation
          is in field PVZKN of the phase
        - relationship information: E1AFABL
          especially: select external numbers for the used
          internal numbers in the table AFAB
        - status information of the order header: E1JSTKL
        - status information of the operation: E1JSTVL
    --> Put matnr and ltrmi in the table t_afko
      SORT t_afko BY aufnr.
      LOOP AT help_afpo.
        READ TABLE t_afko WITH KEY aufnr = help_afpo-aufnr
          ASSIGNING -gltri = help_afpo-ltrmi.
        ENDIF.
      ENDLOOP.
    --> Select entries for order and operation status
      IF NOT t_objnr[] IS INITIAL.
        SELECT objnr stat FROM jest INTO TABLE t_jest2
          FOR ALL ENTRIES IN t_objnr
          WHERE objnr = t_objnr-objnr
          AND   inact <> 'X'.
      ENDIF.
    --> Select entries for relationships from afab for all orders
        into table t_afab_tmp
      SORT t_aufpl_aplzl_vornr BY aufpl aplzl.
      IF afab_x = cloi_x AND NOT t_aufpl_aufnr[] IS INITIAL.
      -> select afab data
        SELECT * FROM afab INTO TABLE t_afab_tmp
          FOR ALL ENTRIES IN t_aufpl_aufnr
          WHERE aufpl_vor = t_aufpl_aufnr-aufpl.
        SELECT * FROM afab APPENDING TABLE t_afab_tmp
          FOR ALL ENTRIES IN t_aufpl_aufnr
          WHERE aufpl_nch = t_aufpl_aufnr-aufpl.
        SORT t_afab_tmp
          BY aufpl_vor aplzl_vor aufpl_nch aplzl_nch aobar mimax.
        DELETE ADJACENT DUPLICATES FROM t_afab_tmp
          COMPARING aufpl_vor aplzl_vor aufpl_nch aplzl_nch aobar mimax.
      -> read external order numbers out of data base
        CLEAR t_aufpl. REFRESH t_aufpl.
        LOOP AT t_afab_tmp ASSIGNING -aufpl_nch.
          COLLECT t_aufpl.
        ENDLOOP.
        CLEAR t_aufpl_aufnr. REFRESH t_aufpl_aufnr.
        IF NOT t_aufpl[] IS INITIAL.
          SELECT aufpl aufnr FROM afko INTO TABLE t_aufpl_aufnr
            FOR ALL ENTRIES IN t_aufpl
            WHERE aufpl = t_aufpl-aufpl.
          SORT t_aufpl_aufnr BY aufpl.
        ENDIF.
      -> add order numbers to afab data
        LOOP AT t_afab_tmp ASSIGNING -aufnr_nch = t_aufpl_aufnr-aufnr.
          ENDIF.
        ENDLOOP.
      -> read operation numbers out of data base
        CLEAR t_aufpl_aplzl. REFRESH t_aufpl_aplzl.
        LOOP AT t_afab_tmp ASSIGNING -aplzl_nch.
          COLLECT t_aufpl_aplzl.
        ENDLOOP.
        IF NOT t_aufpl_aplzl[] IS INITIAL.
          SELECT aufpl aplzl vornr FROM afvc
            APPENDING TABLE t_aufpl_aplzl_vornr
            FOR ALL ENTRIES IN t_aufpl_aplzl
            WHERE aufpl = t_aufpl_aplzl-aufpl
              AND aplzl = t_aufpl_aplzl-aplzl.
          SORT t_aufpl_aplzl_vornr BY aufpl aplzl.
        ENDIF.
      -> add operation numbers to afab data
        LOOP AT t_afab_tmp ASSIGNING -vornr_nch = t_aufpl_aplzl_vornr-vornr.
          ENDIF.
        ENDLOOP.
      ENDIF.                               "afab_x
    --> fill AFAB (relationship information) and status information
      SORT t_aufpl_aufnr BY aufnr.
      LOOP AT t_afko ASSIGNING .
      -> fill order head status information
        IF jstk_x = cloi_x.
          CLEAR t_jstk. REFRESH t_jstk.
          LOOP AT t_jest2 INTO wa_tjest2 WHERE objnr = -t_jstk = t_jstk[].
        ENDIF.
      -> fill afab information
        IF afab_x = cloi_x.
          CLEAR t_aufpl_aufnr.
          READ TABLE t_aufpl_aufnr WITH KEY
            aufnr = -t_afab = t_afab[].
        ENDIF.
      -> fill operation and suboperation status information
        IF jstv_x = cloi_x OR afvo_x = cloi_x.
          LOOP AT .
            -> read status information of suboperation
              IF jstu_x = cloi_x.
                LOOP AT -t_jstu = t_jstu[].
                ENDLOOP.
              ENDIF.
            -> read status information of operation
              IF jstv_x = cloi_x.
                CLEAR t_jstv. REFRESH t_jstv.
                LOOP AT t_jest2 INTO wa_tjest2 WHERE objnr = -t_jstv = t_jstv[].
              ENDIF.
            -> Read operation for a phase
              IF NOT -pvznr = t_aufpl_aplzl_vornr-vornr.
                ENDIF.
              ENDIF.
            ENDLOOP.
          ENDLOOP.
        ENDIF.
      -> collect order numbers
        CLEAR wa_aufnrdone.
        wa_aufnrdone-low = -aufnr.
        APPEND wa_aufnrdone TO lt_aufnrdone.
      ENDLOOP.
    -> append collected order numbers to global table
      APPEND LINES OF lt_aufnrdone TO gt_aufnrdone.
      EXPORT gt_aufnrdone TO MEMORY ID 'LOIAUFNRTAB'.
    -> free large tables
      CLEAR t_jest2. REFRESH t_jest2.
      CLEAR t_afab_tmp. REFRESH t_afab_tmp.
      CLEAR t_aufpl. REFRESH t_aufpl.
      CLEAR t_aufpl_aufnr. REFRESH t_aufpl_aufnr.
      CLEAR t_aufpl_aplzl. REFRESH t_aufpl_aplzl.
      CLEAR t_aufpl_aplzl_vornr. REFRESH t_aufpl_aplzl_vornr.
    -> create idocs
      CALL FUNCTION 'CLOI_MASTERIDOC_CREATE_LOIPRO'
           EXPORTING
                opt_sys      = opt_sys
                message_type = mestyp
           TABLES
                order_data   = t_afko
           EXCEPTIONS
                OTHERS       = 1.
    -> export already selected order numbers via ranges tab to memory
      EXPORT t_aufnr_range_done TO MEMORY ID 'LOI002'.
    **MOD-006
    IMPORT created_masteridocs_pro FROM MEMORY ID 'YLOI001'.
    ycloidownlprot-end_date       = sy-datum.
    ycloidownlprot-end_time       = sy-uzeit.
    ycloidownlprot-idocs_selected = created_masteridocs_pro.
    ycloidownlprot-in_progress    = cloi_false.
    insert or update entry (dependant if entry already exists)
    MODIFY ycloidownlprot.
    COMMIT WORK.
    MESSAGE i967(z001) WITH created_masteridocs_pro.
    **MOD-006
    Update last run date and time
      IF p_update = 'X'.
        PERFORM update_last_run.
      ELSE.
      MESSAGE s000 WITH text-022.
        "Last Run Date and Last Run Time not updated
        LEAVE LIST-PROCESSING.
      ENDIF.
      INCLUDE rcordf01.
    *&      Form  validate_last_run_date_time
          text
    -->  p1        text
    <--  p2        text
    *FORM validate_last_run_date_time.
    IF p_date IS INITIAL OR
        p_time IS INITIAL.
       IF sy-batch IS INITIAL.
         MESSAGE s000 WITH text-017.
         "Last Run date & Last Run Time can not be blank
         LEAVE LIST-PROCESSING.
       ELSE.
         MESSAGE e000 WITH text-017.
         "Last Run date & Last Run Time can not be blank
       ENDIF.
    ENDIF.
    *ENDFORM.                    " validate_last_run_date_time
    *&      Form  update_last_run
          text
    -->  p1        text
    <--  p2        text
    FORM update_last_run.
      CONSTANTS:
            l_c_name    TYPE rvari_vnam  VALUE 'Z_PROC_DATE',
            l_c_name1   TYPE rvari_vnam  VALUE 'Z_PROC_TIME',
            l_c_type    TYPE rsscr_kind  VALUE 'P',
            l_c_numb    TYPE tvarv_numb  VALUE '0000'.
    Update last run date
      UPDATE tvarv SET low  = sy-datum
                 WHERE name = l_c_name AND
                       type = l_c_type AND
                       numb = l_c_numb.
      IF sy-subrc = 0.
        COMMIT WORK.
      ELSE.
        ROLLBACK WORK.
        g_run_date = text-015. "#EC
        "Updation of TVARV table failed for ZLAST_RUN_DATE. Update manually
      ENDIF.
    Update last run time
      UPDATE tvarv SET low  = sy-uzeit
                 WHERE name = l_c_name1 AND
                       type = l_c_type AND
                       numb = l_c_numb.
      IF sy-subrc = 0.
        COMMIT WORK.
      ELSE.
        ROLLBACK WORK.
        g_run_time = text-016. "#EC
        "Updation of TVARV table failed for ZLAST_RUN_TIME. Update manually
      ENDIF.
    ENDFORM.                    " update_last_run

Maybe you are looking for

  • Image does not update in loop with control

    Hi all, I am trying to make a data playback vi.  I have some data recorded, and images recorded from another vi saved onto my computer. I want to sync the data with the video, so we can tell what was happening visually when there is something interes

  • Asset posting in F-90

    < MODERATOR:  Message locked.  Please post this message in the [Asset Accounting forum|SAP ERP Financials  - Asset Accounting;. > Hi, Iam getting an error during the time of (AUC)asset posting in F-90.I have mentioned the error below Error :(Asset 90

  • JSF 1.2 h:InputText - requiredMessage

    Hi, I have a problem with requiredMessage property in h:InputText. When i put as a message some EL expresion nothing apperas. What can be the problem? This is a code of my page. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"     "http

  • Data binding with Multiple Filter

    Hi Experts, I am trying to do the data binding using filters with multiple values. ex: I am selecting the multiple values from list dialog and those i want to pass to odata service as a filters. name : abc                pqr I am looping on above and

  • When will iTunes match be available

    When will iTunes match be available