| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927 |
- &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:
- <none>
- Output Parameters:
- <none>
- ------------------------------------------------------------------------*/
- /* 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 ProgName AS CHAR NO-UNDO.
- DEF VAR SectionName AS CHAR NO-UNDO.
- DEF VAR Offen AS LOG NO-UNDO INIT FALSE.
- DEF VAR Firma AS CHAR NO-UNDO.
- DEF VAR AdFirma AS CHAR NO-UNDO.
- DEF VAR hData AS HANDLE NO-UNDO.
- DEF VAR hContainer AS HANDLE NO-UNDO.
- DEF VAR cVorlage AS CHAR NO-UNDO.
- DEF VAR cDokument AS CHAR NO-UNDO.
- DEF VAR cDaten AS CHAR NO-UNDO.
- DEF VAR wordAppl AS COM-HANDLE NO-UNDO.
- DEF WORKFILE WBrowser FIELD Pos AS INT
- FIELD Feld AS CHAR
- FIELD Breit AS DEC
- FIELD fAktiv AS LOG
- FIELD PosAkt AS INT
- FIELD BreitAkt AS DEC
- FIELD hCol AS HANDLE.
- /* _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-debop.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.Faknr rowObject.Fakdat ~
- rowObject.Faellig rowObject.Kte rowObject.Fakbetr_FRW rowObject.Zahdat ~
- rowObject.Zahbetr_FRW rowObject.Skonto_FRW rowObject.Saldo_FRW ~
- rowObject.FRW rowObject.Kurs
- &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-1 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 m_Kontoauszug LABEL "Kontoauszug"
- MENU-ITEM m_Mahnung_1 LABEL "1. Mahnung"
- MENU-ITEM m_Mahnung_2 LABEL "2. Mahnung"
- MENU-ITEM m_Mahnung_3 LABEL "3. Mahnung"
- MENU-ITEM m_Suchen_nach_Fakturanummer LABEL "Suchen nach Fakturanummer".
- /* Definitions of the field level widgets */
- DEFINE RECTANGLE RECT-1
- EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
- SIZE 133 BY 12.38.
- /* 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.Faknr FORMAT "zzzzz9":U
- rowObject.Fakdat COLUMN-LABEL "Datum" FORMAT "99.99.9999":U
- rowObject.Faellig COLUMN-LABEL "Fällig" FORMAT "99.99.9999":U
- rowObject.Kte FORMAT "x(04)":U
- rowObject.Fakbetr_FRW COLUMN-LABEL "Betrag Frw" FORMAT "zzz,zzz,zz9.99-":U
- rowObject.Zahdat COLUMN-LABEL "ZahlDatum" FORMAT "99.99.9999":U
- rowObject.Zahbetr_FRW COLUMN-LABEL "bezahlt Frw" FORMAT "zzz,zzz,zz9.99-":U
- rowObject.Skonto_FRW COLUMN-LABEL "Skonto Frw" FORMAT "zzz,zzz,zz9.99-":U
- rowObject.Saldo_FRW COLUMN-LABEL "Saldo Frw" FORMAT "zzz,zzz,zz9.99-":U
- rowObject.FRW FORMAT "x(03)":U
- rowObject.Kurs FORMAT "zzz9.9999":U
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- WITH NO-ASSIGN NO-AUTO-VALIDATE NO-ROW-MARKERS SEPARATORS SIZE 131 BY 11.91 TOOLTIP "Like Mause Doppelklick oder ALT-ENTER zum Detail".
- /* ************************ Frame Definitions *********************** */
- DEFINE FRAME F-Main
- br_table AT ROW 1.48 COL 3
- RECT-1 AT ROW 1.24 COL 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-debop.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 = 12.86
- 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-1 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.
- /* _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] > _<SDO>.rowObject.Faknr
- "rowObject.Faknr" ? ? "integer" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
- _FldNameList[2] > _<SDO>.rowObject.Fakdat
- "rowObject.Fakdat" "Datum" ? "date" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
- _FldNameList[3] > _<SDO>.rowObject.Faellig
- "rowObject.Faellig" "Fällig" ? "date" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
- _FldNameList[4] > _<SDO>.rowObject.Kte
- "rowObject.Kte" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
- _FldNameList[5] > _<SDO>.rowObject.Fakbetr_FRW
- "rowObject.Fakbetr_FRW" "Betrag Frw" ? "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
- _FldNameList[6] > _<SDO>.rowObject.Zahdat
- "rowObject.Zahdat" "ZahlDatum" ? "date" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
- _FldNameList[7] > _<SDO>.rowObject.Zahbetr_FRW
- "rowObject.Zahbetr_FRW" "bezahlt Frw" ? "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
- _FldNameList[8] > _<SDO>.rowObject.Skonto_FRW
- "rowObject.Skonto_FRW" "Skonto Frw" ? "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
- _FldNameList[9] > _<SDO>.rowObject.Saldo_FRW
- "rowObject.Saldo_FRW" "Saldo Frw" ? "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
- _FldNameList[10] > _<SDO>.rowObject.FRW
- "rowObject.FRW" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
- _FldNameList[11] > _<SDO>.rowObject.Kurs
- "rowObject.Kurs" ? ? "decimal" ? ? ? ? ? ? no "?" no no ? yes 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 ALT-ENTER OF br_table IN FRAME F-Main
- DO:
- DO WITH FRAME {&FRAME-NAME}:
- RUN g-debop-detail.w ( INPUT rowObject.Faknr:SCREEN-VALUE IN BROWSE {&BROWSE-NAME} ).
- END.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &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 {&BROWSE-NAME}.
- 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 {&BROWSE-NAME}.
- 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 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 LEFT-MOUSE-DBLCLICK OF br_table IN FRAME F-Main
- DO:
- DO WITH FRAME {&FRAME-NAME}:
- RUN g-debop-detail.w ( INPUT rowObject.Faknr:SCREEN-VALUE IN BROWSE {&BROWSE-NAME} ).
- END.
- 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 RETURN OF br_table IN FRAME F-Main
- DO:
- DO WITH FRAME {&FRAME-NAME}:
- PUBLISH 'FAKTURABEZAHLEN' ( INPUT rowObject.Faknr:SCREEN-VALUE IN BROWSE {&BROWSE-NAME} ).
- END.
- 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 m_Kontoauszug
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL m_Kontoauszug bTableWin
- ON CHOOSE OF MENU-ITEM m_Kontoauszug /* Kontoauszug */
- DO:
- SESSION:SET-WAIT-STATE('GENERAL').
- RUN MAHNUNG ( INPUT 0 ).
- SESSION:SET-WAIT-STATE('').
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME m_Mahnung_1
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL m_Mahnung_1 bTableWin
- ON CHOOSE OF MENU-ITEM m_Mahnung_1 /* 1. Mahnung */
- DO:
- SESSION:SET-WAIT-STATE('GENERAL').
- RUN MAHNUNG ( INPUT 1 ).
- SESSION:SET-WAIT-STATE('').
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME m_Mahnung_2
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL m_Mahnung_2 bTableWin
- ON CHOOSE OF MENU-ITEM m_Mahnung_2 /* 2. Mahnung */
- DO:
- SESSION:SET-WAIT-STATE('GENERAL').
- RUN MAHNUNG ( INPUT 2 ).
- SESSION:SET-WAIT-STATE('').
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME m_Mahnung_3
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL m_Mahnung_3 bTableWin
- ON CHOOSE OF MENU-ITEM m_Mahnung_3 /* 3. Mahnung */
- DO:
- SESSION:SET-WAIT-STATE('GENERAL').
- RUN MAHNUNG ( INPUT 3 ).
- SESSION:SET-WAIT-STATE('').
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME m_Suchen_nach_Fakturanummer
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL m_Suchen_nach_Fakturanummer bTableWin
- ON CHOOSE OF MENU-ITEM m_Suchen_nach_Fakturanummer /* Suchen nach Fakturanummer */
- DO:
- RUN SUCHEN_FAKTURA.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &UNDEFINE SELF-NAME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK bTableWin
- /* *************************** Main Block *************************** */
- SectionName = 'Browser-' + ENTRY(1, THIS-PROCEDURE:FILE-NAME, '.').
- ProgName = ''.
- Firma = DYNAMIC-FUNCTION('getD1Firma':U) NO-ERROR.
- AdFirma = DYNAMIC-FUNCTION('getAdFirma':U) NO-ERROR.
- &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
- RUN initializeObject.
- &ENDIF
- /* _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: <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 enableObject bTableWin
- PROCEDURE enableObject :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR hColumn AS HANDLE NO-UNDO.
- DEF VAR i1 AS INT NO-UNDO.
- DEF VAR Kol AS INT NO-UNDO.
- DEF VAR Bre AS DEC NO-UNDO.
- DEF VAR cFelder AS CHAR NO-UNDO.
- DEF VAR Feld AS CHAR NO-UNDO.
- DEF VAR Spalte AS CHAR NO-UNDO.
- DEF VAR Attrib AS CHAR NO-UNDO.
- DEF VAR hSource AS HANDLE NO-UNDO.
- GET-KEY-VALUE SECTION SectionName KEY ? VALUE cFelder.
- IF cFelder = ? THEN cFelder = ''.
- DO WHILE TRUE WITH FRAME {&FRAME-NAME}:
- FOR EACH WBrowser:
- DELETE WBrowser.
- END.
- DO i1 = 1 TO NUM-ENTRIES(cFelder, ','):
- Feld = ENTRY(i1, cFelder, ',').
- Attrib = '0;0'.
- GET-KEY-VALUE SECTION SectionName KEY Feld VALUE Attrib.
- CREATE WBrowser.
- ASSIGN WBrowser.Pos = INTEGER(ENTRY(1, Attrib, ';'))
- WBrowser.Feld = Feld
- WBrowser.Breit = DECIMAL(ENTRY(2, Attrib, ';'))
- WBrowser.fAktiv = FALSE.
- IF WBrowser.Pos < 1 THEN WBrowser.Pos = 1.
- IF WBrowser.Breit < 1 THEN WBrowser.Breit = 1.
- ASSIGN WBrowser.BreitAkt = WBrowser.Breit
- WBrowser.PosAkt = WBrowser.Pos.
- END.
- i1 = 0.
- hColumn = {&BROWSE-NAME}:FIRST-COLUMN.
- DO WHILE VALID-HANDLE(hColumn):
- i1 = i1 + 1.
- FIND FIRST WBrowser WHERE WBrowser.Feld = hColumn:NAME NO-ERROR.
- IF AVAILABLE WBrowser THEN DO:
- ASSIGN WBrowser.PosAkt = i1
- WBrowser.BreitAkt = hColumn:WIDTH
- WBrowser.fAktiv = TRUE.
- END.
- ELSE DO:
- CREATE WBrowser.
- ASSIGN WBrowser.Pos = i1
- WBrowser.Feld = hColumn:NAME
- WBrowser.Breit = hColumn:WIDTH
- WBrowser.fAktiv = TRUE
- WBrowser.PosAkt = WBrowser.Pos
- WBrowser.BreitAkt = WBrowser.Breit.
- END.
- IF hColumn:VISIBLE THEN WBrowser.hCol = hColumn.
- hColumn = hColumn:NEXT-COLUMN.
- END.
- Kol = 0.
- FOR EACH WBrowser BY Pos
- BY PosAkt:
- IF NOT WBrowser.fAktiv THEN DO:
- PUT-KEY-VALUE SECTION SectionName
- KEY WBrowser.Feld
- VALUE '' NO-ERROR.
- DELETE WBrowser.
- NEXT.
- END.
- Kol = Kol + 1.
- WBrowser.Pos = Kol.
- IF WBrowser.Pos = WBrowser.PosAkt AND
- WBrowser.Breit = WBrowser.BreitAkt THEN NEXT.
- i1 = 0.
- Bre = WBrowser.Breit.
- hColumn = {&BROWSE-NAME}:FIRST-COLUMN.
- BROWSER:
- DO WHILE VALID-HANDLE(hColumn):
- i1 = i1 + 1.
- DO WHILE TRUE:
- IF hColumn:NAME <> WBrowser.Feld THEN LEAVE.
- ASSIGN WBrowser.PosAkt = WBrowser.Pos
- WBrowser.BreitAkt = WBrowser.Breit.
- IF hColumn:WIDTH <> Bre THEN hColumn:WIDTH = Bre.
- IF i1 <> Kol THEN {&BROWSE-NAME}:MOVE-COLUMN(i1, Kol).
- LEAVE BROWSER.
- END.
- hColumn = hColumn:NEXT-COLUMN.
- END.
- END.
- LEAVE.
- END.
- 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.
- PUBLISH 'GETPROG' ( OUTPUT ProgName ).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRYBROWSE bTableWin
- PROCEDURE ENTRYBROWSE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- 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 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.
- DEF VAR Feld AS CHAR NO-UNDO.
- DO WHILE TRUE WITH FRAME {&FRAME-NAME}:
- IF NOT Offen THEN LEAVE.
- hColumn = {&BROWSE-NAME}:FIRST-COLUMN.
- i1 = 0.
- DO WHILE VALID-HANDLE(hColumn):
- i1 = i1 + 1.
- Feld = hColumn:NAME.
- DO WHILE TRUE:
- FIND FIRST WBrowser WHERE WBrowser.Feld = Feld NO-ERROR.
- IF NOT AVAILABLE WBrowser THEN LEAVE.
- IF WBrowser.Breit = hColumn:WIDTH AND
- WBrowser.Pos = i1 THEN LEAVE.
- fAttrib = STRING(i1)
- + ';'
- + STRING(hColumn:WIDTH).
- PUT-KEY-VALUE SECTION SectionName
- KEY hColumn:NAME
- VALUE fAttrib NO-ERROR.
- LEAVE.
- END.
- hColumn = hColumn:NEXT-COLUMN.
- END.
- LEAVE.
- END.
- RUN SUPER.
- Offen = FALSE.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE MAHNUNG bTableWin
- PROCEDURE MAHNUNG :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF INPUT PARAMETER ipArt AS INT NO-UNDO.
- DEF VAR iKnr AS INT NO-UNDO.
- DEF VAR ix AS INT NO-UNDO.
- DEF VAR Saldo AS DEC NO-UNDO.
- DEF VAR cDatei AS CHAR NO-UNDO.
- DEF VAR cDokName1 AS CHAR NO-UNDO.
- DEF VAR cDokName2 AS CHAR NO-UNDO.
- DEF VAR cPfad AS CHAR NO-UNDO.
- DEF VAR hMM AS COM-HANDLE NO-UNDO.
- DEF VAR hDok AS COM-HANDLE NO-UNDO.
- DEF VAR AnzDok AS INT NO-UNDO.
- DEF VAR ja AS LOG NO-UNDO.
- DEF VAR rDebop AS RECID NO-UNDO.
- IF NOT VALID-HANDLE ( hData ) THEN hData = DYNAMIC-FUNCTION('getDataSource':U) NO-ERROR.
- IF NOT VALID-HANDLE ( hdata ) THEN RETURN NO-APPLY.
-
- rDebop = DYNAMIC-FUNCTION('getCurrentRecid':U IN hData ) NO-ERROR.
- FIND Debop NO-LOCK
- WHERE RECID(Debop) = rDebop NO-ERROR.
- IF NOT AVAILABLE Debop THEN RETURN NO-APPLY.
-
- iKnr = Debop.Knr.
- FIND Adresse USE-INDEX Adresse-k1
- WHERE Adresse.Firma = AdFirma
- AND Adresse.Knr = iKnr NO-LOCK NO-ERROR.
- IF NOT AVAILABLE Adresse THEN RETURN NO-APPLY.
- cDaten = SESSION:TEMP-DIR + 'Mahnung' + STRING(ipArt) + '.txt'.
- OUTPUT TO VALUE(cDaten) NO-ECHO NO-MAP NO-CONVERT.
- PUT CONTROL 'Unit;Knr;Suchbe;Firma1;Name;Briefanrede;'
- 'Anschrift_01;Anschrift_02;Anschrift_03;'
- 'Anschrift_04;Anschrift_05;Anschrift_06;'
- 'Anschrift_07;Anschrift_08;Anschrift_09;'
- 'Anschrift_10;Anschrift_11;Anschrift_12;'
- 'Beruecksichtig;Datum;'.
- DO ix = 1 TO 10:
- PUT CONTROL 'Faknr_' STRING(ix,'99') ';'
- 'Fak_Datum_' STRING(ix,'99') ';'
- 'Fak_Faellig_' STRING(ix,'99') ';'
- 'Fak_Waeh_' STRING(ix,'99') ';'
- 'Fak_Saldo_' STRING(ix,'99') ';'.
- END.
- PUT CONTROL 'Total' CHR(10).
- PUT CONTROL Firma ';'
- STRING(iKnr,'999999') ';'
- Adresse.Suchbe ';'
- Adresse.Firma1 ';'
- Adresse.Name ';'
- Adresse.BriefAnr ';'
- Adresse.Anschrift[01] ';'
- Adresse.Anschrift[02] ';'
- Adresse.Anschrift[03] ';'
- Adresse.Anschrift[04] ';'
- Adresse.Anschrift[05] ';'
- Adresse.Anschrift[06] ';'
- Adresse.Anschrift[07] ';'
- Adresse.Anschrift[08] ';'
- Adresse.Anschrift[09] ';'
- Adresse.Anschrift[10] ';'
- Adresse.Anschrift[11] ';'
- Adresse.Anschrift[12] ';'
- STRING(TODAY,'99.99.9999') ';'
- STRING(TODAY,'99.99.9999') ';'.
- ix = 0.
- Saldo = 0.
- FOR EACH Debop USE-INDEX Debop-k1
- WHERE Debop.Firma = Firma
- AND Debop.Knr = iKnr
- AND Debop.Saldo_Frw <> 0
- AND ((ipArt = 0) OR
- (Debop.Faellig <= TODAY)) NO-LOCK:
- ix = ix + 1.
- Saldo = Saldo + Debop.Saldo_Frw.
- IF ix > 10 THEN NEXT.
- PUT CONTROL STRING(Debop.Faknr ,'9999999') ';'
- STRING(Debop.FakDat ,'99.99.9999') ';'
- STRING(Debop.Faellig,'99.99.9999') ';'
- Debop.Frw ';'
- REPLACE(TRIM(STRING(Debop.Saldo_Frw,'->>>,>>>,>>9.99')), ",", "'")
- ';'.
- END.
- IF ix > 10 THEN DO:
- MESSAGE 'Dieser Kunde hat �ber 10 (' ix ') offene Posten' VIEW-AS ALERT-BOX.
- END.
- DO ix = ix + 1 TO 10:
- PUT CONTROL ';;;;;'.
- END.
- PUT CONTROL REPLACE(TRIM(STRING(Saldo,'->>>,>>>,>>9.99')), ",", "'").
- OUTPUT CLOSE.
- /* FILE-INFO:FILE-NAME = 'vorlagen'. */
- /* cPfad = FILE-INFO:FULL-PATHNAME + '\Mahnung\' + Firma. */
- /* */
- cDatei = 'Mahnung_'
- + STRING(ipArt,'9')
- + '_'
- + STRING(Adresse.Sprcd,'99')
- + ".dot".
- cDatei = cDatei + CHR(01) + cDatei.
- RUN CREATEDATEI ( INPUT cDatei ).
- cDatei = RETURN-VALUE.
- IF cDatei BEGINS 'ERROR' THEN RETURN NO-APPLY.
- wordAppl = DYNAMIC-FUNCTION('CREATEWORD':U) NO-ERROR.
- wordAppl:VISIBLE = TRUE.
- wordAppl:Documents:Add (cDatei,,).
- cDokName1 = wordAppl:ActiveDocument:Name.
- IF VALID-HANDLE(hMM) THEN RELEASE OBJECT hMM NO-ERROR.
- hMM = wordAppl:ActiveDocument:MailMerge.
- hMM:OpenDataSource ( cDaten ).
- hMM:Destination = 0.
- hMM:SuppressBlankLines = TRUE.
- hMM:EXECUTE().
- AnzDok = WordAppl:Documents:Count().
- DO ix = 1 TO AnzDok:
- hDok = wordAppl:Windows:ITEM(ix).
- IF NOT VALID-HANDLE(hDok) THEN NEXT.
- hDok:Activate().
- IF wordAppl:ActiveDocument:Name <> cDokName1 THEN NEXT.
- WordAppl:ActiveDocument:Close(FALSE).
- LEAVE.
- END.
- /*
- AnzDok = WordAppl:Documents:Count().
- DO ix = 1 TO AnzDok:
- hDok = wordAppl:Windows:ITEM(ix).
- IF NOT VALID-HANDLE(hDok) THEN NEXT.
- hDok:Activate().
- IF wordAppl:ActiveDocument:Name <> cDokName2 THEN NEXT.
- LEAVE.
- END.
- */
- SESSION:SET-WAIT-STATE('').
- MESSAGE 'Wollen Sie das Dokument sichern? '
- VIEW-AS ALERT-BOX QUESTION BUTTONS YES-NO
- UPDATE ja.
- IF ja THEN DO:
- cDokName2 = cPfad + '\'
- + SUBSTRING(STRING(YEAR(TODAY),'9999'),03,02)
- + '-'
- + SUBSTRING(STRING(iKnr,'999999'),03,04)
- + '-99-06-'
- + STRING(YEAR (TODAY),'9999')
- + STRING(MONTH(TODAY),'99')
- + STRING(DAY (TODAY),'99')
- + '.doc'.
- wordAppl:ActiveDocument:SaveAs(cDokName2).
- END.
- IF VALID-HANDLE(hMM) THEN RELEASE OBJECT hMM NO-ERROR.
- RELEASE OBJECT wordAppl.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SUCHEN_FAKTURA bTableWin
- PROCEDURE SUCHEN_FAKTURA :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
-
- DEF VAR cFaknr AS CHAR NO-UNDO.
- DEF VAR iFaknr AS INT NO-UNDO.
- RUN 'g-einlesen-wert.w'(INPUT 'Fakturanummer', OUTPUT cFaknr).
- iFaknr = 0.
- iFaknr = INTEGER(cFaknr) NO-ERROR.
- IF ERROR-STATUS:ERROR THEN DO:
- MESSAGE 'ungültige Fakturanummer' VIEW-AS ALERT-BOX INFORMATION.
- RETURN NO-APPLY.
- END.
- IF iFaknr = 0 THEN RETURN NO-APPLY.
- FIND FIRST Debop NO-LOCK USE-INDEX Debop-k1
- WHERE Debop.Firma = Firma
- AND Debop.Faknr = iFaknr NO-ERROR.
- IF NOT AVAILABLE Debop THEN DO:
- DYNAMIC-FUNCTION('FEHLER', INPUT 0402) NO-ERROR.
- RETURN NO-APPLY.
- END.
- FIND Adresse NO-LOCK USE-INDEX Adresse-k1
- WHERE Adresse.Firma = AdFirma
- AND Adresse.Knr = Debop.Knr.
- PUBLISH 'REPOSADRESSEOP' ( RECID(Adresse) ).
- PUBLISH 'REPOSDEBOP' ( RECID(Debop) ).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE viewObject bTableWin
- PROCEDURE viewObject :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- /* Code placed here will execute PRIOR to standard behavior. */
- RUN SUPER.
- Offen = TRUE.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
|