Pliki cookie pomagają nam udostępniać nasze usługi. Korzystając z tych usług, zgadzasz się na użycie plików cookie. Więcej informacji
CRM - Import kontrahentów

2011-09-22

W systemie CRM najważniejszą informacją są dane kontrahentów. Użytkownicy naszych programów Sz@rk mają ułatwione zadanie, ponieważ wszystkie dane są współdzielone i lista kontrahentów w poszczególnych grupach jest natychmiast dostępna. Dane są na bieżąco aktualizowane, gdyż wszystkie moduły pracują na tej samej bazie SQL, w tym oczywiście klienci wykonujący połączenia zdalne poprzez Internet.

Dla użytkowników posiadających inne programy lub dane adresowe w postaci plików przygotowaliśmy dedykowany Kreator Importu Kontrahentów.

Dane można zaimportować wg 3 różnych sposobów

  1. Z tabeli zapisanej w pliku Excel (XLS). Kolumny tabeli muszą mieć odpowiednie nazwy wg załączonego wzoru
  2. Z baz danych Microsoft SQL. Aktualnie można importować z innych firm Sz@rk SQL oraz CDN OPTIMA
  3. Ostatnia opcja dla zaawansowanych umożliwia import za pomocą własnego skryptu C#. Możemy pobrać dane z dowolnego źródła i zwrócić w postaci DataTable. Do programu dołączono przykład wykonujący import z CDN OPTIMA, który można modyfikować wg własnych potrzeb.

Drugi krok dla importu z pliku XLS

Drugi krok dla importu z MS SQL Server (CDN OPITMA)

Drugi krok importu za pomocą własnego skryptu C#.

Odczytane dane z wybranego źródła. W naszym przykładzie są to dane CDN_DEMO OPTIMA

Ustawiamy opcje dołączania danych do bazy Sz@rk SQL

Przygotowane i sprawdzone dane, które zostaną zaimportowane

Po zatwierdzeniu tabela kontrahentów zostanie zasilona nowymi adresami.

Poniżej pełny kod C# do importu danych z CDN OPTIMA
using System;
using System.Data;
using System.Data.SqlClient;
using System.Windows.Forms;
 
namespace Szark
{
    public class Class1
    {
        public Class1(object sender)
        {
        }
       
        public DataTable GetCustomers()
        {
            SqlConnection conn = new SqlConnection(GetConnectionString());
            try
            {
                conn.Open();
                SqlCommand cmd = new SqlCommand(SqlKontrahenci(), conn);
                using (SqlDataAdapter adapter = new SqlDataAdapter(cmd))
                {
                    DataSet ds = new DataSet();
                    adapter.Fill(ds, "kontrahenci");
                    return ds.Tables[0];
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Nie mogę odczytać danych: " + ex.Message, "Błąd", 
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
                return null;
            }
            finally
            {
                if (conn != null)
                    conn.Dispose();
            }
        }
       
        private string GetConnectionString()
        {
            SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder();
            builder.DataSource = "localhost\SQLEXPRESS";
            builder.InitialCatalog = "CDN_Demo";
            builder.IntegratedSecurity = true;
            return builder.ConnectionString;
        }
       
        private string SqlKontrahenci()
        {
            return "SELECT Knt_KntId AS kod, Knt_Kod AS skrot, Knt_Nazwa1 AS nazwa1, " +
                "Knt_nazwa2 AS nazwa2, Knt_Ulica AS ulica, Knt_NrDomu AS nr_domu, " +
                "Knt_KodPocztowy AS kod_pocztowy, Knt_Miasto AS miasto, Knt_Kraj AS kraj, " +
                "Knt_NipE AS nip, Knt_Telefon1 AS telefon_1, Knt_Telefon2 AS telefon_2, " +
                "Knt_Fax AS fax, Knt_Email AS e_mail, Knt_OsEmail AS e_mail2, " +
                "Knt_URL AS adres_www FROM CDN.kontrahenci ";
        }
    }
}