Help with Transformation routine

Hi,
I have a transformation routine from a DSO to a cube. The DSO contains two infoobjects ( Form, Brand ) which are mapped to infoobject Material in the cube. My requirement is that i need to populate the material number based on the brand and form available in the DSO. Can you please help me with the routine to be written for material ?
Regards
Snehith.

Hi,
perform below steps in start routine .
create one internal  as t_material having 3 fields
and then write select query as :
SELECT material
           brand
          form
     FROM /BIC/PGPUMATL
     INTO TABLE t_material
      FOR ALL ENTRIES IN SOURCE_PACKAGE
    WHERE brand EQ SOURCE_PACKAGE-brand
  form EQ SOURCE_PACKAGE-  form
In transformation routine of material:
write below logic :
FIELD-SYMBOLS  :<fs_ t_material >    TYPE y_ t_material .
*" Get material class value from table /bic/agpud009900
    READ TABLE  t_material
      ASSIGNING <fs_ t_material >
      WITH KEY brand = SOURCE_FIELDS-brand
                         form = SOURCE_FIELDS- form
    IF  sy-subrc EQ 0
    AND <fs_ t_material >  IS ASSIGNED.
      MOVE <fs_ t_material >material  TO RESULT.
    ENDIF.
Hope this helps you
Thanks .

Similar Messages

  • Help in transformation routine

    I have to put an indicator for delivery block in transformation routine.
    Logic: if headed delivery block 'LIFSK' is not blank, result is 'X'.
    Here is my code which is not working:
    IF SOURCE_FIELDS-LIFSK NE ''.
          RESULT = 'X'.
        ENDIF.
    But this code is not doing anything. I tired using 'test' function in transformation, it gives abap dump.
    What is the problem. Code is in right place in transformation routine.
    A similar code for item level block is working:
    More details:
    $$ begin of routine - insert your code only below this line        -
        ... "insert your code here
    *--  fill table "MONITOR" with values of structure "MONITOR_REC"
    *-   to make monitor entries
        ... "to cancel the update process
       raise exception type CX_RSROUT_ABORT.
        ... "to skip a record
       raise exception type CX_RSROUT_SKIP_RECORD.
        ... "to clear target fields
       raise exception type CX_RSROUT_SKIP_VAL.
        IF SOURCE_FIELDS-ZZ_LIFSP ne ''.
          RESULT = 'X'.
        endif.
    $$ end of routine - insert your code only before this line         -
      ENDMETHOD.                    "compute_ZDELIBLK
    Thanks
    Jeff
    Edited by: Jeff Edwards on Aug 17, 2008 10:34 PM

    No luck.
    Error analysis
        The following checkpoint group was used: "No checkpoint group specified"
        If in the ASSERT statement the addition FIELDS was used, you can find
        the content of the first 8 specified fields in the following overview:
        " (not used) "
        " (not used) "
        " (not used) "
        " (not used) "
        " (not used) "
        " (not used) "
        " (not used) "
        " (not used) "
    ST22 / ABAP Editor :
    *-- Get field name from source field with extern posit.
      READ TABLE i_t_seg_source ASSIGNING <ls_s_seg_source>
        WITH KEY segid = i_segid.
      ASSERT sy-subrc = 0.
      IF sy-subrc = 0.
        READ TABLE <ls_s_seg_source>-t_field ASSIGNING <ls_s_field>
          WITH KEY position = l_posit_source_ex.
    > ASSERT sy-subrc = 0.
      ENDIF.
    *--  r_s_parameter-param_id has to be set out side due to type inheritance of RuleStepMapping
      CONCATENATE '<' <ls_s_seg>-y__nm '>' INTO
      c_s_connector-s__nm.
      c_s_connector-f__nm = <ls_s_field>-fieldname.
    ENDMETHOD.

  • Help with a routine please

    Hi experts!
    I have a requirement and I need help with an abap routine.
    I'm uploading a table from de ECC where each record contains one key figure per fiscal period (wlt01, wlt02,...wlt16). I need to have in a dso a unique key figure (called zwlt for instance) and the 0fiscper infoobject filled with the corresponding period, that is, for each record of the table, I need 16 records in the DSO with zwlt = wltXX and the fiscper = fiscyear&0&XX.
    Any help please?
    Thanks in advance.

    there are multiple ways to handle this.
    one way is to use APD to unpivot the data.
    or else you can use the following sample code to derive what you want...this code might just hint at the way to proceed.
    TYPES:
      BEGIN OF tys_SC_1,
          wlt01           TYPE P LENGTH 8 DECIMALS 2,
          wlt02           TYPE P LENGTH 8 DECIMALS 2,
          wlt03           TYPE P LENGTH 8 DECIMALS 2,
          wlt04           TYPE P LENGTH 8 DECIMALS 2,
          wlt05           TYPE P LENGTH 8 DECIMALS 2,
          wlt06           TYPE P LENGTH 8 DECIMALS 2,
          wlt07           TYPE P LENGTH 8 DECIMALS 2,
          wlt08           TYPE P LENGTH 8 DECIMALS 2,
          wlt09           TYPE P LENGTH 8 DECIMALS 2,
          wlt10           TYPE P LENGTH 8 DECIMALS 2,
          wlt11           TYPE P LENGTH 8 DECIMALS 2,
          wlt12           TYPE P LENGTH 8 DECIMALS 2,
      END OF tys_SC_1.
    DATA: ls_type TYPE tys_SC_1,
          l_name TYPE string,
          l_count Type n length 2.
    FIELD-SYMBOLS:
                <fs_type> TYPE tys_SC_1,
                <result>  TYPE P .
    ls_type-wlt01 = '1.1'.
    ls_type-wlt02 = '2.2'.
    ls_type-wlt03 = '3.3'.
    ls_type-wlt04 = '4.4'.
    ls_type-wlt05 = '5.5'.
    ls_type-wlt06 = '6.6'.
    ls_type-wlt07 = '7.7'.
    ls_type-wlt08 = '8.8'.
    ls_type-wlt09 = '9.9'.
    ls_type-wlt10 = '10.1'.
    ls_type-wlt11 = '11.11'.
    ls_type-wlt12 = '12.12'.
    CLEAR:  l_count ,  l_name.
    l_count = '01'.
    ASSIGN ls_type TO <fs_type> .
    Write: / .
    DO 12 TIMES.
      clear: l_name.
      Concatenate 'wlt'  l_count into l_name.
      ASSIGN COMPONENT l_name  OF STRUCTURE  <fs_type> TO <result> .
      Write: / , l_name , ' = ' , <result>.
      l_count = l_count + 1 .
    ENDDO.
    hope it helps.
    Regards
    Ashwin

  • Help Need Transformation Routine

    Hi ALL,
        I want to write a routine in transformation which generates sequence number(Surrogate key) whenever i load the data in cube/ODS  ,since i don't any idea on ABAP Coding i can't proceed further. Can anybody help me in writing ABAP code generate sequence number in object based on the number of records.
    Please can anyone help me on this.
    Thanks & Regards
    Sameer Khan

    Hi Sameer
    Please let me know whether my understanding is correct or not
    You need to create a sequence number for each record of the cube
    In that case you can write a simple routine to generate a number and assign it to any infoobejct. After the last record of the data package just store the last value of sequence into a temp memoey location.
    and at the start of the routine just retrive the value of that memory loacation.
    Thanks & Regards
    Rohit

  • Help with start routine

    Hi,
    <b>I am new to ABAP.Can anyone help me wih this code</b>
    <b>The following code is in start routine</b>
    LOOP AT DATA_PACKAGE.
    SELECT /BIC/ZPACTGY /BIC/ZMPIINIR FROM /BIC/PZCONDTYP
               INTO IT_ZCONDTYP
               WHERE /BIC/ZCONDTYP = DATA_PACKAGE-/BIC/ZCONDTYP.
    IF ( IT_ZCONDTYP-/BIC/ZPACTGY Eq 'VVR12' OR
              IT_ZCONDTYP-/BIC/ZPACTGY Eq 'VVR13' or
              IT_ZCONDTYP-/BIC/ZPACTGY Eq 'VVR14' or
              IT_ZCONDTYP-/BIC/ZPACTGY Eq 'VVV10' or
              IT_ZCONDTYP-/BIC/ZMPIINIR Eq 'Y' or
              ( IT_ZCONDTYP-/Bic/zcondtyp ge 'Y100'
              and IT_ZCONDTYP-/Bic/zcondtyp le 'Y199' ) ).
         APPEND DATA_PACKAGE.
         ENDIF.
    endselect.
      ENDLOOP.
    <b>what I am trying to accomplish is I want my data which is in the internal table to satisfy the following conditions. and place it in internal table .(or whatever is correct)</b>
    IT_ZCONDTYP-/BIC/ZPACTGY Eq 'VVR12' OR
              IT_ZCONDTYP-/BIC/ZPACTGY Eq 'VVR13' or
              IT_ZCONDTYP-/BIC/ZPACTGY Eq 'VVR14' or
              IT_ZCONDTYP-/BIC/ZPACTGY Eq 'VVV10' or
              IT_ZCONDTYP-/BIC/ZMPIINIR Eq 'Y' or
              ( IT_ZCONDTYP-/Bic/zcondtyp ge 'Y100'
              and IT_ZCONDTYP-/Bic/zcondtyp le 'Y199' ) ).
    <b>and read this from another transfer routine</b>
    CLEAR RESULT.
    READ TABLE IT_ZCONDTYP WITH KEY
    /BIC/ZCONDTYP = COMM_STRUCTURE-/BIC/ZCONDTYP
          BINARY SEARCH.
    IF SY-SUBRC EQ 0.
      RESULT = IT_ZCONDTYP-/BIC/ZCONDTYP.
    ENDIF.
    <b>This is mostly related to BW.So if someone can give their opinion on how to achieve this I will be very grateful.</b>
    thanks,
    Kal

    hi Kal,
    you have to specify what are you going to add to the datapackage internal table (before the append data_package statement).
    hope this helps.
    LOOP AT DATA_PACKAGE.
    SELECT /BIC/ZPACTGY /BIC/ZMPIINIR FROM /BIC/PZCONDTYP
    INTO IT_ZCONDTYP
    WHERE /BIC/ZCONDTYP = DATA_PACKAGE-/BIC/ZCONDTYP.
    IF ( IT_ZCONDTYP-/BIC/ZPACTGY Eq 'VVR12' OR
    IT_ZCONDTYP-/BIC/ZPACTGY Eq 'VVR13' or
    IT_ZCONDTYP-/BIC/ZPACTGY Eq 'VVR14' or
    IT_ZCONDTYP-/BIC/ZPACTGY Eq 'VVV10' or
    IT_ZCONDTYP-/BIC/ZMPIINIR Eq 'Y' or
    ( IT_ZCONDTYP-/Bic/zcondtyp ge 'Y100'
    and IT_ZCONDTYP-/Bic/zcondtyp le 'Y199' ) ).
    <i>DATA_PACKAGE-... = ....
    DATA_PACKAGE-... = ....
    DATA_PACKAGE-... = ....</i>
    APPEND DATA_PACKAGE.
    ENDIF.
    endselect.
    ENDLOOP.

  • Problem with Transformation Routine

    Hi all
    I am using a DSO 0FIGL_O02 taking data from the DataSource 0FI_GL_4 . I have a field 0Customer to the DSO & for that i´m taking data from the another DSO ZPCA_EC3 .
    The folllowing is the Tranformation Routine i have tried
    Routine 1,
    Data : zcustomer type /BIC/AZPCA_EC300-CUSTOMER.
    select single customer
           from  /BIC/AZPCA_EC300
           into  ZCUSTOMER
           where AC_DOC_NO = SOURCE_FIELDS-BELNR.
         RESULT = zcustomer.
    Routine 2.
    Data : zcustomer type /BIC/AZPCA_EC300-CUSTOMER.
    select single customer
           from  /BIC/AZPCA_EC300
           into  ZCUSTOMER
           where AC_DOC_NO = SOURCE_FIELDS-BELNR
            and  COMP_CODE = SOURCE_FIELDS-bukrs
            and FISCYEAR  = SOURCE_FIELDS-gjahr.
        RESULT = zcustomer.
    I dont get any errors for this Routine , But when i run the DTP it is going on Running & Running for hours, with no results , But again no errors also.
    What could be the problem  ?
    Could anyone help me write a better routine .here is my requirement
    I want to pick up 0Customer field data from ZPCA_EC3 based on 0AC_DOC_NO in both ZPCA_EC3 & 0FI_GL_4 DataSource.
    Regards
    Ramesh

    Hi,
    well I don't know the key of your ods. But the first check would be to use fields in the where clause which are in the key or a additional index. Another option might be to select the data for the complete data package at once into a internal table and access the internal table in the routine. May be you can also do the whole thing in the start routine.
    regards
    Siggi

  • Need help with transfer routine.

    I am doing this enhancement in BW 3.5 version.
    There is an object in ODS - > ZPATHNM (Pathname)
    It gets data from ZPTDIR object.
    Now, 0MATERIAL infoobject has text data. For PATH type materials it has descriptions like pt/dat/fafg.2.0 , pt/dat/ovg.2c ... so on.
    The content after pt/dat/ for example fafq.2.0, ovg.2c is available in ODS object ZPATHNM (Pathname)
    Since I have to extract PATH material numbers. So I created another object ZPATHMAT and mapping it to ZPTDIR.
    I have to write a transfer routine when the 0MATERIAL text description had description beginning with pt/dat/ and the text after pt/dat/ is equal to data in ZPATHNM. i should get material number in ZPATHMAT.
    This is the transfer routine, I have written between ZPATHMAT  and ZPTDIR . This is working fine.
    Data : ZDIRNAM type String,
                ZCONT1 type string,
                ZCONT2 type string,
                ZMATERIAL(18) type C.
    ZDIRNAM = TRAN_STRUCTURE-ZPTDIR.
    IF ZDIRNAM is not Initial.
    Concatenate 'pt/dat/' ZDIRNAM into ZCONT1.
      Select single MATERIAL
        into ZMATERIAL from /BI0/TMATERIAL
    where TXTMD = ZCONT1.
    RESULT = ZMATERIAL.
      ENDIF.
    Now there is another requirement, where I have to create one more object, ZPATHDES. This object should get Material description for path type materials from 0PROD_HIER text table.
    This object, 0PROD_HIER is an attribute of 0MATERIAL.
    So the logic to get the material description into ZPATHDES, is when the material number in 0MATERIAL is equal to material number in  ZPATHMAT (generated from above routine), I should get description (TXTMD) from text table of 0PROD_HIER (/BI0/TPROD_HIER) into this ZPATHDES object.
    I able not to connect this logic in the code and it is throwing errors.
    I need help in coding.
    Thanks.

    Very hard to understand the logic in a thread. Can you please write your code, which is throwing errors? May be that will help us.
    Regards
    amandeep sharma

  • Help with ABAP Routine

    Hello All!
    I am getting data from Oracle into BW. One of the tables has 7 Objects. I am creating Info Objects as data targets and using the update rules to map the description of each of the object. For example:
    Zip Code (With master data and no text)            State    (With no master data but with text- 0TXTSH)
    Country  (With no master data but with text-0TXTMD)
    I am able to to load this fine as there are only two objects with description. The problem is when I have 6 objects with description and I can only map 3 of them to 0txtsh, 0txtmd,and 0txtlg.
    How do I write the routine so that I can map all the descriptions of respective objects to 0TXTMD.
    Please suggest.
    Thanks for everybody's time.

    You don't necessarily have to use the 0TXT* objects as source. You could add your own objects (e.g. CTXT*) to the InfoSource and map these to the texts for the different InfoObjects correspondingly.
    If for some reason you don't want to do that you could still create 6 different DataSources (reading from the same table) and do all the mapping independently (which is a worse solution compared to the above but still possible.)
    Regards, Klaus

  • Need help with SCHECK routine in RFFOUS_C(it produces an extra page!)

    Hello Experts,
    I noticed that in one part of the routine SCHECK which can be found in standard program RFFOUS_C, there
    is a code that for EVERY END of a house bank, it calls again the window 'CHECK' and element 540. Now,
    this creates an extra page which I do not need. Also, they wouldn't let me customize the standard program
    since it is being used by many companies. I tried commenting the element but it produces an error.
    So for example I only have 3 payment documents, it should produce only 3 pages. I have checked the line items
    and they are not enough to trigger an overflow.
    Below is the code which causes an extra page:
    *-- Ende der Hausbank --------------------------------------------------
    *-- end of house bank --------------------------------------------------
        AT END OF reguh-ubnkl.
          IF cnt_formulare NE 0.           "Formularabschluß erforderlich
                                           "summary necessary
    *       close last check
            CALL FUNCTION 'CLOSE_FORM'
                 IMPORTING RESULT = itcpp.
            IF itcpp-tdspoolid NE 0.
              CLEAR tab_ausgabe.
              tab_ausgabe-name    = t042z-text1.
              tab_ausgabe-dataset = itcpp-tddataset.
              tab_ausgabe-spoolnr = itcpp-tdspoolid.
              tab_ausgabe-immed   = par_sofz.
              COLLECT tab_ausgabe.
            ENDIF.
            CLEAR flg_druckmodus.
            IF hlp_laufk NE '*'            "kein Onlinedruck
                                           "no online check print
              AND par_nosu EQ space.       "Formularabschluß gewünscht
                                           "summary requested
    *         Formular für den Abschluß starten
    *         start form for summary
              SET COUNTRY space.
              IMPORT itcpo FROM MEMORY ID 'RFFORI01_ITCPO'.
              itcpo-tdnewid = space.
              CALL FUNCTION 'OPEN_FORM'
                   EXPORTING
                        form     = t042e-zforn
                        device   = 'PRINTER'
                        language = t001-spras
                        options  = itcpo
                        dialog   = space.
              CALL FUNCTION 'START_FORM'
                   EXPORTING
                        startpage = 'LAST'
                        language  = t001-spras.
    *         Vornumerierte Schecks: letzte Schecknummer ermitteln
    *         prenumbered checks: compute last check number
              IF flg_schecknum EQ 1.
                PERFORM schecknummer_ermitteln USING 3.
              ENDIF.
    *         Ausgabe des Formularabschlusses
    *         print summary
              CALL FUNCTION 'WRITE_FORM'
                   EXPORTING
                        window = 'SUMMARY'
                   EXCEPTIONS
                        window = 1.
              IF sy-subrc EQ 1.
                err_element-fname = t042e-zforn.
                err_element-fenst = 'SUMMARY'.
                err_element-elemt = space.
                err_element-text  = space.
                COLLECT err_element.
              ENDIF.
    *         Fenster Scheck, Element Entwertet
    *         window check, element voided check
              CALL FUNCTION 'WRITE_FORM'               "<-------IT CALLS AGAIN THE CHECK WINDOW SO
                   EXPORTING                         "ANOTHER PAGE IS CREATED WHICH I DO NOT NEED
                        window  = 'CHECK'
                        element = '540'
                   EXCEPTIONS
                        window  = 1        "Fehler bereits oben gemerkt
                        element = 2.       "error already noted
    *         Formular für den Abschluß beenden
    *         end form for summary
              CALL FUNCTION 'END_FORM'
                   IMPORTING
                        RESULT = itcpp.
              IF itcpp-tdpages EQ 0.       "Print via RDI
                itcpp-tdpages = 1.
              ENDIF.
              cnt_seiten = itcpp-tdpages.  "Für vornumerierte Schecks
                                           "For prenumbered checks
              IF flg_schecknum EQ 1 AND cnt_seiten GT 0.
                PERFORM scheckinfo_speichern USING 3.
              ENDIF.
    *         Abschluß des Formulars
    *         close form
              CALL FUNCTION 'CLOSE_FORM'
                   IMPORTING
                        RESULT = itcpp.
              IF itcpp-tdspoolid NE 0.
                CLEAR tab_ausgabe.
                tab_ausgabe-name    = t042z-text1.
                tab_ausgabe-dataset = itcpp-tddataset.
                tab_ausgabe-spoolnr = itcpp-tdspoolid.
                tab_ausgabe-immed   = par_sofz.
                COLLECT tab_ausgabe.
              ENDIF.
            ENDIF.
            IF NOT itcpp-tdspoolid IS INITIAL.
              CALL FUNCTION 'RSPO_FINAL_SPOOLJOB'
                   EXPORTING
                        rqident = itcpp-tdspoolid
                        set     = 'X'
                        force   = 'X'
                   EXCEPTIONS
                        OTHERS  = 4.
              IF sy-subrc NE 0.
                MOVE-CORRESPONDING syst TO fimsg.
                PERFORM message USING fimsg-msgno.
              ENDIF.
            ENDIF.
          ENDIF.
        ENDAT.

    I guess, with out customizing the driver program your issue will not be solved.
    Don't worry, even if you customized your driver program it will not effect othr companies that are using it.. since check printing program configutation is done at company code level.
    For more information on config of check printing program visit transaction code FBZP.
    Regards,
    SaiRam

  • Help With Transformation of File Adapter to Apps Adapter

    Hi Guys
    Please can you try and point me in the right direction.
    I have a requirement which takes a flat file and imports it into AP in apps..
    THe flat file has the same type of row (simple file) with a format as such
    Supplier Name, Supplier Number, Invoice Num, Invoice Desc, Amount
    SupplA, 1234,09876,Line1,10
    SupplA, 1234,09876,Line2,20
    SupplB, 4567,65445,Line1,10
    AS you can see the file duplicates The header information on each line.
    Then in AP we have 2 Inteface Tables, Headers and Lines. I need to know how to only insert one row into the header and multiple rows into the lines.
    I am fine with the lines side, its the header record i am confused about?
    How does one address this? Do you somehow ignore duplicates for the Header? Or do you somehow Collate the information so that it only posts once into header?
    Please can you assits.
    Thanks

    also if i drag a if onto the target the follwing is consfusing
    you drag the if statement and link the source att (ie suppname) to the if statement around the (suppname field) on the target.
    but i am unable to do any logic on that if statement.. how do i specify the condition?
    would i have to do it in the source/
    so i wold have to modify this slightly
    <xsl:if test="imp1:SupplierName">
    <ns1:supplier-name/>
    </xsl:if>
    THIS is the whole XSL incase
    <?xml version="1.0" encoding="UTF-8" ?>
    <?oracle-xsl-mapper
    <!-- SPECIFICATION OF MAP SOURCES AND TARGETS, DO NOT MODIFY. -->
    <mapSources>
    <source type="WSDL">
    <schema location="../ReadInvoicFile.wsdl"/>
    <rootElement name="InoviceInfo" namespace="http://TargetNamespace.com/ReadInvoicFile"/>
    </source>
    </mapSources>
    <mapTargets>
    <target type="WSDL">
    <schema location="../WriteXMLFIle.wsdl"/>
    <rootElement name="invoice" namespace="http://www.example.org"/>
    </target>
    </mapTargets>
    <!-- GENERATED BY ORACLE XSL MAPPER 11.1.1.2.0(build 091103.1205.1216) AT [SAT MAY 01 08:56:12 CAT 2010]. -->
    ?>
    <xsl:stylesheet version="1.0"
    xmlns:xpath20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20"
    xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:imp1="http://TargetNamespace.com/ReadInvoicFile"
    xmlns:mhdr="http://www.oracle.com/XSL/Transform/java/oracle.tip.mediator.service.common.functions.MediatorExtnFunction"
    xmlns:oraext="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:tns="http://xmlns.oracle.com/pcbpel/adapter/file/R2iFileAdapterWS/R2iFileAdapterProject/ReadInvoicFile"
    xmlns:ns1="http://www.example.org"
    xmlns:dvm="http://www.oracle.com/XSL/Transform/java/oracle.tip.dvm.LookupValue"
    xmlns:hwf="http://xmlns.oracle.com/bpel/workflow/xpath"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:med="http://schemas.oracle.com/mediator/xpath"
    xmlns:ids="http://xmlns.oracle.com/bpel/services/IdentityService/xpath"
    xmlns:xdk="http://schemas.oracle.com/bpel/extension/xpath/function/xdk"
    xmlns:xref="http://www.oracle.com/XSL/Transform/java/oracle.tip.xref.xpath.XRefXPathFunctions"
    xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:ns0="http://xmlns.oracle.com/pcbpel/adapter/file/R2iFileAdapterWS/R2iFileAdapterProject/WriteXMLFIle"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:ora="http://schemas.oracle.com/xpath/extension"
    xmlns:socket="http://www.oracle.com/XSL/Transform/java/oracle.tip.adapter.socket.ProtocolTranslator"
    xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap"
    exclude-result-prefixes="xsi xsl imp1 tns plt xsd wsdl ns1 ns0 xpath20 bpws mhdr oraext dvm hwf med ids xdk xref ora socket ldap">
    <xsl:template match="/">
    <ns1:invoice>
    <xsl:for-each select="/imp1:InoviceInfo/imp1:Invoices">
    <ns1:invoice-header>
    <xsl:if test="imp1:SupplierName">
    <ns1:supplier-name/>
    </xsl:if>
    <xsl:if test="imp1:SupplierNumber">
    <ns1:supplier-number/>
    </xsl:if>
    <xsl:if test="imp1:SupplierSite">
    <ns1:supplier-site/>
    </xsl:if>
    <xsl:if test="imp1:InvoiceDate">
    <ns1:invoice-date/>
    </xsl:if>
    <ns1:invoice-lines>
    <ns1:invoice-line-desc>
    <xsl:value-of select="imp1:DistDescription"/>
    </ns1:invoice-line-desc>
    <ns1:invoice-line-amount>
    <xsl:value-of select="imp1:Amount"/>
    </ns1:invoice-line-amount>
    <ns1:tax-code>
    <xsl:value-of select="imp1:TaxCode"/>
    </ns1:tax-code>
    <ns1:account>
    <xsl:value-of select="imp1:Account"/>
    </ns1:account>
    </ns1:invoice-lines>
    </ns1:invoice-header>
    </xsl:for-each>
    </ns1:invoice>
    </xsl:template>
    </xsl:stylesheet>

  • Help with Update Routines

    Hello!
    I'm quite new to writing Update routines & need help regarding the same.
    I need to write some Update routines for Time Characteristics.
    Here is some info:
    (1) Period to analyze (Custom Char) is in Cal Month/Year (ex:01/2007)
          -- Map 01/2007 to Fiscal Pd/year (007/2006)
    (2) Map Fiscal Pd/year (007/2006) to Planning period (ZDOT_FISCPER -->New Char).
    Planning period (ZDOT_FISCPER) periods are as follows:
    July – Oct      Pd 1
    Nov – Mar      Pd 2
    April – June   Pd 3
    So, Fiscal Pd/year of 007/2006 will be Planning period 02/2006.
    Please advise on how to go about this. Any code for these updates will be of great help.
    Thanks!

    Roberto,
    Appreciate your response. I got a clarification done now, The PERIO is Cal Month/Year. So my Question (1) has an answer now )
    Coming to Question (2):
    Ranges for ZDOR_FISCPER(Planning Period) ranges to Fiscal Period.
    I'm thinking, from the result of (1) which is Fiscal year/period ((lets ignore the year(since it is mapped to Fiscal year(GJAHR) always)), can we do this:
    Fisc pd                  Planning Period
    001-004                               1
    005-009                               2
    010-012                               3
    You think this would work, any clue how to go about this?
    Thanks Again!

  • Newbie help with 'transforming'

    Please bear with me.
    I've just bought Final Cut Express (last Sunday), having been used to video editing on a PC.
    I'm doing a project where I need to crop an image, and for that crop to fill the screen ...I did it with a movie editing programme on a PC and I'm trying to find out how to do it on my imac...This is what I am trying to do:
    http://stuhughes.com/T1.mov
    If anyone can direct me to a tutorial on this I would be grateful.
    I also have just got Visual Quick Start Final Cut Express book but haven't yet been able to find the info in that.

    See if this gets you started
    http://www.fcpbook.com/MotionControl_inFCE.html

  • Need help with transforming abap to xml doc!!

    Abap To XML
    Posted: Aug 18, 2005 11:31 AM        Reply      E-mail this post 
    I was able to transfer xml data from abap internal tables to a string.
    Here is the content of the string:
    <?xml version="1.0" encoding="iso-8859-1"?>
    <asx:abap version="1.0" xmlns:asx="http://www.sap.com/abapxml">
    <asx:values>
    <DATA>
    <item>
    <UOM1 />
    <UOM2>L</UOM2>
    <GL_PR_SEG />
    <RECORDMODE>A</RECORDMODE>
    </item>
    </DATA>
    </asx:values>
    </asx:abap>
    Now my goal is to strip out a couple of tags out of that string directly using xslt.
    Do you know of any way i could take out the <asx:abap> and <asx:values> tags using an xslt program. I'd like to be able to strip them out directly from the string itself.

    Hi there,
    Unfortunately this is a bit outside the scope of what ExportPDF is designed for.  You may be able to convert your document to a Word file and, as long as you didn't write over any of the printed text on the document, make your edits there to remove your writing  That said, it sounds like your best bet would be to scan the document to an image format, then use a photo-editing application, such as Photoshop Elements to touch up and remove your hand-written notes.
    Please let us know if you have any questions.
    -David

  • Transformation Routine Help

    Hello Guys,
    I need your help in transformation routine.
    I have  source fields like 0DOC_NO(Sales Document no), 0CREATEDON(Created on), 0DLV_STS (Delivery status), 0DLVQLESC (Delivery Date Acc to scheduline date). i have 4 keyfigures like Late Incomplete (ZLI), Late Complete (ZLC), Ontime Complete (ZOC), Ontime In Complete (ZOI). i want to count no of sales order as ZLI, ZLC, ZOC, ZOI.
    I  have four conditions which i have to write for each keyfigures with above source fields in transformation routine.
    1) For Late Incomplete : -  if (0DLV_STS nt Eq C) and (0DLVQLSEC >0) then add1
    2) For Late Complete  : -  if (0DLV_STS  Eq C) and (0DLVQLSEC >0) then add1
    3) For On-Time Complete :- if (0DLV_STS  Eq C) and (0DLVQLSEC =0) then add1
    4) For On-TIme Incomplete :- if (0DLV_STS nt Eq C) and (0DLVQLSEC >0) then add1
    Can anyone tell me how to write it ?
    Thanks in advance
    Regards,
    Komik Shah
    Edited by: komik shah on Nov 14, 2009 1:24 AM

    Hi,
    Try this code...
    For Late Incomplete
    IF ( SOURCEFIELD-0DLV_STS NE 'C' ) AND ( SOURCEFIELD-0DLVQLSEC GE '0' ).
    IF ( SOURCEPACKAGE IS INITAL ).
    RESULT = 1.
    ELSE.
    RESULT = RESULT + 1.
    ENDIF.
    For Late Complete
    IF ( SOURCEFIELD-0DLV_STS EQ 'C' ) AND ( SOURCEFIELD-0DLVQLSEC GE '0' ).
    IF ( SOURCEPACKAGE IS INITAL ).
    RESULT = 1.
    ELSE.
    RESULT = RESULT + 1.
    ENDIF.
    For On-Time Complete
    IF ( SOURCEFIELD-0DLV_STS EQ 'C' ) AND ( SOURCEFIELD-0DLVQLSEC EQ '0' ).
    IF ( SOURCEPACKAGE IS INITAL ).
    RESULT = 1.
    ELSE.
    RESULT = RESULT + 1.
    ENDIF.
    For On-TIme Incomplete
    IF ( SOURCEFIELD-0DLV_STS NE 'C' ) AND ( SOURCEFIELD-0DLVQLSEC GE '0' ).
    IF ( SOURCEPACKAGE IS INITAL ).
    RESULT = 1.
    ELSE.
    RESULT = RESULT + 1.
    ENDIF.

  • Need help with XML transformation

    I am not sure this is the right place for this. But i will try it here. I am very troubled with my XSLT. Trying to transform a text Coupon which has the following html for it. So,
    _1. INPUT is:_
    <html>
    <head>
    </head>
    <body>
    <p>
    This coupon is for a good guy whose first name is :
    </p>
    <p>
    </p>
    <p align="center">
    Sadd
    </p>
    <p align="center">
    </p>
    <p align="right">
    <b>also</b> whose <var>full_name</var> is Sadd Hossain
    </p>
    <p align="left">
    </p>
    <p align="left">
    He is a <font size="3">software </font><font size="4">engineer for</font><font size="5">
    S&H</font>
    </p>
    </body>
    </html>
    *2. output needed  is:*
    <?xml version="1.0" encoding="UTF-8"?>
    <POSMESSAGE>
    <TextMSG >
    This coupon is for a good guy whose first name is :
    </TextMSG>
    <TextMSG >
    </TextMSG>
    <TextMSG align="center">
    <emph>SADD</emph>
    </TextMSG>
    <TextMSG >
    </TextMSG>
    <TextMSG align="right" >
    also whose full_name is Sadd Hossain
    </TextMSG>
    <TextMSG>
    </TextMSG>
    <TextMSG align="left" >
    He is a software engineer
    for S&H
    </TextMSG>
    </POSMESSAGE>
    *3. XSLT for this*
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:output method="xml"/>
    <xsl:template match="body">
    <POSMESSAGE>
    <xsl:for-each select="p">
    <TextMSG>
    <!--xsl:if test="not[@align='']"-->
    <xsl:attribute name="align"><xsl:value-of select="@align"/></xsl:attribute>
    <!--/xsl:if-->
    <xsl:attribute name="font"><xsl:value-of select="@size"/></xsl:attribute>
    <xsl:value-of select="."/>
    </TextMSG>
    <xsl:for-each select="b">
    <emph>
    <xsl:value-of select="."/>
    </emph>
    </xsl:for-each>
    </xsl:for-each>
    </POSMESSAGE>
    </xsl:template>
    </xsl:stylesheet>
    *4: the above xslt generating this output*
    <?xml version="1.0" encoding="UTF-8"?>
    <POSMESSAGE><TextMSG align="" font="">
    This coupon is for a good guy whose first name is :
    </TextMSG><TextMSG align="" font="">
    </TextMSG><TextMSG align="center" font="">
    SADD
    </TextMSG><TextMSG align="center" font="">
    </TextMSG><TextMSG align="right" font="">
    also whose full_name is Sadd Hossain
    </TextMSG><TextMSG align="left" font="">
    </TextMSG><TextMSG align="left" font="">
    He is a software engineer
    for S&H
    </
    *5: Need help with this. what should my xslt look like to get the desired output???????????????*
    any help or direction will be very much appreciated. Thank you_

    I have below suggestions:
    1. Please use code option given in message editor toolbar for posting any formatted content like XML, Java code snippet etc.
    2. replace & in your source XML with _& a m p ;_ (Without spaces, I have put spaces to make it visible here).
    3. I have modified your XSLT according output XML you have given. I am not sure what you want to do with some elements like <b>, <font>, <var> etc. change below XSLT as you require for these elements.
    Modified XSLT:
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
            <xsl:output method="xml"/>
         <xsl:template match="body">
              <POSMESSAGE>
                   <xsl:for-each select="p">
                        <TextMSG>
                             <xsl:if test=". != ''">
                                  <xsl:for-each select="@align">
                                       <xsl:attribute name="align">
                                            <xsl:value-of select="."></xsl:value-of>
                                       </xsl:attribute>
                                  </xsl:for-each>
                                  <xsl:value-of select="."/>
                             </xsl:if>
                        </TextMSG>
                   </xsl:for-each>
              </POSMESSAGE>
         </xsl:template>
    </xsl:stylesheet>
    OUTPUT:
    <?xml version="1.0"?>
    <POSMESSAGE>
         <TextMSG>This coupon is for a good guy whose first name is :</TextMSG>
         <TextMSG/>
         <TextMSG align="center">Sadd</TextMSG>
         <TextMSG/>
         <TextMSG align="right">alsowhose full_name is Sadd Hossain</TextMSG>
         <TextMSG/>
         <TextMSG align="left">He is a softwareengineer forS&H</TextMSG>
    </POSMESSAGE>

Maybe you are looking for

  • IBook doesn't boot

    My iBook (1.2Ghz, late 2004) doesn't boot anymore since yesterday. I treid to reset the battery (by using it until empty, and recharging it) but when my iBook shut dow (when the battery was empty) it didn't boot anymore. I tried: -to zap the PRAM (op

  • I had a stolen macbook pro 15 "

    I had a stolen macbook pro 15 "MD546LL/A S/N: C0******24T. Please help me find it! It is very important to me, my 1.5 year of heavy labour! <Edited by Host>

  • Using VIDBOX NW03 (from Honest Technology) with Adobe Premiere Elements 3.02

    Can I find a driver for using the Honest Technology 's USB VIDBOX NW03 with Adobe Premiere video software? Because, the driver I've found on the installation CD is only for using the HT VIDBOX NW03 with VHS to DVD 3.0 Deluxe software. Naturally, I tr

  • How do I avoid the "can't save to disk" notice when updating LION?

    I've tried to update Lion 3 times (through Software Update) and after 2 hours of downloading it gives me a notice that it can't "save to disk."  I have 80 gigs available on my harddrive so I don't know what I'm doing wrong.  Please HELP!

  • Can't connect to other users

    Hi. I am having trouble seeing other users that I know are on-line in the buddy window. Their user name is greyed out and I can't see when they go on-line. They are in my address book and they have .mac.com accounts. Do I have some issues with settin