public FormRobneLokacije(Terminal _terminal, Katalog _katalog, Point _koordinate, int _širina, int _visina, FormWindowState _stanje)
     : base(_terminal, _katalog, _koordinate, _širina, _visina, _stanje)
 {
     InitializeComponent();
     dgvRobneLokacije.AutoGenerateColumns = false;
     CoreScannerProxy.Instance.BarcodeEvent += new BarcodeEventHandler(OnBarcode); // Događaj za očitanje barkoda.
     txtŠifraIliBarkod.Select();
     ddlSkladište.DataSource = this.katalog.skladišta;
     try
     {
         zadanoSkladište = ConfigurationManager.AppSettings["ZadanoSkladište"];
         if (String.IsNullOrEmpty(zadanoSkladište))
         {
             return;
         }
         for (int i = 0; i < ddlSkladište.Items.Count; i++)
         {
             if (((KSkladiste)ddlSkladište.Items[i]).oznaka == ConfigurationManager.AppSettings["ZadanoSkladište"])
             {
                 ddlSkladište.SelectedIndex = i;
                 break;
             }
         }
     }
     catch (ConfigurationErrorsException)
     {
         // Pojeo vuk magare iliti On error resume next.
     }
 }
Beispiel #2
0
 private List<KSkladistar> DajPopisSkladištara(ref Terminal _terminal)
 {
     List<KSkladistar> entities = new List<KSkladistar>();
     MTrenisClient c = new MTrenisClient();
     try
     {
         string[] macAdrese = new string[_terminal.macAdrese.Count];
         for (int i = 0; i < _terminal.macAdrese.Count; i++)
         {
             macAdrese[i] = _terminal.macAdrese[i];
         }
         Skladistar[] k = c.DohvatiKorisnikeTerminala(macAdrese);
         for (int i = 0; i < k.Length; i++)
         {
             entities.Add(new KSkladistar(k[i].mBr, k[i].ime, k[i].prezime, null));
         }
     }
     catch (Exception)
     {
         throw;
     }
     finally
     {
         if (c != null && c.State != CommunicationState.Closed)
         {
             c.Close();
         }
     }
     return entities;
 }
Beispiel #3
0
 public FormNalog(Terminal _terminal, Katalog _katalog, Point _koordinate, int _širina, int _visina, FormWindowState _stanje, KNalog _nalog)
     : base(_terminal, _katalog, _koordinate, _širina, _visina, _stanje)
 {
     InitializeComponent();
     dgvNalog.AutoGenerateColumns = false;
     dgvNalog.Columns["colPromet"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
     dgvNalog.Columns["colSken"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
     this.nalog = _nalog;
     txtDok.Focus();
     CoreScannerProxy.Instance.BarcodeEvent += new BarcodeEventHandler(OnBarcode); // Događaj za očitanje barkoda.
     if (nalog != null)
     {
         txtDok.Text =
             this.nalog.dokVrsta +
             this.nalog.sklaOznaka +
             (this.nalog.dokVrsta == "PSS" ? this.nalog.sklaOznakaPSS : String.Empty) +
             this.nalog.dokBr +
             ((from r in this.katalog.dokumenti where r.vrsta == this.nalog.dokVrsta select r).Single().oznaka);
         PrikažiNalog(
             this.nalog.sklaOznaka,
             this.nalog.sklaOznakaPSS,
             this.nalog.dokVrsta,
             this.nalog.dokBr,
             this.nalog.smjer);
     }
 }
Beispiel #4
0
 public FormOtprema(Terminal _terminal, Katalog _katalog, Point _koordinate, int _širina, int _visina, FormWindowState _stanje)
     : base(_terminal, _katalog, _koordinate, _širina, _visina, _stanje)
 {
     InitializeComponent();
     dgvDok.AutoGenerateColumns = false;
     dgvLok.AutoGenerateColumns = false;
     CoreScannerProxy.Instance.BarcodeEvent += new BarcodeEventHandler(OnBarcode); // Događaj za očitanje barkoda.
 }
Beispiel #5
0
 public FormInvUpisnik(Terminal _terminal, Katalog _katalog, Point _koordinate, int _širina, int _visina, FormWindowState _stanje, KInventura _inventura)
     : base(_terminal, _katalog, _koordinate, _širina, _visina, _stanje)
 {
     InitializeComponent();
     this.inventura = _inventura;
     txtLokacija.Focus();
     CoreScannerProxy.Instance.BarcodeEvent += new BarcodeEventHandler(OnBarcode); // Događaj za očitanje barkoda.
 }
 public ModalIzlaznaLokacija(Terminal _terminal, KNalog _nalog)
 {
     InitializeComponent();
     this.terminal = _terminal;
     this.nalog = _nalog;
     CoreScannerProxy.Instance.BarcodeEvent += new BarcodeEventHandler(OnBarcode); // Događaj za očitanje barkoda.
     txtIzLok.Focus();
 }
Beispiel #7
0
 public FormRobniIzlaz(Terminal _terminal, Katalog _katalog, Point _koordinate, int _širina, int _visina, FormWindowState _stanje, KNalog _nalog, KStavkaNaloga _stavka)
     : base(_terminal, _katalog, _koordinate, _širina, _visina, _stanje)
 {
     InitializeComponent();
     dgvLok.AutoGenerateColumns = false;
     this.nalog = _nalog;
     this.stavka = _stavka;
     lblRoba.Text =
         stavka.roba.sifra + Environment.NewLine +
         stavka.roba.naziv + Environment.NewLine +
         "količina: " + stavka.zadaniPromet.ToString() + Environment.NewLine +
         "za sken: " + (stavka.zadaniPromet - stavka.skeniraniPromet).ToString();
     CoreScannerProxy.Instance.BarcodeEvent += new BarcodeEventHandler(OnBarcode); // Događaj za očitanje barkoda.
     MTrenisClient c = new MTrenisClient();
     try
     {
         RobnaLokacija[] polje = c.DohvatiRobneLokacije(nalog.sklaOznaka, null, stavka.roba.sifra);
         List<KRobnaLokacija> lista = new List<KRobnaLokacija>();
         foreach (var r in polje)
         {
             lista.Add(
                 new KRobnaLokacija(
                     new KRoba(r.roba.sifra, r.roba.naziv, r.roba.dobavljac),
                     r.lokOznaka,
                     r.zonOznaka,
                     r.stanje,
                     r.kapacitet));
         }
         dgvLok.DataSource = lista;
         foreach (DataGridViewRow row in dgvLok.Rows)
         {
             if (row.Cells["colLokacija"].Value.ToString() == stavka.optiLok && row.Cells["colZona"].Value.ToString() == stavka.optiZon)
             {
                 //dgvLok.FirstDisplayedScrollingRowIndex = dgvLok.Rows[row.Index].Index;
                 dgvLok.ClearSelection();
                 dgvLok.Rows[row.Index].Selected = true;
                 dgvLok.CurrentCell = dgvLok.Rows[row.Index].Cells[0];
                 break;
             }
         }
     }
     catch (FaultException<MTrenisKvar> ex)
     {
         MessageBox.Show(ex.Detail.opis, ex.Detail.oznaka.ToString(), MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, P.MSGBOX_ERR_TITLE, MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
     finally
     {
         if (c != null && c.State != CommunicationState.Closed)
         {
             c.Close();
         }
     }
     txtKol.Select(); // NE .Focus()!!!
 }
Beispiel #8
0
 public FormRobniUlaz(Terminal _terminal, Katalog _katalog, Point _koordinate, int _širina, int _visina, FormWindowState _stanje, KNalog _nalog, KStavkaNaloga _stavka)
     : base(_terminal, _katalog, _koordinate, _širina, _visina, _stanje)
 {
     InitializeComponent();
     dgvLok.AutoGenerateColumns = false;
     dgvLok.Columns["colStanje"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
     dgvLok.Columns["colKapacitet"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
     txtLok.Select(); // NE .Focus()!!!
     this.nalog = _nalog;
     this.stavka = _stavka;
     lblRoba.Text =
         stavka.roba.sifra + Environment.NewLine +
         stavka.roba.naziv + Environment.NewLine +
         "količina: " + stavka.zadaniPromet.ToString() + Environment.NewLine +
         "za sken: " + (stavka.zadaniPromet - stavka.skeniraniPromet).ToString();
     CoreScannerProxy.Instance.BarcodeEvent += new BarcodeEventHandler(OnBarcode); // Događaj za očitanje barkoda.
     MTrenisClient c = new MTrenisClient();
     try
     {
         RobnaLokacija[] polje = c.DohvatiRobneLokacije(String.IsNullOrEmpty(nalog.sklaOznakaPSS) ? nalog.sklaOznaka : nalog.sklaOznakaPSS, null, stavka.roba.sifra);
         List<KRobnaLokacija> lista = new List<KRobnaLokacija>();
         foreach (var r in polje)
         {
             lista.Add(
                 new KRobnaLokacija(
                     new KRoba(r.roba.sifra, r.roba.naziv, r.roba.dobavljac),
                     r.lokOznaka,
                     r.zonOznaka,
                     r.stanje,
                     r.kapacitet));
         }
         dgvLok.DataSource = lista;
         if (dgvLok.RowCount > 0)
         {
             dgvLok.CurrentCell = dgvLok.Rows[0].Cells["colLokacija"];
             txtLok.Text = dgvLok.CurrentRow.Cells["colLokacija"].Value.ToString();
         }
     }
     catch (FaultException<MTrenisKvar> ex)
     {
         MessageBox.Show(ex.Detail.opis, ex.Detail.oznaka.ToString(), MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, P.MSGBOX_ERR_TITLE, MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
     finally
     {
         if (c != null && c.State != CommunicationState.Closed)
         {
             c.Close();
         }
     }
 }
Beispiel #9
0
        int take = 20; // Zapravo se čita iz konfiguracijske datoteke.

        #endregion Fields

        #region Constructors

        public FormInvPregled(Terminal _terminal, Katalog _katalog, Point _koordinate, int _širina, int _visina, FormWindowState _stanje, KInventura _i)
            : base(_terminal, _katalog, _koordinate, _širina, _visina, _stanje)
        {
            InitializeComponent();
            this.inventura = _i;
            dgvInvPregled.AutoGenerateColumns = false;
            pnlStraničnik.Left = (pnlStraničnik.Parent.Width - pnlStraničnik.Width) / 2;
            take = Convert.ToInt32(ConfigurationManager.AppSettings["InvPregledTake"]);
            CoreScannerProxy.Instance.BarcodeEvent += new BarcodeEventHandler(OnBarcode); // Događaj za očitanje barkoda.
            txtRoba.Focus();
        }
Beispiel #10
0
 /// <summary>
 /// Pretrpani konstruktor koji osigurava:
 ///  - postojanost prijavljenog korisnika i informacija o računalu na kojem se aplikacija pokreće
 ///  - postojanost aplikacijskih kataloga dokumenata i skladišta
 ///  - neuočljivu izmjenu jedne forme drugom putem "nasljeđivanja" lokacije i dimenzija forme.
 /// </summary>
 /// <param name="_terminal">Terminal - korisnik aplikacije (svojstvo _k.skladištar: nulabilno ako korisnik nije prijavljen) i 
 /// računalo na kojem je aplikacija pokrenuta</param>
 /// <param name="_katalog">Aplikacijski katalozi dokumenata i skladišta.</param>
 /// <param name="_koordinate">Zaslonske koordinate gdje treba prikazati formu.</param>
 /// <param name="_širina">Širina forme.</param>
 /// <param name="_visina">Visina forme.</param>
 /// <param name="_stanje">Stanje prozora: minimiziran, maksimiziran ili običan.</param>
 public _FormBazna_(Terminal _terminal, Katalog _katalog, Point _koordinate, int _širina, int _visina, FormWindowState _stanje)
 {
     InitializeComponent();
     this.terminal = _terminal;
     this.katalog = _katalog;
     this.Location = _koordinate;
     this.Width = _širina;
     this.Height = _visina;
     this.WindowState = _stanje;
     PostaviStaTraku();
     PostaviIzbornik();
 }
Beispiel #11
0
 /// <summary>
 /// Dohvaća podatke o mrežnom sklopovlju računala na kojem se pokreće ova aplikacija.
 /// </summary>
 /// <param name="_terminal">Objekt u kojega se spremaju podaci o mrežnom sklopovlju.</param>
 public static void DohvatiMrežnaSučelja(ref Terminal _terminal)
 {
     try
     {
         _terminal.mrežnaSučelja = NetworkInterface.GetAllNetworkInterfaces();
         List<string> mac = new List<string>();
         foreach (var r in _terminal.mrežnaSučelja)
         {
             if (r.NetworkInterfaceType == NetworkInterfaceType.Wireless80211 || r.NetworkInterfaceType == NetworkInterfaceType.Ethernet)
             {
                 string[] macAddrParts = r.GetPhysicalAddress().ToString().Split(':');
                 StringBuilder sb = new StringBuilder();
                 for (int i = 0; i < macAddrParts.Length; i++)
                 {
                     sb.Append(macAddrParts[i]);
                 }
                 mac.Add(sb.ToString());
             }
         }
         if (mac.Count == 0)
         {
             StringBuilder popisMrežnihSučelja = new StringBuilder();
             foreach (var r in _terminal.mrežnaSučelja)
             {
                 popisMrežnihSučelja.Append(Environment.NewLine);
                 popisMrežnihSučelja.Append(r.Name);
                 popisMrežnihSučelja.Append(", ");
                 popisMrežnihSučelja.Append(r.NetworkInterfaceType.ToString());
                 popisMrežnihSučelja.Append(", ");
                 popisMrežnihSučelja.Append(r.GetPhysicalAddress().ToString());
                 popisMrežnihSučelja.Append(Environment.NewLine);
             }
             StringBuilder poruka = new StringBuilder(String.Format(P.MREŽNA_SUČELJA_FALŠNA, NetworkInterfaceType.Wireless80211.ToString(), NetworkInterfaceType.Ethernet.ToString()));
             if (popisMrežnihSučelja.Length > 0)
             {
                 poruka.Append(String.Format(P.MREŽNIH_SUČELJA_POPIS, popisMrežnihSučelja.ToString()));
             }
             else
             {
                 poruka.Append(P.MREŽNIH_SUČELJA_NEMA);
             }
             throw new Exception(poruka.ToString());
         }
         _terminal.macAdrese = mac;
     }
     catch (Exception)
     {
         throw;
     }
 }
Beispiel #12
0
 public ModalPrijava(Terminal _terminal)
 {
     try
     {
         InitializeComponent();
         ddlKorisnik.DataSource = DajPopisSkladištara(ref _terminal);
         ddlKorisnik.SelectedIndex = -1;
         ddlKorisnik.Focus();
         this.terminal = _terminal;
     }
     catch (FaultException<MTrenisKvar> ex)
     {
         MessageBox.Show(ex.Detail.opis, ex.Detail.oznaka.ToString(), MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, P.MSGBOX_ERR_TITLE, MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
Beispiel #13
0
 public FormInventura(Terminal _terminal, Katalog _katalog, Point _koordinate, int _širina, int _visina, FormWindowState _stanje)
     : base(_terminal, _katalog, _koordinate, _širina, _visina, _stanje)
 {
     InitializeComponent();
     try
     {
         ddlSkladiste.SelectedIndexChanged -= new EventHandler(ddlSkladiste_SelectedIndexChanged);
         ddlSkladiste.DataSource = katalog.skladišta;
         ddlSkladiste.SelectedIndex = -1;
         ddlSkladiste.Focus();
         ddlSkladiste.SelectedIndexChanged += new EventHandler(ddlSkladiste_SelectedIndexChanged);
     }
     catch (FaultException<MTrenisKvar> ex)
     {
         MessageBox.Show(ex.Detail.opis, ex.Detail.oznaka.ToString(), MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, P.MSGBOX_ERR_TITLE, MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
Beispiel #14
0
 public FormPLL(Terminal _terminal, Katalog _katalog, Point _koordinate, int _širina, int _visina, FormWindowState _stanje)
     : base(_terminal, _katalog, _koordinate, _širina, _visina, _stanje)
 {
     InitializeComponent();
 }
Beispiel #15
0
 /// <summary>
 /// Pokušava automatsku prijavu u aplikaciju ako su postavljeni odgovarajući atributi u app.configu.
 /// Potiho nastavlja rad ako dođe do greške, tj. ako nema podataka za autoprijavu,, po "On Error Resume Next" paradigmi. :-)
 /// </summary>
 /// <param name="_terminal">Objekt u kojega se sprema prijavljeni korisnik.</param>
 private static void PokušajAutoPrijavu(ref Terminal _terminal)
 {
     MTrenisClient c = new MTrenisClient();
     try
     {
         string zadaniKorisnikMBr = ConfigurationManager.AppSettings["ZadaniKorisnikMBr"];
         string zadaniKorisnikPwd = ConfigurationManager.AppSettings["ZadaniKorisnikPwd"];
         if (String.IsNullOrEmpty(zadaniKorisnikMBr) || String.IsNullOrEmpty(zadaniKorisnikPwd))
         {
             return;
         }
         Skladistar s = c.OvjeriKorisnika(zadaniKorisnikMBr, zadaniKorisnikPwd, _terminal.macAdrese[0]); // Autoprijava se uvijek provodi ako i samo ako je uspio dohvat mrežnih sučelja.
         KSkladistar ks = new KSkladistar(zadaniKorisnikMBr, s.ime, s.prezime, zadaniKorisnikPwd);
         _terminal.skladištar = ks;
     }
     catch (ConfigurationErrorsException)
     {
         // Pojeo vuk magare iliti On error resume next.
     }
     catch (Exception)
     {
         throw;
     }
     finally
     {
         if (c != null && c.State != CommunicationState.Closed)
         {
             c.Close();
         }
     }
 }
Beispiel #16
0
 /// <summary>
 /// Dohvaća podatke u barkod-čitačima uštekanim u računalo.
 /// </summary>
 /// <param name="_terminal">Objekt u kojega se spremaju podaci o uštekanim čitačima.</param>
 private static void PostaviČitače(ref Terminal _terminal)
 {
     try
     {
         short[] arScannerTypes = new short[1];
         arScannerTypes[0] = (short)ScannerTypes.ALL;
         List<Scanner> connectedScanners = new List<Scanner>();
         Status sta = CoreScannerProxy.Instance.OpenAndGetScanners(arScannerTypes, ref connectedScanners);
         if (sta == Status.S_SUCCESS && connectedScanners.Count > 0)
         {
             List<Scanner> wrongModeScanners = null;
             foreach (Scanner r in connectedScanners)
             {
                 if (r != null && r.ScannerType != "USBIBMHID")
                 {
                     sta = r.SwitchHostMode(ScannerHostModes.USB_IBMHID, true, false);
                     if (sta != Status.S_SUCCESS)
                     {
                         wrongModeScanners.Add(r);
                     }
                 }
             }
             _terminal.povezaniČitači = connectedScanners;
             if (wrongModeScanners.Count > 0)
             {
                 _terminal.falšniČitači = wrongModeScanners;
             }
         }
         else
         {
             throw new Exception(String.Format(P.ČITAČ_ODSPOJEN, sta.ToString()));
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
Beispiel #17
0
 public FormBarkodiranje(Terminal _terminal, Katalog _katalog, Point _koordinate, int _širina, int _visina, FormWindowState _stanje, KNalog _nalog, KRoba _roba)
     : base(_terminal, _katalog, _koordinate, _širina, _visina, _stanje)
 {
     InitializeComponent();
     this.nalog = _nalog;
 }
Beispiel #18
0
 static void Main()
 {
     try
     {
         Application.EnableVisualStyles();
         Application.SetCompatibleTextRenderingDefault(false);
         Terminal terminal = new Terminal();
         Katalog katalog = new Katalog();
         DohvatiMrežnaSučelja(ref terminal);
         DohvatiKataloge(ref katalog);
         PokušajAutoPrijavu(ref terminal); // Autoprijava se uvijek provodi ako i samo ako je uspio dohvat mrežnih sučelja.
         try // Želim nastaviti rad čak i ako povezivanje s barkod-čitačem nije uspjelo.
         {
             PostaviČitače(ref terminal);
         }
         catch (Exception ex)
         {
             MessageBox.Show(ex.Message);
         }
         _FormBazna_ form = new _FormBazna_(terminal, katalog, new Point((Screen.PrimaryScreen.Bounds.Width - 1216) / 2, (Screen.PrimaryScreen.Bounds.Height - 704) / 2), 1216, 704, FormWindowState.Normal); // Vidi u dizajneru Bazne Forme.
         form.Show();
         Application.Run();
     }
     catch (NetworkInformationException ex)
     {
         MessageBox.Show(ex.Message, P.MSGBOX_ERR_TITLE, MessageBoxButtons.OK, MessageBoxIcon.Error);
         Application.Exit();
     }
     catch (FaultException<MTrenisKvar> ex)
     {
         MessageBox.Show(ex.Detail.opis, ex.Detail.oznaka.ToString(), MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, P.MSGBOX_ERR_TITLE, MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }