DSO - Step by Step

Embed Size (px)

Citation preview

  • 8/12/2019 DSO - Step by Step

    1/34

    DSO - Step by Step (Part 1 of 2) : Creation, Extraction, Transformation

    Note: This document applies to BW 7.x over traditional RDBMS, targeting beginners in BW space,

    providing them a quick step-by-step visual reference for creation, extraction, transformation, loading,

    activation and maintenance of a DSO. (If the images in this document are blurry/not clear, click on the

    image to open it in high resolution)

    DataStore Object (DSO) is used to store data at the most granular form, i.e. at document level. This data

    can be used for reporting as well as for passing on to other data targets like InfoCubes. Steps described

    in this document applies to the most commonly used type - Standard DSO. (These steps also apply to

    Write-Optimized DSOs, except the data activation step)

    This document is divided into 2 parts due to the length of the content.

    Part 1 - Creation, Extraction and Transformation Part 2 - Loading, Activation and Maintenance. (click hereto go to part 2)

    1. Creation & Configuration

    Load Data Warehouse Workbench (DWW) using transaction code RSA1

    Under modelingsection select InfoProvider. This will list all the InfoProviders in the right side of thescreen grouped by InfoAreas.

    http://scn.sap.com/docs/DOC-52581http://scn.sap.com/docs/DOC-52581http://scn.sap.com/docs/DOC-52581http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388636/1.2.pnghttp://scn.sap.com/docs/DOC-52581
  • 8/12/2019 DSO - Step by Step

    2/34

    Right-Click the InfoArea where the DSO needs to be created and select Create DataStore Objectoption

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388641/1.5.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388640/1.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388641/1.5.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388640/1.3.png
  • 8/12/2019 DSO - Step by Step

    3/34

    In the pop-up window, provide a Name (not more than 8 chars) and Description. You can seethe ObjectTypeset to DataStore Object. (You have the option to change this to other InfoProvider type.

    Be careful not to change the type). If you need to use a structure similar to an existing DSO, you can

    enter the Technical Name of that DSO in the Templatefield. After filling in the required field click

    the Createicon.

    In the Edit DataStore Object screen, under Settingssection you can specify various configurationsettings. Clickon the Edit Button ( ) to open a pop-up window where you can specify DSO type and

    Create SIDs option. Check the Set Quality Status to 'OK'option as this is required to activate the DSO

    data and make it available for reporting and loading it to other data targets.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-389962/edit+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388644/1.6.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-389962/edit+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388644/1.6.png
  • 8/12/2019 DSO - Step by Step

    4/34

    Under Key fieldsadd the fields that uniquely identify a record, and under Data fieldsadd the fields thatcarry information for this DSO. You can do so by right-clicking Key fields/Data fieldsand

    select InfoObject Direct Inputoption as shown below.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388646/1.8.a.1.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388645/1.7.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388646/1.8.a.1.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388645/1.7.png
  • 8/12/2019 DSO - Step by Step

    5/34

    In the Insert InfoObjectspop-up, type in the required list of InfoObjects for both Key fieldsand Datafields.

    Once all the required fields are added, Save(Ctrl+S), Check(Ctrl+F2 or ) and Activate(Ctrl+F3 or)the DSO. Once successfully activated, the status changes to Saved and Active and the final screen will

    be as shown below. The DSO is now ready for data to be loaded into it.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390033/activate+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390032/check+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388648/1.8.a.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388647/1.8.a.2.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390033/activate+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390032/check+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388648/1.8.a.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388647/1.8.a.2.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390033/activate+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390032/check+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388648/1.8.a.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388647/1.8.a.2.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390033/activate+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390032/check+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388648/1.8.a.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388647/1.8.a.2.png
  • 8/12/2019 DSO - Step by Step

    6/34

    2. Extraction

    2.1 Create a DataSource- DataSource is the staging area where a copy of the data from the source

    system(Flat file/SAP ERP/other DB) is stored in a flat table. It is also referred as persistent staging area,

    shortly PSA. Below are the steps to create and configure a DataSource.

    (To keep it simple and focus on ETL process, a .csv file is used as data source. Normally SAP ERP System

    will be the data source.)

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-388652/1.9.png
  • 8/12/2019 DSO - Step by Step

    7/34

    In DWW> Modelling >DataSources, select the Source System type to a Flat file system as shown below.

    List of DataSources will be displayed in the right pane grouped under Application Components. RightClick the Application Component where the DataSource needs to be created and selectCreate Data

    Source...option

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390044/2.1.1.png
  • 8/12/2019 DSO - Step by Step

    8/34

    In the Create DataSourcepop-up, provide the DataSource name, Source System name and the type ofData. Since the data to be loaded is transaction data we select Transaction Dataas DataSource Data

    Type. After filling in the required details, click the Create button ( ).

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390046/2.1.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390065/ok+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390045/2.1.2.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390046/2.1.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390065/ok+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390045/2.1.2.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390046/2.1.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390065/ok+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390045/2.1.2.png
  • 8/12/2019 DSO - Step by Step

    9/34

    Change DataSourcescreen opens up. In the General Info.tab fill in the short, medium and longdescription for the DataSource. Leave other data unchanged.

    In the Extractiontab, specify the .csv file path from which the data is to be extracted. Also specify otherdetails like Header Rows to be Ignoredand Data Formataccordingly as shown below. Leave the Delta

    Process options with the default value. Since source system is an .csv file, delta load is not possible, but

    only full upload.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390066/2.1.4.png
  • 8/12/2019 DSO - Step by Step

    10/34

  • 8/12/2019 DSO - Step by Step

    11/34

    The Fieldstab is where the structure of the PSA/DataSource is finalized. The proposed metadataappears here and it can be edited to suit the needs. You can enter the InfoObject name in the

    InfoObjects column to copy the defaults from that InfoObject's metadata definition. This will ensure the

    correct technical specifications for the fields proposed.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390086/2.1.6.png
  • 8/12/2019 DSO - Step by Step

    12/34

    The Previewtab allows you to see the data in PSA/DataSource format before actually loading the datainto BW system. Click on the Read Preview Databutton to preview the data.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390098/2.1.9.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390088/2.1.8.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390098/2.1.9.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390088/2.1.8.png
  • 8/12/2019 DSO - Step by Step

    13/34

    2.2 Create an InfoPackage - InfoPackage is a scheduler object in BW system, that extracts data from the

    source system and saves the copy in to PSA/DataSource. Below are the steps to create, configure and

    execute an InfoPackage.

    In DWW >Modeling > DataSources, locate the DataSource you have created. Right click the DataSourceand select Create infoPackage...option

    In the Create InfoPackagepop-up, provide the InfoPackage Description.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390099/2.2.1.png
  • 8/12/2019 DSO - Step by Step

    14/34

    Maintain InfoPackagescreen opens up. In the Data Selectiontab, you'll see the list of fields along withfiltering criteria used while extracting data from source system. Since we haven't configured any field in

    DataSource for filtering, the below screen lists none.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390101/2.2.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390100/2.2.2.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390101/2.2.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390100/2.2.2.png
  • 8/12/2019 DSO - Step by Step

    15/34

    Extractiontab has the data auto-populated from the Extraction tab in DataSource definition. This liststhe source file name, file type and format. The auto-populated data can be edited if required.

    Processingtab specifies how the extraction is processed by BW system and where it is stored. As shownbelow, select Only PSA. This enable to edit the data in PSA before it is loaded into a data target.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390102/2.2.4.png
  • 8/12/2019 DSO - Step by Step

    16/34

  • 8/12/2019 DSO - Step by Step

    17/34

    Scheduletab allows you to specify when to start the execution of extraction, either immediately or at ascheduled time. To follow this Illustration, choose Start Data load Immediatelyoption and click

    the Startbutton. This will now extract data from .csv file and load it into the DataSource/PSA table.

    Now click on the Monitoricon ( or F6) to check the status of data extraction. This opens upthe Monitor InfoPackagescreen which lists a variety of information related to the extraction like status,no. of records, time taken etc. The Details tab shows the extraction details broken into various steps as

    shown below. You can also click on PSA Maintenanceicon ( or Ctrl+F8) to view/edit the actual data

    loaded into PSA.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390121/PSA+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390112/monitor+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390111/2.2.7.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390121/PSA+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390112/monitor+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390111/2.2.7.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390121/PSA+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390112/monitor+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390111/2.2.7.png
  • 8/12/2019 DSO - Step by Step

    18/34

    3. Transformation

    3.1 Create a Transformation -Transformation object specifies the rules on how the source object fields

    should map to data target fields. There are multiple transformation options. For this illustration Direct

    Assignmentis used. Below are the steps to create a transformation.

    In DWW > Modeling > InfoProvider, locate & right click the DSO and select CreateTransformation...option

    http://scn.sap.com/servlet/JiveServlet/showImage/102-51495-1-390119/2.2.9.png
  • 8/12/2019 DSO - Step by Step

    19/34

    In the Create Transformationpop-up, specify the source and the target for the transformation. Sourcebeing the DataSource we just created and the target being the DSO. Then click the Continue button (

    ).

    http://scn.sap.com/servlet/JiveServlet/showImage/390130/ok+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390128/2.3.1.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390130/ok+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390128/2.3.1.png
  • 8/12/2019 DSO - Step by Step

    20/34

    Change Transformationscreen opens up. On the left is the source object and on the right is the targetobject for the transformation. BW system automatically matches the InfoObject fields. For those

    unmapped, click & drag the field from source and drop it on appropriate field at the target. The default

    transformation rule is Direct Assignment. This can be changed to required type by right clicking on the

    line and providing alternate options in the pop-up that opens.

    Now Save, Check( or Ctrl+F2) and Activate( or Ctrl+F3) the transformation.

    http://scn.sap.com/servlet/JiveServlet/showImage/390134/activate+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390133/check+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390132/2.3.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390129/2.3.2.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390134/activate+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390133/check+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390132/2.3.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390129/2.3.2.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390134/activate+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390133/check+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390132/2.3.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390129/2.3.2.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390134/activate+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390133/check+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390132/2.3.3.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/390129/2.3.2.png
  • 8/12/2019 DSO - Step by Step

    21/34

    This completes the Creation, Extraction and Transformation steps for a DSO.

    Click hereto go to Part 2 where Loading, Activation and Maintenance of a DSO are illustrated.

    4. Loading

    4.1 Create a Data Transfer Process(DTP) - DTP controls the movement of data within BW system. It can

    read data from PSA or a data target apply the transformation rules and load it to other data targets.

    Below are the steps to create, configure and execute a DTP.

    In DWW > Modeling > InfoProvider, locate and expand the DSO tree. Right click the Data TransferProcessfolder and select Create Data Transfer Process...option

    In the Create Data transfer Processpop-up, Specify the DataSource as source of the DTP and click theOK ( ) button.

    http://scn.sap.com/docs/DOC-52581http://scn.sap.com/docs/DOC-52581http://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391118/ok+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391057/2.4.1.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391118/ok+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391057/2.4.1.pnghttp://scn.sap.com/docs/DOC-52581
  • 8/12/2019 DSO - Step by Step

    22/34

  • 8/12/2019 DSO - Step by Step

    23/34

    In Updatetab, specify the error handling settings. Select Update Valid Records, No Reporting (RequestRed)option. This ensures that the erroneous records gets written to Error Stack and the only the valid

    records gets loaded into data target. But the entire set remains unavailable to reporting.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391124/2.4.3.png
  • 8/12/2019 DSO - Step by Step

    24/34

    Now Save, Check( or Ctrl+F2) and Activate( or Ctrl+F3) the DTP.

    In the Executetab, there are options to specify Processing Mode. Select Serial Extraction, ImmediateParallel Processingoption and click the Executebutton. Data gets processed asynchronously in a

    background process.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391178/activate+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391174/check+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391125/2.4.4.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391178/activate+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391174/check+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391125/2.4.4.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391178/activate+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391174/check+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391125/2.4.4.png
  • 8/12/2019 DSO - Step by Step

    25/34

    Click on the Monitor Icon ( ) to open the Monitor: Data Transfer Processpage. This will list thestatus, duration and break down of all the request processing steps.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391136/monitor+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391173/2.4.5.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391136/monitor+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391173/2.4.5.png
  • 8/12/2019 DSO - Step by Step

    26/34

    With this the data is loaded into the DSO. But the loaded data is stored in the Activation Queueand isnot available for reporting.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391137/2.4.6.png
  • 8/12/2019 DSO - Step by Step

    27/34

  • 8/12/2019 DSO - Step by Step

    28/34

    A pop-up windows opens and lists all the requests that are loaded but not yet activated in the DSO.Select the request that needs to be activated and click the Start button at the bottom of the pop-up.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391172/2.5.2.png
  • 8/12/2019 DSO - Step by Step

    29/34

    This will submit a data activation request that will be processed in background. To check the status ofactivation, go back and see the request row in Requeststab.

    Once the data gets activated, i.e. once the data gets moved from Activation Queue to Active Data tablewithin DSO, the data will be available for reporting and also for loading it into other data targets, usually

    InfoCubes.

    6. Maintenance

    6.1 Deleting Change Log data for Performance Improvement- As the DSO ages, the data in Change Log

    table piles up creating performance issues. So it is a good practice to free it up periodically. Below are

    the steps to delete data from Change Log table.

    Go to Manage InfoProviderScreen for the DSO In SAP GUI's menu bar, open EnvironmentMenu and select Delete Change Log Dataoption

    http://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391150/2.5.3.png
  • 8/12/2019 DSO - Step by Step

    30/34

    This opens Delete Change Log Datascreen where you can select what data should be deleted based onhow old the request is or when it was loaded. Enter the date and click the Startbutton to delete data

    before that date.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391263/6.2.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391261/6.1.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391263/6.2.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391261/6.1.png
  • 8/12/2019 DSO - Step by Step

    31/34

    6.2 Request Automation

    Go to Manage InfoProviderScreen for the DSO In SAP GUI's menu bar, open EnvironmentMenu and select Automatic Request Processingoption

    In the pop-up window that opens, you can enable/disable automatic setting status to OK andautomatically activating requests. Click on the Savebutton after making the changes.

    6.3 View DSO contents- At times there will be need to view the contents of DSO, be it, the activation

    queue table, active data table or the change log for administration and re-conciliation purposes. Below

    steps shows how to view the DSO contents.

    Go to Manage InfoProviderscreen for the DSO In the Contents tab, there are 3 buttons, one each to view activation queue, active data and change log

    tables. Click on any of the button to view its content.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391280/6.7.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391276/6.6.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391280/6.7.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391276/6.6.png
  • 8/12/2019 DSO - Step by Step

    32/34

    Click New Databutton to view the loaded but not yet activated data. This opens the DataBrowserscreen as shown below. Click on the Number of Entriesbutton to view the record count in the

    table.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391268/6.3.png
  • 8/12/2019 DSO - Step by Step

    33/34

    Click on the Executebutton ( ). Data Browser screen refreshes with the contents of DSO table asshown below.

    This concludes the 2 Part document illustrating the steps for Creation, Extraction, Transformation,

    Loading, Activation and Maintenance of a Standard DSO.

    http://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391275/6.5.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391274/execute+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391270/6.4.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391275/6.5.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391274/execute+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391270/6.4.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391275/6.5.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391274/execute+button.pnghttp://scn.sap.com/servlet/JiveServlet/showImage/102-52581-1-391270/6.4.png
  • 8/12/2019 DSO - Step by Step

    34/34