cancel
Showing results for 
Search instead for 
Did you mean: 

SAP Moderator Assistance with lf_PurchaseOrder object Usage

Former Member
0 Kudos

Good Day:

SAP Moderator:

I have been trying for hours to get this functionality working. Neftali diligently attmepted assistance but I think I led him down the wrong path with my needs.

I need to be able to put the PO# in a Matrix column with the orange arrow in front of it supported by the lf_PurchaseOrder object.

On the Purchasing A/P, Purchasing Reports, Open Items List screen I change the drop down in the upper right hand corner to Purchase Orders. In the first column of this list, there is the PO# with the orange arrow in front of it. Clicking the arrow displays the PurchaseOrder.

This is what I need to do. Using the lf_PurchaseOrder object in my code, I am required to use the DocEntry number to display the PurchaseOrder when clicking the arrow. The User community does not want to see the DocEntry number. They want the PO# like "you guys" have on the above noted screen.

How can I achieve the results as you have? This is an urgent issue so I have left my phone number.

Thanks,

Ed 440-897-8648

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Ed,

The easiest way I can think of solving this problem is if you have two columns. One with the DocEntry and one with the DocNum. Put the orange arrow (linked button) column on the DocEntry column and make the column just wide enough to display the arrow. Then in the second column display the DocNum. If you click the orange arrow it will then link to the correct DocEntry.

There is no other way of linking to a different column. The linked object orange arrow must have the primary key value in the same column.

Hope it helps,

Adele

Answers (2)

Answers (2)

Former Member
0 Kudos

Ed ...

I'm still puzzled about what you want to do. I don't see any PO# , but rather the DocNum on the field you described. What is funny is the fact that I went to the table (OPOR) and both DocEntry and DocNum have exactly the same content. If one as a "1" the other has the same. So it really wouldn't matter since SAP manages both fields and apparently they'll have the same thing.

In any case, what you could do is the imitate the linked button process by code. Try this workaround ...


            If pVal.Before_Action = True Then
                Select Case pVal.EventType
                    Case SAPbouiCOM.BoEventTypes.et_MATRIX_LINK_PRESSED
                        Cursor.Current = System.Windows.Forms.Cursors.WaitCursor
                        Dim oMatrix As SAPbouiCOM.Matrix = oForm.Items.Item("mat").Specific 'indicate your matrix here
                        Dim oColumn As SAPbouiCOM.Column = oMatrix.Columns.Item("DocNum") 'indicate your column here
                        SBO_Application.ActivateMenuItem("2305") 'Menu Item for Purchase Order 
                        Dim oPForm As SAPbouiCOM.Form = SBO_Application.Forms.Item(mstrFormUID) 'mstrFormUID is a modal variable where Purchase Order Form UID is saved on the 
                        With oPForm
                            .Visible = False
                            .Freeze(True)
                            .Items.Item("8").Specific.Value = oColumn.Cells.Item(CInt(Val(pVal.Row))).Specific.Value 'Your DocNum value to put on the 
                            .Items.Item("1").Click() 'Click on the add button
                            .Freeze(False)
                            .Select()
                            .Visible = True
                        End With
                        Cursor.Current = System.Windows.Forms.Cursors.Default
                        Return False
                End Select
            Else
            End If

former_member201110
Active Contributor
0 Kudos

Hi Neftali,

In your system, the DocNum and DocEntry values are the same but this is not an obligatory configuration. On a lot of sites they will use the Document Numbering feature to set the DocNum to a specific range or ranges (there are a number of reasons why they might want to do this eg to continue the series from the previous system, to allocate ranges to particular people or departments etc). DocEntry is the internal key (and cannot be set by the user) and is not normally shown on reports or forms so the users are not used to referring to POs using this value (and of course having 2 different numbers for the same document is confusing anyway )

I think Ed means DocNum when he refers to PO# (ie the number that the user sees).

Kind Regards,

Owen

Former Member
0 Kudos

Owen:

You are correct in your explanation. DocEntry and DocNum are different values and I indeed mean DocNum when I refer to PO#.

Thanks,

EJD

Former Member
0 Kudos

Thanks for the follow-up...appreciate it.

Ed