using Hydra; using System; using System.Collections.Generic; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; [assembly: CallbackAssemblyDescription("CON_RKZ", "RKZV2", "TKI", "0.43", "8.0", "23-11-2022")] namespace ClassLibrary1 { [SubscribeProcedure((Procedures)Procedures.ZaNZamEdycjaSpr, "HortexPromo")] public class Class1 : Callback { ClaWindow OknoGlowne; ClaWindow HortexTab; ClaWindow HortexGroup; ClaWindow SaveButton; ClaWindow Parent; ClaWindow KodTowTXT; ClaWindow LabelTXT; ClaWindow UpdateButton; ClaWindow LabelGratis; ClaWindow mar1; ClaWindow mar2; ClaWindow IloscTXT; ClaWindow IloscLabel; ClaWindow marza; // MSSQL sql = new MSSQL(); int Saved = 0; public override void Init() { AddSubscription(true, 0, Events.OpenWindow, new TakeEventDelegate(OnOpenWindow)); AddSubscription(true, 0, Events.CloseWindow, new TakeEventDelegate(OnCloseWindow)); Saved = 0; } public void InitObjects() { Saved = 0; OknoGlowne = GetWindow(); SaveButton = OknoGlowne.AllChildren["?Cli_Zapisz"]; SaveButton.OnBeforeAccepted += new TakeEventDelegate(OnClickSaveButton); } bool OnClickSaveButton(Procedures ProcId, int ControlId, Events Event) { Saved = 1; return true; } bool OnOpenWindow(Procedures ProcId, int ControlId, Events Event) { InitObjects(); OknoGlowne = GetWindow(); Parent = GetWindow(); HortexTab = OknoGlowne.AllChildren["?CurrentTab"].Children.Add(ControlTypes.tab); HortexTab.TextRaw = "RKZv2"; HortexTab.Bounds = new Rectangle(); HortexTab.Enabled = true; HortexTab.Visible = true; HortexGroup = HortexTab.AllChildren.Add(ControlTypes.group); HortexGroup.Visible = true; HortexGroup.BoxedRaw = "1"; HortexGroup.TextRaw = "Podsumowanie:"; HortexGroup.Bounds = new Rectangle(10, 30, 300, 100); KodTowTXT = HortexTab.AllChildren.Add(ControlTypes.text); KodTowTXT.Visible = true; KodTowTXT.TextRaw = "1600zł"; KodTowTXT.ToolTipRaw = "spnetto"; KodTowTXT.Bounds = new Rectangle(160, 50, 50, 10); LabelTXT = HortexTab.AllChildren.Add(ControlTypes.prompt); LabelTXT.Visible = true; LabelTXT.TextRaw = "Wartość w cenach sprzedaży netto"; LabelTXT.Bounds = new Rectangle(15, 50, 140, 10); IloscTXT = HortexTab.AllChildren.Add(ControlTypes.text); IloscTXT.Visible = true; IloscTXT.TextRaw = "1300"; IloscTXT.ToolTipRaw = ""; IloscTXT.Bounds = new Rectangle(160, 70, 50, 10); IloscLabel = HortexTab.AllChildren.Add(ControlTypes.prompt); IloscLabel.Visible = true; IloscLabel.TextRaw = "Wartość netto zakupów:"; IloscLabel.Bounds = new Rectangle(15, 70, 140, 10); marza = HortexTab.AllChildren.Add(ControlTypes.prompt); marza.Visible = true; marza.TextRaw = "Wartość uzyskanej marzy:"; marza.Bounds = new Rectangle(15, 90, 140, 10); mar1 = HortexTab.AllChildren.Add(ControlTypes.text); mar1.Visible = true; mar1.TextRaw = "256"; mar1.ToolTipRaw = ""; mar1.Bounds = new Rectangle(160, 90, 50, 10); mar2 = HortexTab.AllChildren.Add(ControlTypes.text); mar2.Visible = true; mar2.TextRaw = "25%"; mar2.ToolTipRaw = ""; mar2.Bounds = new Rectangle(220, 90, 50, 10); return true; } bool OnClick(Procedures ProcedureId, int ControlId, Events Event) { try { //sql.SetStatusWydrukowany(ZamNag.ZaN_GIDNumer, KodTowTXT.TextRaw.ToString(), Convert.ToDecimal(IloscTXT.TextRaw)); Runtime.WindowController.UnlockThread(); MessageBox.Show("Dodano gratis do wygenerowania!", "Sukces"); Runtime.WindowController.LockThread(); } catch (Exception ex) { MessageBox.Show("Blad dodawania promocji hortex" + ex.ToString(), "DUPA"); } Runtime.WindowController.PostEvent(0, Events.FullRefresh); return true; } bool OnCloseWindow(Procedures ProcId, int ControlId, Events Event) { if (Saved == 1) { decimal PoczekalniaZam = 0; // PoczekalniaZam = sql.MINIMUM_LogistyczneGetPoczekalnia(ZamNag.ZaN_AdWNumer, ZamNag.ZaN_GIDNumer); DataTable Zamowienia = new DataTable(); // Zamowienia = sql.GetListaZam(ZamNag.ZaN_AdWNumer, ZamNag.ZaN_GIDNumer); string ListaZam = null; foreach (DataRow dr in Zamowienia.Rows) { ListaZam = ListaZam + dr[0].ToString() + "\n"; } if (PoczekalniaZam > 0) { MessageBox.Show("Na tego klienta występują zamówienia do potwierdzenia! Oczekuje=" + PoczekalniaZam.ToString() + " .PLN. \nKwota to zamówienia niepotwierdzone z ostatnich 21 dni!.\n \nLista zamówień: \n" + ListaZam + "", "MINIMUM LOGISTYCZNE ", MessageBoxButtons.OK, MessageBoxIcon.Warning); Runtime.WindowController.PostEvent(0, Events.FullRefresh); } } return true; } bool OnAfterAccepted(Procedures ProcId, int ControlId, Events Event) { return true; } public override void Cleanup() { } } }