System form loadable in Screen Painter ?

Hello,
is it possible, in some way to load one of the system form in screen painter?
How?
Thank you

I would like to know which are the values possible to insert to be sure that are not used by other system forms.
Must appformnumber and FormType have same value?
In Screen Painter there is only FormType and not appformnumber attribute and when I save they assume same value.
Which relation is there between this FormType and number of form that I see inside Sap Business One System Information when I run it?
Thank you very much

Similar Messages

  • Load form created by screen painter

    hello every one,
    i've a problem. What are the steps to be followed to load a form created by screen painter?  might i have any  sample code In order to understand the various phases? thank a lot

    hi
    lorenzo pelati
      first u   create  a  form in   screen painter , nd after save this form , when  u save this form than this fom  extation is  .srf file,   after that  convert this file  to  .xml
      file ,  and after call  this form to   our application ,
    follow this code.........................................
    in this code  newpa.xml     is a one form xml file.
    in this code   SBOFormEditor_13  is a screen painter  form id,
      private void LoadFromXML( ref string FileName ) {
            System.Xml.XmlDocument oXmlDoc = null;
            oXmlDoc = new System.Xml.XmlDocument();
            // load the content of the XML File
            string sPath = null;
            sPath = System.IO.Directory.GetParent( Application.StartupPath ).ToString();     
              sPath = System.IO.Directory.GetParent( sPath ).ToString();
              oXmlDoc.Load( sPath + "
    " + FileName );
            // load the form to the SBO application in one batch
              string sXML = oXmlDoc.InnerXml.ToString();
            SBO_Application.LoadBatchActions(ref sXML);
        private void SaveAsXML( ref SAPbouiCOM.Form Form ) {
            System.Xml.XmlDocument oXmlDoc = null;
            string sXmlString = null;
            oXmlDoc = new System.Xml.XmlDocument();
            // get the form as an XML string
            sXmlString = Form.GetAsXML();
            // load the form's XML string to the
            // XML document object
            oXmlDoc.LoadXml( sXmlString );
            string sPath = null;
            sPath = System.IO.Directory.GetParent( Application.StartupPath ).ToString();
            SBO_Application.MessageBox("sahe ha " + sPath, 1, "OK", "", "");
            // save the XML Document
            oXmlDoc.Save( ( sPath + @"\newpa.xml" ) );
      public   call form() {
            SetApplication();
            string transTemp0 = "newpa.xml";
            LoadFromXML( ref transTemp0 );
                    oForm = SBO_Application.Forms.Item("SBOFormEditor_13");
            // Show the loaded Form
            oForm.Visible = true;
            SaveAsXML( ref oForm );
       fallow this code .

  • Is it possible to open a form created with screen painter more than once?

    I have created a form with the screen painter. In the screen painter the form is assigned a FormUID. Probably because this is done, it is impossible to open the form more than once??
    Thanks,
    Kind regards

    Hi J.
    The answer is yes You just have to give your form a unique id.
    1) Give your form in screen painter a name like BTWO_DYNAMIC_UID (just plain text).
    2) Make sure your <i>FormType</i> and <i>appformnumber</i> have a unique number (i.e. 2000060001). You can do this in the xml source.
    3) By loading your document replace the BTWO_DYNAMIC_UID with an unique id. I have a counter that's a member of my class and increase that number to get a unique id (BTWO_F_1, BTWO_F_2 etc)
    I have added a code sample, SBOApplication is my SAP application object and mFormNumber is a member (integer) of my class.
    <i>Succes d'r mee, en als 't nie lukt hoor ik het wel... ;)</i>
    <b>Code (C#):</b>
    // New xml document
    XmlDocument oXmlDoc = new XmlDocument();
    private Form LoadUniqueForm(string AMyFile)
      // Define your path to
      sPath = @"Forms" + AMyFile;
      // Load the form
      oXmlDoc.Load(sPath);
      // Replace the string with an unique id
      mFormNumber++;
      string sXML = oXmlDoc.InnerXml.Replace("BTWO_DYNAMIC_UID", "BTWO_F_" + mFormNumber.ToString());
      // load the XML file in SAP
      SBOApplication.LoadBatchActions(ref sXML);
      // Return the form
      return SBOApplication.Forms.Item("BTWO_F_" + mFormNumber.ToString());

  • 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 increase formUID to a form created with screen painter

    Hi,
    I've got a problem with my form. I created a form with screen painter but i can't succeed to increase my UID form.
    For example, when i open my first form, the UID is always at FP_0.
    My script:
    private string FormUID = null;
      public FP_Form(int NumInstance_)
                this.NumInstance = NumInstance_;
    this.FormUID = "FP" + NumInstance.ToString();
                load();
              oDBDataSource = oForm.DataSources.DBDataSources.Add(DBDataSourceTable);
              SBO_Application.ItemEvent += new SAPbouiCOM._IApplicationEvents_ItemEventEventHandler(SBO_Application_ItemEvent);
    private void SBO_Application_ItemEvent(string _FormUID, ref SAPbouiCOM.ItemEvent pVal, out bool BubbleEvent)
                BubbleEvent = true;
                try
    if (_FormUID == this.FormUID) //here "_FormUID" is increased but "this.FormUID" is still = FP_0
                        switch (pVal.EventType)// selon le type d'action executée
                            case SAPbouiCOM.BoEventTypes.et_FORM_LOAD:
                                if (pVal.BeforeAction == true)
                                    SAPbouiCOM.ComboBox List_reseau = (SAPbouiCOM.ComboBox)oForm.Items.Item("5").Specific;
                                    List_reseau.ValidValues.Add("1", "test");
                               break;
                           case ...
                              break;
    Please help.
    Regards,
    Zakia.

    Hi J.
    The answer is yes You just have to give your form a unique id.
    1) Give your form in screen painter a name like BTWO_DYNAMIC_UID (just plain text).
    2) Make sure your <i>FormType</i> and <i>appformnumber</i> have a unique number (i.e. 2000060001). You can do this in the xml source.
    3) By loading your document replace the BTWO_DYNAMIC_UID with an unique id. I have a counter that's a member of my class and increase that number to get a unique id (BTWO_F_1, BTWO_F_2 etc)
    I have added a code sample, SBOApplication is my SAP application object and mFormNumber is a member (integer) of my class.
    <i>Succes d'r mee, en als 't nie lukt hoor ik het wel... ;)</i>
    <b>Code (C#):</b>
    // New xml document
    XmlDocument oXmlDoc = new XmlDocument();
    private Form LoadUniqueForm(string AMyFile)
      // Define your path to
      sPath = @"Forms" + AMyFile;
      // Load the form
      oXmlDoc.Load(sPath);
      // Replace the string with an unique id
      mFormNumber++;
      string sXML = oXmlDoc.InnerXml.Replace("BTWO_DYNAMIC_UID", "BTWO_F_" + mFormNumber.ToString());
      // load the XML file in SAP
      SBOApplication.LoadBatchActions(ref sXML);
      // Return the form
      return SBOApplication.Forms.Item("BTWO_F_" + mFormNumber.ToString());

  • Coding in form created in screen painter

    I have created a form in screen painter.How can I do coding in this form.I have added a save button in the form.How can I fire the click event on this button.The file created has extension srf and it can not be opened in asp.net.

    Hi Dilip,
    Although the file has a srf file extension it is actually an XML file. You can use this file to create an instance of your form through code. In the UI API there is a Application object. This object has a method called LoadBatchActions which takes one parameter which is your srf file (ie the path and filename). Calling this method will create a form in the active UI based on your srf file. You can then create an instance of the Form object in the UI API and use this to manipulate your form through code.
    I also recommend you look at the SDK learning material here on the SDN and also look at the samples that come with the SDK.
    Kind Regards,
    Owen
    P.S. Please note that you've posted your question in the application forum for SAP Business One. This forum is for discussions on the application functionality of SBO and not the SDK. Instead, please post queries about screen painter and other development questions here:
    SAP Business One SDK
    Thanks

  • Adding images in background in forms in screen painter

    Hi,
    My thought is it not possible to add images in the background of the forms in the screen painter and also have add colours and other attributes to the texts in the screen painter. pls share your idea and it is very important. pls convey me....

    Hello,
    Please go through this thread:
    about displaying background image.
    Vasanth

  • Publishing a screen painter form with full code

    Hi Dear;
    could you publish a sample of screen painter form with the coding that you use in it please?
    bets regards;

    Hi,
    Take a look at the following sample provided by SAP in the following path C:\Program Files\SAP\SAP Business One SDK\Samples\COM UI\VB.NET\04.WorkingWithXML\2003.
    In the above sample a form designed in Screen painter (MySimpleForm.xml) is used with the code. U can open the MySimpleForm.xml in screen painter.
    Vasu Natari.

  • UI: Event Handling of forms created with the Screen Painter

    Hi,
    I created a form with the Screen Painter and saved it as XML document. After that, I loaded this form with the following code:
    <i>Dim oXMLdoc As MSXML2.DOMDocument
    oXMLdoc = New MSXML2.DOMDocument
    oXMLdoc.load("C:\form1.xml")
    SBO_Application.LoadBatchActions(oXMLdoc.xml)</i>
    Then the loaded form appears in the SBO application with all added items.
    Now, I would like to know how I could handle an ITEM_PRESSED event for a button of this imported form.
    It would be great if someone could help me with this problem and post some example code.
    Regards,
    Dennis

    Dennis,
    you have to create a function that will handle all the event receive from B1
    <i>    Private Sub SBO_Application_ItemEvent(ByVal FormUID As String, ByRef pVal As SAPbouiCOM.ItemEvent, ByRef BubbleEvent As Boolean) Handles SBO_Application.ItemEvent
            If (pVal.FormUid = "YourUIDForm") Then
                If ((pVal.itemUID = "YourItemUID") And _
                    (pVal.EventType = SAPbouiCOM.BoEventTypes.et_ITEM_PRESSED) And _
                    (pVal.Before_Action = False)) Then
                    ' Here write the coe you need....
                End If
            End If
        End Sub</i>
    Off course, you need your variable SBO_Appliation declared as follow :
    Private WithEvents SBO_Application As SAPbouiCOM.Application

  • Vista System can't run sap screen painter?

    Our company use Vista System,But when use screen painter in this system,something wrong occurs,Even I set the Graphicl layout editor chosen ,but it does't work correctly.it looks the Graphical layout editor not chosen,
    Why? can anyone give me an answer?
    thanks advance!

    hi Junchuan Wang,
    What it you SAPGUI version ?  Try to patch your SAPGUI to latest patch.
    If still not work, reinstall your SAPGUI then patched it to the latest.
    Regards
    Ariyanto

  • Connecting a Screen Painter From to a Menu

    I have created a form using the screen painter.
    I have created  a new menu entry for this form.
    I have added the screen painter form into my solution.
    I am catching the new menu item click.
    what i do not have is the code to activate the form.

    Try this code Dror
    If (pVal.MenuUID = "U_xxx") And (pVal.BeforeAction = True) Then
    Dim oXmlDoc As Xml.XmlDocument
            oXmlDoc = New Xml.XmlDocument
            Dim sPath As String
            sPath = IO.Directory.GetParent(System.Windows.Forms.Application.StartupPath).ToString
            Try ' If there's no file then the looding will fail
                oXmlDoc.Load(sPath & "\" & "FileName")
            Catch ' Loading  failed
                SBO_Application.MessageBox( " File not found")
                End
            End Try
            SBO_Application.LoadBatchActions(oXmlDoc.InnerXml)
                oForm = SBO_Application.Forms.Item("FileUid")
            oForm.Visible = True
      End If
    Selin

  • Screen Painter don't work

    Screen Painter don't work when I click menu "Tools/Screen Painter", and show a System Message :Add-on Screen Painter is disconnected.Please contact:www.sap.com
    Restart Add-on
    Log off the current company
    Continue working without this Add-on.
    What should I do?

    Hi
    First uninstall Screen Painter then open the file C:\Program Files\SAP\SAP Business One\AddOnsLocalRegistration.sbo
    in notepad remove the lines related to screen painter (If there is any)
    <AddOn Exe="BK_ScreenPainter.exe" Installer="ScreenPainterInstaller.exe" InstallerMD5="384B6B18CA81A26CD8CC2A160BBBFC0A" Name="Screen Painter" Path="C:\Program Files\SAP\SAP Business One\AddOns\BK\Screen Painter" SelfUpgrd="false" Space="BK" UID="BK_Screen Painter" UnInstEstTime="180" UnInstParams="/zu201Duninstallu201D /x" UnInstaler="ScreenPainterInstaller.exe" UnInstallerMD5="384B6B18CA81A26CD8CC2A160BBBFC0A" Ver="880229"><Common ID="1" Name="B1DEVSRV"/></AddOn>
    save it and try again to install the screen painter.
    If that doesn't work  go to this C:\Program Files\InstallShield Installation Information directory and find find the screen painter installer and remove it.
    Hope this will help you
    Regards
    Arun TB

  • Screen Painter and SDK

    Hi,
    I've developed a form in the screen painter. I want to add the business logic from SDK. Is it possible...it should be right?
    I have a very complex form with around 20-25 edit boxes and one grid. The issues
    I have designed the form in the screen painter and am trying to access the edit boxes from SDK. the code snippets is like
    oForm = SBO_Application.Forms.GetFormByTypeAndCount("60004", 0)
    When i try to access it says form not found. sbo_appl.forms.activeform worked, but when i used
    oEdit = oForm.Items.Item("9").Specific
    in the next line, it says 9 is not a valid feild.

    Yes - this is what SP is about. You design your screen
    from SP and save it as an XML file. At this point you
    load it in B1 from your addon using the LoadBatchAction.
    You just need to change the FormID before loading it, this
    is an easy task: if you want some sample you can see the
    samples here in SDN or check the code of B1DE here on SDN
    too.
    Once it is loaded you can use all the UI SDK methods and
    properties to handle events and items in this form.

  • Loading screen painter form via a menu event.

    Hi,
    In my application, I am trying to get my screen painter form (.srf) to display through a menu event. The thing is when I click on the menu the first time it loads okay but when I close it and try to open it by clicking it again nothing happens. I am doing it as below.
    Anyone have any ideas?
    private void SBO_Application_MenuEvent(ref SAPbouiCOM.MenuEvent pVal, out bool BubbleEvent)
                BubbleEvent = true;
                try
                    if ((pVal.MenuUID == "vdetails") & (pVal.BeforeAction == false))
                        Form_1();
                catch (Exception ex)
                    SBO_Application.MessageBox(ex.Message, 1, "Ok", "", "");
    private void Form_1()
                string strTmp = "vclMgt.srf";
                LoadFromXML(ref strTmp);
                oForm = SBO_Application.Forms.Item("frmVMGT");
    private void LoadFromXML(ref string FileName)
                System.Xml.XmlDocument oXmlDoc = null;
                oXmlDoc = new System.Xml.XmlDocument();
                string sPath = null;
                sPath =  System.IO.Directory.GetParent(System.IO.Directory.GetParent(Application.StartupPath).ToString()).ToString();
                oXmlDoc.Load(sPath + @"\" + FileName);
                string strXML = oXmlDoc.InnerXml.ToString();
                SBO_Application.LoadBatchActions(ref strXML);

    Hi Binita,
    Thank you for your suggestion but it hasnt worked, the form doesnt display and no errors appear.
    This is how i've done it in C#
    private void SBO_Application_MenuEvent(ref SAPbouiCOM.MenuEvent pVal, out bool BubbleEvent)
                BubbleEvent = true;
                try
                    if ((pVal.MenuUID == "vdetails") & (pVal.BeforeAction == false))
                        foreach (SAPbouiCOM.Form oForm in SBO_Application.Forms)
                            if (oForm.UniqueID == "frmVMGT")
                                found = true;
                                MessageBox.Show("Found");
                        if (found == true)
                            SBO_Application.Forms.Item("frmVMGT").Select();
                        else
                            LoadFromXML("vclMgt.xml");
                catch (Exception ex)
                    SBO_Application.MessageBox(ex.Message, 1, "Ok", "", "");
    Where 'found' is global.
    I saw a similar issue someone else had but it wasnt resolved.
    Any more ideas?

  • Does SAP has a GUI screen painter or not? If yes what operating systems is

    Does SAP has a GUI screen painter or not? If yes what operating systems is  it available on? What is the other type of screen painter called?

    SE51 is the transaction code for the screen painter.
    Check this link for <a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/d1/801b50454211d189710000e8322d00/frameset.htm">Screen Painter</a>
    Regards
    - Gopi

Maybe you are looking for

  • Service request interactive report is not working with IC Roles

    Dear Experts, We are using CRM 7.0 EHP1, we have created some custom reports based on std service request query, we can able to see these reports in IC_AGENT role as well as ZIC_AGENT role but when we click on these reports nothing is happening. But

  • Connecting to Remote Desktop Published Apps through RD Web Access not working

    Hello, I have configured an RD Gateway server. My scenario is like I have a windows 2012R2 server with all RD components (Gateway, web access, connection broker, session host) configured, since this is for a poc. Externally I can access rd web access

  • Issue check to customer

    Hi Gurus, I have a business scenario: Customer comes to store and picks up the items and pay the item.  I use F.13 to clear customer open items. When customer comes for exchange, customer returns item and pick ups another item i receive return sales

  • Command line parameters for OMBPlus?

    Hi, Is it possible to pass command line parameters to TCL scripts running in OMBPlus.sh, and if so, can someone provide an example? I'm able to use the argv0 variable to get the script name itself but not sure how to get any other additional parms...

  • Idoc getting stuck up in SM58

    Hi All, Previously we have created one outbound Idoc. we were passing data to external system via XI. it was successfully reaching to external system. now we have added one more segment to existing Idoc. after processing doc, in WE05 transaction, Ido