Need to Add BKTXT in the dynamic selection in FB03

Hi Gurus,
In the dynamic selection FB03, the field BKTXT is not included in the dynamic selection. Would it be possible to add this field?
Youre inputs would be greatly appreciated.
Thanks and best regards,
JeCCas_DJ

Hi,
You wants to add the BKTXT field on the selection screen of FB03?
Why? for what purpose?
Better copy the program related FB03 to some Zprogram and modify it by writing a select statement to get this BKTXT firld form BKPF/BSEG tables.
SInce this is a text field, normally we don't put onthe selection screen.
Regards,
Anji

Similar Messages

  • How to add a new Field in the Dynamic Selection screen section.

    HI,
    There is a requirement in which I need to add a field in existing program of dynamic selections.
    I need to add a field KNKK-DBRTG (Customer Rating) in dynamic selections screen of some existing report
    which has a dynamic selection screen with other fields like customer account, company code etc. Along with this i need to add Customer rating field also in the selection screen.
    I have used GET KNKK statement to select this in the Dynamic selection screen. But I need to make it appear
    on the screen.
    LDB used is the Customer Database.
    I have added GET KNKK statement after GET KNA1 statement.
    Can any one help me how we can make this rating field appear in the selection screen.
    With the GET statement Credit control area Fields can be selected in the selection screen but I have to permanantly add the field in the selection screen.
    Regards
    Prashant Prabhu

    Hi,
    So you need that this new field have data in old records?
    1.- If you are in BI 7.0 and the logic or data for that New field are in the same Dimension, you can use a Remodeling to fill it. I mean if you want if you want to load from a Master Data from other InfoObject in the same Dim.
    2.- If condition "1" is not yours.
    First add the new field, then create a Backup Cube (both cubes with the new field) and make a full update with all information in the original Cube. The new field willl be empty in both cubes.
    Create an UR from BackUp_Cube to Original_Cube with all direct mapping and create a logic in the Start Routine of the UR (modiying the data_package) you can look for the data in the DSO that you often use to load.
    To do that both cubes have to be Datasources ( right click on Cube-> aditional function-> and I think is "Extract Datasource")
    Hope it helps. Regards, Federico

  • Two fields needed in the dynamic selection of standard tcode CN47N

    In tcode CN47N,In the dynamic selection Under Dates Network/Order, Two fields start and finish date are needed.

    Hi,
    I already did this in SE36. The problem is that my Z-fields do not appear in BSIK. They appear only in BKPF... And in SE36 if I try to select the Z-fields in BKPF, they do not appear in the dynamic selections.
    Thanks for your answer. Kind regards,
    Isabel

  • Need to add push botton in my selection screen

    Hi
    I am doing a report program . I need to add PUSH BUTTON in my selection screen can u give me any code or suggestions for this.
    IF i press this push button i should get the basic list.
    Regards
    Rasheed.

    Hi Here is a another example.
    U can place a Push button on selection screen by using the satatement..
    SELECTION-SCREEN PUSHBUTTON 2(10) butt USER-COMMAND cli3.
    The push button will start from second character position on Selection screen and of length 10 characters !!
    check this program...
    TABLES sscrfields.
    DATA flag(1) TYPE c.
    SELECTION-SCREEN:
    BEGIN OF SCREEN 500 AS WINDOW TITLE tit,
    BEGIN OF LINE,
    PUSHBUTTON 2(10) but1 USER-COMMAND cli1,
    PUSHBUTTON 12(10) text-020 USER-COMMAND cli2,
    END OF LINE,
    BEGIN OF LINE,
    PUSHBUTTON 2(10) but3 USER-COMMAND cli3,
    PUSHBUTTON 12(10) text-040 USER-COMMAND cli4,
    END OF LINE,
    END OF SCREEN 500.
    AT SELECTION-SCREEN.
    MESSAGE i888(sabapdocu) WITH text-001 sscrfields-ucomm.
    CASE sscrfields-ucomm.
    WHEN 'CLI1'.
    flag = '1'.
    WHEN 'CLI2'.
    flag = '2'.
    WHEN 'CLI3'.
    flag = '3'.
    WHEN 'CLI4'.
    flag = '4'.
    ENDCASE.
    START-OF-SELECTION.
    TIT = 'Four Buttons'.
    BUT1 = 'Button 1'.
    BUT3 = 'Button 3'.
    CALL SELECTION-SCREEN 500 STARTING AT 10 10.
    CASE FLAG.
    WHEN '1'.
    WRITE / 'Button 1 was clicked'.
    WHEN '2'.
    WRITE / 'Button 2 was clicked'.
    WHEN '3'.
    WRITE / 'Button 3 was clicked'.
    WHEN '4'.
    WRITE / 'Button 4 was clicked'.
    WHEN OTHERS.
    WRITE / 'No Button was clicked'.
    ENDCASE.
    Reward me if its helpful.
    Regards
    Ravi

  • FAGL_FC_VAL in ECC 6.0 M not able to get the dynamic selection options

    Hi
    While executing the transaction FAGL_FC_VAL in ecc 6 we are not getting the dynamic selection option same as ecc 5 we need business area as selection option.
    Please provide solution.. if any note to be applied we will do that. we have recently migrated to ECC 6.0
    Regards,
    Abhijeet

    Sorry. This typo was only in this forum message. Within the BPEL process it's :
    <from expression="ora:countNodes('inputVariable','payload','/ns1:Transmission/ns1:TransmissionBody/ns1:GLogXMLElement/ns1:Release') "/>
    Still 0 count.

  • Add new field in dynamic selections for transaction FAGLL03

    Hello experts,
    I'm trying to add field CPUDT (Entry Date) from table BKPF in the dynamic selections of logical database SDF.
    In fact, and referring to some hints posted in the forum, I copied the standard selection view 'SAP' to 'CUS' and then added a new functional group and then assign the field CPUDT (table BKPF) to this functional group.
    Even after saving, I couldn't see the new group I created neither the field CPUDT.
    Could you please advice?
    Thanks in advance.

    Hello
    I think you can do it by adding the field into the view (SM30): V_T021S and transport the request.
    Best regards,
    Philippe

  • Add Z-fields in dynamic selection of FBL1N

    Hello experts,
    I'm trying to add some Z*-fields from table BKPF in the dynamic selections of logical database KDF.
    In fact, and referring to some hints posted in the forum, I copied the standard selection view 'SAP' to 'CUS' and then added a new functional group and then assign the fields (table BKPF) to this functional group.
    The Z-fields are also added in SM30 V_T021S.
    The fields are not available in BSIK, so maybe there is where the problem lies.
    Could you please advice?
    Kind regards,
    Isabel

    Hi,
    I already did this in SE36. The problem is that my Z-fields do not appear in BSIK. They appear only in BKPF... And in SE36 if I try to select the Z-fields in BKPF, they do not appear in the dynamic selections.
    Thanks for your answer. Kind regards,
    Isabel

  • Disable the Dynamic Selection Icon from T.Code FBL1N

    Hi,
    I want to disable the Dynamic Selection Icon from T.Code FBL1N...
    Please Note that i found a link where some code is given for this problem.
    Remove the dynamic selection screen.......
    Please tell me where i paste that code....after initialization or where....
    Thanks...
    Edited by: Prince Kumar on May 16, 2009 8:59 AM

    Hi,
    1) COPY the program RFITEMAP and create a ZRFITEMAP
    2) and added this code in the INITILIZATION event. You can search ZRFITEMAP with INITIALIZATION and add below code there.
      INTIALIZATION.
      DATA: t_exclude TYPE STANDARD TABLE OF sypfkey.
      APPEND 'DYNS' TO t_exclude.
      "DYNS is the dynamic selection screen function code.
      CALL FUNCTION 'RS_SET_SELSCREEN_STATUS'
        EXPORTING
          p_status        = sy-pfkey
        TABLES
          p_exclude       = t_exclude
    Regards
    Shital

  • How to change the Dynamic Selection screen

    Dear Freinds,
                I have requirement where in on the selection of Dynamic Selections ( iam using PNP logical database) i want to add another fields , could  any one tell me how to change  Dynamic Selections as per my requirement.
    please let me know .
    regards
    divya

    Hi Prat,
               I have done similar way and saved the view ( i.e se80> ediobject>table>table name > given all the tables required for me and i try to saved it is not allowing to save and giving message as empty view cannot be saved. Therefore i have selected the tables which have been added and made one by table and selected them . some how it got saved. Now when i added this name of the view in the custom report caterogy and executed my custom report and selected the > dynamic selections i found as empty and in debugging i can see all the 4 tables which i have mentioed while createing view are there . But i dint understood why the custom View is empty.
    please correct me where i went wrong.
    regards
    divya'

  • The dynamic selection for profit center in FBL1N isn't working

    Dear all,
    I have one one issue regarding FBL1N.
    The dynamic selection for profit center in FBL1N isn't working.
    If we enter profit center, we don't get any value.
    As per developer after debugging, table BSIK is not getting updated, hence values are not updating in the report.
    Please let me know, any configuration is missing.
    BR,
    Shailendra

    Try BSEG and see if its there for the particular doc. If its not there its a functional issue, you have to capture profit center at the time of entry. You can either make the profit center field mandatory or substitute it at the time of document generation. Consult your FI consultant. If u have activated New GL features the profit center may me in table FAGLFLEXA. but i don't think u can get the profit center from this table for your purpose, you may need to develop a zreport.
    And its not BISK its BSIK
    Edited by: Harisankar S on May 4, 2010 3:05 PM

  • Which table the dynamic selection view will be stored

    Dear Freinds,
                      I  have created a dynamic selections view form Se80 > Editobject>Selection view > Created by adding the required tables pa0002,pa006,pa0009 . But the transport request we have saved it locally
    now i want to create a transport request for the dynamic view . Could any please let me know how to create transport reqest for the Dynamic selection
    View which has been created.
    regards
    divya

    HiDivya,
    yo have saved the changes into local object and now you want to generate the TRN and for the save you have to change the attribute > GOTO > Other object Entry and  changed the package and TRN will generate .
    Regards
    Sheetal

  • Try to capture the dynamic selections of a standard LDB

    Hi experts,
    I checked on the SDN, some people said we can use set parameter and EXPORT/IMPORT to do it. Does it mean we use this statement in the LDB and send the value of selections to memory then get them in the program? If there is a standard LDB, how can I get the value of its dynamic selections?
    Also There are some FMs, such as FREE_SELECT_*, but the INIT and DIALOG FM are used to show the user dialog and fetch its results. The rest FMs in the FG are used to convert the format of the selection reults. So is there any FM which can be used to get the value of the dynamic selections of a standard  LDB in my program? I hope there is a selection ID for the LDB's dynamic selection and it can be captured by a FM.
    Thanks for reading and help.

    use fm RS_REFRESH_FROM_DYNAMICAL_SEL
    here's a sample to search for a free selection (her field XBILK)
    DATA RANGE TYPE RSDS_TRANGE.
    DATA : BEGIN OF WA OCCURS 0,
             TABLENAME LIKE RSDSTABS-PRIM_TAB,
             FRANGE_T TYPE RSDS_FRANGE_T,
           END OF WA.
    DATA : BEGIN OF CA OCCURS 0,
             FIELDNAME LIKE RSDSTABS-PRIM_FNAME,
             SELOPT_T TYPE RSDS_SELOPT_T,
           END OF CA.
    DATA ERR.
    DATA: RSDSSELOPT LIKE RSDSSELOPT OCCURS   0 WITH HEADER LINE.
    CALL FUNCTION 'RS_REFRESH_FROM_DYNAMICAL_SEL'
           EXPORTING
                CURR_REPORT        = SY-REPID
                MODE_WRITE_OR_MOVE = 'M'
           IMPORTING
                P_TRANGE           = RANGE
           EXCEPTIONS
                NOT_FOUND          = 1
                WRONG_TYPE         = 2
                OTHERS             = 3.
      ERR = 9.
      LOOP AT RANGE INTO WA.
        APPEND WA.
        IF WA-TABLENAME = 'SKA1'.
          ERR = 0.
        ENDIF.
      ENDLOOP.
      CHECK ERR = 0.
      ERR = 9.
      LOOP AT WA-FRANGE_T INTO CA.
        APPEND CA.
        IF CA-FIELDNAME = 'XBILK'.
          ERR = 0.
        ENDIF.
      ENDLOOP.
      CHECK ERR = 0.
      ERR = 9.
      LOOP AT CA-SELOPT_T INTO RSDSSELOPT.
        IF RSDSSELOPT = 'IEQX'.
          ERR = 0.
        ENDIF.
      ENDLOOP.
    hope that helps
    Andreas

  • How to add a field in dynamic selections

    HI,
    There is a requirement in which i need to add a field in existing program of dynamic selections.
    I have added a field in the screen.But I was not able to write the label and is not displaying.
    I ahve copied evrything from existing coding.but still.
    In the program ,Field groups are being used.
    I have inserted my field in that header and item of field groups.
    But i was not able to select the data based on this selection.
    i will attach my code here for reference.
    can anyone please help me how to use these filed symbols.
    If possible send me the document on Dynamic selections.
    the field i need to add is bkpf-bktxt
    TABLES:
      tcurx,
      lfa1,
      kna1,
      bhdgd,
      bkpf,
      bseg,
      bsega,
      b0sg,
      fimsg,
      sarkey,
      t001,
      vbset,
      sscrfields.
          Selektionsparameter                                           *
    begin_of_block 1.
    PARAMETERS:
      par_nbel       LIKE rfpdo-bpetnbel,  "Normale Belege
      par_vbel       LIKE rfpdo-epojvbel,  "Vorerfaßte Belege
      par_sbel       LIKE rfpdo-bpetsbel,  "Statistischen Belege
      par_mbel       LIKE rfpdo-epojmbel,  "Musterbelege
      par_dbel       LIKE rfpdo1-korbdbel. "Dauerbuchungsurbelege
    end_of_block 1.
    begin_of_block 2.
    PARAMETERS:
      par_summ       LIKE rfpdo1-allgsumm, "nur Summenausgabe
      par_hkto       LIKE rfpdo2-beljhkto, "Hauptbuch- statt Personenkonto
      par_altk       LIKE rfpdo1-allgaltk, "alternative Kontonummer
      par_lsep       LIKE rfpdo-allglsep,  "Listseparation
      par_mikf       LIKE rfpdo-allgmikf,  "Mikrofiche-Zeile
      par_line       LIKE rfpdo1-allgline. "Zusatztitel
    Eingaben für optische Archivierung
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS:     arc     LIKE rfpdo1-allgarch.
    SELECTION-SCREEN COMMENT 3(29) text-103 FOR FIELD arc.
    SELECTION-SCREEN POSITION POS_LOW.
    PARAMETERS:     arc_msg1(10) MODIF ID arc.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN POSITION POS_LOW.
    PARAMETERS:     arc_msg2(10) MODIF ID arc.
    SELECTION-SCREEN END OF LINE.
    end_of_block 2.
    PARAMETERS:     arc_mem LIKE arc_params NO-DISPLAY.
          Felder und Feldleisten                                        *
    CONSTANTS:
      con_true       TYPE i                VALUE 1,
      con_false      TYPE i                VALUE 2,
      con_hash       TYPE i                VALUE 1,
      con_vendor     TYPE c                VALUE 'K',
      con_cust       TYPE c                VALUE 'D'.
    Global Data
    DATA: BEGIN OF hash_totals OCCURS 25,
             bukrs LIKE t001-bukrs,
             poper(7),
             dramt LIKE bseg-wrbtr,
             cramt LIKE bseg-wrbtr,
          END OF hash_totals.
    DATA:
      factor         TYPE i,
    Zähler
      cnt_bukrs(4)   TYPE p,               "Anzahl Buchungskreise
      cnt_max        LIKE sy-tfill,        "Maximum der CNT_Ti
      cnt_t0         LIKE sy-tfill,        "Anzahl Einträge in Ti
      cnt_t1         LIKE sy-tfill,
      cnt_t2         LIKE sy-tfill,
      cnt_t3         LIKE sy-tfill,
      cnt_t4         LIKE sy-tfill,
      cnt_t5         LIKE sy-tfill,
    Fehler
      err_altkt(1)   TYPE c,               "alt. Kontonummer nicht gefunden
    Flags
      flg_section    TYPE i,
      flg_vendr2     TYPE i,
      flg_vendr3     TYPE i,
      flg_color(1)   TYPE n,               "0 - intensified off
    Hilfsfelder
      hlp_belnr(10)  TYPE c,               "Anzeigefeld Belegnummer
      hlp_bstat      LIKE bkpf-bstat,      "Status vorerfaßter Belege
      hlp_buper(7)   TYPE c,               "Buchungsperiode mit '/'
      hlp_null(1)    TYPE p VALUE 0,       "Betrag Null
      hlp_sakan      LIKE ska1-sakan,      "Anzeigefeld Kontonummer
      hlp_wrshb(26)  TYPE c,               "FW-Betrag mit Währung in Klammer
      hlp_vnd_amt(43) TYPE c,
    Texte
      txt_line0(132) TYPE c,               "Überschriften
      txt_line1(132) TYPE c,
      txt_line2(132) TYPE c,
      txt_line(132)  TYPE c,               "Hilfstext
    Feldleisten
      BEGIN OF mikfi,                      "Information Mikrofiche-Zeile
        bstat        LIKE bkpf-bstat,
        bukrs        LIKE bkpf-bukrs,
        gjahr        LIKE bkpf-gjahr,
        belnr        LIKE bkpf-belnr,
      END OF mikfi.
          Interne Tabellen                                              *
    DATA:
    Belegkopfinformationen
      BEGIN OF t0 OCCURS 4,                "0 - allgemeine Angaben
        info(1)  TYPE n,                   "1 - vorerfaßter Beleg
      END OF t0,                           "2 - Referenz
                                                                "3 - Storno
                                           "4 - gelöschter vorerfaßter Beleg
                                           "5 - ersetzter vorerfaßter Beleg
                                           "6 - Ausgleichsbeleg
                                           "7 - zurückgenommener Ausgleich
    Personenkonteninformationen je Beleg
      BEGIN OF t1 OCCURS 10,
        koart    LIKE bseg-koart,          "Kontoart
        ktonr    LIKE bseg-kunnr,          "Kontonummer(Debitor/Kreditor)
        bschl    LIKE bseg-bschl,          "Buchungsschlüssel
        xnegp    LIKE bseg-xnegp,          "Negativbuchung
        umskz    LIKE bseg-umskz,          "Sonderumsatzkennzeichen
        zlspr    LIKE bseg-zlspr,          "Payment Block Key - CR 21709
        dmshb    LIKE bsega-dmshb,         "Soll-Haben Betrag in Hauswährung
        wrshb    LIKE bsega-dmshb,         "Betrag in Fremdwährung
        xfwae(1) TYPE c,                   "X - Fremdwährungsinformation
        name1    LIKE lfa1-name1,          "Customer/ Vendor Name
      END OF t1,
    Steuerinformationen je Beleg
      BEGIN OF t2 OCCURS 10,
        mwskz    LIKE bseg-mwskz,          "Mehrwertsteuerkennzeichen
        dmshb    LIKE bsega-dmshb,         "Soll-Haben Betrag in Hauswährung
      END OF t2,
    Sachkonteninformationen je Beleg
      BEGIN OF t3 OCCURS 20,
        mwskz    LIKE bseg-mwskz,          "Mehrwertsteuerkennzeichen
        bschl    LIKE bseg-bschl,          "Buchungsschlüssel
        xnegp    LIKE bseg-xnegp,          "Negativbuchung
        koart    LIKE bseg-koart,          "Kontoart
        hkont    LIKE bseg-hkont,          "Hauptbuchkonto
        dmshb    LIKE bsega-dmshb,         "Soll-Haben Betrag in Hauswährung
        kostl    LIKE bseg-kostl,          "Cost Center
        prctr    LIKE bseg-prctr,          "Profit Center
      END OF t3,
    Sonderhauptbuchbeträge für Debitoren (nur Ausgabe)
      BEGIN OF t4 OCCURS 5,
        umskz         LIKE bseg-umskz,     "Sonderumsatzkennzeichen
        dmsol(9)      TYPE p,              "Soll-Betrag Hauswährung
        dmhab(9)      TYPE p,              "Haben-Betrag Hauswährung
      END OF t4,
    Sonderhauptbuchbeträge für Kreditoren (nur Ausgabe)
      BEGIN OF t5 OCCURS 5,
        umskz         LIKE bseg-umskz,     "Sonderumsatzkennzeichen
        dmsol(9)      TYPE p,              "Soll-Betrag Hauswährung
        dmhab(9)      TYPE p,              "Haben-Betrag Hauswährung
      END OF t5,
    Summeninformationen je Buchungskreis
      BEGIN OF tbukrs OCCURS 20,
        bstat         LIKE bkpf-bstat,     "Belegstatus
        bukrs         LIKE bkpf-bukrs,     "Buchungskreis
    START OF CHANGE FOR CR63816 by OS0794 on 01/29/2008
        bktxt         LIKE bkpf-bktxt,
    END OF CHANGE FOR CR63816 by OS0794 on 01/29/2008
        gjahr         LIKE bkpf-gjahr,     "Buchungsjahr
        monat         LIKE bkpf-monat,     "Buchungsmonat
        dmsol(9)      TYPE p,              "Soll-Betrag Hauswährung
        dmhab(9)      TYPE p,              "Haben-Betrag Hauswährung
        waers         LIKE t001-waers,     "Währungsschlüssel (nur Ausgabe)
      END OF tbukrs,
    Sonderhauptbuchinformationen je Buchungskreis
      BEGIN OF tbukrs_u OCCURS 20,
        bstat         LIKE bkpf-bstat,     "Belegstatus
        bukrs         LIKE bkpf-bukrs,     "Buchungskreis
    START OF CHANGE FOR CR63816 by OS0794 on 01/29/2008
        bktxt         LIKE bkpf-bktxt,
    END OF CHANGE FOR CR63816 by OS0794 on 01/29/2008
        gjahr         LIKE bkpf-gjahr,     "Buchungsjahr
        monat         LIKE bkpf-monat,     "Buchungsmonat
        koart         LIKE bseg-koart,     "Kontoart
        umskz         LIKE bseg-umskz,     "Sonderumsatzkennzeichen
        dmsol(9)      TYPE p,              "Soll-Betrag Hauswährung
        dmhab(9)      TYPE p,              "Haben-Betrag Hauswährung
        waers         LIKE t001-waers,     "Währungsschlüssel (nur Ausgabe)
      END OF tbukrs_u,
    Summeninformationen je Hauswährung
      BEGIN OF twaers OCCURS 10,
        bstat         LIKE bkpf-bstat,     "Belegstatus
        waers         LIKE t001-waers,     "Hauswährungsschlüssel
        gjahr         LIKE bkpf-gjahr,     "Buchungsjahr
        monat         LIKE bkpf-monat,     "Buchungsmonat
        dmsol(9)      TYPE p,              "Soll-Betrag Hauswährung
        dmhab(9)      TYPE p,              "Haben-Betrag Hauswährung
      END OF twaers,
    Sonderhauptbuchinformationen je Hauswährung
      BEGIN OF twaers_u OCCURS 20,
        bstat         LIKE bkpf-bstat,     "Belegstatus
        waers         LIKE t001-waers,     "Währungsschlüssel
        gjahr         LIKE bkpf-gjahr,     "Buchungsjahr
        monat         LIKE bkpf-monat,     "Buchungsmonat
        koart         LIKE bseg-koart,     "Kontoart
        umskz         LIKE bseg-umskz,     "Sonderumsatzkennzeichen
        dmsol(9)      TYPE p,              "Soll-Betrag Hauswährung
        dmhab(9)      TYPE p,              "Haben-Betrag Hauswährung
      END OF twaers_u,
    Fehlerprotokoll im Batch
      BEGIN OF tfimsg OCCURS 10.
            INCLUDE STRUCTURE fimsg.
    DATA END OF tfimsg.
          Strukturen für optische Archivierung                          *
    DATA BEGIN OF info OCCURS 10.
            INCLUDE STRUCTURE bhinf.
    DATA END OF info.
    DATA:
      arc_save LIKE arc_params,
      arc_valid.
          Feldgruppen                                                   *
    FIELD-GROUPS: header, daten.
    INSERT:
      bkpf-bukrs                           "Buchungskreis
      bkpf-bktxt                           "Change by OS0794
      bkpf-bstat                           "Belegstatus
      bkpf-gjahr                           "Geschäftsjahr
      bkpf-belnr                           "Belegnummer
      bseg-buzei                           "Buchungszeile
    INTO header.
    INSERT
      bkpf-blart                           "Belegart
      bkpf-bktxt                           "Change by OS0794
      bkpf-budat                           "Buchungsdatum
      bkpf-stblg                           "Stornobelegnummer
      bkpf-waers                           "Währungsschlüssel
      bkpf-xblnr                           "Referenzangabe
      bseg-bschl                           "Buchungsschlüssel
      bseg-xnegp                           "Negativbuchung
      bseg-zlspr                           "Payment Block Key - CR 21709
      bseg-hkont                           "Hauptbuchkonto
      bseg-koart                           "Kontoart
      bseg-kunnr                           "Debitornummer
      bseg-lifnr                           "Kreditornummer
      bseg-mwart                           "Mehrwertsteuerart (A oder V)
      bseg-mwskz                           "Mehrwertsteuerkennzeichen
      bseg-umskz                           "Sonderhauptbuch-Kennzeichen
      bsega-dmshb                          "S/H-Betrag in Hauswährung
      bsega-mdshb                          "Umsatzsteuerbetrag in Hauswährg
      bsega-wrshb                          "S/H-Betrag in Fremdwährung
      hlp_bstat                            "Status vorerfaßter Belege bzw.
      bseg-kostl
      bseg-prctr
      bkpf-monat
    INTO daten.                            "Status von Belegen ohne Zeilen
          Vorschlagswerte                                               *
    INITIALIZATION.
      get_frame_title: 1,2.
      par_nbel = 'X'.
      par_sbel = space.
      par_mbel = space.
      par_dbel = space.
      par_vbel = 'X'.
          Archivinformationen nur fuer Ausgabe                          *
    AT SELECTION-SCREEN OUTPUT.
      LOOP AT SCREEN.
        IF screen-group1 = 'ARC'.
          screen-input = '0'.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
          Prüfung und Korrektur der eingegebenen Daten                  *
    AT SELECTION-SCREEN ON arc.
      IF arc <> ' ' AND arc_mem(20) = space.
        CALL FUNCTION 'GET_ARCHIVE_PARAMETERS'
          EXPORTING
            in_parameters  = arc_save
            printer        = '    '
          IMPORTING
            out_parameters = arc_mem
            valid          = arc_valid
          EXCEPTIONS
            OTHERS         = 04.
        IF arc_valid <> 'X' OR arc_mem = space.
          CLEAR arc_mem.
          MESSAGE e999 WITH text-102.
        ENDIF.
        arc_msg1 = arc_mem(10).
        arc_msg2 = arc_mem+10(10).
      ENDIF.
      IF arc = ' '.
        CLEAR arc_mem.
        arc_msg1 = arc_msg2 = space.
      ENDIF.
      arc_save = arc_mem.
    AT SELECTION-SCREEN ON arc_msg1.
      arc_msg1 = arc_mem(10).
    AT SELECTION-SCREEN ON arc_msg2.
      arc_msg2 = arc_mem+10(10).
    AT SELECTION-SCREEN.
      IF par_nbel EQ space AND
         par_mbel EQ space AND
         par_dbel EQ space AND
         par_sbel EQ space AND
         par_vbel EQ space.
        SET CURSOR FIELD 'PAR_NBEL'.
        MESSAGE e111.
      ENDIF.
    optische Archivierung
      IF arc <> ' ' AND par_mikf <> ' '.
        CLEAR arc_mem.
        MESSAGE e999 WITH text-100.
      ENDIF.
      IF arc <> ' ' AND par_lsep <> ' '.
        CLEAR arc_mem.
        MESSAGE e999 WITH text-101.
      ENDIF.
      IF arc = 'X' AND sscrfields-ucomm = 'PRIN'.
        sscrfields-ucomm = 'ONLI'.
        sy-pdest = 'LP01'.                 "wegen Abfrage in Batch-Heading
      ENDIF.
          Vorbelegungen                                                 *
    START-OF-SELECTION.
      bhdgd-lines = sy-linsz.
      bhdgd-repid = sy-repid.
      bhdgd-uname = sy-uname.
      bhdgd-separ = par_lsep.
      bhdgd-domai = 'BUKRS'.
      IF arc = 'X'.
        bhdgd-miffl = 'A'.
      ENDIF.
      IF par_mikf = 'X'.
        bhdgd-miffl = 'X'.
      ENDIF.
    Initialisierung für optisches Archiv
      PERFORM open_archive(rsbtchh0) USING arc_mem.
      info-name = 'BKPF-BSTAT'. info-len = space. APPEND info.
      info-name = 'BKPF-BUKRS'. info-len = space. APPEND info.
      info-name = 'BSEG-GJAHR'. info-len = space. APPEND info.
      info-name = 'BKPF-BELNR'. info-len = space. APPEND info.
      info-name = 'BKPF-BKTXT'. info-len = space. APPEND info.
      PERFORM start_archive(rsbtchh0) TABLES info.
      b0sg-xstan = par_nbel.
      b0sg-xstam = par_mbel.
      b0sg-xstad = par_dbel.
      b0sg-xstas = par_sbel.
      b0sg-xstaa = 'X'.
      IF par_vbel EQ 'X'.
        b0sg-xstav = 'Z'.
      ENDIF.
          Selektion                                                     *
    GET bkpf FIELDS blart bstat budat monat stblg waers xblnr bktxt.
      CLEAR hlp_bstat.
      IF 'ABVWZ' CA bkpf-bstat.
        hlp_bstat = bkpf-bstat.
        CLEAR bkpf-bstat.
        IF 'ABWZ' CA hlp_bstat.
          CLEAR: bseg, bsega.
          IF par_summ EQ space.
            EXTRACT daten.
          ENDIF.
          PERFORM summe_merken.
        ENDIF.
      ENDIF.
    GET bseg.
      IF par_summ EQ space.
        EXTRACT daten.
      ENDIF.
      PERFORM summe_merken.
    GET bkpf LATE.
      PERFORM vorerfasste_steuer_merken.
          Seitenkopf                                                    *
    TOP-OF-PAGE.
      PERFORM batch-heading(rsbtchh0).
      ULINE.
      IF flg_section <> con_hash.
        FORMAT COLOR 1 INTENSIFIED OFF.
        WRITE    / txt_line0.
        ULINE.
        FORMAT COLOR 1 INTENSIFIED.
        WRITE:   / txt_line1,
                 / txt_line2.
      ELSE.
        FORMAT COLOR 1 INTENSIFIED OFF.
        WRITE: / sy-vline NO-GAP,
                 'Hash Totals'(205),
           132   sy-vline.
        ULINE.
        FORMAT COLOR 1 INTENSIFIED.
        WRITE:   /     sy-vline NO-GAP,
                  (10) 'CoCd'(200),
                  (07) 'Period'(201),
                       sy-vline,
                  (16) 'Debit Amount'(202),
                  (16) 'Credit Amount'(203),
                       sy-vline,
                  (16) 'Total'(204).
      ENDIF.
      ULINE.
          Sortieren der Daten                                           *
    END-OF-SELECTION.
      DESCRIBE TABLE tbukrs LINES sy-tfill.
      IF sy-tfill EQ 0.
        CALL FUNCTION 'POPUP_NO_LIST'.
      ENDIF.
      SORT.
      SORT tbukrs.
          Belegjournal                                                  *
      LOOP.
    *-- Neuer Buchungskreis -
        AT NEW bkpf-bukrs.
          SELECT SINGLE * FROM t001 WHERE bukrs EQ bkpf-bukrs.
          IF sy-subrc NE 0.
            IF sy-batch EQ space.
              MESSAGE a101 WITH bkpf-bukrs.
            ELSE.
              MESSAGE s101 WITH bkpf-bukrs.
              STOP.
            ENDIF.
          ENDIF.
          bhdgd-bukrs = bkpf-bukrs.
          bhdgd-werte = bkpf-bukrs.
          PERFORM new-section(rsbtchh0).
          PERFORM titel_fuellen USING '5'.
        ENDAT.
    *-- Neuer Belegstatus -
        AT NEW bkpf-bstat.
          PERFORM new_page USING bkpf-bstat.
          flg_color = 1.
        ENDAT.
    *-- Neue Belegnummer -
        AT NEW bkpf-belnr.
          REFRESH: t0, t1, t2, t3.
          PERFORM belegkopf_merken.
          mikfi-bstat = bkpf-bstat.
          mikfi-bukrs = bkpf-bukrs.
          mikfi-gjahr = bkpf-gjahr.
          mikfi-belnr = bkpf-belnr.
          bhdgd-grpin = mikfi.
        ENDAT.
    *-- Belegzeile -
        PERFORM belegzeile_merken.
    *-- Ende einer Belegnummer -
        AT END OF bkpf-belnr.
          PERFORM beleg_schreiben.
          ULINE.
        ENDAT.
    *-- Ende eines Buchungskreises -
        AT END OF bkpf-bukrs.
          PERFORM titel_fuellen USING '4'.
          PERFORM buchungskreis_schreiben USING bkpf-bukrs.
        ENDAT.
      ENDLOOP.
          Summenblätter                                                 *
      bhdgd-bukrs = '    '.
      bhdgd-werte = '    '.
      PERFORM new-section(rsbtchh0).
      PERFORM titel_fuellen USING '4'.
      PERFORM buchungskreis_schreiben USING '    '.
      PERFORM hauswaehrung_schreiben.
          Print Hash Totals                                             *
      flg_section = con_hash.
      NEW-PAGE.
      PERFORM prt_hash TABLES hash_totals.
          Fehlerprotokoll                                               *
      CALL FUNCTION 'FI_MESSAGE_CHECK'
        EXCEPTIONS
          no_message = 4.
      IF sy-subrc = 0.
        IF sy-batch EQ space.
          PERFORM titel_fuellen USING '6'.
          NEW-PAGE.
          FORMAT COLOR 6 INTENSIFIED.
          CALL FUNCTION 'FI_MESSAGE_SORT'.
          CALL FUNCTION 'FI_MESSAGE_PRINT'
            EXPORTING
              i_xskip = 'X'.
        ELSE.
          CALL FUNCTION 'FI_MESSAGE_GET'
            TABLES
              t_fimsg = tfimsg.
          LOOP AT tfimsg.
            MESSAGE ID tfimsg-msgid TYPE tfimsg-msgty NUMBER tfimsg-msgno
              WITH tfimsg-msgv1 tfimsg-msgv2 tfimsg-msgv3 tfimsg-msgv4.
          ENDLOOP.
        ENDIF.
      ENDIF.
           U N T E R P R O G R A M M E                                  *
                0. TITEL_FUELLEN                                        *
                1. NEW_PAGE                                             *
                2. SUMME_MERKEN                                         *
                3. VORERFASSTE_STEUER_MERKEN                            *
                4. BELEGKOPF_MERKEN                                     *
                5. BELEGZEILE_MERKEN                                    *
                6. BELEG_SCHREIBEN                                      *
                7. BUCHUNGSKREIS_SCHREIBEN                              *
                8. HAUSWAEHRUNG_SCHREIBEN                               *
                9. SUMMENZEILE_SCHREIBEN                                *
               10. KONTONUMMER                                          *
    0.   FORM TITEL_FUELLEN                                            *
          Ersetzt das Global &CCCU durch die Buchungskreiswährung       *
          F00_TEXT ist 4, 5 oder 6, je nach Gruppe der Textelemente     *
    FORM titel_fuellen USING f00_text.
      DATA:
        BEGIN OF txt_502,
         T1(49) TYPE C, "CR 21709
         W1(23) TYPE C, "CR 21709
          t1(50) TYPE c,                                        "CR 21709
          w1(22) TYPE c,                                        "CR 21709
          t2(6)  TYPE c,
          w2(15) TYPE c,
          t3(21) TYPE c,
          w3(16) TYPE c,
          t4(2)  TYPE c,
        END OF txt_502.
      CASE f00_text.                       "Textelemente
        WHEN '4'.                          "- für die Summenliste
          txt_line0 = text-400.
          txt_line1 = text-401.
          txt_line2 = text-402.
        WHEN '5'.                          "- für die Einzelpostenliste
          txt_line0 = text-500.
          txt_line1 = text-501.
          txt_line2 = text-502.
          IF par_hkto EQ 'X'.
            txt_line1+33(10) = text-505.
            txt_line2+33(10) = text-506.
          ENDIF.
          txt_502   = txt_line2.
          REPLACE '&CCCU' WITH t001-waers INTO:
            txt_502-w1, txt_502-w2, txt_502-w3.
          CONDENSE:
            txt_502-w1, txt_502-w2, txt_502-w3.
          WRITE:
            txt_502-w1 TO txt_502-w1 RIGHT-JUSTIFIED,
            txt_502-w2 TO txt_502-w2 RIGHT-JUSTIFIED,
            txt_502-w3 TO txt_502-w3 RIGHT-JUSTIFIED.
          txt_line2 = txt_502.
        WHEN '6'.                          "- für die Fehlerliste
          txt_line0 = text-600.
          txt_line1 = text-601.
          txt_line2 = space.
        WHEN OTHERS.                       "- initialisieren
          txt_line0 = space.
          txt_line1 = space.
          txt_line2 = space.
      ENDCASE.
    ENDFORM.                    "TITEL_FUELLEN
    1.   FORM NEW_PAGE                                                 *
          Initialisierungen für BATCH-HEADING Routine                   *
          F01_BSTAT steuert den Aufbau des Reporttitels                 *
    FORM new_page USING f01_bstat.
      CASE f01_bstat.                      "Reporttitel
        WHEN 'D'.                          "- für Dauerbuchungsurbelege
          bhdgd-line1 = text-001.
        WHEN 'M'.                          "- für Musterbelege
          bhdgd-line1 = text-002.
        WHEN 'S'.                          "- für statistische Belege
          bhdgd-line1 = text-003.
        WHEN OTHERS.                       "- für normale/vorerfaßte Belege
          bhdgd-line1 = sy-title.
      ENDCASE.
      bhdgd-line2 = par_line.
      bhdgd-inifl = 0.
      NEW-PAGE.
    ENDFORM.                    "NEW_PAGE
    2.   FORM SUMME_MERKEN                                             *
          Merken der Summeninformation                                  *
    FORM summe_merken.
      CLEAR tbukrs.
      tbukrs-bstat = bkpf-bstat.
      tbukrs-bukrs = bkpf-bukrs.
      tbukrs-bktxt = bkpf-bktxt.
      tbukrs-gjahr = bkpf-gjahr.
      tbukrs-monat = bkpf-monat.
      tbukrs-dmsol = bsega-dmsol.
      tbukrs-dmhab = bsega-dmhab.
      IF 'DK' CA bseg-koart.
        MOVE-CORRESPONDING tbukrs TO tbukrs_u.
        tbukrs_u-koart   = bseg-koart.
        tbukrs_u-umskz   = bseg-umskz.
        tbukrs_u-dmsol   = bsega-dmsol.
        tbukrs_u-dmhab   = bsega-dmhab.
        COLLECT tbukrs_u.
        tbukrs_u-monat   = 0.              "Summe für das Geschäftsjahr
        COLLECT tbukrs_u.
      ENDIF.
      COLLECT tbukrs.
    ENDFORM.                    "SUMME_MERKEN
    3.   FORM VORERFASSTE_STEUER_MERKEN                                *
          Nachlesen der Steuerzeilen vorerfaßter Belege                 *
          Gefüllt wird TBUKRS und der Extrakt                           *
    FORM vorerfasste_steuer_merken.
      CHECK hlp_bstat EQ 'V'.
      SELECT * FROM vbset
        WHERE ausbk EQ bkpf-bukrs
          AND belnr EQ bkpf-belnr
          AND gjahr EQ bkpf-gjahr.
        CHECK vbset-hwste NE 0.
        CLEAR: bseg, bsega.
        bseg-koart    = 'S'.
        bseg-mwart    = 'V'.               "oder 'A', nur zum Füllen von T2
        bseg-mwskz    = vbset-mwskz.
        IF vbset-shkzg EQ 'S'.
          bsega-dmsol = vbset-hwste.
          bsega-dmshb = vbset-hwste.
        ELSE.
          bsega-dmhab = vbset-hwste.
          bsega-dmshb = - vbset-hwste.
        ENDIF.
        IF par_summ EQ space.
          EXTRACT daten.
        ENDIF.
        PERFORM summe_merken.
      ENDSELECT.
    ENDFORM.                    "VORERFASSTE_STEUER_MERKEN
    4.   FORM BELEGKOPF_MERKEN                                         *
          Je Beleg werden gefüllt:                                      *
          T0 - Informationsflag                                         *
    FORM belegkopf_merken.
      t0-info = 0.                         "Belegkopf
      APPEND t0.
      CASE hlp_bstat.
        WHEN 'A'.
          t0-info = 6.                     "Ausgleichsbeleg
          APPEND t0.
        WHEN 'B'.
          t0-info = 7.                     "zurückgen. Ausgleichsbeleg
          APPEND t0.
        WHEN 'V'.
          t0-info = 1.                     "vorerfaßter Beleg
          APPEND t0.
        WHEN 'W'.
          t0-info = 5.                     "ersetzter vorerfaßter Beleg
          APPEND t0.
        WHEN 'Z'.
          t0-info = 4.                     "gelöschter vorerfaßter Beleg
          APPEND t0.
      ENDCASE.
      IF bkpf-xblnr NE space AND hlp_bstat NA 'BWZ'.
        t0-info = 2.                       "Referenz
        APPEND t0.
      ENDIF.
      IF bkpf-stblg NE space.
        t0-info = 3.                       "Storno
        APPEND t0.
      ENDIF.
      SORT t0.
    ENDFORM.                    "BELEGKOPF_MERKEN
    5.   FORM BELEGZEILE_MERKEN                                        *
          Je Beleg werden gefüllt:                                      *
          T1 - Personenkonteninformation                                *
          T2 - Steuerinformation (nicht bei vorerfaßten Belegen)        *
          T3 - Sachkonteninformation                                    *
    FORM belegzeile_merken.
    Vendors/ Customers
      IF bseg-koart CA 'DK'.
        t1-koart   = bseg-koart.
        IF par_hkto EQ 'X'.
          t1-ktonr = bseg-hkont.
        ELSEIF bseg-koart EQ 'K'.
          t1-ktonr = bseg-lifnr.
        ELSE.
          t1-ktonr = bseg-kunnr.
        ENDIF.
        t1-bschl   = bseg-bschl.
        t1-umskz   = bseg-umskz.
        t1-xnegp   = bseg-xnegp.
        t1-zlspr   = bseg-zlspr.                                "CR 21709
        t1-dmshb   = bsega-dmshb.
        t1-wrshb   = bsega-wrshb.
        t1-xfwae   = space.
        APPEND t1.
      Read the vendor description.
        IF bseg-koart = con_vendor.
          flg_vendr2 = con_true.
          flg_vendr3 = con_true.
          CLEAR lfa1-name1.
          SELECT SINGLE name1
          INTO   lfa1-name1
          FROM   lfa1
          WHERE  lifnr = bseg-lifnr.
        ELSEIF bseg-koart = con_cust.
          CLEAR kna1-name1.
          SELECT SINGLE name1
          INTO   kna1-name1
          FROM   kna1
          WHERE  kunnr = bseg-kunnr.
        ENDIF.
        IF bkpf-waers EQ t001-waers.
          CLEAR t1.
        ENDIF.
        t1-xfwae = 'X'.
        t1-name1 = lfa1-name1.
        IF t1-name1 IS INITIAL.
          t1-name1 = kna1-name1.
        ENDIF.
        APPEND t1.
        CLEAR:
           kna1-name1,
           lfa1-name1.
        CLEAR t1.
      Save the hash total amounts
        CLEAR tcurx-currdec.
        SELECT SINGLE currdec
        INTO   tcurx-currdec
        FROM   tcurx
        WHERE  currkey = bkpf-waers.
        IF tcurx-currdec = 1.
          factor = 10.
        ELSE.
          factor = 100.
        ENDIF.
        CLEAR hash_totals.
        hash_totals-bukrs = bkpf-bukrs.
        CONCATENATE bkpf-monat '/' bkpf-gjahr INTO hash_totals-poper.
        IF bsega-wrshb < 0.
          hash_totals-cramt = bsega-wrshb * factor.
        ELSE.
          hash_totals-dramt = bsega-wrshb * factor.
        ENDIF.
        COLLECT hash_totals.
    Tax accounts
      ELSEIF bseg-mwart CA 'AV'.
        t2-mwskz   = bseg-mwskz.
        t2-dmshb   = bsega-dmshb.
        APPEND t2.
        IF flg_vendr2 = con_true.
          flg_vendr2 = con_false.
          CLEAR t2.
          APPEND t2.
        ENDIF.
    GL Accounts
      ELSEIF hlp_bstat NA 'ABWZ'.
        t3-mwskz   = bseg-mwskz.
        t3-bschl   = bseg-bschl.
        t3-xnegp   = bseg-xnegp.
        t3-koart   = bseg-koart.
        t3-hkont   = bseg-hkont.
        t3-dmshb   = bsega-dmshb.
        APPEND t3.
        IF flg_vendr3 = con_true
        OR NOT bseg-kostl IS INITIAL
        OR NOT bseg-prctr IS INITIAL.
          flg_vendr3 = con_false.
          CLEAR t3.
          t3-kostl = bseg-kostl.
          t3-prctr = bseg-prctr.
          APPEND t3.
          CLEAR t3.
        ENDIF.
      ENDIF.
    ENDFORM.                    "BELEGZEILE_MERKEN
    6.   FORM BELEG_SCHREIBEN                                          *
          Ausgabe der Belginformationen                                 *
    FORM beleg_schreiben.
      DATA:
         len TYPE i.
    Berechnung der benötigten Zeilen pro Beleg
      DESCRIBE TABLE:
        t0 LINES cnt_t0,
        t1 LINES cnt_t1,
        t2 LINES cnt_t2,
        t3 LINES cnt_t3.
      cnt_max = cnt_t0.
      IF cnt_max LT cnt_t1.
        cnt_max = cnt_t1.
      ENDIF.
      IF cnt_max LT cnt_t2.
        cnt_max = cnt_t2.
      ENDIF.
      IF cnt_max LT cnt_t3.
        cnt_max = cnt_t3.
      ENDIF.
      ADD 1 TO cnt_max.
      IF cnt_max LE 10.
        RESERVE cnt_max LINES.
      ELSE.
        RESERVE 5 LINES.
      ENDIF.
      SUBTRACT 1 FROM cnt_max.
    Farbe setzen
      IF flg_color EQ 0.
        FORMAT COLOR 2 INTENSIFIED OFF.
        flg_color = 1.
      ELSE.
        FORMAT COLOR 2 INTENSIFIED.
        flg_color = 0.
      ENDIF.
    Index fuer optische Archivierung
      PERFORM new-group(rsbtchh0).
      DO cnt_max TIMES.
      Belegkopfinformationen
        WRITE     /1 sy-vline NO-GAP.
        IF sy-index LE cnt_t0.
          READ TABLE t0 INDEX sy-index.
          CASE t0-info.
            WHEN 0.                        "Belegkopf
              hlp_belnr = bkpf-belnr.      "Belegnr. mit führenden Nullen
            Referenz auf Originalbeleg
              PERFORM start_doc_reference(rsbtchh0)
                USING bkpf-bukrs bkpf-belnr bkpf-gjahr bkpf-bktxt. " change*
              WRITE:
                     bkpf-bukrs,
                     hlp_belnr,
                     bkpf-blart,
                     bkpf-budat DD/MM/YYYY.
            Ende der Referenz auf Originalbeleg
              PERFORM end_doc_reference(rsbtchh0).
            WHEN 1.                        "Vorerfaßter Beleg
              WRITE:
                (29) text-507.
            WHEN 2.                        "Referenz
              WRITE:
                (12) text-503,
                     bkpf-xblnr.
            WHEN 3.                        "Storno
              WRITE:
                (12) text-504,
                     bkpf-stblg.
            WHEN 4.                        "Gelöschter vorerfaßter Beleg
              WRITE:
                (29) text-507,
                (40) text-508.
            WHEN 5.                        "Ersetzter vorerfaßter Beleg
              txt_line = text-509.
              REPLACE:
                '&BLN' WITH bkpf-xblnr(10) INTO txt_line,
                '&GJR' WITH bkpf-xblnr+10  INTO txt_line.
              WRITE:
                (29) text-507,
                (40) txt_line.
            WHEN 6.                        "Ausgleichsbeleg
              WRITE:                       "
                (29) text-510.             "
            WHEN 7.                        "zurückgen. Ausgleichsbeleg
              WRITE:                       "
                (29) text-511.             "
          ENDCASE.
        ENDIF.
      Personenkonteninformationen
      Subledger Account Information
        WRITE  31(1) sy-vline NO-GAP.
      Internal tables T0 - T5 hold data for each section.
        IF sy-index LE cnt_t1.
          READ TABLE t1 INDEX sy-index.
          IF par_hkto EQ 'X'.
            PERFORM kontonummer USING t1-ktonr hlp_sakan.
          ELSE.
            hlp_sakan = t1-ktonr.
          ENDIF.
          IF t1-xfwae EQ space.
            IF t1-xnegp = 'X'.
              t1-xnegp = '-'.
            ENDIF.
          Write the vendor number.
            WRITE:   t1-koart,
                     hlp_sakan,
                     t1-bschl NO-GAP.
            IF t1-umskz IS INITIAL.
              WRITE:    t1-xnegp NO-GAP,
                        t1-umskz.
            ELSE.
              WRITE:    t1-umskz NO-GAP,
                        t1-xnegp.
            ENDIF.
            WRITE: t1-zlspr. "CR 21709 / 23588
            WRITE: (22) t1-dmshb CURRENCY t001-waers.
          ELSE.
          Write the document currency, amount and the
          vendor/ customer

    Hi,
    Please see documentation of enhancement MM06E005 (transaction SMOD).          
    Userexit EXIT_SAPMM06E_016 is a component of enhancement MM06E005.            
    With that enhancement, you can                                                
      -   Maintain/supply your own customer fields                                
      -   Update your own customer-specific tables                                
    You cannot:                                                                   
      -   Change standard fields                                                  
      -   Change data that depends on the document header in the items            
      -   Change data that depends on an item in the document header                                                                               
    Please have a look at Business Add-In (BAdI) ME_PROCESS_PO_CUST.              
    Regards,
    Edit

  • Need to add text with box dynamically

    Hello,
    I need to add a standard text created in so10 with a box at the end of the purchase order.
    This should trigger dynamically if the condition is correct.
    For ex : PO created in plant = 100 then this text should be displayed at the end of the PO page with a box.
    DO I have to create a Window and then include this text created in so10 and then give the conditions?
    PLease suggest...
    Have a great evening!
    Regards,
    Kittu

    Hi,
    Simplest would be define a new element in the main window like:
    E  OTHER_TERMS
    /:   NEW-PAGE                                                      
    /:   INCLUDE ZPO_TERMS_AND_CONDITIONS OBJECT TEXT ID ST LANGUAGE EN
    In the pgm check your condition if satisfied then use
            CALL FUNCTION 'WRITE_FORM'
                 EXPORTING
                      element  = 'OTHER_TERMS'
                      function = 'APPEND'
                      window   = 'MAIN'
                 EXCEPTIONS
                      element  = 1
                      function = 2
                      type     = 3
                      window   = 6
                      OTHERS   = 8.
    I hope this helps,
    Regards
    Raju Chitale

  • Need to add Plant and CostCenter as Selection fileds of CJI3 Initial screen

    Hello Team,
    Can you suggest me OSS note or User exit to add Plant and CostCnters as selection criteria for CJI3 Actual cost line Items report.
    Thanks in advance,
    Best regards,
    Harish.P

    Harisha
    I agree with above reply but your requirement sounds a bit weird.
    Note sure if cost element reports are any useful for your requirement.
    Look (refer note) at the report painter option ( but you might still need to enter the Project/WBS)
    Note 668513 - FAQ 2: Cost element reports in Project System
    Regards
    Sreenivas

Maybe you are looking for

  • Z30 accessing pictures

    It seems that after the 10.2.1.2102 update, new photos are not added to 'pictures'- they are accessible via file manager but without thumbnails.  Is there a workaround or must I uninstall the update and if so, how do I do that?

  • Prelude Renaming Files Error

    I get this error when trying to ingest and rename files to my hard drive... I only get file to transcode and make alias name w/ the ext. _1. What in the process am i missing or what is it about the possible file that I am not seeing that is not allow

  • UME to CUA(ABAP) user data replication for custim attribute.

    Hi All, We have planned that Users will be created in portal and from there user data will flow to CUA(ABAP) and from CUA it will flow to r3,BW,CRM ..etc . I have configured the UME(portal) so that when ever I create user in Portal it flows to CUA (A

  • Cycle desktop pictures doesn't loop

    Hi, For my desktop picture, I have a photo album in iPhoto of all my favourite travel photos. I set the System Preferences to change them every minute, in random order. My problem is that I only have about 60 of them, and so after about an hour, it g

  • JMSException Error finding dispatcher

    I have a JMS thin-client (linux) trying to connect to a remote JMS connection factory. The program works on any WebLogic server (8.1.SP6), but not on others. So it would seem to be an IIOP problem. I've gone through the IIOP setup doc's but nothing h