Autor Thema: RIESIGES PROB mit DBLookUp!  (Gelesen 4587 mal)

Offline CrazyCoder

  • Junior Mitglied
  • **
  • Beiträge: 97
  • Geschlecht: Männlich
RIESIGES PROB mit DBLookUp!
« am: 24.02.03 - 13:38:29 »
Hi Leute!

Ich dachte bis vor ca 1 Stunde das meine Datenbank fertig wäre, aber nun ist mir ein fetter Fehler aufgefallen!!!  :'(

Ich greife in 8 Feldern über einen DBLookUp in eine andere Datenbank, das Funzt, ich lasse mir die Inahlte der Ansicht in verschiedenen Feldern anzeigen! Das Funzt auch!

Jetzt mein Prob:
Ich habe das auslesen der Daten an dem Mandantennamen festgemacht, habe dabei nicht bedacht, das dieser nicht einmalig ist!!!!!!! Ich muß jedoch weiterhin über dieses System an die Infos kommen, da sonst die User nachher nicht damit umgehen können! (Ist zu komplex um das jetzt kurz zu erklären!)

Also, hat irgendeiner von euch ne Idee wie ich das Lösen könnte?

Ich muß weiterhin auf eine andere Datenbank zugreifen und dies muß weiterhin über den Mandantenname geschehen! Gibt es vielleicht eine Möglichkeit, wie ich weitere Infos mitübergeben kann um dieses Feld eindeutig zu machen??? ??? ???

HILFE!!!!!!! HILFE!!!!!!! HILFE!!!!!!! HILFE!!!!!!! HILFE!!!!!!! HILFE!!!!!!! HILFE!!!!!!!

cya
CrazyCoder  :-[

Offline Rob Green

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.651
  • Geschlecht: Männlich
    • Meipor
Re:RIESIGES PROB mit DBLookUp!
« Antwort #1 am: 24.02.03 - 13:42:33 »
die Lookupview:
setze Mandantennamen und ein anderes Flag (zB Kundennummer) in der ersten Spalte zusammen, worauf Lookup per Searchkey zugreift. Auf jeden Fall muss es eindeutig sein !

Spaltenformel: Mandantenname+@text(Kundennummer)

Searchkey: der Searchkey muß dann ebenso zusammengesetzt sein aus Mandantenname+@text(Kundennummer) =>
dblookup(...."View"; Mandantenname+@text(Kundennummer); Spalte xyz)

Intern hast Du eine Kundennummer, die Du bei Erstellung des Mandantennamen eindeutig per @unique vergibst. Das  bekommen die User nie mit. Das regelst Du.

Wie Du allerdings es bewerkstelligen willst, daß der User den richtigen Mandanten unter
"Hans Meier" "Hans Meier" "Hans Meier" "Hans Meier" "Hans Meier" "Hans Meier" rauspickt, weiß ich nicht, ...
« Letzte Änderung: 24.02.03 - 13:44:43 von Rob Green »
Vielleicht verdirbt Geld wirklich den Charakter.
Auf keinen Fall aber macht Mangel an Geld ihn besser.
(John Steinbeck)

Meiporblog: http://www.meipor.de/blog
allg. Unternehmerblog: http://www.m-e-x.de/blog

Offline CrazyCoder

  • Junior Mitglied
  • **
  • Beiträge: 97
  • Geschlecht: Männlich
Re:RIESIGES PROB mit DBLookUp!
« Antwort #2 am: 24.02.03 - 13:58:27 »
Das ist kein Prob, da es sich dabei um Firmen handelt, die nur verschiedene Sitze haben, wie z.B.:

Siemens , München
Siemens , Berlin
...
...

könnte ich das nicht vielleicht auch daran festmachen?

Wie soll das jetzt mit der Nummer gehen, ich hab noch nicht mit @unique gearbeitet!

Muß ich ein neues Feld definieren, diesem als Vorgabewert @unique zuweisen und das dann mit dem Namen zusammen in der "Suchansicht für DBLookUp" anzeigen lassen?? Dann sieht der User das doch, oder?

Sorry,  bin mir noch nicht sicher wie du das jetzt meinst, bin noch Azubi! ;)

Danke für deine Hilfe!

cya
CrazyCoder  :-\

Offline Rob Green

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.651
  • Geschlecht: Männlich
    • Meipor
Re:RIESIGES PROB mit DBLookUp!
« Antwort #3 am: 24.02.03 - 14:05:38 »
laaangsam..
eins nach dem anderen... ;D


Du suchst einen eindeutigen Schlüssel?
Mein Vorschlag mit "unique" sollte Dir nur einen Weg zeigen, weil Du mehr Futter nicht geliefert hast, was ein Doc eindeutig macht.

Nun Deine Antwort darauf: "Mandant und SitZ"

na gut...wenn das reicht, dann

Suchansicht, 1. Spalte:
Mandant + Sitz

Suchkey:
Mandant + Sitz

Dann: "Dann sieht der User das doch, oder?"
er sieht, daß er Mandant Siemens, München ausgesucht hat.
Feld Mandant: Siemens
Sitz: München

na und?
Er sieht ja net, was Du im Dbllokup zusammenstellst, um in der Suchview die dazugehörigen Irgendwas zu finden. Und wenn Du eine View verwendest, die nicht sortiert nach SiemensMünchen, SiemensBerlin lauten soll, nimmste eben eine versteckte Ansicht für den Lookup und läßt den Usern die bisherige Ansicht - die ehemalige Suchansicht - so stehen mit Siemens, IBM..


ohne, daß Du groß andere Dinge im Design anpassen müßtest. Oder haste das Teil rausgefeuert und kommst net mehr an das Design ran?
« Letzte Änderung: 24.02.03 - 14:08:33 von Rob Green »
Vielleicht verdirbt Geld wirklich den Charakter.
Auf keinen Fall aber macht Mangel an Geld ihn besser.
(John Steinbeck)

Meiporblog: http://www.meipor.de/blog
allg. Unternehmerblog: http://www.m-e-x.de/blog

Offline CrazyCoder

  • Junior Mitglied
  • **
  • Beiträge: 97
  • Geschlecht: Männlich
Re:RIESIGES PROB mit DBLookUp!
« Antwort #4 am: 24.02.03 - 14:23:13 »
Hm... also, das Desing hab ich noch! Das ist kein Prob! :)

Mir ist gerade aufgefallen das auch die Kombination Mandant + Sitz in der Datenbank nicht eindeutig wäre, da die entweder an der PLZ oder am Ansprechpartner unterschieden werden!

Gut wie war das dann mit "@unique"? Ich denke es ist sicherer eine EINDEUTIGE "ID" zu erzeugen als alle möglichen Felder aus der Maske zusammen zu fassen!
Oder???

Und was ist dann mit dieser "ID" von "@unique"? Sehen die User die?
Und was ist mit dem Dialogfeld aus dem ich auf die Ansicht zugreife, bekommt der nicht diese Info zugewiesen, mit der "ID von @unique" ???

Ich weiß ich bin schlimm! :( Sorry aber ich bin noch nicht so fit in LN!

Danke!!!

CrazyCoder

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:RIESIGES PROB mit DBLookUp!
« Antwort #5 am: 24.02.03 - 15:58:31 »
... @Unique eliminiert doppelte Werte aus einer Liste und vergibt keine IDs die eindeutig sind...

ata
Grüßle Toni :)

Offline CrazyCoder

  • Junior Mitglied
  • **
  • Beiträge: 97
  • Geschlecht: Männlich
Re:RIESIGES PROB mit DBLookUp!
« Antwort #6 am: 25.02.03 - 08:45:18 »
Hm... das heißt jetzt???

Wie kann ich denn mein Problem beheben????? ???

Ich muß morgen eine Funktionierende DB Präsentieren!!!  :-[

HILFE!!


CrazyCoder

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:RIESIGES PROB mit DBLookUp!
« Antwort #7 am: 25.02.03 - 09:26:26 »
... Rob hat dir weiter oben im Posting beschrieben, wie du dir einen Schlüssel bauen kannst...

ata
Grüßle Toni :)

Offline CrazyCoder

  • Junior Mitglied
  • **
  • Beiträge: 97
  • Geschlecht: Männlich
Re:RIESIGES PROB mit DBLookUp!
« Antwort #8 am: 25.02.03 - 09:50:55 »
Na toll! Das hilft mir aber alleine nicht weiter!!!!!

Was ist mit meinen Fragen??

Ober der User nicht dann den Schlüssel sieht?
und
Ob dann nicht der Schlüssel mit ins Feld übernommen wird!!!

Ich raff das nun mal nicht, tut mir leid!

CrazyCoder

Offline Performance

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.096
  • Geschlecht: Männlich
  • I love YaBB 1G - SP1!
Re:RIESIGES PROB mit DBLookUp!
« Antwort #9 am: 25.02.03 - 10:09:48 »
hallo Coder

du hast doch Antworten bekommen.... hast du schon was in die Richtung unternommen ?
- rumschreien hilft eh nichts ... und das die db morgen fertig sein soll interessiert hier glaube ich auch niemanden

cu
Wir können alles außer hochdeutsch !

Alles ist möglich, es ist nur eine Frage der Zeit oder des Geldes!

klaussal

  • Gast
Re:RIESIGES PROB mit DBLookUp!
« Antwort #10 am: 25.02.03 - 10:12:09 »
.. nun mal ganz ruhig  ;D

du musst dir ZUERST einen schlüssel ausdenken, wie du die docs eindeutig (!) identifizieren kannst.
dann eine ansicht bauen (evtl. versteckt), wo in der ersten spalte dieser schlüssel steht (spalte sortiert). wie der schlüssel aufgebaut wird, steht weiter oben.
dann kannst du gezielt auf dieses doc zugreifen und dem user die daten anzeigen ( oder sonst was..) ;)

Offline Rob Green

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.651
  • Geschlecht: Männlich
    • Meipor
Re:RIESIGES PROB mit DBLookUp!
« Antwort #11 am: 25.02.03 - 10:26:32 »
hm...da muß ich klaussal Recht geben: bitte überlege Dir in Ruhe einen Schlüssel, der eindeutig genug ist. Zuerst war es
- Mandant
- dann Mandant und Standort
- dann ist Dir eingefallen, daß es Mandant, Standort & PLZ / Ansprechpartner ... sein sol...

ähem... ;D

Also: eindeutig wäre Mandant und unique....
unique steht in der Help ausführlich beschrieben, was es macht

"Wenn kein Parameter angegeben, wird ein nach dem Zufallsverfahren eindeutige Textwert zurückgegeben. Wenn ein Parameter angegeben wird, so werden doppelt vorhandene Werte aus einer Textliste gelöscht, indem nur das erste Element in der Liste zurückgegeben wird.
Syntax
@Unique
@Unique( Textliste )"

Der einzige Trick ist nicht beim Anlegen des Mandanten, wobei Du in einem zweiten Feld Mandant und den per unique erzeugten Schlüssel als "Rerefenz Key" zusammenlegst.

Dann wird später bei Auswahl eines Mandanten (sichtbar für User) zusätzlich (unsichtbar) das zweite Feld mitgezogen...
"SiemensAB98768GZZ999u898" = eindeutige Key für weitere Abfragen.

Also Gemach und DENKEN !!!!  8)
Vielleicht verdirbt Geld wirklich den Charakter.
Auf keinen Fall aber macht Mangel an Geld ihn besser.
(John Steinbeck)

Meiporblog: http://www.meipor.de/blog
allg. Unternehmerblog: http://www.m-e-x.de/blog

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:RIESIGES PROB mit DBLookUp!
« Antwort #12 am: 25.02.03 - 10:46:35 »
@Rob

... die zweite Variante des @Unique war mir noch gar nicht geläufig - eieiei  :o

ata  ;D
Grüßle Toni :)

klaussal

  • Gast
Re:RIESIGES PROB mit DBLookUp!
« Antwort #13 am: 25.02.03 - 10:48:22 »
.. man lernt nie aus  ::)

Offline Rob Green

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.651
  • Geschlecht: Männlich
    • Meipor
Re:RIESIGES PROB mit DBLookUp!
« Antwort #14 am: 25.02.03 - 10:49:21 »
gern geschehen  ;)

Letzten Endes kann man mE entweder die unique Function nutzen oder aber die UNID des Docs (Mandantendocs).

Wie er es dann nmacht, ob links herum oder rechts, ist gehoppt wie gedoppt.

Ich denke, was eher sein Problem ist, daß er sich etwas verrannt hat wegen dem zeitlichen Stress und nun schnell schnell das Ganze lösen muß. Da er nicht 100% fit ist, kommt er natürlich in Probleme.

ABER, wir sind ja da und können ihm aus der Patsche helfen.

Also, CrazyCoder, nur Mut...wird schon  :)
Vielleicht verdirbt Geld wirklich den Charakter.
Auf keinen Fall aber macht Mangel an Geld ihn besser.
(John Steinbeck)

Meiporblog: http://www.meipor.de/blog
allg. Unternehmerblog: http://www.m-e-x.de/blog

klaussal

  • Gast
Re:RIESIGES PROB mit DBLookUp!
« Antwort #15 am: 25.02.03 - 10:57:22 »
... der hat sich augeklinkt (anfall von stress ?)..... ::)

Offline CrazyCoder

  • Junior Mitglied
  • **
  • Beiträge: 97
  • Geschlecht: Männlich
Re:RIESIGES PROB mit DBLookUp!
« Antwort #16 am: 25.02.03 - 11:26:14 »
O.k. danke leute!

Also, die Unique Methode finde ich zusammen mit dem namen am besten, denn so wie ich dsa jetzt verstanden habe, ist der Rückgabewert 100%ig EINDEUTIG! :)

Also gut. Wie kriege ich das denn hin, das von z.B.: "SiemensAG98768GZZ999u898" die Zahlenfolge ausgeblendet werden kann!

Wo fange ich jetzt am besten an?

Die Datenbank ausder die Daten der Mandanten gezogen werden besteht schon, wie kriege ich denn dann da jetzt zu jedem Mandantennamen den "Unique-Rückgabewert", ohne denn derzeitigen Inhalt zu löschen?!

Offline Rob Green

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.651
  • Geschlecht: Männlich
    • Meipor
Re:RIESIGES PROB mit DBLookUp!
« Antwort #17 am: 25.02.03 - 11:58:35 »
Im Mandantendoc:

das zweite Feld heißt
"ID", Typ Text, Berechnet beim Anlegen, HIDDEN
Formel: @unique

das dritte Feld lautet
"MandantID", Typ Text, berechnet, HIDDEN
Formel: Feld_Mandant + "0@@0" + ID
(wert zB "Siemens0@@0ANC432536...")

Wie bekommt man nun diese Felder nachträglich rein?
Einen Agent, manuell auf markierte Dos in Ansicht:
Formel:
Field ID:=@unique
Field MandantID:=Feld_Mandant+"0@@0"+ID

Die Suchview in der Db muß in der ersten Spalte das Feld
"MandantID" sortiert (!!!!) anzeigen

Dann im nächsten Doctypen (was auch immer damit gemacht wird)...
ein Auswahlfeld mit Dialogfenster, das den Namen des Mandanten rausholt..aufgerufen per BUTTON neben dem Feld, was in sich selbst berechnet ist (Field_Mandant, Formel: Field_Mandant).
Nehme dazu die Picklist Funktion...anhand dieser Funktion wird ein Fenster mit der gewünschten Ansicht angezeigt, in der der User ein Doc auswählen kann. Diese Ansicht ist nicht die Suchansicht (sonst würden die User in der ersten Spalte das doofe "SiemensABC12348" sehen). Im Picklist kann man dann die rückzugebende Spalte angeben....hierzu nimmt man die Spalte mit demMandantenID Kennzeichen, nehmen wir dafür die Spalte 2, in der diese Info angezeigt wird.

Den Rückgabewert nimmt man auseinander:
Rückgabewert ist "Siemens0@@0ABC1234576"
Um den Mandanten namentlich ins Mandantenfeld zu holen, nimmt man
Field Mandant:=@left(Rückgabewert;"0@@0") ---> = "Siemens"

In ein weiteres Feld wird immer noch in der gleichen Formel/Button angesprochen:

Field_ID:=Rückgabewert. Das Feld ist berechnet in sich selbst mit der Formel "Field_ID" und versteckelt. Anhand dieses Feldes kannst Du Dein DbLookUp füttern.

So einigermaßen klar?
« Letzte Änderung: 25.02.03 - 11:59:30 von Rob Green »
Vielleicht verdirbt Geld wirklich den Charakter.
Auf keinen Fall aber macht Mangel an Geld ihn besser.
(John Steinbeck)

Meiporblog: http://www.meipor.de/blog
allg. Unternehmerblog: http://www.m-e-x.de/blog

Offline CrazyCoder

  • Junior Mitglied
  • **
  • Beiträge: 97
  • Geschlecht: Männlich
Re:RIESIGES PROB mit DBLookUp!
« Antwort #18 am: 26.02.03 - 08:56:45 »
Hoi Rob!
Also bis hier hin ist das alles Kein Prob! Ab da fängt es dann wieder an! :(
Den Rückgabewert nimmt man auseinander:
Rückgabewert ist "Siemens0@@0ABC1234576"
Um den Mandanten namentlich ins Mandantenfeld zu holen, nimmt man
Field Mandant:=@left(Rückgabewert;"0@@0") ---> = "Siemens"

In ein weiteres Feld wird immer noch in der gleichen Formel/Button angesprochen:

Field_ID:=Rückgabewert. Das Feld ist berechnet in sich selbst mit der Formel "Field_ID" und versteckelt. Anhand dieses Feldes kannst Du Dein DbLookUp füttern.

Wie meinste das?

Also mein Button sieht jetzt wie folg aus:

Auswahl := @PickList( [Custom] ; "Servername" : "datenbankname.nsf" ; "(vorlage-db-lookup)" ; "Wählen Sie einen Mandanten" ; "Bitte wählen Sie einen Mandanten aus:" ; 1);
FIELD Mandant := @Left(Auswahl; "0@@0");

Aber da kriege ich ständig die Meldung das ich noch keinen Hauptausdruck in der Formel hätte! Ich raff das noch nicht so ganz!
Kannste mir das vielleicht nochmal erklären??  ;D

Schonmal danke!

cya
CrazyCoder

Offline Performance

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.096
  • Geschlecht: Männlich
  • I love YaBB 1G - SP1!
Re:RIESIGES PROB mit DBLookUp!
« Antwort #19 am: 26.02.03 - 10:05:09 »
Aber da kriege ich ständig die Meldung das ich noch keinen Hauptausdruck in der Formel hätte!

bei diser Meldung einfach ein "" ans Ende der Formel reinmachen

cu
Wir können alles außer hochdeutsch !

Alles ist möglich, es ist nur eine Frage der Zeit oder des Geldes!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz