Add linkbutton to Matrix (Screen Painter)

Hi All,
I want to add a link button in a matrix but no success (The form has been developed in Screen Painter).
Any Idea?
Best Regards,
Vangelis
Edited by: Vangelis Kanellopoulos on Dec 31, 2009 10:48 AM

Hello ,
You can have a look a this thread Re: Screen Painter.  How to...
this is a way to do it a second way is to specify in screen painter  the properties of your colum
-Type = linkedobject
-LinkedobjectType = 20
linked object type takes the BoObjectTypes Enumeration search for it in the sdk
It will give you something like this in your xml file
<column uid="C17" type="116" title="Provision Num" description="" visible="1" AffectsFormMode="1" width="102" disp_desc="0" editable="0" right_just="0" val_on="Y" val_off="N" backcolor="-1" forecolor="-1" text_style="0" font_size="-1">
<databind databound="1" table="" alias="DSProvNum"/>
<ExtendedObject linkedObject="30" LinkedObjectType="30"/>
</column>
BR
Abderrahim BOUKHRIS

Similar Messages

  • How to add new column in screen painter

    Hi
             I have try to add new column on existing screen and test screen in se51, the column is added in position correctly. But when I run program call this screen, the added column is placed as the last column.
    Please help.
    Thanks

    Thank for your replied.
              I have check the table control, it has fix column. So, I set fix column to 0 at table control but when execution by program call it's still not update what I have changed. (On test screen in se51, it come out correctly and updated)
    So, I don't know why I use program call this screen, the screen is not updated what I have try to change but, when execute in test screen it come out correctly
    PS. I have check attribute, it's numbered right.
    Please help !!
    Edited by: VerdamFK on Oct 4, 2010 8:11 AM

  • How to put "selection options without intervals" on screen painter?

    Hello all,
           I need to put a field for pernr(personal number) on screen painter (module program) and user should be able to enter a list of pernr's to process. I know in report program I can do this by:
    SELECT-OPTIONS: s_lpernr FOR pa001-pernr NO INTERVALS.
    How can I get this work on sccreen painter in module programming? How can I add a field on screen painter with a range without intervals? Please let me know.
    Thanks.
    Mithun.

    You can also do this using the function module COMPLEX_SELECTIONS_DIALOG.
    REPORT  ZTEST_SCREEN                            .
    DATA : BEGIN OF IT_DYNPFIELDS OCCURS 3.
            INCLUDE STRUCTURE DYNPREAD.
    DATA : END OF IT_DYNPFIELDS.
    DATA: TEST(10) TYPE C.
    RANGES:  R_UNAME FOR SY-UNAME.
    DATA:     V_USERNAME LIKE  SY-UNAME.
    DATA : V_PROG LIKE D020S-PROG VALUE 'ZTEST_SCREEN',
           V_DNUM LIKE D020S-DNUM VALUE '0100'.
    CALL SCREEN 100.
    *&      Module  STATUS_0100  OUTPUT
    *       text
    MODULE STATUS_0100 OUTPUT.
      SET PF-STATUS 'TEST'.
    *  SET TITLEBAR 'xxx'.
    ENDMODULE.                 " STATUS_0100  OUTPUT
    *&      Module  USER_COMMAND_0100  INPUT
    *       text
    MODULE USER_COMMAND_0100 INPUT.
      CASE SY-UCOMM.
        WHEN 'BACK'.
          LEAVE TO SCREEN 0.
      ENDCASE.
    ENDMODULE.                 " USER_COMMAND_0100  INPUT
    *&      Module  GET_CURSOR_USERNAME  INPUT
    *       text
    MODULE GET_CURSOR_USERNAME INPUT.
      REFRESH IT_DYNPFIELDS.
      CLEAR   IT_DYNPFIELDS.
      MOVE 'V_USERNAME' TO IT_DYNPFIELDS-FIELDNAME.
      APPEND IT_DYNPFIELDS.
      CLEAR   IT_DYNPFIELDS.
      CALL FUNCTION 'DYNP_VALUES_READ'
        EXPORTING
          DYNAME               = V_PROG
          DYNUMB               = V_DNUM
          TRANSLATE_TO_UPPER   = 'X'
        TABLES
          DYNPFIELDS           = IT_DYNPFIELDS
        EXCEPTIONS
          INVALID_ABAPWORKAREA = 1
          INVALID_DYNPROFIELD  = 2
          INVALID_DYNPRONAME   = 3
          INVALID_DYNPRONUMMER = 4
          INVALID_REQUEST      = 5
          NO_FIELDDESCRIPTION  = 6
          INVALID_PARAMETER    = 7
          UNDEFIND_ERROR       = 8
          DOUBLE_CONVERSION    = 9
          STEPL_NOT_FOUND      = 10
          OTHERS               = 11.
      IF SY-SUBRC EQ  0.
        READ TABLE IT_DYNPFIELDS WITH KEY FIELDNAME = 'V_USERNAME'.
        IF SY-SUBRC = 0.
          V_USERNAME = IT_DYNPFIELDS-FIELDVALUE.
        ENDIF.
      ENDIF.
      PERFORM GET_MULTIPLE.
    ENDMODULE.                 " GET_CURSOR_USERNAME  INPUT
    *&      Form  GET_MULTIPLE
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM GET_MULTIPLE .
    * Dynamically holding Field name
      FIELD-SYMBOLS: <FST> TYPE STANDARD TABLE.
      IF  R_UNAME[] IS INITIAL.
        IF NOT V_USERNAME IS INITIAL.
          R_UNAME-SIGN = 'I'.
          R_UNAME-OPTION = 'EQ'.
          R_UNAME-LOW = V_USERNAME.
          APPEND R_UNAME.
          CLEAR  R_UNAME.
        ENDIF.
      ENDIF.
      ASSIGN R_UNAME[] TO <FST>.
      CALL FUNCTION 'COMPLEX_SELECTIONS_DIALOG'
        EXPORTING
          TITLE             = 'Select Multiple Value'(059)
          TEXT              = 'Finish Group'(058)
          SIGNED            = 'X'
          LOWER_CASE        = ' '
          NO_INTERVAL_CHECK = 'X'
          JUST_DISPLAY      = ' '
          JUST_INCL         = 'X'
        TABLES
          RANGE             = <FST>
        EXCEPTIONS
          NO_RANGE_TAB      = 1
          CANCELLED         = 2
          INTERNAL_ERROR    = 3
          OTHERS            = 4.
      IF SY-SUBRC EQ  0.
        READ TABLE R_UNAME INDEX 1.
        IF SY-SUBRC = 0.
          V_USERNAME = R_UNAME-LOW.
        ENDIF.
      ENDIF.
    ENDFORM.                    " GET_MULTIPLE

  • Adding input box to screen painter

    Hi abapers,
    my question is...... is it possible to add input box to screen painter though code,
    NOT by drag and drop?

    Well it would probably be technically possible to create a complete dynpro "on the fly" in memory and then save and generate it (i.e. replicate everything SAP does in SE80) and then display it to the user... however the risks are high, and the user might not like the delay while your program does this.  The usual practice is to define the field on the screen, and then hide it if it is not required under some circumstances, using the usual "loop at screen. screen-active = '0'. endloop." technique.

  • Screen Painter and Matrix

    In screen painter I am unable to attach the folder with the respective matrix. Please give the complete method to attach the above mentioned.

    Hi Manish,
    I am not too sure what you want to know, but if you want a matrix to be displayed only on a specific folder you should do the following. I am going to show you the code, but you can do parts of it in screenpainter as well. In screen painter you cannot display it like you would at runtime.
    On your matrix you would set the PaneFrom and PaneTo properties. To only set it visible on the first folder:
            Dim oItem As SAPbouiCOM.Item
            Dim oForm As SAPbouiCOM.Form
            oForm = oApplication.Forms.ActiveForm
            oItem = oForm.Items.Item("My_Matrix")
            oItem.FromPane = 1
            oItem.ToPane = 1
    To add the folder you'll have to remember to set the ValOn and ValOff properties:
            Dim oFolder As SAPbouiCOM.Folder
            oFolder = oForm.Items.Item("My_Folder").Specific
            oFolder.Caption = "MyFolder"
            oFolder.DataBind.SetBound(True, "", "UDS_1")
            oFolder.ValOff = 0
            oFolder.ValOn = 1
    To invoke the folder's click event you have to code it manually:
    Private Sub SBO_Application_ItemEvent(ByVal FormUID As String, ByRef pVal As SAPbouiCOM.ItemEvent, ByRef BubbleEvent As Boolean) Handles oApplication.ItemEvent
            If pVal.FormTypeEx = "My_Form" Then
                If pVal.BeforeAction = True Then
                    If pVal.ItemUID = "My_Folder" Then
                        If pVal.EventType = SAPbouiCOM.BoEventTypes.et_ITEM_PRESSED Then
                            Dim oForm As SAPbouiCOM.Form
                            oForm = oApplication.Forms.ActiveForm
                            oForm.PaneLevel = 1
                        End If
                    End If
                End If
            End If
        End Sub
    Hope it helps,
    Adele

  • Screen Painter - Matrix CellHeight & TitleHeight

    Hi,
    In Screen Painter the Matrix CellHeight & TitleHeight change all the time when I open the Form in Screen Painter. It works when I run the Form, but when I change the Form I always have to change the CellHeight & TitleHeight before I close the fom...puh
    Any suggestion?
    Thank you,
    Rune

    Hai Rune,
              U r change the .srf file to .xml na. So i can able to modify the xml file. I also have the same issue. But i change in xml so its working fine.
    Here is the code
    <item uid="m_Dbond" type="127" left="15" tab_order="0" width="526" top="78" height="228" visible="1" enabled="1" from_pane="0" to_pane="0" disp_desc="0" right_just="0" description="" linkto="" forecolor="-1" backcolor="0" text_style="0" font_size="-1" supp_zeros="0" AffectsFormMode="1">
                  <AutoManagedAttribute />
                   <specific SelectionMode="0" layout="0" titleHeight="21" cellHeight="17">
                     <columns>
                       <action type="add">
                         <column uid="v" type="16" title="#" description="" visible="1" AffectsFormMode="1" width="20" disp_desc="0" editable="1" right_just="0" val_on="Y" val_off="N" backcolor="-1" forecolor="-1" text_style="0" font_size="-1">
                          <databind databound="1" table="@DBOND_DETAIL" alias="LineId" />
                          <ExtendedObject />
                        </column>
    Regards,
    Anitha

  • 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

  • Issue with Screen Painter Add-On after patch updation

    Hi Experts,
    We are using 2007 B PL10. We upgraded to PL 11 and now we are getting the following error while trying to start the Screen Painter Add-On.
    "Wrong Executable digital signature for Add-on"
    Please help!
    Thanks in advance
    Ajith G

    Hi Ajith,
    Check the thread
    Installing addons on client
    Regards
    Jambulingam.P

  • Matrix column position problem in screen painter.

    hi.
    i am facing one problem.
    ie.
    i am developing one screen.
    it is having 3 matrix
    each matrix is having some columns
    one matrix ok two matrix ok thrid  matrix ok.
    but
    under third matrix i put some columnes
    1, 2 ,3, 4,
    in screen painter design mode every thing is ok
    it is appearing like 1,2,3,4
    but at preview mode or through the code if i open
    it is  appearing like 1, 4,3,2
    in preview mode screen painter if i click on the form settings it is showing only..
    matrix one columns only  it is not showing either 2 or 3
    and if i open the form through the code..
    i am able to see the columns of matrix 1 n matrix 2 and matrix 3
    i am using some code.
    If (pVal.FormUID = "WIP2PROCESS" And pVal.ItemUID = "1000007") Then
                                oForm = SBO_Application.Forms.Item("WIP2PROCESS")
                                oForm.PaneLevel = 2
                                oForm.Settings.Enabled = False
                                oForm.Settings.MatrixUID = "59"
                            End If
    now through the source code i am able to see the each column under matrix.
    but if  i change the matrix position at form setting it is changing but
    if i click other folder and come back to previous  folder..
    again the column position is   1, 4,3,2
    previously i changed to  1,2,3,4
    how can i do it..
    screen painter can i change it..
    Any information plz update me..

    Hi Srinivas,
    Can you do one thing for me ? Open your form in screen painter, set the columns as you want to display. Now change the unique id for the matrix. Then try to open it through code or see in preview mode.
    Hope it helps.
    Thanks & Regards
    Ankit Chauhan

  • Screen Painter - Delete a Matrix Column

    Hi,
    I am trying out Screen Painter. Really nice tool…!!!
    I added 1 column to much in my Matrix, how do I delete the column?
    And how does the Swap button work? (Swap = To trade one thing for another.)
    Thank you,
    Rune

    Rune,
    I don't know if there's an easier way, but I open the XML code (the srf file), find the begining and end of the specific column info and remove it. then Save and the column is gone. You can do this in notepad or any editor. You just have to be careful to remove only the right code, but it's all together in one long section.
    Of course make a backup of the srf file first Hope this helps.

  • How to add a search help on a screen field from screen painter

    Hi,
    I would like to add an existing Search Help on a screen field in Screen painter.
    Of course it's possible to just click on th screen field and in the property box, I just have to set the name of teh search help.
    The problem is that I need the screen field to be grey and user musn't be able to change the field value if he doens't use the search help.
    I'm not allowed to modify the existing search help or to built it on my own from source code, I must use the existing one.
    Do you have an idea on how to do so?
    Regards,
    Morgan

    Dropdown Box:
    In the screen painter for that field goto properties -> Dropdown ->select listbox.
    Option 1:
    Instead let that field be in change mode and if user enters any wrong entry which is not there in the table give a error messgae.
      CHAIN.
        FIELD addr1_data-country.
        MODULE modify_screenfields1.
      ENDCHAIN.
    MODULE modify_screenfields1 INPUT.
      CASE sy-ucomm.
        WHEN 'ENTER' OR 'EXECUTE'.
          IF NOT addr1_data-country IS INITIAL.
            SELECT SINGLE landx FROM t005t INTO lws_landx WHERE
                                          land1 = addr1_data-country
                                      AND spras = 'EN'.
            IF sy-subrc <> 0.
              MESSAGE e000(zo_spa) WITH text-022.  " Invalid Country code
            ELSE.
              t005t-landx = lws_landx.
            ENDIF.
          ELSE.
            CLEAR: t005t-landx.
          ENDIF.
       ENDCASE.
    ENDMODULE.                 " modify_screenfields1  INPUT
    Option 2: Other than if u want the way u like, let that field be greyed out. don't attach the search help.
    In the PROCESS ON VALUE-REQUEST.
      FIELD addr1_data-region MODULE region_pov.
    MODULE region_pov INPUT.
    Using the F4IF_INT_TABLE_VALUE_REQUEST table value request show the search help.
    also make that field input enabled.
    ENDMODULE.                 " region_pov  INPUT
    I think this will solve ur problem.
    Regards,
    Prakash.
    Message was edited by: Prakash Ramu

  • Add functionalities to form created in screen Painter

    Hello.
    Where I can find information or an example of as
    I can add functionalities to form created in screen Painter?
    Regards,
    Jose

    Hi David,
    I want add and modify a field of it_EDIT from my form.
    I find on the web this: BoFormItemTypes.it_EDIT.
    But same error.
    I am using this code:
        Private Sub CodeForm()
            Dim oitem As SAPbouiCOM.Item
            Dim oLabel As SAPbouiCOM.BoFormItemTypes
            oForm = SBO_Application.Forms.GetFormByTypeAndCount(60004 '// <<----
    this is my form, 0)
            oitem = oForm.Items.Item("10")
            oLabel = oitem.Specific
            oLabel = "Escribir nombre"
        End Sub
    But don't  function.
    Regards,
    Jose

  • How to add record in List Box in Screen Painter(SE51) ?

    I am not able to add record in List box in Screen Painter using se51 Transaction code.
    Regards,
    Nirav Desai

    Dear All,
        I found the solution.
    If you are facing same problem , follow the bellow steps.
    1. Declare in report.
    TYPE-POOLS: VRM.
    DATA: NAME TYPE VRM_ID,
    LIST TYPE VRM_VALUES,
    VALUE LIKE LINE OF LIST.
    2. IN PBO Event.
    clear: list.
    NAME = 'TXT_PERIOD'.    " your screen field name
    VALUE-KEY = '1'.
    VALUE-TEXT = 'LINE 1'.
    APPEND VALUE TO LIST.
    VALUE-KEY = '2'.
    VALUE-TEXT = 'LINE 2'.
    APPEND VALUE TO LIST.
    VALUE-KEY = '3'.
    VALUE-TEXT = 'LINE 3'.
    APPEND VALUE TO LIST.
    CALL FUNCTION 'VRM_SET_VALUES'
    EXPORTING ID = NAME VALUES = LIST.
    Regards,
    Nirav Desai

  • Screen Painter.  How to...

    How to use the Matrix with a complex query and beeing able to make some columns with a LinkButton to the document.
    Which control should I use.  A Matrix, or a Grid
    Which one let me get Data from a complex query and by the same time beeing able to set some columns as Link to a document
    To date I've been able to use the DBDataSource.Add("BUT IT NEEDS A TABLE") not a query and I face the challenge
    of adding all the conditions with the dbDataSource.Query(CONDITIONS) which doesn't work since I have to get
    data from other tables....

    Awesome.  Thank you. 
    Just a last question.  When I set the Query in the Screen Painter. Why do I have to provide it again by code ?
    I did create the Data Table in Screen Painter and called it dtORDR but in code
    but I have to do a ExecuteQuery and provide the query again ?
    Since I get it the way you explained, why do I have to ExecuteQuery with the same query again ?
    I also get a Table not found when running
    MyDataTable is called dtORDR made in the ScreenPainter with a simple SELECT
    and by code I do like you said, and the binding are on dtORDR but I get "Table not found..."
    Here's my actual code :
    string Query = "SELECT ORDR.DocEntry AS OrderEntry, ORDR.DocNum AS OrderNum, ORDR.NumAtCard, ORDR.DocDueDate, ORDR.DocTotal, " +
                   "ORDR.CardCode AS CustomerCode, ORDR.CardName AS CustomerName, OCRD.FatherCard, OCRD.CreditLine " +
                   "FROM ORDR INNER JOIN " +
                   "OCRD ON ORDR.CardCode = OCRD.CardCode";
    oApprobationsMatrix = oForm.Items.Item("mOrders").Specific as SAPbouiCOM.Matrix;
    SAPbouiCOM.DataTable DBDataTable = oForm.DataSources.DataTables.Item("dtORDR");
    DBDataTable.ExecuteQuery(Query);
    // Settings the columns...
    oApprobationsMatrix.Columns.Item("Indicator").Width = 20;
    oApprobationsMatrix.Columns.Item("cDocNum").DataBind.SetBound(true, "dtORDR", "OrderNum");
    oApprobationsMatrix.Columns.Item("cDocNum").Editable = false;
    oApprobationsMatrix.Columns.Item("cDocNum").Width = 107;
    oApprobationsMatrix.Columns.Item("cDocEntry").DataBind.SetBound(true, "dtORDR", "OrderEntry");
    oApprobationsMatrix.Columns.Item("cDocEntry").Visible = false;
    I also tried to remove the table from the Screen Painter and use the code instead like this
    oApprobationsMatrix = oForm.Items.Item("mOrders").Specific as SAPbouiCOM.Matrix;
    SAPbouiCOM.DataTable DBDataTable = oForm.DataSources.DataTables.Add("dtORDR");
    DBDataTable.ExecuteQuery(Query);
    and I stiil get "Table Not Found"
    but the table seems to be there all right. 
    [See this image...|http://pages.videotron.com/gear/problem.jpg]

  • Screen Painter how to, manual or flash book

    Is there a screen painter manual, how to or flash book?
    I started using it but the help is to simple, for now I want to create a form that will ask for an inventory code and bring in description and barcode field.  Then the last field will ask for a quantity, that I will read with my add on to print barcode labels.
    Regards,
    William Burgos

    Hi William Burgos
    Screen painter is very basic. It only creates a screen. So all you do is make a new form, drop things on it like a text box, combo box, matrix and so on. But screen painter itself has no logic and you can't set it to do certain actions.
    Screen painter only creates the form. Then you through code must load the form that screen painter created, this form is actually a XML form. Through code you must also apply all the logic.
    Hope this helps

Maybe you are looking for

  • Is there a fix for Mountain Lion audio output settings after the laptop goes to sleep and wakes back up?

    Mac Book Pro running Mountain Lion OS X 10.8.5 after the notebook sleeps audio and video does work (for example on YouTube).  I have been able to temporarily work around this by toggling the settings on Built-in Output in Audio Midi Setup, Audio wind

  • Java FX apps won't run on the browser with Linux

    This is my current system configuration: Opensuse 12.3 x64 Nvidia Gefore 9600gt with Proprietary drivers Tried both the Oracle Java 7u45 and 7u51 (Installed according to: SDB:Installing Java - openSUSE) Google Chrome and Firefox (Latest versions for

  • Hide the sidebar in Numbers?

    Is there a way to hide the left-hand sidebar in Numbers?

  • Transfer of msg type files from Dell to Mac

    good morning - I bought my first Mac yesterday (in reality I had a Apple 2GS 20 years ago) I am transferring the daya from my Dell PC to the Mac - in the documents I want to transfer I have many msg type files from Microsoft Outlook - the Mac does no

  • Cisco PI v2.2 Network Topology Maps

    Good afternoon, I have Cisco PI v2.2 installed on a VM and working fine.  I want to add my Network Topology Maps to the main dashboard for ALL users, but I can only see them when logged in as root.  How can I get a "standard" user to be able to view