Purpose of VBDKR structure

hi
   can u please  tell me what is the purpose of VBDKR structure ?
From where does the data comes into VBDKR structure ?
in program if we write VBDKR-VBLELN, how will the value comes into the VBDKR-VBELN
thanks in advance

Hi pavan,
VBDKR sturcture is used to Document Header View for Billing .
Structure will never have any entries or data with in it. It can be used to define types as reference.
If VBDKR-VBLELN is getting any data means, that structure name would have used as internal table name or any other variable name.
Regards,
Kusuma.

Similar Messages

  • Purpose of Append Structure in DDIC(SE11)

    What is the purpose of Append Structure in DDIC(SE11)-Table?How to use this?
    Title by: Alvaro Tejada Galindo on Jan 23, 2008 6:11 PM

    Append structures are like user exits provided by SAP to enhance the Standard tables. It behaves like include structure only, but this append structure is taken care in the SAP version upgrage process, automatically. The name of append structure starts with 'Z' namespace..SAP by default proposes the append structure name with the table name prefixed with 'Z'.
    It is always recommended to modiy or append the Standard tables using append structure.
    It is the standard provided for SAP standard table enhancement.
    APPEND STRUCTURE->
    Append structures are used for enhancements that are not included in the standard. This includes special developments, country versions and adding customer fields to any tables or structures.
    An append structure is a structure that is assigned to exactly one table or structure. There can be more than one append structure for a table or structure.
    The following enhancements can be made to a table or structure TAB with an append structure:
    · Insert new fields in TAB,
    · Define foreign keys for fields of TAB that already exist,
    · Attach search helps to fields of TAB that already exist,
    These enhancements are part of the append structure, i.e. they must always be changed and transported with the append structure.
    When a table or structure is activated, all the append structures of the table are searched and the fields of these append structures are added to the table or structure. Foreign keys and search help attachments added using the append structure are also added to the table. If an append structure is created or changed, the table or structure assigned to it is also adjusted to these changes when the append structure is activated.
    Since the order of the fields in the ABAP Dictionary can differ from the order of the fields on the database, adding append structures or inserting fields in such append structures does not result in a table conversion.
    The customer creates append structures in the customer namespace. The append structure is thus protected against overwriting during an upgrade. The fields in the append structure should also reside in the customer namespace, that is the field names should begin with ZZ or YY. This prevents name conflicts with fields inserted in the table by SAP.
    http://help.sap.com/saphelp_nw04/helpdata/en/cf/21eb61446011d189700000e8322d00/content.htm
    INCLUDE->
    http://www.sapdb.org/7.4/htmhelp/f2/b1219d1b9646b0ae248a7a5a95a33e/content.htm

  • Purpose of EXTENSIONIN - structure in BAPI_BUSPROCESSND_CREATEMULTI

    Hi,
    Could anyone please explain the purpose of the structure EXTENSIONIN - ( Reference Structure for BAPI Parameters EXTENSIONIN/EXTENSIONOUT ) in the BAPI BAPI_BUSPROCESSND_CREATEMULTI.
    I was under the impression that this structure could be used to populate any Z fields that might have been created using EEWB. But going through some of the threads in this forum, I understand that to populate the custom fields created using EEWB, we use certain function modules such as CRM_CUSTOMER_H_MAINTAIN_OW .. etc.
    I'm still confused as to how we go about populating the custom fields created using EEWB. I'd greatly appreciate if anyone could explain me the process in breif.
    Thanks,
    Sahil

    Hi Kapil,
    I totally agree with you that in the normal circumstances the replication is complete. And it is the case if I create a contract where the Home Assistance is the last item...
    But when I create a contract with 3 items (10 = Electricity (new customer so a workflow is started and no replication is needed yet); 20 = Home Assistance (should be replicated to SD); 30 = Gas (new customer so a workflow is started and no replication is needed yet)) then the item 20 is not replicated...
    I changed the order of the contract (within the program) and if I create the contract with the following order (10 = Electricity (new customer so a workflow is started and no replication is needed yet); 20 = Gas (new customer so a workflow is started and no replication is needed yet); 30 = Home Assistance (should be replicated to SD)), then the Home Assistance is replicated fine...
    It is a very strange problem... replication works fine in all cases, just not in this order....
    Thanks for the tip anyhow!!
    Micha

  • About vbdkr structure

    I have retreive data from vbdkr structure' which is as following logic
    Terms of payment
    VBDKR-ZTERM_TX1
    : VBDKR-ZTERM_TX2
    : VBDKR-ZTERM_TX3
    Where VBDKR-ZTERM = VBAK-ZTERM
    please guide me to have alternate logic from structure it is not possible to retrieve the data
    thanks

    A table is a structure, but a structure is NOT a table... can't select data from a structure.

  • What is the significance of 'APPREND STRUCTURE' button in a table?

    Hello friends
    When I go to SE11 to create a table, I see a button 'APPEND STRUCTURE'. I played with it and also have noticed people definiing a structure inside the same structure (recursively).
    Why do we need 'APPEND Structure'. if it is for recursive purpose, can't be just use the internal table while coding in ABAP.
    I would appreciate if some one can clarify my doubt.
    Thanks
    Ram

    Check out the below related thread
    Purpose of Append Structure in DDIC(SE11)
    Append Structure
    Regards,
    Santosh

  • Vbdkr

    hi,
    From which partner function LAND1 value in VBDKR structure is coming, as VBDKR is a billing document header. LAND1 is a country key.
    thanks in advance

    looks like you are working on SAP Script for Sales order
    it is coming from VBPA Table and ADRC Table
    Thanks
    seshu

  • Aubtotal in ALV Report

    Dear All,
    I have a report which is working fine.
    Now I want to add the subtotal feature.
    If I sort the material column, the quantity of that material should get added.
    I tries to use LS_FIELDCAT-DO_SUM = 'X'. but problem is not solved.
    Please help.
    Points be awarded for all replies.
    regards,

    I tried but not workig.
    Can I request you to have a look at my code?
    ====================
    *& Report  ZWM_STOCK_REPORT
    Program Name          : ZWM_STOCK_REPORT
    Type / Module          : Report/WM
    Created by          : Sachin Dabhade
    Created on            : 12.01.2008
    Requestor          : Harish S S
    CRF No.          : NA
    Comments: purpose, use, design, structure, testing hints, etc
                          Modification Log:     
    *CRF No.     
    *Date          ABAPer       Functional Consultant       Description
    REPORT  ZWM_STOCK_REPORT.
    TABLES : EQUI, ZWMSERIALNO.
    TYPE-POOLS: SLIS.
    data : lv_file type string.
    data : CT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV with header line.
    *DATA : CT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.
    data : begin of itab_final occurs 0,
            qty(10),
           end of itab_final.
    data : lt_sort TYPE slis_t_sortinfo_alv,
           ls_sort TYPE slis_sortinfo_alv.
    ALV data declarations
      data: it_sortcat   type slis_sortinfo_alv occurs 1,
            wa_sort like line of it_sortcat.
    DATA : GS_LAYOUT TYPE SLIS_LAYOUT_ALV,
           GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
           LT_CAT TYPE SLIS_T_FIELDCAT_ALV,
           HEADING  TYPE SLIS_T_LISTHEADER,
           GT_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER,
           G_EXTAB TYPE  SLIS_T_EXTAB,
           GT_EVENTS      TYPE SLIS_T_EVENT,
           GT_SORT TYPE SLIS_T_SORTINFO_ALV,
           GT_LAYOUT TYPE SLIS_LAYOUT_ALV,
           G_REPID LIKE SY-REPID,
           G_SAVE,
           GS_VARIANT LIKE DISVARIANT.
    *data: it_fieldcat type slis_fieldcat_alv occurs 0,
         GS_REPID TYPE SY-REPID,
         GS_LAYOUT TYPE SLIS_LAYOUT_ALV.
    *it_fieldcat-fieldname = 'Tex'.
    *it_fieldcat-tabname   = 'ABC'.
    DATA  : BEGIN OF I_FINAL OCCURS 0,
            MATNR LIKE  MARD-MATNR , "(Material Number),
            MAKTX LIKE  MAKT-MAKTX , "(Material Desciption),
            EQUNR LIKE  EQUI-EQUNR, "( Serial Nunmber),
            ERDAT LIKE  EQUI-ERDAT,  "( Created on)
            STORAGEBIN LIKE ZWMSERIALNO-STORAGEBIN, "(Storage Bin),
            CHASSIS(30),
            ENGINE(30),
            GEARBOX(30),
            QTY(2) type n,
            END OF I_FINAL.
    DATA: BEGIN OF I_MARA OCCURS 0,
    MATNR LIKE MARA-MATNR,
    MTART LIKE MARA-MTART,
    END OF I_MARA.
    DATA : BEGIN OF I_EQUI OCCURS 0,
            EQUNR LIKE EQUI-EQUNR,
             OBJNR LIKE EQUI-OBJNR ,
             MATNR LIKE EQUI-MATNR,
             SERNR LIKE EQUI-SERNR,
             ERDAT LIKE EQUI-ERDAT,
           END OF I_EQUI.
    DATA : BEGIN OF I_EQUI2 OCCURS 0,
            EQUNR LIKE AUSP-OBJEK,
             OBJNR LIKE EQUI-OBJNR ,
             MATNR LIKE EQUI-MATNR,
             SERNR LIKE EQUI-SERNR,
             ERDAT LIKE EQUI-ERDAT,
           END OF I_EQUI2.
    ***DATA: BEGIN OF i_ser03 OCCURS 0,
            lief_nr LIKE ser01-lief_nr,
            obknr  LIKE ser01-obknr,
         END OF i_ser03.
    ***DATA: BEGIN OF i_objk OCCURS 0,
           obknr LIKE objk-obknr,
           equnr  LIKE objk-equnr,
           atwrt LIKE ausp-atinn,
         END OF i_objk.
    DATA: BEGIN OF I_MAKT OCCURS 0,
            MATNR LIKE MAKT-MATNR,
            MAKTX LIKE MAKT-MAKTX,
          END OF I_MAKT.
    DATA : BEGIN OF I_MARD OCCURS 0,
              MATNR LIKE MARD-MATNR,
              WERKS LIKE MARD-WERKS,
              LGORT LIKE MARD-LGORT,
              LABST LIKE MARD-LABST,
           END OF I_MARD.
    DATA : BEGIN OF I_ZWMSERIAL OCCURS 0,
           SERIALNO LIKE ZWMSERIALNO-SERIALNO,
           STORAGEBIN LIKE ZWMSERIALNO-STORAGEBIN,
           END OF I_ZWMSERIAL.
      DEFINE M_SORT.
        ADD 1 TO LS_SORT-SPOS.
        LS_SORT-FIELDNAME = &1.
        LS_SORT-UP = 'X'.
        LS_SORT-SUBTOT = &2.
        APPEND LS_SORT TO LT_SORT.
      END-OF-DEFINITION.
    ***DATA: BEGIN OF i_ausp OCCURS 0,
           objek LIKE ausp-objek,
           atinn LIKE ausp-atinn,
           atwrt LIKE ausp-atwrt,
         END OF i_ausp.
    ***DATA: BEGIN OF i_cabn OCCURS 0,
           atinn LIKE cabn-atinn,
           atnam LIKE cabn-atnam,
         END OF i_cabn.
    ***Data : wa_equi like i_equi,
          wa_ser03 like i_ser03,
          wa_objk like i_objk,
          wa_makt like i_makt,
          wa_mard like i_mard,
          wa_zwmserial like i_zwmserial,
          wa_ausp like i_mard,
          wa_cabn like i_cabn,
          wa_final like i_final.
    **data : p_file type string.
    DATA: GV_LINES TYPE I.
    DATA : BEGIN OF  ITAB_AUSP OCCURS 0,
    OBJEK LIKE AUSP-OBJEK,
    ATINN LIKE AUSP-ATINN,
    ATWRT LIKE AUSP-ATWRT,
    END OF ITAB_AUSP.
    DATA  : internal_no like ausp-ATINN.
    Selection Screen **************
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-800.
    PARAMETERS : P_WERKS LIKE MARD-WERKS .
    PARAMETERS : P_LGORT LIKE MARD-LGORT.
    SELECTION-SCREEN END OF BLOCK B1.
    End Of Selection Screen*********
    **START OF SELECTION EVENT ..................
    START-OF-SELECTION.
      PERFORM GET_STOCK_DETAILS TABLES I_FINAL[].
      PERFORM ALV.
    **perform display_records.
    end of selection*****************
    END-OF-SELECTION.
      DESCRIBE TABLE I_FINAL LINES GV_LINES.
      IF GV_LINES GT 0.
        WRITE : / 'Number of records transferred to file :', 50 GV_LINES.
      ELSE.
        WRITE : / 'No records selected for the given input'.
      ENDIF.
    *&      Form  get_stock_details
          text
         -->P_I_FINAL[]  text
    FORM GET_STOCK_DETAILS  TABLES   PI_FINAL LIKE I_FINAL[].
      SELECT MATNR WERKS LGORT LABST INTO TABLE I_MARD FROM MARD WHERE
                                                           WERKS = P_WERKS  AND
                                                           LGORT = P_LGORT AND
                                                           LABST > 0.
      IF NOT I_MARD[] IS INITIAL.
        SELECT MATNR MTART FROM MARA INTO TABLE I_MARA FOR ALL ENTRIES IN I_MARD WHERE MATNR = I_MARD-MATNR  AND MTART = 'FERT'.
      ENDIF.
      IF NOT I_MARA[] IS INITIAL.
        SELECT  MATNR                                            " Fetching Description : Maktx
                MAKTX
                FROM MAKT
                INTO  TABLE I_MAKT
                FOR ALL ENTRIES IN I_MARA
                WHERE MATNR = I_MARA-MATNR.
        SELECT  EQUNR OBJNR MATNR SERNR ERDAT
                FROM EQUI
                INTO  TABLE I_EQUI2
                FOR ALL ENTRIES IN I_MARA
                WHERE MATNR = I_MARA-MATNR.
        IF NOT I_EQUI2[] IS INITIAL.
          SELECT OBJEK ATINN ATWRT FROM AUSP INTO TABLE ITAB_AUSP FOR ALL ENTRIES IN I_EQUI2 WHERE OBJEK = I_EQUI2-EQUNR.
          LOOP AT I_EQUI2.
            DATA : ULINE LIKE BSVX-STTXT.
            CALL FUNCTION 'STATUS_TEXT_EDIT'
              EXPORTING
                FLG_USER_STAT = 'X'
                OBJNR         = I_EQUI2-OBJNR
                ONLY_ACTIVE   = 'X'
                SPRAS         = 'E'
              IMPORTING
                USER_LINE     = ULINE.
            IF SY-SUBRC = 0.
              IF ULINE = 'SFLT'.
                I_EQUI-EQUNR = I_EQUI2-EQUNR.
                I_EQUI-OBJNR = I_EQUI2-OBJNR.
                I_EQUI-MATNR = I_EQUI2-MATNR.
                I_EQUI-SERNR = I_EQUI2-SERNR.
                I_EQUI-ERDAT = I_EQUI2-ERDAT.
                APPEND I_EQUI.
                CLEAR I_EQUI.
              ENDIF.
            ENDIF.
          ENDLOOP.
        Data : equnr(17) type c.
        equnr = i_equi-equnr.
          SELECT SERIALNO STORAGEBIN FROM ZWMSERIALNO
                                          INTO TABLE I_ZWMSERIAL
                                          FOR ALL ENTRIES IN I_EQUI
                                          WHERE SERIALNO = I_EQUI-EQUNR+0(17).
        ENDIF.
      ENDIF.
      LOOP AT I_EQUI.
        I_FINAL-MATNR = I_EQUI-MATNR.
        I_FINAL-EQUNR = I_EQUI-EQUNR.
        I_FINAL-ERDAT = I_EQUI-ERDAT.
        READ TABLE I_MAKT WITH KEY MATNR = I_EQUI-MATNR.
        IF SY-SUBRC = 0.
          I_FINAL-MAKTX = I_MAKT-MAKTX.
        ENDIF.
        READ TABLE I_ZWMSERIAL WITH KEY SERIALNO = I_EQUI-EQUNR.
        IF SY-SUBRC = 0.
          I_FINAL-STORAGEBIN = I_ZWMSERIAL-STORAGEBIN.
        ENDIF.
        CALL FUNCTION 'CONVERSION_EXIT_ATINN_INPUT'
          EXPORTING
            INPUT         = 'CHASISNUMBER'
         IMPORTING
           OUTPUT        = internal_no.
        READ TABLE ITAB_AUSP WITH KEY OBJEK = I_EQUI-EQUNR ATINN = internal_no.
        IF SY-SUBRC = 0.
          I_FINAL-CHASSIS = ITAB_AUSP-ATWRT.
        ENDIF.
        CALL FUNCTION 'CONVERSION_EXIT_ATINN_INPUT'
          EXPORTING
            INPUT         = 'ENGINE_NUMBER'
         IMPORTING
           OUTPUT        = internal_no.
        READ TABLE ITAB_AUSP WITH KEY OBJEK = I_EQUI-EQUNR ATINN = internal_no .
        IF SY-SUBRC = 0.
          I_FINAL-ENGINE = ITAB_AUSP-ATWRT.
        ENDIF.
        CALL FUNCTION 'CONVERSION_EXIT_ATINN_INPUT'
          EXPORTING
            INPUT         = 'GEARBOXNUMBER'
         IMPORTING
           OUTPUT        = internal_no.
        READ TABLE ITAB_AUSP WITH KEY OBJEK = I_EQUI-EQUNR ATINN = internal_no. .
        IF SY-SUBRC = 0.
          I_FINAL-GEARBOX = ITAB_AUSP-ATWRT.
        ENDIF.
        i_final-qty = '1'.
        APPEND I_FINAL.
        CLEAR I_FINAL.
      ENDLOOP.
    ENDFORM.                    " get_stock_details
    *&      Form  FIELD_INITIALISATION
          text
    -->  p1        text
    <--  p2        text
    FORM FIELD_INITIALISATION USING    P_GT_FIELDCAT TYPE
    SLIS_T_FIELDCAT_ALV.
    CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
       EXPORTING
         I_STRUCTURE_NAME = 'i_final'
       CHANGING
         CT_FIELDCAT      = GT_FIELDCAT[].
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
      DATA: LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV,
      lt_sort TYPE slis_t_sortinfo_alv,
      ls_sort TYPE slis_sortinfo_alv.
    gs_layout-cell_merge = 'X'.
      LS_FIELDCAT-FIELDNAME = 'MATNR'.
      LS_FIELDCAT-COL_POS = 1.
      LS_FIELDCAT-TABNAME   =  'i_final'.
      LS_FIELDCAT-OUTPUTLEN = '18'.
      LS_FIELDCAT-SELTEXT_L = 'Material'.
      APPEND LS_FIELDCAT TO GT_FIELDCAT.
      CLEAR: LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME = 'MAKTX'.
      LS_FIELDCAT-COL_POS = 2.
      LS_FIELDCAT-TABNAME   =  'i_final'.
      LS_FIELDCAT-OUTPUTLEN = '40'.
      LS_FIELDCAT-SELTEXT_L = 'Material Description'.
      APPEND LS_FIELDCAT TO GT_FIELDCAT.
      CLEAR: LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME = 'EQUNR'.
      LS_FIELDCAT-COL_POS = 3.
      LS_FIELDCAT-TABNAME   =  'i_final'.
      LS_FIELDCAT-OUTPUTLEN = '18'.
      LS_FIELDCAT-SELTEXT_L = 'Serial Number'.
      APPEND LS_FIELDCAT TO GT_FIELDCAT.
      CLEAR: LS_FIELDCAT.
    DEFINE m_sort.
    add 1 to ls_sort-spos.
    ls_sort-fieldname = 'QTY'.
    ls_sort-up = 'X'.
    ls_sort-subtot = &2.
    append ls_sort to lt_sort.
    END-OF-DEFINITION.
      LS_FIELDCAT-FIELDNAME = 'QTY'.
      LS_FIELDCAT-COL_POS = 4.
      LS_FIELDCAT-TABNAME   =  'i_final'.
      LS_FIELDCAT-OUTPUTLEN = '18'.
      LS_FIELDCAT-SELTEXT_L = 'QTY'.
      LS_FIELDCAT-DO_SUM = 'X'.
      APPEND LS_FIELDCAT TO GT_FIELDCAT.
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME = 'CHASSIS'.
      LS_FIELDCAT-COL_POS = 5.
      LS_FIELDCAT-TABNAME   =  'i_final'.
      LS_FIELDCAT-OUTPUTLEN = '18'.
      LS_FIELDCAT-SELTEXT_L = 'Chasis Number'.
      APPEND LS_FIELDCAT TO GT_FIELDCAT.
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME = 'ENGINE'.
      LS_FIELDCAT-COL_POS = 6.
      LS_FIELDCAT-TABNAME   =  'i_final'.
      LS_FIELDCAT-OUTPUTLEN = '18'.
      LS_FIELDCAT-SELTEXT_L = 'Engine Number'.
      APPEND LS_FIELDCAT TO GT_FIELDCAT.
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME = 'GEARBOX'.
      LS_FIELDCAT-COL_POS = 7.
      LS_FIELDCAT-TABNAME   =  'i_final'.
      LS_FIELDCAT-OUTPUTLEN = '18'.
      LS_FIELDCAT-SELTEXT_L = 'Gear Box'.
      APPEND LS_FIELDCAT TO GT_FIELDCAT.
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME = 'STORAGEBIN'.
      LS_FIELDCAT-COL_POS = 8.
      LS_FIELDCAT-TABNAME   =  'i_final'.
      LS_FIELDCAT-OUTPUTLEN = '18'.
      LS_FIELDCAT-SELTEXT_L = 'Storage Bin'.
      APPEND LS_FIELDCAT TO GT_FIELDCAT.
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME = 'ERDAT'.
      LS_FIELDCAT-COL_POS = 9.
      LS_FIELDCAT-TABNAME   =  'i_final'.
      LS_FIELDCAT-OUTPUTLEN = '18'.
      LS_FIELDCAT-SELTEXT_L = 'Production Date'.
      APPEND LS_FIELDCAT TO GT_FIELDCAT.
      CLEAR LS_FIELDCAT.
    ENDFORM.                    " FIELD_INITIALISATION
    *&      Form  ALV
          text
    -->  p1        text
    <--  p2        text
    FORM ALV .
    *m_sort 'QTY' 'X'.
    gs_layout-cell_merge = 'X'.
      PERFORM FIELD_INITIALISATION USING GT_FIELDCAT[].
      G_REPID = SY-REPID.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
        I_CALLBACK_PROGRAM                = G_REPID
        I_CALLBACK_TOP_OF_PAGE            = 'TOP_OF_PAGE'
         IS_LAYOUT                         = GS_LAYOUT
         IT_FIELDCAT                       = GT_FIELDCAT
         it_sort                           = it_sortcat
         I_SAVE                           = 'A'
       TABLES
          T_OUTTAB                          = I_FINAL
    EXCEPTIONS
       PROGRAM_ERROR                     = 1
       OTHERS                            = 2
      IF SY-SUBRC <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    write :/ 'Hello'.
    ENDFORM.                    " ALV
    *&      Form  build_sortcat
          Build Sort catalog
    FORM build_sortcat .
      wa_sort-spos      = 1.
      wa_sort-fieldname = 'QTY'.
      wa_sort-SUBTOT    = 'X'. "subtotals any totals column by this field
    gd_sortcat-tabname
      APPEND wa_sort TO it_sortcat.
    wa_sort-spos      = 2.
    wa_sort-fieldname = 'EBELP'.
    gd_sortcat-tabname
    APPEND wa_sort TO it_sortcat.
    ENDFORM.
    ====================

  • Features I would like to see in LabView to enhance documentation and transparency

    Problem1: How to make the operator aware of what a logical structure is currently doing/waiting for.
    Suggested solution: Introduce a "Header" in all the structures, including a structure NAME and a structure INFO and TEXT (all of which may be entered in ASCII, or fed a value from inside).
    Nested structures may feed values "outwards", overriding the previous text in this field.
    Thus, accessing the header of the structure "NAME" and retrieving its "INFO" you may actually get the "NAME" of the last activated sub-structure, and so forth.
    Benefits:
    a) In the code, the header will serve to enforce further documenting the purpose of the structure. On the top of a case structure (for example) you will always see it's NAME (i.e. "Machine Supervision") and for each case you feed a separate INFO (i.e. "Overcurrent has Tripped") and a TEXT (i.e. "Check this or that and press GO to continue")
    b) As each case is entered (or "continually"?) the header is made globally available to a "Header info vi" or directly to a front panel object. Thus, on the front panel the operator may easily track the actions of the program. (i.e. This program is currently doing "Machine Supervision". It is currently in state "Overcurrent has tripped". The programmer now advices you to "Check this or that and press GO to continue")
    Problem2: What really happened when things went wrong? There are many ways to solve this general problem, however...
    Suggested solution: I would like a special "Event Printer" front panel object. That is, a fifo register where info may be entered (from the "Header" above perhaps) and where the last few events may readily be displayed for the operator, much like a solid state event printer.
    Benefits: Allows the operator a nice means to track the operation of the program. (and the programmer an easy way of accomplishing it). Example printout:
    |09.00 > "Initialization" |
    |09.03 > "Machine Supervision" |
    |11.42 > > "Overcurrent has tripped"|
    (I can think of many options here, such as a selectable fifo depth, how much should be visible, scrollable or not, printing up/down or left/right, etc. This way you can make anything from a simple "current action" field, up to a scrollable historical event database from now, back to when the program was started.
    If you have a really elegant way of doing the same with current vi's, I would be interrested to learn how.
    Best regards / Ake Hansson

    All this is functionality you can create coding your own VIs. It's nice that LabVIEW comes with in-built functions fro a lot of basic tasks..it even has a wealth of functions for very specific tasks...but you got to draw the line somewhere (and let third-party developers do the rest...).
    Creating a functional global/que e.g. to hold the last status update from different processes and then read that status and display it on an indicator (or on the window status bar (using e.g. G Toolkit)) is straigtforward.
    You can create a version of each structure with string constants or controls in the upper corner(s), fed into the functional global/que...save it in a VI that you put in the user.lib directory and then set the Merge VI option in the palette...you now have a
    structure template with the header field and status que.
    MTO

  • IPhoto '08 album organization while network sharing

    I use iPhoto to store and organize (hopefully) a University's photo archive (which is shared on a network). Would anyone happen to know why my albums do not stay organized (in alphabetical order) when I access a shared iPhoto library remotely?
    Also, when I create a new folder and place albums inside of it (for further organization purposes because there are many, many albums) then try to access that folder remotely from another mac, that folder is not 'recognized' as a true folder with albums in it, instead it is treated as one big album.
    Another issue is that when i try to export my iPhoto library (under file>export) it won't keep the organization structure (the separate albums). Instead, it places the entire collection of photos into one location, thus losing all those albums and hours of organization.
    I'm a bit shocked that Apple hasn't found these issues and fixed them 7 releases later.
    Plus, for those people on campus that need access to the University photo archive, they have to find a Mac nearby. Is there any way to share this archive with PCs using iPhoto? Or is there an Adobe product or other other product I should be using that is better designed for these purposes (organization/file structure consistency when network sharing and cross-platform compatible)??
    I hope I don't have to switch to a new application, everyone in my department (and other Mac departments) are completely comfortable with iPhoto and it would be a huge learning curve for them to try a new photo database/sharing/storing/editing/organizing/etc. application!
    Please help!

    Welcome to the Apple Discussions.
    I use iPhoto to store and organize (hopefully) a University's photo archive (which is shared on a network).
    This is way, way beyond the intended use of iPhoto which is personal photo organiser.
    Also, when I create a new folder and place albums inside of it (for further organization purposes because there are many, many albums) then try to access that folder remotely from another mac, that folder is not 'recognized' as a true folder with albums in it, instead it is treated as one big album.
    Only Albums are shared. Not events. not folders. Only Albums.
    Another issue is that when i try to export my iPhoto library (under file>export) it won't keep the organization structure (the separate albums). Instead, it places the entire collection of photos into one location, thus losing all those albums and hours of organization.
    If you export your Library you get the photos from your Library. If you want to export albums, then export the albums. The same happens with iTunes. Export from the Library you get the lot. Want the organisation, export playlist by playlist.
    Is there any way to share this archive with PCs using iPhoto?
    No. iPhoto has no cross platform capability.
    There are other cross platform apps. Microsoft's Expression (http://www.microsoft.com/expression/products/overview.aspx?key=web) is one but there are others. Search on MacUpdate
    Bearing in mind the use you have I really don't think that iPhoto is the correct application for your needs. You need a more robust and scalable application - perhaps even a media server.
    Regards
    TD

  • Events in Reports

    hi ,
    can any one help me the events or any sample codes used for the below reports
    1) ABAP Query Report
    2) Report Writer / Report Painter
    3) logical database reports
    thanks
    Edited by: Alvaro Tejada Galindo on Feb 4, 2008 2:43 PM

    ABAP/4 Queries
    Many times a need arises for SAP Users and Functional Consultants to generate quick reports without getting any ABAP coding done – time taken to complete the coding in development, transport and test it in QA system and then transport to production – is sometimes too long. In such cases, ABAP/4 query is a tool provided by SAP for generating these kind of reports.
    This document aims at explaining the concept of ABAP/4 query in a simple and straight forward manner. The reader of this document should have a moderate knowledge of ABAP concepts and authorizations for understanding the concept of ABAP query.
    Type of Report Desired
    Before starting to write an ABAP query, its advisable to decide the type of report that the user wants. ABAP query provides the following type of reports:
    Basic List        Simple report
    Statistics         Report containing statistical functions like Average &Percentage
    Ranked List     Report written for analytical purpose
    Check this link for more details.
    http://www.thespot4sap.com/Articles/SAP_ABAP_Queries_Introduction.asp
    Report Writer / Report Painter
    Initially, both tools were only available to the FI/CO modules. Later, with the introduction of the Logistics Information System and Flexible Analyses in Release 3.x, the functionality of these tools was further expanded. It still is not widely known that the Report Painter/Writer can be used for reporting against structures other than those delivered in FI and CO
    A common misconception in the user community is that Report Painter/Report Writer can only be used to report against a single table. However, some reporting structures do report against multiple tables. For example, CCSS (for Cost Center Accounting) refers to tables COSP, COSS and more, depending on the key figure configuration. Similarly, FI-SL (Special Purpose Ledger) reporting structures include summary and line-item tables (the key figure set determines where the data comes from).
    To configure other table joins, views may be created joining the necessary tables, and views can be added to the control tables, via Flexible Analyses in LIS. Report Painter/Report Writer can be used in almost any application area in R/3 to report on currencies and quantities.
    CHeck this for more details.
    http://sapabap.iespana.es/sap/info/report_painter/report_painter_02.htm
    logical database reports
    Logical database is another tool for ABAP reports. Using LDB we can provide extra features for ABAP reports.
    While using LDB there is no need for us to declare Parameters.
    Selection-screen as they will be generated automatically.
    We have to use the statement NODES in ABAP report.
    If there are many tables the Performance will be slow as all the table data will be read from top node to bottom node .
    Check this link.
    http://help.sap.com/saphelp_nw70/helpdata/en/9f/db99b435c111d1829f0000e829fbfe/content.htm
    Also check this link
    http://wiki.ittoolbox.com/index.php/How_many_types_of_reports_are_there_in_ABAP_and_what_is_the_difference_between_them%3F

  • Run part of code first

    Hi folks,
    i'm using Labview to control a camera and a motor, both of which need some initialization before I can use them.  Currently I check does condition manually but it is getting time consuming and unproductive.  I wish that part of my code run first and before any other code in my VI.  I'm a bit clueless of how can this be done and my gutfeeling is that is shouldn't be that hard.
    I've tried using boolean to start my loop once the code is run but this is not effective when I more than one initialisation sequence to run.  Labview run them in parallel...
    Can somebody help?
    Thanks in advance.
    Solved!
    Go to Solution.

    Sequence structures are rarely needed if you use the dataflow paradigm on which LabVIEW is based.  Stacked sequence structures obscure code, require left to right wiring to pass data among frames, and generally create more problems than they solve.
    A single frame sequence structure can be used to enforce an order of execution on two nodes which have no data dependency.  The common example of this is placing a Wait function between two VIs such as VISA Write and Read.  Since the Wait does not have error in and error out terminals, wiring the error through a sequence structure with the Wait inside forces the wait to occur after the Write and before the Read.
    A three frame flat sequence is used as a timing test structure.  The first and third frames contain a Tick Count function and the middle frame contains the code to be timed.  If the code being timed is likely to take less than a few milliseconds, it is usually repeated in a For loop to accumulate enough time to be measurable by this technique.  This is only used to check various algorithms or programming techniques for speed and does not appear in the final code.
    For most other purposes a sequence structure can usually be replaced by a state machine or other architecture which inherently uses dataflow and is much more flexible.
    Lynn

  • REPORT WRITER AND REPORT PAINTER

    Hi Techis,
    Will anybody pls tell me the details workin of reort painter and report writer along with Tr code and also will u pls give me the steps to execute such type of report.
    Rewards will be given for each reply.
    Regards
    Santosh L.

    hi santosh,
    Where Is Report Painter/Report Writer Used?
    Initially, both tools were only available to the FI/CO modules. Later, with the introduction of the Logistics Information System and Flexible Analyses in Release 3.x, the functionality of these tools was further expanded. It still is not widely known that the Report Painter/Writer can be used for reporting against structures other than those delivered in FI and CO (see TechTalk on page 8-4).
    A common misconception in the user community is that Report Painter/Report Writer can only be used to report against a single table. However, some reporting structures do report against multiple tables. For example, CCSS (for Cost Center Accounting) refers to tables COSP, COSS and more, depending on the key figure configuration. Similarly, FI-SL (Special Purpose Ledger) reporting structures include summary and line-item tables (the key figure set determines where the data comes from).
    To configure other table joins, views may be created joining the necessary tables, and views can be added to the control tables, via Flexible Analyses in LIS. Report Painter/Report Writer can be used in almost any application area in R/3 to report on currencies and quantities.
    Data tables supported
    Both Report Painter and Report Writer can be used to report on the following tables and tables types:
    < Evaluation structures set up in the Logistics Information System (LIS). These structures normally begin with an “S” or “ZF.” Several different tables and views within the R/3 System can be added as evaluation structures.
    Note: You cannot add cluster tables, such as BSEG.
    < CCSS is used for Cost Center Accounting (CO-CCA), Internal Orders (CO-OPA), Activity Based Costing (CO-ABC) and for cost element reports in Project Systems (PS).
    < GLFUNCT is used for functional area reporting in cost-of-sales accounting.
    < GLPCT and GLPCOP are used for Profit Center Accounting (CO-PCA/EC-PCA).
    < FILC is used for Legal Consolidations (FI-LC).
    < COFIT is used for the Controlling Reconciliation Ledger (CO-CEL).
    < ZZ tables are created for the Special Purpose Ledger (FI-SL).
    < FIMC is used for consolidations in the Enterprise Controlling module (EC-LC).
    < GLT0 is used for Financial Accounting (General Ledger) reports by account, company, and business area (FI-GL).
    < KKBC, KKBE, and KKBU are used for the Controlling Product Costing module (CO-Costing).
    < New in Release 4.0A: RWCOOM is used for CO-CCA, CO-OPA, and CO-ABC. RWCOOM is used for special standard reports like internal order budget reports, cost center budget reports and cost component reports.
    Note: RPPS was used for Project Systems (PS). However, it is obsolete and will no longer be supported in Release 4.0. In Release 3.x there were only two special reports (6P70 and 6P71) using RPPS. These reports cannot be called directly, but via ABAP reports RKOPLAN0 and RKOPLAN1.
    How to Access Report Painter/Report Writer?
    To access the Report Painter you may use either of the following two methods:
    < Transaction FGRP
    < From the SAP main menu, choose Information systems ® Ad hoc reports® Report painter.
    Report Writer functions can be accessed from within the Report Painter. To access Report Writer, choose the following menu path from the SAP main menu:
    Information systems ® Ad hoc reports® Report painter® Report Writer.
    How Is Report Painter/Report Writer Organized?
    Report Painter/Report Writer has four main components:
    < Sets: Sets are logical groupings of characteristic values. For example, a cash line on a balance sheet is made up of a set of cash accounts or an energy product line on an inventory report is made up of a set of energy products. Variables can also be created which are placeholders for sets, or values within sets.
    < Libraries: Libraries control which characteristics and key figures from a table are available for reporting.
    < Reports: Reports hold a definition of the rows, columns, and overall data selection. They also include the header and footer texts and layout settings.
    < Report Groups: Report groups can contain one or more reports. The report group is what you execute—not the actual report. A report group is generated to create a set of ABAP programs that produce the reports.
    How Does Report Painter Differ from Other Reporting Tools?
    < With the exception of row titles which have text fields, Report Painter/Report Writer reports display numerical fields only (for example, dollar and quantity fields). This is not a requirement for ABAP Query and typical line item reporting tools, which can display arbitrary text columns.
    < While printed Report Painter/Report Writer reports appear much the same way on paper as they do on screen, the Drilldown reporting tool produces a different output format. Drilldown reporting is an online analytical tool which can be used to drill down to different levels of detail, but it is infrequently used for printing.
    < Report Painter/Report Writer reports are hierarchical and take advantage of configured hierarchies (for example, with cost center hierarchies). You can also execute Report Painter/Report Writer reports from each level within a hierarchy.
    < Report Painter/Report Writer reports can handle multiple currency/quantity units within a single column.
    < Report Painter/Report Writer is well suited to handle reports that require mass production. For example, Report Painter/Report Writer is a particularly effective tool for creating month-end reports.
    refer this link
    http://help.sap.com/saphelp_erp2005/helpdata/en/66/bc7d2543c211d182b30000e829fbfe/frameset.htm
    http://abaplearner.blogspot.com/2007/12/more-abap-tutorials.html
    http://www.virtuosollc.com/PDF/Get_Reporter.pdf
    regards,
    sravanthi

  • Hi Regarding Report Painter/Writer

    Hi All,
    I am new to the Report Painter/Writer concepts. I got an object based on this concept.
    Can you help me where i can get the material on Report Painter/Writer. and what are the important Tcodes used in Report Painter/Writer.
    Already i had some Ztcodes i need to enhance/customize these tcodes by adding some extra fields to the report output.
    Help me out in this senario. how to proceed ?
    Thanks in advance to all, Waiting for your Fast replies.
    Urs,
    Sateesh.

    hi sateesh,
    Where Is Report Painter/Report Writer Used?
    Initially, both tools were only available to the FI/CO modules. Later, with the introduction of the Logistics Information System and Flexible Analyses in Release 3.x, the functionality of these tools was further expanded. It still is not widely known that the Report Painter/Writer can be used for reporting against structures other than those delivered in FI and CO (see TechTalk on page 8-4).
    A common misconception in the user community is that Report Painter/Report Writer can only be used to report against a single table. However, some reporting structures do report against multiple tables. For example, CCSS (for Cost Center Accounting) refers to tables COSP, COSS and more, depending on the key figure configuration. Similarly, FI-SL (Special Purpose Ledger) reporting structures include summary and line-item tables (the key figure set determines where the data comes from).
    To configure other table joins, views may be created joining the necessary tables, and views can be added to the control tables, via Flexible Analyses in LIS. Report Painter/Report Writer can be used in almost any application area in R/3 to report on currencies and quantities.
    Data tables supported
    Both Report Painter and Report Writer can be used to report on the following tables and tables types:
    <        Evaluation structures set up in the Logistics Information System (LIS). These structures normally begin with an “S” or “ZF.” Several different tables and views within the R/3 System can be added as evaluation structures.
            Note: You cannot add cluster tables, such as BSEG.
    <        CCSS is used for Cost Center Accounting (CO-CCA), Internal Orders (CO-OPA), Activity Based Costing (CO-ABC) and for cost element reports in Project Systems (PS).
    <        GLFUNCT is used for functional area reporting in cost-of-sales accounting.
    <        GLPCT and GLPCOP are used for Profit Center Accounting (CO-PCA/EC-PCA).
    <        FILC is used for Legal Consolidations (FI-LC).
    <        COFIT is used for the Controlling Reconciliation Ledger (CO-CEL).
    <        ZZ tables are created for the Special Purpose Ledger (FI-SL).
    <        FIMC is used for consolidations in the Enterprise Controlling module (EC-LC).
    <        GLT0 is used for Financial Accounting (General Ledger) reports by account, company, and business area (FI-GL).
    <        KKBC, KKBE, and KKBU are used for the Controlling Product Costing module (CO-Costing).
    <        New in Release 4.0A: RWCOOM is used for CO-CCA, CO-OPA, and CO-ABC. RWCOOM is used for special standard reports like internal order budget reports, cost center budget reports and cost component reports.
    Note: RPPS was used for Project Systems (PS). However, it is obsolete and will no longer be supported in Release 4.0. In Release 3.x there were only two special reports (6P70 and 6P71) using RPPS. These reports cannot be called directly, but via ABAP reports RKOPLAN0 and RKOPLAN1.
    How to Access Report Painter/Report Writer?
    To access the Report Painter you may use either of the following two methods:
    <        Transaction FGRP
    <        From the SAP main menu, choose Information systems ® Ad hoc reports® Report painter.
    Report Writer functions can be accessed from within the Report Painter. To access Report Writer, choose the following menu path from the SAP main menu:
    Information systems ® Ad hoc reports® Report painter® Report Writer.
    How Is Report Painter/Report Writer Organized?
    Report Painter/Report Writer has four main components:
    <        Sets: Sets are logical groupings of characteristic values. For example, a cash line on a balance sheet is made up of a set of cash accounts or an energy product line on an inventory report is made up of a set of energy products. Variables can also be created which are placeholders for sets, or values within sets.
    <        Libraries: Libraries control which characteristics and key figures from a table are available for reporting.
    <        Reports: Reports hold a definition of the rows, columns, and overall data selection. They also include the header and footer texts and layout settings.
    <        Report Groups: Report groups can contain one or more reports. The report group is what you execute—not the actual report. A report group is generated to create a set of ABAP programs that produce the reports.
    How Does Report Painter Differ from Other Reporting Tools?
    <        With the exception of row titles which have text fields, Report Painter/Report Writer reports display numerical fields only (for example, dollar and quantity fields). This is not a requirement for ABAP Query and typical line item reporting tools, which can display arbitrary text columns.
    <        While printed Report Painter/Report Writer reports appear much the same way on paper as they do on screen, the Drilldown reporting tool produces a different output format. Drilldown reporting is an online analytical tool which can be used to drill down to different levels of detail, but it is infrequently used for printing.
    <        Report Painter/Report Writer reports are hierarchical and take advantage of configured hierarchies (for example, with cost center hierarchies). You can also execute Report Painter/Report Writer reports from each level within a hierarchy.
    <        Report Painter/Report Writer reports can handle multiple currency/quantity units within a single column.
    <        Report Painter/Report Writer is well suited to handle reports that require mass production. For example, Report Painter/Report Writer is a particularly effective tool for creating month-end reports.
    refer this link
    http://help.sap.com/saphelp_erp2005/helpdata/en/66/bc7d2543c211d182b30000e829fbfe/frameset.htm
    http://abaplearner.blogspot.com/2007/12/more-abap-tutorials.html
    http://www.virtuosollc.com/PDF/Get_Reporter.pdf
    regards,
    sravanthi

  • Material in which Costing relevancy has not been maintained in routing

    Hi,
    I want list of materials for which Costing relevancy has not been maintained in routing process. Kindly let us know report/table name.
    Regards....Kaushal Maheshwari

    We need to list of all in-house material, so ca03 will not solve purpose & MAKL is structure table so we are not able to generate list of such items.
    Regards.....Kaushal

  • Guidance required: How to access global panel/file handles from within a dll?

    Hi again,
    I have been tasked with trying to separate an application into a modular form, basically I will have a main application which will be a generic GUI which must be associated with a DLL that contains test sequences. Currently these test sequences make calls to the various panel controls to display the test information, this currently works great. The problem that I am having is trying to understand code that is compiled to create a DLL is made aware of, what is essentially, global constants that are defined in my main application. 
    The purpose of this structure is that we will have a generic GUI for multiple products tests, with each DLL representing a different products test sequence, each DLL will be built using the same framework with the generic GUI in mind. 
    I guess essentially what I am looking for is to call RunUserInterface() from main.exe and control the GUI from tests.dll. Is this at all possible, or should I be using a different approach?
    It would be much appreciated if someone could give me some pointers.
    Thanks very much 

    Well, in my opinion for such a software design, DLL modules should not directly modify the main GUI.
    The main.exe should be responsible from its GUI, so that in case of a GUI modification you should not be have to modify all DLLs.
    Also, in this case, there is no problem of accessing global handles, etc.
    Instead, you should send "messages" to the main.exe from the test DLLs and the GUI should know what to do with each message.
    For messaging between such applications I personally use the DDE library. I find it simple to use.
    Your main.exe can setup a DDE server and the test DLLs can attach to it as a client.
    Each DLL can send its "steps" to the GUI and the GUI can display them and command the DLL to run each step upon user's selection. 
    I have seen menchar's posts regarding "shared memory" usage for such purposes.
    There might be other options, too. 
    It is your decision to make.
    Hope this helps, 
    S. Eren BALCI
    www.aselsan.com.tr

Maybe you are looking for