AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Feld eine DB mit Daten (als Text) ergänzen, nicht ersetzen.
Thema durchsuchen
Ansicht
Themen-Optionen

Feld eine DB mit Daten (als Text) ergänzen, nicht ersetzen.

Offene Frage von "LuckyStrike4life"
Ein Thema von LuckyStrike4life · begonnen am 30. Jan 2004 · letzter Beitrag vom 30. Jan 2004
Antwort Antwort
LuckyStrike4life

Registriert seit: 22. Jul 2003
Ort: SN
105 Beiträge
 
Delphi 5 Enterprise
 
#1

Feld eine DB mit Daten (als Text) ergänzen, nicht ersetzen.

  Alt 30. Jan 2004, 10:42
Morgen,

ja... ein neues schönes Problem.

In einer DB muss ein Feld mit Namen ergänzt werden.

Möglichkeit 1:
Ein z.B. DBMemo fragt das Feld ab und zeigt somit die aktuellen Einträge an. Der User schreibt seinen Namen und LZ dazu. Das ganze geht wieder in die DB zurück.

Schlechte Möglichkeit, denn es wäre für den User hier zu viel Arbeit. Kein Scherz, dass wurde mir gesagt. Die Namen werden momentan per DBLookupCombobox ausgewählt, und zusammen mit dem LZ und ein wenig Zeichen für die Formatierung in ein Edit Feld geschrieben.

Möglichkeit 2:
Der User sucht sich mit der DBLUCombobox sein Namen aus dieser wird in ein Feld geschrieben, wo schon die alten Daten des Feldes drin stehen - d.h. der Name und LZ wird nur rangehangen.
Das Feld wird dann wieder in die DB geschrieben.

Das ist aber nicht so einfach, denn wenn ich nun die Daten aus dem Feld in ein Memo laden lasse, und Automatisch dann den Namen aus der DBLUCombobox dort reinschreiben lassen möchte, wird ja alles überschrieben.

Habt ihr bessere Ideen und Lösungswege?
- ich kann doch wirklich nichts -
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#2

Re: Feld eine DB mit Daten (als Text) ergänzen, nicht ersetz

  Alt 30. Jan 2004, 11:06
Wie wär's wenn du das alles "zu Fuss" machst:
Daten in eine normal ComboBox
wenn ein Eintrag ausgewählt wurde -> abfragen ob ein neuer Eintrag angelegt werden muss oder ein bestehender aktualisiert werden soll.

OffTopic.
Da zu dem Programm vielleicht noch mehr Fragen kommen werden:
Was ist die "LZ"?, bzw. ist es nicht sinvoll in der User-Tabelle einen numerischen prim. Key anzulegen über den du Namen & LZ bekommst -> dann brauchst alle anderen Tabellen nur über dieses Feld verknüpfen...
  Mit Zitat antworten Zitat
LuckyStrike4life

Registriert seit: 22. Jul 2003
Ort: SN
105 Beiträge
 
Delphi 5 Enterprise
 
#3

Re: Feld eine DB mit Daten (als Text) ergänzen, nicht ersetz

  Alt 30. Jan 2004, 11:32
Zitat von GeorgeWNewbie:
Wie wär's wenn du das alles "zu Fuss" machst:
Daten in eine normal ComboBox
wenn ein Eintrag ausgewählt wurde -> abfragen ob ein neuer Eintrag angelegt werden muss oder ein bestehender aktualisiert werden soll.

OffTopic.
Da zu dem Programm vielleicht noch mehr Fragen kommen werden:
Was ist die "LZ"?, bzw. ist es nicht sinvoll in der User-Tabelle einen numerischen prim. Key anzulegen über den du Namen & LZ bekommst -> dann brauchst alle anderen Tabellen nur über dieses Feld verknüpfen...
Es handelt sich um dBase Datenbanken, also keine Chance mit Auto-Inc und ähnlichen Dingen, leider - in der Maintabelle hab ich eine Spalte angelegt, dort wird für jeden Datensatz eine Nummer genieriert. Das aber vom Programm, nicht von dBase - dBase ist unfähig für Dinge dieser Art.

LZ == Laufzeichen, und in der Art wie eine IP Adresse von jedem der hier Arbeitet, muss zwingend immer angegeben sein, denn Namen können sich gleichen LZs nicht.

Zitat:
Daten in eine normal ComboBox
wenn ein Eintrag ausgewählt wurde -> abfragen ob ein neuer Eintrag angelegt werden muss oder ein bestehender aktualisiert werden soll.
Nein,
so gehts nicht. Die User wissen schon ob sie bei jemanden Mitfahren müssen oder nicht, dafür gibts dann ein neues Form - am unterem Rand sitzt ein Grid wo alle Datensätze angezeigt werden, die in Frage kommen (keine schon bestätigten oder abgelehnten).
Natürlich geschieht das über SQL Abfrage.

Ups, vielleicht meintest du das auch so - ob das Feld 'Mitfahrer' beschrieben werden muss, oder ergänzt werden soll, soll die Abfrage sein. Kein schlechter Ansatz, aber wie stellst du dir so eine Abfrage vor?

Eine normale Combobox ist auch nicht geeignet, denn die User können sich ändern, daher gibts ja eine extra Tabelle. So das es verwaltet werden kann.
- ich kann doch wirklich nichts -
  Mit Zitat antworten Zitat
LuckyStrike4life

Registriert seit: 22. Jul 2003
Ort: SN
105 Beiträge
 
Delphi 5 Enterprise
 
#4

Re: Feld eine DB mit Daten (als Text) ergänzen, nicht ersetz

  Alt 30. Jan 2004, 13:00
Ich hab mir eben mal wieder Gedanken gemacht - und vermutlich eine Lösung gefunden.

Hört sie euch an,
ich lasse das Feld der DB in ein Memo schreiben, das Memo setz ich auf Visible=False.

Sobald der User einen Namen gewählt hat, laß ich den Namen und das LZ in ein anderes EditFeld schreiben, so kann der User noch schauen ob alles okay ist.

Sobald er auf Abschicken klickt füge ich beide Felder zusammen in ein Memo, ebenfalls nicht sichtbar und laß das dann in die DB schreiben. Was sagt ihr? Vermutlich nichts , Problem scheint gelöst zu sein.

Thx an GeorgeWNewbie, zumindest einer hat überhaupt was dazu geschrieben.
- ich kann doch wirklich nichts -
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#5

Re: Feld eine DB mit Daten (als Text) ergänzen, nicht ersetz

  Alt 30. Jan 2004, 13:06
Sorry, dass ich mich nicht wieder gemeldet habe -> bin gerade tierisch im Stress.

Frage:
Der User sieht ein Grid in dem alle anträge auf einen Leihwagen (war doch das Prog, oder?) aufgelistet sind.
Wenn er auch auf diese Tagung,... mitfahren will, klickt er auf den Eintrag und wählt seinen Namen aus der ComboBox.

wWenn ich das richtig verstanden habe dann:
Jetzt machst du eine Abfrage, ob sich dieser User schon dazu eingetragen hat.
wenn ja -> meckern
wenn nicht -> Insert auf die Tabelle

p.s.: mit ...
Zitat von GeorgeWNewbie:
Daten in eine normale ComboBox
... meinte ich eine Abfrage aller User mit der du die ComboBox füllst.
  Mit Zitat antworten Zitat
LuckyStrike4life

Registriert seit: 22. Jul 2003
Ort: SN
105 Beiträge
 
Delphi 5 Enterprise
 
#6

Re: Feld eine DB mit Daten (als Text) ergänzen, nicht ersetz

  Alt 30. Jan 2004, 13:25
Zitat von GeorgeWNewbie:
Sorry, dass ich mich nicht wieder gemeldet habe -> bin gerade tierisch im Stress.

Frage:
Der User sieht ein Grid in dem alle anträge auf einen Leihwagen (war doch das Prog, oder?) aufgelistet sind.
Wenn er auch auf diese Tagung,... mitfahren will, klickt er auf den Eintrag und wählt seinen Namen aus der ComboBox.

wWenn ich das richtig verstanden habe dann:
Jetzt machst du eine Abfrage, ob sich dieser User schon dazu eingetragen hat.
wenn ja -> meckern
wenn nicht -> Insert auf die Tabelle

p.s.: mit ...
Zitat von GeorgeWNewbie:
Daten in eine normale ComboBox
... meinte ich eine Abfrage aller User mit der du die ComboBox füllst.
Schon richtig,
es geht allerdings nicht um Leihwagen sondern um Dienstwagen, aber das ist irrelevant.
Ansonsten:
Zitat:
Der User sieht ein Grid in dem alle anträge auf einen Leihwagen (war doch das Prog, oder?) aufgelistet sind.
Wenn er auch auf diese Tagung,... mitfahren will, klickt er auf den Eintrag und wählt seinen Namen aus der ComboBox.
genau so, und nicht anders .
Zitat:
Jetzt machst du eine Abfrage, ob sich dieser User schon dazu eingetragen hat.
wenn ja -> meckern
wenn nicht -> Insert auf die Tabelle
Das ist nicht wichtig , ich hoffe die Anwender können das ganze soweit noch überblicken .
- ich kann doch wirklich nichts -
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#7

Re: Feld eine DB mit Daten (als Text) ergänzen, nicht ersetz

  Alt 30. Jan 2004, 13:28
Mit Abfrage meine ich ab es in der Tabelle schon einen Eintrag zu diesem Leihwagen/Tag von dem User gibt gibt.
Wenn du nicht meckern willst, kannst du ja per UPDATE den Timestamp oder sonst was aktualisieren.
Gibt es keinen Eintrag -> INSERT
(Ich dachte das war deine Frage )
  Mit Zitat antworten Zitat
LuckyStrike4life

Registriert seit: 22. Jul 2003
Ort: SN
105 Beiträge
 
Delphi 5 Enterprise
 
#8

Re: Feld eine DB mit Daten (als Text) ergänzen, nicht ersetz

  Alt 30. Jan 2004, 13:46
Ahso,
ja klar - aber so eine Funktion hab ich mit SQL schon .

Sie ist auch ungemein wichtig und würde sie nicht existieren, würde das Programm hier nicht anerkannt werden.

Soweit ist das Programm auch fertig, ich sitz jetzt nur noch an den kleinen Änderungswünschen - damit ich endlich Version 1.1 Abgeben kann und Nachts wieder besser schlafe . Und mich natürlich den nächsten Scripten/Programmen widmen kann .

Nein, meine Frage war wie ich in ein Feld wo schon was drin steht noch was dazu schreiben kann, die Lösung ist mir dann noch eingefallen.
- ich kann doch wirklich nichts -
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz