Problems with matrix's columns

Hi friends,
I'm working on the "133" SBO form , and i would exchange
data from the four columns i've added to the Matrix,to the UserTable i've created before.
I created columns in this way:
FUColSp = FUmatrix.Columns.Add("col1", SAPbouiCOM.BoFormItemTypes.it_EDIT)
                            FUColSp.TitleObject.Caption = "Saldo"
                            FUColSp.Width = 60
                            FUColSp.Editable = True
Now i would make some calculations between values on the columns' cells and my usertable data.
The problem is that SBO doesn't allow me to edit values in the "new columns' cells" so i can do nothing.
How can i solve this problem?
Does every column "MUST BE BOUNDED" to a datasource or not?
Thank you very much!
Giammichele.

Hi,
You can create a UserdataSource to your columns.
1- Create a UserdataSource in you form
oForm.DataSources.UserDataSources.Add("MyDataCol1", SAPbouiCOM.BoDataType.dt_SHORT_NUMBER, 30)
2-Create your column and assign the datasource
FUColSp = FUmatrix.Columns.Add("col1", SAPbouiCOM.BoFormItemTypes.it_EDIT)
FUColSp.TitleObject.Caption = "Saldo"
FUColSp.Width = 60
FUColSp.Editable = True
FUColSp.DataBind.SetBound(True, "MyDataCol1", "col1")
3- Use the value of your column
Ribeiro Santos

Similar Messages

  • Facing problem with a date column in select query

    Hi,
    I am facing problem with a date column. Below is my query and its fainling with " invalid number format model" .
    Query: SELECT *
    FROM EMP
    WHERE trunc(LAST_UPDATED) >= to_date(to_char(22-05-2009,'dd-mm-yyyy'),'dd-mm-yyyy')
    LAST_UPDATED column is "DATE" data type.
    Please help me Thanks

    Radhakrishna Sarma wrote:
    SeánMacGC wrote:
    WHERE LAST_UPDATED >= to_date('22-05-2009','dd-mm-yyyy');
    You do not need the TRUNC here in any case.
    I don't think so. What if the user wants only data for 22nd May and the table has records with date later than 22nd also? In that case your query willl not work. In order for the Index to work, I think the query can be written like this I think Sean is right though. Use of TRUNC Function is quiet useless based on the condition given here, since the to_date Function used by OP will always point to midnight of the specified date, in this case 22-05-2009 00:00:00.
    Regards,
    Jo
    Edit: I think Sean proved his point... ;)

  • Problem with matrix/screen in Qosmio F55-Q502

    Hello
    For a few weeks I have strange problem with matrix/screen in my laptop.
    The matrix flickers very often - no matter if power cable is plugged or not.
    The screen is full bright and suddenly it starts to blink - it is getting darker, than lighter, usually for few/dozen seconds. It does it when nobody touches it or when I work on it.
    It very annoying and making eyes tired - it does it very quickly and there are few levels of screen brightness.
    Moreover sometimes the screen turns off - You can see what is on desktop but the screen is very very dark (but not blank or completely switched off). It happens without any reason - sometimes just in the middle of working, sometime for example when I touch (not pull) the power cable between laptop and power supply.
    Then, the only way to get back to normal brightness of screen id to close the lid just for half a second and open it
    - matrix lights then normally, but can "turns off" moment later and I must do it once again - sometimes even few times..
    After "action" with lid screens seems like nothing ever happen..
    Does anyone have idea what is the cause of such behaviour or how to diagnose it in details?
    Or maybe solve this problem?
    Best regards
    300m

    Sounds like the Backlight or Inverter is failing or there is a loose connection.
    Is the unit under warranty? Send it to an ASP for repair.
    You should avoid repairing it yourself, the backlight is very high voltage!

  • Problem with creating virtual column

    Hello,
    We've got problem with creating virtual column.
    There is table R_T that contain columns R_ID and L_ID, we would like to create virtual column RL_ID that contains sth like 'R_ID-L_ID' (R_ID, L_ID and RL_ID are varchars).
    According documentation we've tried:
    alter table R_T add column (RL_ID varchar2(60) generated always as (R_ID||'-'||L_ID) VIRTUAL)
    but getting
    ORA-00904: : invalid identifier
    00904.00000 - "%s: invalid identifier"
    Have no idea where is the problem.
    Table, columns names are little different but contains only capital letters A - Z and underscore "_".
    Has anyone idea?
    Thanks a lot.

    Strange...
    This does work for me :
    Connected to Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
    Connected as dev
    SQL>
    SQL> create table r_t (
      2   r_id varchar2(25),
      3   l_id varchar2(25)
      4  );
    Table created
    SQL> insert into r_t (r_id, l_id) values('R','L');
    1 row inserted
    SQL> alter table r_t add (rl_id varchar2(60) generated always as (r_id||'-'||l_id) virtual);
    Table altered
    SQL> select * from r_t;
    R_ID                      L_ID                      RL_ID
    R                         L                         R-L
    SQL>

  • Problem with Matrix/Checkbox/Datasource

    Hi, i have a problem with a Matrix.
    There are 3 Columns on this Matrix, one of those is a Checkbox. I fill the Columns with data, the Checkboxes where just added (no Checkbox is selected), the user has to select the value (Checkbox)he want's to by hand.
    After i filled the Matrix i can see all the data on the Form, it's OK, but then i loose all entries after SBO is doing some work. There where shown only the empty rows and the checkboxes.
    I guess it has something to do with the databinding. My problem is that i don't have the Data for this form on a db-table. I fill in the matrix the result of some querys. It looks like i need at least a DB-Field for the checkboxes, otherwise there are not working (not selectable)
    Somebody knows a solution how i can keep the Data in the Matrix after SBO is doing some work? What could be the reason that i loose the data after filling it in the Matrix? Is there an easy way?
    Thanks Andreas

    Almost every item on a form need a datasource... If the item reprecents some data in a table the databinding must be a dbds... If the data does not reflect any data in a table (Calulated value, user-decision, ect.) a userdatasource need to be created...
    Add a userdatasource
    oForm.DataSources.UserDataSources.Add(UID,type,length);
    Databind to DBDS
    col.DataBind.SetBound(true,”TABLE”,”FIELD”);
    Databind to UDS
    col.DataBind.SetBound(true,””,UID);

  • Problem with a 2 columns Range Partitioning for a indexed organized table

    have an indexed organized table with a 2 column PK. the first field (datum) is a date field the second field (installatieid) is a number(2) field.
    Every minute a 7 records are inserted (installatieid 0-6).
    I like to partition this table with one partition per year per installatieid.
    I tried to do it with:
    partition by range(datum,installatieid)
    (partition P_2004_0 values less than (to_date('2004-01,'yyyy-mm'),1)
    ,partition P_2004_6 values less than (to_date('2004-01','yyyy-mm'),7)
    partition P_2005_0 values less than (to_date('2005-01','yyyy-mm'),1)
    ,partition P_2005_6 values less than (to_date('2005-01','yyyy-mm'),7)
    but now only the P_2004_0 and P_2005_0 are filled.
    I thought about to combine a range partition on datum with a list subpartition on installatieid, but I read this is not allowed with an index organized table.
    How can I solve this problem.

    partition by range(datum,installatieid)
    (partition P_2004_0 values less than
    (to_date('2004-01,'yyyy-mm'))
    ,partition P_2004_6 values less than
    (to_date('2004-07','yyyy-mm'))
    partition P_2005_0 values less than
    (to_date('2005-01','yyyy-mm'))
    ,partition P_2005_6 values less than
    (to_date('2005-07','yyyy-mm'))
    ? Sorry haven't got time to test it this morning ;0)

  • Problems with Adding Fields/Columns to Crosstab in XI

    Post Author: ph03nix
    CA Forum: General
    I am having problems with formatting a crosstab report in CRXI and am hoping that someone has a solution. 
    The crosstab report is a subreport, and requires the following columns, grouped by Firm (also not working optimally, but at least working):
    Evaluator,   Factor1Rate,[Factor2Rate, .., FactorNRate], Summary, UpdateDate, UpdatedBy
    Where:
    Evaluator is the person that did the evaluation that resulted in each rating (formula field)
    Factor1Rate, etc, may have one, many, or all of these be applicable - there can be up to 15 of these.  Each FactorRate column is to  display the "rating" given by the Evaluator in the corresponding row/column (this much works).  The table heading is a formula, but the corresponding rate is not.
    Summary should display "Complete"  if and only if there is a Comment field (not displayed) filled out for each FactorNRate that has a value of 0, 1 or 5 - otherwise it is blank
    DateEntered is one of 2 fields ("last_updated" , or "creation_date" if  last_updated is null - a formula field)
    UpdatedBy is the last name of the person who last touched the ratings (formula field)
    I have gotten the FactorRates to display in the headers, and gotten the corresponding rates to display underneath them, but I cannot seem to add any other columns to the report - they are either added as headers with the factor_rating columns repeated as subgroups (with incorrect data), or are added under existing headers with duplicates of the ratings.  I just want to add one column for each field as if it were a normal (non-crosstab) table. 
    TIA!

    the 3 last files
    Attachments:
    Z1&Z2.vi ‏19 KB
    tau_inn (SubVI).vi ‏16 KB
    tau_ut (SubVI).vi ‏10 KB

  • Problems with Range 2D Column Flash Chart

    I am having three problems with the Range 2D Column Flash Chart.
    1. Series Name: I have two series one named AAA the other BBB. AAA returns two values AAA_MIN and AAA_MAX. BBB returns two values BBB_MIN and BBB_MAX. The Legend shows two series both labeled AAA.
    2. Show Hints: The Hint Labels are all AAA even when looking at a BBB value. And the Values show no precision, 0.03 shows as 0.
    3. Y Axis Scale not showing precision. My values range from 0.01 to 0.11 and the Y Axis Scale simply shows all 0

    Hi Marco.
    Thanks for the help.
    2 and 3) I have reverted to handling the decimal places declaratively rather then with Custom XML. Thanks for that, I just did not see that setting on the form.
    As for (1) I did read something about the column alias was supposed to show as the Label for the Legend and Hints. But I am not doing something right. These are the SQL for each of my two Series. In my Legend and Hints I get:
    AAA
    AAA
    First Series:
    Series Name = AAA
    SQL =
    select
        NULL as LINK,
        to_char(DATETIME, 'DD HH24') || ':00' as LABLE,
        round(min(decode(AAA,0,NULL,AAA)),1) as "AAA_MIN",
        round(max(decode(AAA,0,NULL,AAA)),1) as "AAA_MAX"
    from
        ZZZZ
    where
        DATETIME between to_timestamp(:P47_SEARCH_X_FROM_DATE,'MM/DD/YYYY HH24:MI') and to_timestamp(:P47_SEARCH_X_TO_DATE,'MM/DD/YYYY HH24:MI')
    group by
            to_char(DATETIME, 'DD HH24')
    order bySecond Series:
    Series Name = BBB
    SQL =
    select
        NULL as LINK,
        to_char(DATETIME, 'DD HH24') || ':00' as LABLE,
        round(min(decode(BBB,0,NULL,BBB)),1) as "BBB_MIN",
        round(max(decode(BBB,0,NULL,BBB)),1) as "BBB_MAX"
    from
        ZZZZ
    where
        DATETIME between to_timestamp(:P47_SEARCH_X_FROM_DATE,'MM/DD/YYYY HH24:MI') and to_timestamp(:P47_SEARCH_X_TO_DATE,'MM/DD/YYYY HH24:MI')
    group by
            to_char(DATETIME, 'DD HH24')
    order by
        2 asc

  • Problem with Matrix columns of type Float

    Hi all!
    I need to show in a matrix column a quantity with the number of decimal set in SBO. My code is:
    Dim dt As SAPbouiCOM.DataTable = oFrm.DataSources.DataTables.Add("PCKG")
    dt.Columns.Add("clQta", SAPbouiCOM.BoFieldsType.ft_Float, 30)
    oCl = oGrid.Columns.Add("clQta", SAPbouiCOM.BoFormItemTypes.it_EDIT)
    oCl.Width = 100
    oCl.TitleObject.Caption = tr.getTranslation("clQta") '"Quantità"
    oCl.DataBind.Bind("PCKG", "clQta")
    In this way the number of decimal that i see is 2 because the field type is Float, but in SBO parameterization i have set 4 decimal and would like to see the same number of decimal set in SBO parameterization.
    How can I do?
    Thanks

    Hi,
    If i know well, this is now a limitation of B12007 version. in 8.8 this problem will be resolved.
    othwewise of you set all the prices, Quantities, Sumarizes to 4 it will display for. I think it is now displaying the Quantity settings. (float)
    Regards,
    J.
    Edited by: János Nagy on Oct 7, 2009 12:50 PM

  • Problem with Matrix columns of type Quantity

    Hi all!
    I need to show in a matrix column a quantity with the number of decimal set in SBO. My code is:
    Dim dt As SAPbouiCOM.DataTable = oFrm.DataSources.DataTables.Add("PCKG")
                    dt.Columns.Add("clQta", SAPbouiCOM.BoFieldsType.ft_Float, 30)
    In this way the number of decimal that i see is 2, but in SBO parameterization i have 4 decimal.
    How can I do?
    Thanks

    Hi,
    Check this option.  Go to Administration -> System Initialization -> General Settings -> Display tab.  Here check the Decimal places for Quantities.  It might be 4.  Change it to 2 and recheck the value in your form.
    Hope this helps.
    Regards,
    Satish.

  • Unusual Problem with Matrix

    Hi Guys,
    I have a matrix which is on the UDO form. I have bound all the columns with DB DataSources. I have one column of combobox type where in the back end i have the valid values
    "1-Approved"
    "2-Pending"
    "3-Rejected"
    The problem here is that when the form is opened the matrix column only shows values 2 and 3 ("2-Pending","3-Rejected").
    I also have another Column with 2 Valid values, again facing the same problem. Only one value is being shown.
    But in the backend when i check in the "Manage User Fields" Screen all the 3 Valid values are visible.
    Am i doing something wrong..??
    Thanks in Advance,
    Vasu Natari.

    Hi,
    For me, even if the validvalues are added, it is working. Real.
    Here is a code for matrix columns, and it is shows me on the form the description.
    You must have to add of course validvalues to show the description (as in the description). This sample
    is shows you the ship types of orders. You also can use userdatasources....
    Sub ComboDesc()
            Dim oForm As SAPbouiCOM.Form = m_SBO_Application.Forms.Add("TEST_MTX")
            oForm.Visible = True
            Dim oitem As SAPbouiCOM.Item = oForm.Items.Add("MTX", SAPbouiCOM.BoFormItemTypes.it_MATRIX)
            With oitem
                .Top = 5
                .Left = 5
                .Width = oForm.Width - 15
                .Height = oForm.Height - 15
                .AffectsFormMode = False
            End With
            Dim oMatrix As SAPbouiCOM.Matrix = oitem.Specific
            Dim oColumns As SAPbouiCOM.Columns = oMatrix.Columns
            Dim oDBDataSource As DBDataSource = oForm.DataSources.DBDataSources.Add("ORDR")
            Dim oColumn As SAPbouiCOM.Column = oColumns.Add("#", SAPbouiCOM.BoFormItemTypes.it_EDIT)
            With oColumn
                .TitleObject.Caption = "#"
                .Description = .TitleObject.Caption
                .Width = 30
                .DataBind.SetBound(True, "ORDR", "DocEntry")
                .Editable = False
            End With
            oColumn = oColumns.Add("COL1", SAPbouiCOM.BoFormItemTypes.it_COMBO_BOX)
            With oColumn
                .Width = 80
                .TitleObject.Caption = "ShipType"
                .Description = .TitleObject.Caption
                .Editable = False
                .DataBind.SetBound(True, "ORDR", "TrnspCode")
                .DisplayDesc = True
                .Visible = True
            End With
            Dim vv As SAPbouiCOM.ValidValues = oColumn.ValidValues
            Dim ors As SAPbobsCOM.Recordset = ocmp.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
            ors.DoQuery("select * from OSHP")
            Do While Not (ors.EoF)
                vv.Add(ors.Fields.Item(0).Value, Left(ors.Fields.Item(1).Value, 30))
                ors.MoveNext()
            Loop
            oDBDataSource.Query()
            oMatrix.LoadFromDataSource()
        End Sub
    Regards
    J.

  • Problem with ALV Report Column

    Hi
    I have ALV report that got tons of columns and most of them are showing correctly. But there are two or three where i have a do sum checked got a small problem. The HEADING of the columns says NUMBER instead of its column name...
    Look at my code:
      ls_fieldcat-fieldname      =      'ETIME'.
      ls_fieldcat-ref_tabname    =      'REC'.
      ls_fieldcat-ref_fieldname  =      'ETIME'.
      ls_fieldcat-seltext_s      =      'ET      '.
      ls_fieldcat-seltext_m      =      'Et Tm           '.
      ls_fieldcat-seltext_l      =   'End Time             '.
      append ls_fieldcat to pt_fieldcat.
      ls_fieldcat-fieldname      =                'HOURS'.
      ls_fieldcat-ref_tabname    =                'PC2BF'.
      ls_fieldcat-ref_fieldname  =                'ANZHL'.
      ls_fieldcat-seltext_s      =                'Hrs    '.
      ls_fieldcat-seltext_m      =                'Hors '.
      ls_fieldcat-seltext_l      =                'Hours'.
      ls_fieldcat-decimals_out = 2.
      ls_fieldcat-no_zero = 'X'.
      ls_fieldcat-datatype = 'DEC'.
      ls_fieldcat-do_sum = 'X'.
      append ls_fieldcat to pt_fieldcat.
      ls_fieldcat-no_zero = ''.
      ls_fieldcat-datatype = ''.
      ls_fieldcat-outputlen = ''.
      ls_fieldcat-do_sum = ''.
      ls_fieldcat-decimals_out = ''.
      ls_fieldcat-fieldname = ''.
      ls_fieldcat-fieldname      =                'PNUMB'.
      ls_fieldcat-ref_tabname    =                'PC20E'.
      ls_fieldcat-ref_fieldname  =                'PRAKN'.
      ls_fieldcat-seltext_s      =                'P#     '.
      ls_fieldcat-seltext_m      =     'Pre #       '.
      ls_fieldcat-seltext_l      =   'Premium #           '.
      ls_fieldcat-datatype       =                'NUMC'.
      append ls_fieldcat to pt_fieldcat.
      ls_fieldcat-datatype       = ''.
    The column with Hours is showing NUMBER with the total sum but the column before and after that shows correctly.
    I have tried taken out the
    <b> ls_fieldcat-do_sum = 'X'.</b>
    Then its shows correctly but i need it to do the sum.
    Is there anything i need to do in order to show the columns correctly?
    Please help. <b><REMOVED BY MODERATOR></b>. thanks
    Message was edited by:
            Anwarul Kabir
    Message was edited by:
            Anwarul Kabir
    Message was edited by:
            Alvaro Tejada Galindo

    here is the whole program. you can upload this run it for your self if that helps in any way...
    *& Report  ZHEADCOUNT       *
    REPORT  ZHEADCOUNT no standard page
    heading message-id zw line-size 255.
    *       Dictionary tables/structures
    tables: teven,
            ZSHIFTS,
            ZHEADCT.
    * Global ALV Data Declarations
    type-pools slis.
    include: rpcxB200, RPTBAL01.
    DATA: BEGIN OF REC OCCURS 0,
      PERNR LIKE TEVEN-PERNR,
      LDATE LIKE TEVEN-LDATE,
      LTIME LIKE TEVEN-LTIME,
      SATZA LIKE TEVEN-SATZA,
      TERID LIKE TEVEN-TERID,
      PLANS LIKE TEVEN-PLANS.
    DATA: END OF REC.
    data:
      begin of x_sortinfo_alv occurs 0,
          spos                  like alvdynp-sortpos,
          fieldname             type slis_fieldname,
          tabname               type slis_fieldname,
          up                    like alvdynp-sortup,
          down                  like alvdynp-sortdown,
          group                 like alvdynp-grouplevel,
          subtot                like alvdynp-subtotals,
          comp(1)               type c,
          expa(1)               type c,
          obligatory(1)         type c,
        end   of x_sortinfo_alv,
        d                like scal-indicator,  
        v_variant        like disvariant,
        v_repid          like sy-repid,
        v_save(1)        type c,
        lv_sortseq       type i,
        s_title(20),    
        fieldcat         type slis_t_fieldcat_alv,
        ls_line          type slis_listheader,
        gd_layout        type slis_layout_alv,
        gt_sp_group      type slis_t_sp_group_alv,
        gt_sort          type slis_t_sortinfo_alv,
        ls_sort          type slis_sortinfo_alv,
        events           type slis_t_event,
        list_top_of_page type slis_t_listheader,
        top_of_page      type slis_formname value 'TOP_OF_PAGE',
        v_exit(1)        type c,
        v_pdsnr like assob-pdsnr,
        ls_fieldcat type slis_t_fieldcat_alv.
    constants:
      alv_slis_formname       type slis_formname value 'ALV_USER_COMMAND',
      c_yes                   like space value 'X',
      c_no                    like space value space,
      c_dev LIKE  sy-sysid VALUE 'DEV',
      c_device(4) TYPE c   VALUE 'LOCL'.
    * define selection screen
    selection-screen begin of block elmo with frame title text-001.
    selection-screen begin of line.
    selection-screen comment 1(30) text-002.
    select-options  p_terid for TEVEN-TERID.
    selection-screen end of line.
    selection-screen begin of line.
    selection-screen comment 1(30) text-003.
    select-options p_shift for ZSHIFTS-DWS.
    selection-screen end of line.
    selection-screen end of block elmo.
    selection-screen begin of block blk2 with frame title text-004.
    PARAMETERS: p_vari like disvariant-variant.
    selection-screen end   of block blk2.
    *  Form  Initialization
    initialization.
      v_repid = sy-repid.
      v_save = 'A'.
      clear v_variant.
      v_variant-report = v_repid.
    * Get default variant
      alv_variant = v_variant.
      call function 'REUSE_ALV_VARIANT_DEFAULT_GET'
        EXPORTING
          i_save     = v_save
        CHANGING
          cs_variant = alv_variant
        EXCEPTIONS
          not_found  = 2.
      if sy-subrc = 0.
        p_vari = alv_variant-variant.
      endif.
    *  At Selection-Screen event (value help)
    at selection-screen on value-request for p_vari.
      perform f4_for_variant.
    *  At Selection-Screen event (check input data)
    at selection-screen on p_vari.
      if p_vari <> space.
        v_variant-report  = v_repid.
        v_variant-variant = p_vari.
        call function 'REUSE_ALV_VARIANT_SELECT'
          EXPORTING
            i_dialog            = c_no
            it_default_fieldcat = field_tab[]
            i_layout            = gs_layout
          CHANGING
            cs_variant          = v_variant.
        if sy-subrc <> 0.
          call function 'REUSE_ALV_VARIANT_SELECT'
            EXPORTING
              i_dialog            = c_yes
              it_default_fieldcat = field_tab[]
              i_layout            = gs_layout
            CHANGING
              cs_variant          = v_variant.
        endif.
      endif.
    *                       main logic
    TOP-OF-PAGE.
    START-OF-SELECTION.
    GET PERNR.
      RP-PROVIDE-FROM-LAST P0001 SPACE PNPBEGDA PNPENDDA.
    * process the data according to the payroll area
      IF PERNR-WERKS EQ P0001-WERKS AND PERNR-BTRTL EQ P0001-BTRTL
         AND PERNR-KOSTL EQ P0001-KOSTL AND PERNR-BUKRS EQ P0001-BUKRS
         AND PERNR-ABKRS EQ P0001-ABKRS AND PERNR-KOKRS EQ P0001-KOKRS.
        PERFORM RETRIEVE_Time.
      ENDIF.
    END-OF-SELECTION.
      Perform call_alv.
    *==================================*
    *=================================*
    FORM RETRIEVE_Time.
    Clear: REC.
           Select * from teven where PERNR EQ PERNR-PERNR
                                 AND TERID IN p_terid
                                 AND LDATE >= PNPBEGDA
                                 AND LDATE <= PNPENDDA.
                MOVE:
                     TEVEN-PERNR TO REC-PERNR,
                     TEVEN-LDATE TO REC-LDATE,
                     TEVEN-LTIME TO REC-LTIME,
                     TEVEN-SATZA TO REC-SATZA,
                     TEVEN-TERID TO REC-TERID,
                     TEVEN-PLANS TO REC-PLANS.
                APPEND REC.
           endselect.
    ENDFORM.                            " RETRIEVE_PAYROLL
    *  CALL_ALV
    form call_alv.
      perform build_field_catalog using field_tab[].
      perform build_eventtab      using events[].
      perform comment_build       using header_alv[].
      perform build_sorttab       using gt_sort[].
      perform build_layout.
    * Call ABAP List Viewer
      call function 'REUSE_ALV_GRID_DISPLAY'
        exporting
          i_callback_program      = v_repid
          i_callback_user_command = 'ALV_USER_COMMAND'
          i_structure_name        = 'REC'
          it_fieldcat             = field_tab
          it_special_groups       = gt_sp_group
          it_sort                 = gt_sort
          i_save                  = v_save
          is_variant              = v_variant
          it_events               = events
          is_layout               = gd_layout
        tables
          t_outtab                 = REC
        exceptions
          program_error            = 1
          others                   = 2.
    endform.                    "call_alv
    * BUILD_FIELD_CATALOG
    form build_field_catalog USING pt_fieldcat type
                                   slis_t_fieldcat_alv.
    *  data:  ls_fieldcat type slis_fieldcat_alv.
      clear: fieldcat, pt_fieldcat[].
      data : l_tabname type slis_tabname. " Table Name
       l_tabname = 'REC'.
      call function 'REUSE_ALV_FIELDCATALOG_MERGE'
        exporting
          i_program_name = v_repid
          i_internal_tabname = l_tabname
          i_inclname = v_repid
        changing
          ct_fieldcat = ls_fieldcat
        exceptions
          inconsistent_interface = 1
          program_error = 2
          others = 3.
      if sy-subrc <> 0.
        message id sy-msgid type sy-msgty number sy-msgno
        with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      else.
    *    append ls_fieldcat to pt_fieldcat.
      endif.
    endform.                    "build_field_catalog
    * BUILD_EVENTTAB
    form build_eventtab using events type slis_t_event.
    * Registration of events to happen during list display
      data: tmp_event type slis_alv_event.
      call function 'REUSE_ALV_EVENTS_GET'
        EXPORTING
          i_list_type = 0
        IMPORTING
          et_events   = events.
      read table events with key name = slis_ev_top_of_page into tmp_event.
      if sy-subrc = 0.
        move top_of_page to tmp_event-form.
        append tmp_event to events.
      endif.
    endform.                    "build_eventtab
    * COMMENT_BUILD
    form comment_build using pt_top_of_page type slis_t_listheader.
      data: v_head_string(255) value space, d1(2), m1(2), y1(2), d2(2), m2(2), y2(2).
      clear: ls_line, pt_top_of_page.
      ls_line-typ  = 'H'.
      data pnpfrom(10).
      data pnpto(10).
      data: print_date(10).
      data: print_time(10).
      d1 = PNPBEGDA+6(2).          d2 = PNPENDDA+6(2).
      m1 = PNPBEGDA+4(2).          m2 = PNPENDDA+4(2).
      y1 = PNPBEGDA+2(2).          y2 = PNPENDDA+2(2).
      concatenate m1 '/' d1 '/' y1 into pnpfrom.
      concatenate m2 '/' d2 '/' y2 into pnpto.
      ls_line-info = sy-repid.
      append ls_line to pt_top_of_page.
      concatenate 'Printed by:' sy-uname 'on' print_date 'at' print_time
      into ls_line-info separated by space.
      append ls_line to pt_top_of_page.
      ls_line-info = 'BGM INDUSTRIES, INC.'.
      append ls_line to pt_top_of_page.
      concatenate 'Period:' pnpfrom 'to' pnpto
      into ls_line-info separated by space.
      append ls_line to pt_top_of_page.
    endform.                    "comment_build
    *       Build layout for ALV grid report
    form build_layout.
      gd_layout-no_input          = 'X'.
      gd_layout-colwidth_optimize = 'X'.
    *  gd_layout-totals_text       = 'Totals'(255).
    *  gd_layout-info_fieldname    = 'LINE_COLOR'.
    endform.                    " BUILD_LAYOUT
    * TOP_OF_PAGE
    form top_of_page.
      call function 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          i_logo             = 'Z_BGLOGO'
          it_list_commentary = header_alv.
    endform.                    "top_of_page
    *&      Form  build_sorttab
    *       Set up the sorting for the report.
    form build_sorttab using pt_sort type slis_t_sortinfo_alv.
      clear lv_sortseq.
      perform build_sort tables pt_sort changing ls_sort.
      ls_sort-fieldname = 'PERNR'.
      ls_sort-subtot    = 'X'.
    endform.                    " build_sorttab
    *  Use to add another sort field.
    form build_sort
      tables   pt_sort
      changing ls_sort structure x_sortinfo_alv.
      clear ls_sort.
      add 1 to lv_sortseq.
      ls_sort-spos = lv_sortseq.
      ls_sort-up = 'X'.
      ls_sort-tabname = 'REC'.
    endform.                    "build_sort
    *&      Form  f4_for_variant
    form f4_for_variant.
      call function 'REUSE_ALV_VARIANT_F4'
        EXPORTING
          is_variant = v_variant
          i_save     = v_save
        IMPORTING
          e_exit     = v_exit
          es_variant = alv_variant
        EXCEPTIONS
          not_found  = 2.
      if sy-subrc = 2.
        message id sy-msgid type 'S' number sy-msgno
                with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      else.
        if v_exit = space.
          p_vari = alv_variant-variant.
        endif.
      endif.
    endform.
    Message was edited by:
            Anwarul Kabir

  • Problem with Number of Columns in XML Report

    Hi,
    I am trying to make a XML report with more than 64 columns. When i am trying to load the data into MS Word , it is giving me error saying a table cannot have more than 63 columns. If i reduce the no.of columns , then i am able to create the report.Can any one advise me how to overcome the error.
    Thanks and Regards
    Raj

    >
    Balaram naidu Bankuru wrote:
    > Hello Bhaskaran,
    >
    > I tried that approach as well,but still issue exists.I am using Generic user id for executing Web Dynpro ABAP application in portal via iView.Does it anything do with generic user id.We also observed one more issue where table columns are getting disappeared..
    >
    > Thanks,
    > Balaram
    Hallo Balaram,
    Appearance of the column order we have had this problem and i thought that we have solved by position method. Looks like that we have tried that method and didnt work seems now.
    As far as i know it is nothing to do with Generic user id except that there are no personalization involved.
    Table column disappearing might be a personalization issue.

  • Big problems with Matrix and Screen Painter

    Hi all !!!
    I have a terrible time with my matrix in screen painter. I looked over all the samples in SDK and tried different things. The closest i got to make it work is when my form loads, i can click in each on my cells on the first row of the matrix but when i enter data if i click on another cell i lose the data. My form is fairly simple. I got 4 fields as regular data and a matrix with 8 columns. Can someone help me with this !!!  Maybe one of you have an complete example for entering manually data in cells and then save it. I'm using a UDT (not UDO) table and using .net ...
    Thanks in advance

    Hi Alain
    It's not necaserry to delete the matrix. Leave it there. Then access your matrix with the following code
    Dim oMatrix As SAPbouiCOM.Matrix
    Dim oColumn As SAPbouiCOM.Column
    Dim oColumns As SAPbouiCOM.Columns
    oMatrix = SBO_Application.Forms.Item("FormID").Items.Item("MatrixID").Specific
    oColumns = oMatrix.Columns
    oMatrix.Clear()
    then create datasource and bind
    oForm.DataSources.UserDataSources.Add("DataID", SAPbouiCOM.BoDataType.dt_SHORT_TEXT, 20)
    oColumn = oColumns.Item("ColID")
    oColumn.DataBind.SetBound(True, "", "DataID")
    Hope this helps

  • Problem with Matrix Editor

    I have recently been unable to open the matrix editor when trying to edit midi notes. I did a search to see if anyone else experienced this, I found some clues but I am still having problems. I am pretty sure it is my system and not the midi files I am getting off the net. I tried opening a track that I had edited before and nothing. The windows menu highlights when I press "command 6" but nothing happens. All of the other windows open except the matrix.
    First I made sure the "links" button was greyed out. I can only get it to turn purple and grey. I thought it used to turn yellow. Is there some other setting I have mistakenly switch off. I am really frustrated and need a fresh perspective. Thanks for you time. Phil
    Dual 1.8 G5   Mac OS X (10.4.4)   Dual Raptors, Digitech, TCHelicon and BBE Sound Processors

    Not quite sure what happened but for some reason I ran the setup as AU assistants again just for the heck of it. Now the window open with no problem or hesitation. I just love computers ( when they do what I want them to)!

Maybe you are looking for