&ANALYZE-SUSPEND _VERSION-NUMBER AB_v9r12 GUI ADM2 &ANALYZE-RESUME /* Connected Databases anadat PROGRESS */ &Scoped-define WINDOW-NAME CURRENT-WINDOW &Scoped-define FRAME-NAME gAdressauswahl &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS gAdressauswahl /*------------------------------------------------------------------------ File: Description: from cntnrdlg.w - ADM2 SmartDialog Template Input Parameters: Output Parameters: Author: Created: ------------------------------------------------------------------------*/ /* This .W file was created with the Progress AppBuilder. */ /*----------------------------------------------------------------------*/ /* Create an unnamed pool to store all the widgets created by this procedure. This is a good default which assures that this procedure's triggers and internal procedures will execute in this procedure's storage, and that proper cleanup will occur on deletion of the procedure. */ CREATE WIDGET-POOL. /* *************************** Definitions ************************** */ /* Parameters Definitions --- */ DEF INPUT PARAMETER ipAdressen AS HANDLE NO-UNDO. /* Local Variable Definitions --- */ DEF VAR MaxPage AS INT NO-UNDO. DEF VAR AktSeite AS INT NO-UNDO. DEF VAR FMutFlag AS LOG NO-UNDO. DEF VAR AdFirma AS CHAR NO-UNDO INIT ''. DEF VAR Firma AS CHAR NO-UNDO INIT ''. DEF VAR VSort AS INT NO-UNDO INIT 1. DEF VAR VSuch1 AS CHAR NO-UNDO INIT ''. DEF VAR VSuch2 AS CHAR NO-UNDO INIT ''. DEF VAR VSuch3 AS CHAR NO-UNDO INIT ''. DEF VAR VSuch4 AS CHAR NO-UNDO INIT ''. DEF VAR VSuch5 AS CHAR NO-UNDO INIT ''. DEF VAR VSuch6 AS CHAR NO-UNDO INIT ''. DEF VAR VSuch7 AS CHAR NO-UNDO INIT ''. DEF VAR cAdressen AS CHAR NO-UNDO. DEF VAR AnzVorhanden AS INT NO-UNDO. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK /* ******************** Preprocessor Definitions ******************** */ &Scoped-define PROCEDURE-TYPE SmartDialog &Scoped-define DB-AWARE no &Scoped-define ADM-CONTAINER DIALOG-BOX &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Data-Source,Page-Target,Update-Source,Update-Target /* Name of first Frame and/or Browse and/or first Query */ &Scoped-define FRAME-NAME gAdressauswahl &Scoped-define BROWSE-NAME Br_Adressen /* Internal Tables (found by Frame, Query & Browse Queries) */ &Scoped-define INTERNAL-TABLES Adresse /* Definitions for BROWSE Br_Adressen */ &Scoped-define FIELDS-IN-QUERY-Br_Adressen Adresse.Knr Adresse.Suchbe ~ Adresse.Firma1 Adresse.Name Adresse.Vorname Adresse.Strasse Adresse.Plz ~ Adresse.Ort &Scoped-define ENABLED-FIELDS-IN-QUERY-Br_Adressen &Scoped-define OPEN-QUERY-Br_Adressen OPEN QUERY Br_Adressen FOR EACH Adresse NO-LOCK INDEXED-REPOSITION. &Scoped-define TABLES-IN-QUERY-Br_Adressen Adresse &Scoped-define FIRST-TABLE-IN-QUERY-Br_Adressen Adresse /* Definitions for DIALOG-BOX gAdressauswahl */ /* Standard List Definitions */ &Scoped-Define ENABLED-OBJECTS F_Suchbe F_Knr F_Firma F_Name F_Strasse ~ F_Lkz F_Plz F_Ort Br_Adressen S_Adressen Btn_OK RECT-39 &Scoped-Define DISPLAYED-OBJECTS F_Suchbe F_Knr F_Firma F_Name F_Strasse ~ F_Lkz F_Plz F_Ort S_Adressen /* Custom List Definitions */ /* List-1,List-2,List-3,List-4,List-5,List-6 */ &Scoped-define List-6 F_Suchbe F_Knr F_Firma F_Name F_Strasse F_Lkz F_Plz ~ F_Ort /* _UIB-PREPROCESSOR-BLOCK-END */ &ANALYZE-RESUME /* *********************** Control Definitions ********************** */ /* Define a dialog box */ /* Definitions of the field level widgets */ DEFINE BUTTON Btn_OK LABEL "&OK" SIZE 16 BY 1. DEFINE VARIABLE F_Firma AS CHARACTER FORMAT "x(30)":U LABEL "Firma" VIEW-AS FILL-IN NATIVE SIZE 34 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Knr AS INTEGER FORMAT "999999":U INITIAL 0 LABEL "Kundennummer" VIEW-AS FILL-IN NATIVE SIZE 11 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Lkz AS CHARACTER FORMAT "x(30)":U INITIAL "CH" LABEL "Land/Plz/Ort" VIEW-AS FILL-IN NATIVE SIZE 8 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Name AS CHARACTER FORMAT "x(30)":U LABEL "Name" VIEW-AS FILL-IN NATIVE SIZE 34 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Ort AS CHARACTER FORMAT "x(30)":U VIEW-AS FILL-IN NATIVE SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Plz AS CHARACTER FORMAT "x(30)":U VIEW-AS FILL-IN NATIVE SIZE 10 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Strasse AS CHARACTER FORMAT "x(30)":U LABEL "Strasse" VIEW-AS FILL-IN NATIVE SIZE 34 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Suchbe AS CHARACTER FORMAT "x(30)":U LABEL "Suchbegriff" VIEW-AS FILL-IN NATIVE SIZE 34 BY 1 BGCOLOR 15 NO-UNDO. DEFINE RECTANGLE RECT-39 EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL SIZE 133 BY 23.29. DEFINE VARIABLE S_Adressen AS CHARACTER VIEW-AS SELECTION-LIST SINGLE SORT SCROLLBAR-VERTICAL SIZE 129 BY 8 BGCOLOR 15 FONT 9 NO-UNDO. /* Query definitions */ &ANALYZE-SUSPEND DEFINE QUERY Br_Adressen FOR Adresse SCROLLING. &ANALYZE-RESUME /* Browse definitions */ DEFINE BROWSE Br_Adressen &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS Br_Adressen gAdressauswahl _STRUCTURED QUERY Br_Adressen NO-LOCK DISPLAY Adresse.Knr FORMAT "zzzzz9":U WIDTH 8 Adresse.Suchbe FORMAT "x(20)":U WIDTH 15 Adresse.Firma1 COLUMN-LABEL "Firma" FORMAT "x(30)":U WIDTH 18 Adresse.Name FORMAT "x(30)":U WIDTH 18 Adresse.Vorname FORMAT "x(20)":U WIDTH 13 Adresse.Strasse FORMAT "x(30)":U WIDTH 18 Adresse.Plz FORMAT "X(8)":U Adresse.Ort FORMAT "x(20)":U WIDTH 21.8 /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME WITH NO-ROW-MARKERS SEPARATORS SIZE 129 BY 9.24 BGCOLOR 15 . /* ************************ Frame Definitions *********************** */ DEFINE FRAME gAdressauswahl F_Suchbe AT ROW 1.52 COL 20 COLON-ALIGNED F_Knr AT ROW 1.52 COL 78 COLON-ALIGNED F_Firma AT ROW 2.52 COL 20 COLON-ALIGNED F_Name AT ROW 2.52 COL 78 COLON-ALIGNED F_Strasse AT ROW 3.52 COL 20 COLON-ALIGNED F_Lkz AT ROW 4.52 COL 20 COLON-ALIGNED F_Plz AT ROW 4.52 COL 28 COLON-ALIGNED NO-LABEL F_Ort AT ROW 4.52 COL 38 COLON-ALIGNED NO-LABEL Br_Adressen AT ROW 6.19 COL 3.6 S_Adressen AT ROW 16.14 COL 3.6 NO-LABEL Btn_OK AT ROW 4.52 COL 115 RECT-39 AT ROW 1.24 COL 2 SPACE(0.99) SKIP(0.37) WITH VIEW-AS DIALOG-BOX KEEP-TAB-ORDER SIDE-LABELS NO-UNDERLINE THREE-D SCROLLABLE TITLE "Adressen auswählen". /* *********************** Procedure Settings ************************ */ &ANALYZE-SUSPEND _PROCEDURE-SETTINGS /* Settings for THIS-PROCEDURE Type: SmartDialog Allow: Basic,Browse,DB-Fields,Query,Smart Container Links: Data-Target,Data-Source,Page-Target,Update-Source,Update-Target Design Page: 1 Other Settings: COMPILE */ &ANALYZE-RESUME _END-PROCEDURE-SETTINGS &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB gAdressauswahl /* ************************* Included-Libraries *********************** */ {src/adm2/containr.i} /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME /* *********** Runtime Attributes and AppBuilder Settings *********** */ &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES /* SETTINGS FOR DIALOG-BOX gAdressauswahl Custom */ /* BROWSE-TAB Br_Adressen F_Ort gAdressauswahl */ ASSIGN FRAME gAdressauswahl:SCROLLABLE = FALSE FRAME gAdressauswahl:HIDDEN = TRUE. ASSIGN Br_Adressen:COLUMN-RESIZABLE IN FRAME gAdressauswahl = TRUE. /* SETTINGS FOR FILL-IN F_Firma IN FRAME gAdressauswahl 6 */ /* SETTINGS FOR FILL-IN F_Knr IN FRAME gAdressauswahl 6 */ /* SETTINGS FOR FILL-IN F_Lkz IN FRAME gAdressauswahl 6 */ /* SETTINGS FOR FILL-IN F_Name IN FRAME gAdressauswahl 6 */ /* SETTINGS FOR FILL-IN F_Ort IN FRAME gAdressauswahl 6 */ /* SETTINGS FOR FILL-IN F_Plz IN FRAME gAdressauswahl 6 */ /* SETTINGS FOR FILL-IN F_Strasse IN FRAME gAdressauswahl 6 */ /* SETTINGS FOR FILL-IN F_Suchbe IN FRAME gAdressauswahl 6 */ /* _RUN-TIME-ATTRIBUTES-END */ &ANALYZE-RESUME /* Setting information for Queries and Browse Widgets fields */ &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE Br_Adressen /* Query rebuild information for BROWSE Br_Adressen _TblList = "AnaDat.Adresse" _Options = "NO-LOCK INDEXED-REPOSITION" _FldNameList[1] > AnaDat.Adresse.Knr "Adresse.Knr" ? "zzzzz9" "integer" ? ? ? ? ? ? no ? no no "8" yes no no "U" "" "" _FldNameList[2] > AnaDat.Adresse.Suchbe "Adresse.Suchbe" ? "x(20)" "character" ? ? ? ? ? ? no ? no no "15" yes no no "U" "" "" _FldNameList[3] > AnaDat.Adresse.Firma1 "Adresse.Firma1" "Firma" "x(30)" "character" ? ? ? ? ? ? no ? no no "18" yes no no "U" "" "" _FldNameList[4] > AnaDat.Adresse.Name "Adresse.Name" ? "x(30)" "character" ? ? ? ? ? ? no ? no no "18" yes no no "U" "" "" _FldNameList[5] > AnaDat.Adresse.Vorname "Adresse.Vorname" ? "x(20)" "character" ? ? ? ? ? ? no ? no no "13" yes no no "U" "" "" _FldNameList[6] > AnaDat.Adresse.Strasse "Adresse.Strasse" ? "x(30)" "character" ? ? ? ? ? ? no ? no no "18" yes no no "U" "" "" _FldNameList[7] = AnaDat.Adresse.Plz _FldNameList[8] > AnaDat.Adresse.Ort "Adresse.Ort" ? "x(20)" "character" ? ? ? ? ? ? no ? no no "21.8" yes no no "U" "" "" _Query is NOT OPENED */ /* BROWSE Br_Adressen */ &ANALYZE-RESUME &ANALYZE-SUSPEND _QUERY-BLOCK DIALOG-BOX gAdressauswahl /* Query rebuild information for DIALOG-BOX gAdressauswahl _Options = "SHARE-LOCK" _Query is NOT OPENED */ /* DIALOG-BOX gAdressauswahl */ &ANALYZE-RESUME /* ************************ Control Triggers ************************ */ &Scoped-define SELF-NAME gAdressauswahl &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gAdressauswahl gAdressauswahl ON END-ERROR OF FRAME gAdressauswahl /* Adressen auswählen */ DO: RUN ENDE. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gAdressauswahl gAdressauswahl ON GO OF FRAME gAdressauswahl /* Adressen auswählen */ DO: RUN ENDE_PROGRAMM ( INPUT THIS-PROCEDURE:FILE-NAME ) NO-ERROR. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gAdressauswahl gAdressauswahl ON WINDOW-CLOSE OF FRAME gAdressauswahl /* Adressen auswählen */ DO: RUN ENDE. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define BROWSE-NAME Br_Adressen &Scoped-define SELF-NAME Br_Adressen &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Adressen gAdressauswahl ON END-ERROR OF Br_Adressen IN FRAME gAdressauswahl DO: RUN INITFELDER. APPLY 'ENTRY' TO F_Suchbe IN FRAME {&FRAME-NAME}. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Adressen gAdressauswahl ON RETURN OF Br_Adressen IN FRAME gAdressauswahl DO: DEF VAR cString AS CHAR NO-UNDO. DO WITH FRAME {&FRAME-NAME}: IF NUM-RESULTS('{&BROWSE-NAME}') = ? THEN RETURN NO-APPLY. IF NUM-RESULTS('{&BROWSE-NAME}') = 0 THEN RETURN NO-APPLY. IF {&BROWSE-NAME}:NUM-SELECTED-ROWS = 0 THEN RETURN NO-APPLY. {&BROWSE-NAME}:FETCH-SELECTED-ROW(1). cString = S_Adressen:LIST-ITEM-PAIRS. IF cString = ? THEN cString = ''. IF LOOKUP(STRING(Adresse.Knr,'999999'), cString, ';') > 0 THEN RETURN NO-APPLY. IF cString <> '' THEN cString = cString + ';'. cString = cString + Adresse.Anzeig_Br + ';' + STRING(Adresse.Knr,'999999'). S_Adressen:LIST-ITEM-PAIRS = cString. S_Adressen:SCREEN-VALUE = STRING(Adresse.Knr,'999999'). END. RUN INITFELDER. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Adresse.Knr &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Adresse.Knr Br_Adressen _BROWSE-COLUMN gAdressauswahl ON END-ERROR OF Adresse.Knr IN BROWSE Br_Adressen /* Nummer */ DO: RUN INITFELDER. APPLY 'ENTRY' TO F_Suchbe IN FRAME {&FRAME-NAME}. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Btn_OK &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_OK gAdressauswahl ON CHOOSE OF Btn_OK IN FRAME gAdressauswahl /* OK */ DO: DEF VAR cString AS CHAR NO-UNDO. DEF VAR i AS INT NO-UNDO. DEF VAR j AS INT NO-UNDO. DO i = 1 TO S_Adressen:NUM-ITEMS: j = i * 2. IF cString <> '' THEN cString = cString + ','. cString = cString + STRING(INTEGER(ENTRY(j, S_Adressen:LIST-ITEM-PAIRS, ';'))). END. ipAdressen:SCREEN-VALUE = cString. RUN ENDE. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME F_Firma &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Firma gAdressauswahl ON END-ERROR OF F_Firma IN FRAME gAdressauswahl /* Firma */ DO: RUN INITFELDER. APPLY 'ENTRY' TO F_Suchbe IN FRAME {&FRAME-NAME}. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Firma gAdressauswahl ON LEAVE OF F_Firma IN FRAME gAdressauswahl /* Firma */ DO: VSuch3 = SELF:SCREEN-VALUE. IF VSuch3 <> '' THEN DO WITH FRAME {&FRAME-NAME}: RUN OPENQUERY. IF NOT LASTKEY = KEYCODE('RETURN') THEN RETURN. IF AnzVorhanden = 0 THEN RETURN. IF AnzVorhanden > 1 THEN DO: APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. APPLY 'RETURN' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Firma gAdressauswahl ON VALUE-CHANGED OF F_Firma IN FRAME gAdressauswahl /* Firma */ DO: VSuch3 = SELF:SCREEN-VALUE. IF VSuch3 <> '' THEN RUN OPENQUERY. APPLY 'END' TO SELF. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME F_Knr &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Knr gAdressauswahl ON LEAVE OF F_Knr IN FRAME gAdressauswahl /* Kundennummer */ DO: VSuch1 = SELF:SCREEN-VALUE. VSuch1 = TRIM(STRING(INTEGER(VSuch1),'zzzzzz')). IF VSuch1 <> '' THEN DO WITH FRAME {&FRAME-NAME}: RUN OPENQUERY. IF NOT LASTKEY = KEYCODE('RETURN') THEN RETURN. IF AnzVorhanden = 0 THEN RETURN. IF AnzVorhanden > 1 THEN DO: APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. APPLY 'RETURN' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME F_Lkz &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Lkz gAdressauswahl ON END-ERROR OF F_Lkz IN FRAME gAdressauswahl /* Land/Plz/Ort */ DO: RUN INITFELDER. APPLY 'ENTRY' TO F_Suchbe IN FRAME {&FRAME-NAME}. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME F_Name &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Name gAdressauswahl ON END-ERROR OF F_Name IN FRAME gAdressauswahl /* Name */ DO: RUN INITFELDER. APPLY 'ENTRY' TO F_Suchbe IN FRAME {&FRAME-NAME}. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Name gAdressauswahl ON LEAVE OF F_Name IN FRAME gAdressauswahl /* Name */ DO: VSuch4 = SELF:SCREEN-VALUE. IF VSuch4 <> '' THEN DO WITH FRAME {&FRAME-NAME}: RUN OPENQUERY. IF NOT LASTKEY = KEYCODE('RETURN') THEN RETURN. IF AnzVorhanden = 0 THEN RETURN. IF AnzVorhanden > 1 THEN DO: APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. APPLY 'RETURN' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Name gAdressauswahl ON VALUE-CHANGED OF F_Name IN FRAME gAdressauswahl /* Name */ DO: VSuch4 = SELF:SCREEN-VALUE. IF VSuch4 <> '' THEN RUN OPENQUERY. APPLY 'END' TO SELF. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME F_Ort &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Ort gAdressauswahl ON END-ERROR OF F_Ort IN FRAME gAdressauswahl DO: RUN INITFELDER. APPLY 'ENTRY' TO F_Suchbe IN FRAME {&FRAME-NAME}. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Ort gAdressauswahl ON LEAVE OF F_Ort IN FRAME gAdressauswahl DO: VSuch7 = SELF:SCREEN-VALUE. IF VSuch7 <> '' THEN DO WITH FRAME {&FRAME-NAME}: RUN OPENQUERY. IF NOT LASTKEY = KEYCODE('RETURN') THEN RETURN. IF AnzVorhanden = 0 THEN RETURN. IF AnzVorhanden > 1 THEN DO: APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. APPLY 'RETURN' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Ort gAdressauswahl ON VALUE-CHANGED OF F_Ort IN FRAME gAdressauswahl DO: VSuch7 = SELF:SCREEN-VALUE. IF VSuch7 <> '' THEN RUN OPENQUERY. APPLY 'END' TO SELF. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME F_Plz &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Plz gAdressauswahl ON END-ERROR OF F_Plz IN FRAME gAdressauswahl DO: RUN INITFELDER. APPLY 'ENTRY' TO F_Suchbe IN FRAME {&FRAME-NAME}. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Plz gAdressauswahl ON LEAVE OF F_Plz IN FRAME gAdressauswahl DO: VSuch6 = SELF:SCREEN-VALUE. IF VSuch6 <> '' THEN DO WITH FRAME {&FRAME-NAME}: RUN OPENQUERY. IF NOT LASTKEY = KEYCODE('RETURN') THEN RETURN. IF AnzVorhanden = 0 THEN RETURN. IF AnzVorhanden > 1 THEN DO: APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. APPLY 'RETURN' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Plz gAdressauswahl ON VALUE-CHANGED OF F_Plz IN FRAME gAdressauswahl DO: VSuch6 = SELF:SCREEN-VALUE. IF VSuch6 <> '' THEN RUN OPENQUERY. APPLY 'END' TO SELF. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME F_Strasse &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Strasse gAdressauswahl ON END-ERROR OF F_Strasse IN FRAME gAdressauswahl /* Strasse */ DO: RUN INITFELDER. APPLY 'ENTRY' TO F_Suchbe IN FRAME {&FRAME-NAME}. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Strasse gAdressauswahl ON LEAVE OF F_Strasse IN FRAME gAdressauswahl /* Strasse */ DO: VSuch5 = SELF:SCREEN-VALUE. IF VSuch5 <> '' THEN DO WITH FRAME {&FRAME-NAME}: RUN OPENQUERY. IF NOT LASTKEY = KEYCODE('RETURN') THEN RETURN. IF AnzVorhanden = 0 THEN RETURN. IF AnzVorhanden > 1 THEN DO: APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. APPLY 'RETURN' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Strasse gAdressauswahl ON VALUE-CHANGED OF F_Strasse IN FRAME gAdressauswahl /* Strasse */ DO: VSuch5 = SELF:SCREEN-VALUE. IF VSuch5 <> '' THEN RUN OPENQUERY. APPLY 'END' TO SELF. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME F_Suchbe &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Suchbe gAdressauswahl ON LEAVE OF F_Suchbe IN FRAME gAdressauswahl /* Suchbegriff */ DO: VSuch2 = SELF:SCREEN-VALUE. IF VSuch2 <> '' THEN DO WITH FRAME {&FRAME-NAME}: RUN OPENQUERY. IF NOT LASTKEY = KEYCODE('RETURN') THEN RETURN. IF AnzVorhanden = 0 THEN RETURN. IF AnzVorhanden > 1 THEN DO: APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. APPLY 'RETURN' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Suchbe gAdressauswahl ON VALUE-CHANGED OF F_Suchbe IN FRAME gAdressauswahl /* Suchbegriff */ DO: VSuch2 = SELF:SCREEN-VALUE. IF VSuch2 <> '' THEN RUN OPENQUERY. APPLY 'END' TO SELF. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME S_Adressen &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL S_Adressen gAdressauswahl ON DELETE-CHARACTER OF S_Adressen IN FRAME gAdressauswahl DO: DEF VAR cString AS CHAR NO-UNDO. DEF VAR i AS INT NO-UNDO. IF SELF:NUM-ITEMS = 0 THEN RETURN NO-APPLY. SELF:DELETE(SELF:SCREEN-VALUE) NO-ERROR. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL S_Adressen gAdressauswahl ON END-ERROR OF S_Adressen IN FRAME gAdressauswahl DO: RUN INITFELDER. APPLY 'ENTRY' TO F_Suchbe IN FRAME {&FRAME-NAME}. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL S_Adressen gAdressauswahl ON LEFT-MOUSE-DBLCLICK OF S_Adressen IN FRAME gAdressauswahl DO: DEF VAR cString AS CHAR NO-UNDO. DEF VAR i AS INT NO-UNDO. IF SELF:NUM-ITEMS = 0 THEN RETURN NO-APPLY. SELF:DELETE(SELF:SCREEN-VALUE) NO-ERROR. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL S_Adressen gAdressauswahl ON RETURN OF S_Adressen IN FRAME gAdressauswahl DO: APPLY 'CHOOSE' TO Btn_OK IN FRAME {&FRAME-NAME}. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &UNDEFINE SELF-NAME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK gAdressauswahl /* *************************** Main Block *************************** */ MaxPage = 1. AktSeite = 1. AdFirma = DYNAMIC-FUNCTION('GETADMANDANT':U) NO-ERROR. Firma = DYNAMIC-FUNCTION('GETMANDANT':U) NO-ERROR. cAdressen = ipAdressen:SCREEN-VALUE. SESSION:DATA-ENTRY-RETURN = TRUE. /* TRIGGERS ------------------------------------------------------ */ ON 'CURSOR-DOWN':U OF F_Knr , F_Suchbe, F_Firma, F_Name, F_Strasse, F_Lkz , F_Plz , F_Ort IN FRAME {&FRAME-NAME} DO: APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}. RETURN NO-APPLY. END. /* ------------------------------------------------------------------ */ {src/adm2/dialogmn.i} /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME /* ********************** Internal Procedures *********************** */ &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects gAdressauswahl _ADM-CREATE-OBJECTS PROCEDURE adm-create-objects : /*------------------------------------------------------------------------------ Purpose: Create handles for all SmartObjects used in this procedure. After SmartObjects are initialized, then SmartLinks are added. Parameters: ------------------------------------------------------------------------------*/ END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE changePage gAdressauswahl PROCEDURE changePage : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ /* Code placed here will execute PRIOR to standard behavior. */ RUN SUPER. AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U). CASE AktSeite: WHEN 1 THEN DO: /* RUN addLink ( h_dyntoolbar , 'TableIO':U , h_v-auftr ). */ /* RUN addLink ( h_dyntoolbar , 'Navigation':U , h_d-auftr ). */ /* RUN ToolbarInit ( INPUT h_d-auftr ). */ RUN ENTRY_CURSOR. END. WHEN 2 THEN DO: RUN ENTRY_CURSOR. END. END CASE. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI gAdressauswahl _DEFAULT-DISABLE PROCEDURE disable_UI : /*------------------------------------------------------------------------------ Purpose: DISABLE the User Interface Parameters: Notes: Here we clean-up the user-interface by deleting dynamic widgets we have created and/or hide frames. This procedure is usually called when we are ready to "clean-up" after running. ------------------------------------------------------------------------------*/ /* Hide all frames. */ HIDE FRAME gAdressauswahl. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject gAdressauswahl PROCEDURE enableObject : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR hColumn AS HANDLE NO-UNDO. DEF VAR cBreite AS CHAR NO-UNDO. DEF VAR i AS INT NO-UNDO. DEF VAR Knr AS INT NO-UNDO. DEF VAR cString AS CHAR NO-UNDO. DO WITH FRAME {&FRAME-NAME}: hColumn = {&BROWSE-NAME}:FIRST-COLUMN IN FRAME {&FRAME-NAME}. DO WHILE VALID-HANDLE(hColumn): GET-KEY-VALUE SECTION 'AdressAuswahlBrowser' KEY hColumn:NAME VALUE cBreite. DO WHILE TRUE WITH FRAME {&FRAME-NAME}: IF cBreite = ? THEN LEAVE. IF cBreite = '' THEN LEAVE. IF DECIMAL(cBreite) < 2 THEN cBreite = '2'. hColumn:WIDTH = DECIMAL(cBreite). LEAVE. END. hColumn = hColumn:NEXT-COLUMN. END. cAdressen = REPLACE(cAdressen, ';', ','). cString = ''. DO i = 1 TO NUM-ENTRIES(cAdressen, ','): Knr = INTEGER(ENTRY(i, cAdressen, ',')). FIND Adresse USE-INDEX Adresse-k1 WHERE Adresse.Firma = AdFirma AND Adresse.Knr = Knr AND Adresse.Aktiv = TRUE NO-LOCK NO-ERROR. IF NOT AVAILABLE Adresse THEN DO: ENTRY(i, cAdressen, ',') = ''. NEXT. END. IF cString <> '' THEN cString = cString + ';'. cString = cString + Adresse.Anzeig_Br + ';' + STRING(Adresse.Knr,'999999'). END. S_Adressen:DELIMITER = ';'. S_Adressen:LIST-ITEM-PAIRS = cString NO-ERROR. ipAdressen:SCREEN-VALUE = cAdressen. END. RUN SUPER. RUN FENSTER_TITEL ( INPUT FRAME {&FRAME-NAME}:HANDLE ) NO-ERROR. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI gAdressauswahl _DEFAULT-ENABLE PROCEDURE enable_UI : /*------------------------------------------------------------------------------ Purpose: ENABLE the User Interface Parameters: Notes: Here we display/view/enable the widgets in the user-interface. In addition, OPEN all queries associated with each FRAME and BROWSE. These statements here are based on the "Other Settings" section of the widget Property Sheets. ------------------------------------------------------------------------------*/ DISPLAY F_Suchbe F_Knr F_Firma F_Name F_Strasse F_Lkz F_Plz F_Ort S_Adressen WITH FRAME gAdressauswahl. ENABLE F_Suchbe F_Knr F_Firma F_Name F_Strasse F_Lkz F_Plz F_Ort Br_Adressen S_Adressen Btn_OK RECT-39 WITH FRAME gAdressauswahl. VIEW FRAME gAdressauswahl. {&OPEN-BROWSERS-IN-QUERY-gAdressauswahl} END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENDE gAdressauswahl PROCEDURE ENDE : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U) NO-ERROR. IF AktSeite > 1 THEN DO: RUN selectPage ( INPUT 1 ). RETURN NO-APPLY. END. DEF VAR hColumn AS HANDLE NO-UNDO. DO WITH FRAME {&FRAME-NAME}: hColumn = {&BROWSE-NAME}:FIRST-COLUMN. DO WHILE VALID-HANDLE(hColumn): PUT-KEY-VALUE SECTION 'AdressAuswahlBrowser' KEY hColumn:NAME VALUE STRING(hColumn:WIDTH). hColumn = hColumn:NEXT-COLUMN. END. END. RUN ENDE_PROGRAMM ( INPUT THIS-PROCEDURE:FILE-NAME ). APPLY 'GO' TO FRAME {&FRAME-NAME}. RETURN NO-APPLY. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE exitObject gAdressauswahl PROCEDURE exitObject : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ RUN ENDE. RETURN NO-APPLY. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE INITFELDER gAdressauswahl PROCEDURE INITFELDER : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ VSuch1 = ''. VSuch2 = ''. VSuch3 = ''. VSuch4 = ''. VSuch5 = ''. VSuch6 = ''. VSuch7 = ''. F_Knr = 0. F_Suchbe = ''. F_Firma = ''. F_Name = ''. F_Strasse = ''. F_Plz = ''. F_Ort = ''. DISPLAY {&list-6} WITH FRAME {&FRAME-NAME}. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE OPENQUERY gAdressauswahl PROCEDURE OPENQUERY : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR ix AS INT NO-UNDO. DEF VAR cKnr AS CHAR NO-UNDO. DEF VAR AnzKnr AS INT NO-UNDO. DEF VAR ja AS LOG NO-UNDO. DEF VAR jaja AS LOG NO-UNDO. VSort = 1. IF VSuch7 <> '' AND INDEX(VSuch7, '*') = 0 THEN VSort = 5. IF VSuch6 <> '' AND INDEX(VSuch6, '*') = 0 THEN VSort = 6. IF VSuch5 <> '' AND INDEX(VSuch5, '*') = 0 THEN VSort = 7. IF VSuch4 <> '' AND INDEX(VSuch4, '*') = 0 THEN VSort = 4. IF VSuch3 <> '' AND INDEX(VSuch3, '*') = 0 THEN VSort = 3. IF VSuch2 <> '' AND INDEX(VSuch2, '*') = 0 THEN VSort = 2. IF VSuch1 <> '' AND INDEX(VSuch1, '*') = 0 THEN VSort = 1. CASE VSort: WHEN 1 THEN DO: OPEN QUERY {&BROWSE-NAME} FOR EACH Adresse USE-INDEX Adresse-k1 WHERE Adresse.Firma = AdFirma AND Adresse.Aktiv = TRUE AND Adresse.Knr >= INTEGER(VSuch1) AND (IF INDEX(VSuch2, '*') = 0 THEN Adresse.Suchbe BEGINS VSuch2 ELSE Adresse.Suchbe MATCHES VSuch2) AND (IF INDEX(VSuch3, '*') = 0 THEN Adresse.Firma BEGINS VSuch3 ELSE Adresse.Firma MATCHES VSuch3) AND (IF INDEX(VSuch4, '*') = 0 THEN Adresse.NAME BEGINS VSuch4 ELSE Adresse.NAME MATCHES VSuch4) AND (IF INDEX(VSuch5, '*') = 0 THEN Adresse.Strass BEGINS VSuch5 ELSE Adresse.Strass MATCHES VSuch5) AND (IF INDEX(VSuch6, '*') = 0 THEN Adresse.Plz BEGINS VSuch6 ELSE Adresse.Plz MATCHES VSuch6) AND (IF INDEX(VSuch7, '*') = 0 THEN Adresse.Ort BEGINS VSuch7 ELSE Adresse.Ort MATCHES VSuch7) NO-LOCK. END. WHEN 2 THEN DO: OPEN QUERY {&BROWSE-NAME} FOR EACH Adresse USE-INDEX Adresse-k2 WHERE Adresse.Firma = AdFirma AND Adresse.Aktiv = TRUE AND Adresse.Suchbe BEGINS VSuch2 AND (IF INDEX(VSuch3, '*') = 0 THEN Adresse.Firma BEGINS VSuch3 ELSE Adresse.Firma MATCHES VSuch3) AND (IF INDEX(VSuch4, '*') = 0 THEN Adresse.NAME BEGINS VSuch4 ELSE Adresse.NAME MATCHES VSuch4) AND (IF INDEX(VSuch5, '*') = 0 THEN Adresse.Strass BEGINS VSuch5 ELSE Adresse.Strass MATCHES VSuch5) AND (IF INDEX(VSuch6, '*') = 0 THEN Adresse.Plz BEGINS VSuch6 ELSE Adresse.Plz MATCHES VSuch6) AND (IF INDEX(VSuch7, '*') = 0 THEN Adresse.Ort BEGINS VSuch7 ELSE Adresse.Ort MATCHES VSuch7) NO-LOCK. END. WHEN 3 THEN DO: OPEN QUERY {&BROWSE-NAME} FOR EACH Adresse USE-INDEX Adresse-k3 WHERE Adresse.Firma = AdFirma AND Adresse.Aktiv = TRUE AND Adresse.Firma1 BEGINS VSuch3 AND (IF INDEX(VSuch2, '*') = 0 THEN Adresse.Suchbe BEGINS VSuch2 ELSE Adresse.Suchbe MATCHES VSuch2) AND (IF INDEX(VSuch4, '*') = 0 THEN Adresse.NAME BEGINS VSuch4 ELSE Adresse.NAME MATCHES VSuch4) AND (IF INDEX(VSuch5, '*') = 0 THEN Adresse.Strass BEGINS VSuch5 ELSE Adresse.Strass MATCHES VSuch5) AND (IF INDEX(VSuch6, '*') = 0 THEN Adresse.Plz BEGINS VSuch6 ELSE Adresse.Plz MATCHES VSuch6) AND (IF INDEX(VSuch7, '*') = 0 THEN Adresse.Ort BEGINS VSuch7 ELSE Adresse.Ort MATCHES VSuch7) NO-LOCK. END. WHEN 4 THEN DO: OPEN QUERY {&BROWSE-NAME} FOR EACH Adresse USE-INDEX Adresse-k4 WHERE Adresse.Firma = AdFirma AND Adresse.Aktiv = TRUE AND Adresse.NAME BEGINS VSuch4 AND (IF INDEX(VSuch2, '*') = 0 THEN Adresse.Suchbe BEGINS VSuch2 ELSE Adresse.Suchbe MATCHES VSuch2) AND (IF INDEX(VSuch3, '*') = 0 THEN Adresse.Firma BEGINS VSuch3 ELSE Adresse.Firma MATCHES VSuch3) AND (IF INDEX(VSuch5, '*') = 0 THEN Adresse.Strass BEGINS VSuch5 ELSE Adresse.Strass MATCHES VSuch5) AND (IF INDEX(VSuch6, '*') = 0 THEN Adresse.Plz BEGINS VSuch6 ELSE Adresse.Plz MATCHES VSuch6) AND (IF INDEX(VSuch7, '*') = 0 THEN Adresse.Ort BEGINS VSuch7 ELSE Adresse.Ort MATCHES VSuch7) NO-LOCK. END. WHEN 5 THEN DO: OPEN QUERY {&BROWSE-NAME} FOR EACH Adresse USE-INDEX Adresse-k5 WHERE Adresse.Firma = AdFirma AND Adresse.Aktiv = TRUE AND Adresse.Ort BEGINS VSuch7 AND (IF INDEX(VSuch2, '*') = 0 THEN Adresse.Suchbe BEGINS VSuch2 ELSE Adresse.Suchbe MATCHES VSuch2) AND (IF INDEX(VSuch3, '*') = 0 THEN Adresse.Firma BEGINS VSuch3 ELSE Adresse.Firma MATCHES VSuch3) AND (IF INDEX(VSuch4, '*') = 0 THEN Adresse.NAME BEGINS VSuch4 ELSE Adresse.NAME MATCHES VSuch4) AND (IF INDEX(VSuch5, '*') = 0 THEN Adresse.Strass BEGINS VSuch5 ELSE Adresse.Strass MATCHES VSuch5) AND (IF INDEX(VSuch6, '*') = 0 THEN Adresse.Plz BEGINS VSuch6 ELSE Adresse.Plz MATCHES VSuch6) NO-LOCK. END. WHEN 6 THEN DO: OPEN QUERY {&BROWSE-NAME} FOR EACH Adresse USE-INDEX Adresse-k6 WHERE Adresse.Firma = AdFirma AND Adresse.Aktiv = TRUE AND Adresse.Plz BEGINS VSuch6 AND (IF INDEX(VSuch2, '*') = 0 THEN Adresse.Suchbe BEGINS VSuch2 ELSE Adresse.Suchbe MATCHES VSuch2) AND (IF INDEX(VSuch3, '*') = 0 THEN Adresse.Firma BEGINS VSuch3 ELSE Adresse.Firma MATCHES VSuch3) AND (IF INDEX(VSuch4, '*') = 0 THEN Adresse.NAME BEGINS VSuch4 ELSE Adresse.NAME MATCHES VSuch4) AND (IF INDEX(VSuch5, '*') = 0 THEN Adresse.Strass BEGINS VSuch5 ELSE Adresse.Strass MATCHES VSuch5) AND (IF INDEX(VSuch7, '*') = 0 THEN Adresse.Ort BEGINS VSuch7 ELSE Adresse.Ort MATCHES VSuch7) NO-LOCK. END. WHEN 7 THEN DO: OPEN QUERY {&BROWSE-NAME} FOR EACH Adresse USE-INDEX Adresse-k7 WHERE Adresse.Firma = AdFirma AND Adresse.Aktiv = TRUE AND Adresse.Strasse BEGINS VSuch5 AND (IF INDEX(VSuch2, '*') = 0 THEN Adresse.Suchbe BEGINS VSuch2 ELSE Adresse.Suchbe MATCHES VSuch2) AND (IF INDEX(VSuch3, '*') = 0 THEN Adresse.Firma BEGINS VSuch3 ELSE Adresse.Firma MATCHES VSuch3) AND (IF INDEX(VSuch4, '*') = 0 THEN Adresse.NAME BEGINS VSuch4 ELSE Adresse.NAME MATCHES VSuch4) AND (IF INDEX(VSuch6, '*') = 0 THEN Adresse.Plz BEGINS VSuch6 ELSE Adresse.Plz MATCHES VSuch6) AND (IF INDEX(VSuch7, '*') = 0 THEN Adresse.Ort BEGINS VSuch7 ELSE Adresse.Ort MATCHES VSuch7) NO-LOCK. END. END CASE. AnzVorhanden = NUM-RESULTS('{&BROWSE-NAME}'). END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE selectPage gAdressauswahl PROCEDURE selectPage : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEF INPUT PARAMETER piPageNum AS INT NO-UNDO. DEF VAR FMutFlag AS LOG NO-UNDO. DEF VAR MutProg AS CHAR NO-UNDO. FMutFlag = DYNAMIC-FUNCTION('getMutflagAlt':U) NO-ERROR. DO WHILE TRUE: IF NOT FMutFlag THEN LEAVE. MutProg = DYNAMIC-FUNCTION('GETMUTPROG':U). IF MutProg <> THIS-PROCEDURE:FILE-NAME THEN LEAVE. RETURN NO-APPLY. END. CASE piPageNum: END CASE. AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U). CASE AktSeite: WHEN 1 THEN DO: /* RUN removeLink ( h_dyntoolbar , 'TableIO':U , h_v-auftr ). */ /* RUN removeLink ( h_dyntoolbar , 'Navigation':U , h_d-auftr ). */ END. END CASE. RUN SUPER( INPUT piPageNum). END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME