0

Case Abfrage - Code verbessern

Hallo zusammen,

ich habe ein funktionierendes Script, hier die ersten beiden cases als Beispiel:

 

var myText := 'Text Angebot';
switch 'Auswahl Angebot' do

case 1:
(var myV := record(Vorlagen,1).Text;
let myST := 'Start-Ort';
let myZ := 'Ziel-Ort';
let myDa := Mietdauer;
myV := replace(myV, "##Start-Ort##", myST);
myV := replace(myV, "##Ziel-Ort##", myZ);
myV := replace(myV, "##Dauer##", text(myDa));
'Text Angebot' := replace('Text Angebot', "##Vorlage##", myV))

case 2:
(var myV := record(Vorlagen,2).Text;
let myST := 'Start-Ort';
let myDa := Mietdauer;
myV := replace(myV, "##Start-Ort##", myST);
myV := replace(myV, "##Dauer##", text(myDa));
'Text Angebot' := replace('Text Angebot', "##Vorlage##", myV))

 

Da dieses Script läuft, könnte es so bleiben, aber ich versuche nun an anderer Stelle ein System für E-Mail Vorlagen zu erstellen.
In meinen Texten wird es viele Variablen geben und ich denke, dass ein ähnliches case script dazu vielleicht gut geeignet ist!?

Allerdings hoffe ich, dass es vielelicht nicht nötig ist, die Variablen in jedem case neu zu definieren, oder?
Ich meine es sind ja immer die gleichen.

Hat jemand einen Hinweis wie man das Script schlanker gestalten könnte?

Oder gibt es vielleicht eine bessere Möglichkeit formatierte Textvorlagen mit Variablen zu erstellen.

Im Webinar Team habe ich noch nichts zu diesem Theme gefunden.

Das E-Mail Vorlagen System versuche ich anhand der Beispieldatenbank 074 aufzubauen.

 

Vielen Dank für eure Hilfe!

Oliver M.

3 Antworten

null
    • Leonid_Semik
    • vor 5 Jahren
    • Gemeldet - anzeigen

    Hallo Oliver,

    wenn ich alles richtig ersetzt habe:

    ---

    'Text Angebot' :=

    switch 'Auswahl Angebot' do

    case 1:

    replace('Text Angebot', "##Vorlage##", replace(replace(replace( record(Vorlagen,1).Text, "##Dauer##", text(Mietdauer)), "##Ziel-Ort##", 'Ziel-Ort'), "##Start-Ort##", 'Start-Ort'))

    case 2:

    replace('Text Angebot', "##Vorlage##", replace(replace(record(Vorlagen,2).Text, "##Dauer##", text(Mietdauer)), "##Start-Ort##", 'Start-Ort'))

    ----

    Ob solche Schreibweise einfacher ist als Variablen zu setzen - Geschmacksache.

     

    Leo

    • CitizenDeveloper
    • Oliver_meerkamp
    • vor 5 Jahren
    • Gemeldet - anzeigen

    Hallo Leo,

    vielen Dank für die Mühe!
    Man muss also in jedem Case alle angaben machen.

     

    Nochmal zum zweiten Teil meiner Frage:

    Wenn ich richtig informiert bin, hast du die Datenbank 074_E-Mail Templates gebastelt!?
    Diese Lösung gefällt mir sehr, aber was noch fehlt ist die Möglichkeit die Vorlagentexte mit Platzhaltern zu versehen.

    Hast du da vielleicht einen Vorschlag wie man das am besten lösen könnte?
    Ich habe zweifel ob so eine Case Abfrage das richtige ist - vielleicht geht das viel einfacher?

    Gruß

    Oliver M.

    • Torsten_Stang.1
    • vor 5 Jahren
    • Gemeldet - anzeigen

    Hallo Oliver,

     

    schau Dir mal die Datenbank 017 im Webinar-Team an, dort insbesondere den Code des Buttons "Verschicken" bei den Rechnungen - da wird mit Platzhaltern im eMail-Text gearbeitet.

     

    lg, Torsten

Content aside

  • vor 5 JahrenZuletzt aktiv
  • 3Antworten
  • 1908Ansichten