&ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2 &ANALYZE-RESUME /* Connected Databases anadat PROGRESS */ &Scoped-define WINDOW-NAME CURRENT-WINDOW &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS bTableWin /*------------------------------------------------------------------------ File: adm2\src\browser.w Description: SmartDataBrowser Object Input Parameters: Output Parameters: ------------------------------------------------------------------------*/ /* 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 --- */ /* Local Variable Definitions --- */ DEF VAR Farbe AS INT NO-UNDO. DEF VAR BGNormal AS INT NO-UNDO. DEF VAR BGFreigabe AS INT NO-UNDO. DEF VAR BGDelete AS INT NO-UNDO. DEF VAR RetValue AS CHAR NO-UNDO. DEF VAR Firma AS CHAR NO-UNDO. DEF VAR AdFirma AS CHAR NO-UNDO. DEF TEMP-TABLE tExcelListe FIELD Firma AS CHAR FIELD Knr AS INT FIELD Firma1 AS CHAR FIELD Firma2 AS CHAR FIELD Name AS CHAR FIELD Vorname AS CHAR FIELD Zusatz1 AS CHAR FIELD Zusatz2 AS CHAR FIELD Strasse AS CHAR FIELD Postfach AS CHAR FIELD Lkz AS CHAR FIELD Plz AS CHAR FIELD Ort AS CHAR FIELD BriefAnr AS CHAR FIELD Anzeig_br AS CHAR FIELD Bem AS CHAR FIELD AdrArt AS CHAR FIELD Funktion AS CHAR FIELD Aktiv AS LOG FIELD Anrcd AS INT FIELD AnschrFix AS LOG FIELD Homepage AS CHAR FIELD Mail AS CHAR FIELD Natel AS CHAR FIELD Sprcd AS INT FIELD Suchbe AS CHAR FIELD Tel-1 AS CHAR FIELD Tel-2 AS CHAR FIELD Tel-3 AS CHAR FIELD Tel-4 AS CHAR FIELD Titel AS CHAR FIELD Cd01 AS CHAR FIELD Cd02 AS CHAR FIELD Cd03 AS CHAR FIELD Cd04 AS CHAR FIELD Cd05 AS CHAR FIELD Cd06 AS CHAR FIELD Cd07 AS CHAR FIELD Cd08 AS CHAR FIELD Cd09 AS CHAR FIELD Cd10 AS CHAR FIELD Cd11 AS CHAR FIELD Cd12 AS CHAR FIELD Cd13 AS CHAR FIELD Cd14 AS CHAR FIELD Cd15 AS CHAR FIELD ErfDat AS DATE FORMAT "99.99.9999" FIELD ErfSb AS CHAR FIELD MutDat AS DATE FORMAT "99.99.9999" FIELD MutSb AS CHAR FIELD ABC_Grp AS INT FIELD Abh_Rab_Art AS INT FIELD Abh_Rab_Wert AS DEC DECIMALS 4 FIELD Ablad_Vor AS INT FIELD Ablad_Vor_Text AS CHAR FIELD AKonto AS DEC FIELD Auf_Rab_Art AS INT FIELD Auf_Rab_Wert AS DEC DECIMALS 4 FIELD Auf_Text AS CHAR FIELD Avis AS INT FIELD Bar_Text AS CHAR FIELD Bemerk AS CHAR FIELD BESR_Art AS INT FIELD Bier_Cd AS INT FIELD Bonus_Grp AS INT FIELD esAktiv AS LOG FIELD esBenutzer AS CHAR FIELD esMail AS CHAR FIELD esPasswort AS CHAR FIELD Fak_Art AS INT FIELD Fak_FTnr AS INT FIELD Fak_KTnr AS INT FIELD Filiale AS INT FIELD FRW AS CHA FIELD Geb_Rg AS LOG FIELD KnrFak AS INT FIELD KnrLie AS INT FIELD Kond AS INT FIELD Konto AS CHAR FIELD Kred_Lim AS INT FIELD Kred_Lim_Vers AS INT FIELD Ku_Grp AS INT FIELD Lager AS INT FIELD LetztVK AS DATE FORMAT "99.99.9999" FIELD Lief_Art AS INT FIELD Lief_Bed AS INT FIELD Mahn AS INT FIELD MWSt AS INT FIELD MWST_Nr AS CHAR FIELD Passant AS LOG FIELD Preis_Grp AS INT FIELD Rab_Grp AS INT FIELD Region AS INT FIELD Saldo AS DEC FIELD Saldo_FRW AS DEC FIELD Skonto AS DEC FIELD Subverband_Grp AS INT FIELD Tour_Nr1 AS INT FIELD Tour_Nr2 AS CHAR FIELD Verband_Grp AS INT FIELD Verband_Nr AS CHAR FIELD Vertr AS INT FIELD Wirt_So AS INT FIELD Wirt_So_Text AS CHAR FIELD Zei_Rab_Art AS INT FIELD Zei_Rab_Wert AS DEC DECIMALS 4 FIELD Zuschl_Art AS INT FIELD Zuschl_Betr AS DEC DECIMALS 4 FIELD Zuschl_Verr AS DEC DECIMALS 4 FIELD Zuschl_Wert AS DEC DECIMALS 4 . /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK /* ******************** Preprocessor Definitions ******************** */ &Scoped-define PROCEDURE-TYPE SmartDataBrowser &Scoped-define DB-AWARE no &Scoped-define ADM-SUPPORTED-LINKS TableIO-Target,Data-Target,Update-Source /* Include file with RowObject temp-table definition */ &Scoped-define DATA-FIELD-DEFS "d-adresse.i" /* Name of designated FRAME-NAME and/or first browse and/or first query */ &Scoped-define FRAME-NAME F-Main &Scoped-define BROWSE-NAME br_table /* Internal Tables (found by Frame, Query & Browse Queries) */ &Scoped-define INTERNAL-TABLES rowObject /* Definitions for BROWSE br_table */ &Scoped-define FIELDS-IN-QUERY-br_table rowObject.Knr rowObject.Suchbe ~ rowObject.Anzeig_br rowObject.Firma1 rowObject.Name rowObject.Strasse ~ rowObject.Lkz rowObject.Plz rowObject.Ort rowObject.Aktiv &Scoped-define ENABLED-FIELDS-IN-QUERY-br_table &Scoped-define QUERY-STRING-br_table FOR EACH rowObject NO-LOCK INDEXED-REPOSITION &Scoped-define OPEN-QUERY-br_table OPEN QUERY br_table FOR EACH rowObject NO-LOCK INDEXED-REPOSITION. &Scoped-define TABLES-IN-QUERY-br_table rowObject &Scoped-define FIRST-TABLE-IN-QUERY-br_table rowObject /* Definitions for FRAME F-Main */ /* Standard List Definitions */ &Scoped-Define ENABLED-OBJECTS RECT-3 br_table /* Custom List Definitions */ /* List-1,List-2,List-3,List-4,List-5,List-6 */ /* _UIB-PREPROCESSOR-BLOCK-END */ &ANALYZE-RESUME /* *********************** Control Definitions ********************** */ /* Menu Definitions */ DEFINE MENU POPUP-MENU-br_table MENU-ITEM X_GrosseListe LABEL "Grosse Excel-Liste (inkl. Debitor)". /* Definitions of the field level widgets */ DEFINE RECTANGLE RECT-3 EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL SIZE 134 BY 8.57. /* Query definitions */ &ANALYZE-SUSPEND DEFINE TEMP-TABLE RowObject NO-UNDO {{&DATA-FIELD-DEFS}} {src/adm2/robjflds.i}. DEFINE QUERY br_table FOR rowObject SCROLLING. &ANALYZE-RESUME /* Browse definitions */ DEFINE BROWSE br_table &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS br_table bTableWin _STRUCTURED QUERY br_table NO-LOCK DISPLAY rowObject.Knr FORMAT "999999":U rowObject.Suchbe FORMAT "X(20)":U WIDTH 12.6 rowObject.Anzeig_br COLUMN-LABEL "Adresse" FORMAT "x(75)":U rowObject.Firma1 COLUMN-LABEL "Firma" FORMAT "x(35)":U rowObject.Name FORMAT "x(35)":U rowObject.Strasse FORMAT "X(30)":U rowObject.Lkz FORMAT "X(3)":U WIDTH 4 rowObject.Plz FORMAT "X(8)":U rowObject.Ort FORMAT "X(30)":U rowObject.Aktiv FORMAT "J/N":U /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME WITH NO-ASSIGN NO-AUTO-VALIDATE NO-ROW-MARKERS SEPARATORS SIZE 132 BY 8.1 BGCOLOR 15 . /* ************************ Frame Definitions *********************** */ DEFINE FRAME F-Main br_table AT ROW 1.48 COL 3 RECT-3 AT ROW 1.24 COL 2 WIDGET-ID 2 WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY SIDE-LABELS NO-UNDERLINE THREE-D AT COL 1 ROW 1 SCROLLABLE . /* *********************** Procedure Settings ************************ */ &ANALYZE-SUSPEND _PROCEDURE-SETTINGS /* Settings for THIS-PROCEDURE Type: SmartDataBrowser Data Source: "d-adresse.w" Allow: Basic,Browse Frames: 1 Add Fields to: Neither Other Settings: PERSISTENT-ONLY COMPILE */ /* This procedure should always be RUN PERSISTENT. Report the error, */ /* then cleanup and return. */ IF NOT THIS-PROCEDURE:PERSISTENT THEN DO: MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U VIEW-AS ALERT-BOX ERROR BUTTONS OK. RETURN. END. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS /* ************************* Create Window ************************** */ &ANALYZE-SUSPEND _CREATE-WINDOW /* DESIGN Window definition (used by the UIB) CREATE WINDOW bTableWin ASSIGN HEIGHT = 9.05 WIDTH = 136. /* END WINDOW DEFINITION */ */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB bTableWin /* ************************* Included-Libraries *********************** */ {src/adm2/browser.i} /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME /* *********** Runtime Attributes and AppBuilder Settings *********** */ &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES /* SETTINGS FOR WINDOW bTableWin NOT-VISIBLE,,RUN-PERSISTENT */ /* SETTINGS FOR FRAME F-Main NOT-VISIBLE FRAME-NAME Size-to-Fit */ /* BROWSE-TAB br_table RECT-3 F-Main */ ASSIGN FRAME F-Main:SCROLLABLE = FALSE FRAME F-Main:HIDDEN = TRUE. ASSIGN br_table:POPUP-MENU IN FRAME F-Main = MENU POPUP-MENU-br_table:HANDLE br_table:COLUMN-RESIZABLE IN FRAME F-Main = TRUE br_table:COLUMN-MOVABLE IN FRAME F-Main = TRUE. ASSIGN rowObject.Aktiv:VISIBLE IN BROWSE br_table = FALSE. /* _RUN-TIME-ATTRIBUTES-END */ &ANALYZE-RESUME /* Setting information for Queries and Browse Widgets fields */ &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE br_table /* Query rebuild information for BROWSE br_table _TblList = "rowObject" _Options = "NO-LOCK INDEXED-REPOSITION" _FldNameList[1] > _.rowObject.Knr "rowObject.Knr" ? ? "integer" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[2] > _.rowObject.Suchbe "rowObject.Suchbe" ? ? "character" ? ? ? ? ? ? no "?" no no "12.6" yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[3] > _.rowObject.Anzeig_br "rowObject.Anzeig_br" "Adresse" ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[4] > _.rowObject.Firma1 "rowObject.Firma1" "Firma" ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[5] > _.rowObject.Name "rowObject.Name" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[6] > _.rowObject.Strasse "rowObject.Strasse" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[7] > _.rowObject.Lkz "rowObject.Lkz" ? ? "character" ? ? ? ? ? ? no "?" no no "4" yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[8] > _.rowObject.Plz "rowObject.Plz" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[9] > _.rowObject.Ort "rowObject.Ort" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[10] > _.rowObject.Aktiv "rowObject.Aktiv" ? ? "logical" ? ? ? ? ? ? no ? no no ? no no no "U" "" "" "" "" "" "" 0 no 0 no no _Query is NOT OPENED */ /* BROWSE br_table */ &ANALYZE-RESUME &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main /* Query rebuild information for FRAME F-Main _Options = "NO-LOCK" _Query is NOT OPENED */ /* FRAME F-Main */ &ANALYZE-RESUME /* ************************ Control Triggers ************************ */ &Scoped-define BROWSE-NAME br_table &Scoped-define SELF-NAME br_table &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON CTRL-END OF br_table IN FRAME F-Main DO: APPLY "END":U TO BROWSE br_table. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON CTRL-HOME OF br_table IN FRAME F-Main DO: APPLY "HOME":U TO BROWSE br_table. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON END OF br_table IN FRAME F-Main DO: {src/adm2/brsend.i} END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON ENTRY OF br_table IN FRAME F-Main DO: IF {&BROWSE-NAME}:FOCUSED-ROW-SELECTED = FALSE THEN {&BROWSE-NAME}:SELECT-FOCUSED-ROW() NO-ERROR. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON HOME OF br_table IN FRAME F-Main DO: {src/adm2/brshome.i} END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON OFF-END OF br_table IN FRAME F-Main DO: {src/adm2/brsoffnd.i} END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON OFF-HOME OF br_table IN FRAME F-Main DO: {src/adm2/brsoffhm.i} END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON PAGE-DOWN OF br_table IN FRAME F-Main DO: RETURN. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON PAGE-UP OF br_table IN FRAME F-Main DO: RETURN. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON RETURN OF br_table IN FRAME F-Main DO: APPLY 'U2'. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON ROW-DISPLAY OF br_table IN FRAME F-Main DO: IF rowObject.Aktiv = FALSE THEN Farbe = BGDelete. ELSE IF NOT rowObject.lFreigabe THEN Farbe = BGFreigabe. ELSE Farbe = BGNormal. rowObject.Knr :BGCOLOR IN BROWSE {&BROWSE-NAME} = Farbe. rowObject.Suchbe :BGCOLOR = Farbe. rowObject.Anzeig_Br :BGCOLOR = Farbe. rowObject.Firma1 :BGCOLOR = Farbe. rowObject.NAME :BGCOLOR = Farbe. rowObject.Strasse :BGCOLOR = Farbe. rowObject.Lkz :BGCOLOR = Farbe. rowObject.Plz :BGCOLOR = Farbe. rowObject.Ort :BGCOLOR = Farbe. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON ROW-ENTRY OF br_table IN FRAME F-Main DO: {src/adm2/brsentry.i} END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON ROW-LEAVE OF br_table IN FRAME F-Main DO: {src/adm2/brsleave.i} END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON SCROLL-NOTIFY OF br_table IN FRAME F-Main DO: {src/adm2/brsscrol.i} END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin ON VALUE-CHANGED OF br_table IN FRAME F-Main DO: {src/adm2/brschnge.i} END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME X_GrosseListe &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL X_GrosseListe bTableWin ON CHOOSE OF MENU-ITEM X_GrosseListe /* Grosse Excel-Liste (inkl. Debitor) */ DO: RUN GROSSELISTE. APPLY 'U1'. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &UNDEFINE SELF-NAME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK bTableWin /* *************************** Main Block *************************** */ Firma = DYNAMIC-FUNCTION('getMandant':U) NO-ERROR. AdFirma = DYNAMIC-FUNCTION('getAdMandant':U) NO-ERROR. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN RUN initializeObject. &ENDIF PROCEDURE ShellExecuteA EXTERNAL "shell32.dll": DEF INPUT PARAMETER hwnd AS LONG. /* Handle to parent window */ DEF INPUT PARAMETER lpOperation AS CHAR. /* Operation to perform: open, print */ DEF INPUT PARAMETER lpFile AS CHAR. /* Document or executable name */ DEF INPUT PARAMETER lpParameters AS CHAR. /* Command line parameters to executable in lpFile */ DEF INPUT PARAMETER lpDirectory AS CHAR. /* Default directory */ DEF INPUT PARAMETER nShowCmd AS LONG. /* whether shown when opened: 0 hidden, 1 normal, minimized 2, maximized 3, 0 if lpFile is a document */ DEF RETURN PARAMETER hInstance AS LONG. /* Less than or equal to 32 */ END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME /* ********************** Internal Procedures *********************** */ &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI bTableWin _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 F-Main. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject bTableWin PROCEDURE enableObject : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR hColumn AS HANDLE NO-UNDO. DEF VAR fAttrib AS CHAR NO-UNDO. DEF VAR i1 AS INT NO-UNDO. DEF VAR nColumn AS INT NO-UNDO. DEF VAR dBreite AS DEC NO-UNDO. DEF VAR cFelder AS CHAR NO-UNDO. DEF VAR Feld AS CHAR NO-UNDO. GET-KEY-VALUE SECTION 'AdressBrowser' KEY ? VALUE cFelder. IF cFelder = ? THEN cFelder = ''. DO WHILE TRUE WITH FRAME {&FRAME-NAME}: IF NUM-ENTRIES(cFelder, ';') = 0 THEN LEAVE. hColumn = {&BROWSE-NAME}:FIRST-COLUMN. i1 = 0. DO WHILE VALID-HANDLE(hColumn): i1 = i1 + 1. DO WHILE TRUE: IF LOOKUP(hColumn:NAME, cFelder, ',') = 0 THEN LEAVE. GET-KEY-VALUE SECTION 'AdressBrowser' KEY hColumn:NAME VALUE fAttrib. IF NUM-ENTRIES(fAttrib, ';') < 2 THEN LEAVE. nColumn = 0. dBreite = 0. nColumn = INTEGER(ENTRY(1,fAttrib, ';')). dBreite = DECIMAL(ENTRY(2,fAttrib, ';')). IF nColumn = ? THEN LEAVE. IF nColumn = 0 THEN LEAVE. IF dBreite = ? THEN LEAVE. IF dBreite = 0 THEN LEAVE. IF hColumn:WIDTH <> dBreite THEN hColumn:WIDTH = dBreite. IF i1 = nColumn THEN LEAVE. {&BROWSE-NAME}:MOVE-COLUMN(i1, nColumn). hColumn = {&BROWSE-NAME}:FIRST-COLUMN. i1 = 0. LEAVE. END. IF i1 > 0 THEN hColumn = hColumn:NEXT-COLUMN. END. LEAVE. END. GET-KEY-VALUE SECTION 'Grundeinstellungen' KEY 'BGGeloescht' VALUE RetValue. IF RetValue = ? THEN ASSIGN RetValue = ''. IF RetValue = '' THEN ASSIGN RetValue = '12'. BGDelete = INTEGER(RetValue). GET-KEY-VALUE SECTION 'Grundeinstellungen' KEY 'BGFreigabe' VALUE RetValue. IF RetValue = ? THEN ASSIGN RetValue = ''. IF RetValue = '' THEN ASSIGN RetValue = '14'. BGFreigabe = INTEGER(RetValue). BGNormal = 15. RUN SUPER. DEF VAR iDown AS INT NO-UNDO. DEF VAR Ja AS LOG NO-UNDO. DO WITH FRAME {&FRAME-NAME}: iDown = {&BROWSE-NAME}:DOWN / 2. Ja = {&BROWSE-NAME}:SET-REPOSITIONED-ROW(iDown, "CONDITIONAL"). END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRYBROWSE bTableWin PROCEDURE ENTRYBROWSE : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ APPLY 'ENTRY' TO {&BROWSE-NAME} IN FRAME {&FRAME-NAME}. RETURN NO-APPLY. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE GROSSELISTE bTableWin PROCEDURE GROSSELISTE : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR ii AS INT NO-UNDO. DEF VAR hBuffer AS HANDLE NO-UNDO. DEF VAR hAdresse AS HANDLE NO-UNDO. DEF VAR hDebst AS HANDLE NO-UNDO. DEF VAR hFeld AS HANDLE NO-UNDO. DEF VAR cFeld AS CHAR NO-UNDO. DEF VAR cLabel AS CHAR NO-UNDO. DEF VAR cDateiname AS CHAR NO-UNDO. DEF VAR iRet AS INT NO-UNDO. EMPTY TEMP-TABLE tExcelListe. CREATE tExcelListe. cDateiName = SESSION:TEMP-DIRECTORY + 'AdressListe.csv'. OUTPUT TO VALUE(cDateiName) NO-MAP NO-CONVERT. hBuffer = TEMP-TABLE tExcelListe:DEFAULT-BUFFER-HANDLE. hAdresse = BUFFER Adresse:HANDLE. hDebst = BUFFER Debst :HANDLE. DO ii = 1 TO hAdresse:NUM-FIELDS: hFeld = hAdresse:BUFFER-FIELD(ii). cFeld = hFeld:NAME. cLabel = hFeld:LABEL. IF cLabel = '' OR cLabel = ? THEN cLabel = cFeld. hFeld = hBuffer:BUFFER-FIELD(cFeld) NO-ERROR. IF NOT VALID-HANDLE(hFeld) THEN NEXT. hFeld:LABEL = cLabel. END. DO ii = 1 TO hDebst:NUM-FIELDS: hFeld = hDebst:BUFFER-FIELD(ii). cFeld = hFeld:NAME. cLabel = hFeld:LABEL. IF cLabel = '' OR cLabel = ? THEN cLabel = cFeld. hFeld = hBuffer:BUFFER-FIELD(cFeld) NO-ERROR. IF NOT VALID-HANDLE(hFeld) THEN NEXT. hFeld:LABEL = cLabel. END. DO ii = 1 TO hBuffer:NUM-FIELDS: IF ii > 1 THEN PUT CONTROL ';'. PUT CONTROL hBuffer:BUFFER-FIELD(ii):LABEL. END. PUT CHR(10). FOR EACH Adresse NO-LOCK WHERE Adresse.Firma = AdFirma AND Adresse.Aktiv = TRUE: FIND FIRST Debst NO-LOCK WHERE Debst.Firma = Firma AND Debst.Knr = Adresse.Knr AND Debst.Aktiv = TRUE NO-ERROR. FIND FIRST tExcelListe. BUFFER-COPY Adresse TO tExcelListe. IF AVAILABLE Debst THEN BUFFER-COPY Debst TO tExcelListe. EXPORT DELIMITER ';' tExcelListe. END. OUTPUT CLOSE. RUN ShellExecuteA ( INPUT 0, INPUT 'open', INPUT 'Excel.exe', INPUT cDateiName, INPUT '', INPUT 1, OUTPUT iRet ). END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE hideObject bTableWin PROCEDURE hideObject : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR hColumn AS HANDLE NO-UNDO. DEF VAR fAttrib AS CHAR NO-UNDO. DEF VAR i1 AS INT NO-UNDO. DO WITH FRAME {&FRAME-NAME}: hColumn = {&BROWSE-NAME}:FIRST-COLUMN. i1 = 0. DO WHILE VALID-HANDLE(hColumn): i1 = i1 + 1. fAttrib = STRING(i1) + ';' + STRING(hColumn:WIDTH). PUT-KEY-VALUE SECTION 'AdressBrowser' KEY hColumn:NAME VALUE fAttrib. hColumn = hColumn:NEXT-COLUMN. END. END. /* Code placed here will execute PRIOR to standard behavior. */ RUN SUPER. /* Code placed here will execute AFTER standard behavior. */ END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject bTableWin PROCEDURE initializeObject : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ /* das Feld Tel-1 an zweiter Stelle zufügen DEF VAR i1 AS INT NO-UNDO. DEF VAR hBrowse AS HANDLE NO-UNDO. DEF VAR hSource AS HANDLE NO-UNDO. DEF VAR hQuery AS HANDLE NO-UNDO. DEF VAR hDataBuffer AS HANDLE NO-UNDO. DEF VAR hField AS HANDLE NO-UNDO. DEF VAR cFields AS CHAR NO-UNDO. DO WITH FRAME {&FRAME-NAME}: hBrowse = {&BROWSE-NAME}:HANDLE. hSource = DYNAMIC-FUNCTION('getDataSource':U). hQuery = DYNAMIC-FUNCTION('getDataHandle':U IN hSource ). hBrowse:QUERY = hQuery NO-ERROR. ERROR-STATUS:ERROR = NO. hDataBuffer = hQuery:GET-BUFFER-HANDLE(1). cFields = DYNAMIC-FUNCTION('getDataColumns':U IN hSource ). i1 = LOOKUP('Tel-1', cFields, ','). hField = hDataBuffer:BUFFER-FIELD(ENTRY(i1, cFields)) NO-ERROR. hBrowse:ADD-LIKE-COLUMN(hField, 2). END. */ /* Code placed here will execute PRIOR to standard behavior. */ RUN SUPER. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME