Web Servis Haberleşmesi

Octopod  da bu işlem dll tetikleme sayesinde yapılmakta ve bir web servise bağlanarak data alınıp verilmesi sağlanmaktadır. İşlem aksiyonların altındaki C# kütüphanesi olarak karşımıza çıkan yerden yapılmaktadır.

Octopod da Web Servis kullanımı ile ilgili genel bilgiler aşağıda verilmiştir.

  • .dll dosyalarının Octopod Client ekranlarında çalıştırmak için öncelikle oluşturulan dosyaların; Octopod servisinin kurulu olduğu dizin altında “Addition” klasörüne kaydedilmesi gerekmektedir.
  • Eğer EmsOctopodService klasörü içerisinde Addition ve Web Servis Haberleşmesi klasörleri yoksa kendiniz oluşturabilirsiniz. 
  • Octopod C# kütüphanesinde çalıştırılacak tüm methodların geri dönüş tipleri ve parametre alımı Dictionary<string,object>() şeklinde olmak zorundadır.
  • Geliştirilen kütüphane .NET Framework 4.7.2, 4.7.1, 4.6.1, 4.5 versiyonlarında olmalıdır. .NET Standard veya .NET Core desteklenmemektedir.
  • .NET Class Library geliştirilirken NuGet package veya referans olarak eklenen kütüphaneler Octopod’un desteklediği kütüphaneler olabilir. Bunların listesine erişmek için lütfen tıklayınız.

Metin Kutusuna Değer Aktarımı

Rakam kutusuna yazılan iki değerin toplamının metin kutusuna aktarımı aşağıda ekranda gösterilmiştir. Liste harici bir alana kayıt aktarmak için Metin Kutusu kullanılmalıdır.

Düğme elemanına eklenen Tıklandığında – Değer Güncelleme aksiyonu ile ekrandan alınan x ve y parametrelerinin toplamını almak ve bir alana yazmak için, değer alanı metin kutusu seçimi olmak zorundadır. Sorgu alanına SELECT $PIlkDeger AS x,$PSonDeger AS y yazılarak Kütüphane, Sınıf ve Method seçimleri yapılarak aksiyon kaydedilir.

Method aşağıdaki gibidir. Parametre alımı ve dönüş değeri Dictionary<string,object>() olmak zorundadır.

public static Dictionary<string, object> IkiDegerToplami(List<Dictionary<string, object>> parameters)

        {

            var result = new Dictionary<string, object>();

            var List = new List<Dictionary<string, object>>();

            result[“Error”] = “”;

            try

            {

                var value = Convert.ToInt32(parameters[0][“x”]) + Convert.ToInt32(parameters[0][“y”]);

                List.Add(new Dictionary<string, object> { { “Result”, value } });

                result[“List”] = List;

            }

            catch (Exception ex)

            {

                result[“Error”] = ex.Message;

            }

            return result;

        }

Studio ekranında aksiyonlar ve gerekli işlemler yapıldıktan sonra kaydedilir ve octopod client ekranında ilgili butona tıklandığında iki değerin toplamı değer alanına (metin kutusu) dll yardımıyla aktarılır.

Değer Toplamlarının Listeye Aktarılması

Rakam kutusuna yazılan iki değerin toplamının liste elemanına aktarımını anlatan Octopod Manager ekran görüntüsü aşağıdaki gibidir.

Düğme elemanına eklenen Tıklandığında Değer Güncelleme aksiyonu ile ekrandan alınan x ve y parametrelerinin toplamını almak ve liste elemanına aktarmak için sorgu alanına SELECT $PListeDeger1 AS x, $PListeDeger2 As y yazılarak Kütüphane, Sınıf ve Method seçimleri yapılarak aksiyon kaydedilir.  

Method aşağıdaki gibidir. Parametre alımı ve dönüş değeri Dictionary<string,object>() olmak zorundadır.

public static Dictionary<string, object> IkiDegerToplamiListeyeAktar(List<Dictionary<string, object>> parameters)

        {

            var result = new Dictionary<string, object>();

            var List = new List<Dictionary<string, object>>();

            result[“Error”] = “”;

            try

            {

                var value = Convert.ToInt32(parameters[0][“x”]) + Convert.ToInt32(parameters[0][“y”]);

                List.Add(new Dictionary<string, object> { { “Result”, value } });

                result[“List”] = List;

            }

            catch (Exception ex)

            {

                result[“Error”] = ex.Message;

            }

            return result;

        }

Studio ekranında aksiyonlar ve gerekli işlemler yapıldıktan sonra kaydedilir ve octopod client ekranında ilgili butona tıklandığında iki değerin toplamı değer alanına (liste elemanına) dll yardımıyla aktarılır. Client ekran görüntüsü aşağıdaki gibidir.

String Değer Alan Parametre İle Listeye Veri Aktarılması

Metin kutusuna yazılan string değerin datatable oluşturularak liste elemanına aktarımı için Octopod Manager ekran görüntüsü aşağıdaki gibidir.

Düğme elemanına eklenen Tıklandığında Değer Güncelleme aksiyonu ile ekrandan alınan name parametresi ile method içerisinde datatable oluşturularak liste elemanına verileri aktarmak için sorgu alanına SELECT ‘$PTextDeger’ AS name yazılarak Kütüphane, Sınıf ve Method seçimleri yapılarak aksiyon kaydedilir.

Method aşağıdaki gibidir. Parametre alımı ve dönüş değeri Dictionary<string,object>() olmak zorundadır.

public static Dictionary<string, object> GetList(List<Dictionary<string, object>> parameters)

        {

            var result = new Dictionary<string, object>();

            var List = new List<Dictionary<string, object>>();

            result[“Error”] = “”;

            try

            {

                var dt = new DataTable();

                dt.Clear();

                dt.Columns.Add(“Name”);

                dt.Columns.Add(“FullName”);

                var row = dt.NewRow();

                row[“Name”] = parameters[0][“name”];

                row[“FullName”] = “Octopod 1”;

                dt.Rows.Add(row);

                var row1 = dt.NewRow();

                row1[“Name”] = parameters[0][“name”];

                row1[“FullName”] = “Octopod 2”;

                dt.Rows.Add(row1);

                var row2 = dt.NewRow();

                row2[“Name”] = parameters[0][“name”];

                row2[“FullName”] = “Octopod 3”;

                dt.Rows.Add(row2);

                foreach (DataRow dr in dt.Rows)

                {

                    var rows = new Dictionary<string, object>();

                    foreach (DataColumn col in dt.Columns)

                        rows.Add(col.ColumnName, dr[col.ColumnName]);

                    List.Add(rows);

                }

                result[“List”] = List;

            }

            catch (Exception ex)

            {

                result[“Error”] = ex.Message;

            }

            return result;

        }

Studio ekranında aksiyonlar ve gerekli işlemler yapıldıktan sonra kaydedilir ve octopod client ekranında ilgili butona tıklandığında ekrandan alınan string değer ile datatable oluşturularak değer alanına (liste elemanına) dll yardımıyla veriler aktarılır. Client ekran görüntüsü aşağıdaki gibidir.

Was this article helpful?

İlgili Konular