| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451 |
- &ANALYZE-SUSPEND _VERSION-NUMBER UIB_v8r12 GUI ADM1
- &ANALYZE-RESUME
- /* Connected Databases
- anadat PROGRESS
- */
- &Scoped-define WINDOW-NAME CURRENT-WINDOW
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS B-table-Win
- /*------------------------------------------------------------------------
- File:
- Description: from BROWSER.W - Basic SmartBrowser Object Template
- Input Parameters:
- <none>
- Output Parameters:
- <none>
- ------------------------------------------------------------------------*/
- /* This .W file was created with the Progress UIB. */
- /*----------------------------------------------------------------------*/
- /* 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 VText AS CHAR NO-UNDO.
- /* ---------- Globale Variablen ---------------------------------- */
- { v8/globvar.i" " " " "SHARED" }
- { v8/debivar.i " " " " "SHARED" }
- { v8/artivar.i " " " " "SHARED" }
- { v8/contvar.i " " " " "SHARED" }
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
- /* ******************** Preprocessor Definitions ******************** */
- &Scoped-define PROCEDURE-TYPE SmartBrowser
- &Scoped-define DB-AWARE no
- &Scoped-define ADM-SUPPORTED-LINKS Record-Source,Record-Target,TableIO-Target
- /* Name of first Frame and/or 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 ArtLief
- /* Definitions for BROWSE br_table */
- &Scoped-define FIELDS-IN-QUERY-br_table ArtLief.Artnr ArtLief.Inhalt ~
- ArtLief.Jahr VText @ VText ArtLief.S_Artnr ArtLief.S_Bez1 ArtLief.S_Preis
- &Scoped-define ENABLED-FIELDS-IN-QUERY-br_table
- &Scoped-define OPEN-QUERY-br_table OPEN QUERY br_table FOR EACH ArtLief ~
- WHERE ArtLief.Firma = GVFirma ~
- AND ArtLief.Knr = LVLnr NO-LOCK ~
- BY ArtLief.Artnr ~
- BY ArtLief.Inhalt ~
- BY ArtLief.Jahr.
- &Scoped-define TABLES-IN-QUERY-br_table ArtLief
- &Scoped-define FIRST-TABLE-IN-QUERY-br_table ArtLief
- /* Definitions for FRAME F-Main */
- &Scoped-define OPEN-BROWSERS-IN-QUERY-F-Main ~
- ~{&OPEN-QUERY-br_table}
- /* Standard List Definitions */
- &Scoped-Define ENABLED-OBJECTS br_table RECT-24
- /* Custom List Definitions */
- /* List-1,List-2,List-3,List-4,List-5,List-6 */
- /* _UIB-PREPROCESSOR-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _XFTR "Foreign Keys" B-table-Win _INLINE
- /* Actions: ? adm/support/keyedit.w ? ? ? */
- /* STRUCTURED-DATA
- <KEY-OBJECT>
- &BROWSE-NAME
- </KEY-OBJECT>
- <FOREIGN-KEYS>
- </FOREIGN-KEYS>
- <EXECUTING-CODE>
- **************************
- * Set attributes related to FOREIGN KEYS
- */
- RUN set-attribute-list (
- 'Keys-Accepted = "",
- Keys-Supplied = ""':U).
- /**************************
- </EXECUTING-CODE> */
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _XFTR "Advanced Query Options" B-table-Win _INLINE
- /* Actions: ? adm/support/advqedit.w ? ? ? */
- /* STRUCTURED-DATA
- <KEY-OBJECT>
- &BROWSE-NAME
- </KEY-OBJECT>
- <SORTBY-OPTIONS>
- </SORTBY-OPTIONS>
- <SORTBY-RUN-CODE>
- ************************
- * Set attributes related to SORTBY-OPTIONS */
- RUN set-attribute-list (
- 'SortBy-Options = ""':U).
- /************************
- </SORTBY-RUN-CODE>
- <FILTER-ATTRIBUTES>
- </FILTER-ATTRIBUTES> */
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- /* *********************** Control Definitions ********************** */
- /* Definitions of the field level widgets */
- DEFINE RECTANGLE RECT-24
- EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
- SIZE 120 BY 19.81.
- /* Query definitions */
- &ANALYZE-SUSPEND
- DEFINE QUERY br_table FOR
- ArtLief SCROLLING.
- &ANALYZE-RESUME
- /* Browse definitions */
- DEFINE BROWSE br_table
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS br_table B-table-Win _STRUCTURED
- QUERY br_table NO-LOCK DISPLAY
- ArtLief.Artnr FORMAT "999999":U WIDTH 8
- ArtLief.Inhalt FORMAT "9999":U WIDTH 6
- ArtLief.Jahr FORMAT "9999":U WIDTH 5
- VText @ VText COLUMN-LABEL "Artikel" FORMAT "x(30)":U
- ArtLief.S_Artnr COLUMN-LABEL "s Nummer" FORMAT "x(12)":U
- WIDTH 14
- ArtLief.S_Bez1 COLUMN-LABEL "s Bezeichnung" FORMAT "x(30)":U
- ArtLief.S_Preis COLUMN-LABEL "s Preis" FORMAT "zzz,zz9.9999":U
- WIDTH 14
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- WITH NO-ASSIGN NO-ROW-MARKERS SEPARATORS SIZE 117.2 BY 19.52
- BGCOLOR 15 .
- /* ************************ Frame Definitions *********************** */
- DEFINE FRAME F-Main
- br_table AT ROW 1.24 COL 2.2
- RECT-24 AT ROW 1.19 COL 1
- WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
- SIDE-LABELS NO-UNDERLINE THREE-D
- AT COL 1 ROW 1 SCROLLABLE
- BGCOLOR 8 FGCOLOR 0 .
- /* *********************** Procedure Settings ************************ */
- &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
- /* Settings for THIS-PROCEDURE
- Type: SmartBrowser
- Allow: Basic,Browse
- Frames: 1
- Add Fields to: EXTERNAL-TABLES
- 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 B-table-Win ASSIGN
- HEIGHT = 20
- WIDTH = 120.6.
- /* END WINDOW DEFINITION */
- */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB B-table-Win
- /* ************************* Included-Libraries *********************** */
- {src/adm/method/browser.i}
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- /* *********** Runtime Attributes and AppBuilder Settings *********** */
- &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
- /* SETTINGS FOR WINDOW B-table-Win
- NOT-VISIBLE,,RUN-PERSISTENT */
- /* SETTINGS FOR FRAME F-Main
- NOT-VISIBLE Size-to-Fit */
- /* BROWSE-TAB br_table 1 F-Main */
- ASSIGN
- FRAME F-Main:SCROLLABLE = FALSE
- FRAME F-Main:HIDDEN = TRUE.
- /* _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 = "AnaDat.ArtLief"
- _Options = "NO-LOCK"
- _OrdList = "AnaDat.ArtLief.Artnr|yes,AnaDat.ArtLief.Inhalt|yes,AnaDat.ArtLief.Jahr|yes"
- _Where[1] = "ArtLief.Firma = GVFirma
- AND ArtLief.Knr = LVLnr"
- _FldNameList[1] > AnaDat.ArtLief.Artnr
- "ArtLief.Artnr" ? ? "integer" ? ? ? ? ? ? no ? no no "8" yes no no "U" "" ""
- _FldNameList[2] > AnaDat.ArtLief.Inhalt
- "ArtLief.Inhalt" ? ? "integer" ? ? ? ? ? ? no ? no no "6" yes no no "U" "" ""
- _FldNameList[3] > AnaDat.ArtLief.Jahr
- "ArtLief.Jahr" ? ? "integer" ? ? ? ? ? ? no ? no no "5" yes no no "U" "" ""
- _FldNameList[4] > "_<CALC>"
- "VText @ VText" "Artikel" "x(30)" ? ? ? ? ? ? ? no ? no no ? yes no no "U" "" ""
- _FldNameList[5] > AnaDat.ArtLief.S_Artnr
- "ArtLief.S_Artnr" "s Nummer" ? "character" ? ? ? ? ? ? no ? no no "14" yes no no "U" "" ""
- _FldNameList[6] > AnaDat.ArtLief.S_Bez1
- "ArtLief.S_Bez1" "s Bezeichnung" ? "character" ? ? ? ? ? ? no ? no no ? yes no no "U" "" ""
- _FldNameList[7] > AnaDat.ArtLief.S_Preis
- "ArtLief.S_Preis" "s Preis" ? "decimal" ? ? ? ? ? ? no ? no no "14" yes no no "U" "" ""
- _Query is 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 B-table-Win
- ON ROW-DISPLAY OF br_table IN FRAME F-Main
- DO:
- VText = ''.
- IF NOT AVAILABLE ArtLief THEN RETURN.
- FIND Artst USE-INDEX Artst-k1
- WHERE Artst.Firma = ArtLief.Firma
- AND Artst.Artnr = ArtLief.Artnr
- AND Artst.Inhalt = ArtLief.Inhalt
- AND Artst.Jahr = ArtLief.Jahr NO-LOCK NO-ERROR.
- IF NOT AVAILABLE Artst THEN RETURN.
- FIND FIRST ArtBez OF Artst NO-LOCK NO-ERROR.
- IF AVAILABLE ArtBez THEN VText = ArtBez.Bez1.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table B-table-Win
- ON ROW-ENTRY OF br_table IN FRAME F-Main
- DO:
- /* This code displays initial values for newly added or copied rows. */
- {src/adm/template/brsentry.i}
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table B-table-Win
- ON ROW-LEAVE OF br_table IN FRAME F-Main
- DO:
- /* Do not disable this code or no updates will take place except
- by pressing the Save button on an Update SmartPanel. */
- {src/adm/template/brsleave.i}
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table B-table-Win
- ON VALUE-CHANGED OF br_table IN FRAME F-Main
- DO:
- /* This ADM trigger code must be preserved in order to notify other
- objects when the browser's current row changes. */
- {src/adm/template/brschnge.i}
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &UNDEFINE SELF-NAME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK B-table-Win
- /* *************************** Main Block *************************** */
- &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
- RUN dispatch IN THIS-PROCEDURE ('initialize':U).
- &ENDIF
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- /* ********************** Internal Procedures *********************** */
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-row-available B-table-Win _ADM-ROW-AVAILABLE
- PROCEDURE adm-row-available :
- /*------------------------------------------------------------------------------
- Purpose: Dispatched to this procedure when the Record-
- Source has a new row available. This procedure
- tries to get the new row (or foriegn keys) from
- the Record-Source and process it.
- Parameters: <none>
- ------------------------------------------------------------------------------*/
- /* Define variables needed by this internal procedure. */
- {src/adm/template/row-head.i}
- /* Process the newly available records (i.e. display fields,
- open queries, and/or pass records on to any RECORD-TARGETS). */
- {src/adm/template/row-end.i}
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI B-table-Win _DEFAULT-DISABLE
- PROCEDURE disable_UI :
- /*------------------------------------------------------------------------------
- Purpose: DISABLE the User Interface
- Parameters: <none>
- 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 local-view B-table-Win
- PROCEDURE local-view :
- /*------------------------------------------------------------------------------
- Purpose: Override standard ADM method
- Notes:
- ------------------------------------------------------------------------------*/
- RUN dispatch IN THIS-PROCEDURE ( INPUT 'view':U ) .
- RUN dispatch IN THIS-PROCEDURE ('open-query':U).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE send-records B-table-Win _ADM-SEND-RECORDS
- PROCEDURE send-records :
- /*------------------------------------------------------------------------------
- Purpose: Send record ROWID's for all tables used by
- this file.
- Parameters: see template/snd-head.i
- ------------------------------------------------------------------------------*/
- /* Define variables needed by this internal procedure. */
- {src/adm/template/snd-head.i}
- /* For each requested table, put it's ROWID in the output list. */
- {src/adm/template/snd-list.i "ArtLief"}
- /* Deal with any unexpected table requests before closing. */
- {src/adm/template/snd-end.i}
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE state-changed B-table-Win
- PROCEDURE state-changed :
- /* -----------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- -------------------------------------------------------------*/
- DEFINE INPUT PARAMETER p-issuer-hdl AS HANDLE NO-UNDO.
- DEFINE INPUT PARAMETER p-state AS CHARACTER NO-UNDO.
- CASE p-state:
- /* Object instance CASEs can go here to replace standard behavior
- or add new cases. */
- {src/adm/template/bstates.i}
- END CASE.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
|