Probleme mit Rechnungslayouts

  • Hallo an alle,


    irgendwie bekomme ich es nicht gebacken, dass ich mehrere unterschiedliche Rechnungslayout generiere. ;(


    Was mache ich falsch? ?(


    Vorweg: ich möchte für mehrere Kundenarten unterschiedliche Rechnungsarten haben. Bei den VIP-Kunden soll bspw. ein anderer Text in den allgemeinen Textteil stehen als bei "normalkunden" oder Kunden, die einen extra Rabatt bekommen.


    Immer wenn ich z.B. an einer Rechnung etwas Text ändere oder neu einbaue, wird dies auch bei den anderen Rechnungsarten geändert. Woran liegt's???


    Danke für Eure Hilfe!!


    Stefan

  • Hi Stefan!


    Zunächst mal: Wieviele Rechnungslayouts brauchst Du und was meinst Du genau mit den "anderen Rechnungslayouts"? Rechnung I, Rechnung II und Sammelrechnung?


    Eine Möglichkeit besteht darin, daß die Vorgänge auf das gemeinsame Layout "Kaufmann_Positionen" zugreifen. Jeder Vorgang hat eine eigene Nummer (Rechnung I=70, z. Bsp.). Wenn Du den Text nicht mit einer Bedingung versiehst, also z. Bsp. if (AktVog.ArtNr.=70,"Sehr geehrte...,"sonst schreibe..."), dann wird er den Text für allgemeingültig halten und ihn in andere Vorgänge übernehmen.


    Du könntest, wenn Du nur einen Vorgang als Rechnung nutzt, den Alternativtext im Memofeld eintragen, was natürlich jedes Mal Schreibarbeit ist, oder ihn an eine Bedingung knüpfen, so dass er automatisch eingetragen wird. Dazu kann man die Infoblätter nutzen.( VIP- Kunde?, vorgegebene Antwort: Ja.)


    Wenn Du mir mehr Informationen gibst, was Du nutzt und brauchst kann ich Dir wahrscheinlich weiterhelfen und Dir eine Lösung konstruieren.


    Bis dahin!

  • Hi Björn,


    schon mal danke für die Info.


    Wie viele Vorgänge kann man den erzeugen?
    Wenn Rechnung I = 70 ist, kann man dann z.B. "VIP-Rechnung" = Vorgang 71 erzeugen, usw.??


    Ich würde halt gerne mehrer Rechnungslayout haben, damit ich gleich direkt für den entsprechenden Kunden die Rechnung ansteuern kann.
    Z.B. VIP-Kunde steht dann beispielsweise dabei: "Ihre Rechnung beihalten den Spezial-Preis!".
    Dann bräuchte ich noch eine Rechnung für Rabatt-Kunden.
    Und dann noch eine Rechnung für "Normal-Kunden", die "nur" Skonto ziehen dürfen. (das alles vorerst).


    Ich würde auch gern ohne die ganzen Bedingungen arbeiten. Sondern alles mit entsprechenden Layouts generieren.


    ---------------------
    Andere Frage:
    Kann man eigentlich auf dem Infoblatt die Beschtiftung der Komponenten ändern?
    Ich würde nämlich gerne eine Komponente "Bestellart" einbauen wollen, die ich dann mit "telefonisch", "Fax", "E-Mail" oder "Online-Shop" befüllen und in die Rechnung einsteuern möchte.
    Da geht es auch um die notwendige Widerrufsbelehrung!



    Danke!
    Stefan

  • Hi Stefan,


    neue Vorgänge erzeugen geht meines Wissens nach nicht. Ich habe es bei uns so gelöst, daß ich Rechnung I für deutschsprachige Kunden und Rechnung II für ausländische Kunden zurechtgestrickt habe. Dann gibt es noch Sammelrechnung, den man auch ändern kann.
    Ich habe diesen Vorgängen entsprechende Layouts zugeordnet. Die Bedingungen beschränken sich auch auf ein Minimum, sind aber teilweise auch unerläßlich und sehr hilfreich.


    Du kannst die Bedingungen mit den Infoblättern verknüpfen. Wenn Du ein Infoblatt "VIP-Kunde" nennst (wie man das macht, erklär ich gleich), kannst Du für den Spezialpreistext folgende Formel eintragen:


    if(AktVog.IB.InfoBlt12="Ja","Ihre Rechnung beihalten den Spezial-Preis!","Alternativtext")


    Wenn Du dann im Infoblatt 12 "Ja" einträgst, druckt er den Spezialpreistext, ansonsten die Alternative.


    So kannst Du alle Zusätze verknüpfen, die beim VIP-Kunden dazukommen oder anders sind. Steht im Infoblatt nichts, nimmt er die Vorgabe für den "Normalkunden". Ist eigentlich nicht schwer, weil Du die Bedingung immer kopieren kannst und nur mit anderen Inhalten füllen mußt.


    So, Änderung der Infoblattbezeichnungen:


    Gehe zu "Meine Firma/Parameter" unten links. Dann findest Du in der Bildmitte den Datenstammbaum . Dort unter "Vorgänge" findest Du die Rubrik Infoblattbezeichnungen. Klick drauf und dann kannst Du die Infoblätter bearbeiten. Danach unten rechts auf übernehmen und gut. Manchmal mußt Du das Programm neustarten, damit die Änderungen eingetragen werden. Du mußt dann nur in Formeln die entsprechenden Infoblattnummern zuordnen.


    Hoffe, das hilft Dir schonmal weiter, bei Fragen immer wieder gerne!

  • Hi Björn,


    herzlichen Dank!


    Das mit de Infoblättern hat schon mal geklappt!


    Noch eine Modifikationsfrage:
    Ich habe für meine VIP-Kunden mit dem Spezial-Preisen die Debitoren-Nummer 20000 bis 29999 reserviert.
    Ist es vielleicht auch irgendwie möglich, dass man den Text mit dem Spezialpreis automatisch einsteuern lassen kann, wenn eine enstprechende Kundennummer vorhaden ist??


    Danke!
    Stefan

  • Hallo Stefan,


    probier mal folgende Formel:


    if(AktVog.AdrNr>= "20000" and AktVog.AdrNr<="29999","VIP-Text","Normaltext")


    Bei mir hat es geklappt. Wenn DU für die Rechnung kein neues Layout gebastelt hast, dann solltest Du in der Darstellungsbedingung noch AktVog.ArtNr=70 (z. Bsp.) einragen. Dann druckt er das nicht bei anderen Vorgängen.

  • Hast Du die Formel reinkopiert oder abgeschrieben?


    Kann sein, daß Du einen Fehler in der Formel hast, zur Not schicke mir mal einen Bildschirmabgriff.


    Wie gesagt, habe bei uns getestet und es klappte einwandfrei. Vermute den Fehler in der Formel.

  • Hast Du die Formel reinkopiert oder abgeschrieben?


    Kann sein, daß Du einen Fehler in der Formel hast, zur Not schicke mir mal einen Bildschirmabgriff.


    Wie gesagt, habe bei uns getestet und es klappte einwandfrei. Vermute den Fehler in der Formel.

    Hi Björn,


    habe die Formel kopiert.


    Wenn ich eine Rechnung erzeuge mit z.B. Kundennummer 20020 kommt nicht als Text "VIP-Text". :(

  • Kann es momentan noch nicht sagen.


    Habe gerade folgendes gemacht:


    Im Gestalter ein Formelfeld erzeugt (nur zum testen)-nur für den Fall: im Gestalter findest Du den Befehl links in der Menüleiste, das kleine Quadrat mit dem "A" drin.


    Dort die Formel mal reinkopiert und getestet. Funzt fehlerfrei.


    Würde vorschlagen, daß Du das mal versuchst. Ist jetzt aus der Ferne ein wenig schwierig, irgendwo hast Du einen Zonk drin. Werden jetzt mal versuchen, das Problem einzugrenzen.
    Kann eine falsche Darstellungsbedingung o.ä. sein.


    Hast Du die Formel in der Tabelle (Kopfzeile z.Bsp.) eingetragen oder in einem einzelnen Formelfeld?

  • Hallo Björn,


    Deine Formel ist voellig korrekt.


    Stefan sollt noch folgendes mitteilen bzw durchfuehren:


    1. wenn "VIP-Text" nicht ausgegeben wird, welcher Text wird dann ausgegeben.
    2. zur Lokaliserung waere es hilfreich, einen Screenshot genau des Fensters vom Layoutgestalter hier hineinzustellen, in dem diese Formel steht.
    3. ggf die Konvertierung auf Version 13 des Layoutgestalters durchfuehren / nochmals durchfuehren.

  • So, jetzt muss ich mich wiede einmal melden.


    Ich habe es dank Eurer Hilfe endlich geschafft, mein Problem zu lösen.


    Es hat bei mir nicht funktioniert, da bei den neu geschaffenen Positionen die Darstellungsbedingungen im Layout falsch konfiguriert waren.


    Aber jetzt läuft alles bestens!


    Danke nochmal!
    Stefan

  • Neues Problem:


    Vorspann:
    bei gewissen Kunden gebe ich einen Soderrabatt, der automatisch in den Adressdaten hinterlegt ist (z.B. 5%).
    Wenn ich nun meine einzelnen Positionen auswähle, wird der Rabatt automatisch abgezogen.


    Manchmal ist es nun so, dass die Kunden gratis etwas dazubekommen, d.h. die Position steht mit 0,00 € da. Ein Rabattabzug ist daher nicht möglich.
    Soweit so gut.


    Auf der Rechnung wird automatisch (sofern ich dies im Infoblatt aktiviere) ein Text ausgewiesen, der darauf hinweist, dass ein Sonderrabatt abgezogen wurde. In o.g. Fall werden 5,0 % automatisch eingetragen.
    Der entsprechende Befehl lautet wie folgt:
    if(not empty (AktVog.IB.InfoBlt10),"¶" + "Es wurde ein Sonderrabatt von " + Str$(VPo.RabSz, 0,1 ) +"%" + " berücksichtigt."+"¶" + "Dies entspricht einem Betrag von brutto "+External$('AuftBetrag(AktVog.GRabBt)') + ' ' + AktVog.Waehr+" (netto: "+External$('AuftBetrag(AktVog.GRabNt)') + ' ' + AktVog.Waehr+").","")


    Nun zu meinem Problem:
    Wenn ich nun eine Gratis-Position mit einbaue in die Rechnung, wird zwar der richtige Betrag im Sonderrabatt-Text ermittelt, als Sonderrabatt steht aber 0,0 % da (statt z.B. 5,0%)


    Wie kann man das ändern???


    Danke!

  • Hallo sedlst,


    vorab,
    wenn es um eine neue Frage geht eroeffne bitte eien neuen Thread auch wenn Du diese Frage stellt. Denn diese verdient einen neuen Titel.


    Das dort Null angezeigt wird ist normal, denn diese Anzeige ruehrt aus der Varaiblen VPo.RabSz und wird be jedem Positions-Datensatz gefuellt. Da diese bei Null-Preisarikeln Null ist und dieser Artikel der Letzt in der Positonserfssung ist, wird hier auch 0 genommen.


    nimm die Varaiblen AktVog.RabSz anstatt der bisherigen VPo.RabSz

  • Danke Franco,


    der Fehler ist behoben!


    Grüße,
    Stefan