Hallo Namenvetter!
1. Lies Dir mal die Antwort #5 durch
Geschehen und bereits geantwortet, dass meine Fachkompetenz imom nur für dieses Konstrukt reicht.
2. Warum speicherst Du das Dokument, bevor Du geprüft hast, ob es schon so eines gibt?
War nicht aktuell, sorry. Aktuell bei Querysave:
@SetField ("list1" ; (@DbColumn("" ; "" : "xxxx.nsf" ; "vDoppelpreuf" ; 1) ));
@SetField ("list2" ; (@DbColumn("" ; "" : "xxxx.nsf" ; "vDoppelpreuf" ; 2) ));
@SetField ("f_list3" ; (@DbColumn("" ; "" : "xxxx.nsf" ; "vDoppelpreuf" ; 3) ));
@If (@Contains(list1; _name) & @Contains(list2;_vorname) & @Contains(f_list3;_straße); @Prompt([Ok];"¿Doppeltes Profil?"; "Es scheint bereits ein Profil für diesen Mitarbeiter zu geben. Es wurde eine Email an den zuständigen Admin versandt, um das Problem zu überprüfen.") ; @Prompt([Ok];"Profil neu angelegt" ; "Das Profil wurde gespeichert.") );
@If (@Contains(list1; _name) & @Contains(list2;_vorname) & @Contains(f_list3;_straße) ; @MailSend( "Admin" ; "" ; "" ; "Vermeintlich doppeltes Profil erkannt" ; " Bitte den Link im Anhang prüfen und gegebenenfalls das Doppelte Profil löschen oder bearbeiten." ; "" ; [IncludeDoclink] ) ; "" );
--> Bin gerade dabei etwas zu improvisieren, dass den Querysave abbricht, bei Doppelten Dokumenten. Finde aber das Formel-Gegenstück zu continue = False nicht.
Anhang: Habe mit @return / @ false / @ failure experimentiert. Ohne Erfolg. Werde nun auf die Dblookup-Variante von Peter umsteigen.
3. Mit @DBColumn wirst Du irgendwann ein 32-k-Problem bekommen
Das klingt ungut. Hoffe wird in meiner Testdatenbank aber so schnell nicht passieren ( 10 Profile? ). Habe es aber im Hinterkopf für später!
Mein Vorschlag: Bau Dir eine Ansicht, in der in der ersten sortierten Spalte alle Werte, die Du prüfen willst, mit Trennzeichen getrennt stehen (z.B. Hans#Meier#Hauptstraße 1)
Muss ich mich erstmal belesen wie sowas geht. Bisher weiss ich nur, wie man einer Spalte Werte aus einem Feld zuweist.
Anhang: Success
Gib in der zweiten Spalte die UniversalID aus (@Text (@DocumentUniqueID))
Ich verstehe wo der Zug hinfährt!
Lass Dir mit @DBLookup und dem zusammengesetzten Schlüssel die zweite Spalte ausgeben.
Entferne aus dem Ergebnis die UniversalID des gerade geöffneten Dokuments.
Oright! Sofort wenn ich die Hilfe gegeißelt habe bzgl zusammengesetzer Wert in einer Spalte.
Ist das Ergebnis dann nicht leer, hast Du einen Konflikt
Edit: @IsError ist Dein Freund bei dem @DBLookup. Warum gibst Du eine Fehlermeldung aus, die sagt, dass es ähnliche Dokumente gibt? Du überprüfst doch nur die Gleichheit (allerdings sinnfrei).
Schon verstanden. Auch @ Tode. Das Problem, dass gemixte Daten auch einen "fälschlichen" Konflikt erzeugen ist mir bekannt. Aber bisher die Lösung, die dem was ich möchte am nächsten kommt. Bin wie gesagt noch nicht so weit. Genaugenommen erst seit 2 Wochen.
Anhang: Habe die Daten in Spalte verknüpft. UniqueID wird auch in Spalte Zwei ausgegeben. Muss jetzt aber los. Mir ist eben auch noch
eine Variante mit DBlookup aufgefallen, die ne Menge arbeit sparen würde, die ich vielleich tsogar hinbekomme.
So far großes Danke schonmal.