wenn ich ein neues Angebot (FRMV_BAUF_A_) schreiben möchte und im Einfügemodus im Schnellsuchfeld einen inaktiven Kundenname eingebe, dann wird der mir erstmal in der Auflistung angezeigt, das möchte ich unterbinden.
Also habe ich mir den OnExit des Feldes angesehen, der verweist auf den
Button_6.click();
Aha, dort im Script habe ich dann den Code wie folgt angepasst:
Code: Alles auswählen
Begin
// 15.05.2007 HB
bPascalScriptOK := true;
debugon := false;
// ID aus der Query der Maske holen
sAusw := Edit_1.Text;
sJa := copy(frmData.sJaNein, 1, 1);
//Prüfen, ob im aktuellen DS eine ID existiert (ob ein Datensatz selektiert ist)
if (sAusw <> '') then
begin
//Auflistfenster initialisieren und zuweisen
O_Auflist := Application.FindComponent('frmauflist2');
// Auflisfenster generieren
O_Auflist.bQueryErzeugen := True;
O_Auflist.Caption := LB_Auswahl.Caption;
O_Auflist.MultiSelectIDFeld := 'ID';
O_Auflist.bEinfacheAuswahl := true;
O_Auflist.Q_Erfassung.SQL.Text := //'SELECT A.ID AS "ID", A.WERBGR, A.MASKENKEY, B.NAME, B.BEZ, B.STRASSE, C.MASKENKEY, C.ORT ' +
'SELECT A.* ' +
'FROM V_BKUNDE A ' +
'LEFT OUTER JOIN BADR B ON A.BADR_ID_ADRNR = B.ID ' +
'LEFT OUTER JOIN BPLZ C ON B.BPLZ_ID_LANDPLZ = C.ID ' +
'WHERE A.AKTIV_JN = :sJa AND' +
' (A.MASKENKEY CONTAINING ''' + sAUSW + ''') OR ' +
' (B.NAME CONTAINING ''' + sAUSW + ''') OR ' +
' (B.STRASSE CONTAINING ''' + sAUSW + ''') OR ' +
' (B.BEZ CONTAINING ''' + sAUSW + ''') OR ' +
' (B.TELVOR || B.TELANSCH || B.TELKURZ CONTAINING ''' + sAUSW + ''') OR ' +
' (B.TELVOR2 || B.TELANSCH2 || B.TELKURZ2 CONTAINING ''' + sAUSW + ''') OR ' +
' (B.FAXVOR || B.FAXANSCH || B.FAXKURZ CONTAINING ''' + sAUSW + ''') OR ' +
' (B.TELVOR4 || B.TELANSCH4 || B.TELKURZ4 CONTAINING ''' + sAUSW + ''') OR ' +
' (B.EMAIL CONTAINING ''' + sAUSW + ''') OR ' +
' (C.PLZ CONTAINING ''' + sAUSW + ''') OR ' +
' (C.ORT CONTAINING ''' + sAUSW + ''')';
O_Auflist.Q_Erfassung.ParamByName('sJa',sJa);
end
else
bPascalScriptOK:=false;
End;O_Auflist.Q_Erfassung.ParamByName('sJa',sJa); eingefügt.
Die Maske funktioniert zwar, aber AvERP zeigt mir in der Auflistung immer noch auch die inaktiven Kunden an.
Was habe ich vergessen, bzw. übersehen ?
Beste Grüße
Thomas