tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
7
ZUGRIFFE
459
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    audiator audiator ist offline Grünschnabel
    Registriert seit
    Oct 2010
    Ort
    Essen (NRW)
    Beiträge
    3
    Hallo,

    ich habe eine Windows Form (Zahlungsbedingungen anzeigen | hinzufügen | bearbeiten | löschen). Auf dieser Form befindet sich ein DataGridView zur Anzeige der verschiedenen Zahlungsbedingungen aus einer SQLite-DB.
    Nun möchte ich in einer Textbox den Text für Rechnungen mit einem oder mehreren Platzhaltern eingeben. Da einige Kunden unterschiedliche Zahlungsbedingungen hinterlegt haben.Ungefähr so:

    Zahlungsbedingung: Bei Zahlungen innerhalb von <PLATZHALTER1> Tagen (bis zum: <PLATZHALTER2>) gewähren wir Ihnen <PLATZHALTER3> % Skonto.

    Im Rechnungsformular sollen nach Auswahl des Kunden diese Platzhalter mit Daten aus bereits gefüllten Variablen ersetzt werden.

    z.B für Kunde 1 hinterlegte Zahlungsbedingung:
    14 Tage 3% Skonto
    Rechnungsdatum: 10.10.2010

    Oben genannter String sollte dann so aussehen:

    Zahlungsbedingung: Bei Zahlungen innerhalb von 14 Tagen (bis zum: 24.10.2010) gewähren wir Ihnen 3% Skonto.

    Wie kann ich das Umsetzen****

    Ich hoffe ich konnte mein Problem einigermaßen verständlich erklären!?

    Vielen Dank schonmal für Eure Hilfe!!

    Gruss
    Marco

    Visual Studio 2010
    vb.net Framework 3.5
    SQLite 3
     

  2. #2
    Avatar von Nico Graichen
    Nico Graichen Nico Graichen ist offline aka gemballa
    tutorials.de Moderator
    Registriert seit
    Dec 2003
    Ort
    Pulheim (NRW)
    Beiträge
    3.898
    Blog-Einträge
    34
    Hi und herzlich willkommen auf tutorials.de

    Ich versteh dein Problem nicht ganz. Geht es dir um das Ersetzen der Platzhalter durch die eigentlich Daten?
    Wenn ja: Hier hilft die String.Replace oder (wenn du die Chance hast, die Templates anzupassen) String.Format weiter.

    Wenn nicht bitte ich dich dein Problem mal anders zu beschreiben.
     
    Grüße Nico
    ----------------------
    Xing
    ----------------------
    Zitat Zitat von Mark Twain (1835-1910)
    Es gibt drei Dinge, die eine Frau aus dem Nichts hervorzaubern kann: einen Hut, einen Salat und einen Ehekrach.
    Zitat Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
    The Difference Between God and Larry Ellison: God Doesn't Think He's Larry Ellison

  3. #3
    audiator audiator ist offline Grünschnabel
    Registriert seit
    Oct 2010
    Ort
    Essen (NRW)
    Beiträge
    3
    Hallo Nico,

    ja... es geht mir um das Ersetzen der Platzhalter durch Daten.
    String.Replace... *vor die Stirn klatsch* , das ich da nicht selbst drauf gekommen bin!

    Gibt es vielleicht noch eine einfachere Lösung?

    z.B. den Variablennamen in den String einzubauen?

    Also ungefähr so:
    In dem Rechnungsformular nach Auswahl des Kunden werden die Variablen im Formular:

    _sTage, _sProzent, _ZDatum (=Rechnungsdatum + _sTage)

    mit Daten gefüllt.

    Ich hatte mir evtl. vorgestellt diese Variablennamen direkt im String für die Zahlungsbedingungen unterzubringen und den String dann so in die DB zu schreiben.

    Zahlungsbedingung: Bei Zahlungen innerhalb von _sTage Tagen (bis zum: _ZDatum) gewähren wir Ihnen _sProzent% Skonto.

    Und das dann die im String stehenden Variablennamen automatisch (also ohne String.Replace) durch die Daten der Variablen ersetzt werden.

    Geht das? und wenn ja... was muss ich bei dem String für die Zahlungsbedingung den ich in die DB speicher beachten?

    Gruss
    Marco
     

  4. #4
    Avatar von Nico Graichen
    Nico Graichen Nico Graichen ist offline aka gemballa
    tutorials.de Moderator
    Registriert seit
    Dec 2003
    Ort
    Pulheim (NRW)
    Beiträge
    3.898
    Blog-Einträge
    34
    Hi

    Per Default gibt's meines Wissen nichts, aber hier gibt's ein paar Möglichkeiten: http://www.google.de/search?hl=de&sa...=&oq=&gs_rfai=
     
    Grüße Nico
    ----------------------
    Xing
    ----------------------
    Zitat Zitat von Mark Twain (1835-1910)
    Es gibt drei Dinge, die eine Frau aus dem Nichts hervorzaubern kann: einen Hut, einen Salat und einen Ehekrach.
    Zitat Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
    The Difference Between God and Larry Ellison: God Doesn't Think He's Larry Ellison

  5. #5
    gander gander ist offline Mitglied Bronze
    Registriert seit
    Sep 2010
    Beiträge
    33
    wenn du zum beispioel einen string "String" hast, könntest du eigentlich den string so aufbauen:
    String = "Zahlungsbedingung: Bei Zahlungen innerhalb von " & tage & " Tagen (bis zum: " & datumBis & ") gewähren wir Ihnen " & skonto & "% Skonto.
    tage, datumBis und skonto sind dann eben auch strings die du mit den Daten aus der Datenbank füllst.
     

  6. #6
    audiator audiator ist offline Grünschnabel
    Registriert seit
    Oct 2010
    Ort
    Essen (NRW)
    Beiträge
    3
    Hallo Nico, Hallo Gander,

    vielen Dank für Eure Tipps!

    Ich hab viel rumprobiert. Es aber letzendlich doch per String.Replace gelöst.

    VIELEN DANK FÜR EURE BEMÜHUNGEN!!

    Gruss
    Marco
     

  7. #7
    Avatar von Nico Graichen
    Nico Graichen Nico Graichen ist offline aka gemballa
    tutorials.de Moderator
    Registriert seit
    Dec 2003
    Ort
    Pulheim (NRW)
    Beiträge
    3.898
    Blog-Einträge
    34
    Hi

    @audiator
    Gerne doch. Markier den Thread bitte noch als erledigt! Danke!

    @gander
    Was du da vor hast ist sehr teuer und speicherlastig. Beim Verketten von zwei Strings werden insgesamt drei Strings im Speicher angelegt. Rechne mal aus, wieviele in deinem Fall im Speicher liegen würden.
    Es ist bei Stringverkettung immer besser die vom System gegeben Methode zu nutzen.
     
    Grüße Nico
    ----------------------
    Xing
    ----------------------
    Zitat Zitat von Mark Twain (1835-1910)
    Es gibt drei Dinge, die eine Frau aus dem Nichts hervorzaubern kann: einen Hut, einen Salat und einen Ehekrach.
    Zitat Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
    The Difference Between God and Larry Ellison: God Doesn't Think He's Larry Ellison

  8. #8
    gander gander ist offline Mitglied Bronze
    Registriert seit
    Sep 2010
    Beiträge
    33
    aso ok, danke nico, schon wieder was dazu gelernt
     

Ähnliche Themen

  1. Photoshop Präfix/Platzhalter beim Speichern
    Von netnite im Forum Photoshop
    Antworten: 0
    Letzter Beitrag: 05.08.07, 20:13
  2. platzhalter im string
    Von benni miles im Forum PHP
    Antworten: 7
    Letzter Beitrag: 16.02.07, 14:18
  3. ACCESS (C#) Platzhalter im SELECT string benutzen?
    Von Deletemaster im Forum Relationale Datenbanksysteme
    Antworten: 0
    Letzter Beitrag: 12.01.05, 21:38
  4. Antworten: 4
    Letzter Beitrag: 28.11.04, 18:40
  5. Antworten: 15
    Letzter Beitrag: 01.10.04, 16:43