Advertisement
Guest User

ERP

a guest
Feb 28th, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 11.45 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using System.Data.SqlClient;
  5. using System.Diagnostics;
  6. using System.Linq;
  7. using System.Web;
  8. using System.Web.Services;
  9.  
  10. namespace WebApplication1
  11. {
  12.     /// <summary>
  13.     /// Summary description for WebService1
  14.     /// </summary>
  15.     [WebService(Namespace = "http://tempuri.org/")]
  16.     [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
  17.     [System.ComponentModel.ToolboxItem(false)]
  18.     // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
  19.     // [System.Web.Script.Services.ScriptService]
  20.     public class WebService1 : System.Web.Services.WebService
  21.     {
  22.         SqlConnection conn = new SqlConnection("Data Source=DESKTOP-T3ODSHL\\SQLEXPRESS;Initial Catalog=CRONUS;Integrated Security=True");
  23.         SqlCommand cmd = new SqlCommand();
  24.        
  25.  
  26.         [WebMethod]
  27.         public void DeleteEmp(string no_)
  28.         {
  29.             try
  30.             {
  31.                 conn.Open();
  32.                 cmd = new SqlCommand("DELETE FROM [Cronus].[dbo].[CRONUS Sverige AB$Employee] WHERE No_ = @no_", conn);
  33.  
  34.                 cmd.Prepare();
  35.                 SqlParameter No_ = new SqlParameter("@no_", no_);
  36.                 cmd.Parameters.Add(No_);
  37.  
  38.                 cmd.ExecuteNonQuery();
  39.  
  40.  
  41.             }
  42.             catch (SqlException e)
  43.             {
  44.                 Console.WriteLine(e.Message);
  45.             }
  46.             finally
  47.             {
  48.                 conn.Close();
  49.             }
  50.  
  51.         }
  52.  
  53.         [WebMethod]
  54.         public List<List<string>> GetEmp() // kanske kan få ut detta på listan, för result är från list
  55.         {
  56.             conn.Open();
  57.             List<List<string>> result = new List<List<string>>();
  58.             cmd = new SqlCommand("SELECT No_, [First Name], [Last Name], [Job Title], Address, City FROM [CRONUS Sverige AB$Employee]", conn);
  59.  
  60.             result = Converter(cmd.ExecuteReader());
  61.             conn.Close();
  62.             return result;
  63.         }
  64.  
  65.  
  66.        
  67.  
  68.  
  69.         [WebMethod]
  70.         public void AddEmp(string employeeId, string firstName, string familyName, string address)
  71.         { try
  72.             {
  73.                 conn.Open();
  74.                 cmd = new SqlCommand("INSERT INTO [CRONUS Sverige AB$Employee] (No_, [First Name], [Last Name], [Address])"
  75.                     + " VALUES (@employeeId, @firstName, @familyName, @address)", conn);
  76.  
  77.  
  78.                 cmd.Prepare();
  79.                 SqlParameter EmployeeId = new SqlParameter("@employeeId", employeeId);
  80.                 SqlParameter FirstName = new SqlParameter("@firstName", firstName);
  81.                 SqlParameter FamilyName = new SqlParameter("@familyName", familyName);
  82.                 SqlParameter Address = new SqlParameter("@no_", address);
  83.  
  84.                 cmd.Parameters.Add(EmployeeId);
  85.                 cmd.Parameters.Add(FirstName);
  86.                 cmd.Parameters.Add(FamilyName);
  87.                 cmd.Parameters.Add(Address);
  88.                 cmd.ExecuteNonQuery();
  89.  
  90.                 conn.Close();
  91.             }
  92.             catch (SqlException e)
  93.             {
  94.                 Debug.WriteLine(e.Message); // visar sqlError i visual konsolen
  95.             }
  96.         }
  97.  
  98.         [WebMethod]
  99.         public void AddContract(string code, string description)
  100.         {
  101.             try
  102.             {
  103.                 conn.Open();
  104.                 cmd = new SqlCommand("INSERT INTO [CRONUS Sverige AB$Employment Contract] VALUES (@code, @description)", conn);
  105.  
  106.  
  107.                 cmd.Prepare();
  108.                 SqlParameter Description = new SqlParameter("@description", description);
  109.                 SqlParameter Code = new SqlParameter("@code", code);
  110.  
  111.  
  112.                 cmd.Parameters.Add(Description);
  113.                 cmd.Parameters.Add(Code);
  114.  
  115.                 cmd.ExecuteNonQuery();
  116.  
  117.                 conn.Close();
  118.             }
  119.             catch (SqlException e)
  120.             {
  121.                 Debug.WriteLine(e.Message); // visar sqlError i visual konsolen
  122.             }
  123.         }
  124.  
  125.         [WebMethod]
  126.         public void UpdateEmp(string employeeId, string firstName, string familyName, string address)
  127.         {
  128.             conn.Open();
  129.            
  130.  
  131.             cmd = new SqlCommand("UPDATE[CRONUS Sverige AB$Employee] SET[First Name] = @firstName, [Last Name] = @familyName, [Address] = @address WHERE [No_] = @employeeId", conn);
  132.             cmd.Prepare();
  133.             SqlParameter Emp = new SqlParameter("@employeeId", employeeId);
  134.             SqlParameter Firstname = new SqlParameter("@firstName", firstName);
  135.             SqlParameter FamilyName = new SqlParameter("@familyName", familyName);
  136.             SqlParameter Address = new SqlParameter("@address", address);
  137.  
  138.             cmd.Parameters.Add(Emp);
  139.             cmd.Parameters.Add(Firstname);
  140.             cmd.Parameters.Add(FamilyName);
  141.             cmd.Parameters.Add(Address);
  142.             cmd.ExecuteNonQuery();
  143.             conn.Close();
  144.         }
  145.  
  146.  
  147.         [WebMethod]
  148.         public List<List<string>> Getsick()
  149.         {
  150.             conn.Open();
  151.             cmd = new SqlCommand("SELECT [Employee No_], [From Date], [Description], [Entry No_] "
  152.             + "FROM[CRONUS Sverige AB$Employee Absence]"
  153.             + " WHERE[From Date] BETWEEN '2004-01-01 00:00:00.000' AND '2004-12-31 23:59:59.999'"
  154.             + " AND Description = 'Sjuk'", conn);
  155.  
  156.             var tmp = Converter(cmd.ExecuteReader());
  157.             conn.Close();
  158.             return tmp;
  159.         }
  160.  
  161.  
  162.         [WebMethod]
  163.         public List<List<string>> GetEmpInfo()
  164.         {
  165.             conn.Open();
  166.             cmd = new SqlCommand("SELECT[Employee No_], [Relative Code], [First Name], [Last Name]"
  167.                     + " FROM[CRONUS Sverige AB$Employee Relative]", conn);
  168.             var tmp = Converter(cmd.ExecuteReader());
  169.             conn.Close();
  170.             return tmp;
  171.         }
  172.  
  173.         /// 3B
  174.      
  175.  
  176.         [WebMethod]
  177.         public List<List<string>> GetAllKeys()
  178.         {
  179.             conn.Open();
  180.             string sql = "SELECT TOP 5 CONSTRAINT_NAME, COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE";
  181.             SqlCommand cmd = new SqlCommand(sql, conn);
  182.  
  183.             var tmp = Converter(cmd.ExecuteReader());
  184.             conn.Close();
  185.             return tmp;
  186.         }
  187.  
  188.         [WebMethod]
  189.         public List<List<string>> GetAllIndex()
  190.         {
  191.             conn.Open();
  192.             cmd = new SqlCommand("SELECT TOP 5 object_id, index_id, type_desc, name, is_primary_key FROM sys.indexes ", conn);
  193.  
  194.            
  195.             var tmp = Converter(cmd.ExecuteReader()); // Converter Metoden kan inte köra null..
  196.             conn.Close();
  197.             return tmp;
  198.         }
  199.  
  200.         [WebMethod]
  201.         public List<List<string>> GetAllTableConstraint()
  202.         {
  203.             try
  204.             {
  205.                 conn.Open();
  206.                 cmd = new SqlCommand("SELECT TOP 5 CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME, TABLE_CATALOG, TABLE_SCHEMA"
  207.                 + " FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS", conn);
  208.                 // det blir många tabeller och kolumner, Kanske köra select top 5 ??
  209.                 var tmp = Converter(cmd.ExecuteReader());
  210.                 return tmp;
  211.             }
  212.             catch(SqlException e)
  213.             {
  214.                 Console.WriteLine(e.Message);
  215.             }
  216.             catch(Exception e)
  217.             {
  218.                 Console.WriteLine(e.Message);
  219.             }
  220.             finally
  221.             {
  222.                 conn.Close();
  223.             }
  224.             return null;
  225.         }
  226.  
  227.         [WebMethod]
  228.        public List<List<string>> GetAllTable1()
  229.         {
  230.             conn.Open();
  231.             cmd = new SqlCommand(" SELECT top 5 name FROM sys.tables",conn);
  232.             var tmp = Converter(cmd.ExecuteReader());
  233.             conn.Close();
  234.             return tmp;
  235.         }
  236.  
  237.  
  238.         [WebMethod]
  239.         public List<List<string>> GetAllTable2()
  240.         {
  241.             conn.Open();
  242.             cmd = new SqlCommand("SELECT TOP 5 TABLE_NAME FROM INFORMATION_SCHEMA.TABLES"
  243.                 + " WHERE TABLE_TYPE = 'BASE TABLE'", conn);
  244.  
  245.             var tmp = Converter(cmd.ExecuteReader());
  246.             conn.Close();
  247.             return tmp;
  248.         }
  249.  
  250.         [WebMethod]
  251.         public List<List<string>> GetAllColumnOnEmp1()
  252.         {
  253.             conn.Open();
  254.             cmd = new SqlCommand("SELECT TOP 6 COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS"
  255.                 + " WHERE TABLE_NAME = 'CRONUS Sverige AB$Employee'", conn);
  256.            
  257.             var tmp = Converter(cmd.ExecuteReader());
  258.             conn.Close();
  259.             return tmp;
  260.         }
  261.  
  262.         [WebMethod]
  263.         public List<List<string>> GetAllColumnOnEmp2()
  264.         {
  265.             conn.Open();
  266.             cmd = new SqlCommand("SELECT top 5 c.name FROM sys.objects o"
  267.                 + " INNER JOIN sys.columns c ON c.object_id = o.object_id"
  268.                 + " AND o.name = 'CRONUS Sverige AB$Employee'", conn);
  269.  
  270.             var tmp = Converter(cmd.ExecuteReader());
  271.             conn.Close();
  272.             return tmp;
  273.         }
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.         // Converter
  281.        
  282.         public List<List<string>> Converter(SqlDataReader sdr)
  283.         {
  284.             if (sdr != null)
  285.             {
  286.                 List<List<string>> list = new List<List<string>>();
  287.                 while (sdr.Read())
  288.                 {
  289.                     List<string> tmp = new List<string>();
  290.  
  291.                     for (int i = 0; i < sdr.FieldCount; i++)
  292.                     {
  293.                         string parameter = "";
  294.                         try
  295.                         {
  296.                             if (sdr.GetFieldType(i) == typeof(string))
  297.                             {
  298.                                 parameter = sdr.GetString(i);
  299.                             }
  300.                             if (sdr.GetFieldType(i) == typeof(int))
  301.                             {
  302.  
  303.                                 parameter = sdr.GetInt32(i).ToString();
  304.                             }
  305.                             if (sdr.GetFieldType(i) == typeof(DateTime))
  306.                             {
  307.                                 parameter = sdr.GetDateTime(i).ToString();
  308.                             }
  309.                         }
  310.                         catch (SqlException e)
  311.                         {
  312.                             Debug.WriteLine(e.Message);
  313.                         }
  314.  
  315.                         tmp.Add(parameter);
  316.  
  317.                     }
  318.  
  319.                     list.Add(tmp);
  320.                 }
  321.  
  322.                 return list;
  323.             }
  324.  
  325.             return null;
  326.         }
  327.  
  328.        /* public DataTable getTable(ArrayOfString[] list)
  329.         {  
  330.             ArrayOfString[] outerlist = list;
  331.             DataTable table = new DataTable();
  332.             ArrayOfString header = outerlist[0];
  333.             for (int i = 0; i < header.Count; i++)
  334.                 table.Columns.Add(header[i]);
  335.             for (int j = 1; j < outerlist.Length; j++)
  336.             {
  337.                 ArrayOfString innerlist = outerlist[j];
  338.                 List<string> rowlist = new List<string>();
  339.                 for (int k = 0; k < innerlist.Count; k++)
  340.                 {
  341.                     rowlist.Add(innerlist[k]);
  342.                 }
  343.                 string[] row = rowlist.ToArray();
  344.                 table.Rows.Add(row);
  345.             }
  346.             return table;
  347.         }
  348.         */
  349.  
  350.     }
  351. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement