| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994 |
- &ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2
- &ANALYZE-RESUME
- &Scoped-define WINDOW-NAME CURRENT-WINDOW
- &Scoped-define FRAME-NAME gKundengrpUmsatz
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS gKundengrpUmsatz
- /*------------------------------------------------------------------------
- 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 --- */
- /* Local Variable Definitions --- */
- DEF VAR MaxPage AS INT NO-UNDO.
- DEF VAR AktSeite AS INT NO-UNDO.
- DEF VAR FMutFlag AS LOG NO-UNDO.
- DEF VAR Firma AS CHAR NO-UNDO.
- DEF VAR AdFirma AS CHAR NO-UNDO.
- DEF VAR iVer AS INT NO-UNDO.
- DEF VAR cVer AS CHAR NO-UNDO.
- DEF VAR iVerband AS INT NO-UNDO.
- DEF VAR cVerband AS CHAR NO-UNDO.
- DEF VAR cVorlage AS CHAR NO-UNDO.
- DEF VAR cDaten AS CHAR NO-UNDO.
- DEF VAR cDokument AS CHAR NO-UNDO.
- DEF VAR cDateiName AS CHAR NO-UNDO.
- DEF VAR Zelle AS CHAR NO-UNDO.
- DEF VAR excelAppl AS COM-HANDLE NO-UNDO.
- DEF VAR cZeile AS CHAR NO-UNDO.
- DEF VAR AnzKol AS INT NO-UNDO.
- DEF VAR FKol AS LOG NO-UNDO EXTENT 20.
- DEF VAR bKol AS CHAR NO-UNDO.
- DEF VAR MonStart AS INT NO-UNDO.
- DEF BUFFER BArtbw FOR Artbw.
- DEF TEMP-TABLE TUmsatz FIELD Kgr AS INT
- FIELD Knr AS INT
- FIELD Vp_Lf AS DEC DECIMALS 3 EXTENT 13
- FIELD Me_Lf AS DEC DECIMALS 3 EXTENT 13
- FIELD Vp_V1 AS DEC DECIMALS 3 EXTENT 13
- FIELD Me_V1 AS DEC DECIMALS 3 EXTENT 13
- FIELD Vp_V2 AS DEC DECIMALS 3 EXTENT 13
- FIELD Me_V2 AS DEC DECIMALS 3 EXTENT 13
- FIELD Vp_V3 AS DEC DECIMALS 3 EXTENT 13
- FIELD Me_V3 AS DEC DECIMALS 3 EXTENT 13
- FIELD Adresse AS CHAR
- FIELD Gruppe AS CHAR
- INDEX TUmsatz-k1
- Kgr
- Knr .
- DEF TEMP-TABLE GUmsatz LIKE TUmsatz.
- /* _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 gKundengrpUmsatz
- /* Standard List Definitions */
- &Scoped-Define ENABLED-OBJECTS F_VonKnr F_BisKnr CB_Vertreter CB_Verband ~
- F_Kundengrp F_Preisgrp F_VonArtnr F_BisArtnr F_Hersteller F_Warengrp ~
- F_VonDatum F_BisDatum T_Totale T_Kum T_Vorjahr_1 T_Vorjahr_2 T_Vorjahr_3 ~
- T_Geloeschte T_Mengen T_Liter Btn_OK Btn_Cancel RECT-12
- &Scoped-Define DISPLAYED-OBJECTS F_VonKnr F_BisKnr CB_Vertreter CB_Verband ~
- F_Kundengrp F_Preisgrp F_VonArtnr F_BisArtnr F_Hersteller F_Warengrp ~
- F_VonDatum F_BisDatum T_Totale T_Kum T_Vorjahr_1 T_Vorjahr_2 T_Vorjahr_3 ~
- T_Geloeschte T_Mengen T_Liter
- /* Custom List Definitions */
- /* List-1,List-2,List-3,List-4,List-5,List-6 */
- &Scoped-define List-6 F_VonKnr F_BisKnr CB_Vertreter CB_Verband F_Kundengrp ~
- F_Preisgrp F_VonArtnr F_BisArtnr F_Hersteller F_Warengrp F_VonDatum ~
- F_BisDatum T_Totale T_Kum T_Vorjahr_1 T_Vorjahr_2 T_Vorjahr_3 T_Geloeschte ~
- T_Mengen T_Liter
- /* _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 14 BY 1.19.
- DEFINE BUTTON Btn_OK
- IMAGE-UP FILE "grafik/results%.ico":U
- IMAGE-INSENSITIVE FILE "grafik/results%.ico":U
- LABEL "Excel"
- SIZE 7 BY 1.71.
- DEFINE VARIABLE CB_Verband AS CHARACTER FORMAT "X(256)":U
- LABEL "Verband"
- VIEW-AS COMBO-BOX INNER-LINES 5
- LIST-ITEM-PAIRS "Item 1","Item 1"
- DROP-DOWN-LIST
- SIZE 40 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE CB_Vertreter AS CHARACTER FORMAT "X(256)":U
- LABEL "Vertreter"
- VIEW-AS COMBO-BOX INNER-LINES 5
- LIST-ITEM-PAIRS "Item 1","Item 1"
- DROP-DOWN-LIST
- SIZE 40 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_BisArtnr AS INTEGER FORMAT "999999":U INITIAL 0
- LABEL "-"
- VIEW-AS FILL-IN NATIVE
- SIZE 11 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_BisDatum AS DATE FORMAT "99.99.9999":U
- LABEL "-"
- VIEW-AS FILL-IN NATIVE
- SIZE 16 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_BisKnr AS INTEGER FORMAT "999999":U INITIAL 0
- LABEL "-"
- VIEW-AS FILL-IN NATIVE
- SIZE 11 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_Hersteller AS CHARACTER FORMAT "X(256)":U
- LABEL "Hersteller"
- VIEW-AS FILL-IN NATIVE
- SIZE 46.4 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_Kundengrp AS CHARACTER FORMAT "X(256)":U
- LABEL "Kudengruppen"
- VIEW-AS FILL-IN NATIVE
- SIZE 46.4 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_Preisgrp AS CHARACTER FORMAT "X(256)":U
- LABEL "Preisgruppen"
- VIEW-AS FILL-IN NATIVE
- SIZE 46.4 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_VonArtnr AS INTEGER FORMAT "999999":U INITIAL 0
- LABEL "von - bis Artikelnummer"
- VIEW-AS FILL-IN NATIVE
- SIZE 11 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_VonDatum AS DATE FORMAT "99.99.9999":U
- LABEL "von - bis Datum"
- VIEW-AS FILL-IN NATIVE
- SIZE 16 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_VonKnr AS INTEGER FORMAT "999999":U INITIAL 0
- LABEL "von - bis Knr"
- VIEW-AS FILL-IN NATIVE
- SIZE 11 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_Warengrp AS CHARACTER FORMAT "X(256)":U
- LABEL "Warengruppen"
- VIEW-AS FILL-IN NATIVE
- SIZE 46.4 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE RECTANGLE RECT-12
- EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
- SIZE 84 BY 20.48.
- DEFINE VARIABLE T_Geloeschte AS LOGICAL INITIAL NO
- LABEL "inaktive Kunden auch ?"
- VIEW-AS TOGGLE-BOX
- SIZE 30 BY 1 NO-UNDO.
- DEFINE VARIABLE T_Kum AS LOGICAL INITIAL NO
- LABEL "nur Totale (Kummulativ)"
- VIEW-AS TOGGLE-BOX
- SIZE 30 BY 1 NO-UNDO.
- DEFINE VARIABLE T_Liter AS LOGICAL INITIAL NO
- LABEL "in Liter?"
- VIEW-AS TOGGLE-BOX
- SIZE 12 BY 1 NO-UNDO.
- DEFINE VARIABLE T_Mengen AS LOGICAL INITIAL NO
- LABEL "Mengen ?"
- VIEW-AS TOGGLE-BOX
- SIZE 16.2 BY 1 NO-UNDO.
- DEFINE VARIABLE T_Totale AS LOGICAL INITIAL NO
- LABEL "nur Kundengruppentotale"
- VIEW-AS TOGGLE-BOX
- SIZE 30 BY 1 NO-UNDO.
- DEFINE VARIABLE T_Vorjahr_1 AS LOGICAL INITIAL NO
- LABEL "Vorjahr 1"
- VIEW-AS TOGGLE-BOX
- SIZE 30 BY 1 NO-UNDO.
- DEFINE VARIABLE T_Vorjahr_2 AS LOGICAL INITIAL NO
- LABEL "Vorjahr 2"
- VIEW-AS TOGGLE-BOX
- SIZE 30 BY 1 NO-UNDO.
- DEFINE VARIABLE T_Vorjahr_3 AS LOGICAL INITIAL NO
- LABEL "Vorjahr 3"
- VIEW-AS TOGGLE-BOX
- SIZE 30 BY 1 NO-UNDO.
- /* ************************ Frame Definitions *********************** */
- DEFINE FRAME gKundengrpUmsatz
- F_VonKnr AT ROW 1.52 COL 28 COLON-ALIGNED
- F_BisKnr AT ROW 1.52 COL 41 COLON-ALIGNED
- CB_Vertreter AT ROW 2.52 COL 28 COLON-ALIGNED
- CB_Verband AT ROW 3.52 COL 28 COLON-ALIGNED
- F_Kundengrp AT ROW 5.52 COL 28 COLON-ALIGNED
- F_Preisgrp AT ROW 6.52 COL 28 COLON-ALIGNED
- F_VonArtnr AT ROW 8 COL 28 COLON-ALIGNED
- F_BisArtnr AT ROW 8 COL 41 COLON-ALIGNED
- F_Hersteller AT ROW 9 COL 28 COLON-ALIGNED
- F_Warengrp AT ROW 10 COL 28 COLON-ALIGNED
- F_VonDatum AT ROW 11 COL 28 COLON-ALIGNED
- F_BisDatum AT ROW 11 COL 47 COLON-ALIGNED
- T_Totale AT ROW 12 COL 30
- T_Kum AT ROW 13 COL 30 WIDGET-ID 2
- T_Vorjahr_1 AT ROW 14 COL 30
- T_Vorjahr_2 AT ROW 15 COL 30
- T_Vorjahr_3 AT ROW 16 COL 30
- T_Geloeschte AT ROW 17 COL 30
- T_Mengen AT ROW 18 COL 30
- T_Liter AT ROW 18 COL 48
- Btn_OK AT ROW 19.38 COL 30
- Btn_Cancel AT ROW 19.62 COL 55.8
- RECT-12 AT ROW 1.24 COL 2
- SPACE(0.99) SKIP(0.22)
- WITH VIEW-AS DIALOG-BOX KEEP-TAB-ORDER
- SIDE-LABELS NO-UNDERLINE THREE-D SCROLLABLE
- TITLE "Umsätze nach Kundengruppen"
- 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 gKundengrpUmsatz
- /* ************************* 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 gKundengrpUmsatz
- FRAME-NAME Custom */
- ASSIGN
- FRAME gKundengrpUmsatz:SCROLLABLE = FALSE
- FRAME gKundengrpUmsatz:HIDDEN = TRUE.
- /* SETTINGS FOR COMBO-BOX CB_Verband IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR COMBO-BOX CB_Vertreter IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR FILL-IN F_BisArtnr IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR FILL-IN F_BisDatum IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR FILL-IN F_BisKnr IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR FILL-IN F_Hersteller IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR FILL-IN F_Kundengrp IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR FILL-IN F_Preisgrp IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR FILL-IN F_VonArtnr IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR FILL-IN F_VonDatum IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR FILL-IN F_VonKnr IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR FILL-IN F_Warengrp IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_Geloeschte IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_Kum IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_Liter IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_Mengen IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_Totale IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_Vorjahr_1 IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_Vorjahr_2 IN FRAME gKundengrpUmsatz
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_Vorjahr_3 IN FRAME gKundengrpUmsatz
- 6 */
- /* _RUN-TIME-ATTRIBUTES-END */
- &ANALYZE-RESUME
- /* Setting information for Queries and Browse Widgets fields */
- &ANALYZE-SUSPEND _QUERY-BLOCK DIALOG-BOX gKundengrpUmsatz
- /* Query rebuild information for DIALOG-BOX gKundengrpUmsatz
- _Options = "SHARE-LOCK"
- _Query is NOT OPENED
- */ /* DIALOG-BOX gKundengrpUmsatz */
- &ANALYZE-RESUME
-
- /* ************************ Control Triggers ************************ */
- &Scoped-define SELF-NAME gKundengrpUmsatz
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gKundengrpUmsatz gKundengrpUmsatz
- ON END-ERROR OF FRAME gKundengrpUmsatz /* Umsätze nach Kundengruppen */
- DO:
- RUN ENDE.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gKundengrpUmsatz gKundengrpUmsatz
- ON GO OF FRAME gKundengrpUmsatz /* Umsätze nach Kundengruppen */
- DO:
- /*
- RUN ENDE_PROGRAMM ( INPUT THIS-PROCEDURE:FILE-NAME ) NO-ERROR.
- */
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gKundengrpUmsatz gKundengrpUmsatz
- ON WINDOW-CLOSE OF FRAME gKundengrpUmsatz /* Umsätze nach Kundengruppen */
- 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 gKundengrpUmsatz
- ON CHOOSE OF Btn_Cancel IN FRAME gKundengrpUmsatz /* abbrechen */
- DO:
- 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 gKundengrpUmsatz
- ON CHOOSE OF Btn_OK IN FRAME gKundengrpUmsatz /* Excel */
- DO:
- DO WITH FRAME {&FRAME-NAME}:
- Btn_OK:SENSITIVE = FALSE.
- Btn_Cancel:SENSITIVE = FALSE.
- SESSION:SET-WAIT-STATE ('GENERAL').
- END.
- RUN REPORT.
- DO WITH FRAME {&FRAME-NAME}:
- Btn_OK:SENSITIVE = TRUE.
- Btn_Cancel:SENSITIVE = TRUE.
- SESSION:SET-WAIT-STATE('').
- END.
- RUN ENDE.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME CB_Verband
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Verband gKundengrpUmsatz
- ON RETURN OF CB_Verband IN FRAME gKundengrpUmsatz /* Verband */
- DO:
- APPLY 'TAB' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME CB_Vertreter
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Vertreter gKundengrpUmsatz
- ON RETURN OF CB_Vertreter IN FRAME gKundengrpUmsatz /* Vertreter */
- DO:
- APPLY 'TAB' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME F_BisKnr
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_BisKnr gKundengrpUmsatz
- ON ALT-F OF F_BisKnr IN FRAME gKundengrpUmsatz /* - */
- DO:
- DEF VAR iRecid AS RECID NO-UNDO.
- RUN 'g-suchen-adresse.w':U ( 'DEB', OUTPUT iRecid ).
- IF iRecid = ? OR
- iRecid = 0 THEN RETURN NO-APPLY.
- FIND Adresse NO-LOCK WHERE RECID(Adresse) = iRecid NO-ERROR.
- SELF:SCREEN-VALUE = STRING(Adresse.Knr).
- APPLY 'ENTRY' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME F_Hersteller
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Hersteller gKundengrpUmsatz
- ON RIGHT-MOUSE-CLICK OF F_Hersteller IN FRAME gKundengrpUmsatz /* Hersteller */
- DO:
- RUN g-auswahl-tabelle.w ( INPUT SELF, INPUT 'HERST' ).
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME F_Kundengrp
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Kundengrp gKundengrpUmsatz
- ON HELP OF F_Kundengrp IN FRAME gKundengrpUmsatz /* Kudengruppen */
- DO:
- RUN g-auswahl-tabelle.w ( INPUT SELF, INPUT 'KUNDGRP' ).
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Kundengrp gKundengrpUmsatz
- ON RIGHT-MOUSE-CLICK OF F_Kundengrp IN FRAME gKundengrpUmsatz /* Kudengruppen */
- DO:
- RUN g-auswahl-tabelle.w ( INPUT SELF, INPUT 'KUNDGRP' ).
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME F_Preisgrp
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Preisgrp gKundengrpUmsatz
- ON HELP OF F_Preisgrp IN FRAME gKundengrpUmsatz /* Preisgruppen */
- DO:
- RUN g-auswahl-tabelle.w ( INPUT SELF, INPUT 'PREGRP' ).
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Preisgrp gKundengrpUmsatz
- ON RIGHT-MOUSE-CLICK OF F_Preisgrp IN FRAME gKundengrpUmsatz /* Preisgruppen */
- DO:
- RUN g-auswahl-tabelle.w ( INPUT SELF, INPUT 'PREGRP' ).
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME F_VonKnr
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_VonKnr gKundengrpUmsatz
- ON ALT-F OF F_VonKnr IN FRAME gKundengrpUmsatz /* von - bis Knr */
- DO:
- DEF VAR iRecid AS RECID NO-UNDO.
- RUN 'g-suchen-adresse.w':U ( 'DEB', OUTPUT iRecid ).
- IF iRecid = ? OR
- iRecid = 0 THEN RETURN NO-APPLY.
- FIND Adresse NO-LOCK WHERE RECID(Adresse) = iRecid NO-ERROR.
- SELF:SCREEN-VALUE = STRING(Adresse.Knr).
- F_BisKnr:SCREEN-VALUE = STRING(Adresse.Knr).
- APPLY 'ENTRY' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME F_Warengrp
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Warengrp gKundengrpUmsatz
- ON HELP OF F_Warengrp IN FRAME gKundengrpUmsatz /* Warengruppen */
- DO:
- RUN g-auswahl-tabelle.w ( INPUT SELF, INPUT 'KUNDGRP' ).
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Warengrp gKundengrpUmsatz
- ON RIGHT-MOUSE-CLICK OF F_Warengrp IN FRAME gKundengrpUmsatz /* Warengruppen */
- DO:
- RUN g-auswahl-wgr.w ( INPUT SELF ).
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME T_Geloeschte
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Geloeschte gKundengrpUmsatz
- ON RETURN OF T_Geloeschte IN FRAME gKundengrpUmsatz /* inaktive Kunden auch ? */
- DO:
- APPLY 'TAB' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME T_Kum
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Kum gKundengrpUmsatz
- ON RETURN OF T_Kum IN FRAME gKundengrpUmsatz /* nur Totale (Kummulativ) */
- DO:
- APPLY 'TAB' TO SELF.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME T_Mengen
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Mengen gKundengrpUmsatz
- ON RETURN OF T_Mengen IN FRAME gKundengrpUmsatz /* Mengen ? */
- DO:
- APPLY 'TAB' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME T_Totale
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Totale gKundengrpUmsatz
- ON RETURN OF T_Totale IN FRAME gKundengrpUmsatz /* nur Kundengruppentotale */
- DO:
- APPLY 'TAB' TO SELF.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME T_Vorjahr_1
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Vorjahr_1 gKundengrpUmsatz
- ON RETURN OF T_Vorjahr_1 IN FRAME gKundengrpUmsatz /* Vorjahr 1 */
- DO:
- APPLY 'TAB' TO SELF.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME T_Vorjahr_2
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Vorjahr_2 gKundengrpUmsatz
- ON RETURN OF T_Vorjahr_2 IN FRAME gKundengrpUmsatz /* Vorjahr 2 */
- DO:
- APPLY 'TAB' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Vorjahr_2 gKundengrpUmsatz
- ON VALUE-CHANGED OF T_Vorjahr_2 IN FRAME gKundengrpUmsatz /* Vorjahr 2 */
- DO:
- IF NOT SELF:SCREEN-VALUE BEGINS 'n' THEN DO WITH FRAME {&FRAME-NAME}:
- T_Vorjahr_1:SCREEN-VALUE = STRING(TRUE).
- END.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME T_Vorjahr_3
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Vorjahr_3 gKundengrpUmsatz
- ON RETURN OF T_Vorjahr_3 IN FRAME gKundengrpUmsatz /* Vorjahr 3 */
- DO:
- APPLY 'TAB' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Vorjahr_3 gKundengrpUmsatz
- ON VALUE-CHANGED OF T_Vorjahr_3 IN FRAME gKundengrpUmsatz /* Vorjahr 3 */
- DO:
- IF NOT SELF:SCREEN-VALUE BEGINS 'n' THEN DO WITH FRAME {&FRAME-NAME}:
- T_Vorjahr_1:SCREEN-VALUE = STRING(TRUE).
- T_Vorjahr_2:SCREEN-VALUE = STRING(TRUE).
- END.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &UNDEFINE SELF-NAME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK gKundengrpUmsatz
- /* *************************** Main Block *************************** */
- MaxPage = 1.
- AktSeite = 1.
- Firma = DYNAMIC-FUNCTION('GETMANDANT':U) NO-ERROR.
- AdFirma = DYNAMIC-FUNCTION('GETADMANDANT':U) NO-ERROR.
- SESSION:DATA-ENTRY-RETURN = TRUE.
- /* TRIGGERS ------------------------------------------------------ */
- /*
- 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 gKundengrpUmsatz _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 AUSGABE gKundengrpUmsatz
- PROCEDURE AUSGABE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR i1 AS INT NO-UNDO.
- DEF VAR iStart AS INT NO-UNDO.
- IF T_Mengen THEN DO:
- FOR EACH TUmsatz:
- DO i1 = 1 TO 13:
- ASSIGN TUmsatz.Vp_Lf[i1] = TUmsatz.Me_Lf[i1]
- TUmsatz.Vp_V1[i1] = TUmsatz.Me_V1[i1]
- TUmsatz.Vp_V2[i1] = TUmsatz.Me_V2[i1]
- TUmsatz.Vp_V3[i1] = TUmsatz.Me_V3[i1].
- END.
- END.
- FOR EACH GUmsatz:
- DO i1 = 1 TO 13:
- ASSIGN GUmsatz.Vp_Lf[i1] = GUmsatz.Me_Lf[i1]
- GUmsatz.Vp_V1[i1] = GUmsatz.Me_V1[i1]
- GUmsatz.Vp_V2[i1] = GUmsatz.Me_V2[i1]
- GUmsatz.Vp_V3[i1] = GUmsatz.Me_V3[i1].
- END.
- END.
- END.
- IF T_Kum THEN DO:
- RUN AUSGABE_KUMMULATIV.
- RETURN.
- END.
- iStart = 1.
- DO WHILE NOT T_Totale:
- FOR EACH TUmsatz USE-INDEX TUmsatz-k1 NO-LOCK
- BREAK BY TUmsatz.Kgr
- BY TUmsatz.Knr :
- IF FIRST-OF ( TUmsatz.Kgr ) THEN DO:
- IF NOT T_Totale THEN DO:
- PUT CONTROL STRING(TUmsatz.Kgr,'999 ')
- TUmsatz.Gruppe CHR(10).
- END.
- END.
- cZeile = ''.
- cZeile = cZeile + '£'
- + STRING(TUmsatz.Knr,'999999') + '£'
- + TUmsatz.Adresse + '£'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_Lf[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_Lf[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- IF T_Vorjahr_1 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V1[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V1[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF T_Vorjahr_2 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V2[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V2[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF T_Vorjahr_3 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V3[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V3[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF NOT LAST-OF ( TUmsatz.Kgr ) THEN NEXT.
- FIND FIRST GUmsatz WHERE GUmsatz.Kgr = TUmsatz.Kgr.
- cZeile = ''.
- cZeile = cZeile + 'Total '
- + GUmsatz.Gruppe + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_Lf[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_Lf[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- cZeile = ''.
- IF T_Vorjahr_1 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V1[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V1[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF T_Vorjahr_2 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V2[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V2[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF T_Vorjahr_3 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V3[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V3[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- PUT CONTROL '£' CHR(10).
- END.
- PUT CONTROL '£' CHR(10)
- '£' CHR(10).
- T_Totale = TRUE.
- END.
- DO WHILE T_Totale:
- FOR EACH TUmsatz:
- DELETE TUmsatz.
- END.
- FOR EACH GUmsatz:
- CREATE TUmsatz.
- BUFFER-COPY GUmsatz TO TUmsatz.
- DELETE GUmsatz.
- END.
- CREATE GUmsatz.
- ASSIGN GUmsatz.Kgr = 9999
- GUmsatz.Gruppe = 'Gesamttotal'.
- FOR EACH TUmsatz:
- DO i1 = iStart TO 13:
- ASSIGN GUmsatz.Me_Lf[i1] = GUmsatz.Me_Lf[i1] + TUmsatz.Me_Lf[i1]
- GUmsatz.Vp_Lf[i1] = GUmsatz.Vp_Lf[i1] + TUmsatz.Vp_Lf[i1]
- GUmsatz.Me_V1[i1] = GUmsatz.Me_V1[i1] + TUmsatz.Me_V1[i1]
- GUmsatz.Vp_V1[i1] = GUmsatz.Vp_V1[i1] + TUmsatz.Vp_V1[i1]
- GUmsatz.Me_V2[i1] = GUmsatz.Me_V2[i1] + TUmsatz.Me_V2[i1]
- GUmsatz.Vp_V2[i1] = GUmsatz.Vp_V2[i1] + TUmsatz.Vp_V2[i1]
- GUmsatz.Me_V3[i1] = GUmsatz.Me_V3[i1] + TUmsatz.Me_V3[i1]
- GUmsatz.Vp_V3[i1] = GUmsatz.Vp_V3[i1] + TUmsatz.Vp_V3[i1].
- END.
- END.
- FOR EACH TUmsatz USE-INDEX TUmsatz-k1 NO-LOCK
- BREAK BY TUmsatz.Kgr
- BY TUmsatz.Knr :
- cZeile = ''.
- cZeile = cZeile + '£'
- + STRING(TUmsatz.Kgr,'999') + '£'
- + TUmsatz.Gruppe + '£'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_Lf[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_Lf[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- IF T_Vorjahr_1 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V1[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V1[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF T_Vorjahr_2 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V2[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V2[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF T_Vorjahr_3 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V3[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V3[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- END.
- FIND FIRST GUmsatz.
- cZeile = ''.
- cZeile = cZeile
- + GUmsatz.Gruppe + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_Lf[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_Lf[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- IF T_Vorjahr_1 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V1[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V1[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10)
- '£' CHR(10).
- END.
- IF T_Vorjahr_2 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V2[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V2[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10)
- '£' CHR(10).
- END.
- IF T_Vorjahr_3 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££'.
- DO i1 = iStart TO AnzKol:
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V3[i1],'->>>>>>>>')) + '£'.
- END.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V3[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10)
- '£' CHR(10).
- END.
- LEAVE.
- END.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE AUSGABE_KUMMULATIV gKundengrpUmsatz
- PROCEDURE AUSGABE_KUMMULATIV :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR i1 AS INT NO-UNDO.
- DEF VAR iStart AS INT INIT 1 NO-UNDO.
- IF T_Mengen THEN DO:
- FOR EACH TUmsatz:
- DO i1 = 1 TO 13:
- ASSIGN TUmsatz.Vp_Lf[i1] = TUmsatz.Me_Lf[i1]
- TUmsatz.Vp_V1[i1] = TUmsatz.Me_V1[i1]
- TUmsatz.Vp_V2[i1] = TUmsatz.Me_V2[i1]
- TUmsatz.Vp_V3[i1] = TUmsatz.Me_V3[i1].
- END.
- END.
- FOR EACH GUmsatz:
- DO i1 = 1 TO 13:
- ASSIGN GUmsatz.Vp_Lf[i1] = GUmsatz.Me_Lf[i1]
- GUmsatz.Vp_V1[i1] = GUmsatz.Me_V1[i1]
- GUmsatz.Vp_V2[i1] = GUmsatz.Me_V2[i1]
- GUmsatz.Vp_V3[i1] = GUmsatz.Me_V3[i1].
- END.
- END.
- END.
- DO WHILE NOT T_Totale:
- FOR EACH TUmsatz USE-INDEX TUmsatz-k1 NO-LOCK
- BREAK BY TUmsatz.Kgr
- BY TUmsatz.Knr :
- IF FIRST-OF ( TUmsatz.Kgr ) THEN DO:
- IF NOT T_Totale THEN DO:
- PUT CONTROL STRING(TUmsatz.Kgr,'999 ')
- TUmsatz.Gruppe CHR(10).
- END.
- END.
- cZeile = ''.
- cZeile = cZeile + '£'
- + STRING(TUmsatz.Knr,'999999') + '£'
- + TUmsatz.Adresse + '£££'.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_Lf[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- IF T_Vorjahr_1 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££££'.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V1[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF T_Vorjahr_2 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££££'.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V2[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF T_Vorjahr_3 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££££'.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V3[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF NOT LAST-OF ( TUmsatz.Kgr ) THEN NEXT.
- FIND FIRST GUmsatz WHERE GUmsatz.Kgr = TUmsatz.Kgr.
- cZeile = ''.
- cZeile = cZeile + 'Total '
- + GUmsatz.Gruppe + '£££££'.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_Lf[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- cZeile = ''.
- IF T_Vorjahr_1 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££££'.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V1[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF T_Vorjahr_2 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££££'.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V2[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF T_Vorjahr_3 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££££'.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V3[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- PUT CONTROL '£' CHR(10).
- END.
- PUT CONTROL '£' CHR(10)
- '£' CHR(10).
- T_Totale = TRUE.
- END.
- DO WHILE T_Totale:
- FOR EACH TUmsatz:
- DELETE TUmsatz.
- END.
- FOR EACH GUmsatz:
- CREATE TUmsatz.
- BUFFER-COPY GUmsatz TO TUmsatz.
- DELETE GUmsatz.
- END.
- CREATE GUmsatz.
- ASSIGN GUmsatz.Kgr = 9999
- GUmsatz.Gruppe = 'Gesamttotal'.
- FOR EACH TUmsatz:
- DO i1 = iStart TO 13:
- ASSIGN GUmsatz.Me_Lf[i1] = GUmsatz.Me_Lf[i1] + TUmsatz.Me_Lf[i1]
- GUmsatz.Vp_Lf[i1] = GUmsatz.Vp_Lf[i1] + TUmsatz.Vp_Lf[i1]
- GUmsatz.Me_V1[i1] = GUmsatz.Me_V1[i1] + TUmsatz.Me_V1[i1]
- GUmsatz.Vp_V1[i1] = GUmsatz.Vp_V1[i1] + TUmsatz.Vp_V1[i1]
- GUmsatz.Me_V2[i1] = GUmsatz.Me_V2[i1] + TUmsatz.Me_V2[i1]
- GUmsatz.Vp_V2[i1] = GUmsatz.Vp_V2[i1] + TUmsatz.Vp_V2[i1]
- GUmsatz.Me_V3[i1] = GUmsatz.Me_V3[i1] + TUmsatz.Me_V3[i1]
- GUmsatz.Vp_V3[i1] = GUmsatz.Vp_V3[i1] + TUmsatz.Vp_V3[i1].
- END.
- END.
- FOR EACH TUmsatz USE-INDEX TUmsatz-k1 NO-LOCK
- BREAK BY TUmsatz.Kgr
- BY TUmsatz.Knr :
- cZeile = ''.
- cZeile = cZeile + '£'
- + STRING(TUmsatz.Kgr,'999') + '£'
- + TUmsatz.Gruppe + '£££'.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_Lf[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- IF T_Vorjahr_1 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££££'.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V1[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF T_Vorjahr_2 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££££'.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V2[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- IF T_Vorjahr_3 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££££'.
- cZeile = cZeile + TRIM(STRING(TUmsatz.Vp_V3[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- END.
- END.
- FIND FIRST GUmsatz.
- cZeile = ''.
- cZeile = cZeile
- + GUmsatz.Gruppe + '£££££'.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_Lf[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10).
- IF T_Vorjahr_1 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££££'.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V1[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10)
- '£' CHR(10).
- END.
- IF T_Vorjahr_2 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££££'.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V2[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10)
- '£' CHR(10).
- END.
- IF T_Vorjahr_3 THEN DO:
- cZeile = ''.
- cZeile = cZeile + '£££££'.
- cZeile = cZeile + TRIM(STRING(GUmsatz.Vp_V3[13],'->>>>>>>>')).
- PUT CONTROL cZeile CHR(10)
- '£' CHR(10).
- END.
- LEAVE.
- END.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE BEREINIGEN gKundengrpUmsatz
- PROCEDURE BEREINIGEN :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF INPUT PARAMETER ipHandle AS HANDLE NO-UNDO.
- DEF VAR cString AS CHAR NO-UNDO.
- DEF VAR i AS INT NO-UNDO.
- cString = ''.
- DO i = 1 TO LENGTH(ipHandle:SCREEN-VALUE):
- IF SUBSTRING(ipHandle:SCREEN-VALUE,i,1) < '0' OR
- SUBSTRING(ipHandle:SCREEN-VALUE,i,1) > '9' THEN DO:
- SUBSTRING(ipHandle:SCREEN-VALUE,i) = ','.
- END.
- END.
- DO i = 1 TO NUM-ENTRIES(ipHandle:SCREEN-VALUE, ','):
- IF cString <> '' THEN cString = cString + ','.
- cString = cString
- + STRING(INTEGER(ENTRY(i, ipHandle:SCREEN-VALUE, ',')),'999').
- END.
- ipHandle:SCREEN-VALUE = cString.
- RETURN.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI gKundengrpUmsatz _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 gKundengrpUmsatz.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject gKundengrpUmsatz
- PROCEDURE enableObject :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR cString AS CHAR NO-UNDO.
- DO WITH FRAME {&FRAME-NAME}:
- RUN COMBO_VERTRETER ( INPUT CB_Vertreter:HANDLE ).
- cString = CB_Vertreter:LIST-ITEM-PAIRS.
- IF cString <> '' THEN cString = cString + ';'.
- cString = cString + 'Alle Vertreter;999999'.
- CB_Vertreter:LIST-ITEM-PAIRS = cString.
- CB_Vertreter:SCREEN-VALUE = '999999'.
- RUN COMBO_VERBAND ( INPUT CB_Verband:HANDLE ).
- cString = CB_Verband:LIST-ITEM-PAIRS.
- IF cString = ';' THEN cString = ''.
- IF cString <> '' THEN cString = cString + ';'.
- cString = cString + 'Alle Verbände;999999'.
- CB_Verband:LIST-ITEM-PAIRS = cString.
- CB_Verband:SCREEN-VALUE = '999999'.
- END.
- RUN LESEN_FEHLWERTE.
- RUN SUPER.
- RUN FENSTER_TITEL ( INPUT FRAME {&FRAME-NAME}:HANDLE ) NO-ERROR.
- DO WITH FRAME {&FRAME-NAME}:
- ASSIGN {&list-6}.
- /*
- IF T_Liter = TRUE THEN T_HL:SENSITIVE = TRUE.
- ELSE T_HL:SENSITIVE = FALSE.
- */
- END.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI gKundengrpUmsatz _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_VonKnr F_BisKnr CB_Vertreter CB_Verband F_Kundengrp F_Preisgrp
- F_VonArtnr F_BisArtnr F_Hersteller F_Warengrp F_VonDatum F_BisDatum
- T_Totale T_Kum T_Vorjahr_1 T_Vorjahr_2 T_Vorjahr_3 T_Geloeschte
- T_Mengen T_Liter
- WITH FRAME gKundengrpUmsatz.
- ENABLE F_VonKnr F_BisKnr CB_Vertreter CB_Verband F_Kundengrp F_Preisgrp
- F_VonArtnr F_BisArtnr F_Hersteller F_Warengrp F_VonDatum F_BisDatum
- T_Totale T_Kum T_Vorjahr_1 T_Vorjahr_2 T_Vorjahr_3 T_Geloeschte
- T_Mengen T_Liter Btn_OK Btn_Cancel RECT-12
- WITH FRAME gKundengrpUmsatz.
- VIEW FRAME gKundengrpUmsatz.
- {&OPEN-BROWSERS-IN-QUERY-gKundengrpUmsatz}
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENDE gKundengrpUmsatz
- 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 exitObject gKundengrpUmsatz
- 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 FUELLEN_TEMPTABLE gKundengrpUmsatz
- PROCEDURE FUELLEN_TEMPTABLE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR VonDat1 AS DATE NO-UNDO.
- DEF VAR VonDat2 AS DATE NO-UNDO.
- DEF VAR BisDat1 AS DATE NO-UNDO.
- DEF VAR BisDat2 AS DATE NO-UNDO.
- DEF VAR MWST% AS DEC NO-UNDO.
- DEF VAR Vp AS DEC DECIMALS 4 NO-UNDO.
- DEF VAR UmsKnr AS INT NO-UNDO.
- DEF VAR cWhere AS CHAR NO-UNDO.
- DEF VAR Knr AS INT NO-UNDO.
- DEF VAR Per AS INT NO-UNDO.
- DEF VAR i1 AS INT NO-UNDO.
- DEF VAR cString AS CHAR NO-UNDO.
- DEF VAR iJahr AS INT NO-UNDO.
- DEF VAR dMenge AS DEC DECIMALS 4 NO-UNDO.
- DEF VAR qa AS WIDGET-HANDLE NO-UNDO.
- DEF QUERY qSelektion FOR Debst, Adresse, Artbw, Artst.
- DEF BUFFER BAdresse FOR Adresse.
- EMPTY TEMP-TABLE TUmsatz.
- EMPTY TEMP-TABLE GUmsatz.
- VonDat1 = F_VonDatum.
- BisDat1 = F_BisDatum.
- DO iJahr = 1 TO 4:
- CASE iJahr:
- WHEN 2 THEN IF NOT T_Vorjahr_1 THEN LEAVE.
- WHEN 3 THEN IF NOT T_Vorjahr_2 THEN LEAVE.
- WHEN 4 THEN IF NOT T_Vorjahr_3 THEN LEAVE.
- END CASE.
- VonDat2 = ?.
- BisDat2 = ?.
- VonDat2 = DATE(MONTH(VonDat1),DAY(VonDat1),YEAR(VonDat1) - (iJahr - 1)) NO-ERROR.
- BisDat2 = DATE(MONTH(BisDat1),DAY(BisDat1),YEAR(BisDat1) - (iJahr - 1)) NO-ERROR.
- IF VonDat2 = ? THEN VonDat2 = DATE(MONTH(VonDat1),DAY(VonDat1) - 1,YEAR(VonDat1) - (iJahr - 1)).
- IF BisDat2 = ? THEN BisDat2 = DATE(MONTH(BisDat1),DAY(BisDat1) - 1,YEAR(BisDat1) - (iJahr - 1)).
- MonStart = (YEAR(VonDat2) * 12 + MONTH(VonDat2)).
- cWhere = 'FOR EACH Debst USE-INDEX Debst-k1 WHERE Debst.Firma = "'
- + Firma
- + '" AND Debst.Knr >= '
- + STRING(F_VonKnr)
- + ' AND Debst.Knr <= '
- + STRING(F_BisKnr)
- + ' '.
- IF NOT T_Geloeschte THEN cWhere = cWhere + ' AND Debst.Aktiv = TRUE'.
- IF iVer <> 999999 THEN cWhere = cWhere + ' AND Debst.Vertr = '
- + STRING(iVer).
- IF iVerband <> 999999 THEN cWhere = cWhere + ' AND Debst.Verband_Grp = '
- + STRING(iVerband).
- IF F_Kundengrp <> '' THEN cWhere = cWhere + ' AND LOOKUP(STRING(Debst.Ku_Grp,"999"), "'
- + F_Kundengrp + '", ",") > 0 '.
- IF F_Preisgrp <> '' THEN cWhere = cWhere + ' AND LOOKUP(STRING(Debst.Preis_Grp,"999"), "'
- + F_Preisgrp + '", ",") > 0 '.
-
- cWhere = cWhere + ' NO-LOCK, '
- + 'FIRST Adresse USE-INDEX Adresse-k1 '
- + 'WHERE Adresse.Firma = "' + AdFirma + '" '
- + 'AND Adresse.Knr = Debst.Knr NO-LOCK, '.
-
- cWhere = cWhere + 'EACH Artbw USE-INDEX Artbw-k10 '
- + 'WHERE Artbw.Firma = Debst.Firma '
- + 'AND Artbw.Knr = Debst.Knr '
- + 'AND Artbw.Tr_Art < 11 '
- + 'AND Artbw.Fak_Dat <> ? '
- + 'AND Artbw.Fak_Dat >= ' + STRING(VonDat2,'99.99.9999') + ' '
- + 'AND Artbw.Fak_Dat <= ' + STRING(BisDat2,'99.99.9999') + ' '
- + 'AND Artbw.Artnr >= ' + STRING(F_VonArtnr) + ' '
- + 'AND Artbw.Artnr <= ' + STRING(F_BisArtnr) + ' NO-LOCK, '.
-
- cWhere = cWhere + 'FIRST Artst USE-INDEX Artst-k1 '
- + 'WHERE Artst.Firma = Artbw.Firma '
- + 'AND Artst.Artnr = Artbw.Artnr '
- + 'AND Artst.Inhalt = Artbw.Inhalt '
- + 'AND Artst.Jahr = Artbw.Jahr '.
-
- IF F_Hersteller <> '' THEN cWhere = cWhere + 'AND LOOKUP(STRING(Artst.Herst ,"999"), "'
- + F_Hersteller + '", ",") > 0 '.
- IF F_Warengrp <> '' THEN cWhere = cWhere + 'AND LOOKUP(STRING(Artst.Wg_Grp,"999"), "'
- + F_Warengrp + '", ",") > 0 '.
- cWhere = cWhere + 'NO-LOCK BY Debst.Knr :'.
- qa = QUERY qSelektion:HANDLE.
- qa:QUERY-PREPARE(cWhere).
- qa:QUERY-OPEN().
-
- Knr = -1.
- qa:GET-FIRST().
- REPEAT:
- IF NOT AVAILABLE Debst THEN LEAVE.
- IF Knr <> Debst.Knr THEN DO:
- IF Debst.KnrFak <> 0 THEN UmsKnr = Debst.KnrFak.
- ELSE UmsKnr = Debst.Knr.
- Knr = Debst.Knr.
- FIND FIRST TUmsatz WHERE TUmsatz.Kgr = Debst.Ku_Grp
- AND TUmsatz.Knr = UmsKnr NO-ERROR.
- DO WHILE TRUE:
- IF AVAILABLE TUmsatz THEN LEAVE.
- RELEASE BAdresse.
- CREATE TUmsatz.
- ASSIGN TUmsatz.Kgr = Debst.Ku_Grp
- TUmsatz.Knr = UmsKnr.
- IF UmsKnr <> Debst.Knr THEN DO:
- FIND BAdresse USE-INDEX Adresse-k1
- WHERE BAdresse.Firma = AdFirma
- AND BAdresse.Knr = UmsKnr NO-LOCK NO-ERROR.
- END.
- IF AVAILABLE BAdresse THEN TUmsatz.Adresse = BAdresse.Anzeig_Br.
- ELSE TUmsatz.Adresse = Adresse.Anzeig_Br.
- LEAVE.
- END.
- END.
-
- MWST% = Artbw.MWST%.
- Vp = Artbw.Net_Betr
- - Artbw.Auf_Rab
- - Artbw.Abh_Rab
- - Artbw.Auf_Sp_Rab.
- IF NOT T_Liter THEN dMenge = Artbw.Menge.
- ELSE DO:
- FIND KGebinde USE-INDEX KGebinde-k1
- WHERE KGebinde.Firma = Artbw.Firma
- AND KGebinde.Geb_Cd = Artbw.KGeb_Cd NO-LOCK NO-ERROR.
- dMenge = Artbw.Menge * KGebinde.Inhalt / 100.
- END.
-
- IF Artbw.MWST_Inkl THEN DO:
- IF MWST% = 0 THEN DO:
- FIND LAST MWSTAns USE-INDEX MWSTAns-k1
- WHERE MWSTAns.MWST_Cd = Artbw.WuCd
- AND MWSTAns.Datum <= Artbw.Datum NO-LOCK NO-ERROR.
- IF AVAILABLE MWSTAns THEN MWST% = MWSTAns.Ansatz.
- END.
- Vp = Vp * 100 / (100 + MWST%).
- END.
- Per = (YEAR(Artbw.Fak_Dat) * 12 + MONTH(Artbw.Fak_Dat)) - MonStart + 1.
- CASE iJahr:
- WHEN 1 THEN DO:
- ASSIGN TUmsatz.Vp_Lf[Per] = TUmsatz.Vp_Lf[Per] + Vp
- TUmsatz.Me_Lf[Per] = TUmsatz.Me_Lf[Per] + dMenge
- TUmsatz.Vp_Lf [13] = TUmsatz.Vp_Lf [13] + Vp
- TUmsatz.Me_Lf [13] = TUmsatz.Me_Lf [13] + dMenge.
- END.
- WHEN 2 THEN DO:
- ASSIGN TUmsatz.Vp_V1[Per] = TUmsatz.Vp_V1[Per] + Vp
- TUmsatz.Me_V1[Per] = TUmsatz.Me_V1[Per] + dMenge
- TUmsatz.Vp_V1 [13] = TUmsatz.Vp_V1 [13] + Vp
- TUmsatz.Me_V1 [13] = TUmsatz.Me_V1 [13] + dMenge.
- END.
- WHEN 3 THEN DO:
- ASSIGN TUmsatz.Vp_V2[Per] = TUmsatz.Vp_V2[Per] + Vp
- TUmsatz.Me_V2[Per] = TUmsatz.Me_V2[Per] + dMenge
- TUmsatz.Vp_V2 [13] = TUmsatz.Vp_V2 [13] + Vp
- TUmsatz.Me_V2 [13] = TUmsatz.Me_V2 [13] + dMenge.
- END.
- WHEN 4 THEN DO:
- ASSIGN TUmsatz.Vp_V3[Per] = TUmsatz.Vp_V3[Per] + Vp
- TUmsatz.Me_V3[Per] = TUmsatz.Me_V3[Per] + dMenge
- TUmsatz.Vp_V3 [13] = TUmsatz.Vp_V3 [13] + Vp
- TUmsatz.Me_V3 [13] = TUmsatz.Me_V3 [13] + dMenge.
- END.
- END CASE.
- qa:GET-NEXT().
- END.
-
- DELETE OBJECT qa.
- END.
- FOR EACH TUmsatz:
- IF TUmsatz.Me_Lf[13] <> 0 THEN NEXT.
- IF TUmsatz.Vp_Lf[13] <> 0 THEN NEXT.
- IF TUmsatz.Me_V1[13] <> 0 THEN NEXT.
- IF TUmsatz.Vp_V1[13] <> 0 THEN NEXT.
- IF TUmsatz.Me_V2[13] <> 0 THEN NEXT.
- IF TUmsatz.Vp_V2[13] <> 0 THEN NEXT.
- IF TUmsatz.Me_V3[13] <> 0 THEN NEXT.
- IF TUmsatz.Vp_V3[13] <> 0 THEN NEXT.
- DELETE TUmsatz.
- END.
-
- FOR EACH TUmsatz BREAK BY TUmsatz.Kgr
- BY TUmsatz.Knr:
- IF FIRST-OF ( TUmsatz.Kgr ) THEN DO:
- RUN FIND_KUNDENGRUPPE ( INPUT TUmsatz.Kgr, OUTPUT cString ).
- IF cString <> '' THEN cString = ENTRY(2, cString, CHR(01)).
- CREATE GUmsatz.
- ASSIGN GUmsatz.Kgr = TUmsatz.Kgr
- GUmsatz.Knr = 0
- GUmsatz.Gruppe = cString.
- END.
- TUmsatz.Gruppe = cString.
- DO i1 = 1 TO 13:
- ASSIGN GUmsatz.Me_Lf[i1] = GUmsatz.Me_Lf[i1] + TUmsatz.Me_Lf[i1]
- GUmsatz.Vp_Lf[i1] = GUmsatz.Vp_Lf[i1] + TUmsatz.Vp_Lf[i1]
- GUmsatz.Me_V1[i1] = GUmsatz.Me_V1[i1] + TUmsatz.Me_V1[i1]
- GUmsatz.Vp_V1[i1] = GUmsatz.Vp_V1[i1] + TUmsatz.Vp_V1[i1]
- GUmsatz.Me_V2[i1] = GUmsatz.Me_V2[i1] + TUmsatz.Me_V2[i1]
- GUmsatz.Vp_V2[i1] = GUmsatz.Vp_V2[i1] + TUmsatz.Vp_V2[i1]
- GUmsatz.Me_V3[i1] = GUmsatz.Me_V3[i1] + TUmsatz.Me_V3[i1]
- GUmsatz.Vp_V3[i1] = GUmsatz.Vp_V3[i1] + TUmsatz.Vp_V3[i1].
- END.
- END.
-
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE KOPF gKundengrpUmsatz
- PROCEDURE KOPF :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF INPUT PARAMETER eh AS COM-HANDLE NO-UNDO.
- DEF VAR Zelle AS CHAR NO-UNDO.
- DEF VAR rechts AS INT NO-UNDO.
- DEF VAR mitte AS INT NO-UNDO.
- DEF VAR i1 AS INT NO-UNDO.
- DEF VAR i2 AS INT NO-UNDO.
- DEF VAR Breite AS DEC DECIMALS 4 NO-UNDO.
- DEF VAR TotBre AS DEC DECIMALS 4 NO-UNDO.
- DEF VAR DifBre AS DEC DECIMALS 4 NO-UNDO.
- DEF VAR FHoch AS LOG NO-UNDO.
- DEF VAR cMonate AS CHAR NO-UNDO
- INIT 'Jan;Feb;Mar;Apr;Mai;Jun;Jul;Aug;Sep;Okt;Nov;Dez;Kum'.
- DEF VAR lDatum AS DATE NO-UNDO.
- DEF VAR iJahr AS INT NO-UNDO.
- DEF VAR cString AS CHAR NO-UNDO.
- eh:Columns("C:C"):Select.
- eh:Columns("C:C"):EntireColumn:AutoFit.
- bKol = '0.2;5.0;30.0'.
- DO i1 = 1 TO AnzKol + 1:
- bKol = bKol + ';7.0'.
- END.
- i1 = NUM-ENTRIES(bKol, ';').
- rechts = 64 + i1.
- mitte = 64 + (i1 / 2) - 1.
- Breite = 0.
- DO i2 = 1 TO 17:
- IF i2 = 3 THEN NEXT.
- eh:Range('A1'):Select.
- Zelle = CHR(64 + i2) + ':' + CHR(64 + i2).
- IF i2 > i1 THEN DO:
- eh:Columns(Zelle):Select.
- eh:Selection:EntireColumn:HIDDEN = TRUE .
- NEXT.
- END.
- IF i2 = i1 THEN DO:
- eh:Columns(Zelle):Select.
- eh:Selection:Font:Bold = TRUE .
- NEXT.
- END.
- eh:Columns(Zelle):Select.
- Breite = Breite + eh:Selection:ColumnWidth.
- IF i2 = i1 THEN eh:Selection:Font:Bold = TRUE.
- IF i2 = 1 THEN eh:Selection:ColumnWidth = 0.2.
- END.
- DO iJahr = 1 TO 4:
- CASE iJahr:
- WHEN 2 THEN IF NOT T_Vorjahr_1 THEN LEAVE.
- WHEN 3 THEN IF NOT T_Vorjahr_2 THEN LEAVE.
- WHEN 4 THEN IF NOT T_Vorjahr_3 THEN LEAVE.
- END CASE.
- lDatum = DATE(MONTH(F_VonDatum),01,YEAR(F_VonDatum) - (iJahr - 1)).
- DO i1 = 1 TO AnzKol:
- Zelle = CHR(67 + i1) + STRING(2 + iJahr).
- eh:Range(Zelle):Select.
- eh:Selection:Value = ENTRY(MONTH(lDatum), cMonate, ';')
- + ' '
- + STRING(YEAR(lDatum),'9999').
- lDatum = lDatum + 31.
- END.
- Zelle = CHR(67 + i1) + STRING(2 + iJahr).
- eh:Range(Zelle):Select.
- eh:Selection:Value = 'Total'.
- END.
- IF NOT T_Vorjahr_3 THEN DO:
- eh:Rows("6:6"):Select.
- eh:Selection:Delete(-4162).
- END.
- IF NOT T_Vorjahr_2 THEN DO:
- eh:Rows("5:5"):Select.
- eh:Selection:Delete(-4162).
- END.
- IF NOT T_Vorjahr_1 THEN DO:
- eh:Rows("4:4"):Select.
- eh:Selection:Delete(-4162).
- END.
- /* ------------------------------------------------------ */
- FIND Steuer USE-INDEX Steuer-k1
- WHERE Steuer.Firma = Firma NO-LOCK NO-ERROR.
- Zelle = 'B1'.
- eh:Range(Zelle):Select.
- eh:Selection:Value = Steuer.Firma1.
- Zelle = 'B2'.
- eh:Range(Zelle):Select.
- eh:Selection:Value = Steuer.Ort.
- /* ------------------------------------------------------ */
- Zelle = CHR(mitte) + '1'.
- eh:Range(Zelle):Select.
- eh:Selection:Value = STRING(F_VonDatum,'99.99.9999')
- + ' - '
- + STRING(F_BisDatum,'99.99.9999').
- Zelle = CHR(mitte) + '2'.
- eh:Range(Zelle):Select.
- IF T_Mengen THEN DO:
- IF T_Liter THEN eh:Selection:Value = 'Mengen in Liter'.
- ELSE eh:Selection:Value = 'Mengen Einheiten'.
- END.
- ELSE DO:
- eh:Selection:Value = 'Beträge'.
- END.
- cString = eh:Selection:Value.
- IF F_Kundengrp <> '' THEN cString = cString
- + ' (Kgr: '
- + F_Kundengrp
- + ')'.
- IF F_Preisgrp <> '' THEN cString = cString
- + ' (Pgr: '
- + F_Preisgrp
- + ')'.
- eh:Selection:Value = cString.
- Zelle = CHR(mitte) + '1:' + CHR(mitte) + '2'.
- eh:Range(Zelle):Select.
- eh:Selection:HorizontalAlignment = -4108.
- /* ------------------------------------------------------ */
- Zelle = CHR(rechts) + '1'.
- eh:Range(Zelle):Select.
- eh:Selection:Value = 'Datum : ' + STRING(TODAY,'99.99.9999').
- Zelle = CHR(rechts) + '2'.
- eh:Range(Zelle):Select.
- eh:Selection:Value = 'Zeit : ' + STRING(TIME,'HH:MM:SS').
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE KOPF_KUMMULATIV gKundengrpUmsatz
- PROCEDURE KOPF_KUMMULATIV :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF INPUT PARAMETER eh AS COM-HANDLE NO-UNDO.
- DEF VAR Zelle AS CHAR NO-UNDO.
- DEF VAR rechts AS INT NO-UNDO.
- DEF VAR i1 AS INT NO-UNDO.
- DEF VAR i2 AS INT NO-UNDO.
- DEF VAR iLf AS INT NO-UNDO.
- DEF VAR iJahr AS INT NO-UNDO.
- DEF VAR cString AS CHAR NO-UNDO.
- iLf = YEAR(F_BisDatum) + 1.
- DO iJahr = 1 TO 4:
- CASE iJahr:
- WHEN 2 THEN IF NOT T_Vorjahr_1 THEN LEAVE.
- WHEN 3 THEN IF NOT T_Vorjahr_2 THEN LEAVE.
- WHEN 4 THEN IF NOT T_Vorjahr_3 THEN LEAVE.
- END CASE.
- Zelle = 'F' + STRING(2 + iJahr).
- eh:Range(Zelle):Select.
- eh:Selection:Value = (IF iJahr = 1 THEN 'Kum LF' ELSE 'Kum ' + STRING(iLF - iJahr,'9999')).
- END.
- IF NOT T_Vorjahr_3 THEN DO:
- eh:Rows("6:6"):Select.
- eh:Selection:Delete(-4162).
- END.
- IF NOT T_Vorjahr_2 THEN DO:
- eh:Rows("5:5"):Select.
- eh:Selection:Delete(-4162).
- END.
- IF NOT T_Vorjahr_1 THEN DO:
- eh:Rows("4:4"):Select.
- eh:Selection:Delete(-4162).
- END.
- /* ------------------------------------------------------ */
- FIND Steuer USE-INDEX Steuer-k1
- WHERE Steuer.Firma = Firma NO-LOCK NO-ERROR.
- Zelle = 'B1'.
- eh:Range(Zelle):Select.
- eh:Selection:Value = Steuer.Firma1.
- Zelle = 'B2'.
- eh:Range(Zelle):Select.
- eh:Selection:Value = Steuer.Ort.
- /* ------------------------------------------------------ */
- Zelle = 'D1'.
- eh:Range(Zelle):Select.
- eh:Selection:Value = STRING(F_VonDatum,'99.99.9999')
- + ' - '
- + STRING(F_BisDatum,'99.99.9999').
- Zelle = 'D2'.
- eh:Range(Zelle):Select.
- IF T_Mengen THEN DO:
- IF T_Liter THEN eh:Selection:Value = 'Mengen in Liter'.
- ELSE eh:Selection:Value = 'Mengen Einheiten'.
- END.
- ELSE DO:
- eh:Selection:Value = 'Beträge'.
- END.
- cString = eh:Selection:Value.
- IF F_Kundengrp <> '' THEN cString = cString
- + ' (Kgr: '
- + F_Kundengrp
- + ')'.
- IF F_Preisgrp <> '' THEN cString = cString
- + ' (Pgr: '
- + F_Preisgrp
- + ')'.
- eh:Selection:Value = cString.
- /* ------------------------------------------------------ */
- Zelle = 'F1'.
- eh:Range(Zelle):Select.
- eh:Selection:Value = 'Datum : ' + STRING(TODAY,'99.99.9999').
- Zelle = 'F2'.
- eh:Range(Zelle):Select.
- eh:Selection:Value = 'Zeit : ' + STRING(TIME,'HH:MM:SS').
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LESEN_FEHLWERTE gKundengrpUmsatz
- PROCEDURE LESEN_FEHLWERTE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR Fenster AS HANDLE NO-UNDO.
- Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION.
- IF NOT VALID-HANDLE(Fenster) THEN RETURN.
- RUN GETKEYVALUES ( INPUT 'DebumsKundengruppen', INPUT Fenster) NO-ERROR.
- DO WITH FRAME {&FRAME-NAME}:
- ASSIGN {&List-6}.
- END.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REPORT gKundengrpUmsatz
- PROCEDURE REPORT :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR i1 AS INT NO-UNDO.
- DEF VAR ja AS LOG NO-UNDO.
- DO WITH FRAME {&FRAME-NAME}:
- RUN BEREINIGEN ( INPUT F_Kundengrp :HANDLE ).
- RUN BEREINIGEN ( INPUT F_Preisgrp :HANDLE ).
- RUN BEREINIGEN ( INPUT F_Hersteller:HANDLE ).
- RUN BEREINIGEN ( INPUT F_Warengrp :HANDLE ).
- ASSIGN {&List-6}.
- IF F_VonKnr = 0 AND F_BisKnr = 0 THEN F_BisKnr = 999999.
- IF F_VonKnr > F_BisKnr THEN F_BisKnr = F_VonKnr.
- IF F_VonArtnr = 0 AND F_BisArtnr = 0 THEN F_BisArtnr = 999999.
- IF F_VonArtnr > F_BisArtnr THEN F_BisArtnr = F_VonArtnr.
- IF F_VonDatum = ? THEN F_VonDatum = DATE(01,01,YEAR(TODAY)).
- IF F_BisDatum = ? THEN F_BisDatum = DATE(12,31,YEAR(TODAY)).
- IF F_BisDatum < F_VonDatum THEN F_BisDatum = F_VonDatum.
- iVer = INTEGER(CB_Vertreter:SCREEN-VALUE).
- cVer = CB_Vertreter:LIST-ITEM-PAIRS.
- i1 = LOOKUP(CB_Vertreter:SCREEN-VALUE, cVer, ';') - 1.
- cVer = ENTRY(i1, cVer, ';').
- iVerband = INTEGER(CB_Verband:SCREEN-VALUE).
- cVerband = CB_Verband:LIST-ITEM-PAIRS.
- i1 = LOOKUP(CB_Verband:SCREEN-VALUE, cVerband, ';') - 1.
- cVerband = ENTRY(i1, cVerband, ';').
- DISPLAY {&List-6}.
- AnzKol = (YEAR(F_BisDatum) * 12 + MONTH(F_BisDatum))
- - (YEAR(F_VonDatum) * 12 + MONTH(F_VonDatum)) + 1.
- IF AnzKol > 12 OR
- AnzKol < 01 THEN DO:
- MESSAGE 'Datumspanne ergibt mehr als 12 Monate!' VIEW-AS ALERT-BOX.
- RETURN.
- END.
- RUN SCHREIBEN_FEHLWERTE.
- END.
- RUN FUELLEN_TEMPTABLE.
- FIND FIRST TUmsatz NO-LOCK NO-ERROR.
- IF NOT AVAILABLE TUmsatz THEN DO:
- MESSAGE 'Keine Daten selektiert !' VIEW-AS ALERT-BOX INFORMATION.
- RETURN.
- END.
- IF T_Kum THEN DO:
- cVorlage = 'DebUmsKgrKum.xls'.
- cDokument = 'DebUmsKgrKum.xls'.
- cDaten = 'DebUmsKgrKum.txt'.
- END.
- ELSE DO:
- cVorlage = 'DebUmsKgr.xls'.
- cDokument = 'DebUmsKgr.xls'.
- cDaten = 'DebUmsKgr.txt'.
- END.
- cDateiName = cDokument + CHR(01) + cVorlage.
- RUN CREATEDATEI ( INPUT cDateiName ).
- IF RETURN-VALUE BEGINS 'ERROR' THEN RETURN NO-APPLY.
- cDokument = RETURN-VALUE.
- cDateiName = cDaten.
- RUN CREATEDATEI ( INPUT cDateiName ).
- IF RETURN-VALUE BEGINS 'ERROR' THEN RETURN NO-APPLY.
- cDaten = RETURN-VALUE.
- OUTPUT TO VALUE(cDaten).
- RUN AUSGABE.
- OUTPUT CLOSE.
- excelAppl = DYNAMIC-FUNCTION('CREATEEXCEL':U) NO-ERROR.
- IF NOT VALID-HANDLE(excelAppl) THEN DO:
- RUN FEHLER ( INPUT 1035 ).
- RETURN.
- END.
- RUN OPENEXCEL ( INPUT excelAppl, INPUT cDokument, INPUT '', OUTPUT ja ).
- IF NOT ja THEN DO:
- RUN FEHLER ( INPUT 1040 ).
- DYNAMIC-FUNCTION('RELEASEEXCEL':U, INPUT excelAppl ) NO-ERROR.
- RETURN NO-APPLY.
- END.
- Zelle = 'A8'.
- excelAppl:Range(Zelle):SELECT.
- excelAppl:SELECTION:FormulaR1C1 = 'TEXT;' + cDaten.
- excelAppl:APPLICATION:RUN ( 'DateiEinfügen' ).
- IF T_Kum THEN RUN KOPF_KUMMULATIV ( INPUT excelAppl ).
- ELSE RUN KOPF ( INPUT excelAppl ).
- excelAppl:APPLICATION:RUN ( 'Skalieren' ).
-
- Zelle = 'A1'.
- excelAppl:Range(Zelle):SELECT.
- DYNAMIC-FUNCTION('RELEASEEXCEL':U, INPUT excelAppl ) NO-ERROR.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SCHREIBEN_FEHLWERTE gKundengrpUmsatz
- PROCEDURE SCHREIBEN_FEHLWERTE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DO WITH FRAME {&FRAME-NAME}:
- DEF VAR Fenster AS HANDLE NO-UNDO.
- Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION.
- IF NOT VALID-HANDLE(Fenster) THEN RETURN.
- RUN PUTKEYVALUES ( INPUT 'DebumsKundengruppen', INPUT Fenster) NO-ERROR.
- END.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
|