Професионална програма
Loading...
+ Нов въпрос
Ivelin_Dimitrov avatar Ivelin_Dimitrov 148 Точки

Колега ти дори не си си направил трудът да потърсш преди да попитш.... Просто със copy/paste на твоят въпрос във google всичко си излиза

0
23/04/2018 21:22:58
petkomarinov1 avatar petkomarinov1 0 Точки

Аз също се опитвам да стартирам САП. Изчетох какво ли не, друг е въпроса, че голяма част от информацията ми е неясна и не мога да я приложа. Понастоящем в офиса ръководството не гледа с добро око на скриптирането (освен ако не си в ИТ отдела) и не мога да използвам SAP .NET Connector. Намерих някакъв за VS 2010, но и него не мога да подкарам. Имам работещ код за VBA, но тъй като искам да се развивам и като програмист (понастоящем икономист) искам да си пиша автоматизациите със C#.

Кода, който намерих с тик за работещ в Stack Overflow е по - долу с леки корекции от мен, но като резултат получавам

"Your SAPGUI version is 1.0.0.0 You need at least 6400. Contact your local PC support."  Версията ми е всъщност 7400.

Кода е:

using System;
using System.Collections.Generic;
using System.Collections;
using System.Linq;
using System.Text;
using SAPFEWSELib;

namespace SAPGuiAutomated
{

    public class SAPActive
    {
        public static GuiApplication SapGuiApp { get; set; }
        public static GuiConnection SapConnection { get; set; }
        public static GuiSession SapSession { get; set; }

        public static void openSap(string env)
        {
            SAPActive.SapGuiApp = new GuiApplication();

            string connectString = null;
            if (env.ToUpper().Equals("DEFAULT"))
            {
                connectString = "<   P11   ERP";
            }
            else
            {
                connectString = env;
            }
            SAPActive.SapConnection = SAPActive.SapGuiApp.OpenConnection(connectString, Sync: true);
            SAPActive.SapSession = (GuiSession)SAPActive.SapConnection.Sessions.Item(0);
        }

        public static void login(string myclient, string mylogin, string mypass, string mylang)
        {
            GuiTextField client = (GuiTextField)SAPActive.SapSession.ActiveWindow.FindByName("RSYST-MANDT", "GuiTextField");
            GuiTextField login = (GuiTextField)SAPActive.SapSession.ActiveWindow.FindByName("RSYST-BNAME", "GuiTextField");
            GuiTextField pass = (GuiTextField)SAPActive.SapSession.ActiveWindow.FindByName("RSYST-BCODE", "GuiPasswordField");
            GuiTextField language = (GuiTextField)SAPActive.SapSession.ActiveWindow.FindByName("RSYST-LANGU", "GuiTextField");

            client.SetFocus();
            client.Text = myclient;
            login.SetFocus();
            login.Text = mylogin;
            pass.SetFocus();
            pass.Text = mypass;
            language.SetFocus();
            language.Text = mylang;

            GuiButton btn = (GuiButton)SapSession.FindById("/app/con[0]/ses[0]/wnd[0]/tbar[0]/btn[0]");
            btn.SetFocus();
            btn.Press();
        }
        public static void Main(string[] args)
        {
            SAPActive.openSap("<   P11   ERP");
            login("650", Environment.UserName, "***", "EN");
        }
    }
}

0
01/07/2020 11:35:56
leo09 avatar leo09 4 Точки

 working knowledge of SAPHANA implementation in Complex projects Proficient in HANA 

https://pcverses.com

0