Example #1
0
 partial void DeleteAngebot_Position(Angebot_Position instance);
Example #2
0
 partial void InsertAngebot_Position(Angebot_Position instance);
Example #3
0
 partial void UpdateAngebot_Position(Angebot_Position instance);
Example #4
0
		private void detach_Angebot_Position(Angebot_Position entity)
		{
			this.SendPropertyChanging();
			entity.Auftrag = null;
		}
Example #5
0
		private void attach_Angebot_Position(Angebot_Position entity)
		{
			this.SendPropertyChanging();
			entity.Angebot = this;
		}
Example #6
0
    private void AngebotPosAnlegen()
    {
      if (rdbAussparung.Checked)
      {
        tbxEinzelVK.Text = tbxAussparungenPreis.Text;
      }

      using (DataBaseDataContext dbContext = new DataBaseDataContext())
      {
        var ap = new Angebot_Position();

        FillAngebotPositionWithValues(ref ap, cbxAlternativ1.Checked, cbxAlternativ2.Checked);

        dbContext.Angebot_Position.InsertOnSubmit(ap);

        try
        {
          dbContext.SubmitChanges();
          Func.FAngebot.dgrPositionen.Columns.Clear();
          Func.FAngebot.dgrPositionen.Columns.Add(new DataGridViewCheckBoxColumn() { HeaderText = "Markieren", Name = "Markieren" });
          Func.FAngebot.dgrPositionen.Columns.Add(new DataGridViewColumn { CellTemplate = new DataGridViewTextBoxCell(), HeaderText = Const.PosNrHeaderName, Name = Const.PosNrHeaderName, Visible = true });
          Func.FAngebot.dgrPositionen.DataSource = Func.LoadAngebotPositionenUebersicht();
          //Func.FAngebot.ColorizeZuschlagColumn();
          //Func.FAngebot.ColorizeTypColumn();
          //Func.FAngebot.GeneratePosNr();
          Func.FAngebot.DisableSortmode();
          Func.FAngebot.dgrPositionen.Columns["PosID"].Visible = false;
          Func.FAngebot.dgrPositionen.Columns["AngebotID"].Visible = false;
          Func.FAngebot.dgrPositionen.Columns["Angebot"].Visible = false;
          Func.FAngebot.dgrPositionen.Columns["Auftrag"].Visible = false;

          k = null;
          k = new Kalkulation();
          Func.FAngebotPosition.ClearEingabefelder();
          Func.LoadAngebotSumme();

          var angebot = dbContext.Angebot.Where(a => a.AngebotID.Equals(int.Parse(angebotsNr))).FirstOrDefault();
          angebot.Gesamtbetrag = Decimal.Parse(Func.FAngebot.lblGesamt.Text);
          dbContext.SubmitChanges();
        }
        catch (Exception ex)
        {
          MessageBox.Show(ex.ToString());
        }
      }

      btnPosAnlegen.Enabled = false;
    }
Example #7
0
    /// <summary>
    /// Befüllt die übergebene Auftrags- oder Angbotsposition mit Werten.
    /// Entweder bei der Neuanlage einer Position oder beim Ändern einer Position.
    /// </summary>
    /// <param name="ap">Übergebene Angebots- oder Auftragsposition.</param>
    /// <param name="isAlternative1Checked">if set to <c>true</c> [is alternative1 checked].</param>
    /// <param name="isAlternative2Checked">if set to <c>true</c> [is alternative2 checked].</param>
    private void FillAngebotPositionWithValues(ref Angebot_Position ap, bool isAlternative1Checked, bool isAlternative2Checked)
    {
      try
      {
        ap.AngebotID = int.Parse(angebotsNr);

        if (rdbVorderwand.Checked)
        {
          ap.Artikel = "Vorderwand";
        }
        else if (rdbKabinen.Checked)
        {
          ap.Artikel = "Kabine";
        }
        else if (rdbTrennwand.Checked)
        {
          ap.Artikel = "Trennwand";
        }
        else if (rdbSchamwand.Checked)
        {
          ap.Artikel = "Schamwand";
        }
        else if (rdbVorOTuer.Checked)
        {
          ap.Artikel = "Abschlusswand";
        }
        else
        {
          ap.Artikel = "Sonderartikel";
        }

        ap.Sondertext = tbxSondertextUnten.Text == "" ? null : tbxSondertextUnten.Text;
        ap.SondertextOben = tbxSondertextOben.Text == "" ? null : tbxSondertextOben.Text;
        ap.Typ = rdbTM.Checked ? "TM" : rdbTS.Checked ? "TS" : "NK";
        ap.AnlagenStk = tbxAnlagen.Text == "" ? 0 : Decimal.Parse(tbxAnlagen.Text);
        ap.Breite = tbxBreite.Text == "" ? 0 : int.Parse(tbxBreite.Text);
        ap.Tiefe = tbxTiefe.Text == "" ? 0 : int.Parse(tbxTiefe.Text);
        ap.Türen = tbxTüren.Text == "" ? 0 : int.Parse(tbxTüren.Text);
        ap.TW = tbxTrw.Text == "" ? 0 : int.Parse(tbxTrw.Text);
        ap.ZuschlagTür = tbxZuschlag.Text == "" ? 0 : int.Parse(tbxZuschlag.Text);
        ap.Zuschlag = tbxVK.Text == "" ? 0 : int.Parse(tbxVK.Text);
        ap.ZuschlagArt = cbxVK.SelectedItem.ToString();
        ap.Alupulver = cbxAlupulver.Checked ? Decimal.Parse(tbxAlupulv.Text) : 0.00m;
        ap.Montage = cbxMontage.Checked ? "ja" : "nein";
        ap.Oberlicht = cbxOberlicht.Checked ? "ja" : "nein";
        ap.AussparungStk = null;
        ap.SonderartikelEinheit = cbxSonderartikelEinheit.Text == "" ? null : cbxSonderartikelEinheit.Text;
        ap.Eventual = cbxEventual.Checked ? 1: 0;

        if (rdbAussparung.Checked)
        {
          ap.AussparungTxt = cobAussaprungBeschreibung.Text == "" ? null : cobAussaprungBeschreibung.Text;
        }
        else
        {
          ap.AussparungTxt = null;
        }

        ap.Einzelpreis = tbxEinzelVK.Text == "" ? 0.00m : Decimal.Parse(tbxEinzelVK.Text);

        if (isAlternative1Checked)
        {
          ap.Alternativ1Typ = rdbTM1.Checked ? "TM" : rdbTS1.Checked ? "TS" : "NK";
          ap.Alternativ1Preis = tbxAlt1Preis.Text == "" ? 0.00m : Decimal.Parse(tbxAlt1Preis.Text);
        }
        else
        {
          ap.Alternativ1Typ = null;
          ap.Alternativ1Preis = null;
        }

        if (isAlternative2Checked)
        {
          ap.Alternativ2Typ = rdbTM2.Checked ? "TM" : rdbTS2.Checked ? "TS" : "NK";
          ap.Alternativ2Preis = tbxAlt2Preis.Text == "" ? 0.00m : Decimal.Parse(tbxAlt2Preis.Text);
        }
        else
        {
          ap.Alternativ2Typ = null;
          ap.Alternativ2Preis = null;
        }
      }
      catch (Exception ex) { }
    }
Example #8
0
    ///<summary>
    ///</summary>
    ///<param name="ap"></param>
    public Form_Kalkualtion(Angebot_Position ap)
    {
      InitializeComponent();
      InitializeKalkulation();
      kalkParamDB = DBManager.GetKalkulationsparameter();
      isAuftrag = false;

      //Ausgewählte Angebotsposition laden 
      positionsNr = ap.PosID.ToString();
      angebotsNr = ap.AngebotID.ToString();



      switch (ap.Artikel)
      {
        case "Vorderwand":
          rdbVorderwand.Checked = true;
          break;
        case "Kabine":
          rdbKabinen.Checked = true;
          break;
        case "Trennwand":
          rdbTrennwand.Checked = true;
          break;
        case "Schamwand":
          rdbSchamwand.Checked = true;
          break;
        case "Abschlusswand":
          rdbVorOTuer.Checked = true;
          break;
        case "Sonderartikel":
          rdbAussparung.Checked = true;
          break;
      }

      tbxSondertextUnten.Text = ap.Sondertext;
      tbxSondertextOben.Text = ap.SondertextOben;

      switch (ap.Typ)
      {
        case "TM":
          rdbTM.Checked = true;
          break;
        case "TS":
          rdbTS.Checked = true;
          break;
        case "NK":
          rdbNK.Checked = true;
          break;
      }

      tbxAnlagen.Text = String.Format("{0:#,0.##}", ap.AnlagenStk);
      tbxBreite.Text = ap.Breite.ToString();
      tbxTiefe.Text = ap.Tiefe.ToString();
      tbxTüren.Text = ap.Türen.ToString();
      tbxTrw.Text = ap.TW.ToString();
      tbxZuschlag.Text = ap.ZuschlagTür.ToString();

      if (ap.Artikel == "Sonderartikel")
      {
        tbxAussparungenPreis.Text = ap.Einzelpreis.ToString();
        double temp = double.Parse(tbxAussparungenPreis.Text);
        tbxAussparungenPreis.Text = temp.ToString();
        gbxAussparung.Enabled = true;
        cbxSonderartikelEinheit.Text = ap.SonderartikelEinheit;
      }
      tbxVK.Text = ap.Zuschlag.ToString();

      switch (ap.ZuschlagArt)
      {
        case "Prozent":
          cbxVK.SelectedIndex = 0;
          break;
        case "Euro":
          cbxVK.SelectedIndex = 1;
          break;
      }

      cbxAlupulver.Checked = ap.Alupulver != 0.00m ? true : false;
      cbxMontage.Checked = ap.Montage == "ja" ? true : false;
      cbxEventual.Checked = ap.Eventual != 0 ? true : false;

      cobAussaprungBeschreibung.Text = ap.AussparungTxt;
      

      if (ap.Alternativ1Typ != null)
      {
        cbxAlternativ1.Checked = true;

        switch (ap.Alternativ1Typ)
        {
          case "TM":
            rdbTM1.Checked = true;
            break;
          case "TS":
            rdbTS1.Checked = true;
            break;
          case "NK":
            rdbNK1.Checked = true;
            break;
        }

        tbxAlt1Preis.Text = ap.Alternativ1Preis.ToString();
      }

      if (ap.Alternativ2Typ != null)
      {
        cbxAlternativ2.Checked = true;

        switch (ap.Alternativ2Typ)
        {
          case "TM":
            rdbTM2.Checked = true;
            break;
          case "TS":
            rdbTS2.Checked = true;
            break;
          case "NK":
            rdbNK2.Checked = true;
            break;
        }

        tbxAlt2Preis.Text = ap.Alternativ2Preis.ToString();
      }

      Kalkulieren();

      tbxAlupulv.Text = ap.Alupulver.ToString();
      cbxOberlicht.Checked = ap.Oberlicht == "ja" ? true : false;

      // Der Positions-Einzelpreis wird zum Schluss in die Form geladen.
      // Hat der User bei der Kalkulation den errechneten Preis manuell abgeändert 
      // so würde der Preis immer durch das erneute Kalkulieren überschrieben.
      // Das passiert zwar weiterhin, aber durch das nachladen des Preises erscheint somit der korrekte Betrag.
      if (ap.Artikel != "Sonderartikel")
      {
        tbxEinzelVK.Text = String.Format("{0:0,0}", ap.Einzelpreis);
      }
    }