&ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2 &ANALYZE-RESUME /* Connected Databases anadat PROGRESS */ &Scoped-define WINDOW-NAME CURRENT-WINDOW /* Temp-Table and Buffer definitions */ DEFINE TEMP-TABLE RowObject {"d-adresse.i"}. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS vTableWin /*------------------------------------------------------------------------ File: Description: from viewer.w - Template for SmartDataViewer objects 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 ************************** */ /* Komma-Trennzeichen */ /* Keyfelder werden beim Mutieren nicht "Enabled" */ &Scoped-define ERSTES_FELD &Scoped-define LETZTES_FELD &Scoped-define KEY_FELDER &Scoped-define NUR_LESEN /* Parameters Definitions --- */ /* Local Variable Definitions --- */ DEF VAR MKnr AS INT NO-UNDO. DEF VAR cSubject AS CHAR NO-UNDO. DEF VAR cText AS CHAR NO-UNDO. DEF VAR cAttach AS CHAR NO-UNDO. DEF VAR lKuBes AS LOG INIT FALSE NO-UNDO. DEF VAR lSendMail AS LOG INIT FALSE NO-UNDO. { incl/viwdefinition.i } /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK /* ******************** Preprocessor Definitions ******************** */ &Scoped-define PROCEDURE-TYPE SmartDataViewer &Scoped-define DB-AWARE no &Scoped-define ADM-CONTAINER FRAME &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Update-Source,TableIO-Target,GroupAssign-Source,GroupAssign-Target /* 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 /* Standard List Definitions */ &Scoped-Define ENABLED-FIELDS RowObject.Knr RowObject.Tel-1 RowObject.Tel-3 ~ RowObject.Natel RowObject.Mail RowObject.Tel-2 RowObject.Tel-4 ~ RowObject.BriefAnr &Scoped-define ENABLED-TABLES RowObject &Scoped-define FIRST-ENABLED-TABLE RowObject &Scoped-Define ENABLED-OBJECTS RECT-1 E_Anschrift &Scoped-Define DISPLAYED-FIELDS RowObject.Knr RowObject.Tel-1 ~ RowObject.Anschrift12 RowObject.Anschrift9 RowObject.Anschrift2 ~ RowObject.Anschrift8 RowObject.Anschrift6 RowObject.Anschrift7 ~ RowObject.Anschrift10 RowObject.Anschrift5 RowObject.Anschrift4 ~ RowObject.Anschrift3 RowObject.Anschrift11 RowObject.Anschrift1 ~ RowObject.Tel-3 RowObject.Natel RowObject.Mail RowObject.Tel-2 ~ RowObject.Tel-4 RowObject.BriefAnr RowObject.AnschrFix &Scoped-define DISPLAYED-TABLES RowObject &Scoped-define FIRST-DISPLAYED-TABLE RowObject &Scoped-Define DISPLAYED-OBJECTS E_Anschrift /* Custom List Definitions */ /* ADM-ASSIGN-FIELDS,List-2,List-3,List-4,List-5,List-6 */ /* _UIB-PREPROCESSOR-BLOCK-END */ &ANALYZE-RESUME /* *********************** Control Definitions ********************** */ /* Menu Definitions */ DEFINE MENU POPUP-MENU-F-Main MENU-ITEM m_Anschriften_neu_erstellen LABEL "Anschriften neu erstellen" MENU-ITEM m_Browseranzeige_neu_erstelle LABEL "Browseranzeige neu erstellen". DEFINE MENU POPUP-MENU-Mail MENU-ITEM X_send_Mail LABEL "send Mail" . DEFINE MENU POPUP-MENU-Natel MENU-ITEM X_Natel LABEL "Telefonieren" . DEFINE MENU POPUP-MENU-Tel-1 MENU-ITEM X_Telefongeschaeft LABEL "Telefonieren" . DEFINE MENU POPUP-MENU-Tel-2 MENU-ITEM X_Telefonprivat LABEL "Telefonieren" . /* Definitions of the field level widgets */ DEFINE VARIABLE E_Anschrift AS CHARACTER VIEW-AS EDITOR NO-WORD-WRAP SCROLLBAR-HORIZONTAL SCROLLBAR-VERTICAL SIZE 51.2 BY 8.1 BGCOLOR 15 FONT 6 NO-UNDO. DEFINE RECTANGLE RECT-1 EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL SIZE 134 BY 10.24. /* ************************ Frame Definitions *********************** */ DEFINE FRAME F-Main E_Anschrift AT ROW 1.76 COL 4 NO-LABEL NO-TAB-STOP RowObject.Knr AT ROW 2 COL 78 COLON-ALIGNED LABEL "Nummer" FORMAT "zzzzzz9" VIEW-AS FILL-IN NATIVE SIZE 11.8 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Tel-1 AT ROW 3 COL 78 COLON-ALIGNED LABEL "Telefon Geschäft" FORMAT "X(20)" VIEW-AS FILL-IN NATIVE SIZE 22 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Anschrift12 AT ROW 3.38 COL 83 COLON-ALIGNED VIEW-AS FILL-IN NATIVE SIZE 10 BY 1 RowObject.Anschrift9 AT ROW 3.38 COL 83 COLON-ALIGNED VIEW-AS FILL-IN NATIVE SIZE 10 BY 1 RowObject.Anschrift2 AT ROW 3.38 COL 83 COLON-ALIGNED VIEW-AS FILL-IN NATIVE SIZE 10 BY 1 RowObject.Anschrift8 AT ROW 3.38 COL 83 COLON-ALIGNED VIEW-AS FILL-IN NATIVE SIZE 10 BY 1 RowObject.Anschrift6 AT ROW 3.38 COL 83 COLON-ALIGNED VIEW-AS FILL-IN NATIVE SIZE 10 BY 1 RowObject.Anschrift7 AT ROW 3.38 COL 83 COLON-ALIGNED VIEW-AS FILL-IN NATIVE SIZE 10 BY 1 RowObject.Anschrift10 AT ROW 3.38 COL 83 COLON-ALIGNED VIEW-AS FILL-IN NATIVE SIZE 10 BY 1 RowObject.Anschrift5 AT ROW 3.38 COL 83 COLON-ALIGNED VIEW-AS FILL-IN NATIVE SIZE 10 BY 1 RowObject.Anschrift4 AT ROW 3.38 COL 83 COLON-ALIGNED VIEW-AS FILL-IN NATIVE SIZE 10 BY 1 RowObject.Anschrift3 AT ROW 3.38 COL 83 COLON-ALIGNED VIEW-AS FILL-IN NATIVE SIZE 10 BY 1 RowObject.Anschrift11 AT ROW 3.38 COL 83 COLON-ALIGNED VIEW-AS FILL-IN NATIVE SIZE 10 BY 1 RowObject.Anschrift1 AT ROW 3.38 COL 83 COLON-ALIGNED VIEW-AS FILL-IN NATIVE SIZE 10 BY 1 RowObject.Tel-3 AT ROW 4 COL 78 COLON-ALIGNED LABEL "Fax Geschäft" FORMAT "X(20)" VIEW-AS FILL-IN NATIVE SIZE 22 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Natel AT ROW 5 COL 78 COLON-ALIGNED LABEL "Natel" FORMAT "x(20)" VIEW-AS FILL-IN NATIVE SIZE 22 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Mail AT ROW 6 COL 78 COLON-ALIGNED VIEW-AS FILL-IN NATIVE SIZE 50 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Tel-2 AT ROW 7 COL 78 COLON-ALIGNED LABEL "Telefon Privat" FORMAT "X(20)" VIEW-AS FILL-IN NATIVE SIZE 22 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Tel-4 AT ROW 8 COL 78 COLON-ALIGNED LABEL "Fax Privat" FORMAT "X(20)" VIEW-AS FILL-IN NATIVE SIZE 22 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.BriefAnr AT ROW 10 COL 78 COLON-ALIGNED LABEL "Briefanrede" FORMAT "X(50)" VIEW-AS FILL-IN NATIVE SIZE 52 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.AnschrFix AT ROW 10.14 COL 37 LABEL "AnschrFix" VIEW-AS TOGGLE-BOX SIZE 14.2 BY 1 NO-TAB-STOP RECT-1 AT ROW 1.24 COL 2 WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY USE-DICT-EXPS SIDE-LABELS NO-UNDERLINE THREE-D NO-AUTO-VALIDATE AT COL 1 ROW 1 SCROLLABLE . /* *********************** Procedure Settings ************************ */ &ANALYZE-SUSPEND _PROCEDURE-SETTINGS /* Settings for THIS-PROCEDURE Type: SmartDataViewer Data Source: "d-adresse.w" Allow: Basic,DB-Fields,Smart Container Links: Data-Target,Update-Source,TableIO-Target,GroupAssign-Source,GroupAssign-Target Frames: 1 Add Fields to: Neither Other Settings: PERSISTENT-ONLY COMPILE Temp-Tables and Buffers: TABLE: RowObject D "?" ? ADDITIONAL-FIELDS: {d-adresse.i} END-FIELDS. END-TABLES. */ /* 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 vTableWin ASSIGN HEIGHT = 12.05 WIDTH = 138. /* END WINDOW DEFINITION */ */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB vTableWin /* ************************* Included-Libraries *********************** */ {src/adm2/viewer.i} /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME /* *********** Runtime Attributes and AppBuilder Settings *********** */ &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES /* SETTINGS FOR WINDOW vTableWin VISIBLE,,RUN-PERSISTENT */ /* SETTINGS FOR FRAME F-Main NOT-VISIBLE FRAME-NAME Size-to-Fit */ ASSIGN FRAME F-Main:SCROLLABLE = FALSE FRAME F-Main:HIDDEN = TRUE FRAME F-Main:POPUP-MENU = MENU POPUP-MENU-F-Main:HANDLE. /* SETTINGS FOR TOGGLE-BOX RowObject.AnschrFix IN FRAME F-Main NO-ENABLE EXP-LABEL */ /* SETTINGS FOR FILL-IN RowObject.Anschrift1 IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Anschrift1:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Anschrift10 IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Anschrift10:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Anschrift11 IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Anschrift11:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Anschrift12 IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Anschrift12:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Anschrift2 IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Anschrift2:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Anschrift3 IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Anschrift3:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Anschrift4 IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Anschrift4:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Anschrift5 IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Anschrift5:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Anschrift6 IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Anschrift6:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Anschrift7 IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Anschrift7:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Anschrift8 IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Anschrift8:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Anschrift9 IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Anschrift9:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.BriefAnr IN FRAME F-Main EXP-LABEL EXP-FORMAT */ ASSIGN RowObject.BriefAnr:READ-ONLY IN FRAME F-Main = TRUE. ASSIGN E_Anschrift:RETURN-INSERTED IN FRAME F-Main = TRUE E_Anschrift:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Knr IN FRAME F-Main EXP-LABEL EXP-FORMAT */ ASSIGN RowObject.Knr:READ-ONLY IN FRAME F-Main = TRUE. ASSIGN RowObject.Mail:POPUP-MENU IN FRAME F-Main = MENU POPUP-MENU-Mail:HANDLE RowObject.Mail:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Natel IN FRAME F-Main EXP-LABEL EXP-FORMAT */ ASSIGN RowObject.Natel:POPUP-MENU IN FRAME F-Main = MENU POPUP-MENU-Natel:HANDLE RowObject.Natel:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Tel-1 IN FRAME F-Main EXP-LABEL EXP-FORMAT */ ASSIGN RowObject.Tel-1:POPUP-MENU IN FRAME F-Main = MENU POPUP-MENU-Tel-1:HANDLE RowObject.Tel-1:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Tel-2 IN FRAME F-Main EXP-LABEL EXP-FORMAT */ ASSIGN RowObject.Tel-2:POPUP-MENU IN FRAME F-Main = MENU POPUP-MENU-Tel-2:HANDLE RowObject.Tel-2:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Tel-3 IN FRAME F-Main EXP-LABEL EXP-FORMAT */ ASSIGN RowObject.Tel-3:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Tel-4 IN FRAME F-Main EXP-LABEL EXP-FORMAT */ ASSIGN RowObject.Tel-4:READ-ONLY IN FRAME F-Main = TRUE. /* _RUN-TIME-ATTRIBUTES-END */ &ANALYZE-RESUME /* Setting information for Queries and Browse Widgets fields */ &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 SELF-NAME RowObject.Mail &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL RowObject.Mail vTableWin ON LEFT-MOUSE-DBLCLICK OF RowObject.Mail IN FRAME F-Main /* Mail */ DO: IF FMut THEN RETURN NO-APPLY. cSubject = ''. cAttach = ''. cText = ''. DO WITH FRAME {&FRAME-NAME}: RUN SEND_MAIL_BY_MAILADRESSE ( INPUT SELF:SCREEN-VALUE , '', INPUT cSubject, INPUT cText, INPUT cAttach ). DYNAMIC-FUNCTION('SETENTRYFELD', INPUT 'Mail' ) NO-ERROR. APPLY 'U1'. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME m_Anschriften_neu_erstellen &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL m_Anschriften_neu_erstellen vTableWin ON CHOOSE OF MENU-ITEM m_Anschriften_neu_erstellen /* Anschriften neu erstellen */ DO: DEF VAR Ja AS LOG NO-UNDO. ja = DYNAMIC-FUNCTION('ANTWORT_Ja':U, INPUT 1005 ) NO-ERROR. IF NOT ja THEN RETURN NO-APPLY. RUN NEUE_ANSCHRIFT. APPLY 'U1'. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME m_Browseranzeige_neu_erstelle &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL m_Browseranzeige_neu_erstelle vTableWin ON CHOOSE OF MENU-ITEM m_Browseranzeige_neu_erstelle /* Browseranzeige neu erstellen */ DO: DEF VAR Ja AS LOG NO-UNDO. ja = DYNAMIC-FUNCTION('ANTWORT_Ja':U, INPUT 1006 ) NO-ERROR. IF NOT ja THEN RETURN NO-APPLY. RUN NEUE_BROWSERANZEIGE. APPLY 'U1'. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME RowObject.Natel &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL RowObject.Natel vTableWin ON LEFT-MOUSE-DBLCLICK OF RowObject.Natel IN FRAME F-Main /* Natel */ DO: IF NOT VALID-HANDLE(hKontainer) THEN hKontainer = DYNAMIC-FUNCTION('getContainerSource':U) NO-ERROR. RUN TELEFONIEREN IN hKontainer ( rowObject.Natel:SCREEN-VALUE IN FRAME {&FRAME-NAME} ). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME RowObject.Tel-1 &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL RowObject.Tel-1 vTableWin ON LEFT-MOUSE-DBLCLICK OF RowObject.Tel-1 IN FRAME F-Main /* Telefon Geschäft */ DO: IF NOT VALID-HANDLE(hKontainer) THEN hKontainer = DYNAMIC-FUNCTION('getContainerSource':U) NO-ERROR. RUN TELEFONIEREN IN hKontainer ( rowObject.Tel-1:SCREEN-VALUE IN FRAME {&FRAME-NAME} ). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME RowObject.Tel-2 &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL RowObject.Tel-2 vTableWin ON LEFT-MOUSE-DBLCLICK OF RowObject.Tel-2 IN FRAME F-Main /* Telefon Privat */ DO: IF NOT VALID-HANDLE(hKontainer) THEN hKontainer = DYNAMIC-FUNCTION('getContainerSource':U) NO-ERROR. RUN TELEFONIEREN IN hKontainer ( rowObject.Tel-2:SCREEN-VALUE IN FRAME {&FRAME-NAME} ). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME RowObject.Tel-4 &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL RowObject.Tel-4 vTableWin ON LEFT-MOUSE-DBLCLICK OF RowObject.Tel-4 IN FRAME F-Main /* Fax Privat */ DO: IF NOT VALID-HANDLE(hKontainer) THEN hKontainer = DYNAMIC-FUNCTION('getContainerSource':U) NO-ERROR. RUN TELEFONIEREN IN hKontainer ( rowObject.Tel-4:SCREEN-VALUE IN FRAME {&FRAME-NAME} ). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME X_Natel &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL X_Natel vTableWin ON CHOOSE OF MENU-ITEM X_Natel /* Telefonieren */ DO: IF NOT VALID-HANDLE(hKontainer) THEN hKontainer = DYNAMIC-FUNCTION('getContainerSource':U) NO-ERROR. RUN TELEFONIEREN IN hKontainer ( rowObject.Natel:SCREEN-VALUE IN FRAME {&FRAME-NAME} ). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME X_send_Mail &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL X_send_Mail vTableWin ON CHOOSE OF MENU-ITEM X_send_Mail /* send Mail */ DO: DEFINE VARIABLE cMail AS CHARACTER NO-UNDO. IF FMut THEN RETURN NO-APPLY. cSubject = ''. cAttach = ''. cText = ''. DO WITH FRAME {&FRAME-NAME}: cMail = rowObject.Mail:SCREEN-VALUE. RUN SEND_MAIL_BY_MAILADRESSE ( INPUT cMail , '', INPUT cSubject, INPUT cText, INPUT cAttach ). DYNAMIC-FUNCTION('SETENTRYFELD', INPUT 'Mail' ) NO-ERROR. APPLY 'U1'. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME X_Telefongeschaeft &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL X_Telefongeschaeft vTableWin ON CHOOSE OF MENU-ITEM X_Telefongeschaeft /* Telefonieren */ DO: IF NOT VALID-HANDLE(hKontainer) THEN hKontainer = DYNAMIC-FUNCTION('getContainerSource':U) NO-ERROR. RUN TELEFONIEREN IN hKontainer ( rowObject.Tel-1:SCREEN-VALUE IN FRAME {&FRAME-NAME} ). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME X_Telefonprivat &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL X_Telefonprivat vTableWin ON CHOOSE OF MENU-ITEM X_Telefonprivat /* Telefonieren */ DO: IF NOT VALID-HANDLE(hKontainer) THEN hKontainer = DYNAMIC-FUNCTION('getContainerSource':U) NO-ERROR. RUN TELEFONIEREN IN hKontainer ( rowObject.Tel-2:SCREEN-VALUE IN FRAME {&FRAME-NAME} ). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &UNDEFINE SELF-NAME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK vTableWin /* *************************** Main Block *************************** */ /* Triggers ------------------------------------------------------ */ ON 'RETURN':U OF FRAME {&FRAME-NAME} ANYWHERE DO: RUN RETURN_FELD ( INPUT SELF:HANDLE ). IF RETURN-VALUE = 'TAB' THEN DO: APPLY 'TAB' TO SELF. RETURN NO-APPLY. END. END. ON 'ENTRY':U OF FRAME {&FRAME-NAME} ANYWHERE DO: RUN ENTRY_FELD_TEST ( INPUT SELF:HANDLE ). IF RETURN-VALUE = 'ERROR' THEN DO: APPLY 'ENTRY' TO SELF. RETURN NO-APPLY. END. IF RETURN-VALUE = 'APPLY' THEN DO: RETURN NO-APPLY. END. END. ON 'LEAVE':U OF FRAME {&FRAME-NAME} ANYWHERE DO: RUN LEAVE_FELD_TEST ( INPUT SELF:HANDLE ). IF RETURN-VALUE = 'ERROR' THEN DO: APPLY 'ENTRY' TO SELF. RETURN NO-APPLY. END. IF RETURN-VALUE = 'APPLY' THEN DO: RETURN NO-APPLY. END. END. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN RUN initializeObject. &ENDIF /************************ INTERNAL PROCEDURES ********************/ 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 addRecord vTableWin PROCEDURE addRecord : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ FNeu = TRUE. FMut = TRUE. RUN SUPER. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE cancelRecord vTableWin PROCEDURE cancelRecord : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ /* 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 copyRecord vTableWin PROCEDURE copyRecord : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ FNeu = TRUE. FMut = TRUE. FCopy = TRUE. RUN SUPER. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE deleteRecord vTableWin PROCEDURE deleteRecord : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR Ja AS LOG NO-UNDO. Ja = DYNAMIC-FUNCTION( 'ANTWORT_JA':U, INPUT 1000 ). IF NOT Ja THEN DO: PUBLISH 'TOOLBAR' ( INPUT 'CANCEL':U ). RETURN NO-APPLY. END. RUN SUPER. /* Code placed here will execute AFTER standard behavior. */ END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disableFields vTableWin PROCEDURE disableFields : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE INPUT PARAMETER pcFieldType AS CHARACTER NO-UNDO. DO WITH FRAME {&FRAME-NAME}: END. RUN SUPER( INPUT pcFieldType). IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT TRUE ). IF NUM-ENTRIES('{&KEY_FELDER}', ',') > 0 THEN DO: RUN FARBE_FELDER ( INPUT Fenster, INPUT '{&KEY_FELDER}', INPUT 15 ). END. DO WITH FRAME {&FRAME-NAME}: END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI vTableWin _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 displayFields vTableWin PROCEDURE displayFields : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE INPUT PARAMETER pcColValues AS CHARACTER NO-UNDO. OldColValues = pcColValues. OldColList = DYNAMIC-FUNCTION('getDisplayedFields':U). IF FNeu THEN RUN FEHLWERTE ( INPUT pcColValues ). DO WITH FRAME {&FRAME-NAME}: END. RUN SUPER( INPUT pcColValues). DO WITH FRAME {&FRAME-NAME}: E_Anschrift = ' ' + rowObject.Anschrift3:SCREEN-VALUE + CHR(10) + ' ' + rowObject.Anschrift4:SCREEN-VALUE + CHR(10) + ' ' + rowObject.Anschrift5:SCREEN-VALUE + CHR(10) + ' ' + rowObject.Anschrift6:SCREEN-VALUE + CHR(10) + ' ' + rowObject.Anschrift7:SCREEN-VALUE + CHR(10) + ' ' + rowObject.Anschrift8:SCREEN-VALUE + CHR(10) + ' ' + rowObject.Anschrift9:SCREEN-VALUE + CHR(10) + ' ' + rowObject.Anschrift10:SCREEN-VALUE + CHR(10) + ' ' + rowObject.Anschrift11:SCREEN-VALUE + CHR(10) + ' ' + rowObject.Anschrift12:SCREEN-VALUE + CHR(10). E_Anschrift:SCREEN-VALUE = E_Anschrift. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableFields vTableWin PROCEDURE enableFields : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ /* Code placed here will execute PRIOR to standard behavior. */ /* RUN SUPER. */ IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT FALSE ). IF NUM-ENTRIES('{&NUR_LESEN}', ',') > 0 THEN DO: RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&NUR_LESEN}', INPUT TRUE ). END. DO WITH FRAME {&FRAME-NAME}: END. IF FNeu THEN RETURN. IF NUM-ENTRIES('{&KEY_FELDER}', ',') > 0 THEN DO: RUN SCHUETZE_FELDER ( INPUT Fenster, INPUT '{&KEY_FELDER}', INPUT TRUE ). END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject vTableWin PROCEDURE enableObject : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ { incl/viwenableobject.i } RUN SUPER. IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT TRUE ). END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_FELD_TEST vTableWin PROCEDURE ENTRY_FELD_TEST : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF INPUT PARAMETER ipHandle AS HANDLE NO-UNDO. DEF VAR FeldName AS CHAR NO-UNDO. DEF VAR FeldInhalt AS CHAR NO-UNDO. AdFirma = DYNAMIC-FUNCTION ('getADFirma':U) NO-ERROR. FeldName = ''. FeldInhalt = ''. IF NOT VALID-HANDLE(ipHandle) THEN RETURN ''. IF ipHandle:TYPE = 'FRAME' THEN RETURN ''. IF ipHandle:TYPE = 'WINDOW' THEN RETURN ''. FeldName = ipHandle:NAME. IF ipHandle:TYPE = 'FILL-IN' OR ipHandle:TYPE = 'COMBO-BOX' OR ipHandle:TYPE = 'TOGGLE-BOX' THEN FeldInhalt = ipHandle:SCREEN-VALUE. RETURN ''. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE FEHLWERTE vTableWin PROCEDURE FEHLWERTE : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF INPUT PARAMETER pcColValues AS CHAR NO-UNDO. DEF VAR FwFelder AS CHAR NO-UNDO. DEF VAR FwFeld AS CHAR NO-UNDO. DEF VAR FwValue AS CHAR NO-UNDO. DEF VAR ix AS INT NO-UNDO. DEF VAR i1 AS INT NO-UNDO. GET-KEY-VALUE SECTION 'Fw???????' KEY ? VALUE FwFelder. DO ix = 1 TO NUM-ENTRIES(FwFelder, ','): FwFeld = ENTRY (ix , FwFelder , ','). i1 = LOOKUP(FwFeld, oldColList, ',') + 1. IF i1 < 2 THEN NEXT. GET-KEY-VALUE SECTION 'Fw???????' KEY FwFeld VALUE FwValue. ENTRY(i1, pcColValues, CHR(1)) = FwValue NO-ERROR. END. IF FCopy THEN DO: END. OldColValues = pcColValues. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LEAVE_FELD_TEST vTableWin PROCEDURE LEAVE_FELD_TEST : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF INPUT PARAMETER ipHandle AS HANDLE NO-UNDO. DEF VAR FeldName AS CHAR NO-UNDO. DEF VAR FeldInhalt AS CHAR NO-UNDO. DEF VAR ix AS INT NO-UNDO. IF FMut = FALSE THEN RETURN ''. FeldName = ''. FeldInhalt = ''. IF NOT VALID-HANDLE(ipHandle) THEN RETURN ''. IF ipHandle:TYPE = 'FRAME' THEN RETURN ''. IF ipHandle:TYPE = 'WINDOW' THEN RETURN ''. FeldName = ipHandle:NAME. IF ipHandle:TYPE = 'FILL-IN' OR ipHandle:TYPE = 'COMBO-BOX' OR ipHandle:TYPE = 'TOGGLE-BOX' THEN FeldInhalt = ipHandle:SCREEN-VALUE. IF LOOKUP(FeldName, '{&LETZTES_FELD}', ',') > 0 THEN DO: APPLY 'ALT-S'. RETURN 'APPLY'. END. RETURN ''. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE NEUE_ANSCHRIFT vTableWin PROCEDURE NEUE_ANSCHRIFT : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR Mandant AS CHAR NO-UNDO. DEF VAR VAnschrift AS CHAR NO-UNDO. DEF VAR ix AS INT NO-UNDO. DEF VAR sHandle AS HANDLE NO-UNDO. SESSION:SET-WAIT-STATE ( 'GENERAL' ). Mandant = DYNAMIC-FUNCTION('GETADMANDANT':U) NO-ERROR. FOR EACH Adresse USE-INDEX Adresse-k1 WHERE Adresse.Firma = Mandant AND Adresse.AnschrFix = FALSE: VAnschrift = Adresse.Firma1 + CHR(11) + Adresse.Firma2 + CHR(11) + Adresse.NAME + CHR(11) + Adresse.Vorname + CHR(11) + Adresse.Zusatz1 + CHR(11) + Adresse.Zusatz2 + CHR(11) + Adresse.Strasse + CHR(11) + Adresse.Postfach + CHR(11) + Adresse.Lkz + CHR(11) + Adresse.Plz + CHR(11) + Adresse.Ort + CHR(11) + Adresse.Titel + CHR(11) + String(Adresse.Sprcd) + CHR(11) + String(Adresse.Anrcd). VAnschrift = DYNAMIC-FUNCTION('MAKEANSCHRIFT':U, VAnschrift) NO-ERROR. DO ix = 1 TO 12: Adresse.Anschrift[ix] = ENTRY(ix, VAnschrift, CHR(11)). END. Adresse.BriefAnr = ENTRY(13, VAnschrift, CHR(11) ). END. sHandle = DYNAMIC-FUNCTION('getDataSource':U) NO-ERROR. IF VALID-HANDLE(sHandle) THEN DO: DYNAMIC-FUNCTION('closeQuery':U IN sHandle ) NO-ERROR. DYNAMIC-FUNCTION('openQuery':U IN sHandle ) NO-ERROR. END. SESSION:SET-WAIT-STATE ( '' ). END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE NEUE_BROWSERANZEIGE vTableWin PROCEDURE NEUE_BROWSERANZEIGE : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR Mandant AS CHAR NO-UNDO. DEF VAR VAnschrift AS CHAR NO-UNDO. DEF VAR ix AS INT NO-UNDO. DEF VAR sHandle AS HANDLE NO-UNDO. SESSION:SET-WAIT-STATE ( 'GENERAL' ). Mandant = DYNAMIC-FUNCTION('GETADMANDANT':U) NO-ERROR. FOR EACH Adresse USE-INDEX Adresse-k1 WHERE Adresse.Firma = Mandant: VAnschrift = Adresse.Firma1 + CHR(11) + Adresse.Firma2 + CHR(11) + Adresse.NAME + CHR(11) + Adresse.Vorname + CHR(11) + Adresse.Strasse + CHR(11) + Adresse.Plz + CHR(11) + Adresse.Ort. VAnschrift = DYNAMIC-FUNCTION('MAKEBROWSERANZEIGE':U, INPUT VAnschrift) NO-ERROR. Adresse.Anzeig_Br = VAnschrift. END. sHandle = DYNAMIC-FUNCTION('getDataSource':U) NO-ERROR. IF VALID-HANDLE(sHandle) THEN DO: DYNAMIC-FUNCTION('closeQuery':U IN sHandle ) NO-ERROR. DYNAMIC-FUNCTION('openQuery':U IN sHandle ) NO-ERROR. END. SESSION:SET-WAIT-STATE ( '' ). END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE RETURN_FELD vTableWin PROCEDURE RETURN_FELD : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF INPUT PARAMETER ipHandle AS HANDLE NO-UNDO. DEF VAR FeldName AS CHAR NO-UNDO. IF FMut = FALSE THEN RETURN ''. IF NOT VALID-HANDLE(ipHandle) THEN RETURN ''. IF ipHandle:TYPE = 'FRAME' THEN RETURN ''. IF ipHandle:TYPE = 'WINDOW' THEN RETURN ''. FeldName = ipHandle:NAME. IF LOOKUP(FeldName, '{&ENABLED-FIELDS}', ' ') > 0 THEN DO: RETURN 'TAB'. END. FeldName = 'rowObject.' + FeldName. IF LOOKUP(FeldName, '{&ENABLED-FIELDS}', ' ') > 0 THEN DO: RETURN 'TAB'. END. RETURN ''. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE updateMode vTableWin PROCEDURE updateMode : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE INPUT PARAMETER pcMode AS CHARACTER NO-UNDO. CASE pcMode: WHEN 'updateBegin' THEN DO: END. WHEN 'updateEnd' THEN DO: END. END. RUN SUPER( INPUT pcMode). CASE pcMode: WHEN 'updateBegin' THEN DO: FMut = TRUE. END. WHEN 'updateEnd' THEN DO: FNeu = FALSE. FMut = FALSE. FCopy = FALSE. END. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE updateRecord vTableWin PROCEDURE updateRecord : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DO WITH FRAME {&FRAME-NAME}: END. RUN SUPER. /* Code placed here will execute AFTER standard behavior. */ END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME