0

Angebot in Rechnung umwandeln

Hallo Zusammen, wir haben eine Tabelle "Angebote" und eine Tabelle "Rechnungen". 

Nun möchten wir gerne, z.B. durch drücken einer Befehelsschaltfläche, dass das Angebot in eine Rechnung umgewandelt wird. Also Angebot unter Rechnung mit allen zugehörigen Angebotspositionen (Tabelle: Angebote.Pos) einfügen/duplizieren. Hat jemand eine Lösung? 

 

Danke für eure Hilfe :)

1 Antwort

null
    • Frank_Schafer
    • vor 5 Jahren
    • Gemeldet - anzeigen

    Hallo,

    die Umsetzung ist ja sehr abhängig von deiner Datenstruktur - aber als Anregung hier mal meine Funktion zur Erstellung der VK-Rechnung:

    function vkRechnungBuchen(myOrder : Auftrag,print : boolean) do
      let newInvoice := (create Verkaufsrechnung);
      newInvoice.(Nummer := newVerkaufsrechnungsNr());
      newInvoice.(Datum := today());
      newInvoice.(Kunde := myOrder.Kunde);
      for pos in myOrder.Positionen do
        if pos.'aktuell zu berechnen' > 0 then
          let invQuantity := pos.'aktuell zu berechnen';
          let newNettobetrag := invQuantity * pos.Einzelpreis;
          let newUST := round(newNettobetrag * pos.'USt.' / 100, 2);
          let newInvoicePos := (create Verkaufsrechnungsposition);
          newInvoicePos.(Verkaufsrechnung := newInvoice);
          newInvoicePos.(Auftragposition := pos);
          newInvoicePos.(Artikel := pos.Artikel);
          newInvoicePos.(Bezeichnung := pos.Bezeichnung);
          newInvoicePos.(Rechnungsmenge := invQuantity);
          newInvoicePos.(Einzelpreis := pos.Einzelpreis);
          newInvoicePos.(Nettobetrag := newNettobetrag);
          newInvoicePos.('USt.-Betrag' := newUST);
          newInvoicePos.(Bruttobetrag := newNettobetrag + newUST)
        end;
        pos.('Menge aktuelle Rechnung' := pos.'Lieferung noch zu berechnen')
      end;
      newInvoice.(Gebucht := true);
      if print then
        printRecord(newInvoice, "Verkaufsrechnung")
      end
    end;

    VG Frank

Content aside

  • vor 5 JahrenZuletzt aktiv
  • 1Antworten
  • 1167Ansichten