Skip to Content
Author's profile photo Horst Schaude

How to Add Extension Fields to Standard Queries with Key User Tools (Silverlight)

There is a way to extend SAP queries with Extension Fields by simply using Key User Tools.

If you need to use those field in the PDI itself you can make use of the “Custom Object References”

I tried this with Silverlight; for HTML 5 please look here.

  1. As we use the Key User Tools your Business User should be a Key User.
    This means the “Application and User Management”  work center must be assigned to this user
  2. Go to the UI for which you want to enhance the query.
  3. Switch to the Adaption Mode via the menu
    /wp-content/uploads/2015/08/switch2adaptation_mode_772703.gif
  4. Expand the UI by clicking on “Advanced” so that the individual query parameters are displayed
  5. Switch to Edit Screen via the menu
    /wp-content/uploads/2015/08/edit_screen_772705.gif
  6. Now you see on the right side the supported adaptions.
    Click on the Extension Fields.
    If your required field is not listed you can create one.
    No_ext_field_on_query.gif
  7. Mark the checkbox Visible for all those field you the query to be extended by.
    As result these fields appear on the UI.
    Ext_field_on_Query.gif
  8. Finally click on Save or Publish.
    /wp-content/uploads/2015/08/save_publish_772706.gif

That’s all, folks.

Horst

Assigned Tags

      4 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Jacques-Antoine Ollier
      Jacques-Antoine Ollier

      Hello Horst,

      Does a field added like that to the Advanced Query panel is added to the Queries of the Root node in the SDK?

      I have extended the Employee BO with a custom field and I would like to add this field to the QueryByIdentificaiotn query, but it seems it does not work as only the Common node is extensible and not the root. Moreover there is no query in the common node.

      thank you for your attention.

      Best regards.

      Jacques-Antoine Ollier

      Author's profile photo Horst Schaude
      Horst Schaude
      Blog Post Author

      Hello Jacques-Antoine,

      First, this works only with Key User Extension fields, because any Extension Field from SDK may not exist in another tenant in which the Key User content is importet / re-created but no deployment for the resp. solution has happend.

      Second, as you wrote the Root node of the BO Emplyoee is not extensible. Another point for: No, this won't work. 🙁

      Sorry,

         Horst

      Author's profile photo Former Member
      Former Member

      Dear Horst schaude,

      How can i do -> i would like to Display the Approver Name list one by one in purchase Order Form.

      i try to create Two Field(Approver ,Approver1) In purchase order.xbo and then write query.

      The Code is Below.(using For each statement)

       

      import ABSL;
      import AP.Common.GDT;
      var QueryPurch=PurchaseOrder.QueryByElements;// Write the code to get data from QueryByElements;
      var QueryParams=QueryPurch.CreateSelectionParams();// Set the Selection parameters for query
      QueryParams.Add(QueryPurch.ID.content,"I","EQ",this.ID.content);// Pass the value in selection parameters
      var ResultPurch = QueryPurch.Execute(QueryParams);// Execute the Query

      foreach (var approve in ResultPurch) {
      if( ResultPurch.Count()>0) {
      var ApproverParty = ResultPurch.GetFirst().ApproverParty;
      if(ApproverParty.IsSet()) {
      var ApproverName = ApproverParty.Party.Name.GetFirst();
      if(ApproverName.IsSet()) {
      this.Approver1 =this.Approver+ApproverName.PartyFormattedName.content;
      if(!this.Approver.Contains(ApproverName.PartyFormattedName.content))
      {

      this.Approver= ApproverName.PartyFormattedName.content;

      }

      }

      }

      }
      }

      i have two approver 1.krish and 2. Issac

      but the 2.Issac approver name only Show in Newly created Po.how can i List the approver name 1 & 2 one by one.

       

       

       

      Author's profile photo Horst Schaude
      Horst Schaude
      Blog Post Author

      Hello Yogaraj,

      If you use the iterator

      foreach (var approve in ResultPurch) {

      you should use the variable "approve" in the body of the loop instead of direct access like "ResultPurch.GetFirst()."

      Then you will read also the second approver.

      HTH,
      .    Horst