| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118 |
- &ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2
- &ANALYZE-RESUME
- &Scoped-define WINDOW-NAME CURRENT-WINDOW
- &Scoped-define FRAME-NAME gAdrKopie
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS gAdrKopie
- /*------------------------------------------------------------------------
- File:
- Description: from cntnrdlg.w - ADM2 SmartDialog Template
- Input Parameters:
- <none>
- Output Parameters:
- <none>
- Author:
- Created:
- ------------------------------------------------------------------------*/
- /* This .W file was created with the Progress AppBuilder. */
- /*----------------------------------------------------------------------*/
- /* Create an unnamed pool to store all the widgets created
- by this procedure. This is a good default which assures
- that this procedure's triggers and internal procedures
- will execute in this procedure's storage, and that proper
- cleanup will occur on deletion of the procedure. */
- CREATE WIDGET-POOL.
- /* *************************** Definitions ************************** */
- /* Parameters Definitions --- */
- DEFINE INPUT-OUTPUT PARAMETER ioArtnr AS INTEGER NO-UNDO.
- DEFINE INPUT-OUTPUT PARAMETER ioInhalt AS INTEGER NO-UNDO.
- DEFINE INPUT-OUTPUT PARAMETER ioJahr AS INTEGER NO-UNDO.
- DEFINE INPUT-OUTPUT PARAMETER ioPreis AS LOG NO-UNDO.
- DEFINE INPUT-OUTPUT PARAMETER ioStaff AS LOG NO-UNDO.
- DEFINE INPUT-OUTPUT PARAMETER ioSpez AS LOG NO-UNDO.
- DEFINE INPUT-OUTPUT PARAMETER ioLagOrt AS LOG NO-UNDO.
- DEFINE INPUT-OUTPUT PARAMETER ioSeineNr AS LOG NO-UNDO.
- DEFINE INPUT-OUTPUT PARAMETER ioEAN AS LOG NO-UNDO.
- DEFINE INPUT-OUTPUT PARAMETER ioOK AS LOG NO-UNDO.
- /* Local Variable Definitions --- */
- DEFINE VARIABLE MaxPage AS INTEGER NO-UNDO.
- DEFINE VARIABLE AktSeite AS INTEGER NO-UNDO.
- DEFINE VARIABLE FMutFlag AS LOG NO-UNDO.
- DEFINE VARIABLE iArtnr AS INTEGER NO-UNDO.
- DEFINE VARIABLE iInhalt AS INTEGER NO-UNDO.
- DEFINE VARIABLE iJahr AS INTEGER NO-UNDO.
- DEFINE VARIABLE Firma AS CHARACTER NO-UNDO.
- DEFINE BUFFER bArtst FOR Artst.
- DEFINE BUFFER bArtLief FOR ArtLief.
- DEFINE TEMP-TABLE tArtPreis LIKE ArtPreis.
- DEFINE TEMP-TABLE tArtStaff LIKE ArtStaff.
- DEFINE TEMP-TABLE tSpezPrei LIKE SpezPrei.
- DEFINE TEMP-TABLE tArtLief LIKE ArtLief .
- DEFINE TEMP-TABLE tArtLager LIKE ArtLager.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
- /* ******************** Preprocessor Definitions ******************** */
- &Scoped-define PROCEDURE-TYPE SmartDialog
- &Scoped-define DB-AWARE no
- &Scoped-define ADM-CONTAINER DIALOG-BOX
- &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
- /* Name of designated FRAME-NAME and/or first browse and/or first query */
- &Scoped-define FRAME-NAME gAdrKopie
- /* Standard List Definitions */
- &Scoped-Define ENABLED-OBJECTS RECT-4 F_Artnr F_Inhalt F_Jahr T_P T_F T_S ~
- T_LagOrt T_SeineNr T_EAN Btn_OK Btn_Cancel
- &Scoped-Define DISPLAYED-OBJECTS F_Artnr F_Inhalt F_Jahr T_P T_F T_S ~
- T_LagOrt T_SeineNr T_EAN
- /* Custom List Definitions */
- /* List-1,List-2,List-3,List-4,List-5,List-6 */
- &Scoped-define List-6 F_Artnr F_Inhalt F_Jahr T_P T_F T_S T_LagOrt ~
- T_SeineNr T_EAN
- /* _UIB-PREPROCESSOR-BLOCK-END */
- &ANALYZE-RESUME
- /* *********************** Control Definitions ********************** */
- /* Define a dialog box */
- /* Definitions of the field level widgets */
- DEFINE BUTTON Btn_Cancel AUTO-END-KEY
- LABEL "&abbrechen"
- SIZE 15 BY 1.
- DEFINE BUTTON Btn_OK AUTO-GO
- LABEL "OK"
- SIZE 15 BY 1.
- DEFINE VARIABLE F_Artnr AS INTEGER FORMAT "999999":U INITIAL 0
- LABEL "Artnr/Ihalt/Jahr"
- VIEW-AS FILL-IN NATIVE
- SIZE 11 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_Inhalt AS INTEGER FORMAT "9999":U INITIAL 0
- LABEL "/"
- VIEW-AS FILL-IN NATIVE
- SIZE 8 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_Jahr AS INTEGER FORMAT "9999":U INITIAL 0
- LABEL "/"
- VIEW-AS FILL-IN NATIVE
- SIZE 8 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE RECTANGLE RECT-4
- EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
- SIZE 68 BY 12.38.
- DEFINE VARIABLE T_EAN AS LOGICAL INITIAL YES
- LABEL "Strichcodes"
- VIEW-AS TOGGLE-BOX
- SIZE 40 BY 1 NO-UNDO.
- DEFINE VARIABLE T_F AS LOGICAL INITIAL YES
- LABEL "Staffelungen"
- VIEW-AS TOGGLE-BOX
- SIZE 40 BY 1 NO-UNDO.
- DEFINE VARIABLE T_LagOrt AS LOGICAL INITIAL YES
- LABEL "Lagerort"
- VIEW-AS TOGGLE-BOX
- SIZE 40 BY 1 NO-UNDO.
- DEFINE VARIABLE T_P AS LOGICAL INITIAL YES
- LABEL "Preise"
- VIEW-AS TOGGLE-BOX
- SIZE 40 BY 1 NO-UNDO.
- DEFINE VARIABLE T_S AS LOGICAL INITIAL YES
- LABEL "Spezialpreise"
- VIEW-AS TOGGLE-BOX
- SIZE 40 BY 1 NO-UNDO.
- DEFINE VARIABLE T_SeineNr AS LOGICAL INITIAL YES
- LABEL "Artnr des Lieferanten (Seine Nr)"
- VIEW-AS TOGGLE-BOX
- SIZE 40 BY 1 NO-UNDO.
- /* ************************ Frame Definitions *********************** */
- DEFINE FRAME gAdrKopie
- F_Artnr AT ROW 2.52 COL 20 COLON-ALIGNED WIDGET-ID 2
- F_Inhalt AT ROW 2.52 COL 34 COLON-ALIGNED WIDGET-ID 4
- F_Jahr AT ROW 2.52 COL 45 COLON-ALIGNED WIDGET-ID 6
- T_P AT ROW 5 COL 15
- T_F AT ROW 6 COL 15
- T_S AT ROW 7 COL 15
- T_LagOrt AT ROW 8 COL 15 WIDGET-ID 8
- T_SeineNr AT ROW 9 COL 15 WIDGET-ID 10
- T_EAN AT ROW 10 COL 15 WIDGET-ID 12
- Btn_OK AT ROW 12 COL 15
- Btn_Cancel AT ROW 12 COL 40
- RECT-4 AT ROW 1.24 COL 2
- SPACE(0.99) SKIP(0.23)
- WITH VIEW-AS DIALOG-BOX KEEP-TAB-ORDER
- SIDE-LABELS NO-UNDERLINE THREE-D SCROLLABLE
- TITLE "Was Soll kopiert werden ?"
- CANCEL-BUTTON Btn_Cancel.
- /* *********************** Procedure Settings ************************ */
- &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
- /* Settings for THIS-PROCEDURE
- Type: SmartDialog
- Allow: Basic,Browse,DB-Fields,Query,Smart
- Container Links: Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
- Design Page: 1
- Other Settings: COMPILE
- */
- &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB gAdrKopie
- /* ************************* Included-Libraries *********************** */
- {src/adm2/containr.i}
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- /* *********** Runtime Attributes and AppBuilder Settings *********** */
- &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
- /* SETTINGS FOR DIALOG-BOX gAdrKopie
- FRAME-NAME */
- ASSIGN
- FRAME gAdrKopie:SCROLLABLE = FALSE
- FRAME gAdrKopie:HIDDEN = TRUE.
- /* SETTINGS FOR FILL-IN F_Artnr IN FRAME gAdrKopie
- 6 */
- /* SETTINGS FOR FILL-IN F_Inhalt IN FRAME gAdrKopie
- 6 */
- /* SETTINGS FOR FILL-IN F_Jahr IN FRAME gAdrKopie
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_EAN IN FRAME gAdrKopie
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_F IN FRAME gAdrKopie
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_LagOrt IN FRAME gAdrKopie
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_P IN FRAME gAdrKopie
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_S IN FRAME gAdrKopie
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_SeineNr IN FRAME gAdrKopie
- 6 */
- /* _RUN-TIME-ATTRIBUTES-END */
- &ANALYZE-RESUME
- /* Setting information for Queries and Browse Widgets fields */
- &ANALYZE-SUSPEND _QUERY-BLOCK DIALOG-BOX gAdrKopie
- /* Query rebuild information for DIALOG-BOX gAdrKopie
- _Options = "SHARE-LOCK"
- _Query is NOT OPENED
- */ /* DIALOG-BOX gAdrKopie */
- &ANALYZE-RESUME
-
- /* ************************ Control Triggers ************************ */
- &Scoped-define SELF-NAME gAdrKopie
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gAdrKopie gAdrKopie
- ON END-ERROR OF FRAME gAdrKopie /* Was Soll kopiert werden ? */
- DO:
- RUN ENDE.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gAdrKopie gAdrKopie
- ON GO OF FRAME gAdrKopie /* Was Soll kopiert werden ? */
- DO:
- RUN ENDE_PROGRAMM ( INPUT THIS-PROCEDURE:FILE-NAME ) NO-ERROR.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gAdrKopie gAdrKopie
- ON WINDOW-CLOSE OF FRAME gAdrKopie /* Was Soll kopiert werden ? */
- DO:
- RUN ENDE.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME Btn_Cancel
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Cancel gAdrKopie
- ON CHOOSE OF Btn_Cancel IN FRAME gAdrKopie /* abbrechen */
- DO:
- ioOK = FALSE.
- RUN ENDE.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME Btn_OK
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_OK gAdrKopie
- ON CHOOSE OF Btn_OK IN FRAME gAdrKopie /* OK */
- DO:
- DEFINE VARIABLE iArtnr AS INTEGER INIT 200000 NO-UNDO.
- DO WITH FRAME {&FRAME-NAME}:
- ASSIGN {&list-6}.
-
- DO WHILE F_Artnr = 0 :
- FIND LAST Artst NO-LOCK USE-INDEX Artst-k1
- WHERE Artst.Firma = Firma
- AND Artst.Artnr < iArtnr NO-ERROR.
- IF NOT AVAILABLE Artst THEN
- DO:
- iArtnr = iArtnr + 100000.
- NEXT.
- END.
- iArtnr = Artst.Artnr + 1.
- DO WHILE TRUE:
- IF CAN-FIND ( Artst NO-LOCK
- WHERE Artst.Firma = Firma
- AND Artst.Artnr = iArtnr ) THEN
- DO:
- iArtnr = iArtnr + 1.
- NEXT.
- END.
- F_Artnr = iArtnr.
- LEAVE.
- END.
- END.
- DISPLAY {&List-6}.
- IF CAN-FIND ( Artst NO-LOCK USE-INDEX Artst-k1
- WHERE Artst.Firma = Firma
- AND Artst.Artnr = F_Artnr
- AND Artst.Inhalt = F_Inhalt
- AND Artst.Jahr = F_Jahr )
- THEN
- DO:
- MESSAGE 'Diese Artikelnummer kommt bereits vor' SKIP
- 'bitte andere Nummer wählen '
- VIEW-AS ALERT-BOX INFORMATION.
- APPLY 'ENTRY' TO F_Artnr.
- RETURN NO-APPLY.
- END.
- ASSIGN
- ioArtnr = F_Artnr
- ioInhalt = F_Inhalt
- ioJahr = F_Jahr
- ioPreis = T_P
- ioStaff = T_F
- ioSpez = T_S
- ioSeineNr = T_SeineNr
- ioEAN = T_EAN
- ioLagOrt = T_LagOrt
- ioOK = TRUE.
- END.
-
- MESSAGE SUBSTITUTE('Soll der Artikel auf diese neue Nummer &1 kopiert werden ?',
- F_Artnr )
- VIEW-AS ALERT-BOX INFORMATION
- BUTTONS YES-NO
- UPDATE ioOK.
- IF NOT ioOK THEN
- DO:
- RUN ENDE.
- RETURN NO-APPLY.
- END.
-
- RUN ARTIKEL_KOPIEREN.
-
- IF RETURN-VALUE <> 'OK' THEN
- DO:
- MESSAGE 'Fehler beim kopeiren des Artikels' SKIP
- 'Kopiervorgang abgebrochen '
- VIEW-AS ALERT-BOX ERROR.
- APPLY 'ENTRY' TO F_Artnr.
- RETURN NO-APPLY.
- END.
-
-
-
- RUN ENDE.
- RETURN NO-APPLY.
-
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME T_EAN
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_EAN gAdrKopie
- ON RETURN OF T_EAN IN FRAME gAdrKopie /* Strichcodes */
- DO:
- APPLY 'TAB' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME T_F
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_F gAdrKopie
- ON RETURN OF T_F IN FRAME gAdrKopie /* Staffelungen */
- DO:
- APPLY 'TAB' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME T_LagOrt
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_LagOrt gAdrKopie
- ON RETURN OF T_LagOrt IN FRAME gAdrKopie /* Lagerort */
- DO:
- APPLY 'TAB' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME T_P
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_P gAdrKopie
- ON RETURN OF T_P IN FRAME gAdrKopie /* Preise */
- DO:
- APPLY 'TAB' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME T_S
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_S gAdrKopie
- ON RETURN OF T_S IN FRAME gAdrKopie /* Spezialpreise */
- DO:
- APPLY 'TAB' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME T_SeineNr
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_SeineNr gAdrKopie
- ON RETURN OF T_SeineNr IN FRAME gAdrKopie /* Artnr des Lieferanten (Seine Nr) */
- DO:
- APPLY 'TAB' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &UNDEFINE SELF-NAME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK gAdrKopie
- /* *************************** Main Block *************************** */
- MaxPage = 1.
- AktSeite = 1.
- Firma = DYNAMIC-FUNCTION('getMandant':U) NO-ERROR.
- SESSION:DATA-ENTRY-RETURN = TRUE.
- SUBSCRIBE TO 'TOOLBAR' ANYWHERE.
- /* TRIGGERS ------------------------------------------------------ */
- ON 'ALT-CURSOR-RIGHT':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN NEXTPAGE.
- END.
- ON 'ALT-CURSOR-LEFT':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN PREVPAGE.
- END.
- ON 'U1':U OF {&WINDOW-NAME} ANYWHERE
- DO:
- RUN ENTRY_CURSOR.
- END.
- /*
- ON 'PAGE-DOWN':U OF {&WINDOW-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'Next':U ).
- END.
- ON 'PAGE-UP':U OF {&WINDOW-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'Prev':U ).
- END.
-
- ON 'ALT-RETURN':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'UPDATE':U ).
- END.
- ON 'ALT-INS':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'ADD':U ).
- END.
- ON 'ALT-DEL':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'DELETE':U ).
- END.
- ON 'ALT-R':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'RESET':U ).
- END.
- ON 'F9':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'SAVE':U ).
- END.
- ON 'ALT-S':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'SAVE':U ).
- END.
- ON 'ALT-K':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'COPY':U ).
- END.
- ON 'END-ERROR':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- FMutFlag = DYNAMIC-FUNCTION('getMutflagAlt':U) NO-ERROR.
- IF FMutFlag = FALSE THEN DO:
- RUN ENDE.
- RETURN NO-APPLY.
- END.
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'CANCEL':U ).
- RETURN NO-APPLY.
- END.
- */
- /* ------------------------------------------------------------------ */
- {src/adm2/dialogmn.i}
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- /* ********************** Internal Procedures *********************** */
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects gAdrKopie _ADM-CREATE-OBJECTS
- PROCEDURE adm-create-objects :
- /*------------------------------------------------------------------------------
- Purpose: Create handles for all SmartObjects used in this procedure.
- After SmartObjects are initialized, then SmartLinks are added.
- Parameters: <none>
- ------------------------------------------------------------------------------*/
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ARTIKEL_KOPIEREN gAdrKopie
- PROCEDURE ARTIKEL_KOPIEREN :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEFINE VARIABLE lOK AS LOG INIT FALSE NO-UNDO.
-
- DEFINE BUFFER bArtst FOR Artst .
- DEFINE BUFFER bArtBez FOR ArtBez .
- EMPTY TEMP-TABLE tArtPreis.
- FOR EACH ArtPreis NO-LOCK
- WHERE ArtPreis.Firma = Firma
- AND ArtPreis.Artnr = iArtnr
- AND ArtPreis.Inhalt = iInhalt
- AND ArtPreis.Jahr = iJahr
- AND ArtPreis.Ab_Datum <= TODAY:
- IF ArtPreis.Aktion THEN
- DO:
- FIND AktPreis NO-LOCK USE-INDEX AktPreis-k1
- WHERE AktPreis.Firma = ArtPreis.Firma
- AND AktPreis.Artnr = ArtPreis.Artnr
- AND AktPreis.Inhalt = ArtPreis.Inhalt
- AND AktPreis.Jahr = ArtPreis.Jahr
- AND AktPreis.Ab_Datum = ArtPreis.Ab_Datum
- AND AktPreis.Grp = ArtPreis.Preis_Grp NO-ERROR.
- IF AVAILABLE AktPreis AND
- AktPreis.Bis_Datum < TODAY THEN NEXT.
- END.
- CREATE tArtPreis.
- BUFFER-COPY ArtPreis
- EXCEPT Artnr Inhalt Jahr
- TO tArtPreis
- ASSIGN
- tArtPreis.Artnr = ioArtnr
- tArtPreis.Inhalt = ioInhalt
- tArtPreis.Jahr = ioJahr.
- END.
-
- EMPTY TEMP-TABLE tArtStaff.
- FOR EACH ArtStaff NO-LOCK
- WHERE ArtStaff.Firma = Firma
- AND ArtStaff.Artnr = iArtnr
- AND ArtStaff.Inhalt = iInhalt
- AND ArtStaff.Jahr = iJahr
- AND ArtStaff.Ab_Datum <= TODAY:
- CREATE tArtStaff.
- BUFFER-COPY ArtStaff
- EXCEPT Artnr Inhalt Jahr
- TO tArtStaff
- ASSIGN
- tArtStaff.Artnr = ioArtnr
- tArtStaff.Inhalt = ioInhalt
- tArtStaff.Jahr = ioJahr.
- END.
- EMPTY TEMP-TABLE tSpezPrei.
- FOR EACH SpezPrei NO-LOCK
- WHERE SpezPrei.Firma = Firma
- AND SpezPrei.Artnr = iArtnr
- AND SpezPrei.Inhalt = iInhalt
- AND SpezPrei.Jahr = iJahr
- AND SpezPrei.Bis_Datum >= TODAY:
- CREATE tSpezPrei.
- BUFFER-COPY SpezPrei
- EXCEPT Artnr Inhalt Jahr
- TO tSpezPrei
- ASSIGN
- tSpezPrei.Artnr = ioArtnr
- tSpezPrei.Inhalt = ioInhalt
- tSpezPrei.Jahr = ioJahr.
- END.
-
- EMPTY TEMP-TABLE tArtLager.
- FOR EACH ArtLager NO-LOCK
- WHERE ArtLager.Firma = Firma
- AND ArtLager.Artnr = iArtnr
- AND ArtLager.Inhalt = iInhalt
- AND ArtLager.Jahr = iJahr:
- CREATE tArtLager.
- ASSIGN
- tArtLager.Firma = Firma
- tArtLager.Artnr = ioArtnr
- tArtLager.Inhalt = ioInhalt
- tArtLager.Jahr = ioJahr
- tArtLager.Lager = ArtLager.Lager
- tArtLager.Mind_Bestand = ArtLager.Mind_Bestand
- tArtLager.Meld_Bestand = ArtLager.Meld_Bestand
- tArtLager.Soll_Bestand = ArtLager.Soll_Bestand
- tArtLager.Ort = (IF T_LagOrt THEN ArtLager.Ort ELSE '').
- END.
-
- EMPTY TEMP-TABLE tArtLief.
- FOR EACH ArtLief NO-LOCK
- WHERE ArtLief.Firma = Firma
- AND ArtLief.Artnr = iArtnr
- AND ArtLief.Inhalt = iInhalt
- AND ArtLief.Jahr = iJahr:
- CREATE tArtLief.
- BUFFER-COPY ArtLief
- EXCEPT
- Artnr
- Inhalt
- Jahr
- L_EP
- L_EP_FRW
- L_Rabatt
- TO tArtLief
- ASSIGN
- tArtLief.Artnr = ioArtnr
- tArtLief.Inhalt = ioInhalt
- tArtLief.Jahr = ioJahr.
- .
- IF ArtLief.Haupt THEN
- DO:
- ASSIGN
- tArtLief.L_EP = ArtLief.L_EP
- tArtLief.L_EP_FRW = ArtLief.L_EP_FRW
- tArtLief.Rabatt = ArtLief.Rabatt.
- END.
- IF NOT T_SeineNr THEN ASSIGN tArtLief.S_Artnr = ''
- tArtLief.S_Bez1 = ''
- tArtLief.S_Bez2 = ''.
- IF NOT T_EAN THEN ASSIGN tArtLief.Strichcode_KGeb = ''
- tArtLief.Strichcode_VGeb = ''
- tArtLief.Strichcode_GGeb = ''.
- END.
- REPEAT TRANSACTION ON ERROR UNDO, LEAVE:
- FIND Artst NO-LOCK
- WHERE Artst.Firma = Firma
- AND Artst.Artnr = iArtnr
- AND Artst.Inhalt = iInhalt
- AND Artst.Jahr = iJahr.
- CREATE bArtst.
- BUFFER-COPY Artst
- EXCEPT Artnr Inhalt Jahr FremdNr
- LEP DEP
- Bestand Reserviert Bestellt
- Letzt_Eing Letzt_Ausg MDat Msbkb
- TO bArtst
- ASSIGN
- bArtst.Artnr = ioArtnr
- bArtst.Inhalt = ioInhalt
- bArtst.Jahr = ioJahr
- bArtst.EDat = TODAY
- bArtst.Esbkb = DYNAMIC-FUNCTION('getDBUser':U)
- bArtst.AKtiv = TRUE
- bArtst.MutFlag = FALSE NO-ERROR
- .
- IF NOT T_EAN THEN bArtst.Strichcode = ''.
- RELEASE bArtst.
-
- IF ioPreis THEN
- DO:
- FOR EACH tArtPreis
- WHERE tArtPreis.Aktion = FALSE
- BREAK BY tArtPreis.Preis_Grp
- BY tArtPreis.ab_Datum DESCENDING:
- IF NOT FIRST-OF ( tArtPreis.Preis_Grp ) THEN NEXT.
- CREATE ArtPreis.
- BUFFER-COPY tArtPreis
- EXCEPT ab_Datum
- TO ArtPreis
- ASSIGN
- ArtPreis.ab_Datum = TODAY.
- END.
- FOR EACH tArtPreis
- WHERE tArtPreis.Aktion = TRUE
- BREAK BY tArtPreis.Preis_Grp
- BY tArtPreis.ab_Datum DESCENDING:
- IF NOT FIRST-OF ( tArtPreis.Preis_Grp ) THEN NEXT.
- CREATE ArtPreis.
- BUFFER-COPY tArtPreis
- EXCEPT ab_Datum
- TO ArtPreis
- ASSIGN
- ArtPreis.ab_Datum = TODAY.
- END.
- RELEASE ArtPreis.
- END.
-
- IF ioStaff THEN
- DO:
- FOR EACH tArtStaff
- BREAK BY tArtStaff.Preis_Grp
- BY tArtStaff.Menge
- BY tArtStaff.ab_Datum DESCENDING:
- IF NOT FIRST-OF ( tArtStaff.Menge ) THEN NEXT.
- CREATE ArtStaff.
- BUFFER-COPY tArtStaff
- EXCEPT ab_Datum
- TO ArtStaff
- ASSIGN
- ArtStaff.ab_Datum = TODAY.
- END.
- RELEASE ArtStaff.
- END.
-
- IF ioSpez THEN
- DO:
- FOR EACH tSpezPrei:
- CREATE SpezPrei.
- BUFFER-COPY tSpezPrei TO SpezPrei.
- END.
- RELEASE SpezPrei.
- END.
-
- FOR EACH tArtLager:
- CREATE ArtLager.
- BUFFER-COPY tArtLager TO ArtLager.
- IF NOT T_LagOrt THEN ArtLager.Ort = ''.
- RELEASE ArtLager.
- END.
-
- FOR EACH tArtLief:
- CREATE ArtLief.
- BUFFER-COPY tArtLief TO ArtLief.
- IF NOT T_EAN THEN
- ASSIGN
- ArtLief.Strichcode_GGeb = ''
- ArtLief.Strichcode_VGeb = ''
- ArtLief.Strichcode_KGeb = ''.
- IF NOT T_SeineNr THEN
- ASSIGN
- ArtLief.S_Artnr = ''.
- RELEASE ArtLief.
- END.
-
- FOR EACH ArtBez NO-LOCK
- WHERE ArtBez.Firma = Firma
- AND ArtBez.Artnr = iArtnr
- AND ArtBez.Inhalt = iInhalt
- AND ArtBez.Jahr = iJahr:
- FIND bArtBez
- WHERE bArtBez.Firma = Firma
- AND bArtBez.Artnr = ioArtnr
- AND bArtBez.Inhalt = ioInhalt
- AND bArtBez.Jahr = ioJahr
- AND bArtBez.Sprcd = ArtBez.Sprcd NO-ERROR.
- IF NOT AVAILABLE bArtBez THEN
- DO:
- CREATE bArtBez.
- ASSIGN
- bArtBez.Firma = Firma
- bArtBez.Artnr = ioArtnr
- bArtBez.Inhalt = ioInhalt
- bArtBez.Jahr = ioJahr
- bArtBez.Sprcd = ArtBez.Sprcd NO-ERROR.
- END.
- BUFFER-COPY ArtBez EXCEPT Artnr Inhalt Jahr Sprcd WortIndex
- TO bArtBez.
- RELEASE bArtBez.
- END.
- lOK = TRUE.
- LEAVE.
- END.
-
- IF lOK THEN RETURN 'OK'.
- ELSE RETURN 'NOK'.
-
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE changePage gAdrKopie
- PROCEDURE changePage :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- /* Code placed here will execute PRIOR to standard behavior. */
- RUN SUPER.
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
- CASE AktSeite:
- WHEN 1 THEN
- DO:
- /* RUN addLink ( h_dyntoolbar , 'TableIO':U , h_v-auftr ). */
- /* RUN addLink ( h_dyntoolbar , 'Navigation':U , h_d-auftr ). */
- /* RUN ToolbarInit ( INPUT h_d-auftr ). */
- RUN ENTRY_CURSOR.
- END.
- WHEN 2 THEN
- DO:
- RUN ENTRY_CURSOR.
- END.
- END CASE.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI gAdrKopie _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 gAdrKopie.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject gAdrKopie
- PROCEDURE enableObject :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- ASSIGN
- F_Artnr = ioArtnr
- F_Inhalt = ioInhalt
- F_Jahr = ioJahr
- iArtnr = ioArtnr
- iInhalt = ioInhalt
- iJahr = ioJahr
- T_P = ioPreis
- T_F = ioStaff
- T_S = ioSpez
- T_LagOrt = ioLagOrt
- T_SeineNr = ioSeineNr
- T_EAN = ioEAN
- NO-ERROR.
- RUN SUPER.
- RUN FENSTER_TITEL ( INPUT FRAME {&FRAME-NAME}:HANDLE ) NO-ERROR.
-
- IF ioOK = ? THEN
- DO WITH FRAME {&FRAME-NAME}:
- ioOK = FALSE.
- /* T_SeineNr:SENSITIVE = FALSE.*/
- /* T_EAN :SENSITIVE = FALSE.*/
- END.
-
- FIND FIRST bArtst NO-LOCK
- WHERE bArtst.Firma = Firma
- AND bArtst.Artnr = F_Artnr
- AND bArtst.Inhalt = F_Inhalt
- AND bArtst.Jahr = F_Jahr NO-ERROR.
- FIND FIRST bArtLief NO-LOCK
- WHERE bArtLief.Firma = Firma
- AND bArtLief.Artnr = F_Artnr
- AND bArtLief.Inhalt = F_Inhalt
- AND bArtLief.Jahr = F_Jahr
- AND bArtLief.Haupt = TRUE NO-ERROR.
- DO WITH FRAME {&FRAME-NAME}:
- DISPLAY {&List-6}.
- END.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI gAdrKopie _DEFAULT-ENABLE
- PROCEDURE enable_UI :
- /*------------------------------------------------------------------------------
- Purpose: ENABLE the User Interface
- Parameters: <none>
- Notes: Here we display/view/enable the widgets in the
- user-interface. In addition, OPEN all queries
- associated with each FRAME and BROWSE.
- These statements here are based on the "Other
- Settings" section of the widget Property Sheets.
- ------------------------------------------------------------------------------*/
- DISPLAY F_Artnr F_Inhalt F_Jahr T_P T_F T_S T_LagOrt T_SeineNr T_EAN
- WITH FRAME gAdrKopie.
- ENABLE RECT-4 F_Artnr F_Inhalt F_Jahr T_P T_F T_S T_LagOrt T_SeineNr T_EAN
- Btn_OK Btn_Cancel
- WITH FRAME gAdrKopie.
- VIEW FRAME gAdrKopie.
- {&OPEN-BROWSERS-IN-QUERY-gAdrKopie}
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENDE gAdrKopie
- PROCEDURE ENDE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U) NO-ERROR.
- IF AktSeite > 1 THEN
- DO:
- RUN selectPage ( INPUT 1 ).
- RETURN NO-APPLY.
- END.
- RUN ENDE_PROGRAMM ( INPUT THIS-PROCEDURE:FILE-NAME ).
- APPLY 'GO' TO FRAME {&FRAME-NAME}.
- RETURN NO-APPLY.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_CURSOR gAdrKopie
- PROCEDURE ENTRY_CURSOR :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
- CASE AktSeite:
- /* WHEN 1 THEN RUN applyEntry IN h_v-adresse ( INPUT ? ). */
- /* WHEN 2 THEN RUN applyEntry IN h_f-adrkomm ( INPUT ? ). */
- /* WHEN 3 THEN RUN applyEntry IN h_b-auftbb ( INPUT ? ). */
- /* WHEN 4 THEN RUN applyEntry IN h_b-aufdet ( INPUT ? ). */
- /* WHEN 5 THEN RUN applyEntry IN h_b-aufstreu ( INPUT ? ). */
- /* WHEN 6 THEN RUN applyEntry IN h_b-auffak ( INPUT ? ). */
- /* WHEN 7 THEN RUN applyEntry IN h_b-position ( INPUT ? ). */
- END CASE.
- RETURN NO-APPLY.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE exitObject gAdrKopie
- PROCEDURE exitObject :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- RUN ENDE.
- RETURN NO-APPLY.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE NEXTPAGE gAdrKopie
- PROCEDURE NEXTPAGE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
- IF AktSeite = MaxPage THEN AktSeite = 1.
- ELSE AktSeite = AktSeite + 1.
- RUN selectPage ( INPUT AktSeite ).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE PREVPAGE gAdrKopie
- PROCEDURE PREVPAGE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
- IF AktSeite = 1 THEN AktSeite = MaxPage.
- ELSE AktSeite = AktSeite - 1.
- RUN selectPage ( INPUT AktSeite ).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE selectPage gAdrKopie
- PROCEDURE selectPage :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- DEFINE INPUT PARAMETER piPageNum AS INTEGER NO-UNDO.
- DEFINE VARIABLE FMutFlag AS LOG NO-UNDO.
- DEFINE VARIABLE MutProg AS CHARACTER NO-UNDO.
- FMutFlag = DYNAMIC-FUNCTION('getMutflagAlt':U) NO-ERROR.
- DO WHILE TRUE:
- IF NOT FMutFlag THEN LEAVE.
- MutProg = DYNAMIC-FUNCTION('GETMUTPROG':U).
- IF MutProg <> THIS-PROCEDURE:FILE-NAME THEN LEAVE.
- RETURN NO-APPLY.
- END.
- CASE piPageNum:
- END CASE.
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
- CASE AktSeite:
- WHEN 1 THEN
- DO:
- /* RUN removeLink ( h_dyntoolbar , 'TableIO':U , h_v-auftr ). */
- /* RUN removeLink ( h_dyntoolbar , 'Navigation':U , h_d-auftr ). */
- END.
- END CASE.
- RUN SUPER( INPUT piPageNum).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
|