Domino 9 und frühere Versionen > ND6: Entwicklung
Doppelte Rechnungsnummer verhindern
koehlerbv:
Hallo Siggi,
schau' Dir am besten das Beispiel von Andreas an - für die meisten Fälle reicht das aus und ist weiter gedacht als mein "Ansatz". Einer LS-Lösung liegt übrigens der gleiche Ansatz zu Grunde. Ich kann allerdings in der Regel in solchen Fällen nicht mehr mit @functions (die ich SEHR schätze - wo sie passen, und sie passen sehr oft) arbeiten, da es bei mir in der Regel erheblich mehr abzusichern gilt bzw. die LS-Lösung eben seit Jahren bewährter, robuster Standard aus der Werkzeugkiste ist.
Wichtig ist auch Ingos Hinweis: Das Ganze funktioniert nur sicher (egal, ob @functions oder LS oder JavaScript oder Java mit entspr. GUI-Framework), wenn eine Eingabe / Änderung der Rechnungsnummer nur auf einem einzigen Server möglich ist.
Bernhard
PS und vollkommen off-topic: "Arnie" mag ich nicht mehr ... Rein persönlich sehe ich schon das erste bestätigte Todesurteil als verwerflich an. Rein statistisch hat sich Herr Schwarzenecker aber nun (seit "Nr. 3") an einem Justizmord beteiligt.
macom111:
Hallo zusammen,
leider hab´ ich´s bis jetzt nicht hinbekommen. Es passiert gar nichts, das Dok wird einfach gespeichert – ohne Meldung.
Jetzt dachte ich mir, ich taste mich erstmal an @DBLookup heran und versuche eine einfache Abfrage auf die Rechnungsnummern der Spalte „RechnungsNr“.
Meine DB sieht folgendermaßen aus:
DB Name = „HardwEDV“
Maskenname = „Hardware“
Feldname für die Rechnungsnummer = „RechnungsNr“ vom Typ Text
Ansicht mit allen Feldern = „Alle Rechnungen“ – die Spalte 8 ist das Feld „RechungsNr“
Eigene Ansicht mit nur 1er Spalte für das Feld „RechnungsNr“ = „Lookup_RechnungsNr“
Jetzt möchte ich mir aus der Ansicht „Lookup_RechnungsNr“ aus der 1sten Spalte alle Rechnugsnummern anzeigen lassen.
Meine Formel im Querysave der Maske sieht folgendermaßen aus:
REM {Parameter zuweisen};
Datenbanktyp := "Notes";
Cacheoption := "NoCache";
Server := "";
Datenbank := "hardwedv.nsf";
Ansicht := "Lookup_RechnungsNr";
Schlüssel := "RechnungsNr";
Spaltennummer := 1;
REM {Mit Schlüssel suchen};
Liste := @DbLookup (Datenbanktyp : Cacheoption; Server : Datenbank; Ansicht; Schlüssel; Spaltennummer);
REM {Liste an Benutzer ausgeben};
@Prompt ([OkCancelList]; "Rechnngsnummer"; "Wählen Sie eine Rechnungsnummer"; ""; Liste);
Öffne ich nun ein neues Dok und Speichere es, kommt folgende Meldung:
Eintrag im Index nicht gefunden, oder der Index ist für die Ansicht nicht aufgebaut.
Die Ansicht ist aber Indexiert und die Spalte ist sortiert.
Was mache ich falsch? Bitte um Hilfe.
Gruß Siggi
koehlerbv:
--- Zitat ---Schlüssel := "RechnungsNr";
--- Ende Zitat ---
Das ist der Fehler. Du übergibst einen String namens "RechnungsNr", suchst abr den Wert des Feldes RechnungsNr. Und "08154711" ist nicht gleich "RechnungsNr".
Bernhard
macom111:
Aahh, habe verstanden.
Ich gebe bei Schlüssel := "300" ein, dann wird mir die Rechnungsnummer 300 ausgegeben.
Wie kann ich mir aber jetzt alle Rechnungnr. der Spalte ausgeben lassen?
Stehe ich auf der Leitung?
Siggi
koehlerbv:
Sorry, aber jetzt verstehe ich an der Frage gar nix mehr ...
Alle Rechnungsnummern (solange die Datenmenge nicht 64k übersteigt) bekommst Du mit @DbColumn. Aber das kann ja wohl nicht Sinn und Zweck Deiner Übung sein.
Was ich immer weniger verstehe (Siggi, das geht nicht gegen Dich): Warum lassen Firmen und andere Organisationen eigentlich überhaupt Newbees an die Systeme? Warum nehmen sie nicht wenigstens Fachleute hinzu, die während der Lösungsentwicklung auch noch ihr Wissen abgeben?
Diese ganze Frickelei, die man hier im Forum so erlebt als Abbild der realen Welt ...
Bernhard
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln