protected override void OnSaving() { bool inserted = ((ADR_ID == 0) || (ADR_ID == null)); base.OnSaving(); DBValue dbv = DBValue.Instance(this.Session); LOGIN = dbv.DBUserName; LASTUPDATE = dbv.DBSysDateTime; if (inserted) { DBUtil dbu = new DBUtil(this.Session); ADR_ID = dbu.LIZNI_SEQ("P_SEQ_ADR_ID"); if (this.ADR_ICO_OPROS == null) { ADR_ICO_OPROS = "-1"; } ADR_OPROS_ROZH = Convert.ToChar("N"); ADR_ADRPOPL = -1m; //neodsouhlasena adresa if (ADR_PLATCEDPH == null) { ADR_PLATCEDPH = "N"; } if ((string.IsNullOrEmpty(ADR_NAZEV1)) && (!string.IsNullOrEmpty(ADR_JMENO) || !string.IsNullOrEmpty(ADR_PRIJMENI))) { ADR_NAZEV1 = (ADR_PRIJMENI + ' ' + ADR_JMENO).Trim(); } if (!string.IsNullOrEmpty(ADR_NAZEV1) && !string.IsNullOrEmpty(ADR_TITUL_PRED)) { ADR_NAZEV1 = ADR_TITUL_PRED + " " + ADR_NAZEV1; } if (!string.IsNullOrEmpty(ADR_NAZEV1) && !string.IsNullOrEmpty(ADR_TITUL_ZA)) { ADR_NAZEV1 += ", " + ADR_TITUL_ZA; } if (string.IsNullOrWhiteSpace(ADR_ICO)) { ADR_ICO = null; //0.8 } if ((ADR_ICO != null) && ADR_ICO.Contains('#')) { throw new Exception("nepovolený tvar IČ/RČ"); } //0.8 if (ADR_ICO == null) { ADR_ICO = "#" + ADR_ID.ToString(); } if (ADR_TYP == null) { throw new Exception("TYP osoby musí být vyplněn"); } if (ADR_NAZEV1 == null) { throw new Exception("NAZEV osoby musí být vyplněn"); } if (((ADR_TYP == "F") || (ADR_TYP == "C")) && (ADR_DATNAR == null)) { throw new Exception("datum narození osoby musí být vyplněn"); } if (((ADR_ICZUJ_NAZEV == null) && (ADR_ZAHR == 0)) || ((ADR_ZAHR_ULICE_A_CISLO == null) && (ADR_ZAHR == 1))) { throw new Exception("název ulice musí být vyplněn"); } if ((ADR_PLATCEDPH != "N") && (ADR_PLATCEDPH != "A")) { throw new Exception("chybná hodnota plátce DPH (povolená hodnota-[A/N])"); } } }
protected override void OnSaving() { base.OnSaving(); if (fIsModified) { } if (CompoundKey1.RGP_POPLATEK == 0) { throw new Exception("poplatek musí být vyplněn"); } if (CompoundKey1.RGP_PER == null) { throw new Exception("perioda musí být vyplněna"); } if (CompoundKey1.RGP_ICO == null) { throw new Exception("IČ/RČ musí být vyplněno"); } if (this.CompoundKey1.RGP_DOPLKOD == null) { CompoundKey1.RGP_DOPLKOD = " "; } if (RGP_PLATBA == null) { RGP_PLATBA = " "; } if (RGP_ZADANO == null) { RGP_ZADANO = "R"; } if (RGP_VRATKA == null) { RGP_VRATKA = "ANO"; } RGP_SAZBA = null; DBUtil dbu = new DBUtil(this.Session); #region vypocet splatky// 0.10 zjistuji pouze pocet splatek short pocSplatek = 0; short periodicita = 0; decimal kcSplatka = 0, poslSplatka = 0; dbu.GetRgpSplatky(RGP_KCROK, CompoundKey1.RGP_PER, ref kcSplatka, ref poslSplatka, ref pocSplatek, ref periodicita); #endregion vypocet splatky DBValue dbv = DBValue.Instance(this.Session); if ((RGP_FROMDATE == null) || (RGP_FROMDATE == DateTime.MinValue)) { RGP_FROMDATE = dbv.DBSysDate; } RGP_FROMDATE = RGP_FROMDATE.Date; if ((RGP_TODATE != null) && (RGP_FROMDATE != DateTime.MinValue)) { RGP_TODATE = ((DateTime)RGP_TODATE).Date; } if (pocSplatek == 365) { RGP_TODATE = RGP_FROMDATE; } #region data z EVPOPL, NAZPOPL string expfin = string.Empty; string typsankce = string.Empty; string pernas = string.Empty; string vystup = string.Empty; decimal procsankce = 0; decimal pevnacastka = 0; decimal nasobek = 0; int porvs = 0; dbu.GetEvpoplData(CompoundKey1.RGP_POPLATEK, CompoundKey1.RGP_PER, ref expfin, ref procsankce, ref typsankce, ref pevnacastka, ref nasobek, ref pernas, ref vystup, ref porvs); if (expfin == string.Empty) { throw new Exception("nelze určit export do financí - neexistující perioda pro poplatek"); } if (string.IsNullOrEmpty(RGP_EXPUCTO)) { RGP_EXPUCTO = expfin; } RGP_PROCSANKCE = procsankce; RGP_TYPSANKCE = typsankce; RGP_PEVNACASTKA = pevnacastka; RGP_NASOBEK = nasobek; RGP_PERNAS = pernas; RGP_VYSTUP = vystup; if (RGP_PORVS == 0) { RGP_PORVS = porvs + 1; } #endregion data z EVPOPL, NAZPOPL this.LASTUPDATE = dbv.DBSysDateTime; this.LOGIN = dbv.DBUserName; }